
.tileteaser {
    position: relative;
    height: 0.1px;
    width: 100%;
    padding-bottom: 100%;
    transition: all 0.1s linear;    
}

.col-lg-2 > .tileteaser {
    padding-bottom: 200%;
}

.tileteaser-container {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-size: cover;
}

.tileteaser:hover {
    transform: scale(1.01);
    z-index: +1;
    transition: all 0.1s linear;
    box-shadow: 0 0 13px 1px rgba(0,0,0,0.2), 0 0 1px 1px rgba(0,0,0,0.3);
}

.textlayer {
    position: absolute;
    top: 50%;
    width: 50%;
    left: 0;
    padding: 2rem 1rem 1rem;
	height:50%;
}

.textlayer.textshadow1 {
    text-shadow: 0px 0px 2px rgba(0,0,0,0.8), 0px 0px 4px rgba(0,0,0,0.6), 0px 0px 8px rgba(0,0,0,0.5), 0px 0px 14px rgba(0,0,0,0.4);
}

.textlayer.textshadow2 {
    background: rgba(0,0,0,0.3);
}

.textlayer.vertical-alignment-top {
    top: 0;
	padding: 1rem;
}

.col-lg-2 > .tileteaser .textlayer {
    width: 100%;
}

.tileteaser-container .textlayer a,
.tileteaser-container .textlayer h1,
.tileteaser-container .textlayer h2,
.tileteaser-container .textlayer h3,
.tileteaser-container .textlayer h4,
.tileteaser-container .textlayer h5,
.tileteaser-container .textlayer h6,
.tileteaser-container .textlayer p { color: #ffffff !important; }

.tileteaser-container .textlayer h2 { font-size: 2vw; line-height: 2.2vw; margin-bottom: 1.25vw; }
.tileteaser-container .textlayer h3 {font-size: 1.4vw; line-height: 1.55.vw; font-weight: 600; margin-bottom: 1.1vw; }
.tileteaser-container .textlayer h4 { font-size: 1.15vw; line-height: 1.3vw; margin-bottom: 1vw; }
.tileteaser-container .textlayer h5 { font-size: 1.0vw; line-height: 1.1vw; margin-bottom: 0.9vw;}
.tileteaser-container .textlayer h6 { font-size: 0.85vw; line-height: 0.95vw; margin-bottom: 0.8vw; }

.tileteaser-container .textlayer .hero-XL { font-size: 2vw; line-height: 2.2vw; margin-bottom: 1.25vw; }
.tileteaser-container .textlayer .hero-L {font-size: 1.4vw; line-height: 1.55.vw; font-weight: 600; margin-bottom: 1.1vw; }
.tileteaser-container .textlayer .hero-M { font-size: 1.15vw; line-height: 1.3vw; margin-bottom: 1vw; }
.tileteaser-container .textlayer .hero-S { font-size: 1.0vw; line-height: 1.1vw; margin-bottom: 0.9vw;}
.tileteaser-container .textlayer .hero-XS { font-size: 0.85vw; line-height: 0.95vw; margin-bottom: 0.8vw; }

.tileteaser-container .textlayer p { font-size: 0.8vw; line-height: 1.1vw; margin-bottom: 0.5vw;}


.tileteaser-container .textlayer.text-color-darkblue a,
.tileteaser-container .textlayer.text-color-darkblue h1,
.tileteaser-container .textlayer.text-color-darkblue h2,
.tileteaser-container .textlayer.text-color-darkblue h3,
.tileteaser-container .textlayer.text-color-darkblue h4,
.tileteaser-container .textlayer.text-color-darkblue h5,
.tileteaser-container .textlayer.text-color-darkblue h6,
.tileteaser-container .textlayer.text-color-darkblue p { color: #173A79 !important; }

.tileteaser-container > a {
    display: block;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
}

.teaserlink { display: none; }

.tileteaser-container > a:hover {
    cursor: pointer;
}

@media screen and (max-width: 1559px) { 

  .textlayer {
	top:33%;  
    width: 75%;
    height: 66%;
  }
  
  .col-lg-2 > .tileteaser .textlayer {
	width: 100%;
  }
  
  .textlayer.vertical-alignment-top {
    top:0;
  }
  
  .tileteaser-container .textlayer h2 { font-size: 2.4vw; line-height: 2.7vw; margin-bottom: 1.6vw; }
  .tileteaser-container .textlayer h3 {font-size: 1.8vw; line-height: 2vw; font-weight: 600; margin-bottom: 1.5vw; }
  .tileteaser-container .textlayer h4 { font-size: 1.6vw; line-height: 1.8vw; margin-bottom: 1.4vw; }
  .tileteaser-container .textlayer h5 { font-size: 1.4vw; line-height: 1.6vw; margin-bottom: 1.3vw;}
  .tileteaser-container .textlayer h6 { font-size: 1.3vw; line-height: 1.5vw; margin-bottom: 1.2vw; }
  
	.tileteaser-container .textlayer .hero-XL { font-size: 2vw; line-height: 2.2vw; margin-bottom: 1.25vw; }
	.tileteaser-container .textlayer .hero-L {font-size: 1.4vw; line-height: 1.55.vw; font-weight: 600; margin-bottom: 1.1vw; }
	.tileteaser-container .textlayer .hero-M { font-size: 1.15vw; line-height: 1.3vw; margin-bottom: 1vw; }
	.tileteaser-container .textlayer .hero-S { font-size: 1.0vw; line-height: 1.1vw; margin-bottom: 0.9vw;}
	.tileteaser-container .textlayer .hero-XS { font-size: 0.85vw; line-height: 0.95vw; margin-bottom: 0.8vw; }
	
  .tileteaser-container .textlayer p { font-size: 1vw; line-height: 1.3vw; margin-bottom: 0.8vw;}
 
 
}

@media screen and (max-width: 1419px) { 

  .tileteaser-container .textlayer h2 { font-size: 2.4vw; line-height: 2.7vw; margin-bottom: 1.6vw; }
  .tileteaser-container .textlayer h3 {font-size: 1.8vw; line-height: 2vw; font-weight: 600; margin-bottom: 1.5vw; }
  .tileteaser-container .textlayer h4 { font-size: 1.6vw; line-height: 1.8vw; margin-bottom: 1.4vw; }
  .tileteaser-container .textlayer h5 { font-size: 1.4vw; line-height: 1.6vw; margin-bottom: 1.3vw;}
  .tileteaser-container .textlayer h6 { font-size: 1.3vw; line-height: 1.5vw; margin-bottom: 1.2vw; }

	.tileteaser-container .textlayer .hero-XL { font-size: 2.4vw; line-height: 2.7vw; margin-bottom: 1.6vw; }
	.tileteaser-container .textlayer .hero-L { font-size: 1.8vw; line-height: 2vw; font-weight: 600; margin-bottom: 1.5vw; }
	.tileteaser-container .textlayer .hero-M { font-size: 1.6vw; line-height: 1.8vw; margin-bottom: 1.4vw; }
	.tileteaser-container .textlayer .hero-S { font-size: 1.4vw; line-height: 1.6vw; margin-bottom: 1.3vw;}
	.tileteaser-container .textlayer .hero-XS { font-size: 1.3vw; line-height: 1.5vw; margin-bottom: 1.2vw; }
  
  .tileteaser-container .textlayer p { font-size: 1.2vw; line-height: 1.4vw; margin-bottom: 0.8vw;}
}

@media screen and (max-width: 1199px) { 
  .tileteaser-container .textlayer h2 { font-size: 2.4vw; line-height: 2.7vw; margin-bottom: 1.6vw; }
  .tileteaser-container .textlayer h3 {font-size: 1.8vw; line-height: 2vw; font-weight: 600; margin-bottom: 1.5vw; }
  .tileteaser-container .textlayer h4 { font-size: 1.6vw; line-height: 1.8vw; margin-bottom: 1.4vw; }
  .tileteaser-container .textlayer h5 { font-size: 1.4vw; line-height: 1.6vw; margin-bottom: 1.3vw;}
  .tileteaser-container .textlayer h6 { font-size: 1.3vw; line-height: 1.5vw; margin-bottom: 1.2vw; }
  
	.tileteaser-container .textlayer .hero-XL { font-size: 2.4vw; line-height: 2.7vw; margin-bottom: 1.6vw; }
	.tileteaser-container .textlayer .hero-L { font-size: 1.8vw; line-height: 2vw; font-weight: 600; margin-bottom: 1.5vw; }
	.tileteaser-container .textlayer .hero-M { font-size: 1.6vw; line-height: 1.8vw; margin-bottom: 1.4vw; }
	.tileteaser-container .textlayer .hero-S { font-size: 1.4vw; line-height: 1.6vw; margin-bottom: 1.3vw;}
	.tileteaser-container .textlayer .hero-XS { font-size: 1.3vw; line-height: 1.5vw; margin-bottom: 1.2vw; }
	
  .tileteaser-container .textlayer p { font-size: 1.2vw; line-height: 1.4vw; margin-bottom: 0.8vw;}
}

@media screen and (max-width: 979px) { 
  .tileteaser-container .textlayer h2 { font-size: 2.68vw; line-height: 3.24vw; margin-bottom: 1.8vw; }
  .tileteaser-container .textlayer h3 {font-size: 2.16vw; line-height: 2.4vw; font-weight: 600; margin-bottom: 1.62vw; }
  .tileteaser-container .textlayer h4 { font-size: 1.92vw; line-height: 2.16vw; margin-bottom: 1.44vw; }
  .tileteaser-container .textlayer h5 { font-size: 1.68vw; line-height: 1.92vw; margin-bottom: 1.32vw;}
  .tileteaser-container .textlayer h6 { font-size: 1.56vw; line-height: 1.56vw; margin-bottom: 1.2vw; }
  
	.tileteaser-container .textlayer .hero-XL { font-size: 2.68vw; line-height: 3.24vw; margin-bottom: 1.8vw; }
	.tileteaser-container .textlayer .hero-L {font-size: 2.16vw; line-height: 2.4vw; font-weight: 600; margin-bottom: 1.62vw; }
	.tileteaser-container .textlayer .hero-M { font-size: 1.92vw; line-height: 2.16vw; margin-bottom: 1.44vw; }
	.tileteaser-container .textlayer .hero-S { font-size: 1.68vw; line-height: 1.92vw; margin-bottom: 1.32vw;}
	.tileteaser-container .textlayer .hero-XS { font-size: 1.56vw; line-height: 1.56vw; margin-bottom: 1.2vw; }
	
  .tileteaser-container .textlayer p { font-size: 1.44vw; line-height: 1.68vw; margin-bottom: 0.84vw;}
}

@media screen and (max-width: 767px) {  

  .col-lg-2 > .tileteaser {
      padding-bottom: 50%;
  }
  
  .col-lg-2 > .tileteaser .textlayer {
      top: 0;
  }
  .textlayer {
      width: 100%;
  }  
  .tileteaser-container .textlayer h2 { font-size: 5.36vw; line-height: 6.48vw; margin-bottom: 3.6vw; }
  .tileteaser-container .textlayer h3 {font-size: 4.32vw; line-height: 4.8vw; font-weight: 600; margin-bottom: 3.24vw; }
  .tileteaser-container .textlayer h4 { font-size: 3.82vw; line-height: 4.32vw; margin-bottom: 2.88vw; }
  .tileteaser-container .textlayer h5 { font-size: 3.38vw; line-height: 3.84vw; margin-bottom: 2.64vw;}
  .tileteaser-container .textlayer h6 { font-size: 3.12vw; line-height: 3.12vw; margin-bottom: 2.4vw; }
  
	.tileteaser-container .textlayer .hero-XL { font-size: 5.36vw; line-height: 6.48vw; margin-bottom: 3.6vw; }
	.tileteaser-container .textlayer .hero-L { font-size: 4.32vw; line-height: 4.8vw; font-weight: 600; margin-bottom: 3.24vw; }
	.tileteaser-container .textlayer .hero-M { font-size: 3.82vw; line-height: 4.32vw; margin-bottom: 2.88vw; }
	.tileteaser-container .textlayer .hero-S { font-size: 3.38vw; line-height: 3.84vw; margin-bottom: 2.64vw;}
	.tileteaser-container .textlayer .hero-XS { font-size: 3.12vw; line-height: 3.12vw; margin-bottom: 2.4vw; }
  
  .tileteaser-container .textlayer p { font-size: 2.88vw; line-height: 3.36vw; margin-bottom: 1.68vw;}  

}

/* Sonderreisen */

.travelmenu { display: table; margin-bottom: 30px;}

.travelmenu .tm-thead { display: table-header-group;}
.travelmenu .tm-thead div.tm-td { display: table-cell; padding: 8px; font-weight: bold; }

.travelmenu .tm-tbody {display: table-row-group; background: #ffffff; }
.travelmenu .tm-tbody a.tm-tr { display: table-row; color: #173A79; }
.travelmenu .tm-tbody a.tm-tr:nth-child(even) { background: rgba(6, 156, 215, 0.125); }
.travelmenu .tm-tbody a.tm-tr:hover { cursor: pointer; color:#ffffff; background: #069CD7;  }

.travelmenu .tm-tbody a.tm-tr span.tm-td { display: table-cell; padding: 8px; line-height: 100%; }

.travelmenu .tm-tbody a.tm-tr span.tm-td.tm-price:before { display: inline; content:"ab ";}
.travelmenu .tm-tbody a.tm-tr span.tm-td.tm-price:after { display: inline; content:" €";}
.travelmenu .tm-tbody a.tm-tr span.tm-td.tm-date:before { display: inline; content:"z.B. ";}

@media screen and (max-width: 767px) { 

.travelmenu .tm-thead div.tm-td.tm-comment { display: none;}
.travelmenu .tm-tbody a.tm-tr span.tm-td.tm-comment { display: none;}

}


/* Accordion */

#main-content .accordion .card-header { padding:0; }
#main-content .accordion .card-header h4 { margin: 0; }
#main-content .accordion .card-header h4 button { display: block; padding: 1rem 1.25rem; position:relative; width:100%; text-align: left; font-size: inherit; line-height: inherit; font-weight: inherit; text-decoration: none !important; background: #069CD7; color: #ffffff; }
#main-content .accordion .card-header h4 button.collapsed { background: #ffffff; color: #173A79; }
#main-content .accordion .card-header h4 button:hover { background: #FCDE1D; color: #173A79; }

#main-content .accordion .card-header h4 button:after { display: block; position: absolute; content:""; right: 1.25rem; font-family:'fontAwesome'; font-size: 24px; line-height: 1; top:50%; margin-top: -10px; }
#main-content .accordion .card-header h4 button.collapsed:after { content:""; }


/* Downloads */

#main-content .downloads-container { margin-bottom: 30px; }

#main-content .downloads-title span {
	font-family: "Roboto";
	color: #173A79;
	font-weight: 700;
	display: block;
	margin: 0 0 10px;
	 font-size: 18px;
	line-height: 32px; }	
}

#main-content .download-entries {}

#main-content .download-entries a {
    display: block;
    background: #ffffff;
    width: 100%;
    margin-bottom: 2px;
    box-shadow: 0 0 4px 1px rgba(0,0,0,0.1);
    color: #173A79;
    padding: 15px 10px;
	position: relative;
}

#main-content .download-entries a .downloads-entry-title {
    display: block;
	margin-right:40px;
	line-height: 100%;
	margin-bottom: 5px;
}
#main-content .download-entries a .downloads-entry-meta {
    display: block;
	margin-right:40px;
    font-size: 80%;
	line-height: 80%;	
}

