@charset "UTF-8";
@import url('colors.css');
@import url('consent.css');

/* ===============================================================
   Birgit Rolf - Global Stylesheet
   birgitrolf.de
   =============================================================== */

/* -- FONTS ------------------------------------------------------- */
@font-face{font-family:'Fraunces';src:url('../fonts/Fraunces/static/Fraunces_72pt-Light.ttf') format('truetype');font-weight:300}
@font-face{font-family:'Fraunces';src:url('../fonts/Fraunces/static/Fraunces_72pt-Italic.ttf') format('truetype');font-weight:400;font-style:italic}
@font-face{font-family:'Fraunces';src:url('../fonts/Fraunces/static/Fraunces_72pt-Regular.ttf') format('truetype');font-weight:400}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit/static/Outfit-Regular.ttf') format('truetype');font-weight:400}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit/static/Outfit-Medium.ttf') format('truetype');font-weight:500}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit/static/Outfit-SemiBold.ttf') format('truetype');font-weight:600}
@font-face{font-family:'Allison';src:url('../fonts/Allison/Allison-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Sacramento';src:url('../fonts/Sacramento/Sacramento-Regular.ttf') format('truetype');font-display:swap}

/* -- TOKENS ------------------------------------------------------- */
:root{
  /* Farben -> colors.css */
  --serif:'Fraunces',Georgia,serif;
  --sans:'Outfit',system-ui,sans-serif;
  --mono:'Courier New',monospace;
  --alli:'Allison',cursive;
  --sacr:'Sacramento',cursive;
}

/* -- RESET -------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:17px;scroll-behavior:smooth}
body{background:var(--bg);color:var(--txt2);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{cursor:pointer;border:none;font-family:var(--sans)}

/* -- DEKO --------------------------------------------------------- */
.blob{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}
.b-rose{background:rgba(var(--rose-rgb),.18)}
.b-sand{background:rgba(var(--bg3-rgb),.50)}
.b-warm{background:rgba(var(--deep-rgb),.22)}
.deko-word{position:absolute;font-family:var(--serif);font-weight:100;font-style:italic;font-size:clamp(10rem,24vw,22rem);line-height:1;color:var(--heading);opacity:.025;white-space:nowrap;pointer-events:none;user-select:none;z-index:0}
.sec-dark .deko-word,.sec-darkest .deko-word{color:var(--bg);opacity:.035}

/* -- DECORATIVE ELEMENT SYSTEM ------------------------------------ */
.de{position:absolute;pointer-events:none;user-select:none;z-index:1}
/* Sparkle 4-point star */
.de-spark path{fill:var(--rose);opacity:.55}
.sec-dark .de-spark path,.sec-darkest .de-spark path{fill:rgba(var(--rose-rgb),.5)}
.sec-mid .de-spark path{fill:var(--mid);opacity:.4}
/* Thin outline ring */
.de-ring circle,.de-ring ellipse{stroke:var(--rose);stroke-width:1.2;fill:none}
.sec-dark .de-ring circle,.sec-darkest .de-ring circle{stroke:rgba(var(--rose-rgb),.28)}
.sec-mid .de-ring circle{stroke:var(--mid);opacity:.28}
/* Organic blob outline */
.de-blob-out path{stroke:var(--rose);stroke-width:1.4;fill:none;opacity:.18}
.sec-dark .de-blob-out path,.sec-darkest .de-blob-out path{stroke:rgba(var(--rose-rgb),.22)}
.sec-mid .de-blob-out path{stroke:var(--mid);opacity:.18}
/* Organic blob fill */
.de-blob-f path{opacity:.06}
.sec-warm .de-blob-f path{fill:var(--rose)}
.sec-dark .de-blob-f path,.sec-darkest .de-blob-f path{fill:rgba(var(--rose-rgb),.1)}
.sec-mid .de-blob-f path{fill:var(--mid)}
/* Plus / cross mark */
.de-cross line{stroke:var(--mid);stroke-width:1.3;stroke-linecap:round;opacity:.32}
.sec-dark .de-cross line,.sec-darkest .de-cross line{stroke:rgba(var(--rose-rgb),.3)}
/* Wavy parallel lines */
.de-wave path{stroke:var(--mid);stroke-width:.85;fill:none;opacity:.12}
.sec-dark .de-wave path,.sec-darkest .de-wave path{stroke:rgba(var(--rose-rgb),.18);opacity:.18}
/* Botanical leaf */
.de-leaf path,.de-leaf line{stroke:var(--mid);stroke-width:1;fill:none;stroke-linecap:round;opacity:.22}
.sec-dark .de-leaf path,.sec-dark .de-leaf line,.sec-darkest .de-leaf path,.sec-darkest .de-leaf line{stroke:rgba(var(--rose-rgb),.3);opacity:1}
/* Corner bracket */
.de-corner path{stroke:var(--rose);stroke-width:1.2;fill:none;opacity:.2}
.sec-dark .de-corner path,.sec-darkest .de-corner path{stroke:rgba(var(--rose-rgb),.22)}
/* Heart */
.de-heart path{fill:var(--rose);opacity:.22}
.sec-dark .de-heart path,.sec-darkest .de-heart path{fill:rgba(var(--rose-rgb),.28)}
/* Hide on mobile */
@media(max-width:768px){.de{display:none}}

/* -- INFO-NOTE (Schweigepflicht-Box etc.) ----------------------- */
.note-mauve{display:inline-block;background:var(--mauve);border:1px solid rgba(200,164,138,.22);border-radius:12px;padding:1.4rem 2rem;margin-bottom:3rem;font-size:.94rem;color:var(--darkest);line-height:1.72;max-width:520px}

/* -- LAYOUT ------------------------------------------------------- */
.sec{position:relative;overflow:hidden;padding:clamp(5rem,8vw,8rem) clamp(1.5rem,4vw,2.5rem)}
.wrap{max-width:1400px;margin:0 auto;position:relative;z-index:1}
.wrap-s{max-width:960px;margin:0 auto;position:relative;z-index:1}
.wrap-m{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.sec-warm{background:var(--bg2)}
.sec-mid{background:var(--bg3)}
.sec-dark{background:var(--dark);color:var(--bg)}
.sec-darkest{background:var(--darkest);color:var(--bg)}

/* -- TYPOGRAFIE --------------------------------------------------- */
.eyebrow{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--mid);margin-bottom:1.2rem;display:block}
.sec-h{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.12;margin-bottom:1.4rem;color:var(--heading)}
.sec-h em{font-style:italic;color:var(--accent)}
.sec-dark .sec-h em,.sec-darkest .sec-h em{color:var(--accent-on-dark)}
.cta-h{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.12;margin-bottom:1.4rem;color:var(--heading)}
.cta-h em{font-style:italic;color:var(--accent)}
.sec-dark .cta-h em,.sec-darkest .cta-h em{color:var(--accent-on-dark)}

/* -- BUTTONS ------------------------------------------------------ */
.btn{display:inline-block;position:relative;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;padding:.95rem 2.4rem;cursor:pointer;border:none;background:transparent;transition:transform .25s,color .25s;text-decoration:none;z-index:0;line-height:1}

/* Primaer (dunkel) */
.btn-p{color:var(--bg)}
.btn-p::before,.btn-p::after{content:'';position:absolute;inset:-7px -16px;background-size:100% 100%;background-repeat:no-repeat;z-index:-1;transition:opacity .4s;pointer-events:none}
.btn-p::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 56' preserveAspectRatio='none'%3E%3Cpath fill='%23BD8DAC' d='M8 18C6 11 18 5 40 3C66 1 102 0 138 2C174 4 214 0 244 5C262 8 274 14 272 22C270 31 260 42 246 47C230 54 196 57 156 56C108 55 60 56 28 53C12 51 4 46 2 37C0 28 2 24 8 18Z'/%3E%3C/svg%3E");opacity:1}
.btn-p::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 56' preserveAspectRatio='none'%3E%3Cpath fill='%23A8789C' d='M12 15C18 7 50 2 86 2C126 2 174 0 214 4C240 7 260 13 261 21C262 30 252 42 238 47C222 53 190 56 148 55C102 54 54 55 24 52C8 50 1 45 0 36C-1 27 4 21 12 15Z'/%3E%3C/svg%3E");opacity:0}
.btn-p:hover{transform:translateY(-2px)}
.btn-p:hover::before{opacity:0}
.btn-p:hover::after{opacity:1}

/* Hell (fuer dunkle Hintergruende) */
.btn-lt{color:var(--heading)}
.btn-lt::before,.btn-lt::after{content:'';position:absolute;inset:-7px -16px;background-size:100% 100%;background-repeat:no-repeat;z-index:-1;transition:opacity .4s;pointer-events:none}
.btn-lt::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 56' preserveAspectRatio='none'%3E%3Cpath fill='%23BD8DAC' d='M8 18C6 11 18 5 40 3C66 1 102 0 138 2C174 4 214 0 244 5C262 8 274 14 272 22C270 31 260 42 246 47C230 54 196 57 156 56C108 55 60 56 28 53C12 51 4 46 2 37C0 28 2 24 8 18Z'/%3E%3C/svg%3E");opacity:1}
.btn-lt::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 56' preserveAspectRatio='none'%3E%3Cpath fill='%23FAFAF8' d='M12 15C18 7 50 2 86 2C126 2 174 0 214 4C240 7 260 13 261 21C262 30 252 42 238 47C222 53 190 56 148 55C102 54 54 55 24 52C8 50 1 45 0 36C-1 27 4 21 12 15Z'/%3E%3C/svg%3E");opacity:0}
.btn-lt:hover{transform:translateY(-2px)}
.btn-lt:hover::before{opacity:0}
.btn-lt:hover::after{opacity:1}

/* Arrow-Link */
.arrow{background:none;border:none;color:var(--deep);padding:0;display:inline-flex;align-items:center;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:color .25s;text-decoration:none}
.arrow::after{content:'\00a0\27F6';display:inline-block;transition:transform .35s;font-size:1.05em;letter-spacing:0}
.arrow:hover{color:var(--txt)}
.arrow:hover::after{transform:translateX(8px)}

/* CTA Button (einfach, fuer dunkle Sektionen) */
.btn-cta{background:var(--mauve);color:var(--heading);font-size:.86rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:1rem 2.5rem;border-radius:50px;border:none;cursor:pointer;transition:background .2s}
.btn-cta:hover{background:var(--mauve-hover)}

/* -- NAV ----------------------------------------------------------- */

.nav{position:fixed;top:0;left:0;right:0;z-index:80;background:transparent;padding:14px clamp(1rem,3vw,2rem)}
.nav-inner{max-width:1400px;margin:0 auto;padding:0 clamp(1rem,2vw,1.8rem);height:90px;display:flex;align-items:center;gap:2rem;background:var(--nav-glass);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.7);border-radius:50px;box-shadow:0 4px 28px rgba(var(--dark-rgb),.09),0 1px 4px rgba(var(--dark-rgb),.05)}
.nav-logo{display:flex;align-items:center;flex-shrink:0}
.nav-logo-img{height:72px;width:auto;display:block}
.nav-links{display:flex;gap:1.8rem;list-style:none;margin:0 auto}
.nav-links a{font-size:.8rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--heading);transition:color .2s}
.nav-links a.nav-active{color:var(--deep);font-weight:700}
.nav-links a:hover{color:var(--deep)}
.btn-nav{background:var(--mauve);color:var(--on-dark);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.6rem 1.4rem;border-radius:50px;white-space:nowrap;border:none;cursor:pointer}
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;background:none;border:none;cursor:pointer;flex-shrink:0;margin-left:auto}
.nav-burger span{display:block;width:22px;height:2px;background:var(--dark);border-radius:2px;transition:transform .25s,opacity .25s}
/* Mobile Overlay - Glas */
.mobile-menu{display:none;position:fixed;inset:0;background:var(--mob-overlay);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);z-index:90;flex-direction:column;align-items:center;justify-content:center;gap:2.8rem;padding:2rem}
.mobile-menu.open{display:flex}
.mobile-menu a{font-family:var(--serif);font-size:1.7rem;font-weight:300;color:var(--heading);letter-spacing:.01em;transition:color .2s}
.mobile-menu a:hover{color:var(--deep)}
.mobile-menu .btn-nav{font-size:.9rem;padding:.9rem 2.5rem;margin-top:.8rem;color:var(--on-dark)}
.mobile-menu a.nav-active{color:var(--deep);font-weight:500}
.mobile-close{position:absolute;top:1.5rem;right:1.5rem;font-size:1.6rem;background:none;border:none;color:var(--heading);cursor:pointer;padding:.5rem}
/* Tablet & Mobile: nur Logo + Burger */
@media(max-width:1024px){
  .nav-links{display:none}
  .btn-nav.btn-nav-desktop{display:none}
  .nav-burger{display:flex}
}
/* Kleines Mobile: Logo etwas kleiner, Pill kompakter */
@media(max-width:640px){
  .nav{padding:10px clamp(.75rem,4vw,1rem)}
  .nav-inner{height:70px;border-radius:40px}
  .nav-logo-img{height:52px}
}

