@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Montserrat:wght@300;400;500;600&display=swap');
:root{--cream:#f5efe7;--paper:#fffdf9;--rose:#cfae9f;--brown:#6d5549;--ink:#312a26;--line:#d8c8bd;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.75}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.08}.wide{width:min(var(--max),calc(100% - 56px));margin:auto}.narrow{width:min(820px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px}.site-header{background:rgba(255,253,249,.96);border-bottom:1px solid #eee6df;position:sticky;top:0;z-index:50}.header-inner{width:min(1320px,calc(100% - 44px));margin:auto;min-height:108px;display:flex;align-items:center;gap:32px}.identity{display:flex;align-items:center;text-decoration:none;min-width:310px}.identity img{width:90px;height:66px;object-fit:contain;mix-blend-mode:multiply}.identity-text{display:flex;flex-direction:column;margin-left:-9px}.name{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1}.profession{text-transform:uppercase;letter-spacing:.16em;font-size:10px;margin-top:8px}.main-nav{margin-left:auto;display:flex;align-items:center;gap:22px}.main-nav a{text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.main-nav a.active,.main-nav a:hover{border-bottom:1px solid var(--brown)}.nav-book{border:1px solid var(--brown);padding:10px 14px}.menu-toggle{display:none}.hero-original{position:relative;height:min(72vw,730px);overflow:hidden}.hero-original>img{width:100%;height:100%;object-fit:cover}.hero-banner{position:absolute;left:8%;bottom:10%;background:rgba(249,244,238,.93);padding:28px 36px;max-width:650px}.hero-banner h1{font-size:48px;margin:0}.intro-original{padding:110px 0;text-align:center}.intro-original h2{font-size:42px;margin:0 0 28px}.intro-original p{font-size:17px}.text-link{display:inline-block;margin-top:28px;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:4px;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.location-section{padding:90px 0;background:var(--cream);text-align:center}.location-section h2{font-size:44px}.external-placeholder{min-height:430px;background:#e8dfd7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;margin-top:35px}.external-placeholder iframe{width:100%;height:430px;border:0}.external-placeholder button,.contact-form button,.cookie-actions button{border:1px solid var(--brown);background:transparent;padding:12px 18px;text-transform:uppercase;letter-spacing:.08em}.about-top{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch}.about-image img{width:100%;height:660px;object-fit:cover}.about-instagram{background:var(--cream);padding:100px 12%;display:flex;flex-direction:column;justify-content:center}.about-instagram h1{font-size:48px}.story{padding:100px 0}.story h2,.specialties h2{font-size:46px}.specialties{padding:80px 0;background:var(--cream);text-align:center}.specialty-row{display:grid;grid-template-columns:repeat(5,1fr);margin-top:45px}.specialty-row div{padding:18px 26px;font-family:'Cormorant Garamond',serif;font-size:28px;border-right:1px solid var(--line)}.specialty-row div:last-child{border:0}.page-image-banner{height:650px;position:relative}.page-image-banner img{width:100%;height:100%;object-fit:cover}.page-image-banner>div{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);background:rgba(249,244,238,.94);padding:22px 70px;white-space:nowrap}.page-image-banner h1{font-size:48px;margin:0}.fields{padding:100px 0}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:100px}.equal-cards article{display:flex;flex-direction:column}.equal-cards ul{flex:1;padding-left:20px}.equal-cards h2{font-size:38px}.services-intro{padding:90px 0 45px}.services-intro h1{font-size:52px}.service-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding:45px 0}.service-row.reverse img{order:2}.service-row img{width:100%;height:520px;object-fit:cover}.service-row h2{font-size:42px}.service-notes{padding:75px 0;background:var(--cream)}.packages{padding:95px 0}.packages h2{text-align:center;font-size:48px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px}.package-grid article{padding:15px 42px;border-right:1px solid var(--line)}.package-grid article:last-child{border:0}.package-grid h3{font-size:31px}.package-price{display:block;font-size:28px;margin-top:25px}.package-grid span{display:block}.center{text-align:center}.faq-section,.legal-page,.simple-page,.booking-page{padding:95px 0}.faq-section h1,.legal-page h1,.simple-page h1,.booking-page h1{font-size:52px}.faq-section details{border-bottom:1px solid var(--line);padding:22px 0}.faq-section summary{cursor:pointer;font-family:'Cormorant Garamond',serif;font-size:28px}.contact-section{padding:90px 0}.contact-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:100px}.contact-section h1{font-size:52px}.contact-form label,.contact-form fieldset{display:block;margin:22px 0;border:0;padding:0}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--brown);background:transparent;padding:11px 3px;font:inherit}.contact-form textarea{min-height:120px}.contact-form fieldset label,.contact-form .checkbox{display:flex;gap:10px;align-items:flex-start}.contact-form fieldset input,.contact-form .checkbox input{width:auto}.hp{position:absolute!important;left:-9999px!important}.contact-grid aside{padding-top:90px}.contact-grid aside h2{font-size:32px;margin-top:40px}.booking-placeholder{min-height:700px}.booking-placeholder iframe{height:700px}.legal-page h2{margin-top:45px}.site-footer{background:var(--cream);padding:65px 0}.footer-inner{width:min(var(--max),calc(100% - 48px));margin:auto;text-align:center}.footer-brand strong{display:block;font-family:'Cormorant Garamond',serif;font-size:34px}.footer-brand span{text-transform:uppercase;font-size:10px;letter-spacing:.16em}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;margin:35px 0}.site-footer nav a{font-size:12px;text-transform:uppercase;text-decoration:none}.footer-legal{font-size:12px}.footer-legal button{border:0;background:none;text-decoration:underline}.cookie-panel{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;background:#fff;padding:24px;box-shadow:0 18px 60px #0003;display:flex;justify-content:space-between;align-items:center;gap:24px}.cookie-panel[hidden]{display:none}.cookie-panel h2{margin:0}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions .primary{background:var(--brown);color:white}.cookie-actions .outline{background:var(--cream)}dialog{border:0;max-width:560px;padding:30px;box-shadow:0 20px 80px #0005}.consent-row{display:block;margin:22px 0}
@media(max-width:980px){.header-inner{min-height:82px}.identity{min-width:0;flex:1}.identity img{width:72px;height:54px}.identity-text{margin-left:-7px}.name{font-size:25px}.profession{font-size:8px}.menu-toggle{display:flex;width:54px;height:54px;border:0;background:none;flex-direction:column;justify-content:center;gap:5px;align-items:center}.menu-toggle span{width:26px;height:1px;background:var(--ink)}.menu-toggle b{font-size:8px;text-transform:uppercase}.main-nav{display:none;position:absolute;left:0;right:0;top:82px;background:var(--paper);padding:24px 28px 38px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 82px);overflow:auto}.main-nav.open{display:flex}.main-nav a{padding:15px 0;border-bottom:1px solid #e9dfd8}.hero-banner h1{font-size:39px}.about-top,.service-row,.service-row.reverse,.contact-grid{grid-template-columns:1fr}.about-image img{height:520px}.service-row.reverse img{order:0}.specialty-row{grid-template-columns:repeat(2,1fr)}.specialty-row div{border-right:0;border-bottom:1px solid var(--line)}.two-columns{gap:50px}.package-grid{grid-template-columns:1fr}.package-grid article{border-right:0;border-bottom:1px solid var(--line);padding:30px 0}.contact-grid aside{padding-top:0}}
@media(max-width:650px){body{font-size:15px}.wide{width:min(100% - 32px,var(--max))}.narrow{width:min(100% - 32px,820px)}.header-inner{width:calc(100% - 20px)}.identity img{width:58px;height:48px}.name{font-size:21px}.profession{font-size:7px}.hero-original{height:600px}.hero-banner{left:16px;right:16px;bottom:24px;padding:24px}.hero-banner h1{font-size:34px}.intro-original{padding:70px 0}.intro-original h2,.location-section h2,.story h2,.specialties h2{font-size:36px}.about-image img{height:440px}.about-instagram{padding:65px 24px}.about-instagram h1{font-size:39px}.page-image-banner{height:520px}.page-image-banner>div{left:16px;right:16px;transform:none;padding:20px;text-align:center;white-space:normal}.page-image-banner h1{font-size:36px}.two-columns{grid-template-columns:1fr}.service-row{gap:25px}.service-row img{height:360px}.service-row h2{font-size:36px}.services-intro h1,.faq-section h1,.legal-page h1,.contact-section h1,.booking-page h1{font-size:42px}.specialty-row{grid-template-columns:1fr 1fr}.specialty-row div{font-size:23px;padding:20px 10px}.cookie-panel{left:10px;right:10px;bottom:10px;display:block}.cookie-actions{margin-top:15px}.external-placeholder{min-height:350px}.external-placeholder iframe{height:350px}}


/* =========================================================
   Einheitliche Bildrahmen für hochgeladene Bilder
   ========================================================= */

/*
 * Alle Inhaltsbilder füllen ihren vorgesehenen Rahmen.
 * Das Seitenverhältnis des Originals bleibt erhalten.
 * Überstehende Bildbereiche werden sauber abgeschnitten.
 */
.hero-original,
.about-image,
.page-image-banner,
.service-row {
    overflow: hidden;
}

.hero-original > img,
.about-image > img,
.page-image-banner > img,
.service-row > img {
    display: block;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
    object-position: center center;
}

/* Startseitenbild */
.hero-original > img {
    height: 100%;
}

/* Bild auf „Über mich“ */
.about-image {
    min-height: 660px;
}

.about-image > img {
    height: 660px;
}

/* Großes Bild bei den Fachbereichen */
.page-image-banner > img {
    height: 650px;
}

/* Bilder bei Leistungen und Preisen */
.service-row > img {
    height: 520px;
    min-height: 520px;
}

/*
 * Das Logo wird niemals beschnitten.
 * Es bleibt vollständig sichtbar.
 */
.identity img,
.footer-brand img {
    object-fit: contain;
    object-position: center;
}

/* Tablet */
@media (max-width: 980px) {
    .about-image {
        min-height: 520px;
    }

    .about-image > img {
        height: 520px;
    }

    .service-row > img {
        height: 440px;
        min-height: 440px;
    }
}

/* Smartphone */
@media (max-width: 650px) {
    .hero-original > img {
        height: 600px;
    }

    .about-image {
        min-height: 440px;
    }

    .about-image > img {
        height: 440px;
    }

    .page-image-banner > img {
        height: 520px;
    }

    .service-row > img {
        height: 360px;
        min-height: 360px;
    }
}


/* =========================================================
   Über-mich-Bild: fester Rahmen wie in der Originalseite
   ========================================================= */

.about-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
    align-items: stretch;
    background: #f5eee7;
}

.about-image {
    min-height: 0;
    overflow: hidden;
}

.about-image-frame {
    width: 100%;
    height: 660px;
    overflow: hidden;
}

.about-image-frame img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center 22%;
}