#main-content .download-entries a .downloads-entry-icon {
	position: absolute;
	right:8px;
	top: 50%;
	bottom:0;
	display: block;
	width: 24px;
	height: 24px;
	font-size:24px;
	line-height:24px;
}

#main-content .download-entries a .downloads-entry-icon:after {
	position: relative;
	width: 24px;
	height: 24px;
	display: block;
	font-family: 'fontAwesome';
	content: "";
	color: inherit;
	top:-12px;
}

#main-content .download-entries a:hover {
    background: #FCDE1D;
}


/* Tables */

#main-content #main table.ce-table {
	width:100%;
	background: #ffffff;
}
#main-content #main table.ce-table tbody td {
	padding: 4px 8px;
}
#main-content #main table.ce-table thead th {
	padding: 4px 8px;
	background: #069CD7;
	color: #ffffff;	
	font-weight: 400;
}

#main-content #main table.ce-table.ce-table-striped tbody tr {
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}
#main-content #main table.ce-table.ce-table-striped tbody tr:nth-of-type(2n) {
    background-color: rgba(6, 156, 215, 0.125);
}

#main-content #main table.restables-clone {
    display: none;
}
#main-content #main table.restables-clone td {
    width: 50%;
}
#main-content #main table.restables-clone td:first-child {
    font-weight: bold;
}
#main-content #main table.restables-clone tr:first-child td {
  	background: #069CD7;
	color:#ffffff;	
}
@media (max-width: 991px) {
    #main-content #main table.restables-origin {
        display: none;
    }
    #main-content #main  table.restables-clone {
        display: table;
    }
}

