/*
Theme Name: Hello Theme Child Master
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Theme Child Master is a child theme of Hello Elementor, created by Jadato team
Author: Jadato
Author URI: https://jadato.co/
Template: hello-elementor
Version: 1.0.1
Text Domain: jadato-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

@font-face {
    font-family: 'jadatopay';
    src:  url('icons/jadatopay/jadatopay.eot?oxdpdy');
    src:  url('icons/jadatopay/jadatopay.eot?oxdpdy#iefix') format('embedded-opentype'),
            url('icons/jadatopay/jadatopay.woff?oxdpdy') format('woff'),
            url('icons/jadatopay/jadatopay.svg?oxdpdy#jadatopay') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
  }
  
  .jpayicon {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'jadatopay' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
  
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  

  .jpay-googlepay:before {
    content: "\e900";
  }
  .jpay-applepay:before {
    content: "\e901";
  }
  .jpay-giropay:before {
    content: "\e902";
  }
  .jpay-klarna:before {
    content: "\e903";
  }
  .jpay-amex:before {
    content: "\e904";
  }
  .jpay-mastercard:before {
    content: "\e905";
  }
  .jpay-visa:before {
    content: "\e906";
  }


/*
Abstand links und rechts in Elementor sections
.elementor-section {
    padding: 0 10px;
}
*/

.templatesection {
    padding: 0;
}

h1, h2 {
    text-align: center;
}

.blue_bold {
    color: #5692ce;
    font-weight: 600;
}

.dualcolor {
    color: #535353;
}

.pagesubtitle {
    font-size: 1.5rem;
    line-height: 2em;
    color: #ffffff;
    text-align: center;
}
@media (max-width: 767px) {
    .pagesubtitle {
        font-size: 1.25rem;
        line-height: 1.3em;
    }
}

.legaltext {
    font-size: 0.875rem;
    line-height: 1.5em;
}

/*
Mobile menu
*/
.iconmenu {
    margin: 5px 0;
}

.iconmenu p {
    margin-bottom: 5px;
}

.wfsmenuicontext p {
    margin-bottom: 0;
}

/**
 * Mobile Menu V2
 * Snippet URLs: https://www.w3schools.com/howto/howto_js_curtain_menu.asp
                 https://www.w3schools.com/howto/howto_js_dropdown_sidenav.asp
 */
 .wfsoverlay {
    height: 0%;
    width: 100%;
    position: fixed;
    z-index: 999;
    bottom: 0;
    left: 0;
    background-color: #fff;
    overflow-y: auto;
    transition: 0.5s;
    border-top: #5692ce solid 0.25rem;
}

.wfsoverlay-content {
    width: 100%;
    text-align: center;
    padding: 1.25rem 1.5rem 1.5rem;
}

.wfsoverlay a {
    text-decoration: none;
    font-size: 36px;
    color: #5692ce;
    display: block;
    transition: 0.3s;
}

.wfsoverlay a:hover,
.wfsoverlay a:focus {
    color: #004387;
}

.wfsoverlay .wfsclosebtn {
    font-size: 60px;
}

@media screen and (max-height: 450px) {
    .wfsoverlay {
        overflow-y: auto;
    }

    .wfsoverlay a {
        font-size: 20px
    }

    .wfsoverlay .wfsclosebtn {
        font-size: 40px;
    }
}

.wfsmobilenav_container {
    display: flex;
    gap: 1.25rem;
}

/* Fixed wfsmobilenav, full height */
.wfsmobilenav {
    overflow-x: hidden;
    flex-grow: 1;
}

/* Style the wfsmobilenav links and the dropdown button */
.wfsmobilenav a,
.wfsmobilenav_dropdown-btn {
    font-family: "Montserrat", sans-serif;
    padding: 6px 8px 6px 16px;
    line-height: 2rem;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.875rem !important;
    color: #535353 !important;
    display: block;
    border: none;
    border-bottom: 1px solid #5692ce;
    background: none !important;
    width: 100%;
    text-align: left;
    cursor: pointer;
    outline: none;
    border-radius: 0 !important;
}

.wfsmobilenav a:last-child,
.wfsmobilenav_dropdown-btn:last-child {
    border: none;
}

/* Add an active class to the active dropdown button */
.wfsmobilenav_active {
    background-color: #5692ce;
    color: white;
    border-bottom: none;
}

/* Dropdown container (hidden by default). Optional: add a lighter background color and some left padding to change the design of the dropdown content */
.wfsmobilenav_dropdown-container {
    display: none;
    border-bottom: 1px solid #5692ce;
    padding-left: 0.5rem;
}

.wfsmobilenav_dropdown-container>a {
    border: none;
    text-transform: none;
}

/* Optional: Style the angle down icon */
.fa-angle-down {
    float: right;
    padding-right: 8px;
    line-height: 2rem !important;
}

.wfsmobilenav_iconlinks {
    text-align: center;
}

.wfsmobilenav_iconlinks>a {
    display: block;
    padding: 0.5rem 0;
}

.wfsmobilenav_icons {
    font-size: 1.125rem;
    background-color: #5692ce;
    color: #fff;
    border-radius: 50%;
    width: 2.25rem;
    height: 2.25rem;
    line-height: 2.25rem !important;
    text-align: center;
}

.wfsmobilemenucontainer {
    display: flex;
    border-top: #5692CE 1px solid;
    background-color: #fff;    
    position: -webkit-sticky; /* Safari */ 
    position: sticky; 
    bottom: 0;
    z-index: 500;
}

@media only screen and (min-width: 767px) {
    .wfsmobilemenucontainer {
        display: none;
    }
}

.wfsmobilemenuitem {
    width: 20%;
    text-align: center;
    border-right: 1px solid #E8E9EC;
    padding: 0.5625rem 0 0.0625rem;
    line-height: 1.5rem;
}

.wfsmobilemenuitem a:hover {
    color: #5692CE;
}

.wfsmobilemenuitem:last-child {
    border-right: 0;
}

.wfs-menu-icon {
    font-size: 1.25rem;
    display: block;
}

.wfsmobilemenuitem>a {
    font-size: 0.625rem;
    font-weight: 600;
    font-family: Montserrat, sans-serif;
}

/**
 * Snippet Name: Desktop Menu
 * Snippet URLs: https://www.w3schools.com/css/css_navbar_horizontal.asp
 */

