/*
Simple Responsive Template v 1.2


primary styles 
   Author: www.prowebdesign.ro
   Add your own styles to customize the project.



BASE (MOBILE) SIZE
	These are the mobile styles. It's what people see on their phones.
	Remember, keep it light: Speed is Important.
*/

/* typography */
body{
	color:#666;
	font-family:'Open Sans', Arial, Helvetica, sans-serif; 
	font-size:1em;
	line-height:1.4em; 
	font-weight:normal;
}
h1, h2, h3, h4, h5, h6{
	font-weight:normal;
	font-family:'Open Sans', Arial, Helvetica, sans-serif; 
	line-height:1.5em;
	margin:.45em 0;
	padding:0;
} 


/* links */
a,
a:visited,
a:active,
a:hover{color:#0000aa;}
a:hover{ text-decoration:none;}

a.buttonlink {
	overflow: hidden;
	display: block;
	text-decoration: none;
	padding: 5px;
	color: white;
}

.buttonlink SPAN {
	font-size: 95%;
}

.buttonlink .header {
	font-weight: 900;
	font-size: 110%;
	text-transform: uppercase;
}

.styled-table {
    border-collapse: collapse;
    margin: 25px 0;
    font-size: 0.9em;
    font-family: sans-serif;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.styled-table th,
.styled-table td {
    padding: 5px 15px;
    float: left;
}

.styled-table thead tr {
    background-color: #000098;
    color: #ffffff;
    text-align: left;
}

.styled-table tbody tr {
    border-bottom: 1px solid #dddddd;
}

.styled-table tbody tr:nth-of-type(even) {
    background-color: #f3f3f3;
}

.styled-table tbody tr:last-of-type {
    border-bottom: 2px solid #000098;
}

.small {
	font-size: 80%;
}

.list-inside {
	list-style-position: inside;
}

.night  {
	background-color: #fef933;
	color: #000000;
}

.rental {
	background-color: #660033;
}
.route {
	 display:  table;
        width:auto;
        background-color:#eee;
        border:1px solid #666666;
        border-spacing:5px;
}
.routerow {
       display:table-row;
       width:auto;
}

.routepicture {
	padding: 2% 2% 0% 2%;
	background-color: rgb(250,250,209);
}

.routebig {
	float:left;/*fix for  buggy browsers*/
        display:table-column;
	 font-size: 140%;
        padding: 2% 2% 0% 2%;
        color: black;
        text-align: center;
}

.routebig b {
	font-size: 200%;
	width: 50%;
	letter-spacing: 5px;
}

.routebig a {
	text-decoration: none;
	color: red;
}

.routebig div {
	margin: 1%;
	letter-spacing: 4px;
}

.routesmall {
	float:left;/*fix for  buggy browsers*/
        display:table-column;
	padding: 1% 0% 1% 4%;
}
.routesmall div {
	padding-top: 1%;
}

.routedescription {
	padding: 1% 0% 1% 4%;
	
}

.routedescription a {
        font-weight: bold;
        font-size: 120%;
        letter-spacing: 2pt;
        color: #2a2a3a;
}

.cooperate {
	background-color: #000066;
}

.join {
	background-color: #333300;
}


.miniphotos {
	margin-bottom: 5px;
}

.miniphoto {
	border: 1px solid black;
	margin: 1px;
}

.maxiphoto {
	width: 20%;
	padding: 1px;
}

.direction {
	border: 1px solid #EEEEEE;
	margin-top: 2%;

}
.direction H2 {
	margin: 2%;
	font-weight: bold;
}
.direction H3 {
	margin: 0;
	
}

.direction p {
	font-size: 80%;
	padding: 1%;
}

.direction .typeline {
	padding-top: -1%;

}
.timetable {
	font-size: 135%;
	text-align: center;
	background-color: #FAFAFA;
	border: 1px solid #EEEEEE;
}

.timetable I {
	margin: 2px;
	padding: 5px;
	background-color: #DDDDDD;
	font-size: 80%;
}

.timetable TH {
	  padding: 5px;
	 margin: 2px;
	background-color: #DDDDDD;
}

.timetable tbody TD {
	border-left: 1px solid #DDDDDD;	
	font-size: 80%;
	padding: 0.2em;
}

.timetable tbody TD:first-child {
	text-align: left;
	font-weight: bold;	
}

.timetable tbody TD:last-child {
	border-right: 1px solid #DDDDDD;
	        text-align: left;

}

.timetable tbody TD.kstm {
	background-color: #ffffe6;
	font-weight: bold;
	border-left: 2px solid black;
	border-right: 2px solid black;
	font-size: 110%;
      }

.timetable tbody TD.kstm.finish {
	border-bottom: 2px solid black;
}

.legenda {
	margin: 1%;
}
      
.mpk {
	opacity: 0.6;
     }


.timetable tbody tr {
                        border: solid 1px rgba(210, 215, 217, 0.75);
                        border-left: 0;
                        border-right: 0;
}

.timetable tbody tr:nth-child(2n + 1) {
                        background-color: rgba(230, 235, 237, 0.25);
                        }


.alert {
	background-color: rgb(250,250,209);
	padding: 1%;
	margin: 1%;
	border-radius: 4px;
	overflow: hidden;
}
.heritagebanner {
         background-color: rgb(254,255,239);
         border-radius: 8px;
	overflow: hidden;
} 

.heritagebanner P, .heritagebanner H2 {
	margin: 5px;
}

#table_content table {
                border-collapse: collapse;
                border: 2px black solid;
                font: 12px sans-serif;
            }

#table_content td {
                border: 1px black solid;
                padding: 5px;
            }