.about-instagram {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(3rem, 7vw, 8rem);
}

/* Tablet */
@media (max-width: 980px) {
    .about-top {
        grid-template-columns: 1fr;
    }

    .about-image-frame {
        height: 560px;
    }

    .about-instagram {
        padding: 3.5rem 2rem;
    }
}

/* Smartphone */
@media (max-width: 650px) {
    .about-image-frame {
        height: 430px;
    }

    .about-image-frame img {
        object-position: center 18%;
    }

    .about-instagram {
        padding: 2.5rem 1.25rem 3rem;
    }
}


/* =========================================================
   Über mich: vollständiges Portrait statt Beschnitt
   ========================================================= */
.about-top {
    display: grid;
    grid-template-columns: minmax(420px, 0.95fr) minmax(420px, 1.05fr);
    align-items: stretch;
    background: #f5eee7;
}

.about-image {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: 0;
    overflow: hidden;
    background: #d8d2c7;
}

.about-image-frame {
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.about-image-frame img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 760px;
    object-fit: contain;
    object-position: center bottom;
    transform-origin: center bottom;
}

.about-instagram {
    min-height: 660px;
}

@media (max-width: 980px) {
    .about-top {
        grid-template-columns: 1fr;
    }

    .about-image-frame img {
        width: min(100%, 720px);
        max-height: none;
    }

    .about-instagram {
        min-height: 0;
    }
}