/* Tabs */
#main-content .tabbable a.nav-item.nav-link { color: #173A79;}
#main-content .tabbable .tab-content > * { border-collapse: collapse; width: 100%; width: calc(100% - 3em); margin: 0 1.5em 1.5em; }
#main-content .nav-tabs .nav-link:not(.active):focus, .nav-tabs .nav-link:not(.active):hover { background: #e9ecef; }

/* Flugplan */

#main-content #flights {margin-bottom: 30px; }
#main-content #flights-tabContent #departure .departure,
#main-content #flights-tabContent #arrival .arrival { display: table; border-collapse: collapse; width: 100%; width: calc(100% - 3em); margin: 0 1.5em 1.5em; }

#main-content ul.flights_table_row {
    border-top: 1px solid #cccccc;
    display: table-row;
    border-bottom: 1px solid #cccccc;
}
#main-content ul.flights_table_row:last-child {border-bottom: none;}


#main-content ul.flights_table_row:nth-of-type(2n) {
    background-color: rgba(6, 156, 215, 0.125);
}
#main-content ul.flights_table_row:first-child { 
    border-top: none;
}

#main-content ul.flights_table_row li {
    padding: 20px 10px;
    display: table-cell;
    vertical-align: middle;
    box-sizing: border-box;
}

#main-content ul.flights_table_head {
    background-color: rgb(6, 156, 215);
    color: #ffffff;
    display: table-row;
}