.wfsheader_row {
    background-color: #fff;
    border-bottom: 1px solid #5692ce;
}

.wfsheader_row_sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 50;
}

 .wfsheader_row_content1, .wfsheader_row_content2 {
    display: flex;
    max-width: 1140px;
    margin: 0 auto;
    padding: 0.3125rem 1.25rem;
}

.wfsdesktopmenu-logo {
    width: 14%;
    margin: auto 0;
}

.wfsdesktopmenu-logo img {
    height: 100%;
    vertical-align: middle;
}

.wfsdesktopmenu {
    flex-grow: 1;
    margin: auto;
    font-family: Montserrat, sans-serif;
}

@media only screen and (max-width: 767px) {
    .wfsheader_row_content1 {
        display: none;
    }

    .wfsheader_row_content2 {
        justify-content: space-between;
    }

    .wfsdesktopmenu {
        display: none;
    }

    .wfsdesktopmenu-logo {
        width: 34%;
    }
}

nav.wfsdesktopmenu ul {
    display: flex;
    list-style-type: none;
    padding: 0;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-items: stretch;
    align-items: stretch;
}

nav.wfsdesktopmenu li {
    float: left;
}

nav.wfsdesktopmenu li a,
.wfsdesktopmenu-dropbtn {
    display: inline-block;
    color: #535353;
    text-align: center;
    padding: 0.2rem 0;
    text-decoration: none;
    text-transform: uppercase;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
}

nav.wfsdesktopmenu li a:hover,
.wfsdesktopmenu-dropdown:hover .wfsdesktopmenu-dropbtn {
    border-bottom: 3px solid #5692ce;
    color: #5692ce;
}

nav.wfsdesktopmenu li.wfsdesktopmenu-dropdown {
    display: inline-block;
}

.wfsdesktopmenu-dropdown-content {
    display: none;
    position: absolute;
    background-color: #fff;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
}

nav.wfsdesktopmenu .wfsdesktopmenu-dropdown-content a {
    padding: 0.2rem 1rem;
    text-decoration: none;
    display: block;
    text-align: left;
    text-transform: none;
}

.wfsdesktopmenu-dropdown-content a:hover {
    border-bottom: 3px solid transparent !important;
    background-color: #f1f1f1;
}

.wfsdesktopmenu-dropdown:hover .wfsdesktopmenu-dropdown-content {
    display: block;
}

.wfsdesktopmenu-cart-container {
    display: flex;
    align-items: center;
}

.wfsdesktopmenu-cart {
    padding-right: 0.75rem;
    height: 2rem;
}

.wfsdesktopmenu-cart-icon {
    font-size: 2rem;
    color: #5692ce; 
    position: absolute;
}

.wfsdesktopmenu-cart-amount {
    position: relative;
    left: 0.55rem;
    top: 0.31rem;
    width: 1.5rem;
    text-align: center;
    font-size: 0.875rem;
    line-height: 0.875rem;
    font-weight: 600;
    font-family: "Montserrat", sans-serif;
    color: #fff;
}

.wfsheader_row_checkout {
    justify-content: space-between;
}

.wfsdesktopmenu-checkout h1 {
    font-size: 2.5rem !important;
    margin: 0;
    line-height: 1rem !important;
}

/**
 * Snippet Name: Desktop Sub Menu
 * Snippet URLs: https://www.w3schools.com/css/tryit.asp?filename=trycss_navbar_horizontal_black
 */
 .wfssubheader_container {
    display: flex;
}

.wfssubheader_icons a {
    float: left;
    color: #5692CE;
    font-size: 1.25rem;
    line-height: 1.25rem;
    padding-right: 1.5rem;
}

.wfssubheader_icons a:hover {
    color: #004387;
}

.wfssubheader_submenu {
    flex-grow: 1;
}

.wfssubheader_submenu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    float: right;
}

.wfssubheader_submenu li {
    float: left;
}

.wfssubheader_submenu li a {
    display: block;
    color: #535353;
    font-family: "Montserrat", sans-serif;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-align: center;
    padding-left: 3vw;
    text-decoration: none;
}

.wfssubheader_submenu li a:hover {
    color: #5692CE;
}

 /**
 * Snippet Name: Footer
 */
 .wfsfooter {
    background-color: #f5f5f5;
    border-top: 2px solid #5692ce;
    font-size: 0.75rem;
    font-weight: 300;
    padding: 1.75rem 1.25rem;
}

.wfsfooter_content {
    max-width: 1140px;
    margin: 0 auto;
}

.wfsfooter_row1 {
    justify-content: center;
}

.wfsfooter_row2 ul {
    list-style-type: none;
    margin: 0;
    padding: 1rem 0;
    overflow: hidden;
    display: flex;
    justify-content: space-around;
}

.wfsfooter_row2 li a {
    color: #535353;
    text-align: center;
    text-decoration: none;
}

.wfsfooter_row3 {
    text-align: center;
    line-height: 0.75rem;
}

.wfssubheader_icons_footer {
    display: flex;
    float: none;
}

.wfsfooter_checkout {
    font-size: 0.75rem;
    line-height: 1rem;
}

@media only screen and (min-width: 1024px) {
    .wfsfooter_row2 {
        font-size: 1rem;
    }
}

@media only screen and (max-width: 767px) {
    .wfsfooter_checkout {
        padding-bottom: 3rem;
    }
}

/**
 * Snippet Name: Shop Menu
 * Snippet URLs: https://www.wpbeginner.com/wp-themes/how-to-add-custom-navigation-menus-in-wordpress-3-0-themes/
 */

.wfsshop_menu_container {

}

 .wfsshop_menu ul {
     list-style-type: none;
     padding: 0;
 }

 .wfsshop_menu a {
     color: #535353 !important;
 }

.wfsshop_menu a:hover {
    color: #5692ce !important;
}

.wfsshop_menu_icon {
    color: #5692CE;
    margin-right: 0.5rem;
    font-size: 0.875rem;
}


 /**
 * Snippet Name: Clickable Elementor Column or Section link
 * Snippet URLs: https://kaycinho.com/make-column-clickable-elementor-pro-sections-no-plugin/
 */
 .wfspointer {
     cursor: pointer;
}

/*
Desktop Header Icons
*/
.headericons {
    line-height: 0;
}