/* -- ABOUT WARUM (Wellenkante oben) -------------------------------- */

.about-warum{padding-top:calc(clamp(5rem,8vw,8rem) + 90px);margin-top:-2px}

/* -- ABOUT INTRO (Lifestyle) --------------------------------------- */
.about-intro{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--bg) 0%,var(--bg2) 55%,var(--bg3) 100%);padding:calc(clamp(2.5rem,4vw,4rem) + 90px) clamp(1.5rem,4vw,2.5rem) clamp(5rem,8vw,8rem)}
.about-intro-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(3rem,6vw,8rem);align-items:center;position:relative;z-index:2}
.about-intro-img{position:relative}
.about-intro-portrait{position:relative;z-index:2;height:min(72vh,600px);width:auto;aspect-ratio:4/5;clip-path:url(#aboutBlobClip);filter:drop-shadow(0 20px 50px rgba(var(--dark-rgb),.22));overflow:hidden}
.about-intro-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 10%;display:block}
.about-intro-txt{position:relative;z-index:2}
@media(max-width:900px){
  .about-intro{padding-bottom:0}
  .about-intro-inner{grid-template-columns:1fr;align-items:flex-end;gap:2rem}
  .about-intro-txt{margin-bottom:2.5rem}
  .about-intro-img{max-width:100%;margin:0 auto;display:flex;justify-content:center;align-items:flex-end}
  .about-intro-portrait{clip-path:none;border-radius:16px 16px 0 0;height:min(55vh,420px);aspect-ratio:3/4;filter:none}
}

/* -- HERO ---------------------------------------------------------- */
.hero{height:100svh;min-height:600px;background:linear-gradient(160deg,var(--bg) 0%,var(--bg2) 50%,var(--bg3) 100%);position:relative;overflow:hidden;display:flex;align-items:stretch}
.hero-grid{max-width:1400px;width:100%;margin:0 auto;display:grid;grid-template-columns:2fr 3fr;align-items:stretch}
.hero-txt{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4vw,4rem) clamp(2rem,5vw,6rem) clamp(2rem,4vw,4rem) clamp(1.5rem,3vw,3rem);position:relative;z-index:2}
.hero-eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--mid);margin-bottom:1.5rem;display:block}
.hero-h1{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.1;color:var(--heading);margin-bottom:1.4rem}
.hero-h1 em{font-style:italic;color:var(--accent)}
.hero-sub{font-size:.96rem;color:var(--txt2);line-height:1.75;max-width:460px;margin-bottom:1.4rem}
.hero-divider{width:60px;height:1px;background:rgba(var(--mid-rgb),.3);margin-bottom:1.8rem}
.hero-btns{display:flex;gap:2.5rem;flex-wrap:wrap;align-items:center}
.hero-portrait-wrap{position:relative;display:flex;align-items:center;justify-content:center;background:transparent}
.hero-portrait{position:relative;height:min(78vh,640px);width:auto;aspect-ratio:4/5;z-index:2;filter:drop-shadow(0 24px 56px rgba(var(--dark-rgb),.20));clip-path:url(#blobClip)}
.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 15%;display:block}

/* -- WIEDERERKENNUNG ----------------------------------------------- */
.wk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.5rem}
.wk{background:var(--bg);border:1px solid var(--line);border-radius:20px 6px 20px 6px;padding:2rem 1.8rem;display:flex;flex-direction:column;gap:1rem;transition:box-shadow .25s,transform .25s}
.wk:hover{box-shadow:0 12px 40px rgba(var(--dark-rgb),.1);transform:translateY(-3px)}
.wk-num{font-family:var(--sacr);font-size:2.2rem;color:var(--rose);line-height:1}
.wk-h{font-family:var(--serif);font-weight:300;font-style:italic;font-size:1.5rem;line-height:1.35;color:var(--heading)}
.wk-p{font-size:.9rem;color:var(--txt2);line-height:1.72;flex:1}
.wk-cta{background:var(--card-dark);border-radius:20px 6px 20px 6px;padding:2rem 1.8rem;display:flex;flex-direction:column;justify-content:center;gap:1.8rem}
.wk-cta-txt{font-family:var(--serif);font-weight:300;font-style:italic;font-size:1.12rem;line-height:1.55;color:rgba(var(--on-dark-rgb),.92)}
.wk-cta-line{width:40px;height:1px;background:rgba(var(--rose-rgb),.4)}

