/*
Theme Name: P3 Wordpress Theme - Child
Theme URI: https://p3digital.media
Description: Child Theme
Author: P3 DIGITAL/MEDIA
Author URI: https://p3digital.media
Template: p3-homepage
Version: 0.1
Text Domain: p3-homepage-child
Domain Path: /languages
*/

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

:root{
    --color-light-1: #D7D0CC;
    --color-light-2: #cdc6c3;
    --color-light-3: #373737;
}

/* Basics */

html {
    scroll-padding-top: 150px;
}

body{
    overflow-x: hidden;
}

main{
    padding-top: 0; /*var(--base-clearance-lg);*/
    letter-spacing: -.1px;
}

img {pointer-events:none;}

.h2_uppercase h2, .h2_uppercase .h2,
.h3_uppercase h3, .h3_uppercase .h3{
    text-transform: uppercase;
}

/* section-header */

    .section-header{
        padding-top: var(--base-clearance-md);
        padding-bottom: 380px;
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .section-header h2{
        font-size: clamp(60px, 0.5rem + 7vw, 110px) !important;
        text-transform: uppercase;

        font-family: var(--base_font_family_4);
        font-weight: var(--base_font_weight_4);
        font-style: normal;
        line-height: 1;
        word-spacing: -10px;
    }
    
    .section-header h2 em{
        font-family: var(--base_font_family_3);
        font-weight: var(--base_font_weight_3);
        font-style: normal;
        padding-right: 10px;
        margin-right: -10px;
    }
    
    .section-header h2 em:nth-of-type(2){
        padding-left: 50px;
        color: var(--color-light-2);
    }

    @media (min-width: 768px) {
        .section-header h2 em:nth-of-type(2){
            padding-left: 100px;
        }
    }

    body#design_light .section-header h2 em:nth-of-type(2){
        color: var(--color-light-3);
    }
    
    .section-header .claim{
        max-width: 500px;
        font-size: clamp(16px, 0.5rem + 5vw, 24px) !important;
    }
    
    .section-header .claim p{
        font-family: var(--base_font_family_4) !important;
        font-weight: var(--base_font_weight_4) !important;
        font-style: normal;
        letter-spacing: -0.5px;
    }
    
    .section-header h1{
        font-family: var(--base_font_family_4) !important;
        font-weight: var(--base_font_weight_4) !important;
        font-style: normal;
        opacity: 0.25;
        font-size: var(--base-font-lg) !important;
    }

    .section-header.section-404{
        padding-bottom: 650px;
    }

    .section-header.section-404 h2{
        font-size: clamp(50px, 0.5rem + 7vw, 65px) !important;
        word-spacing: 0px;
    }


/* Carousel > Overflow visible */

.carousel-section {
  padding-top: var(--base-clearance-lg);
  padding-bottom: var(--base-clearance-lg);
  overflow: visible;
}

.carousel-section .owl-carousel.open-carousel-details .owl-stage {
  padding-left: 0 !important;
}

@media (min-width: 1024px) {
    .carousel-section .owl-carousel.open-carousel-details .owl-stage-outer {
      overflow: unset;
    }
}

/* Owl-Nav-Center (Details only) */

    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-next,
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-prev {
      position: absolute;
      top: calc(50% - 16px);
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      display: flex;
      font-size: 25px !important;
      background-color: var(--color-bg-1) !important;
      width: 46px;
      height: 46px;
      justify-content: center;
      align-items: center;
      color: var(--color-primary-contrast) !important;
      outline: 0;
      border-radius: 100%;
      padding: 6px !important;
    }
    
    .carousel-section .owl-carousel.open-carousel-details .owl-nav .owl-next {
      right: 0;
      margin-right: -28px;
    }
    
    .carousel-section .owl-carousel.open-carousel-details .owl-nav .owl-prev{
      left: 0;
      margin-left: -28px;
    }
    
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-prev span,
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-next span{
      display: none;
    }

    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-prev.disabled,
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-next.disabled{
      display: none;
    }
    
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-prev:before{
        content: "";
        background-size: contain;
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        display: block;
        background-image: url(/wp-content/uploads/2025/03/next_white.svg);
        background-repeat: no-repeat;
        background-position: center;
        margin: 0 auto;
        transform: rotate(180deg);
    }
    .carousel-section .owl-carousel.open-carousel-details .owl-nav button.owl-next:after{
        content: "";
        background-size: contain;
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        display: block;
        background-image: url(/wp-content/uploads/2025/03/next_white.svg);
        background-repeat: no-repeat;
        background-position: center;
        margin: 0 auto;
    }


