/* Behandlungs-Unterseiten – gemeinsames Stylesheet.
   Farb- und Typo-Tokens identisch zur Startseite. */
:root{
  --navy:#2C355E;
  --navy-deep:#20284A;
  --cream:#EFEAE1;
  --cream-warm:#F6F2EB;
  --paper:#FFFFFF;
  --champagne:#C9B08A;
  --champagne-soft:#E5D9C4;
  --ink:#252B45;
  --ink-soft:#5A6180;
  --line:#E3DFD5;
  --r:3px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;color:var(--ink);background:var(--cream-warm);line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Jost',sans-serif;font-weight:400;line-height:1.18;color:var(--navy)}
img{max-width:100%;display:block}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.eyebrow{font-family:'Jost',sans-serif;font-size:.8rem;letter-spacing:.32em;text-transform:uppercase;color:var(--champagne);font-weight:500;margin-bottom:14px}

/* ---------- Kopfbereich ---------- */
.topbar{background:var(--navy);border-bottom:1px solid rgba(255,255,255,.09);padding:8px 0;display:flex;justify-content:center;align-items:center}
.flag-row{display:inline-flex;gap:8px;align-items:center}
.lang-btn{background:none;border:2px solid transparent;border-radius:3px;cursor:pointer;padding:1px;line-height:0;opacity:.55;transition:all .15s}
.lang-btn:hover{opacity:.9}
.lang-btn.active{opacity:1;border-color:var(--champagne)}
.lang-btn svg{display:block;border-radius:2px}
header.site{position:sticky;top:0;z-index:50;background:var(--navy)}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px;gap:20px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{height:46px;width:auto}
.brand-text{font-family:'Jost',sans-serif;color:#F4F1EA;font-weight:300;font-size:1.5rem;letter-spacing:.02em;line-height:1;display:flex;flex-direction:column;gap:5px}
.brand-text .lux{font-weight:300;letter-spacing:.18em;font-size:1.6rem}
.brand-text small{font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:#9AA3C4;font-weight:400;white-space:nowrap}
.nav-links{display:flex;gap:30px;list-style:none;align-items:center}
.nav-links a{text-decoration:none;font-family:'Jost',sans-serif;font-size:.92rem;letter-spacing:.05em;color:#DDE1F0;transition:color .15s}
.nav-links a:hover{color:var(--champagne-soft)}
@media(max-width:860px){.nav-links{display:none}}
@media(max-width:400px){.brand-text{font-size:1.25rem}}

.btn{display:inline-block;font-family:'Jost',sans-serif;background:var(--champagne);color:var(--navy-deep);text-decoration:none;padding:13px 28px;border-radius:2px;font-weight:500;font-size:.94rem;letter-spacing:.04em;border:none;cursor:pointer;transition:all .18s;box-shadow:0 6px 20px rgba(32,40,74,.18)}
.btn:hover{background:#D8C09A;transform:translateY(-1px);box-shadow:0 10px 26px rgba(32,40,74,.24)}

/* ---------- Breadcrumb ---------- */
.breadcrumb{background:var(--cream);border-bottom:1px solid var(--line);font-size:.84rem;padding:12px 0}
.breadcrumb .wrap{display:flex;gap:9px;flex-wrap:wrap;align-items:center;color:var(--ink-soft)}
.breadcrumb a{color:var(--navy);text-decoration:none}
.breadcrumb a:hover{color:var(--champagne)}
.breadcrumb span[aria-hidden]{color:var(--champagne)}

/* ---------- Inhalt ---------- */
main{padding:64px 0 96px}
@media(max-width:720px){main{padding:44px 0 72px}}
.treat{max-width:820px}
.treat h1{font-size:clamp(1.9rem,4.6vw,2.9rem);letter-spacing:.01em;margin-bottom:20px}
.treat .intro{font-size:1.08rem;color:var(--ink-soft);margin-bottom:34px}
.treat h2{font-size:clamp(1.3rem,2.6vw,1.65rem);margin:44px 0 18px}

.tmeta{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.tmeta{grid-template-columns:1fr}}
.tmeta div{background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:16px 18px;font-size:.92rem}
.tmeta b{font-family:'Jost',sans-serif;display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--champagne);margin-bottom:4px;font-weight:500}

.tfact{background:#FBF6EC;border:1px solid var(--champagne-soft);border-radius:2px;padding:16px 18px;font-size:.92rem;margin-top:16px;color:var(--ink-soft)}
.tfact b{font-family:'Jost',sans-serif;display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--champagne);margin-bottom:5px;font-weight:500}

.tsteps{list-style:none;display:grid;gap:12px}
.tsteps li{background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:16px 18px 16px 52px;position:relative;font-size:.95rem;color:var(--ink-soft)}
.tsteps li::before{content:attr(data-n);position:absolute;left:16px;top:14px;width:24px;height:24px;border-radius:50%;background:var(--navy);color:var(--champagne-soft);font-family:'Jost',sans-serif;font-size:.8rem;display:flex;align-items:center;justify-content:center}

.treat-cta{margin-top:44px;background:linear-gradient(160deg,var(--navy),var(--navy-deep));border-radius:4px;padding:36px;text-align:center;box-shadow:0 26px 56px rgba(44,53,94,.22)}
.treat-cta .btn{width:100%;max-width:340px}
.tnote{font-size:.78rem;color:#AEB4CE;margin-top:18px;max-width:60ch;margin-left:auto;margin-right:auto}

/* ---------- Verwandte Behandlungen ---------- */
.related{margin-top:56px;border-top:1px solid var(--line);padding-top:8px}
.rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.rel-card{background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:16px 18px;text-decoration:none;transition:all .2s;display:block}
.rel-card:hover{border-color:var(--champagne);transform:translateY(-2px);box-shadow:0 14px 30px rgba(44,53,94,.1)}
.rel-cat{font-family:'Jost',sans-serif;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--champagne);display:block;margin-bottom:5px}
.rel-card b{font-family:'Jost',sans-serif;font-weight:500;color:var(--navy);font-size:1rem}
.back-link{margin-top:28px;font-size:.9rem}
.back-link a{color:var(--navy)}

/* ---------- Footer ---------- */
footer{background:var(--navy);color:#9AA1BF;padding:56px 0 32px;font-size:.88rem}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:44px;margin-bottom:36px}
@media(max-width:720px){.foot-grid{grid-template-columns:1fr}}
footer h4{color:var(--champagne-soft);font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:.82rem;margin-bottom:16px}
footer a{color:#C4C9DD;text-decoration:none}
footer a:hover{color:var(--champagne-soft)}
footer ul{list-style:none;display:grid;gap:9px}
footer .brand{margin-bottom:18px}
.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.82rem}

/* ---------- Mobile-CTA ---------- */
.mobile-cta{display:none}
@media(max-width:720px){
  .mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:rgba(32,40,74,.92);backdrop-filter:blur(12px);padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.12)}
  .mobile-cta a{flex:1;text-align:center;padding:13px 10px;font-size:.9rem}
  body{padding-bottom:74px}
}

@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;animation:none!important}}
:focus-visible{outline:2px solid var(--champagne);outline-offset:2px}

/* ============ Editorial-Refit ============ */
.treat h1{font-size:clamp(2.1rem,5.4vw,3.4rem);letter-spacing:-.025em;line-height:1.06}
.treat h2{letter-spacing:-.02em;line-height:1.1}
.eyebrow{display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";flex:0 0 34px;height:9px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 9'%3E%3Cpath d='M1 6.2C6 3.1 9.4 6.6 14.2 4.1 19 1.6 22.1 7.4 27 4.6c2-1.1 4-1.7 6-1.5' fill='none' stroke='%23C9B08A' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E")}
.btn{box-shadow:none}
.btn:hover{transform:none;box-shadow:none}
.rel-card{transition:border-color .25s ease}
.rel-card:hover{transform:none;box-shadow:none;border-color:var(--champagne)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9;opacity:.055;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
@media(prefers-reduced-motion:reduce){body::after{display:none}}
