.elementor-kit-7{--e-global-color-primary:#1A1A1A;--e-global-color-secondary:#4A4A4A;--e-global-color-text:#8A8A8A;--e-global-color-accent:#D2CDC6;--e-global-color-73540cb:#F6F6F6;--e-global-color-270b08e:#FFFFFF;--e-global-color-0634a24:#000000;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slap";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;font-family:"Inter", Sans-serif;font-size:20px;font-weight:400;}.elementor-kit-7 e-page-transition{background-color:var( --e-global-color-accent );}.elementor-kit-7 h1{font-family:"Playfair Display", Sans-serif;font-size:38px;font-weight:600;}.elementor-kit-7 h2{font-family:"Playfair Display", Sans-serif;font-size:34px;font-weight:600;}.elementor-kit-7 h3{font-family:"Playfair Display", Sans-serif;font-size:24px;font-weight:600;}.elementor-kit-7 h4{font-family:"Playfair Display", Sans-serif;font-size:22px;font-weight:600;}.elementor-kit-7 h5{font-family:"Playfair Display", Sans-serif;font-size:20px;font-weight:600;}.elementor-kit-7 h6{font-family:"Playfair Display", Sans-serif;font-size:20px;font-weight:600;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-family:"Inter", Sans-serif;font-size:20px;font-weight:400;border-radius:3px 3px 3px 3px;padding:14px 20px 14px 20px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{border-radius:3px 3px 3px 3px;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{border-radius:3px 3px 3px 3px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-7{font-size:20px;}.elementor-kit-7 h1{font-size:36px;}.elementor-kit-7 h2{font-size:32px;}.elementor-kit-7 h3{font-size:24px;}.elementor-kit-7 h4{font-size:22px;}.elementor-kit-7 h5{font-size:20px;}.elementor-kit-7 h6{font-size:20px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:20px;padding:14px 20px 14px 20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}}@media(max-width:1024px){.elementor-kit-7{font-size:18px;}.elementor-kit-7 h1{font-size:34px;}.elementor-kit-7 h2{font-size:28px;}.elementor-kit-7 h3{font-size:22px;}.elementor-kit-7 h4{font-size:20px;}.elementor-kit-7 h5{font-size:18px;}.elementor-kit-7 h6{font-size:18px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:18px;padding:14px 20px 14px 20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}}@media(max-width:767px){.elementor-kit-7{font-size:16px;}.elementor-kit-7 h1{font-size:28px;}.elementor-kit-7 h2{font-size:24px;}.elementor-kit-7 h3{font-size:20px;}.elementor-kit-7 h4{font-size:18px;}.elementor-kit-7 h5{font-size:16px;}.elementor-kit-7 h6{font-size:16px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:16px;padding:14px 20px 14px 20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}}@media(min-width:2400px){.elementor-kit-7{font-size:20px;}.elementor-kit-7 h1{font-size:38px;}.elementor-kit-7 h2{font-size:34px;}.elementor-kit-7 h3{font-size:24px;}.elementor-kit-7 h4{font-size:22px;}.elementor-kit-7 h5{font-size:20px;}.elementor-kit-7 h6{font-size:20px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:20px;}}/* Start custom CSS *//* =====================================================
   KASA WEBSITE CSS FINAL CLEAN
   Desktop: Glass Header oben
   Mobile: eigene Elementor Glass App Bar
===================================================== */

:root {
    --kasa-header-height: 64px;
}

body {
    padding-top: var(--kasa-header-height);

    background-color: #f8f9f9;
    background-image:
        radial-gradient(circle at 20% 20%, rgba(0,0,0,0.025) 0, transparent 18%),
        radial-gradient(circle at 80% 30%, rgba(0,0,0,0.018) 0, transparent 22%),
        linear-gradient(135deg, rgba(0,0,0,0.018), transparent 35%);
    background-size: 420px 420px, 520px 520px, 100% 100%;
}


/* Desktop Glass Header */

.kasa-top-header,
.kasa-top-header.is-glass {
    position: fixed !important;
    top: 14px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;

    width: calc(100% - 40px) !important;
    max-width: 1200px !important;
    min-height: var(--kasa-header-height) !important;

    z-index: 9999 !important;

    display: flex !important;
    align-items: center !important;

    border-radius: 10px !important;

    background: rgba(255, 255, 255, 0.42) !important;
    backdrop-filter: blur(24px) saturate(120%) !important;
    -webkit-backdrop-filter: blur(24px) saturate(120%) !important;

    box-shadow: 0 8px 26px rgba(0, 0, 0, 0.04) !important;

    transition: none !important;
    animation: none !important;
}

.kasa-top-header > .e-con-inner {
    width: 100% !important;
    min-height: var(--kasa-header-height) !important;

    display: flex !important;
    align-items: center !important;
}


/* Desktop Wordmark */

.kasa-header-wordmark {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;

    transform: translate(-50%, -50%) !important;

    opacity: 0 !important;
    visibility: visible !important;
    pointer-events: none !important;

    transition: opacity 850ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    will-change: opacity;
}

.kasa-header-wordmark img {
    width: 460px !important;
    max-width: 52vw !important;
    height: auto !important;
    display: block !important;
}

.kasa-header-wordmark.is-visible {
    opacity: 1 !important;
}


/* Nur Header-Icons und Mobile-Appbar neutral halten, nicht das Desktop-Menü */
.kasa-top-header .elementor-widget-icon a,
.kasa-top-header .elementor-widget-icon a:hover,
.kasa-top-header .elementor-widget-icon a:focus,
.kasa-top-header .elementor-widget-icon a:active,
.kasa-top-header .elementor-menu-toggle,
.kasa-top-header .elementor-menu-toggle:hover,
.kasa-top-header .elementor-menu-toggle:focus,
.kasa-top-header .elementor-menu-toggle:active,
.kasa-mobile-appbar-cell > a,
.kasa-mobile-appbar-cell > a:hover,
.kasa-mobile-appbar-cell > a:focus,
.kasa-mobile-appbar-cell > a:active,
.kasa-mobile-appbar-cell > button,
.kasa-mobile-appbar-cell > button:hover,
.kasa-mobile-appbar-cell > button:focus,
.kasa-mobile-appbar-cell > button:active {
    color: #1E1E1E !important;
    background: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}


/* Mobile Appbar auf Desktop aus */

.kasa-mobile-appbar {
    display: none !important;
}


/* Lupe auf Unterseiten aus */

body:not(.home) .kasa-search-trigger,
body:not(.home) .kasa-mobile-appbar-cell:nth-child(3) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.home .kasa-search-trigger,
body.home .kasa-mobile-appbar-cell:nth-child(3) {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}


/* Contact Overlay */

.kasa-contact {
    z-index: 2147483647 !important;
}

.kasa-contact > div {
    position: relative;
    z-index: 2147483647 !important;
    background: #fff !important;
    opacity: 1 !important;
    filter: none !important;
}

body.kasa-offcanvas-open .e-off-canvas__overlay,
body.kasa-offcanvas-open .dialog-lightbox-widget-overlay,
body.kasa-offcanvas-open .elementor-popup-modal::before {
    z-index: 99998 !important;
}

.kasa-contact {
    display: grid !important;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition:
        opacity .6s ease,
        transform .6s ease,
        visibility 0s linear .6s;
}

.kasa-contact.open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s;
}