/* open-carousel-produkte */

    .open-carousel-produkte .owl-stage {
      display: flex;
    }
    .open-carousel-produkte .owl-item {
      display: flex;
      flex: 1 0 auto;
    }
    .open-carousel-produkte .caption {
      display: flex;
      flex: 1 0 auto;
      flex-direction: column;
    }
    .open-carousel-produkte .flex-text {
      flex-grow: 1;
    }
    .open-carousel-produkte .thumbnail {
      display: flex;
      flex-direction: column;
      margin: 0 15px;
    }
    .open-carousel-produkte .item{
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        margin-bottom: 0;
        height: 100%;
        overflow: hidden;
        border-radius: var(--base-radius);
        background-color: var(--color-surface-1);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    .open-carousel-produkte .item > .vc_row > .wpb_column > .vc_column-inner > .wpb_wrapper .wpb_text_column,
    .open-carousel-produkte .item > .vc_row > .wpb_column > .vc_column-inner > .wpb_wrapper .vc_btn3-container{
        padding: 0 var(--base-clearance-md);
    }
    
    /* Owl-Nav-Center */
    
    .open-carousel-produkte .owl-nav button.owl-next,
    .open-carousel-produkte .owl-nav button.owl-prev {
      position: absolute;
      top: calc(50% - 15px);
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      display: flex;
      font-size: 25px !important;
      background-color: #151515 !important;
      width: 66px;
      height: 66px;
      justify-content: center;
      align-items: center;
      color: var(--color-primary-contrast) !important;
      outline: 0;
      border-radius: 100%;
      padding: 6px !important;
    }
    
    .open-carousel-produkte .owl-nav .owl-next {
      right: 0;
      margin-right: -34px;
    }
    
    .open-carousel-produkte .owl-nav .owl-prev{
      left: 0;
      margin-left: -34px;
    }

    @media (min-width: 1024px) {
        .open-carousel-produkte .owl-nav .owl-next {margin-right: -38px;}
        .open-carousel-produkte .owl-nav .owl-prev{margin-left: -38px;}
    }
    
    .open-carousel-produkte .owl-nav button.owl-prev span,
    .open-carousel-produkte .owl-nav button.owl-next span{
      display: none;
    }

    .open-carousel-produkte .owl-nav button.owl-prev.disabled,
    .open-carousel-produkte .owl-nav button.owl-next.disabled{
      display: none;
    }
    
    .open-carousel-produkte .owl-nav button.owl-prev:before{
        content: "";
        background-size: contain;
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        display: block;
        background-image: url(/wp-content/uploads/2025/03/next_white.svg);
        background-repeat: no-repeat;
        background-position: center;
        margin: 0 auto;
        transform: rotate(180deg);
    }
    .open-carousel-produkte .owl-nav button.owl-next:after{
        content: "";
        background-size: contain;
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        display: block;
        background-image: url(/wp-content/uploads/2025/03/next_white.svg);
        background-repeat: no-repeat;
        background-position: center;
        margin: 0 auto;
    }
    
    .open-carousel-produkte .owl-nav button.owl-next:hover,
    .open-carousel-produkte .owl-nav button.owl-prev:hover{
      background-color: var(--color-primary-hover) !important;
    }

    .open-carousel-produkte .owl-nav button.owl-prev:hover:before,
    .open-carousel-produkte .owl-nav button.owl-next:hover:after{
        background-image: url(/wp-content/uploads/2025/03/next_black.svg);
    }
    
   

/* open-carousel-details */

    .open-carousel-details .owl-stage {
      display: flex;
      padding: 0 !important;
    }
    .open-carousel-details .owl-item {
      display: flex;
      flex: 1 0 auto;
    }
    .open-carousel-details .caption {
      display: flex;
      flex: 1 0 auto;
      flex-direction: column;
    }
    .open-carousel-details .flex-text {
      flex-grow: 1;
    }
    .open-carousel-details .thumbnail {
      display: flex;
      flex-direction: column;
      margin: 0 15px;
    }
    .open-carousel-details .item{
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        margin-bottom: 0;
        height: 100%;
        overflow: hidden;
        border-radius: var(--base-radius);
        background-color: var(--color-surface-1);
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        padding: var(--base-clearance-md);
    }

    .open-carousel-details .svg-wrapper{
        margin-bottom: var(--base-clearance-sm);
    }

    .open-carousel-details h3{
        font-size: var(--base-font-lg) !important;
        text-transform: uppercase;
        margin-bottom: var(--base-clearance-sm);
    }

    .open-carousel-details p{
        font-family: var(--base_font_family_4) !important;
        font-weight: var(--base_font_weight_4) !important;
    }

    
/* section-showroom */

    .section-showroom{
        min-height: 400px;
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        text-align: right;
    }

    @media (min-width: 768px) {
        .section-showroom{
            min-height: 800px;
        }
    }
    
    .section-showroom .button-primary > a{
        background-color: var(--color-black) !important;
        border: 2px solid var(--color-black) !important;
        color: var(--color-white) !important;
    }


/* section-technologie */

.section-technologie{
    padding: var(--base-clearance-lg) 0;
}

/* section-kacheln */

.section-kacheln{
    overflow: visible !important;
}

.section-kacheln > .wpb_column:first-of-type{
    margin-top: -100px;
}

@media(min-width: 768px) {
    .section-kacheln > .wpb_column{
        margin-top: -100px;
    }
}



.section-kacheln > .wpb_column > .vc_column-inner > .wpb_wrapper{
    background-color: var(--color-light-2);
    padding: var(--base-clearance-md);
    border-radius: var(--base-radius);
    height: 100%;
}


    /* List-Stylings */

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

        .list-style-1 li {
          padding-left: 40px;
        }

        .list-style-1 li:not(:last-child) {
          padding-bottom: 15px;
          border-bottom: 1px solid var(--body-divider);
          margin-bottom: 15px;
        }

        .list-style-1 li:before {
          content: "\f00c";
          font-family: FontAwesome;
          display: inline-block;
          margin-left: -30px;
          width: 30px;
        }


        .list-style-2 ul {
          list-style: none;
          padding: 0;
        }
        .list-style-2 li {
          padding-left: 40px;
        }
        .list-style-2 li:before {
          content: "\f061";
          font-family: FontAwesome;
          display: inline-block;
          margin-left: -30px;
          width: 30px;
        }

/* Navigation > Groovy Menu */

    @media (min-width: 576px) {
        .gm-container{
            max-width: 540px !important;
        }
    }

    @media (min-width: 768px) {
        .gm-container{
            max-width: 720px !important;
        }
    }

    @media (min-width: 992px) {
        .gm-container{
            max-width: 960px !important;
        }
    }

    @media (min-width: 1200px) {
        .gm-container{
            max-width: 1280px !important;
        }
    }

    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-item > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-ancestor > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-page-ancestor > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-parent > .gm-anchor,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item > .gm-anchor:hover,
    header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item.gm-open > .gm-anchor {
        color: var(--color-primary) !important;
        text-decoration: underline;
    }

    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-menu-parent > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-menu-item > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-menu-ancestor.gm-open > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-menu-ancestor > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-page-ancestor.gm-open > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li.current-page-ancestor > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > .menu-item.gm-open > .gm-anchor,
    header .gm-navbar-sticky-toggle .gm-navbar-nav > li > .gm-anchor:hover{
        color: var(--color-primary) !important;
        text-decoration: underline;
    }

    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu li.current-menu-ancestor > .gm-menu-item__link,
    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu li.current-page-ancestor > .gm-menu-item__link,
    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu li.current-menu-item > .gm-menu-item__link{
        color: var(--color-primary) !important;
    }

    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu .gm-menu-item__link:hover{
        color: var(--color-primary) !important;
    }

    /* Subnavi */

    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu li.current-menu-item > .gm-menu-item__link,
    header .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu .gm-menu-item__link:hover{
        color: var(--color-black) !important;
        font-family: var(--base_font_family_2);
        font-weight: var(--base_font_weight_2);
        font-style: var(--base_font_style_2);
        text-decoration: underline;
    }



    /* Zusätzliches Menü (Topbar) */

    #gm-main-menu{
        display: flex;
        flex-direction: column;
    }

    #gm-main-menu .gm-toolbar-nav-container{
        justify-content: flex-end;
    }

    #gm-main-menu ul.gm-navbar-nav{
        height: 100%;
        justify-content: flex-end;
    }

    /* Navbar Buttons / Social Media Links (Desktop) */

    .nav-button > a,
    .nav-button > a:hover{
        padding: var(--base-clearance-xs) var(--base-clearance-sm) !important;
        line-height: unset !important;
    }

    .nav-button-social-media > a,
    .nav-button-social-media > a:hover{
        padding: var(--base-clearance-xs) !important;
        line-height: unset !important;
        margin-left: 8px !important;
        margin-right: 0 !important;
        width: 40px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .nav-button-social-media-sm > a,
    .nav-button-social-media-sm > a:hover{
        padding: var(--base-clearance-xs) !important;
        line-height: unset !important;
        margin-left: 8px !important;
        margin-right: 0 !important;
        width: 30px !important;
        height: 30px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }


    header .gm-navbar .gm-navbar-nav > li.current-menu-item.nav-button > a.gm-anchor,
    header .gm-navbar .gm-navbar-nav > li.menu-item.nav-button > .gm-anchor:hover,
    header .gm-navbar .gm-navbar-nav > li.current-menu-item.nav-button-social-media > a.gm-anchor,
    header .gm-navbar .gm-navbar-nav > li.menu-item.nav-button-social-media > .gm-anchor:hover,
    header .gm-navbar .gm-navbar-nav > li.current-menu-item.nav-button-social-media-sm > a.gm-anchor,
    header .gm-navbar .gm-navbar-nav > li.menu-item.nav-button-social-media-sm > .gm-anchor:hover{
        color: var(--color-primary-contrast) !important;
        background-color: var(--color-primary-hover) !important;
        border-color: var(--color-primary-hover) !important;
    }


    .nav-button-warenkorb > a,
    .nav-button-warenkorb > a:hover{
        padding: var(--base-clearance-xs) var(--base-clearance-sm) !important;
        line-height: unset !important;
        width: 40px !important;
        height: 40px !important;
        border-radius: var(--border-radius);
        background-color: var(--color-white);
        justify-content: center !important;
    }

    .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav > .nav-button-warenkorb.menu-item > a.gm-anchor{
        color: var(--color-black) !important;
    }
    

    @media (max-width: 1199px) {

        .gm-navigation-drawer .gm-grid-container{
            box-shadow: none;
            transition: 0.3s;
        }

        .gm-navigation-drawer.gm-navigation-drawer--open .gm-grid-container{
            box-shadow: rgba(0, 0, 0, 0.2) 20px 0px 20px;
            transition: 0.3s;
        }

        /* Navbar Buttons / Social Media Links (Mobile) */

        .nav-button-social-media > a,
        .nav-button-social-media > a:hover,
        .nav-button-social-media-sm > a,
        .nav-button-social-media-sm > a:hover{
            margin: 10px 5px 10px 0 !important;
            float: left;
        }

        .nav-button-social-media > a.gm-anchor > span.gm-menu-item__txt-wrapper,
        .nav-button-social-media > a.gm-anchor:hover > span.gm-menu-item__txt-wrapper{
            margin-right: 0 !important;
        }

    }

/* Header & Claim */

    #header{
        background-color: var(--color-surface-1);
        border-radius: var(--base-radius);
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 90px;
    }

    #header h1, #header h2{
        color: var(--color-body);
    }

    #header .text > .vc_column-inner{
        background-color: var(--color-surface-1);
        padding: 30px;
    }

    #header .text > .vc_column-inner .wpb_text_column{
        max-width: 600px;
    }

    @media (min-width: 768px) {
        #header .text > .vc_column-inner{
            padding: 60px;
        }
    }

    #header .img > .vc_column-inner{
        min-height: 350px;
    }