/* -- UeBER MICH ----------------------------------------------------- */
.about-grid{display:grid;grid-template-columns:minmax(0,400px) 1fr;gap:clamp(3rem,5vw,7rem);align-items:start}
.about-img-wrap{position:relative}.about-img-wrap picture{display:block;width:100%}
.about-img{width:100%;height:auto;object-fit:cover;object-position:top;aspect-ratio:3/4;border-radius:20px 6px 20px 6px}
.about-sig{font-family:var(--alli);font-size:2.8rem;color:var(--rose);position:absolute;bottom:-1rem;right:-1.5rem;transform:rotate(-3deg);pointer-events:none}
.about-p{font-size:1rem;color:var(--txt2);line-height:1.82;margin-bottom:1.4rem}

/* -- ZWEI FORMATE -------------------------------------------------- */
.format-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem}
.fc{border-radius:24px 8px 24px 8px;padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.4rem;position:relative;overflow:hidden;min-height:380px}
.fc-1{background:var(--bg);border:1px solid var(--line)}
.fc-2{background:var(--dark);color:var(--on-dark)}
.fc-num{font-family:var(--serif);font-weight:300;font-size:5.5rem;line-height:.9;position:absolute;top:1.5rem;right:2rem;pointer-events:none}
.fc-1 .fc-num{color:var(--rose);opacity:.18}
.fc-2 .fc-num{color:var(--on-dark);opacity:.14}
.fc-tag{font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--mid)}
.fc-2 .fc-tag{color:var(--rose)}
.fc-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,2.5vw,2.6rem);line-height:1.1;flex-shrink:0;color:var(--heading)}
.fc-2 .fc-h{color:var(--on-dark)}
.fc-p{font-size:.94rem;line-height:1.78;color:var(--txt2);flex:1}
.fc-2 .fc-p{color:rgba(var(--on-dark-rgb),.75)}
.fc-2 .arrow{color:var(--rose)}

/* -- WOMIT FRAUEN -------------------------------------------------- */
.womit-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.womit-quote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.4;color:rgba(var(--on-dark-rgb),.9);border-left:3px solid var(--rose);padding-left:2rem;margin-top:2rem}
.womit-p{font-size:.98rem;color:rgba(var(--on-dark-rgb),.72);line-height:1.82;margin-bottom:1.2rem}
.tag-list{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}
.tag{font-size:.8rem;font-weight:500;padding:.42rem 1rem;border-radius:50px;background:rgba(var(--rose-rgb),.18);color:var(--on-dark);border:1px solid rgba(var(--rose-rgb),.3)}

/* -- TESTIMONIALS -------------------------------------------------- */
.ts{position:relative;margin-top:3rem;overflow:hidden}
.ts-track{display:flex;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}
.ts-track .tc{flex:0 0 100%;min-width:0}
.ts-nav{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:1.5rem}
.ts-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--mid);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s;flex-shrink:0}
.ts-btn:hover{background:var(--deep);border-color:var(--deep);color:var(--on-dark)}
.ts-btn:disabled{opacity:.25;cursor:default;pointer-events:none}
.ts-counter{font-size:.8rem;color:var(--mid);font-family:var(--sans);min-width:36px;text-align:center}
.tc{background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:2.5rem}
.tqm{font-family:var(--serif);font-size:5rem;line-height:.7;color:var(--rose);opacity:.3;margin-bottom:.8rem;display:block}
.tt{font-family:var(--serif);font-weight:300;font-style:italic;font-size:1.05rem;line-height:1.8;color:var(--txt);margin-bottom:1.5rem}
.ta{display:flex;align-items:center;gap:.8rem}
.ta-dot{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--rose),var(--mid));flex-shrink:0}
.ta-name{font-size:.76rem;font-weight:600;color:var(--txt)}
.ta-role{font-size:.76rem;color:var(--txt2)}

/* -- FAQ ----------------------------------------------------------- */
.faq-list{margin:2.5rem auto 0;display:flex;flex-direction:column;gap:.6rem}
.faq-item{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:rgba(var(--on-dark-rgb),.6);transition:box-shadow .2s}
.faq-item.open{box-shadow:0 4px 20px rgba(var(--dark-rgb),.07)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem 1.6rem;background:none;border:none;text-align:left;font-family:var(--serif);font-size:1.05rem;font-weight:300;color:var(--heading);cursor:pointer;transition:color .2s}
.faq-q:hover{color:var(--deep)}
.faq-icon{width:28px;height:28px;border-radius:50%;background:var(--bg3);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.1rem;color:var(--deep);transition:transform .25s,background .2s}
.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--deep);color:var(--on-dark);border-color:var(--deep)}
.faq-body{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-item.open .faq-body{max-height:400px}
.faq-a{padding:.2rem 1.6rem 1.4rem;font-size:.96rem;color:var(--txt2);line-height:1.82}

/* -- ARROW LINK ---------------------------------------------------- */
.arrow{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--deep);display:inline-flex;align-items:center;gap:.5rem;transition:gap .2s,opacity .2s}
.arrow::after{content:'\00a0\2192';white-space:nowrap;transition:transform .2s}
.arrow:hover{opacity:.8}
.arrow:hover::after{transform:translateX(3px)}
.sec-dark .arrow,.sec-darkest .arrow{color:var(--rose)}