/* Glass Cards */

.kasa-glass-card {
    background: rgba(255, 255, 255, 0.16) !important;

    backdrop-filter: blur(22px) saturate(125%) !important;
    -webkit-backdrop-filter: blur(22px) saturate(125%) !important;

    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    border-radius: 10px !important;

    box-shadow:
        0 10px 28px rgba(0, 0, 0, 0.045),
        inset 0 1px 0 rgba(255, 255, 255, 0.32) !important;

    overflow: hidden;

    transition:
        background-color 220ms ease,
        box-shadow 220ms ease,
        border-color 220ms ease,
        transform 220ms ease;
}

.kasa-glass-card:hover {
    background: rgba(255, 255, 255, 0.16) !important;
    border-color: rgba(255, 255, 255, 0.42) !important;

    box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.42) !important;

    transform: translateY(-1px);
}


/* Admin Bar Desktop */

body.admin-bar {
    padding-top: calc(var(--kasa-header-height) + 32px);
}

body.admin-bar .kasa-top-header,
body.admin-bar .kasa-top-header.is-glass {
    top: 46px !important;
}


/* Elementor Editor */

body.elementor-editor-active,
html.elementor-html body {
    padding-top: 0 !important;
}

body.elementor-editor-active .kasa-top-header,
body.elementor-editor-preview .kasa-top-header,
html.elementor-html .kasa-top-header {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;

    width: 100% !important;
    max-width: none !important;

    border-radius: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
}

body.elementor-editor-active .kasa-header-wordmark,
body.elementor-editor-preview .kasa-header-wordmark,
html.elementor-html .kasa-header-wordmark {
    opacity: 1 !important;
    visibility: visible !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    pointer-events: auto !important;
}