/*
Elementor Widget ohne Margin Bottom
*/
.nomarginbottom {
    margin-bottom: 0 !important;
}

/*
Startseite Grid Angebote
*/
.wfs_startgrid_container {
    display: grid;
    gap: 40px;
}

.wfs_startgrid_container_340 {
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
}

.wfs_startgrid_container_243 {
    grid-template-columns: repeat(auto-fit, minmax(243px, 1fr));
}

.wfs_startgrid_container_4c1r {
    display: grid; 
    gap: 40px 40px;
    grid-template-columns: 3fr 3fr 3fr 3fr;
}

@media only screen and (max-width: 1024px) {
    .wfs_startgrid_container_4c1r {
        grid-template-columns: 6fr 6fr;
        grid-template-rows: 1fr 1fr;     
    }
}

@media only screen and (max-width: 450px) {
    .wfs_startgrid_container_4c1r {
        grid-template-columns: 12fr;
        grid-template-rows: 1fr 1fr 1fr 1fr;
}
}

.wfs_startgrid_item {
    border: 1px solid #E8E9EC;
    border-radius: 5px;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
    padding: 20px;
}

h3.wfs_startgrid_h3 {
    font-size: 1.25rem !important;
    margin: 0.25em 0;
    line-height: 1.25em !important;
}

.wfs_startgrid_button {
    border: none !important;
    width: 100% !important;
    font-size: 1rem !important;
    line-height: 1.2;
    margin-top: 0.25em;
}

@media only screen and (min-width: 1025px) {
.wfs_startgrid_h3_hidden {
    display: none;
}
}

/*
Tabelle Verkauf
*/
table.wfsverkauf {
    width: 100%;
    border-collapse: collapse;
    font-size: 1rem;
}
table.wfsverkauf tr {
    border-top: #eeeeee 1px solid;
}
table.wfsverkauf tr:last-child {
    border-bottom: #eeeeee 1px solid;
}
table.wfsverkauf td {
    background-color: unset;
    border: unset;
    padding: 10px 0;
}

table.wfsverkauf tbody>tr:nth-child(odd)>td, table.wfsverkauf tbody>tr:nth-child(odd)>th {
    background-color: unset;
}

table.wfsverkauf tbody tr:hover>td, table.wfsverkauf tbody tr:hover>th {
    background-color: unset;
}

/*
Fahrplan
*/
.fahrplan table {
    margin-bottom: 0;
}

.fahrplan th, .fahrplan td {
    vertical-align: middle;
}

table.wfsfahrplan {
    width: 100%;
    font-size: 1rem;
    text-align: center;
}

@media (max-width: 1023px) {
    table.wfsfahrplan {
        font-size: 0.875rem;
    }
}

table.wfsfahrplan thead {
    background-color: #5692CE;
}

table.wfsfahrplan tbody>tr:nth-child(odd)>td, table.wfsfahrplan tbody>tr:nth-child(odd)>th {
    background-color: #ffffff;
}

table.wfsfahrplan tbody tr:hover>td, table.wfsfahrplan tbody tr:hover>th {
    background-color: #ffffff;
}

table.wfsfahrplan thead th {
    color: #ffffff;
    font-weight: 400;
}

table.wfsfahrplan caption+thead tr:first-child td, table.wfsfahrplan caption+thead tr:first-child th, table.wfsfahrplan colgroup+thead tr:first-child td, table.wfsfahrplan colgroup+thead tr:first-child th, table.wfsfahrplan thead:first-child tr:first-child td, table.wfsfahrplan thead:first-child tr:first-child th {
    border-top: 0;
}

table.wfsfahrplan th, table.wfsfahrplan td {
    padding: 5px;
    border: 0;
    vertical-align: middle;
}

table.wfsfahrplan th:nth-child(2), table.wfsfahrplan td:nth-child(2) {
  position:sticky;
  left:0px;
}

table.wfsfahrplan th:nth-child(2) {
    background-color: #5692CE;
}

table.wfsfahrplan td:nth-child(3), table.wfsfahrplan td:nth-last-child(2), table.wfsfahrplan thead th:nth-child(3), table.wfsfahrplan thead th:nth-last-child(2) {
    font-weight: 600;
}

table.wfsfahrplan td:nth-child(2) {
    background-color: #ffffff;
}


table.wfsfahrplan tbody tr {
    border-bottom: 1px solid #eeeeee;
}

.wfstable-scrollable {
    width: 100%;
    overflow-y: auto;
    margin: 0;
}
  
  .wfstable-scrollable::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 14px;
    height: 14px;
}
  
  .wfstable-scrollable::-webkit-scrollbar-thumb {
    border-radius: 8px;
    border: 3px solid #fff;
    background-color: rgba(0, 0, 0, .3);
}

.wfsaccordionitem>a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    float: right;
    padding-right: 3px;
    vertical-align: middle;
    font-weight: 900;
 }
 
 .wfsaccordionitem  {
     margin: 0 0 10px;
 }
 
 .wfsaccordionitem>a {
     border-top: 1px solid #E8E9EC !important;
     border-right: 1px solid #E8E9EC !important;
     border-bottom: 1px solid #E8E9EC !important;
     border-left: 5px solid #5692CE !important;
     border-radius: 5px;
     padding: 10px 20px !important;
 }

 .wfsviewpane {
    border-top: 0 !important;
    border-right: 1px solid #E8E9EC !important;
    border-bottom: 1px solid #E8E9EC !important;
    border-left: 5px solid #5692CE !important;
    border-radius: 5px;
    margin-top: -16px;
    margin-bottom: 20px;
    background-color: #fff;
    padding: 10px !important;
 }

/*
Jadato Accordion
https://www.youtube.com/watch?v=dr8Emho-kYo
https://codepen.io/Coding_Journey/pen/RwNgYmm
*/
.jadato_accordion {
    width: 100%;
    margin-bottom: -1.25rem;
}

.jadato_accordion p:empty {
    display:none;
}

.jadato_accordion p {
    margin-bottom: 0;
}

.jadato_accordion-item {
    border-top: 1px solid #E8E9EC;
    border-right: 1px solid #E8E9EC;
    border-bottom: 1px solid #E8E9EC;
    border-left: 5px solid #5692CE;
    border-radius: 0.3125rem;
    margin: 0 0 1.25rem;
}

