/*

Theme Name: TSC
Theme URI: https://kmbmedia.de
Description: Ein individuelles WordPress Theme
Version: 1.0
Author: KMB Media Werbeagentur
Author URI: https://kmbmedia.de
Template: hello-elementor

*/

/* CORE */

a.mail-link span span { display: inline !important; }

.kmb_logo { padding: 10px 0px 5px 0px; }
img.kmb_logo { width: 175px; }

strong, b { font-weight: 700; }

.show-for-small { display: none; }
.hide-for-small { display: inline; }

.noselect {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

::-moz-selection { color: white; background: #004b82; }
::selection { color: white; background: #004b82; }

.white a:link		{ color: #fff; text-decoration: underline; }
.white a:visited	{ color: #fff; text-decoration: none; }
.white a:hover		{ color: #fff; text-decoration: none; }
.white a:active	{ color: #fff; }

footer a:link		{ color: #fff; text-decoration: underline; }
footer a:visited	{ color: #fff; text-decoration: none; }
footer a:hover		{ color: #fff; text-decoration: none; }
footer a:active	{ color: #fff; }


/* INTERIOR */
.fwpl-btn {border-radius: 25px;}
.schiff_button {margin-top: 20px; margin-left: 20px;}

.fwpl-row .el-1wb0ycc { background: #098BBC !important;}
.fwpl-item.el-f8lors .fwpl-btn:hover { background-color: #92A4B1; padding: 5px 30px; color: #ffffff; }

#rmp-container-11496 { z-index: 999999 !important; }

.nav a:hover		{ text-decoration: none; }

.bg {
background: #006eb7;
padding: 1px 30px;
border-radius: 100px;
color: #fff !important; 
}

.flipster--flat .flipster__item--past, .flipster--flat .flipster__item--future {opacity: 1 !important;}

/* table tbody tr td {background-color: transparent;}
table tbody tr td:hover {background-color: transparent;} */

.ship-prices-container {
display: flex;
gap: 20px; /* Abstand zwischen den Jahresblöcken */
flex-wrap: wrap; /* Falls der Platz nicht reicht, brechen die Blöcke um */
}

.ship-prices-container .year-block {
width: 300px;
}

.ship-prices-container table {
width: 100%;
border-collapse: collapse;
margin-top: 10px;
}

.ship-prices-container table th, .ship-prices-container table td {
padding: 8px;
text-align: left;
border-bottom: 1px solid #92A4B1;
}

.ship-prices-container table th { background-color: #fff; }

.ship-prices-container h2 { margin-bottom: 20px; }

.ship-prices-container h3 { text-align: left; font-size: 1.2em; }

/* table tbody > tr:nth-child(2n+1) > td { background-color: #fff; }
table tbody tr:hover > td { background-color: #fff; }
table td {border: 1px solid #92A4B1;} */

.ship_bullet ul li { list-style-type: none; margin-left: -40px; }

.segel .elementor-cta__title {height: 50px; margin-bottom: 30px;}
.segel .elementor-cta__description {height: 40px; margin-bottom: 30px !important;}
.segelgebiete .elementor-cta__title {height: 80px;}

.el-1wb0ycc .fwpl-row {
border-bottom: solid 2px #92A4B1;
margin-bottom: 20px;
padding-bottom: 10px; }

.schiff .elementor-cta__description {height: 50px;}

.elementor-widget-dce-breadcrumbs ul {margin-left: -40px;}

#view-cart-btn {
display: inline-block;
font-weight: 400;
color: #fff;
text-align: center;
white-space: nowrap;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-color: transparent;
padding: .5rem 1rem;
font-size: 1rem;
border-radius: 0px;
transition: all .3s;
background-color: var( --e-global-color-a4a1a35 );
float: right;
}

#view-cart-btn:hover {
color: #fff;
background-color: var( --e-global-color-b2b7379 );
text-decoration: none;
}

.wpml-ls-statics-shortcode_actions .wpml-ls-item { transition: 0s background-color; }
.wpml-ls-statics-shortcode_actions .wpml-ls-current-language { background: #fff; }
.wpml-ls-statics-shortcode_actions .wpml-ls-item:hover { background: #fff; transition: all 0.3s ease-in; }


/* FACET */

/* 
.facetwp-template .row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
width: 100%;
}

/* .facetwp-template .column {
display: flex;
flex-direction: column;
flex-basis: 100%;
flex: 1;
width: calc(100% / 2);
flex: 0 1 calc( 100% / 2 );
flex-grow: 0;
padding-right: calc( 30px/2 );
padding-left: calc( 30px/2 );
}

.facetwp-template .column3 {
display: flex;
flex-direction: column;
flex-basis: 100%;
flex: 1;
width: calc(100% / 2);
flex: 0 1 calc( 100% / 2 );
flex-grow: 0;
padding-right: calc( 30px/2 );
padding-left: calc( 30px/2 );
margin-bottom: 20px;
}

.facetwp-template .card { margin-bottom: 30px !important; }

.facetwp-pager { font-size: 1em !important; margin: -10px 0 0 0 !important; text-align: center; color: #fff; }
.facetwp-pager .active { background: #991833 !important; font-weight: normal !important; }

.facetwp-pager a { background: #ababab !important; padding: 10px 15px 10px 15px !important; -webkit-transition: background-color .0s ease-in-out,color .0s ease-in-out !important; -moz-transition: background-color .0s ease-in-out,color .0s ease-in-out !important; -ms-transition: background-color .0s ease-in-out,color .0s ease-in-out !important; -o-transition: background-color .0s ease-in-out,color .0s ease-in-out !important; transition: background-color .0s ease-in-out,color .0s ease-in-out !important; }

.facetwp-pager a:hover { background: #991833 !important; }

.facetwp-page { padding: 0 !important; margin-right: 1px !important; }

.facetwp-pager .prev, .facetwp-pager .next { display: none !important; }

.frm_html_container { margin-top: 30px; }

.facetwp-template p { margin-left: 20px; }
.facetwp-template p.elementor-heading-title { margin-left: 0; }
*/

.field-error { border-color: #d00 !important; }

.datenschutz ul { margin-bottom: 20px; }
.datenschutz h2:first-of-type { margin-top: 0; }
.datenschutz h2 { margin-top: 40px; }


/** SCHIFFS GRID STYLING**/
.fwpl-item .el-h4g22 {font-size: 1.7em !important;}

.zeile_lang  {flex-direction: row !important;}

.titels { display: flex; font-size: 1em; font-weight: 700; border-bottom:2px solid #003455; color: #003455; position: sticky; top: 104px; background: #fff;z-index: 9999;}

.single-ship .titels {top: 160px;}

.flex-container { margin: 20px 0px 10px 20px; text-align: left; }

.info_button .elementor-button {background-color: #003455 !important; border-radius: 50px; color: #fff !important; font-size: 1em !important;}

.info_button:hover .elementor-button:hover {background-color: #92A4B1 !important; border-radius: 50px;}

#trip_listing .column_desktop { display: flex; font-size: 1em; font-weight: 300; color: #003455; padding-bottom: 10px; align-items: center; transition: background-color 0.3s linear; }

#trip_listing .row[class="row"] > :nth-child(4n-2), #trip_listing .row[class="row"] > :nth-child(4n-1) { background: #F1F3F5; }

#trip_listing .column_desktop:hover { background: #eeeeee; }
#trip_listing .row[class="row"] > :nth-child(4n-2):hover, #trip_listing .row[class="row"] > :nth-child(4n-1):hover { background: #eeeeee; }

#trip_listing .column_mobil { display: none; }

#trip_listing .datum { width: 200px;}
#trip_listing .abfahrt_ankunft { width: 150px;}
#trip_listing .dauer{ width: 80px;}
#trip_listing .kurzbeschreibung{ width: 280px;}
#trip_listing .schiff{ width: 200px;}
#trip_listing .info_buchen { width: 180px;}

.btn-check-availability {
display: inline-block;
background-color: #003455;
color: #fff !important;
padding: 10px 20px;
text-align: center !important;
text-decoration: none;
border-radius: 25px;
font-weight: bold !important;
width: 160px;
}
.btn-check-availability:hover {
background-color: #92A4B1 !important;
text-decoration: none;
}

.btn-check-unavailable {
display: inline-block;
background-color: #92A4B1;
color: #fff !important;
padding: 10px 20px;
text-align: center !important;
text-decoration: none;
border-radius: 25px;
font-weight: bold !important;
width: 160px;
}
.btn-check-unavailable:hover {
background-color: #003455 !important;
text-decoration: none;
}


/* EVENT LISTING */

.event_datum {width: 200px;}
.toernbeschreibung {width: 300px;}
.event_dauer {width: 160px;}
.event_info_buchen {width: 160px;}
.events {top: 104px !important;}
 
 
 /*SCHIFFE LISTING*/
 
.ship_row { display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; margin: 0 auto; }
.ship_row .column { margin-bottom: -20px; }

.ship_trip_listing { flex: 1 1 calc(25% - 20px); box-sizing: border-box; max-width: calc(25% - 20px);}
.ship_listing {background: #F1F3F5;}
.ship_listing > .flex-container {margin: 10px 0px 10px 0px;}

.ship_image img {width: 300px; height: 240px;}
.ship_image img:hover { filter: grayscale(70%); }

/* .ship_listing:hover { background: #098bbc; } */

.shipname { font-size: 1.2em; font-weight: 700; color: #003455; padding: 0px 20px;}
.ship_overnight, .ship_daytrip, .ship_info {display: flex; padding: 0px 20px;color: #003455;}
.headline {width: 35px; font-weight: 700; margin-bottom: -10px;}

.ship_filter { display: flex; font-size: 1em; font-weight: 700; border-bottom: 2px solid #003455; color: #003455; position: sticky; top: 0px; background: #fff;z-index: 9999;}
 
 .ship_info > .btn-check-availability { margin: 10px 0 20px; padding: 3px 20px; clear: both;}
 
 .ship_icon {width: 20px;margin-top: 1px;}
 
.facetwp-facet > select {background: #F1F3F5 !important; border: 1px solid #F1F3F5;font-size: 1.1em;}

.facetwp-facet {margin-bottom: 0px !important;}

.more_trips .titels .{ display: flex; font-size: 1em; font-weight: 700; border-bottom:2px solid #003455; color: #003455; position: sticky; top: 0px; background: #fff;z-index: 9999;}

.info_noresult { margin: 20px; }

.hafen { display: none; }

.otgs-development-site-front-end { display: none !important; }

/* Inhaltsverzeichnis */
#ez-toc-container {background: transparent; color: #003455; border: none; box-shadow: none; }
#ez-toc-container a {color: #003455;}

.elementor-slideshow__title { display: none;}

.filter_events { padding: 0px 10px; height: 104px;}

.elementor-cta__button.elementor-button {border: none !important;}

.faq-accordion { margin: 20px 0; }
.faq-category { margin-bottom: 20px; }

.faq-category:nth-child(1) > h3:nth-child(1) { margin-top: -20px; }

.faq-category-title {
font-family: "AG FB", Sans-serif;
text-transform: uppercase;
font-weight: 700;
text-decoration: underline;
font-size: 2em;
font-weight: bold;
margin-bottom: 10px;
margin-top: 40px;
color: #fff;
}

.faq-item { margin-bottom: 10px; }

.faq-question {
display: flex; 
align-items: center;
justify-content: space-between;
width: 100%;
text-align: left;
font-size: 1em;
font-weight: bold;
cursor: pointer;
background: #098BBC;
border: none;
padding: 10px;
border-radius: 0;
box-sizing: border-box;
overflow: hidden;
line-height: 1.4;
}

.faq-question:hover { background: #4A667E; color: #fff; }

.faq-item button { color: #fff; width: 100%; }
.faq-item button:focus { background: #4A667E; color: #fff; }

.faq-answer {
padding: 10px 0 1px 10px;
border-top: none;
font-size: 1em;
color: #003455;
background: rgba(255, 255, 255, 0.6);
}

.faq-question span {
flex: 1;
white-space: normal;
word-wrap: break-word;
overflow-wrap: break-word;
}

.faq-icon {
flex-shrink: 0;
width: 32px;
height: 32px;
transition: transform 0.3s ease;
}

.wpgmza-popout-panel { z-index: 999998 !important; } 
  
  
/* MEDIA Queries */

/* Smaller than desktop 1200 */
@media only screen and (min-width: 960px) and (max-width: 1199px) { }

/* Tablet Portrait size to standard 960 */
@media only screen and (min-width: 720px) and (max-width: 959px) { }

/* 9,7 hochkant, 10,5 hochkant */
@media only screen and (min-width: 768px) and (max-width: 959px) { }

/* 9,7 quer, 10,5 quer, 12,9 hochkant */
@media only screen and (min-width: 960px) and (max-width: 1160px) { }

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

.hide-for-small { display: none; }
.show-for-small { display: block; }
.trip_listing {display: none !important;}

.titels {display: none;}
.hafen {display: block;}
.flex {display: flex;}

#trip_listing .column_desktop { display: none; }

#trip_listing .column_mobil {display: block;font-size: 1em; font-weight: 300; color: #003455; padding-top: 10px; padding-bottom: 20px; margin-top: 10px; background: #fff;}

#trip_listing .column_mobil .title { font-size: 1.1em; font-weight: 700; }

#trip_listing .column_mobil .datum { width: 210px;}
#trip_listing .column_mobil .abfahrt_ankunft { width: 190px; }
#trip_listing .column_mobil .dauer { width: 210px; }

#trip_listing .column_mobil .kurzbeschreibung { width: 100%; }
.ship_row { justify-content: center; }
.ship_trip_listing {max-width: 80%;}

.facetwp-template { padding: 0 10px 0 10px; }

}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {  }


/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) { }