/* -- FOOTER -------------------------------------------------------- */
.footer{padding:clamp(4rem,7vw,7rem) clamp(1.5rem,4vw,2.5rem) 2rem}
.footer-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:clamp(2rem,5vw,6rem);margin-bottom:3rem}
.fi-brand{font-size:.95rem;color:rgba(var(--on-dark-rgb),.65);line-height:1.85;margin-top:.8rem}
.fi-sub{font-size:.82rem;color:rgba(var(--on-dark-rgb),.4);line-height:1.7;margin-top:1rem}
.fi-h{font-size:.72rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:rgba(var(--on-dark-rgb),.45);margin-bottom:1.1rem}
.fi-links{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.fi-links a{font-size:.92rem;color:rgba(var(--on-dark-rgb),.65);transition:color .2s}
.fi-links a:hover{color:rgba(var(--on-dark-rgb),.95)}
.fi-contact{font-size:.9rem;color:rgba(var(--on-dark-rgb),.6);line-height:1.9}
.footer-bottom{max-width:1400px;margin:0 auto;padding-top:1.5rem;border-top:1px solid rgba(var(--on-dark-rgb),.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.fi-copy{font-size:.8rem;color:rgba(var(--on-dark-rgb),.35)}
.fi-legal{list-style:none;display:flex;gap:2rem}
.fi-legal a{font-size:.8rem;color:rgba(var(--on-dark-rgb),.35);transition:color .2s}
.fi-legal a:hover{color:rgba(var(--on-dark-rgb),.7)}

/* -- RESPONSIVE ---------------------------------------------------- */
@media(max-width:1024px){
  .wk-grid{grid-template-columns:1fr 1fr}
  .about-grid{grid-template-columns:1fr}
  .about-img-wrap{max-width:320px}
  .womit-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .hero{height:auto;min-height:auto;overflow:hidden;padding:calc(72px + 2rem) clamp(1rem,4vw,1.5rem) 3rem}
  .hero-grid{grid-template-columns:1fr;gap:1.5rem}
  .hero-portrait-wrap{order:-1;max-width:280px;margin:0 auto;display:flex;align-items:flex-start;justify-content:center}
  .hero-portrait{height:min(52vh,360px)}
  .hero-portrait img{object-position:center 15%}
  .hero-txt{padding:0 0 1rem}
  .format-grid{grid-template-columns:1fr}
  .wk-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr;gap:2.5rem}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}
@media(max-width:480px){
  .faq-q{font-size:.98rem;padding:1.1rem 1.2rem}
  .faq-a{padding:.2rem 1.2rem 1.2rem}
}

/* -- POSTIT BOARD -------------------------------------------------- */

.postit-board{position:relative;display:flex;flex-wrap:wrap;gap:1.4rem 1.2rem;padding:1rem 0 2rem}
.postit{position:relative;width:clamp(170px,18vw,220px);min-height:110px;padding:1.1rem 1rem .9rem;border-radius:2px 2px 2px 2px;box-shadow:3px 5px 20px rgba(var(--dark-rgb),.13),1px 2px 6px rgba(var(--dark-rgb),.07);display:flex;flex-direction:column;gap:.35rem;z-index:2;transition:transform .25s,box-shadow .25s;cursor:default}
.postit::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:rgba(var(--dark-rgb),.06);border-radius:2px 2px 0 0}
.postit:hover{transform:scale(1.05) rotate(0deg) !important;box-shadow:6px 10px 32px rgba(var(--dark-rgb),.18),2px 4px 10px rgba(var(--dark-rgb),.10);z-index:10}
.postit-cat{font-size:.6rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mid);opacity:.65;margin-bottom:.1rem}
.postit-text{font-family:var(--serif);font-size:.92rem;line-height:1.45;color:var(--heading);font-weight:300}
.postit-sub{font-size:.74rem;color:var(--txt2);line-height:1.5;opacity:.72;margin-top:.15rem}
.postit-group{font-family:var(--serif);font-weight:300;font-style:italic;font-size:1.1rem;color:var(--accent);margin:2.5rem 0 1rem;padding-bottom:.6rem;border-bottom:1px solid var(--line);display:block}
.postit-board-3{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;padding:1rem 0 2rem}
.postit-board-4{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem 1rem;padding:1rem 0 2rem}
.postit--lg{width:100%;min-height:160px;padding:1.8rem 1.6rem 1.5rem}
.postit--lg .postit-cat{font-size:.65rem}
.postit--lg .postit-text{font-size:1.08rem;line-height:1.5}
.postit--lg .postit-sub{font-size:.82rem}
.postit--sm{width:100%;min-height:100px}
@media(max-width:1024px){
  .postit-board-3{grid-template-columns:repeat(2,1fr)}
  .postit-board-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .postit-board-3{grid-template-columns:1fr}
  .postit-board-4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:400px){
  .postit-board-4{grid-template-columns:1fr}
}

/* -- HONORAR HERO -------------------------------------------------- */

.hon-row{display:flex;gap:1.5rem;align-items:flex-start}
.honorar-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--bg) 0%,var(--bg2) 55%,var(--bg3) 100%);padding:calc(clamp(2.5rem,4vw,4rem) + 90px) clamp(1.5rem,4vw,2.5rem) clamp(5rem,8vw,8rem)}

/* -- PRICING CARDS ------------------------------------------------- */
.price-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:2.5rem}
.price-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:2.5rem;max-width:900px}
.price-card{border-radius:24px 8px 24px 8px;padding:2.5rem 2rem;display:flex;flex-direction:column;gap:.7rem;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.price-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(var(--dark-rgb),.12)}
.price-card--light{background:var(--bg);border:1px solid var(--line)}
.price-card--dark{background:var(--card-dark);color:var(--bg)}
.price-name{font-size:.7rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--mid)}
.price-card--dark .price-name{color:var(--rose)}
.price-h{font-family:var(--serif);font-weight:300;font-size:1.55rem;color:var(--heading);line-height:1.15}
.price-card--dark .price-h{color:var(--bg)}
.price-sessions{font-size:.8rem;color:var(--txt2);font-weight:500}
.price-card--dark .price-sessions{color:rgba(var(--on-dark-rgb),.6)}
.price-amount{font-family:var(--serif);font-weight:300;font-size:clamp(2.4rem,3.8vw,3.4rem);color:var(--heading);line-height:1;margin:.3rem 0 0}
.price-card--dark .price-amount{color:var(--bg)}
.price-mwst{font-size:.74rem;color:var(--txt2);margin-top:-.15rem}
.price-card--dark .price-mwst{color:rgba(var(--on-dark-rgb),.45)}
.price-divider{width:40px;height:1px;background:var(--line);margin:.5rem 0}
.price-card--dark .price-divider{background:rgba(var(--rose-rgb),.3)}
.price-equiv{font-size:.84rem;color:var(--mid);font-weight:500}
.price-card--dark .price-equiv{color:rgba(var(--rose-rgb),.92)}
.price-rebook{font-size:.76rem;color:var(--txt2);opacity:.72}
.price-card--dark .price-rebook{color:rgba(var(--on-dark-rgb),.48)}
.price-desc{font-size:.9rem;color:var(--txt2);line-height:1.72;flex:1;margin-top:.3rem}
.price-card--dark .price-desc{color:rgba(var(--on-dark-rgb),.78)}
.price-single-note{text-align:center;margin-top:2rem;font-size:.92rem;color:var(--txt2);padding:1.2rem 2rem;background:var(--bg2);border-radius:12px;border:1px solid var(--line);line-height:1.6;max-width:1100px;margin-left:auto;margin-right:auto}
.cta-inline{background:var(--bg2);border-radius:24px 8px 24px 8px;padding:2rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-top:2rem}
.sec-mid .price-single-note{background:var(--bg);border-color:var(--line)}

/* -- ADVANTAGE CARDS ----------------------------------------------- */
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:2.5rem}
.adv-card{background:var(--bg);border:1px solid var(--line);border-radius:20px 6px 20px 6px;padding:2rem 1.8rem;display:flex;flex-direction:column;gap:1rem}
.adv-num{font-family:var(--sacr);font-size:2rem;color:var(--rose);line-height:1}
.adv-h{font-family:var(--serif);font-weight:300;font-size:1.18rem;color:var(--heading);line-height:1.35}
.adv-p{font-size:.9rem;color:var(--txt2);line-height:1.72}

/* -- HINT LIST ----------------------------------------------------- */
.hint-list{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}
.hint-item{display:flex;gap:1.2rem;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.6rem}
.hint-icon{width:36px;height:36px;border-radius:50%;background:var(--bg3);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem;line-height:1}
.hint-txt{font-size:.94rem;color:var(--txt2);line-height:1.75}
.hint-txt strong{color:var(--heading);font-weight:600}

/* -- RESPONSIVE PRICING -------------------------------------------- */
@media(max-width:1024px){
  .price-grid-3{grid-template-columns:1fr 1fr}
  .adv-grid{grid-template-columns:1fr 1fr}
  .price-grid-2{max-width:100%}
}
@media(max-width:640px){
  .price-grid-3{grid-template-columns:1fr}
  .price-grid-2{grid-template-columns:1fr}
  .adv-grid{grid-template-columns:1fr}
}