#kurtyna {
		width: 100%;
		height: 100%;
		z-index: 100;
		top: 0px;
		left: 0px;
		display: block;
		position: fixed;
		background-color: grey;
		overflow: scroll;
}

.totalizator {
	overflow: auto;
}

#theImg {
	margin: auto;
}
	
#langchoice {
	text-align: right;
	margin-bottom: 2px;
}

	
#imagecontainer {
		padding: 1%;
		margin-left: auto;
		margin-right: auto;
		border: 10px solid white;
		z-index: 102;
		display: block;
		position: relative;
		height: auto;
		max-height: 100%;
		overflow-y: auto;
}

.loading {
	position: absoulute;
	top: 0px;
	left: 0px;
}

.preload {
	width: 1px;
	height: 1px;
}
.arrow {
	position: absolute;
	background-color: black;
	width: 20px;
	height: 30px;
	z-index: 10;
}

#previous {
	float: left;
	top: 45%;
	left: 5%;
}

#next {
	float: right;
	top: 45%;
	left: 95%;
}


.megabig {
    width: 100%;
    /* border: red dashed 2px; */
    height: 3em;
    display: block;
    font-size: 150%;
    /* text-decoration: none; */
    padding: 2%;
    background: #DDDDDD;
    border-radius: 7px;
    color: black;
    font-weight: bold;
}

LI.activities H3 A
 {
	text-decoration: none;
	color: black;
	font-weight: bold;
}

LI.activities A {
	text-decoration: none;
	color: rgb(0,0,128);
}
/* Box sizing. Awesome thing. Read about it here: http://www.w3schools.com/cssref/css3_pr_box-sizing.asp */
*{	box-sizing:border-box;
	-moz-box-sizing:border-box;}

  
/* structure */   
.wrapper{
	width: 92%; 
	margin: 0 auto;
}
header{ 
	padding:15px 0;
}
#banner{ 
	text-align:center;
}

#welcome {
	display: none;
}

.questionicon {
	  border: 4px;
 	  padding: 10px 10px 10px 0px;
  	  float: left;
}


.label {
	float: left;
	width: 15%;
	clear: left;
	text-align: right;
	margin: 10px;
}

.field {
	float: left;
	margin: 10px;
}
	
#hero,

#page-header{
	background:#2a2a3a;
	border-top:1px solid #e2e2e2;
	border-bottom:1px solid #e2e2e2;
	padding:20px 0;
}
#hero h1,#page-header h1,#page-header .title { 
	font-size: 160%;
	line-height:1.2em;
	margin-top:0px;
	margin-bottom:10px;
	text-transform: uppercase;
	color: white;
	font-weight: 900;
}


#hero h2 {
        font-size: 120%;
        line-height:1.2em;
        margin-top:10px;
        margin-bottom:10px;
        color: white;  
        font-weight: 900;
}


p.slide-description {
	color: black;
}

#welcome p {
	color: white;
}


.vehicle table,.vehicle td,.vehicle th {
	border: 1px gray solid;
	background-color: antiquewhite;
	border-collapse: collapse;
	
}

.vehicle th {
	background-color: #000080;
	color: white;
	text-align: left;
}