/* Visual Composer */


    /* Full-Width-Bug (vertikale Scrolleiste verbergen) */

    /* body{overflow-x: hidden;} ~ Achtung damit ist 'sticky' nicht mehr möglich! */

    main .vc_separator.vc_sep_color_grey .vc_sep_line {border-color: var(--body-divider) !important;}
    footer .vc_separator.vc_sep_color_grey .vc_sep_line {border-color: var(--footer-divider) !important;}
    

/* Buttons */

    .vc_btn3-container.vc_btn3-inline {
        margin-right: 10px;
        margin-bottom: 10px;
    }

    /* Button-Sizes & Attributes */

    .button-icon > a,
    .button-icon > a:hover{
        border-radius: 3px !important;
        padding: 10px 25px !important;
    }

    .button-icon > a i{
        font-size: 25px !important;
        height: 25px !important;
        line-height: 25px !important;
    }

    /* VC-Button mit Icons */

    .vc-button-icon-left > a, .vc-button-icon-left > a:hover,
    .vc-button-icon-left > button, .vc-button-icon-left > button:hover{
        padding-left: 45px !important;
    }

    .vc-button-icon-right > a, .vc-button-icon-right > a:hover,
    .vc-button-icon-right > button, .vc-button-icon-right > button:hover{
        padding-right: 45px !important;
    }

    .button-lg.vc-button-icon-right > a, .button-lg.vc-button-icon-right > a:hover,
    .button-lg.vc-button-icon-right > button, .button-lg.vc-button-icon-right > button:hover{
        padding-right: calc(45px * var(--base-font-scale-factor)) !important;
    }

    .button-lg.vc-button-icon-right > a i, .button-lg.vc-button-icon-right > a:hover i,
    .button-lg.vc-button-icon-right > button i, .button-lg.vc-button-icon-right > button:hover i{
        right: calc(20px * var(--base-font-scale-factor)) !important;
    }

    /* Button Spinner */

    .button-filled > a span.spinner-border,
    .button-filled > button span.spinner-border,
    .button-outline > a span.spinner-border,
    .button-outline > button span.spinner-border,
    .button-inverse-outline > a span.spinner-border,
    .button-inverse-outline > button span.spinner-border{
        margin-right: 10px;
    }


    .button-filled.button-sm > a{
        text-transform: uppercase;
        font-family: var(--base_font_family_1);
        font-weight: var(--base_font_weight_1);
        padding-top: 10px !important;
    }

    .button-filled.button-black > a{
        background-color: var(--color-black) !important;
        border: 2px solid var(--color-black) !important;
        color: var(--color-white) !important;
    }

    .button-filled.magazin-button-black > a{
        background-color: var(--color-black) !important;
        border: 2px solid var(--color-black) !important;
        color: var(--color-white) !important;
        text-decoration: none;
    }

    .button-filled.magazin-button-black > a:hover{
        background-color: var(--color-white) !important;
        border: 2px solid var(--color-white) !important;
        color: var(--color-black) !important;
        text-decoration: none;
    }