/* -- ANGEBOTSKARTEN (Brandguide Section 15) ------------------------ */
.ak1{background:linear-gradient(140deg,var(--darkest) 0%,var(--dark) 55%,var(--deep) 100%);border-radius:28px 8px 28px 8px;padding:clamp(2.8rem,5vw,5rem) clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative;overflow:hidden;margin-bottom:2rem}
.ak2{background:linear-gradient(115deg,var(--bg3) 0%,rgba(var(--rose-rgb),.5) 42%,var(--rose) 100%);border-radius:8px 28px 8px 28px;padding:clamp(2.8rem,5vw,5rem) clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative;overflow:hidden;margin-bottom:2rem;color:var(--heading)}
.ak3{background:var(--bg3);border:1px solid var(--line);border-radius:18px 28px 18px 28px;padding:clamp(2.8rem,5vw,5rem) clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative;overflow:hidden;margin-bottom:2rem}
.ak-label{font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;margin-bottom:1.4rem;display:block}
.ak1 .ak-label{color:rgba(var(--rose-rgb),.5)}
.ak2 .ak-label{color:rgba(var(--heading-rgb),.45)}
.ak3 .ak-label{color:var(--mid)}
.ak-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.08;margin-bottom:1.1rem}
.ak1 .ak-h{color:var(--bg)}
.ak1 .ak-h em{font-style:italic;color:var(--rose)}
.ak2 .ak-h{color:var(--heading)}
.ak2 .ak-h em{font-style:italic;color:var(--accent)}
.ak3 .ak-h{color:var(--heading)}
.ak3 .ak-h em{font-style:italic;color:var(--accent)}
.ak-body{font-family:var(--sans);font-size:.92rem;line-height:1.78;margin-bottom:2rem}
.ak1 .ak-body{color:rgba(var(--on-dark-rgb),.80)}
.ak2 .ak-body{color:rgba(var(--heading-rgb),.82)}
.ak3 .ak-body{color:var(--txt2)}
.ak-right{display:flex;flex-direction:column;justify-content:center}
.ak-price{font-family:var(--sacr);font-size:clamp(3rem,4.8vw,4.8rem);line-height:1.1;display:block}
.ak1 .ak-price{color:var(--rose)}
.ak2 .ak-price{color:var(--accent)}
.ak3 .ak-price{color:var(--accent)}
.ak-price-note{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.6rem;display:block;line-height:1.6}
.ak1 .ak-price-note{color:rgba(var(--rose-rgb),.8)}
.ak2 .ak-price-note{color:rgba(var(--heading-rgb),.6)}
.ak3 .ak-price-note{color:var(--txt2)}
.ak-deko{position:absolute;font-family:var(--serif);font-weight:100;font-style:italic;font-size:clamp(7rem,16vw,15rem);line-height:1;opacity:.05;pointer-events:none;right:-1rem;bottom:-2rem;white-space:nowrap;user-select:none}
.ak1 .ak-deko{color:var(--bg)}
.ak2 .ak-deko{color:var(--heading)}
.ak3 .ak-deko{color:var(--heading)}
@media(max-width:768px){
  .ak1,.ak2,.ak3{grid-template-columns:1fr}
  .ak-deko{display:none}
}

/* -- PAARTHERAPIE 3-GRID ------------------------------------------- */

.pt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:2.5rem;max-width:1100px;margin-left:auto;margin-right:auto}
.pt-card{border-radius:24px 8px 24px 8px;padding:2.5rem 1.6rem;display:flex;flex-direction:column;gap:.8rem;position:relative;overflow:hidden}
.pt-card:hover{transform:translateY(-3px);box-shadow:0 14px 42px rgba(var(--dark-rgb),.12)}
.pt-card--light{background:var(--bg2);border:none}
.pt-card--dark{background:var(--mauve);color:var(--heading)}
.pt-card--cta{background:var(--darkest);color:var(--bg);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.pt-card--intensiv{background:#3D1A2C;color:var(--bg)}
.pt-label{font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--mid)}
.pt-card--dark .pt-label{color:rgba(52,40,45,.55)}
.pt-card--cta .pt-label{color:rgba(var(--rose-rgb),.6)}
.pt-card--intensiv .pt-label{color:var(--rose)!important}
.pt-h{font-family:var(--serif);font-weight:300;font-size:1.5rem;color:var(--heading);line-height:1.15}
.pt-card--dark .pt-h{color:var(--heading)}.pt-card--cta .pt-h,.pt-card--intensiv .pt-h{color:var(--bg)}
.pt-sessions{font-size:.8rem;color:var(--txt2);font-weight:500}
.pt-card--dark .pt-sessions{color:rgba(52,40,45,.6)}.pt-card--intensiv .pt-sessions{color:rgba(var(--on-dark-rgb),.6)}
.pt-price{font-family:var(--sacr);font-size:clamp(2.8rem,4vw,4rem);color:var(--accent);line-height:1;margin:.4rem 0 0;display:block}
.pt-card--dark .pt-price{color:var(--heading)}.pt-card--intensiv .pt-price{color:var(--rose)!important}
.pt-card--cta .pt-price{color:var(--rose)}
.pt-mwst{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mid);margin-top:-.1rem}
.pt-card--dark .pt-mwst{color:rgba(52,40,45,.5)}
.pt-card--cta .pt-mwst{color:rgba(var(--rose-rgb),.6)}
.pt-divider{width:36px;height:1px;background:var(--line);margin:.6rem 0}
.pt-card--dark .pt-divider{background:rgba(52,40,45,.2)}.pt-card--intensiv .pt-divider{background:rgba(189,141,172,.3)}
.pt-card--cta .pt-divider{background:rgba(var(--rose-rgb),.25);margin:.8rem auto}
.pt-rebook{font-size:.78rem;color:var(--txt2);opacity:.75;font-family:var(--mono);letter-spacing:.06em}
.pt-card--dark .pt-rebook{color:rgba(52,40,45,.55)}.pt-card--intensiv .pt-rebook{color:rgba(var(--on-dark-rgb),.5)}
.pt-desc{font-size:.9rem;color:var(--txt2);line-height:1.72;flex:1;margin-top:.4rem}
.pt-card--dark .pt-desc{color:rgba(52,40,45,.78)}.pt-card--intensiv .pt-desc{color:rgba(var(--on-dark-rgb),.78)}
.pt-card--cta .pt-desc{color:rgba(var(--on-dark-rgb),.72);margin-top:.6rem}
@media(max-width:900px){.pt-grid{grid-template-columns:1fr 1fr;max-width:700px}}
@media(max-width:580px){.pt-grid{grid-template-columns:1fr;max-width:480px}}

/* -- PAARTHERAPIE HERO --------------------------------------------- */
.pt-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--bg) 0%,var(--bg2) 55%,var(--bg3) 100%);padding:calc(clamp(2.5rem,4vw,4rem) + 90px) clamp(1.5rem,4vw,2.5rem) clamp(5rem,8vw,8rem)}

/* -- PORTRAeT-BREAKER + CLAIM -------------------------------------- */
.pt-breaker{position:relative;background:linear-gradient(to right,var(--bg3) 0%,var(--bg2) 45%,var(--bg) 100%);padding:0;overflow:hidden}
.pt-breaker-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:clamp(2rem,4vw,5rem);align-items:flex-end;min-height:520px;padding:clamp(2.5rem,4vw,4rem) clamp(2rem,5vw,5rem) 0}
.pt-breaker-figure{display:flex;align-items:flex-end;justify-content:flex-start;position:relative}
.pt-breaker-figure::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:56px;background:radial-gradient(ellipse at 50% 100%,rgba(var(--dark-rgb),.45) 0%,transparent 68%);filter:blur(16px);pointer-events:none;z-index:0}
.pt-breaker-img{display:block;width:360px;max-width:360px;height:auto;position:relative;z-index:1}
.pt-breaker-claim{display:flex;flex-direction:column;justify-content:center;gap:1.4rem;padding:clamp(3rem,6vw,5rem) 0;align-self:center}
.pt-breaker-eyebrow{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:rgba(var(--dark-rgb),.5)}
.pt-breaker-quote{font-family:var(--serif);font-weight:300;font-size:clamp(1.2rem,1.9vw,1.9rem);line-height:1.3;color:var(--heading);font-style:normal;border:none;padding:0;margin:0}
.pt-breaker-quote em{font-style:italic;color:var(--accent)}
.pt-breaker-sub{font-size:.8rem;color:rgba(var(--dark-rgb),.55);font-weight:500;letter-spacing:.04em}
@media(max-width:860px){
  .pt-breaker-inner{grid-template-columns:1fr;padding:clamp(2rem,5vw,4rem) clamp(2rem,5vw,4rem) 0;align-items:flex-end;min-height:auto}
  .pt-breaker-claim{order:-1;text-align:center;padding-bottom:0}
  .pt-breaker-figure{justify-content:center;order:0;align-items:flex-end}
  .pt-breaker-img{max-height:340px;width:auto;max-width:100%}
}

/* -- EINGANGSFRAGEN (Section 5) ------------------------------------ */
.pt-eingangsfragen{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:0}
.eingangsfrage-card{background:rgba(var(--on-dark-rgb),.06);border:1px solid rgba(var(--rose-rgb),.18);border-radius:20px 6px 20px 6px;padding:2.4rem 2rem;display:flex;flex-direction:column;gap:1.2rem;transition:background .25s,transform .25s;cursor:default}
.eingangsfrage-card:hover{background:rgba(var(--on-dark-rgb),.10);transform:translateY(-3px)}
.eingangsfrage-num{font-family:var(--sacr);font-size:2.2rem;color:var(--rose);line-height:1}
.eingangsfrage-text{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.3rem,2.2vw,1.8rem);color:rgba(var(--on-dark-rgb),.92);line-height:1.35}
@media(max-width:768px){.pt-eingangsfragen{grid-template-columns:1fr}}