.vehiclelink {
	font-size: 110%;
	text-decoration: none;
	text-transform: uppercase;
	background-color: antiquewhite;
	border-collapse: collapse;
	border-radius: 7px;
	margin: 5px;
}


.vehiclelink IMG {
	margin: 5px;
	vertical-align: middle;
	text-align: left;
	border-collapse: collapse;
	border: 1px solid grey;
	}

#mainslider {
	display: none;
}

.flexslider{
border: 4px solid #ffffff;
margin: 0px 0px 60px;
background: #fff; 
border: 1px solid #fff; 
-webkit-border-radius: 4px; 
-moz-border-radius: 4px; 
-o-border-radius: 4px; 
border-radius: 4px; 
}

#content {  
	margin:40px 0;
}

aside { 
	margin:40px 0;
}

p { 
	margin:0 0 1.5em;
}

#content p {
	text-align: justify;
}

.whites {
	 background-color: white;
	 border-radius: 4px;

}

.whites li {
	color: black;
	padding: 5px;
	margin-bottom: 15px; 
}



/* RESPONSIVE IMAGES */
img{ max-width:100%; height:auto;}


/*MAIN MENU*/
.menu-toggle{
	display:block;
	padding:10px;
	margin:20px 0 0;
	background:#666;
	color:#fff;
	cursor:pointer;
	text-transform:uppercase;
	font-size:20px;
}
.menu-toggle.toggled-on{
	background:#000080;
}
.srt-menu{
	display:none;
}	
.srt-menu.toggled-on{
	display:block;
	position:relative;
	z-index:10;
}

.srt-menu{
	clear:both;
	margin-bottom:60px;
	
}
.srt-menu li a {
	background:#dadada;
	display:block;
	margin:1px 0; 
	padding:10px;
	text-decoration:none;
	text-transform: uppercase;
}
.srt-menu li a:hover{
	background:#000080;
	color:#fff;
}
.srt-menu li li a {
	background:#e8e8e8;
	padding-left:40px;
}
.srt-menu li li li a {
	background:#efefef;
	padding-left:80px;
}

/*SECONDARY MENU*/
#secondary-navigation{
	margin-bottom:60px;
}
#secondary-navigation ul{
	margin:0;
	padding:0;
}
#secondary-navigation ul li a{ 
	background:#E6E6E6;
	display:block;
	margin:5px 0; 
	padding:10px;
	text-decoration:none;
}
#secondary-navigation ul li a:hover,
#secondary-navigation ul li.current a{
	background:#000080;
	color:#fff;
}



/*SPACE GRID ELEMENTS VERTICALLY, SINCE THEY ARE ONE UNDER ANOTHER SO FAR*/
.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12,
.grid_55 {
	margin-bottom:40px;
	/*positioning and padding*/
	position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
}

/*FOOTER*/
footer {  
	clear:both;
	font-size:80%;
	padding:20px 0;
}
footer ul{
	margin:0;
	padding:0;
}

/*colors and backgrounds*/
body{
	background:#fff;
}
h1, h2, h3, h4, h5, h6{
	color:#333; 
}

footer{ 
	background:#333;
	color:#ccc;
}
footer h1, footer h2, footer h3, footer h4{ 
	color:#CCC; 
	margin-bottom:10px;
}
footer ul{
	margin:0 0 0 8%;
}



/* Contain floats*/ 
.clearfix:before,
.clearfix:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}
.clearfix:after,
.container:after,
.row:after{
  clear: both;
}

#map {
	width: 100%; height: 300px;
}

/* colors for subjects */

.grid_55.tramlinecolors,.grid_55.busescolors {
	border-radius: 7px;
	margin: 0.5%;
	cursor: pointer;
	cursor: hand;
}
/* tramlines - bluez */


.tramlinecolors {
	background-color: #1e97c4;
	color: #ffffff;
}

.busescolors {
	background-color: #f63839;
	color: #ffffff;
}

.otherscolors {
        background-color: #ffa826;
        color: #ffffff;
}


.hirecolors {
	 background-color: #ff9b00;
	color: #000000;
}

.tramlinecolors H2,.busescolors H2 {
	color: #ffffff;
}

.pytania {
	min-height: 110px;
	font-size: 120%;
	margin: 20px;
	border-radius: 14px;
	padding: 25px;
	list-style: none;
}

.pytania A {
	text-decoration: none;
	color: #ffffff;
}