@media (max-width: 650px) {
    .about-image-frame img {
        width: 100%;
        max-height: none;
    }
}

/* Vollständige Wort-Bild-Marke im Header */
.identity-full-logo {
    min-width: 300px;
    display: flex;
    align-items: center;
}
.identity-full-logo img {
    width: 292px;
    height: 82px;
    object-fit: contain;
    object-position: left center;
    mix-blend-mode: normal;
}
@media (max-width: 980px) {
    .identity-full-logo {
        min-width: 0;
        flex: 1;
    }
    .identity-full-logo img {
        width: 220px;
        height: 64px;
    }
}
@media (max-width: 650px) {
    .identity-full-logo img {
        width: 184px;
        height: 56px;
    }
}


/* Mobiler Kontakt-Shortcut */
.contact-shortcut{position:fixed;right:20px;bottom:max(20px,env(safe-area-inset-bottom));z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.contact-shortcut.mobile-only{display:none}
.contact-shortcut-toggle{width:58px;height:58px;border:0;border-radius:50%;background:var(--theme-primary-dark,var(--brown));color:#fff;font-size:30px;line-height:1;box-shadow:0 8px 24px #0003;cursor:pointer}
.contact-shortcut-menu{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.contact-shortcut-menu[hidden]{display:none}
.contact-shortcut-menu a{min-width:154px;display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 6px 22px #0002;font-size:14px}
.contact-shortcut-menu a:first-letter{color:var(--theme-primary-dark,var(--brown))}
@media(max-width:980px){.contact-shortcut.mobile-only{display:flex}}
@media(max-width:650px){.contact-shortcut{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.contact-shortcut-toggle{width:54px;height:54px}.contact-shortcut-menu a{min-width:145px}}


/* =========================================================
   Modulare Zusatzblöcke
   ========================================================= */
.modular-block{padding:52px 20px}
.modular-block-inner{margin:0 auto}
.modular-block-embedded{padding:28px 0}
.modular-block-embedded .modular-block-inner{max-width:none}
.modular-width-narrow .modular-block-inner{max-width:760px}
.modular-width-normal .modular-block-inner{max-width:1040px}
.modular-width-wide .modular-block-inner{max-width:1320px}
.modular-align-left{text-align:left}
.modular-align-center{text-align:center}
.modular-align-right{text-align:right}
.modular-block h2{margin:0 0 18px;font-size:calc(38px * var(--heading-scale,1));line-height:1.14}
.modular-block p{margin:0 0 16px}
.modular-style-plain{background:transparent}
.modular-style-soft{background:var(--surface,#f3f6f1)}
.modular-style-green{background:var(--primary-light,#dfe8df)}
.modular-style-outline .modular-block-inner{border:1px solid var(--line,#cbd5cb);padding:34px;border-radius:12px}
.modular-block-action{margin-top:24px!important}

/* =========================================================
   Barrierefreiheit
   ========================================================= */
.accessibility-widget{
 position:fixed;
 left:18px;
 bottom:max(18px,env(safe-area-inset-bottom));
 z-index:110;
 display:flex;
 flex-direction:column-reverse;
 align-items:flex-start;
 gap:10px
}
.accessibility-toggle{
 width:54px;
 height:54px;
 border-radius:50%;
 border:2px solid #fff;
 background:var(--theme-primary-dark,#425849);
 color:#fff;
 font-size:27px;
 line-height:1;
 box-shadow:0 7px 24px #0003;
 cursor:pointer
}
.accessibility-panel{
 width:min(300px,calc(100vw - 30px));
 background:#fff;
 color:#1d1d1d;
 border:1px solid #bdbdbd;
 border-radius:12px;
 padding:16px;
 box-shadow:0 10px 34px #0003
}
.accessibility-panel[hidden]{display:none}
.accessibility-panel strong{display:block;margin-bottom:10px}
.accessibility-panel button{
 display:block;
 width:100%;
 margin:7px 0;
 padding:10px 12px;
 text-align:left;
 background:#f2f2f2;
 color:#111;
 border:1px solid #d0d0d0;
 border-radius:7px
}
.accessibility-panel button:hover{background:#e5e5e5;color:#000}
.accessibility-status{font-size:12px;margin:10px 0 0;color:#555}

/* Schrift größer / kleiner */
html.a11y-font-minus-2 body{font-size:calc(var(--body-size,16px) - 4px)!important}
html.a11y-font-minus-1 body{font-size:calc(var(--body-size,16px) - 2px)!important}
html.a11y-font-plus-1 body{font-size:calc(var(--body-size,16px) + 2px)!important}
html.a11y-font-plus-2 body{font-size:calc(var(--body-size,16px) + 4px)!important}
html.a11y-font-plus-3 body{font-size:calc(var(--body-size,16px) + 6px)!important}
html.a11y-font-plus-4 body{font-size:calc(var(--body-size,16px) + 8px)!important}

html.a11y-font-plus-1 h1{font-size:3.4rem!important}
html.a11y-font-plus-2 h1{font-size:3.7rem!important}
html.a11y-font-plus-3 h1{font-size:4rem!important}
html.a11y-font-plus-4 h1{font-size:4.3rem!important}
html.a11y-font-plus-1 h2{font-size:2.7rem!important}
html.a11y-font-plus-2 h2{font-size:3rem!important}
html.a11y-font-plus-3 h2{font-size:3.2rem!important}
html.a11y-font-plus-4 h2{font-size:3.4rem!important}

/* Hoher Schwarz-Weiß-Kontrast */
html.a11y-high-contrast body,
html.a11y-high-contrast main,
html.a11y-high-contrast header,
html.a11y-high-contrast footer,
html.a11y-high-contrast section,
html.a11y-high-contrast article,
html.a11y-high-contrast aside,
html.a11y-high-contrast nav,
html.a11y-high-contrast div:not(.accessibility-widget):not(.accessibility-panel),
html.a11y-high-contrast form{
 background:#000!important;
 color:#fff!important;
 border-color:#fff!important
}
html.a11y-high-contrast h1,
html.a11y-high-contrast h2,
html.a11y-high-contrast h3,
html.a11y-high-contrast p,
html.a11y-high-contrast li,
html.a11y-high-contrast label,
html.a11y-high-contrast span,
html.a11y-high-contrast strong{color:#fff!important}
html.a11y-high-contrast a{color:#fff!important;text-decoration:underline!important}
html.a11y-high-contrast button:not(.accessibility-toggle),
html.a11y-high-contrast input,
html.a11y-high-contrast select,
html.a11y-high-contrast textarea{
 background:#000!important;
 color:#fff!important;
 border:2px solid #fff!important
}
html.a11y-high-contrast img{filter:grayscale(1) contrast(1.15)}
html.a11y-high-contrast .accessibility-panel{background:#fff!important;color:#000!important}
html.a11y-high-contrast .accessibility-panel strong,
html.a11y-high-contrast .accessibility-panel p{color:#000!important}
html.a11y-high-contrast .accessibility-panel button{background:#fff!important;color:#000!important;border-color:#000!important}

/* Lesemodus */
html.a11y-reading body{
 font-family:Arial,Helvetica,sans-serif!important;
 line-height:1.9!important;
 background:#fff!important;
 color:#111!important
}
html.a11y-reading .site-header,
html.a11y-reading .site-footer,
html.a11y-reading .contact-shortcut,
html.a11y-reading .hero-original>img,
html.a11y-reading .about-image,
html.a11y-reading .page-image-banner>img,
html.a11y-reading .service-row>img,
html.a11y-reading iframe{
 display:none!important
}
html.a11y-reading main{
 max-width:900px;
 margin:0 auto;
 background:#fff!important
}
html.a11y-reading main section,
html.a11y-reading main article,
html.a11y-reading main div{
 background:#fff!important;
 color:#111!important
}
html.a11y-reading main h1,
html.a11y-reading main h2,
html.a11y-reading main h3,
html.a11y-reading main p,
html.a11y-reading main li{
 color:#111!important;
 text-align:left!important
}
html.a11y-reading .wide,
html.a11y-reading .narrow{
 max-width:820px!important;
 margin-left:auto!important;
 margin-right:auto!important
}

@media(max-width:650px){
 .modular-block{padding:36px 18px}
 .modular-style-outline .modular-block-inner{padding:24px}
 .accessibility-widget{left:12px;bottom:max(12px,env(safe-area-inset-bottom))}
 .accessibility-toggle{width:50px;height:50px;font-size:25px}
}


/* =========================================================
   Einfacher Seiteneditor – Standardansicht bleibt unverändert,
   bis eine Seite im Backend bewusst gespeichert wird.
   ========================================================= */
.simple-layout-row{width:100%;display:flex;align-items:stretch}
.simple-layout-one>.simple-layout-item{width:100%}
.simple-layout-two>.simple-layout-item{width:50%;min-width:0}
.simple-layout-two>.simple-layout-item>section,
.simple-layout-two>.simple-layout-item>div{height:100%;box-sizing:border-box}
.simple-custom-text{padding:60px 24px;background:var(--paper,#fffdf9)}
.simple-custom-text-inner{max-width:980px;margin:0 auto}
.simple-custom-text h2{margin-top:0}
.simple-layout-two .simple-custom-text-inner{padding-left:22px;padding-right:22px}

@media(max-width:650px){
 .simple-layout-row{display:block!important}
 .simple-layout-two>.simple-layout-item{width:100%!important}
 .simple-mobile-hidden{display:none!important}

 .simple-layout-item[data-mobile-align="left"]{text-align:left!important}
 .simple-layout-item[data-mobile-align="center"]{text-align:center!important}
 .simple-layout-item[data-mobile-align="right"]{text-align:right!important}

 .simple-layout-item h1,
 .simple-layout-item h2,
 .simple-layout-item h3,
 .simple-layout-item p,
 .simple-layout-item li{
   max-width:100%!important;
   overflow-wrap:anywhere;
   white-space:normal;
 }

 .hero-banner{
   left:16px!important;
   right:16px!important;
   width:auto!important;
   max-width:none!important;
   box-sizing:border-box!important;
 }
 .hero-banner h1{
   max-width:100%!important;
   white-space:normal!important;
   overflow-wrap:anywhere!important;
   font-size:clamp(24px,7.5vw,32px)!important;
   line-height:1.08!important;
 }
}

/* Fix 1.1: zuverlässiges Nebeneinander */
.simple-layout-row.simple-layout-two{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%!important;align-items:stretch!important}
.simple-layout-row.simple-layout-two>.simple-layout-item{width:100%!important;min-width:0!important;overflow:hidden}
.simple-layout-row.simple-layout-two>.simple-layout-item>section,.simple-layout-row.simple-layout-two>.simple-layout-item>div{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important}
.simple-layout-row.simple-layout-two .wide,.simple-layout-row.simple-layout-two .narrow{width:calc(100% - 40px)!important;max-width:none!important}
@media(max-width:650px){.simple-layout-row.simple-layout-two{display:block!important}.simple-layout-row.simple-layout-two>.simple-layout-item{width:100%!important}}

/* Fix 1.2: Paarung funktioniert unabhängig davon, welcher der zwei Nachbarblöcke markiert ist */
.simple-layout-row.simple-layout-two{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:0 !important;
}
.simple-layout-row.simple-layout-two > .simple-layout-item{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
}
.simple-layout-row.simple-layout-two > .simple-layout-item > section{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
}
@media (max-width:650px){
    .simple-layout-row.simple-layout-two{
        display:block !important;
    }
}


/* =========================================================
   Fix 1.3 – Originalbereiche innerhalb einer 50/50-Zeile
   müssen sich wirklich an ihre Spaltenbreite anpassen.
   ========================================================= */

.simple-layout-row.simple-layout-two {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden;
}

.simple-layout-row.simple-layout-two > .simple-layout-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Allgemeine alte Container auf die neue Spalte begrenzen */
.simple-layout-row.simple-layout-two .wide,
.simple-layout-row.simple-layout-two .narrow,
.simple-layout-row.simple-layout-two .footer-inner,
.simple-layout-row.simple-layout-two .contact-grid,
.simple-layout-row.simple-layout-two .two-columns,
.simple-layout-row.simple-layout-two .equal-cards,
.simple-layout-row.simple-layout-two .package-grid,
.simple-layout-row.simple-layout-two .service-list {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/*
 * Bestehende Bereiche, die intern selbst bereits zweispaltig sind,
 * werden innerhalb einer halben Seitenspalte einspaltig.
 */
.simple-layout-row.simple-layout-two .about-top {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.simple-layout-row.simple-layout-two .about-image,
.simple-layout-row.simple-layout-two .about-instagram {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.simple-layout-row.simple-layout-two .about-instagram {
    min-height: 0 !important;
    padding: 42px !important;
    box-sizing: border-box !important;
}

.simple-layout-row.simple-layout-two .about-image-frame {
    width: 100% !important;
    max-width: 100% !important;
}

.simple-layout-row.simple-layout-two .about-image-frame img {
    max-width: 100% !important;
}

/* Fachbereiche/Kontakt/Leistungen innerhalb einer halben Spalte */
.simple-layout-row.simple-layout-two .two-columns,
.simple-layout-row.simple-layout-two .contact-grid,
.simple-layout-row.simple-layout-two .package-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
}

.simple-layout-row.simple-layout-two .service-row,
.simple-layout-row.simple-layout-two .service-row.reverse {
    display: flex !important;
    flex-direction: column !important;
}

.simple-layout-row.simple-layout-two .service-row > img,
.simple-layout-row.simple-layout-two .service-row > div {
    width: 100% !important;
    max-width: 100% !important;
}

/* Texte dürfen die halbe Spalte nie verbreitern */
.simple-layout-row.simple-layout-two h1,
.simple-layout-row.simple-layout-two h2,
.simple-layout-row.simple-layout-two h3,
.simple-layout-row.simple-layout-two p,
.simple-layout-row.simple-layout-two li,
.simple-layout-row.simple-layout-two a {
    max-width: 100% !important;
    overflow-wrap: anywhere;
}

/* Smartphone: immer untereinander */
@media (max-width: 650px) {
    .simple-layout-row.simple-layout-two {
        display: block !important;
        overflow: visible !important;
    }

    .simple-layout-row.simple-layout-two > .simple-layout-item {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }
}