/* -- BEZIEHUNGSPHASEN CHIPS ---------------------------------------- */
.phase-tags{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}
.phase-tag{font-size:.84rem;font-weight:500;padding:.5rem 1.2rem;border-radius:50px;background:var(--bg2);color:var(--deep);border:1px solid var(--line);transition:background .2s,border-color .2s}
.phase-tag:hover{background:var(--bg3);border-color:var(--rose)}
@media(max-width:680px){.phase-tags{justify-content:center}}


/* -- WEICHE SECTION-UeBERGAeNGE ------------------------------------ */
/* z-index:-1 = hinter Inhalt, aber vor Section-Background         */
/* Harte Kanten bei sec-dark / sec-darkest bleiben                 */

/* Nach base .sec -> sec-warm oder sec-mid */
.sec:not(.sec-warm):not(.sec-mid):not(.sec-dark):not(.sec-darkest) + .sec-warm::before,
.sec:not(.sec-warm):not(.sec-mid):not(.sec-dark):not(.sec-darkest) + .sec-mid::before{content:'';position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,var(--bg),transparent);z-index:-1;pointer-events:none}

/* Nach sec-warm -> base .sec */
.sec-warm + .sec:not(.sec-warm):not(.sec-mid):not(.sec-dark):not(.sec-darkest)::before{content:'';position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,var(--bg2),transparent);z-index:-1;pointer-events:none}

/* Nach sec-warm -> sec-mid */
.sec-warm + .sec-mid::before{content:'';position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,var(--bg2),transparent);z-index:-1;pointer-events:none}

/* Nach sec-mid -> sec-warm oder base .sec */
.sec-mid + .sec-warm::before,
.sec-mid + .sec:not(.sec-warm):not(.sec-mid):not(.sec-dark):not(.sec-darkest)::before{content:'';position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,var(--bg3),transparent);z-index:-1;pointer-events:none}

/* -- ZITAT / PULLOUT ---------------------------------------------- */
.quote-pullout{text-align:center}
.site-quote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.5rem,2.4vw,2.3rem);line-height:1.5;color:var(--heading);border:none;padding:0;margin:0 auto 1.4rem;max-width:740px;display:block}
.site-quote::before{content:'"';display:block;font-family:var(--serif);font-size:4rem;line-height:.6;color:var(--rose);opacity:.5;margin-bottom:.8rem}
.site-quote-cite{font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(var(--dark-rgb),.5);font-style:normal;display:block}
.site-quote-cite::before{content:"- "}

/* -- BEZIEHUNGSCOACHING ------------------------------------------- */

.bc-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--bg) 0%,var(--bg2) 55%,var(--bg3) 100%);padding:calc(clamp(2.5rem,4vw,4rem) + 90px) clamp(1.5rem,4vw,2.5rem) clamp(5rem,8vw,8rem)}

/* 5er Karten-Reihe */
.bc-karten{display:grid;grid-template-columns:repeat(5,1fr);gap:1.2rem;margin-top:2.5rem}
.bc-karte{background:var(--bg);border:1px solid var(--line);border-radius:20px 6px 20px 6px;padding:1.8rem 1.4rem;display:flex;flex-direction:column;gap:.7rem;text-decoration:none;color:inherit;transition:box-shadow .25s,transform .25s}
.bc-karte:hover{box-shadow:0 10px 32px rgba(var(--dark-rgb),.1);transform:translateY(-4px)}
.bc-karte-num{font-family:var(--sacr);font-size:2.4rem;color:var(--rose);line-height:1}
.bc-karte-h{font-family:var(--serif);font-weight:300;font-size:1rem;color:var(--heading);line-height:1.3}
.bc-karte-p{font-size:.84rem;color:var(--txt2);line-height:1.6;flex:1}
.bc-karte-arrow{margin-top:.5rem;font-size:.7rem}
@media(max-width:900px){.bc-karten{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.bc-karten{grid-template-columns:1fr}}

/* Saeulen */
.bc-saeule{padding:clamp(2.5rem,4vw,4rem) 0;border-bottom:1px solid var(--line)}
.bc-saeule:last-child{border-bottom:none;padding-bottom:0}
.bc-saeule-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,2.2vw,2rem);color:var(--heading);margin-bottom:1.4rem;line-height:1.25}
.bc-saeule-h em{color:var(--accent);font-style:italic}

/* Was Sie erwarten duerfen */
.bc-outcomes{display:flex;flex-direction:column;gap:1rem}
.bc-outcome{display:flex;gap:1.4rem;align-items:flex-start}
.bc-outcome-dot{width:8px;height:8px;border-radius:50%;background:var(--rose);flex-shrink:0;margin-top:.55rem}
.bc-outcome p{margin:0;color:var(--txt2);line-height:1.7;font-size:.95rem}

/* Fragen-Grid */
.bc-fragen-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 2.5rem;margin-top:1.2rem}
.bc-frage{font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--heading);line-height:1.5;margin:0;padding-left:1.2rem;border-left:2px solid var(--rose)}
@media(max-width:680px){.bc-fragen-grid{grid-template-columns:1fr}}

/* Stimmen / Testimonial */
.bc-stimme{background:var(--bg2);border-radius:20px 6px 20px 6px;padding:2rem 2.2rem;margin-top:2rem}
.bc-stimme-txt{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.05rem;line-height:1.75;color:var(--heading);margin:0}
.bc-testimonial{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line)}
.bc-testimonial-q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.2rem;line-height:1.6;color:var(--accent);border:none;padding:0;margin:0 0 .8rem}
.bc-testimonial-cite{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(var(--dark-rgb),.38);font-style:normal;display:block}

/* -- BC HERO 2-Spaltig -------------------------------------------- */
.bc-hero-inner{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:clamp(2rem,4vw,5rem);align-items:center;position:relative;z-index:2}
.bc-hero-img{position:relative}
.bc-hero-portrait-wrap{position:relative;z-index:2;height:min(72vh,580px);width:auto;aspect-ratio:4/5;border-radius:48% 48% 6% 6% / 55% 55% 4% 4%;overflow:hidden}
.bc-hero-portrait-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 15%;display:block}
.bc-hero-txt{position:relative;z-index:2}
@media(max-width:800px){.bc-hero-inner{grid-template-columns:1fr}.bc-hero-img{max-width:320px;margin:0 auto}.bc-hero-portrait-wrap{height:min(55vh,380px)}}