.jadato_accordion-item-header, .jadato_fpaccordion-item-header {
    padding: 0.5625rem 3rem 0.5625rem 1.125rem;
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    color: #5692CE;
}

.jadato_accordion-item-header::after, .jadato_fpaccordion-item-header::after {
    font-family: "Font Awesome 5 Free";
    content: "\f078";
    color: #5692CE;
    font-weight: 900;
    position: absolute;
    right: 1.125rem;
}

.jadato_accordion-item-header.active::after, .jadato_fpaccordion-item-header::after {
    content: "\f077";
}

.jadato_accordion-item-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
    padding: 0 1.125rem;
}

.jadato_accordion-item-body-content {
    border-top: 1px solid #E8E9EC;
    padding: 0.625rem 0;
}

.jadato_wfsaccordionpreis:before {
    content: "Preis / Person: ";
    float: left;
}

.jadato_accordion-item-body-content-padding {
    padding: 0.8125rem 0;
}

.jadato_accordion-item-body-content>.wfstable-scrollable {
    padding-top: 0.9375rem;
}

/*
Ticket Loop Item
*/
.wfsticketloopitem-container {
    display: flex;
}

.wfsticketloopitem-container p {
    margin-bottom: 0;
}

.wfsticketloopitem-container:hover {
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
}

.wfsticketloopitem-left, .wfsticketloopitem-right {
    padding: 0.5em;

}

.wfsticketloopitem-left {
    flex-grow: 1;
}

.wfsticketloopitem-left {
    border-top: 1px solid #E8E9EC;
    border-bottom: 1px solid #E8E9EC;
    border-left: 1px solid #E8E9EC;
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
}

.wfsticketloopitem-right {
    background-color: #5692ce;
    width: max-content;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #5692ce;
    border-bottom: 1px solid #5692ce;
    border-right: 1px solid #5692ce;
    border-bottom-right-radius: 5px;
    border-top-right-radius: 5px;
    color: #ffffff;
}

.wfsticketloopitem-title {
    text-align: center;
    font-size: 1.25rem;
}

.wfsticketloopitem-datetimecontainer {
    display: flex;
    justify-content: center;
    column-gap: 1.2em;
}

.wfsticketloopitem-date {
    text-align: center;
    position:relative;
}

.wfsticketloopitem-date:after {
    content:"";
    position:absolute;
    top:20%;
    right:-0.55em;
    width:1px;
    height:60%;
    background:#dddddd;
}

.wfsticketloopitem-time {
    text-align: center;
}

.wfsticketloopitem-duration {
    text-align: center;
    position:relative;
}

.wfsticketloopitem-duration:after {
    content:"";
    position:absolute;
    top:20%;
    left: -0.6em;
    width:1px;
    height:60%;
    background:#dddddd;
}

@media (max-width: 767px) {
.wfsticketloopitem-time {
}
.wfsticketloopitem-time-label {
    display: none;
}
.wfsticketloopitem-duration {
    display: none;
}
}

/*
Speisekarte
*/

div.menucard {
    width: 100%;
    border-bottom: #eeeeee 1px solid;
    font-size: 16px;
    line-height: 1.5em;
  }
  
div.menucard:last-child {
    border-bottom: 0;
    padding-bottom: 6px;
  }

.divTable.menucard .divTableCellleft,
.divTable.menucard .divTableCellright,
.divTable.menucard .divTableHead {
    padding: 8px 0px;
  }
  
.divTable.menucard .divTableBody .divTableCellleft .divTableCellright {
    font-size: 14px;
  }
  
.divTable {
    display: table;
  }
  
  .divTableRow {
    display: table-row;
    
  }
  
  .divTableHeading {
    display: table-header-group;
  }
  
  .divTableCellleft,
  .divTableCellright,
  .divTableHead {
    display: table-cell;
  }
  
  .divTableHeading {
    display: table-header-group;
  }
  
  .divTableFoot {
    display: table-footer-group;
  }
  
  .divTableBody {
    display: table-row-group;
  }
  
  .divTableCellright {
    text-align: end;
    white-space: nowrap;
  }
  
  .mctitle {
  }
  
  .mcdesc {
    font-size: 0.875rem;
  }
  
  .mcsection {
    margin-top: 40px;
  }
  
  h3.mcsectiontitle {
    font-size: 24px;
    text-align: center;
  }
  
  .pshadow {
    text-shadow: 1px 1px 1px black, 
                 3px 3px 5px black;
  }

 /*
Payments
*/

.wfs_payment {
    color: #5692CE;
    font-size: 2.2rem;
}

.wfs_payment .fab {
}

.wfs_payment .fab:first-child {
    margin-left: 0;
}

/*
Start - Icon Box
*/
.wfsiconflexcontainer {
    display: flex;
    column-gap: 2.5em;
}
.wfsiconflexboxleft, .wfsiconflexboxright {
    width: 50%;
}

@media (max-width: 767px) {
    .wfsiconflexcontainer {
        flex-direction: column;
    }
    .wfsiconflexboxleft, .wfsiconflexboxright {
        width: 100%;
    }
}

.wfsiconbox {
    display: flex;
    margin-bottom: 1.5em;
}

.wfsiconbox-icon {
    background-color: #5692ce;
    color: #fff;
    padding: 12px;
    border-radius: 50%;
    font-size: 1.5rem;
}

.wfsiconbox-left {
    margin-right: 1rem;
    margin-top: 1.25em;
}

p.wfsiconbox-headline {
    font-size: 1.5rem;
    margin-bottom: 0;
}

p.wfsiconbox-subline {
    margin-bottom: 0;
    line-height: 1.5rem;
}

/*
Linienfahrten - Preise / Charter - Fingerfood Preise
*/
p.wfsfingerfoodtitle, .wfspricetitle {
    margin-bottom: 0;
}

.wfspricedesc {
    font-size: 0.875rem;
}

.wfspricesection {
    margin-bottom: 30px;
}

.wfspricesection_sonderfahrten {
    margin-bottom: 0
}

.wfspricesection h3 {
    margin: 0 0 0.75em;
    line-height: 1em !important;
}