/* CF7 */

    .wpcf7 form.spam .wpcf7-response-output,
    .wpcf7 form.invalid .wpcf7-response-output,
    .wpcf7 form.unaccepted .wpcf7-response-output {
        border-color: #394759;
        background-color: #394759;
        color: #fff;
        padding: 30px;
        text-align: center;
        margin: 30px 0;
    }

    .wpcf7 form.sent .wpcf7-response-output {
        border-color: #43b0ee;
        background-color: #43b0ee;
        padding: 30px;
        color: #fff;
        margin: 30px 0;
    }


/* Impressum + Datenschutz */

    .woocommerce h3,
    #impressum h2, #impressum .h2,
    #datenschutz h2, #datenschutz .h2{
        font-family: var(--base_font_family_2);
        font-weight: var(--base_font_weight_2);
        font-style: normal;
        font-size: var(--base-heading-h3) !important;
        margin-bottom: 20px;
        margin-top: 30px;
        display: inline-block;
    }

    #impressum h3, #impressum .h3,
    #datenschutz h3, #datenschutz .h3{
        font-family: var(--base_font_family_2);
        font-weight: var(--base_font_weight_2);
        font-style: normal;
        font-size: var(--base-heading-h4) !important;
    }

    #impressum h4,
    #datenschutz h4{
        font-size: var(--base-heading-h5) !important;
    }

    #impressum h3 + h4,
    #datenschutz h3 + h4{
        margin-top: 15px;
    }
    