/* -- BC PILLAR MODAL ---------------------------------------------- */
.bc-pillars{display:grid;grid-template-columns:repeat(5,1fr);gap:1.4rem;margin-top:3rem;align-items:start}
.bc-pillar{display:flex;flex-direction:column;gap:.75rem;background:var(--bg);border-radius:4px 4px 16px 16px;border-top:3px solid var(--rose);padding:1.8rem 1.4rem 1.6rem;transition:box-shadow .25s,transform .25s}
.bc-pillar:hover{box-shadow:0 10px 32px rgba(var(--dark-rgb),.1);transform:translateY(-4px)}
.bc-pillar-num{font-family:var(--serif);font-style:italic;font-size:2.4rem;color:var(--rose);opacity:.55;line-height:1;margin-bottom:.2rem}
.bc-pillar-h{font-family:var(--serif);font-weight:300;font-size:1rem;color:var(--heading);line-height:1.3}
.bc-pillar-teaser{font-size:.85rem;color:var(--txt2);line-height:1.65;flex:1}
.bc-pillar-btn{margin-top:.8rem;font-size:.7rem;display:inline-flex;align-self:flex-start;white-space:nowrap}
@media(max-width:860px){.bc-pillars{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.bc-pillars{grid-template-columns:1fr}}

/* Modal */
.bc-modal-overlay{position:fixed;inset:0;background:rgba(var(--dark-rgb),.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;padding:1.5rem}
.bc-modal-overlay.open{opacity:1;pointer-events:all}
.bc-modal{background:var(--bg);border-radius:24px 8px 24px 8px;padding:clamp(2rem,4vw,3.5rem);max-width:760px;width:100%;max-height:88vh;overflow-y:auto;position:relative;transform:translateY(24px);transition:transform .3s;scrollbar-width:thin;scrollbar-color:var(--rose) var(--bg2)}
.bc-modal::-webkit-scrollbar{width:6px}
.bc-modal::-webkit-scrollbar-track{background:var(--bg2);border-radius:0 8px 8px 0}
.bc-modal::-webkit-scrollbar-thumb{background:var(--rose);border-radius:3px}
.bc-modal::-webkit-scrollbar-thumb:hover{background:var(--deep)}
.bc-modal-overlay.open .bc-modal{transform:translateY(0)}
.bc-modal-close{position:absolute;top:1rem;right:1rem;font-size:1.2rem;background:none;border:none;color:var(--txt2);cursor:pointer;padding:.3rem .6rem;line-height:1;border-radius:50%}
.bc-modal-close:hover{color:var(--heading);background:var(--bg2)}
.bc-modal h3{font-family:var(--serif);font-weight:300;font-size:clamp(1.4rem,2vw,2rem);color:var(--heading);margin-bottom:1.4rem;line-height:1.2}
.bc-modal h3 em{color:var(--accent);font-style:italic}
.bc-modal p{font-size:.95rem;color:var(--txt2);line-height:1.85;margin-bottom:1.1rem}
.bc-modal p:last-of-type{margin-bottom:0}

/* -- Karten 3-spaltig --------------------------------------------- */
.bc-karten{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.5rem}
@media(max-width:680px){.bc-karten{grid-template-columns:1fr}}

/* -- Zusammenarbeit SVG-Arrows ------------------------------------ */
.bc-outcomes{display:flex;flex-direction:column;gap:1.4rem;margin-top:1.6rem}
.bc-outcome{display:flex;gap:1.4rem;align-items:flex-start}
.bc-outcome p{margin:0;color:var(--txt2);line-height:1.75;font-size:.95rem}


/* ===================================================
   KONTAKT PAGE
   =================================================== */

/* Hero */
.kontakt-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--bg) 0%,var(--bg2) 60%,var(--bg3) 100%);padding:calc(clamp(3rem,5vw,5rem) + 90px) clamp(1.5rem,4vw,2.5rem) clamp(4rem,7vw,7rem);text-align:center}
.kontakt-hero-inner{max-width:760px;margin:0 auto;position:relative;z-index:2}
.kontakt-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem,6vw,5.5rem);line-height:1.05;color:var(--heading);margin:.6rem 0 1.4rem}
.kontakt-hero h1 em{color:var(--accent);font-style:italic}
.kontakt-hero .hero-sub{font-family:var(--sans);font-size:1.05rem;color:var(--txt2);line-height:1.75;max-width:540px;margin:0 auto 2rem}
.kontakt-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:1.4rem}
.kontakt-badge{font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:50px;padding:.45rem 1.1rem;color:var(--mid);backdrop-filter:blur(4px)}

/* Einstieg 2-col */
.kontakt-einstieg{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,7rem);align-items:start}
.kontakt-steps{display:flex;flex-direction:column;gap:1.6rem;margin-top:.2rem}
.kontakt-step{display:grid;grid-template-columns:2rem 1fr;gap:1rem;align-items:start}
.kontakt-step-num{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--rose);opacity:.7;line-height:1;padding-top:.1rem}
.kontakt-step-txt h4{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--heading);margin:0 0 .3rem}
.kontakt-step-txt p{font-size:.94rem;color:var(--txt2);line-height:1.7;margin:0}

/* Formular */
.kontakt-form-wrap{max-width:680px}
.kf-field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.6rem}
.kf-label{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--mid)}
.kf-input,.kf-textarea,.kf-select{width:100%;font-family:var(--sans);font-size:.97rem;color:var(--heading);background:transparent;border:none;border-bottom:1.5px solid var(--line);padding:.65rem 0;outline:none;border-radius:0;transition:border-color .25s;appearance:none;-webkit-appearance:none}
.kf-input:focus,.kf-textarea:focus,.kf-select:focus{border-bottom-color:var(--deep)}
.kf-input::placeholder,.kf-textarea::placeholder{color:rgba(var(--deep-rgb),.35)}
.kf-textarea{min-height:130px;resize:vertical;line-height:1.65}
.kf-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%234E5560' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;padding-right:2rem;cursor:pointer}
.kf-checkbox{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:2rem;cursor:pointer}
.kf-checkbox input{width:16px;height:16px;flex-shrink:0;margin-top:.15rem;accent-color:var(--deep);cursor:pointer}
.kf-checkbox span{font-size:.86rem;color:var(--txt2);line-height:1.6}
.kf-checkbox a{color:var(--deep);text-decoration:underline;text-underline-offset:2px}
.kf-submit{display:inline-block;font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;background:var(--dark);color:var(--bg);border:none;border-radius:50px;padding:1rem 2.8rem;cursor:pointer;transition:background .25s,transform .2s}
.kf-submit:hover{background:var(--darkest);transform:translateY(-2px)}

/* Prozess-Steps nach Formular */
.kontakt-prozess{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 3.5rem;margin-top:3.5rem;padding-top:3rem;border-top:1px solid var(--line)}
.kp-step{display:flex;flex-direction:column;gap:.7rem}
.kp-num{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--rose);opacity:.55;line-height:1}
.kp-h{font-family:var(--sans);font-size:.82rem;font-weight:600;color:var(--heading);letter-spacing:.04em}
.kp-p{font-size:.88rem;color:var(--txt2);line-height:1.65}

/* Praxis */
.kontakt-praxis{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,7rem);align-items:start}
.kpr-info{display:flex;flex-direction:column;gap:2rem}
.kpr-block h4{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:var(--mid);margin:0 0 .5rem}
.kpr-block p{font-size:.97rem;color:var(--txt2);line-height:1.7;margin:.2rem 0}
.kpr-block a{color:var(--deep);text-decoration:none;transition:opacity .2s}
.kpr-block a:hover{opacity:.7}
.kpr-map{border-radius:20px 6px 20px 6px;overflow:hidden;aspect-ratio:4/3;background:var(--bg3);display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}
.kpr-map iframe{width:100%;height:100%;border:0;filter:sepia(.2) contrast(.95)}

/* Abschluss */
.kontakt-close-txt{max-width:600px;margin:0 auto;text-align:center}
.kontakt-close-txt p{font-size:1.05rem;color:rgba(var(--on-dark-rgb),.82);line-height:1.85;margin-bottom:1.2rem}
.kontakt-close-sig{font-family:var(--sacr);font-size:2.8rem;color:var(--rose);display:block;margin-top:1.8rem;opacity:.85}

@media(max-width:900px){
  .kontakt-einstieg{grid-template-columns:1fr}
  .kontakt-praxis{grid-template-columns:1fr}
  .kontakt-prozess{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .kontakt-prozess{grid-template-columns:1fr}
}


/* -- FORM VALIDIERUNG ---------------------------------------- */

.kf-input.kf-error,.kf-textarea.kf-error,.kf-select.kf-error{border-bottom-color:#c0392b}
.kf-err-msg{font-family:var(--sans);font-size:.75rem;color:#c0392b;margin-top:.3rem;display:block}
.kf-checkbox input.kf-error + span{color:#c0392b}
.kf-checkbox .kf-err-msg{margin-left:0}
.kf-success{text-align:center;padding:3rem 2rem}
.kf-success-icon{font-size:2.4rem;color:var(--accent);background:var(--bg2);width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.4rem;font-weight:300}
.kf-success-h{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--heading);margin:0 0 .8rem}
.kf-success-p{font-size:.97rem;color:var(--txt2);line-height:1.75;max-width:480px;margin:0 auto}

/* -- EINSTIEG REDESIGN --------------------------------------- */
.ke-highlight{background:var(--darkest);border-radius:0 8px 8px 0;padding:1.2rem 1.4rem;margin:1.4rem 0;font-size:1rem;color:var(--rose);line-height:1.75;font-style:italic}
.ke-timeline{display:flex;flex-direction:column;gap:0;position:relative}
.ke-timeline::before{content:'';position:absolute;left:18px;top:28px;bottom:28px;width:1px;background:linear-gradient(to bottom,var(--rose),transparent);opacity:.35}
.ke-step{display:grid;grid-template-columns:38px 1fr;gap:1.2rem;padding:0 0 2rem;align-items:start;position:relative}
.ke-step:last-child{padding-bottom:0}
.ke-step-num{width:38px;height:38px;border-radius:50%;background:var(--bg);border:1.5px solid var(--rose);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--rose);flex-shrink:0;position:relative;z-index:1}
.ke-step-txt h4{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--heading);margin:0 0 .35rem;padding-top:.5rem}
.ke-step-txt p{font-size:.94rem;color:var(--txt2);line-height:1.72;margin:0}

.kf-checkbox-wrap{margin-bottom:2rem}
.kf-checkbox-wrap .kf-checkbox{margin-bottom:.4rem}
.kf-checkbox-wrap .kf-err-msg{padding-left:0;display:block}


/* ===================================================
   BILD-BREAKER (Vollbild Hintergrundbild + Quote)
   =================================================== */
.img-breaker{position:relative;background-size:cover;background-position:center;min-height:440px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-attachment:fixed}
.img-breaker::before{content:'';position:absolute;inset:0;background:rgba(var(--darkest-rgb),.58);z-index:1}
.img-breaker-inner{position:relative;z-index:2;max-width:820px;text-align:center;padding:clamp(4rem,8vw,7rem) clamp(1.5rem,4vw,3rem)}
.img-breaker-quote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.55rem,2.6vw,2.7rem);color:rgba(var(--on-dark-rgb),.93);line-height:1.5;margin:0 0 1.6rem;display:block}
.img-breaker-cite{font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:rgba(var(--rose-rgb),.85)}
.img-breaker-cite::before{content:"- "}
/* iOS: kein background-attachment:fixed */
@supports (-webkit-overflow-scrolling:touch){.img-breaker{background-attachment:scroll}}
@media(max-width:768px){.img-breaker{background-attachment:scroll;min-height:360px}}