h4.wfspricesectiontitle {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

p.wfsteilstreckentitel, p.wfsteilstreckensubtitle {
    margin-bottom: 0;
}

p.wfsteilstreckentitel {
    color: #5692CE;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
}

p.wfsteilstreckensubtitle {
    color: inherit;
    font-size: 0.875rem;
}

.wfspriceaddition {
    font-size: 0.75rem;
}

/*
Buchungsvorteile
*/
.wfs_benefits_container h3 {
    margin: 0 0 1.25rem;
}

.wfs_benefits_list_container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.wfs_benefits {
    display: flex;
    gap: 0.625rem;
}

.wfs_benefits_icon {
    font-size: 2rem;
}

.wfs_benefits_headline {
    font-size: 1.25rem;
    font-family: Montserrat, sans-serif;
    line-height: 1.3125rem;
    margin-bottom: 0.5rem;
}

.wfs_benefits_subline {
    font-size: 0.875rem;
    line-height: 1.25rem;
    margin-bottom: 0;
}

/*
Headline 2 Startseite Sonderfahrplan
*/
.headlinesection {
    margin-bottom: 10px !important;
}

/*
Feature Icons Buchungsvorteile
*/
.iconleft h5.elementor-icon-box-title {
    margin-top: 0;
}

/*
Icons mobile linksbündig
Linksbündig mobile: https://github.com/elementor/elementor/issues/3040
*/
@media (max-width: 767px) {
    .iconleft .elementor-icon-box-icon {
    float: left;
}

    .iconleft .elementor-icon-box-content {
    text-align: left;
    margin-left: 50px;
}
}

@media (max-width: 767px) {
    .contacticons .elementor-icon-box-title, .contacticons .elementor-icon-box-description {
        padding-left: 20px;
    }
}

/*
Info Box
*/
.wfsinfobox_container {
    text-align: center;
}
.wfsinfobox_icon {
    background-color: #5692ce;
    border-top: 1px solid #5692ce;
    border-left: 1px solid #5692ce;
    border-right: 1px solid #5692ce;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    color: #ffffff;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
    padding: 10px;
    font-size: 3rem;
}
.wfsinfobox_text {
    border-right: 1px solid #E8E9EC;
    border-bottom: 1px solid #E8E9EC;
    border-left: 1px solid #E8E9EC;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
    padding: 15px;
    font-size: 1.25rem;
}
.wfsinfobox_text p:last-child {
    margin-bottom: 0;
}

/*
Countdown
*/
.wfscountdown {
    border: 1px solid #E8E9EC;
    border-radius: 5px;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
    margin: 30px 0;
}

.wfscountdowncontainer {
    display: flex;
    text-align: center;
    color: #5692ce;
    margin: 20px 0;
}
.wfscountdownitems {
    flex: 100%;
    border-right: 1px solid #E8E9EC;
}
.wfscountdownitems:last-child {
    border: 0;
}
#days, #hours, #minutes, #seconds {
    font-size: 4rem;
    line-height: 3rem;
    margin-bottom: 0.25em;
}
.wfscountdownlabels {
    font-size: 1rem;
    margin-bottom: 0;
    line-height: 1rem;
}
@media (max-width: 768px) {
    #days, #hours, #minutes, #seconds {
        font-size: 3rem;
        line-height: 2.5rem;
    }
    .wfscountdownlabels {
        font-size: 0.9rem;
        line-height: 0.9rem;
    }
}
.wfscountdowntext_topdown {
    margin: 15px 0;
}
.wfscountdowntext_topdown p {
    font-size: 2rem;
    color: #5692ce;
    text-align: center;
    margin-bottom: 0;
}

/*
Listings Jobs, Allgemein (wfslisting)
*/
.joblisting ul, .wfslisting ul, .wfsiconlisting ul {
    list-style: none;
    padding: 0;
}

.joblisting ul {
    margin-bottom: 0.9rem;
}

.joblisting li, .wfslisting li {
    padding-left: 1.25rem;
}

.joblisting li:before, .wfslisting li:before, .wfsiconlisting li:before {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 3px;
}

.joblisting li:before, .wfslisting li:before {
    content: "\e941"; /* WFS Unicode */
    font-family: wfs;
    margin-left: -1.25rem; /* same as padding-left set on li */
    width: 1.25rem; /* same as padding-left set on li */
    color: #5692CE;
    font-size: 0.7rem;
}

.wfsiconlisting li{
    padding-left: 1.75rem;
}

.wfsiconlisting li:before {
    margin-left: -1.75rem; /* same as padding-left set on li */
    width: 1.75rem; /* same as padding-left set on li */
    font-size: 0.875rem;
}

li.wfsmap:before, li.wfscalendar:before, li.wfsclock:before, li.wfsusers:before, li.wfsweekday:before, li.wfsphone:before {
    font-family: "Font Awesome 5 Free"; 
}

li.wfsmap:before, li.wfsusers:before, li.wfsmoney:before, li.wfsweekday:before, li.wfsphone:before, li.wfscheers:before {
    font-weight: 900;
}

li.wfscalendar:before, li.wfsclock:before {
    font-weight: 400;
}

li.wfsmap:before {
    content: "\f3c5";
}

li.wfsphone:before {
    content: "\f879";
}

li.wfscalendar:before {
    content: "\f073";
}

li.wfsclock:before {
    content: "\f017";
}

li.wfsusers:before {
    content: "\f0c0";
}

li.wfsweekday:before {
    content: "\f784";
}

li.wfsduration:before {
    content: "\e916"; /* WFS Unicode */
    font-family: wfs;
}

li.wfsmoney:before {
    content: "\e92b"; /* WFS Unicode */
    font-family: wfs;
}

li.wfscheers:before {
    content: "\e90b"; /* WFS Unicode */
    font-family: wfs;
}

.joblisting h5 {
    color: #5692CE;
    margin-bottom: 0.5rem;
}

.jobsection {
    margin-bottom: 50px;
    border: 1px solid #E8E9EC;
    padding: 5px 25px;
    border-radius: 5px;
    box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.1);
}

/*
Linienfahrten - Google Maps Legende
*/
.mapsdesc p {
    margin-bottom: 0;
}

/*
Linienfahrten - Preistabellen
*/
.wfspricetable table {
    font-size: 1rem;
    margin-top: 7px;
}

.wfspricetable td:nth-child(2) {
    text-align: right;
}

.wfspricetable th, .wfspricetable td {
    padding: 8px 0;
}

.wfspricetable th {
    border: 0 !important;
    font-weight: 400;
}