/* Mobile Appbar */

@media (max-width: 767px) {
    body {
        padding-top: 0 !important;
        padding-bottom: 78px !important;
    }

    .kasa-top-header,
    .kasa-top-header.is-glass {
        display: none !important;
    }

    .kasa-mobile-appbar {
        position: fixed !important;
        left: 50% !important;
        bottom: 14px !important;
        transform: translateX(-50%) !important;

        width: min(90vw, 370px) !important;
        max-width: none !important;

        height: 58px !important;
        min-height: 58px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 14px !important;
        box-sizing: border-box !important;

        z-index: 9999 !important;

        border-radius: 999px !important;

        background: rgba(255, 255, 255, 0.42) !important;
        backdrop-filter: blur(26px) saturate(130%) !important;
        -webkit-backdrop-filter: blur(26px) saturate(130%) !important;

        box-shadow:
            0 12px 34px rgba(0, 0, 0, 0.11),
            inset 0 0 0 1px rgba(255, 255, 255, 0.34) !important;

        overflow: hidden !important;

        transition:
            width 260ms ease,
            height 260ms ease,
            min-height 260ms ease,
            bottom 260ms ease,
            padding 260ms ease,
            background-color 260ms ease,
            box-shadow 260ms ease !important;
    }

    .kasa-mobile-appbar > .e-con-inner {
        width: 100% !important;
        height: 100% !important;

        display: grid !important;
        grid-template-columns: repeat(6, 1fr) !important;
        align-items: center !important;
        justify-items: center !important;

        padding: 0 !important;
        margin: 0 !important;
        gap: 0 !important;
    }

    .kasa-mobile-appbar-cell {
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .kasa-mobile-appbar-cell > .e-con-inner {
        width: 100% !important;
        height: 100% !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 !important;
        margin: 0 !important;
    }

    .kasa-mobile-appbar-cell .elementor-widget,
    .kasa-mobile-appbar-cell .elementor-widget-container {
        width: 28px !important;
        height: 28px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 !important;
        margin: 0 !important;
    }

    .kasa-mobile-appbar-cell .elementor-icon,
    .kasa-mobile-appbar-cell .elementor-menu-toggle {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        min-height: 28px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 0 !important;
        margin: 0 !important;

        color: #1E1E1E !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .kasa-mobile-appbar-cell svg,
    .kasa-mobile-appbar-cell i {
        width: 22px !important;
        height: 22px !important;
        font-size: 22px !important;
        line-height: 1 !important;

        color: #1E1E1E !important;
        fill: #1E1E1E !important;
    }

    body.kasa-mobile-bar-compact .kasa-mobile-appbar {
        width: min(78vw, 318px) !important;
        height: 50px !important;
        min-height: 50px !important;
        bottom: 10px !important;
        padding: 0 12px !important;

        background: rgba(255, 255, 255, 0.36) !important;

        box-shadow:
            0 10px 26px rgba(0, 0, 0, 0.10),
            inset 0 0 0 1px rgba(255, 255, 255, 0.28) !important;
    }

    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell .elementor-widget,
    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell .elementor-widget-container,
    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell .elementor-icon,
    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell .elementor-menu-toggle {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
    }

    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell svg,
    body.kasa-mobile-bar-compact .kasa-mobile-appbar-cell i {
        width: 20px !important;
        height: 20px !important;
        font-size: 20px !important;
    }

    .kasa-contact,
    .kasa-contact.open {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    body.admin-bar {
        padding-top: 0 !important;
        padding-bottom: 78px !important;
    }

    body.admin-bar .kasa-mobile-appbar {
        bottom: 14px !important;
    }

    body.admin-bar.kasa-mobile-bar-compact .kasa-mobile-appbar {
        bottom: 10px !important;
    }
}
/* =====================================================
   KASA MOBILE APPBAR
   Unterseiten: ohne Lupe auf 5 Spalten zentrieren
===================================================== */

@media (max-width: 767px) {
    body:not(.home) .kasa-mobile-appbar > .e-con-inner {
        grid-template-columns: repeat(5, 1fr) !important;
    }
}
/* =====================================================
   KASA Offcanvas Glass mit JS-Bridge
===================================================== */

.kasa-offcanvas-glass-panel {
    background: rgba(255, 255, 255, 0.42) !important;
    backdrop-filter: blur(28px) saturate(130%) !important;
    -webkit-backdrop-filter: blur(28px) saturate(130%) !important;

    border: 1px solid rgba(255, 255, 255, 0.36) !important;

    box-shadow:
        0 22px 60px rgba(0, 0, 0, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.42) !important;
}

/* Innere Flächen transparent */
.kasa-offcanvas-glass,
.kasa-offcanvas-glass > .e-con-inner,
.kasa-offcanvas-glass .e-con,
.kasa-offcanvas-glass .elementor-widget-wrap,
.kasa-offcanvas-glass .elementor-widget-container {
    background: transparent !important;
}

/* Kein Rot, Menü klar lesbar */
.kasa-offcanvas-glass a,
.kasa-offcanvas-glass a:hover,
.kasa-offcanvas-glass .elementor-nav-menu a,
.kasa-offcanvas-glass .elementor-nav-menu a:hover {
    color: #1E1E1E !important;
}

/* Overlay dahinter */
.e-off-canvas__overlay,
.dialog-lightbox-widget-overlay {
    background: rgba(0, 0, 0, 0.14) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
}
.kasa-offcanvas-glass {
    border-radius: 5px !important;
    overflow: hidden !important;
}
/* Mobile: Glas/Tabs ohne Transform- oder Zoom-Bewegung */
@media (max-width: 767px) {
  .kasa-glass-card,
  .kasa-glass-card *,
  .kasa-glass-card:hover,
  .kasa-glass-card:hover *,
  .kasa-glass-card:focus,
  .kasa-glass-card:focus *,
  .kasa-glass-card:focus-within,
  .kasa-glass-card:focus-within *,
  .kasa-glass-card:active,
  .kasa-glass-card:active *,
  .kasa-glass-card .elementor-tab-title,
  .kasa-glass-card .elementor-tab-title *,
  .kasa-glass-card .e-n-tab-title,
  .kasa-glass-card .e-n-tab-title * {
    transform: none !important;
    translate: none !important;
    scale: 1 !important;
    rotate: none !important;
  }

  .kasa-glass-card,
  .kasa-glass-card *,
  .kasa-glass-card .elementor-tab-title,
  .kasa-glass-card .e-n-tab-title {
    transition-property: background-color, color, border-color, box-shadow, opacity !important;
  }
@media (max-width: 767px) {
  .kasa-tabs-no-mobile-hover * {
    -webkit-tap-highlight-color: transparent !important;
  }

  .kasa-tabs-no-mobile-hover button:hover,
  .kasa-tabs-no-mobile-hover button:focus,
  .kasa-tabs-no-mobile-hover button:focus-visible,
  .kasa-tabs-no-mobile-hover button:active,
  .kasa-tabs-no-mobile-hover [role="tab"]:hover,
  .kasa-tabs-no-mobile-hover [role="tab"]:focus,
  .kasa-tabs-no-mobile-hover [role="tab"]:focus-visible,
  .kasa-tabs-no-mobile-hover [role="tab"]:active {
    outline: none !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
  }
}
/* Nur Touch-Geräte: Nicht aktive Tabs bleiben immer im hellen Glaszustand */
@media (hover: none) and (pointer: coarse) {
  .elementor-widget-n-tabs .e-n-tab-title:not([aria-selected="true"]),
  .elementor-widget-n-tabs .e-n-tab-title:hover:not([aria-selected="true"]),
  .elementor-widget-n-tabs .e-n-tab-title:focus:not([aria-selected="true"]),
  .elementor-widget-n-tabs .e-n-tab-title:active:not([aria-selected="true"]),
  .elementor-widget-tabs .elementor-tab-title:not(.elementor-active),
  .elementor-widget-tabs .elementor-tab-title:hover:not(.elementor-active),
  .elementor-widget-tabs .elementor-tab-title:focus:not(.elementor-active),
  .elementor-widget-tabs .elementor-tab-title:active:not(.elementor-active) {
    background: rgba(255,255,255,.16) !important;
    color: #1e1e1e !important;
    border-color: rgba(255,255,255,.34) !important;
    box-shadow:
      0 10px 30px rgba(0,0,0,.08),
      inset 0 1px 0 rgba(255,255,255,.34) !important;
    outline: none !important;
    transform: none !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Playfair Display';
	font-display: auto;
	src: url('http://staging.kasa-immobilien.com/wp-content/uploads/2026/07/PlayfairDisplay-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Roboto Slap';
	font-display: auto;
	src: url('http://staging.kasa-immobilien.com/wp-content/uploads/2026/07/RobotoSlab-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Inter';
	font-display: auto;
	src: url('http://staging.kasa-immobilien.com/wp-content/uploads/2026/07/Inter-VariableFont_opszwght.ttf') format('truetype');
}
/* End Custom Fonts CSS */