/* ===================================================
   MOBILE / TABLET RESPONSIVE FIXES
   =================================================== */

/* -- #1 KRITISCH: Hero-Grid auf Mobile ---------------- */

/* -- kpr-block Variante: dunkler Hintergrund -------------------- */
.kpr-block-bg{background:var(--darkest);border:1px solid var(--line);border-radius:12px 4px 12px 4px;padding:1.2rem 1.4rem}
.kpr-block.kpr-block-bg h4,.kpr-block.kpr-block-bg p{color:var(--rose)}

/* hero-grid hatte keinen Mobile-Breakpoint -> Text nur 2fr statt full width */
@media(max-width:768px){
  .hero-grid{grid-template-columns:1fr}
}

/* -- #2 KRITISCH: Kontakt Name/Email Grid ------------- */
/* Inline-Style 1fr 1fr wird durch Klasse ersetzt -> responsive */
.kf-name-email-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2.5rem}
@media(max-width:600px){
  .kf-name-email-grid{grid-template-columns:1fr}
}

/* -- #3 KRITISCH: Paartherapie Wie-ich-arbeite Rows --- */
.pt-arbeite-row{display:grid;grid-template-columns:72px 1fr;gap:1.8rem;align-items:start;padding:2rem 0;border-bottom:1px solid var(--line)}
.pt-arbeite-row--last{border-bottom:none}
@media(max-width:480px){
  .pt-arbeite-row{grid-template-columns:1fr;gap:.8rem;padding:1.6rem 0}
  .pt-arbeite-row > svg{display:none}
}

/* -- #4 WICHTIG: womit-grid Gap auf Mobile ------------ */
@media(max-width:768px){
  .womit-grid{gap:2.5rem}
}

/* -- #5 WICHTIG: Hero Buttons Gap auf Mobile ---------- */
@media(max-width:640px){
  .hero-btns{gap:1.4rem}
}

/* -- #6 WICHTIG: Submit Button full-width auf Mobile -- */
@media(max-width:600px){
  .kf-submit{width:100%;text-align:center}
}

/* -- #7 WICHTIG: Angebotskarten Padding auf Mobile ----- */
@media(max-width:480px){
  .ak1,.ak2,.ak3{padding:2rem 1.5rem}
}


/* #8 FINETUNING: Footer Legal Gap */
@media(max-width:400px){
  .fi-legal{gap:1rem}
}

/* #9 FINETUNING: Breaker Quote kleinere Schrift */
@media(max-width:400px){
  .img-breaker-quote{font-size:1.35rem}
}

/* #10 FINETUNING: Kontakt-Hero H1 auf Mobile */
@media(max-width:480px){
  .kontakt-hero h1{font-size:2.2rem}
}

/* #3b WICHTIG: Button Line-Height + Blob-Form auf Mobile */
@media(max-width:480px){
  .btn{line-height:1.25}
  .btn-p::before,.btn-p::after{inset:-14px -16px}
  .btn-lt::before,.btn-lt::after{inset:-14px -16px}
}

/* grundsaetze-grid */
.grundsaetze-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;margin-top:2rem}
@media(max-width:680px){.grundsaetze-grid{grid-template-columns:1fr}}

/* phase-tags Mobile zentriert */
@media(max-width:680px){.phase-tags{justify-content:center}}

/* ERSTGESPRAECH MODAL */
.eg-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(var(--darkest-rgb),.65);backdrop-filter:blur(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s,visibility .28s}
.eg-modal.is-open{opacity:1;visibility:visible;pointer-events:all}
.eg-modal-box{position:relative;background:var(--bg);border-radius:24px;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;padding:clamp(1.8rem,5vw,3rem);transform:translateY(20px);transition:transform .3s;scrollbar-width:thin;scrollbar-color:var(--rose) var(--bg2)}
.eg-modal-box::-webkit-scrollbar{width:6px}
.eg-modal-box::-webkit-scrollbar-track{background:var(--bg2);border-radius:0 8px 8px 0}
.eg-modal-box::-webkit-scrollbar-thumb{background:var(--rose);border-radius:3px}
.eg-modal-box::-webkit-scrollbar-thumb:hover{background:var(--deep)}
.eg-modal.is-open .eg-modal-box{transform:translateY(0)}
.eg-modal-close{position:absolute;top:1.1rem;right:1.1rem;width:36px;height:36px;border-radius:50%;background:var(--bg2);border:1px solid var(--line);cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;color:var(--mid);transition:background .15s}
.eg-modal-close:hover{background:var(--bg3)}
.eg-modal-header{margin-bottom:1.8rem}
.eg-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
@media(max-width:480px){.eg-grid-2{grid-template-columns:1fr}}
.eg-pill-group{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.6rem}
.eg-pill{cursor:pointer}
.eg-pill input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}
.eg-pill span{display:block;font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:.42rem 1rem;border-radius:50px;background:var(--bg2);border:1px solid var(--line);color:var(--deep);transition:background .15s,border-color .15s,color .15s;cursor:pointer}
.eg-pill input:checked + span{background:var(--deep);color:var(--on-dark);border-color:var(--deep)}
.eg-check-group{display:flex;flex-direction:column;gap:.55rem;margin-top:.6rem}
.eg-check{display:flex;align-items:center;gap:.65rem;cursor:pointer;font-size:.9rem;color:var(--txt2);line-height:1.4}
.eg-check input{accent-color:var(--deep);width:17px;height:17px;cursor:pointer;flex-shrink:0}
.eg-check em{font-style:normal;color:var(--mid);font-size:.8rem;margin-left:.15rem}

/* -- IMG-BREAKER CLAIM BACKGROUNDS -- */
.img-breaker--index{background-image:image-set(url('../assets/claim-bg/ed-stone-flS_PIK3lZ8-unsplash.avif') type('image/avif'),url('../assets/claim-bg/ed-stone-flS_PIK3lZ8-unsplash.webp') type('image/webp'))}
.img-breaker--bc{background-image:image-set(url('../assets/claim-bg/bru-no-seascape-5584115_1920.avif') type('image/avif'),url('../assets/claim-bg/bru-no-seascape-5584115_1920.webp') type('image/webp'))}
.img-breaker--about{background-image:image-set(url('../assets/claim-bg/noname_13-water-lily-1510707_1920.avif') type('image/avif'),url('../assets/claim-bg/noname_13-water-lily-1510707_1920.webp') type('image/webp'))}
.img-breaker--about2{background-image:image-set(url('../assets/claim-bg/truongphong3003-sea-7125929_1920.avif') type('image/avif'),url('../assets/claim-bg/truongphong3003-sea-7125929_1920.webp') type('image/webp'))}
.img-breaker--pt{background-image:image-set(url('../assets/claim-bg/rope-coil-1690313122312.avif') type('image/avif'),url('../assets/claim-bg/rope-coil-1690313122312.webp') type('image/webp'))}
/* -- Micro-Animations (IntersectionObserver) -- */
.ani{opacity:0;transform:translateY(22px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)}
.ani.visible{opacity:1;transform:none}