.wfspricetable td {
    border-top: #eeeeee 1px solid;
    border-bottom: 0;
    border-left: 0;
    border-right: 0;
}

.wfspricetable thead {
    display: none;
}

.wfspricetablefull tr:nth-child(1) td {
    border: 0 !important;
}

.wfspricetable th:nth-child(2) {
    text-align: right;
}

.wfspricetable th:nth-child(1) {
    text-align: left;
    color: #5692CE;
    font-family: Montserrat, sans-serif;
    font-weight: 600;
}

@media (min-width: 768px) {
body:not(.elementor-editor-active) .elementor-menu-anchor:before {
    content: "";
    display:block;
    height: 80px; /* fixed header height*/
    margin: -80px 0 0; /* negative fixed header height */
    visibility: hidden;
    pointer-events: none;
}
}

/*
Woocommerce - Preise Tabelle
*/
.pricelist .elementor-price-list-item {
    border-bottom: #5692CE solid 1px;
}

.pricelist li:last-child .elementor-price-list-item {
    border-bottom: 0;
}

/*
Woocommerce - Product title
*/
.wfsproducttitle h1 {
    -moz-hyphens: auto; /* seit Firefox 6 */
    -webkit-hyphens: auto; /* seit Safari 5.1 (OS X), Safari 4.1 (iOS) */
    hyphens: auto;
}


/*
Woocommerce - Warenkorb
Warenkorb Spalte löschen - https://www.businessbloomer.com/woocommerce-hide-column-cart-table/
Thumbnail löschen und Button Warenkorb aktualisieren erhalten - https://jilt.com/blog/remove-woocommerce-product-images/
*/
.wfscart .woocommerce table.cart .product-thumbnail {
    display:none;
}

.wfscart .product-name a {
    font-size: 1.25rem;
    line-height: 1.5em;
}

@media (max-width: 768px) {

.wfscart .woocommerce table.cart td:nth-of-type(2), .wfscart .woocommerce table.cart th:nth-of-type(2) {
    display: block;
}

.wfscart .woocommerce table.cart td:nth-of-type(3), .wfscart .woocommerce table.cart th:nth-of-type(3),
.wfscart .woocommerce table.cart td:nth-of-type(4), .wfscart .woocommerce table.cart th:nth-of-type(4) {
    display: table-cell;
    width: 50%;
    border-top: 0;
}

.wfscart .woocommerce table.cart td:nth-of-type(5), .wfscart .woocommerce table.cart th:nth-of-type(5) {
    display: table-cell;
    width: 80%;
    border-top: 0;
}

.wfscart .woocommerce table.cart td:nth-of-type(6), .wfscart .woocommerce table.cart th:nth-of-type(6) {
    display: table-cell;
    width: 20%;
    border-top: 0;
}

.wfscart .shortDescription {
    font-size: 0.9rem;
    text-align: center;
}

.wfscart .woocommerce table.shop_table_responsive tr td.product-name,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-name,
.wfscart .woocommerce table.shop_table_responsive tr td.product-price,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-price,
.wfscart .woocommerce table.shop_table_responsive tr td.product-price::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-price::before,
.wfscart .woocommerce table.shop_table_responsive tr td.product-quantity,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-quantity,
.wfscart .woocommerce table.shop_table_responsive tr td.product-subtotal,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-subtotal,
.wfscart .woocommerce table.shop_table_responsive tr td.product-subtotal::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-subtotal::before {
    text-align: center !important;
    float: unset;
}

.wfscart .woocommerce table.shop_table_responsive tr td.product-price::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-price::before,
.wfscart .woocommerce table.shop_table_responsive tr td.product-subtotal::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-subtotal::before {
    color: #5692CE;
    font-weight: 400;
}


.wfscart table tbody>tr:nth-child(even)>td, table tbody>tr:nth-child(even)>th {
    background-color: transparent !important;
}
}

.wfscart .product-price, .wfscart .product-quantity, .wfscart .product-subtotal {
    text-align: end;
}

.wfscart .woocommerce table.shop_table {
    border: 0;
}

.wfscart .woocommerce table.shop_table th {
    background-color: transparent;
    border: 0;
}

.wfscart table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    border-top: #5692CE solid 1px;
    border-bottom: 0;
}

.wfscart table tbody>tr:nth-child(even)>td, table tbody>tr:nth-child(even)>th {
    background-color: transparent;
    border-left: 0;
    border-right: 0;
    border-top: #5692CE solid 1px;
    border-bottom: 0;
}

.wfscart .cart-collaterals .cart_totals tr td{
    border-top: 0;
}

.wfscart table {
    font-size: 1rem;
}

.wfscart .shortDescription {
    margin-bottom: 0;
}

.wfscart .woocommerce a.remove {
    color: #5692CE !important;
}

.wfscart .woocommerce a.remove:hover {
    background-color: transparent;
    color: #004387 !important;
}

.wfscart .woocommerce table.shop_table th {
    color: #5692CE;
    font-weight: 400;
}

.wfscart #add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    background-color: #5692CE;
}

.wfscart #add_payment_method .wc-proceed-to-checkout a.checkout-button:hover, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
    background-color: #004387;
}

.wfscart .woocommerce .cart .button, .woocommerce .cart input.button {
    font-size: 1rem;
}

.wfscart .cart_totals h2 {
    font-size: 2rem;
}

.wfscart .woocommerce table.shop_table_responsive tr td.product-name::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-name::before {
    display: none;
}

.wfscart .woocommerce table.shop_table_responsive tr td.product-quantity::before,
.wfscart .woocommerce-page table.shop_table_responsive tr td.product-quantity::before {
    display: none;
}

.wfscart #respond input#submit.disabled,
.wfscart #respond input#submit:disabled,
.wfscart #respond input#submit:disabled[disabled],
.wfscart a.button.disabled,
.wfscart a.button:disabled,
.wfscart a.button:disabled[disabled],
.wfscart button.button.disabled,
.wfscart button.button:disabled,
.wfscart button.button:disabled[disabled],
.wfscart input.button.disabled,
.wfscart input.button:disabled,
.wfscart input.button:disabled[disabled] {
    opacity: 0.5 !important;
}

