/*
 Theme Name:   Twenty Twenty-Four
 Description:  Twenty Twenty-Four Child Theme
 Author:       Sven Baier
 Author URI:   https://svenbaier.de
 Description: Twenty Twenty-Four is designed to be flexible,
 versatile and applicable to any website. Its collection of templates and patterns tailor to different needs,
 such as presenting a business,
 blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process,
 is fully compatible with the site editor,
 and takes advantage of new design tools introduced in WordPress 6.4.
 Template:     twentytwentyfour
Requires at least: 6.4
Tested up to: 6.4
Requires PHP: 7.0
Version: 1.0 License: GNU General Public License v2 or later
License URI: http: //www.gnu.org/licenses/gpl-2.0.html
Tags:         Tags: one-column,
custom-colors,
custom-menu,
custom-logo,
editor-style,
featured-images,
full-site-editing,
block-patterns,
rtl-language-support,
sticky-post,
threaded-comments,
translation-ready,
wide-blocks,
block-styles,
style-variations,
accessibility-ready,
blog,
portfolio,
news
 Text Domain:  frankleske
*/

/* WEBFONTS */

@font-face {
    font-family: 'Dax';
    src: url('fonts/Dax-Bold.woff2') format('woff2'),
        url('fonts/Dax-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax';
    src: url('fonts/DaxBlack.woff2') format('woff2'),
        url('fonts/DaxBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax';
    src: url('fonts/DaxMedium.woff2') format('woff2'),
        url('fonts/DaxMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax';
    src: url('fonts/Dax.woff2') format('woff2'),
        url('fonts/Dax.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax';
    src: url('fonts/DaxLight.woff2') format('woff2'),
        url('fonts/DaxLight.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}



/* ---------------------------------------------------------------- 

* {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}*/

html, body {
    height: 100%;
    margin: 0;
}

.wp-site-blocks {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1;
}

:where(.wp-site-blocks) > * {
    margin-block-start: 0;
    margin-block-end: 0;
}

.is-layout-constrained > * {
    margin-block-start: 0;
    margin-block-end: 0;
}

.is-layout-flow > * {
    margin-block-start: 6px;
    margin-block-end: 0;
}

html.has-modal-open {
    overflow: visible !important;
}

:root {
    --wp--style--block-gap: 0 !important;
}

body {
    font-family:"Dax", 'Arial Narrow', Arial, sans-serif !important; 
    font-size: 25px !important;
    line-height: 40px !important;
    font-weight: 400 !important;
    background: #fffcfc;
    color: #707070;
    --wp--style--global--content-size: 1280px !important;
    --wp--style--global--wide-size: 1920px !important;
}


header a {
    font-size: 28px;
    line-height: 35px;
    color:#707070 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    padding: 0 10px;
}

header a:hover {
    color:#707070 !important;
    text-decoration: underline;
}

*:focus {
  outline: 0 !important; 
}

*:focus-visible {
    outline:#E71F2D solid 2px !important;
    outline-offset:2px !important;
}

/*
main.wp-block-group {
margin-top: 89px !important;
}
*/
h1, h2, h3, h4, h5, h6 {
    font-family:"Dax", 'Arial Narrow', Arial, sans-serif !important;     
    font-weight: 400 !important;
    padding: 5px 10px;
}

h1 { font-size: 70px !important; line-height: 85px !important; margin: 6px 0 6px 0 !important;}
h2 { font-size: 50px !important; line-height: 60px !important; margin: 6px 0 6px 0 !important;}
h2.intro { font-size: 32px !important; line-height: 40px !important;}
h3 { font-size: 40px !important; line-height: 50px !important; margin: 6px 0 20px 0 !important; font-weight: 400 !important;}

.arbeitsfelder-column h3 { font-size: 30px !important; line-height: 38px !important; margin: 6px 0 20px 0 !important;}
.arbeitsfelder-column p { hyphens: auto; }

h4 { font-size: 24px !important; line-height: 30px !important; margin: 6px 0 27px 0 !important;}



/*
p,
.wp-block-image figcaption {    
    font-family:"Dax", 'Arial Narrow', Arial, sans-serif !important;    
    font-weight: normal !important;
    font-size: 30px !important;
    line-height: 42px !important;
    font-weight: 400 !important;
}
*/
p, .entry-content li {
    font-family:"Dax", 'Arial Narrow', Arial, sans-serif !important;    
    font-weight: 400 !important;
    font-size: 25px !important;
    line-height: 40px !important;
    margin: 0 0 25px 0 !important;
    padding: 5px 10px;
    hyphens: auto;
    box-sizing: border-box;
}
/*
a, a:hover {
    color:#707070 !important;
    font-weight: 400 !important;
    text-decoration: none;
    border-bottom: 0 !important;
    padding: 5px 10px;
    border-radius: 8px;
    box-sizing: border-box;
}

a:hover {
    background: #EFDEFF;
}
*/
.entry-content li {
    margin: 0 0 0 0 !important;
}

:root :where(.wp-block-list) {
    padding-left: 100px !important;
}

:root :where(.wp-block-quote) {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

:root :where(.wp-block-quote) p {
    font-size: 40px !important;
    line-height: 50px !important;
    font-style: normal !important;
}

.wp-block-image img {    
    margin-bottom:7px;
}

/* image captions */
.wp-block-image figcaption {
    margin-bottom: 17px;
    margin-top: 10px !important;
}

/* Video */
.wp-block-video video {
    margin-bottom: 7px;
}

.wp-block-post-excerpt__excerpt {
    font-family:"Dax", 'Arial Narrow', Arial, sans-serif !important; 
    margin-bottom: 0;
    margin-top: 0;
    font-size: 30px !important;
    line-height: 42px !important;
    font-weight: 200 !important;
}

/* Hoverbox 2024 - shortcode */

.box-row {margin-top: -13px;}

/* Wrapper für die Hoverbox */
.hoverbox-wrapper {
    display: inline-block;
    width: 100%;
    /* max-width: 800px; */
}

/* Grundstruktur der Hoverbox */

.box-row .kt-inside-inner-col {
    display:flex;
}

.hoverbox {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 42.86%; /* 21:9 Seitenverhältnis */
    text-decoration: none;
    color: #000;
    overflow: hidden;
    min-height: 200px;
    border-radius: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
}

/* Gemeinsame Stile für Front- und Rückseite */
.hoverbox > div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
        flex-direction: column;
    /* align-items: center; */
    justify-content: center;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
    transition: opacity 0.5s ease;
    border-radius: 0;
}

/* Vorderseite der Box */
.hoverbox-front {
    background-color: var(--hoverbox-bg, #bf0000);
    color: #707070;
    opacity: 1;
    z-index: 2;
}

/* SVG-Pfeil inline */
.hoverbox-front svg {
    width: 1em; 
    height: 1em; 
    margin-left: 0.2em; 
    vertical-align: middle; 
    display: inline; 
}

/* Rückseite der Box */
.hoverbox-back {
    background-color: #ffffff;
    color: #707070;
    opacity: 0;
    z-index: 1;
    border: 10px solid var(--hoverbox-bghover, #83d0f5);
    text-align: left !important;    
    justify-content: flex-start !important;
    font-size: 22px;
    line-height: 26px;
}

.hoverbox-back p {
    display: none;
}

.hoverbox-back h4 {
    font-weight: 500 !important;
    padding: 0;
}

.hoverbox-back ul {
    list-style: none;
    padding-left: 27px;
    margin: -10px 0 0 0;
}
.hoverbox-back ul li {
    font-size: 22px !important;
    line-height: 26px !important;
}

.hoverbox-back ul li::before {
    content: "\2015"; 
    color: #707070;
    display: inline-block; 
    width: 1.2em;
    margin-left: -1.2em;
}

/* Hover-Effekt */
.hoverbox:hover .hoverbox-front {
    opacity: 0;
}

.hoverbox:hover .hoverbox-back {
    opacity: 1;
}

.hoverbox-wrapper.hover-active .hoverbox-front {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.hoverbox-wrapper.hover-active .hoverbox-back {
    opacity: 1;
    transition: opacity 0.5s ease;
}

@media (max-width: 960px) {

    .hoverbox > div {
    font-size: 13px;
        line-height: 1.6;
  }

    #hoverboxes .kt-row-column-wrap {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    
}
/*
@media (max-width: 780px) {

    .hoverbox > div {
    font-size: 18px;
        line-height: 1.6;
  }
    
}

@media (max-width: 480px) {

    .hoverbox > div {
    font-size: 16px;
    line-height: 1.6;
  }
    
}
*/

/* Tabellen */
.wp-block-table {
    margin: 0 !important;
}
.wp-block-table td, .wp-block-table th {
    border: 0 !important;
    padding: 0 0 0 10px !important;
    vertical-align: top;
}
.wp-block-table td:first-child {width:25%;}



.wp-block-site-title {

}
.wp-block-site-title::after {
    content: " ";
    display: block;
    clear: both; /* if you need to break floating elements */
}

header {z-index: 999999 !important;}

header .header-col-left, 
header .header-col-right { height: 100vh; }

@media (min-width: 1280px) {
header .header-col-left .kt-inside-inner-col {
    justify-content: start !important;
}
}

@media (max-width: 1280px) {
header .header-col-left .kt-inside-inner-col {
    justify-content: center !important;
}
}

@media (max-width: 960px) {
header .header-col-left .kt-inside-inner-col {
    justify-content: end !important;
}
}


/* rechter Abstand Navigation entfernt
header .has-global-padding {
    padding-right: 0;
    padding-left: var(--wp--style--root--padding-left);
} */

/* sticky Header */
header {
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    /* z-index: 999 !important;*/
    padding: 0 !important;
    background: transparent;
}
.header-scroll {
    background: #FFFCFC !important;
}


body.page-impressum header,
body.page-datenschutz header {
    background: #FFFCFC;
}
.header-scroll {
    background: #FFFCFC !important;
}


/* Navigation */
.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    display: flex;
    flex-grow: 1;
    justify-content: flex-end !important;
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
    border: 0 !important;
    padding: 10px 0 20px 0 !important;
}
/*
.wp-block-navigation__submenu-container li {
    padding-right: 20px !important;
}
*/
.wp-block-navigation__submenu-container li a {
    font-size: 18px !important;
}




/* LogoPatch on Top ---------------------------------------------------------------*/

#logoPatch {

    display: none;

    position: fixed;
    top:0;
    left:0;
    background-color: transparent;
    background-image: url(https://kyas.cremeseiten.de/wp-content/uploads/2025/05/logoPatch.svg);
    background-size: contain;
    background-position: left top;
    background-repeat: no-repeat;
    height: 210px;
    z-index: 999999;
    transition: transform 0.5s ease, opacity 0.5s ease;
}

#logoPatch.hidden {
  transform: translateY(-300px); /* oder -100%, je nach Höhe */
  opacity: 1;
}



/* Custom Navigation ---------------------------------------------------------------*/

/* Grundstruktur */
.nav-wrapper {
    display: none;
    align-items: center;
    justify-content: space-between;
    background: transparent;
    padding: 0;
    position: relative;
    z-index: 1000;
}

/* Navicon Styling */
.nav-toggle {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    width: 30px;
    height: 30px;
    position: relative;
    z-index: 1100;
}

.hamburger {
    display: block;
    width: 30px;
    height: 4px;
    background: #707070;
    position: absolute;
    top: 54%;
    left: 0;
    transform: translate(0%, 0%);
    transition: background 0.3s ease-in-out;
}

.hamburger::before,
.hamburger::after {
    content: '';
    width: 30px;
    height: 4px;
    background: #707070;
    position: absolute;
    left: 0;
    transition: all 0.3s ease-in-out;
}

.hamburger::before {
    top: -12px;
}

.hamburger::after {
    bottom: -12px;
}

/* Animiertes X */
.nav-toggle.open .hamburger {
    background: transparent;
}

.nav-toggle.open .hamburger::before {
    top: 0;
    transform: rotate(45deg);
    background: #707070;
}

.nav-toggle.open .hamburger::after {
    bottom: 0;
    transform: rotate(-45deg);
    background: #707070;
}

/* Desktop Navigation */
@media (min-width: 1380px) {
    .custom-nav {
        display: flex;
        margin: 0;
    }

    .custom-menu {
        display: flex;
        align-items: center;
        gap: 20px;
        list-style: none !important;
        margin: 0;
        padding: 0 0 0 0;
    }

    .custom-menu li {
        position: relative;
        padding-bottom: 0;
        height: 100%;
        /* Füge will-change hinzu, um die Animation zu optimieren */
        will-change: transform;
        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    }

    .custom-menu li ul li {
        padding-bottom: 0px;
    }

    .custom-menu li a {
        display: flex;
        height: 100%;
        align-items: center;
        white-space: nowrap;
        padding: 2px 10px;
    }
    .custom-menu li a.mPS2id-highlight {
        background: #FABD86;
        border-radius: 8px;
    }
    
    .custom-menu li.current-menu-parent a,
    .custom-menu li.current_page_item a {
        color: #c1832d;
    }

    /* Ersetze translateY durch translate3d */
    .custom-menu li.current-menu-parent,
    .custom-menu li.current_page_item,
    .custom-menu li:hover {
        transform: translate3d(0,0,0);
    }

    .custom-menu li .sub-menu li {
        transform: translate3d(0,0,0);
    } 

    .custom-menu li.current-menu-parent .sub-menu,
    .custom-menu li.current_page_item .sub-menu {
        transform: translate3d(0,-14px,0);
    } 

    .custom-menu li .sub-menu li a {
        text-transform: none;
        font-size: 20px;
        color: #FFF !important;
        white-space: nowrap;
    } 
     .custom-menu li .sub-menu li a:hover {
        color: #E9D4B6 !important;
        white-space: nowrap;
    } 
    .custom-menu li.current-menu-parent .sub-menu li.menu-item a {
        
    } 

    .custom-menu li.current-menu-parent .sub-menu li.menu-item a {
        
    }

    .custom-menu li.current-menu-parent .sub-menu li.current-menu-item a {
        color: #E9D4B6 !important;
    } 

    .custom-menu li ul {
        position: absolute;
        top: 100%;
        left: 0;
        background: #006B8E;
        list-style: none !important;
        /* box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); */
        padding: 10px 10px 18px 10px;
        min-width: 320px;
        opacity: 0;
        visibility: hidden;
        transform: translate3d(0,60px,0);
        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
        border-radius: 0;
        will-change: transform, opacity, visibility;
    }
    
    /* Dropdown nur bei Hover */
    .custom-menu li:hover > ul {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0,-14px,0);
    }

    /* Erweiterte Hover-Fläche oberhalb, um Ruckeln zu vermeiden
    .custom-menu li::before {
        content: "";
        position: absolute;
        left: 0;
        top: -40px; 
        width: 100%;
        height: 40px; 
        background: transparent;
    } */

    /* Keine extra Hover-Zone im Submenu
    .custom-menu li ul li::before {
        top: 0; 
        height: 0; 
    } */

    /* Dropdown bleibt stehen
    .custom-menu li.current-menu-parent > ul,
    .custom-menu li:hover > ul {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0,-14px,0);
        pointer-events: auto; 
    }
    */

    .custom-menu li ul li {
        padding: 6px 12px;
    }

    .custom-menu li ul li:hover {
        background: transparent;
    }


}

/*
@media (max-width: 1560px) {

    header .is-layout-flex {
        display: flex;
        justify-content: center;
    }
    
}
*/

/* Mobile Navigation */
@media (max-width: 1380px) {

    .nav-wrapper {
        display: flex;
    }

    .nav-toggle {
        display: block;
    }

    .custom-nav {
        position: absolute;
        top: 0;            /* CHECK THIS */
        left: 0;
        width: 100%;
        background: #fffcfc;
        /* box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1); */
        display: none;
        flex-direction: column;
        z-index: 999;
    }

    .custom-nav.open {
        display: flex;
    }

    .custom-menu {
        width: 100%;
        padding: 10px;
        list-style: none;
        margin-top: 147px;
    }

    .custom-menu li {
        padding: 10px 20px 5px 20px;
        display: flex;
        justify-content: flex-end;
        width: 94%;
        cursor: pointer;
        box-sizing: border-box;
    }
    .custom-menu li.current-menu-parent a,
    .custom-menu li ul li.current_page_item a {
        color: #c1832d !important;
    }
    .custom-menu li.current-menu-parent a,
    .custom-menu li ul li a {
        color: #c1832d !important;
    }

    .custom-menu li .sub-menu li a {
        text-transform: none;
        font-size: 20px;
        color: #FFF !important;
        white-space: nowrap;
    } 
     .custom-menu li .sub-menu li a:hover {
        color: #E9D4B6 !important;
        white-space: nowrap;
    } 
    .custom-menu li.current-menu-parent .sub-menu li.menu-item a {
        
    } 

    .custom-menu li.current-menu-parent .sub-menu li.menu-item a {
        
    }

    .custom-menu li.current-menu-parent .sub-menu li.current-menu-item a {
        color: #E9D4B6 !important;
    } 


    .custom-menu li:last-child {
        border-bottom: none;
    }

    /* Dropdowns */
    .custom-menu li ul {
        display: none;
        padding: 10px 0px;
        background: #006B8E;
        width: 100%;
        transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        text-transform: none;
    }
    .custom-menu li ul li a {  
        text-transform: none;
    }
    .custom-menu li ul li {
        border-bottom: 0;
        padding-left: 30px;
    }

    .custom-menu li ul.open {
        display: block;
        margin: 15px 0 0 0;
        max-height: 500px; /* Genug Platz für mehrere Einträge */
        opacity: 1;
        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    }

    /* Dropdown-Pfeil nur in mobiler Ansicht anzeigen */
    .custom-menu li.menu-item-has-children {
        position: relative;
        display: block;
        justify-content: space-between;
        align-items: center;
    }

    /* Pfeil ganz rechts außen platzieren */
    .custom-menu li .submenu-toggle {
        position: absolute;
        right: 30px;
        top: 16px;
        /*transform: translateY(-50%);*/
        cursor: pointer;
        font-size: 40px;
        transition: transform 0.3s ease;
    }

    /* Wenn das Untermenü offen ist, das Icon drehen */
    .custom-menu li .submenu-toggle.open {
        transform: rotate(90deg);
        color: #c1832e;
    }
}


/* -------------------------------------------------------------------------------------------------------------- */



.wp-block-site-logo img {
    position: absolute;
    z-index: 9999;
    height: auto;
    max-width: 100%;
    width: 24% !important;
    margin: -30px 0 0 -60px;
    background: #fffcfc;
    padding: 0 40px 20px 40px;
    border-radius: 30px;
}

.header-scroll .wp-block-site-logo img {
    width: 24% !important;
    margin: -30px 0 0 -60px;
    background: #fffcfc;
    padding: 0 40px 20px 40px;
    border-radius: 30px;
}

body.home .wp-block-site-logo img {
    position: absolute;
    z-index: 9999;
    height: auto;
    max-width: 100%;
    width: 42% !important;
    margin: 120px 0 0 -60px;
    background: transparent;
}

body.home .header-scroll .wp-block-site-logo img {
    width: 24% !important;
    margin: -30px 0 0 -60px;
    background: #fffcfc;
    padding: 0 40px 20px 40px;
    border-radius: 30px;
}


.header-full {
    /* background:#fff !important; */
}
.header-scroll { 
    background: #fffcfc !important;
}


.header-scroll, .header-full, .wp-block-site-logo img, .wp-block-navigation__responsive-container-open:after, a {
  -webkit-transition: 0.6s; 
  -moz-transition: 0.6s; 
  -ms-transition: 0.6s; 
  -o-transition: 0.6s; 
  transition: 0.6s;  
}

.wp-container-core-navigation-layout-1.wp-container-core-navigation-layout-1 {
    margin-right: -10px;
}


.wp-block-query-no-results {
    padding-top: 0 !important;
}


.wp-block-post-featured-image {
    position: relative;
}

:where(figure) {
    position: relative;
}



/* ----------------------------------------------------------------------------------------- default column gap/margins */

/*
.has-global-padding {
    padding-right: 45px !important;
    padding-left: 45px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


body .wp-block-columns.is-layout-flex {
 column-gap: 45px !important;
}
*/
body .wp-block-columns.is-layout-flex:last-child {
 margin-bottom: 0 !important;
}


/* Footer */

footer {background: #FFFCFC;}

footer .wp-block-navigation ul {
    margin-bottom: 25px !important;
}

/*
footer p {
    font-family: "Dax", 'Arial Narrow', Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 22px !important;
    line-height: 32px !important;
    margin: 0 0 15px 0 !important;
    hyphens: auto;
    letter-spacing: 0.05em;
}

footer a,
footer a:hover {
    font-size: 22px;
    line-height: 32px;
    color:#707070 !important;
    font-weight: 400 !important;
    text-decoration: none;
    border-bottom: 0 !important;
    padding: 5px 10px;
    border-radius: 8px;
}

footer a:hover {
    background: #EFDEFF;
}
*/
/*
footer .foolter-col-1 { order: 1; }
footer .foolter-col-2 { order: 2; }
footer .foolter-col-3 { order: 3; }
*/
/* footer .wp-block-group { padding-top: 0 !important; } 
footer p {    
    font-size: 14.4px !important;
    line-height: 21px !important;
    text-align: left !important;
}*/

footer .wp-container-core-navigation-layout-2.wp-container-core-navigation-layout-2 {
    margin-block-start: 1px !important;
}








@media (max-width: 1800px) {



} 

@media (max-width: 1630px) {

.custom-menu li a {
    display: flex;
    height: 100%;
    margin-top: 0;
    white-space: nowrap;
    font-size: 24px;
}

}

/* -------------------------------------------------------------------------------------ADJUST THIS MORE */
@media (max-width: 1407px) {

    /* Navigation springt mittig aufgrund der Breite */

    header .is-layout-flex {
        /*justify-content: center !important;
        padding: 0 !important;*/
    }

    
}


@media (max-width: 1303px) {

    /* #logoPatch { display: none; } */

    .has-global-padding {
       padding-right: var(--wp--style--root--padding-right) !important;
       padding-left: var(--wp--style--root--padding-left) !important;
    }

}

@media (max-width: 1280px) {

h2.intro {
    font-size: 24px !important;
    line-height: 32px !important;
}

.fullheight {
    height: 60vh;
}

.agreement-box {
    padding: 3rem;
}

}

@media (max-width: 1140px) {

/* Hoverboxen 2-spaltig */
#hoverboxes .kt-row-column-wrap {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
/*
.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid {
    grid-template-columns: 1fr !important;
}
*/

} /* -- end max-width 1140px */


@media (max-width: 997px){

}

@media (max-width: 960px) {

header .is-layout-flex {
    justify-content: space-between !important;
}
/*
.custom-menu li {
    display: block !important;
}
*/

h2.intro {
    font-size: 20px !important;
    line-height: 28px !important;
}

.custom-menu li a {
    padding-top: 0 !important;
    margin-top: 0 !important;
}


body.home .wp-block-site-logo img {
    width: 42% !important;
    margin: 120px 0 0 -60px;
}

body.home .header-scroll .wp-block-site-logo img {
    width: 24% !important;
    margin: -30px 0 0 -60px;
    background: #fffcfc;
    padding: 0 20px 20px 20px;
    border-radius: 20px;
}

p, .entry-content li, table td {
    font-family: "Dax", 'Arial Narrow', Arial, sans-serif !important;
    font-weight: 400 !important;
    font-size: 18px !important;
    line-height: 26px !important;
    margin: 0 0 25px 0 !important;
    padding: 5px 10px;
    hyphens: auto;
    box-sizing: border-box;
}

/* Hoverboxen 1-spaltig */
#hoverboxes .kt-row-column-wrap {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}

.hoverbox-back ul li {
    font-size: 22px !important;
    line-height: 26px !important;
    margin: 0 !important;
}

footer .wp-block-navigation ul {
    font-size: 18px;
}

/* ----------------------------------------------------------------------------------------- tablet column gap/margins */

.is-layout-constrained > * {
    margin-block-start: 0;
    margin-block-end: 0;
}
/*
.has-global-padding {
    padding-right: 30px !important;
    padding-left: 30px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


body .wp-block-columns.is-layout-flex {
 column-gap: 30px !important;
}
*/


}



@media (max-width: 780px) {

footer .wp-block-table table {margin-bottom: 60px !important;}

} /* -- end max-width 780px */



@media (max-width: 767px) {

.hoverbox-back ul {
    list-style: none;
    padding-left: 20px;
    margin: -10px 0 0 0;
}
.hoverbox-back ul li {
    font-size: 16px !important;
    line-height: 20px !important;
}
.hoverbox-back h4 {
    font-size:20px !important;
    line-height: 26px !important;
    font-weight: 500 !important;
    padding: 0;
    hyphens: auto;
}

} /* -- end max-width 767px */


@media (max-width: 640px) {

h1 { font-size: 30px !important; line-height: 40px !important; }
h2 { font-size: 30px !important; line-height: 40px !important; }
h3 { font-size: 25px !important; line-height: 30px !important; }

h2.intro {
    font-size: 18px !important;
    line-height: 26px !important;
}

.fullheight {
    height: 40vh;
}

body.home .wp-block-site-logo img {
    width: 60% !important;
    margin: -30px 0 0 -40px;
    padding: 0 10px 10px 10px;
}

body.home .header-scroll .wp-block-site-logo img {
    width: 60% !important;
    margin: -30px 0 0 -40px;
    background: #fffcfc;
    padding: 0 10px 10px 10px;
    border-radius: 10px;
}

} /* -- end max-width 640px */

@media (max-width: 480px) {

body .is-layout-flex {
    display: flex;
    flex-wrap: nowrap;
}

.wp-block-table td:first-child {width:120px !important;}
/*
.has-global-padding {
    padding-right: 25px !important;
    padding-left: 25px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body .wp-block-columns.is-layout-flex {
 column-gap: 25px !important;
 margin-bottom: 10px !important;
}
*/
} /* -- end max-width 480px */

@media (max-width: 385px) {


} /* -- end max-width 480px */