/* Shotcodes */


    /* Carousel */

        #p3_posts .owl-stage-outer{
            padding: 30px 0;
        }

        #p3_posts .owl-stage{
            display: flex;
        }
        
        #p3_posts .item{
            background-color: #fff;
            border: 0;
            border-radius: 0;
            margin: 0;
            height: 100%;
            -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.15);
            transition: 0.3s;
        }

        #p3_posts .item:hover{
            -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
            transition: 0.3s;
        }
        
        #p3_posts .item .card-image{
            height: 280px;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center center;
            display: inline-table;
        }

/* accordion-spezifikationen */

    .accordion-spezifikationen > .card{
        background-color: transparent;
        color: var(--body-color);
        border: 0;
    }

    .accordion-spezifikationen > .card .table,
    .accordion-spezifikationen > .card .btn-link {
        color: var(--body-color);
    }

    .accordion-spezifikationen > .card .table td,
    .accordion-spezifikationen > .card .table th {
        padding: .75rem;
        vertical-align: top;
        border-top: 1px solid var(--body-divider);
    }

    .accordion-spezifikationen > .card > .card-header{padding-left: 0;}

    .accordion-spezifikationen > .card > .card-header button{
        padding-left: 0;
        width: auto;
        padding-right: 10px;
        text-decoration: underline;
    }

    .accordion-spezifikationen > .card > .card-header button::before {
        content: "❯";
        transition: transform .5s;
        transform: rotate(-90deg);
        float: right;
        margin-left: 10px;
    }

    .accordion-spezifikationen > .card > .card-header button.collapsed::before {
        transform: rotate(90deg);
    }