.wfscart #respond input#submit.disabled:hover,
.wfscart #respond input#submit:disabled:hover,
.wfscart #respond input#submit:disabled[disabled]:hover,
.wfscart a.button.disabled:hover,
.wfscart a.button:disabled:hover,
.wfscart a.button:disabled[disabled]:hover,
.wfscart button.button.disabled:hover,
.wfscart button.button:disabled:hover,
.wfscart button.button:disabled[disabled]:hover,
.wfscart input.button.disabled:hover,
.wfscart input.button:disabled:hover,
.wfscart input.button:disabled[disabled]:hover {
    background-color: #5692CE;
    color: #fff !important;
    opacity: 0.75 !important;
}

.wfscart #add_payment_method table.cart td.actions .coupon .input-text, .woocommerce-cart table.cart td.actions .coupon .input-text, .woocommerce-checkout table.cart td.actions .coupon .input-text {
    width: auto;
    margin: 20px 10px 0 0;
}

@media (max-width: 767px) {
    .wfscart #add_payment_method table.cart td.actions .coupon .input-text, .woocommerce-cart table.cart td.actions .coupon .input-text, .woocommerce-checkout table.cart td.actions .coupon .input-text {
        width: 100%;
        margin: 20px 10px 0 0;
        float: none;
    }
    .wfscart .woocommerce #content table.cart td.actions .coupon .button.alt, .woocommerce #content table.cart td.actions .coupon .input-text+.button, .woocommerce table.cart td.actions .coupon .button.alt, .woocommerce table.cart td.actions .coupon .input-text+.button, .woocommerce-page #content table.cart td.actions .coupon .button.alt, .woocommerce-page #content table.cart td.actions .coupon .input-text+.button, .woocommerce-page table.cart td.actions .coupon .button.alt, .woocommerce-page table.cart td.actions .coupon .input-text+.button {
        width: auto;
        margin-right: 10%;
        margin-left: 10%;
    }
}

.wfscart .coupon .button {
    color: #5692CE !important;
    background-color: #fff;
    border: 2px solid #5692CE;
    font-size: 0.8rem !important;
}

.wfscart .coupon .button:hover {
    color: #004387 !important;
    background-color: #fff;
    border: 2px solid #004387;
}

.woocommerce td.product-name dl.variation dt {
    display: none;
}

.elementor-kit-67 input:not([type="button"]):not([type="submit"]), .elementor-kit-67 textarea, .elementor-kit-67 .elementor-field-textual {
    box-shadow: none !important;
}

/* The "Update Cart" button */
.wfscart .button[name="update_cart"] {
    font-size: 0.8rem !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-weight: 400;
}

/*
Woocommerce - Elementor Menu-Cart
*/
.wfsminicart .elementor-menu-cart__product {
    display: block !important;
}

.wfsminicart .elementor-menu-cart__product-name,
.wfsminicart .elementor-menu-cart__product-price {
    padding-left: 0 !important;
}

.wfsminicart .elementor-menu-cart__product-remove {
    display: none;
}

.wfsminicart .elementor-menu-cart__product-name a {
    font-size: 1rem;
}

.wfsminicart .elementor-menu-cart__footer-buttons {
    margin-top: 20px;
}

.wfsminicart .widget_shopping_cart_content::before {
    content: "Warenkorb";
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    color: #5692CE;
    font-size: 2rem;
}

.wfsminicart .elementor-menu-cart__products {
    padding-top: 0.75rem;
    border-top: 2px solid #5692CE;
}

.wfsminicart .elementor-menu-cart__product-price {
    text-align: right;
}

.wfsminicart .elementor-menu-cart__product-price .amount {
    font-weight: 400;
}

.wfsminicart .elementor-menu-cart__product-price::before {
    content: "Preis: ";
    float: left;
    font-size: 0.875rem;
}

.wfsminicart .elementor-menu-cart__close-button:after, .wfsminicart .elementor-menu-cart__close-button:before {
    background-color: #5692CE;
}

.wfsminicart .elementor-menu-cart__product-name p {
    margin-bottom: 0;
}

.wfsminicart dt.variation-Ticket {
    display: none;
}

.wfsminicart dd.variation-Ticket {
    margin-inline-start: unset;
}

.wfsminicart .elementor-menu-cart__product-name p {
    line-height: 1em;
}

.wfsminicart .elementor-menu-cart__products {
    max-height: calc(100vh - 350px);
}

@media screen and (max-width: 767px) {
    .wfsminicart .elementor-menu-cart__products {
        max-height: calc(100vh - 450px);
    }
}


/*
Woocommerce - Elementor Menu-Cart - ausblenden wenn leer
*/
.wfsminicart_empty .wfsminicart {
    display: none !important;
}

.wfscart1 .wl-ci-product-remove {
    font-size: 0.5rem !important;
}

.wfscart1 p {
    margin-bottom: 0;
}

.wfscart1 .wl-ci-product-style table tbody tr td.wl-bottom-actions {
    display: none !important;
}

.wfscart_totals table.shop_table {
    border: 1px solid #5692CE !important;
    border-collapse: separate;
    border-radius: 5px;
    padding: 5px 10px;
}

.wfs_coupon_empty .wfs_coupon {
    display: none !important;
}

/*
Woocommerce - Kasse
*/
#wfscheckout dt.variation-Ticket {
    display: none;
}

#wfscheckout #wfacp-e-form .wfacp_main_form .woocommerce-checkout .button.button#place_order {
    background-color: #5692CE;
    font-family: Montserrat, sans-serif;
    font-size: 1.375rem;
    font-weight: 600;
}

#wfscheckout #wfacp-e-form .wfacp_main_form .woocommerce-checkout .button.button#place_order:hover {
    background-color: #004387;
}

#wfscheckout p.product-subtitle, #wfscheckout p.product-quantity  {
    margin-bottom: 0;
}

#wfscheckout .stripe-card-group {
    width: 100%;
}

.wfsthankyou_info_headlines {
    color: #5692CE;
    font-family: Montserrat, sans-serif;
    font-size: 1.5rem;
    font-weight: 500;
}

.wfsthankyou_info p {
    margin-bottom: 2rem;
}

/*
Woocommerce - Leeren Warenkorb ausblenden
*/
.woocommerce-info {
    display: none;
}

/*
Woocommerce - Zurück zum Shop im leeren Warenkorb ausblenden
*/
p.return-to-shop {
    display: none;
}

ul.wc-item-meta {
    padding: 0;
}