#inislide LI {
        text-align: center;
}
#inislide A {
	text-decoration: none;
	font-size: 80%;
}

.tip {
background-color: #DDDDDD;
font-style: italic;
padding: 2%;
}


/* END */

/*
LARGER MOBILE DEVICES
This is for mobile devices with a bit larger screens.
*/
@media only screen and (min-width: 481px) {
.miniphoto {
        width: 20%;
}



#banner{
	float:left;
	text-align:left;
	margin-bottom:-20px;/*this depends on the height of the logo*/
}
.menu-toggle{/*make menu float right, instead of sitting under the logo*/
	margin-top:10px; /*this depends on the height of the logo*/
	float:right;
}

#map 	{
         height: 350px;
	}
} 

/*
TABLET & SMALLER LAPTOPS
The average viewing window and preferred media query for those is 768px.
But I think that some more breathing space is good:)
*/
@media only screen and (min-width: 920px) {
.miniphoto {
        padding: 1px;
        width: 10%;
}

.wrapper{
	max-width: 1200px; 
	margin: .75em auto;
}

#banner{ 
	float:left; 
	text-align:left;
	margin-bottom:0px;
}
header{
	padding:0;
}
#content {  
	float:left;
	width:65%;
}
#content.wide-content{
	float:none;
	width:100%;
}
.styled-table th,
.styled-table td {
    padding: 5px 15px;
    float: none;
}




aside { 
	float:right;
	width:30%;
}

/*** MAIN MENU - ESSENTIAL STYLES ***/
.menu-toggle{display:none;}
#menu-main-navigation{display:block;}

.srt-menu ul li a img {
  margin: 5px 5px 5px 0px;
  padding: 10px 10px 10px 0px;
  float: left; 
}

.srt menu ul li a span {
	float: right;
}

.srt-menu, .srt-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
}
.srt-menu ul {
	position:		absolute;
	display:none;
	width:			12em; /* left offset of submenus need to match (see below) */
}
.srt-menu ul li {
	width:			100%;
}
.srt-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.srt-menu li {
	float:			left;
	position:		relative;
	margin-left:1px;
}
.srt-menu li li {
	margin-left:0px;
}
.srt-menu a {
	display:		block;
	position:		relative;
}
.srt-menu li:hover ul,
.srt-menu li.sfHover ul {
	display:block;
	left:			0;
	top:			45px; /* match top ul list item height */
	z-index:		99;
	-webkit-box-shadow:  2px 3px 2px 0px rgba(00, 00, 00, .3);
    box-shadow:  2px 3px 2px 0px rgba(00, 00, 00, .3);
}
ul.srt-menu li:hover li ul,
ul.srt-menu li.sfHover li ul {
	top:			-999em;
}
ul.srt-menu li li:hover ul,
ul.srt-menu li li.sfHover ul {
	left:			12em; /* match ul width */
	top:			0;
}
ul.srt-menu li li:hover li ul,
ul.srt-menu li li.sfHover li ul {
	top:			-999em;
}
ul.srt-menu li li li:hover ul,
ul.srt-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}


/*** DEMO1 SKIN ***/
#topnav, .srt-menu {
	float:right;
	margin: .35em 0 0 0;
}
.srt-menu a {
	text-decoration:none;
}
.srt-menu li a {
	background:#fff;
	margin:0; 
	padding:10px 20px;
	height:45px;
}
.srt-menu a, .srt-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
	color:			#000080;	
}
.srt-menu li li a {
		border-top:		1px solid rgba(255,255,255,.2);
		background:             #333; /*fallback for old IE*/
                background:rgba(0,0,0,.6);
		color:	#fff;
		padding-left:20px;
		height:auto;
}
.srt-menu li li a:visited{color:#fff;}
.srt-menu li li li a,
.srt-menu li.current * li a{
	padding-left:20px;
	background:rgba(0,0,0,.6);
}

.srt-menu li:hover > a,
.srt-menu li.current a{ 
	color:#fff;
	background:#000080;
}
.srt-menu li li:hover > a{
	color:#fff;
	background:#000080;
}

.active {
	padding: 10px;
	background-color: #ddffdd;
	color: green;
}

.summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
        list-style-type: none;

}
.summary li {
    background: white;
    padding: 25px;
    border-radius: 18px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.tourgrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
}