/* Borlabs Cookie */
.embed-responsive-16by9 > ._brlbs-cb-youtube {
    margin-top: -56.25%;
}

/* Maps */

.maps iframe{
    width: 100%;
    height: 350px;
}

/* Kategorien (Posts) */

.post-categories-nav{
    background-color: var(--color-surface-1);
    padding: var(--base-clearance-md);
    border-radius: var(--base-radius);
    display: flex;
    justify-content: center;
}

.post-categories-nav .post-categories-title{
    color: var(--body-muted);
}

.post-categories-nav ul{
    list-style: none;
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
}

.post-categories-nav ul li {
    display: inline-block;
    margin-right: 10px;
}

.post-categories-nav ul li.aktiv a {
    font-weight: bold;
}

/* Single-Magazin */

    .single-erechtshare-header .shariff li{
        margin: 3px !important;
    }

    .single-magazin-image{
        height: 600px;
        background-color: var(--color-light-2);
    }

    .single-magazin-image img{
        height: 100%;
        object-fit: cover;
        object-position: center;
        width: 100%;
    }

    .single-magazin-content{
        border-radius: var(--base-radius);
        background-color: var(--color-light-2);
        padding: var(--base-clearance-sm);
        margin-top: calc(var(--base-clearance-xl)* -1);
    }

    @media (min-width: 768px) {
        .single-magazin-content{
            padding: var(--base-clearance-lg);
        }
    }

    .single-magazin-content .single-magazin-content-section strong{
        font-family: var(--base_font_family_5);
        font-weight: var(--base_font_weight_5);
        font-weight: var(--base_font_weight_5);
    }

    .single-magazin-content a{
        color: var(--color-black);
        text-decoration: underline;
    }

    .single-magazin-content a:hover{
        color: var(--color-white);
        text-decoration: none;
    }

    .single-magazin-content h1, .single-magazin-content .h1{
        font-size: clamp(36px, 0.5rem + 7vw, 50px) !important;
        line-height: clamp(1, 0.5rem + 7vw, 1.1) !important;
    }

    .single-magazin-content h2, .single-magazin-content .h2{
        font-size: 20px !important;
        margin-bottom: var(--base-clearance-sm);
    }

    .single-magazin-content h3, .single-magazin-content .h3{
        font-size: 18px !important;
        margin-bottom: var(--base-clearance-sm);
    }



    .single-content-downloads{
        list-style: none;
        padding-left: 30px;
    }

    .single-content-downloads li:before {
        content: "\f063";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: inline-block;
        font-style: normal;
        font-variant: normal;
        text-rendering: auto;
        line-height: 1;
        transform: rotate(-90deg);
        transition: all .6s ease;
        color: var(--color-primary);
        margin-left: -30px;
        margin-right: 10px;
    }

    .single-content-downloads li:hover:before {
        transform: rotate(0deg);
        transition: all .3s ease;
    }

    
    .single-magazin-content .single-share-buttons ul.shariff-buttons {justify-content: center !important;}

    @media (min-width: 768px) {
        .single-magazin-content .single-share-buttons ul.shariff-buttons{justify-content: flex-end !important;}
    }

    .single-share-buttons ul.shariff-buttons.theme-round li{
        width: 25px !important;
        transition: all .6s ease;
    }

    .single-share-buttons ul.shariff-buttons li,
    .single-share-buttons ul.shariff-buttons li a{
        background-color: transparent !important;
    }

    .single-share-buttons ul.shariff-buttons li:hover{
        transform: translateY(-2.5px);
        transition: all .3s ease;
    }

    .single-share-buttons ul.shariff-buttons li a svg,
    .single-share-buttons ul.shariff-buttons li a svg path{fill: var(--color-black) !important}