.woocommerce td.product-name .wc-item-meta .wc-item-meta-label {
    display: none;
}

.product-quantity {
    font-weight: 400;
}

/*
Woocommerce - Woolementor - Anzahl
*/
.wfscart1 .wl-ci-product-quantity .quantity.buttons_added {
    margin: 0 !important;
}

.ui-datepicker .ui-widget .ui-widget-content .ui-helper-clearfix .ui-corner-all {
    display: block !important;
}

/*
Woocommerce - Variation Table Grid
*/
.wfstableadd2cart .globalcartcol, .wfstableadd2cart .vartable_globalcart {
    display: none !important;
}

.wfstableadd2cart table {
    font-size: 1rem;
}

.wfstableadd2cart table.vartable td, .wfstableadd2cart table.vartable th {
    border: unset;
    background-color: transparent;
    height: 3.7em;
}

.wfstableadd2cart table.vartable tr {
    border-top: 1px solid #E8E9EC;
}

.wfstableadd2cart table.vartable tr:last-child {
    border-bottom: 1px solid #E8E9EC;
}

.wfstableadd2cart .vartable.should_hide_mobile_header td {
    text-align: left;
}

.wfstableadd2cart table.vartable td:nth-child(1) {
    padding-left: 0;
    line-height: 1.25rem;
}

.wfstableadd2cart table.vartable td:nth-child(2) {
    text-align: end;
    line-height: 1.25rem;
    padding-right: 10px;
}

.wfstableadd2cart table.vartable td:nth-child(3) {
    padding-right: 0;
    width: 70px;
}

.wfstableadd2cart .qtywrap {
    width: 70px;
    background-color: #5692ce;
    color: #ffffff;
}

.wfstableadd2cart table.vartable input.qty {
    text-align: center;
}

.wfstableadd2cart .qtycol input {
    border:1px solid #5692ce;
    width: 30px;
    box-shadow: none !important;
    background-clip: padding-box;
}

.wfstableadd2cart .qtycol input[type=number]::-webkit-inner-spin-button, 
.wfstableadd2cart .qtycol input[type=number]::-webkit-outer-spin-button { 
  margin: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media screen and (max-width: 767px) {
   
    .wfstableadd2cart table.vartable {
        max-width: unset;
    }
    
    .wfstableadd2cart table.vartable tr {
        display: table-row; 
        width: unset; 
        border-bottom: unset;
    }
      
    .wfstableadd2cart table.vartable td {
        display: table-cell;
        width: unset;
        clear: unset;
        text-align: unset;
    }
    
    .wfstableadd2cart table.vartable td.pricecol {
        max-width: unset;
    }
    
    .wfstableadd2cart table.vartable td span {
        display: inline;
    }
        
    .wfstableadd2cart table.vartable td:before {
        content: unset;
        float: unset;
        text-transform: unset;
        font-weight: unset;
    }
        
    .wfstableadd2cart table.vartable, .wfstableadd2cart table.vartable tr {
        min-width: unset;
        max-width: unset;
        width: unset;
    }

    .disable_responsive_wrap {
        white-space: unset !important;
    }
}

.wfstableadd2cart .woocommerce #respond input#submit.alt, 
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt {
    width: 100%;
    text-align: center;
    background-color: #5692CE;
    margin-top: 20px;
    border-radius: 30px;
    font-weight: 400;
    font-size: 1.25rem;
    padding: 12px 24px !important;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
}

.wfstableadd2cart .woocommerce #respond input#submit.alt:hover, 
.woocommerce a.button.alt:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce input.button.alt:hover {
    background-color: #004387;
}    

/*
Kalender
*/
.calendarany_grid_container {
    display: grid;
    grid-template-columns: 11fr max-content;
    grid-auto-flow: row;
    grid-template-areas: "calendarany_eventbox calendarany_chevron";
}

.calendarany_eventbox {
    display: grid;
    grid-template-columns: 4fr 6fr 2fr;
    gap: 0px 0px;
    grid-auto-flow: row;
    grid-template-areas: "calendarany_eventtime calendarany_eventtitle calendarany_eventduration";
    grid-area: calendarany_eventbox;
    font-size: 1rem;
    line-height: 2rem;
    margin-bottom: 0;
    text-align: center;
    column-gap: 1em;
}

.calendarany_eventtime, .calendarany_eventtitle, .calendarany_eventduration, .calendarany_chevron {
    padding: 0.5em;
}

.calendarany_eventtime, .calendarany_eventduration {
    color: #535353;
}

.calendarany_eventtime {
    grid-area: calendarany_eventtime;
    position: relative;
}

.fc-event, .fc-event.fc-h-event {
    padding: 0 !important;
}

@media (min-width: 768px)  {
.calendarany_eventtime:after {
    content:"";
    position:absolute;
    top:20%;
    right:-0.5em;
    width:1px;
    height:60%;
    background:#dddddd;
}
}

.calendarany_eventtitle {
    grid-area: calendarany_eventtitle;
    font-size: 1.25rem;
    font-family: Montserrat, sans-serif;
    line-height: 1.875rem;
}

.calendarany_eventduration {
    grid-area: calendarany_eventduration;
    position: relative;
}

@media (min-width: 768px)  {
.calendarany_eventduration:before {
    content:"";
    position:absolute;
    top:20%;
    left:-0.5em;
    width:1px;
    height:60%;
    background:#dddddd;
}
}

.calendarany_chevron {
    grid-area: calendarany_chevron;
    display: grid;
    background-color: #5692ce;
    align-items: center;
}

@media (max-width: 767px) {
.calendarany_eventbox {
    grid-template-columns: 6fr 6fr 6fr;
    column-gap: unset;
}

.calendarany_eventtime {
    grid-row: 2 / 2;
    grid-column: 1 / 3;
    text-align: left;
}

.calendarany_eventtitle {
    grid-row: 1 / 1;
    grid-column: 1 / 4;
    border-left: inherit;
    border-right: inherit;
    margin: inherit;
}

.calendarany_eventduration {
    grid-row: 2 / 3;
    grid-column: 3 / 4;
    text-align: right;
}

.calendarany_eventtitle {
    padding: 0.5em 0.5em 0;
}

.calendarany_eventtime, .calendarany_eventduration {
    padding: 0 0.5em 0.5em;
}
}

.fc-widget-content {
    background-color: #fff !important;
}