#main-content ul.flights_table_head li {
    padding: 8px 10px;
    display: table-cell;
    vertical-align: middle;
    box-sizing: border-box;
}

#main-content ul.flights_table_head li:before,
#main-content ul.flights_table_row li:before { display: none; }

#main-content ul.flights_table_row.started li, #main-content ul.flights_table_row.landed li { color: #069CD7 ; }
#main-content ul.flights_table_row li.flights_table_td__info.expected, #main-content ul.flights_table_row li.flights_table_td__info.expected { font-weight: bold; }




@media screen and (max-width: 991px) { 
   #main-content #flights-tabContent #departure .departure, #main-content #flights-tabContent #arrival .arrival { display: block; margin: 0; width:100%;}
   #main-content ul.flights_table_head { display: none; }   
   #main-content ul.flights_table_row { display: block; position: relative; margin: 0; border-top: none; }
   #main-content ul.flights_table_row:before { display: table; content:" "; }
   #main-content ul.flights_table_row:after { display: table; clear:both; content:" "; }
   #main-content ul.flights_table_row:nth-child(2) { border-top: 1px solid #cccccc; }
   
   #main-content ul.flights_table_row li { display: block; text-align: left; padding: 0; margin:0; }
  
   ul.flights_table_row li.flights_table_td__std, #main-content ul.flights_table_row li.flights_table_td__etd {
      display: block;
      clear: both;
      float: none;
   }
   ul.flights_table_row li.flights_table_td__std:before, #main-content ul.flights_table_row li.flights_table_td__etd:before  {
      display: inline;
      content: attr(data-title);
      margin: 0 6px;
      font-family: inherit;
      position: relative;
      font-size: inherit;
   }
         
}

.modal-open { width: 100vw; height: 100vh; }