/* FAQ */

#faq{
    padding-bottom: 0;
    margin-bottom: var(--base-clearance-lg);
}

@media (min-width: 1024px) {
    #faq{
        padding: var(--base-clearance-lg);
        margin-bottom: var(--base-clearance-xl);
    }
}

#faq .description{
    width: 100%;
    max-width: 800px;
    margin: 0 auto var(--base-clearance-md) auto;
}

#faq .faq-accordion .card{
    background-color: var(--color-surface-1);
    padding: var(--base-clearance-sm);
    border-radius: var(--base-radius);
    margin-bottom: var(--base-clearance-xs);
    border: 0;
}

#faq .faq-accordion .card .card-header{
    padding: 0;
    border: 0;
    background-color: transparent;
}

#faq .faq-accordion .card .card-header h3{font-size: unset !important;}

#faq .faq-accordion .card .card-header h3 button{
    color: var(--body-color);
    font-family: var(--base_font_family_2);
    font-weight: var(--base_font_weight_2);
    font-weight: var(--base_font_weight_2);
    font-size: var(--base-font-md);
}

#faq .faq-accordion .card > .card-header button {
    position: relative;
    margin-left: 1.125rem;
    padding: 0 1.5rem 0 .75rem;
    font-size: inherit;
    text-align: left;
}

#faq .faq-accordion .card > .card-header button::before,
#faq .faq-accordion .card > .card-header button::after {
    content: "";
    position: absolute;
    top: calc(50% - .25rem + .2em);
    left: -1.125rem;
    width: 1rem;
    height: .125rem;
    background-color: #212529;
    transition: transform .5s;
    top: 12px;
}

#faq .faq-accordion .card > .card-header button.collapsed::before {
    transform: rotate(180deg);
}

#faq .faq-accordion .card > .card-header button.collapsed::after {
    transform: rotateZ(90deg);
}

#faq .faq-accordion .card .card-body .wpb_text_column{
    margin-bottom: 0;
}


/* Light-Design */


    /* section-light */

    .section-light{
        background-color: var(--color-light-1);
        color: var(--color-black);
        padding: var(--base-clearance-xl) 0;
    }

    .section-light.section-kacheln{
        padding: 0;
    }

    /* body#design_light */

    body#design_light.single-magazin,
    body#design_light .section-header{
        background-color: var(--color-light-1);
        color: var(--color-black);
    }

    body#design_light{
        background-color: var(--color-bg-1);
        color: var(--body-color);
    }



    body#design_light .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-inner-bg,
    body#design_light .gm-navbar-sticky-toggle .gm-inner-bg{
        background-color: var(--color-light-1);
    }

    body#design_light .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav > .menu-item > .gm-anchor,
    body#design_light .gm-navbar-sticky-toggle .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav > li > .gm-anchor,
    body#design_light .gm-navbar-sticky-toggle .gm-main-menu-wrapper .gm-search > i,
    body#design_light .gm-navbar-sticky-toggle .gm-main-menu-wrapper .gm-minicart-icon-wrapper > i,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-item > .gm-anchor,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-ancestor > .gm-anchor,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-page-ancestor > .gm-anchor,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > li.current-menu-parent > .gm-anchor,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item > .gm-anchor:hover,
    body#design_light header .gm-navbar:not(.gm-navbar-sticky-toggle) .gm-navbar-nav > .menu-item.gm-open > .gm-anchor {
        color: var(--color-black) !important;
    }

    body#design_light .nav-button-warenkorb > a,
    body#design_light .nav-button-warenkorb > a:hover {
        background-color: var(--color-black);
    }

    body#design_light .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav > .nav-button-warenkorb.menu-item > a.gm-anchor{
        color: var(--color-white) !important;
    }


/* Amelia */

#amelia-v2-booking-1000 .am-fs__congrats-main > img{display: none;}
.amelia-v2-booking #amelia-container .am-fs__congrats-info-customer div span {
    color: rgb(0 0 0);
}

/* WooCommerce */

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt{
    background-color: var(--color-primary) !important;
    border: 2px solid var(--color-primary) !important;
    color: var(--color-primary-contrast) !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:hover{
    background-color: var(--color-primary-hover) !important;
    border: 2px solid var(--color-primary-hover) !important;
    color: var(--color-primary-contrast) !important;
}