/* KAFEL */
.popularbox {
  background: linear-gradient(180deg, #fff 0%, #f9fbff 100%);
  border: 1px solid #e5eaf0;
  border-radius: 14px;
  padding: 18px;
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.06);
  position: relative;
  transition: 0.2s;
}

/* pionowa linia jak trasa */
.popularbox::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 6px;
  height: 100%;
  background: linear-gradient(180deg, #3b82f6, #60a5fa);
  border-radius: 14px 0 0 14px;
}

.popularbox:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 26px rgba(0,0,0,0.12);
}

.popularbox p {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  padding-left: 10px;
}

/* lista */
ul.popular {
  list-style: none;
  padding: 0;
  margin: 0;
}

ul.popular li {
  padding: 9px 10px;
  margin-bottom: 6px;
  background: #eef4ff;
  border-radius: 10px;
  padding-left: 30px;
  position: relative;
}

/* punkt mapy */
ul.popular li::before {
  content: "â";
  position: absolute;
  left: 8px;
}
/*GRID*/
/*
 & Columns : 12 

 */
 .row{
	 margin-left: -15px;
     margin-right: -15px;
}
 
.grid_1 { width: 8.33333333%; }
.grid_2 { width: 16.66666667%; }
.grid_3 { width: 25%; }
.grid_4 { width: 33.33333333%; }
.grid_5 { width: 41.66666667%; }
.grid_55 { width: 49%; }
.grid_6 { width: 50%; }
.grid_7 { width: 58.33333333%; }
.grid_8 { width: 66.66666667%; }
.grid_9 { width: 75%; }
.grid_10 { width: 83.33333333%; }
.grid_11 { width: 91.66666667%; }
.grid_12 { width: 100%; }

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_55,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12 {
	float: left;
	display: block;
}

.rightfloat{float:right;}
/* @notation inspired by tinyGrid, .row and percentage by Twitter Bootstrap
 */
 
#hero [class*="grid_"] { margin-bottom:-20px; }


#map {
	height: 400px;
	}

.routebig { width: 33%; }
.routesmall { width: 66%; }
}

/*
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*/
@media only screen and (min-width: 800px) {
footer H1 {
	font-size: 120%;
	text-transform: uppercase;
}

footer .block {
	float: left;
	margin: 10px; 
	width: 40%;
}

#mainslider {
	display: block;
	}

#welcome {
	display: block;
	}

#map {
        height: 500px;
        }

	.vehiclegroup {
		display: table;
		
	}

	.vehiclelink DIV {
		display: table-cell;
		padding: 20px;
	}

.leftfloat {
    float: left;
}	

	.imagepanel {
		 width: 300px;
    		border: 1px dashed #73AD21;
    		padding: 10px;
    		margin: 10px;
    		font-size: 80%;
		font-style: italic;
	
	}

	 .miniimagepanel {
                width: 150px;
                padding: 5px;
                margin: 5px;
                font-size: 80%;
                text-decoration: none;
                background-color: #EFEFEF;
        }

        .miniimagepanel a {
        	                text-decoration: none;

        }

	a.buttonlink{ 
		border-radius:7px; 
		color:#fff;
	display:block;
	float:left; 
	margin:5px; 
	padding:12px;
	width: 80%;
	text-decoration: none;
	font-size: 120%;
	font-weight: 600;
	
		}


a.buttonlink:hover{
	background:#00bfff;
}

.greenelement{
	background:#5ec79e;
	color:#fff;
}
.violetelement{
	background:#887dc2;
	color:#fff;
}

.buttonlink .header {
	font-size: 100%;
	text-decoration: underline;
	text-transform: uppercase;
	font-weight: bold;
}

.buttonlink SPAN {
	font-size: 80%;
	font-weight: 300;
	text-decoration: none;
}



} 

/*
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*/
@media only screen and (min-width: 1240px) {
	#mainslider {
	display: block;
	}


	#welcome {
	display: block;
	}


	#map {
        height: 550px;
        }
} 

/*
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution.
*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min--moz-device-pixel-ratio: 1.5),
       only screen and (min-device-pixel-ratio: 1.5) {
#map {
        height: 400px;
        }


} 

/*
iPHONE 5 MEDIA QUERY
iPhone 5 or iPod Touch 5th generation styles (you can include your own file if you want)
*/
@media (device-height: 568px) and (-webkit-min-device-pixel-ratio: 2) { 
	#map {
        height: 550px;
        }

}

/*
PRINT STYLESHEET
*/
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

