/* =====================================================================
   Zahnarztpraxis Mensch im Mittelpunkt – Mobile-Startseite
   App-Look: warmes Dunkel, Sandton-Akzent, feste Kacheln. styles.css bleibt unberührt.
   ===================================================================== */
/* Kyrillisch (RU): Vollkorn ersetzt Fraunces, Inter-Cyrillic-Subset */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/vollkorn-normal-500-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:300 600;font-display:swap;src:url(/fonts/vollkorn-italic-500-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-normal-400-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/fraunces-italic-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/fraunces-italic-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/fraunces-normal-300-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/fraunces-normal-300-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-normal-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-normal-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  color-scheme:dark;
  --bg:#161412;
  --surface:#23201D;
  --surface-2:#2D2925;
  --line:rgba(255,255,255,.07);
  --line-strong:rgba(255,255,255,.12);
  --raised:linear-gradient(180deg,#2A2624 0%,#221F1C 100%);
  --raised-shadow:0 1px 0 rgba(255,255,255,.07) inset,0 -1px 0 rgba(0,0,0,.35) inset,0 12px 26px -16px rgba(0,0,0,.85);
  --text:#F3EEE7;
  --muted:#9C9389;
  --faint:#6F675F;
  --sand:#D3BD9C;
  --sand-deep:#BFA783;
  --on-sand:#1B1815;
  --wa:#25D366;
  --pad:18px;
  --r:22px;
  --r-sm:16px;
  --topbar:64px;
  --tab:72px;
  --sat:env(safe-area-inset-top,0px);
  --sab:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg);}
body{
  font-family:'Inter',system-ui,sans-serif;font-size:14.5px;line-height:1.55;color:var(--text);background:var(--bg);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100svh;
  padding-bottom:calc(var(--tab) + var(--sab) + 16px);
}
img,video{max-width:100%;height:auto;display:block;}
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(90% 40% at 15% 0%, rgba(211,189,156,.13) 0%, transparent 60%),
    radial-gradient(70% 45% at 100% 35%, rgba(120,88,60,.22) 0%, transparent 60%),
    radial-gradient(80% 50% at 0% 75%, rgba(80,70,62,.35) 0%, transparent 60%),
    radial-gradient(90% 40% at 60% 105%, rgba(211,189,156,.08) 0%, transparent 60%),
    var(--bg);
}
.bg::after{content:"";position:absolute;inset:0;opacity:.35;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .07 0'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>");}
main{position:relative;z-index:1;}
.topbar,.sheet,.tab-wrap{z-index:60;}
.tab-wrap{z-index:55;}
.sheet{z-index:58;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}
:focus-visible{outline:2px solid var(--sand);outline-offset:3px;border-radius:8px;}
h1,h2,h3{font-family:'Inter',system-ui,sans-serif;font-weight:500;letter-spacing:-0.02em;line-height:1.15;color:var(--text);}
.serif{font-family:'Fraunces',Georgia,serif;font-weight:500;letter-spacing:-.01em;}
em{font-style:italic;font-family:'Fraunces',Georgia,serif;color:var(--sand);}
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}

/* ---------- Topbar ---------- */
.topbar{position:fixed;top:0;left:0;right:0;z-index:60;padding-top:var(--sat);transition:background .3s ease,border-color .3s ease;border-bottom:1px solid transparent;}
.topbar.is-solid{background:rgba(22,20,18,.92);border-bottom-color:var(--line);}
.topbar-inner{height:var(--topbar);display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 var(--pad);}
.brand{display:flex;align-items:center;gap:8px;min-height:44px;}
.brand .brand-icon{height:42px;width:auto;}
.brand .brand-text{height:32px;width:auto;filter:brightness(0) invert(1);}
.topbar-actions{display:flex;align-items:center;gap:8px;}
.icon-btn{
  width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;
  background:rgba(22,20,18,.55);border:1px solid rgba(255,255,255,.12);color:var(--text);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.topbar.is-solid .icon-btn{background:var(--surface);border-color:var(--line);}
.icon-btn .icon{width:19px;height:19px;}
.call-btn{
  position:relative;height:40px;padding:0 14px 0 11px;border-radius:999px;display:inline-flex;align-items:center;gap:7px;
  background:linear-gradient(180deg,#DCC8A9,#C9B18F);color:var(--on-sand);font-size:13px;font-weight:600;
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 8px 18px -10px rgba(211,189,156,.6);
}
.call-btn .icon{width:16px;height:16px;stroke:var(--on-sand);}
.call-btn::before{content:"";position:absolute;inset:-3px;border-radius:999px;border:1.5px solid rgba(211,189,156,.55);animation:ring 2.6s ease-out infinite;pointer-events:none;}
@keyframes ring{0%{transform:scale(.92);opacity:.8;}70%{transform:scale(1.18);opacity:0;}100%{transform:scale(1.18);opacity:0;}}
.menu-btn{flex-direction:column;gap:5px;}
.menu-btn span{display:block;width:18px;height:1.6px;background:currentColor;border-radius:2px;transition:transform .3s ease,opacity .3s ease;}
body.menu-open .menu-btn span:nth-child(1){transform:translateY(6.6px) rotate(45deg);}
body.menu-open .menu-btn span:nth-child(2){opacity:0;}
body.menu-open .menu-btn span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 18px;border-radius:999px;
  font-weight:600;font-size:15px;line-height:1.2;border:1px solid transparent;white-space:nowrap;
  transition:transform .15s ease,background .2s ease;-webkit-tap-highlight-color:transparent;
}
.btn:active{transform:scale(.98);}
.btn .icon{width:18px;height:18px;}
.btn-sand{background:linear-gradient(180deg,#DCC8A9,#C9B18F);color:var(--on-sand);box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 10px 22px -12px rgba(211,189,156,.45);}
.btn-sand .icon{stroke:var(--on-sand);}
.btn-dark{background:var(--raised);color:var(--text);border-color:rgba(255,255,255,.12);box-shadow:var(--raised-shadow);}
.btn-block{width:100%;white-space:normal;text-align:center;line-height:1.25;padding-top:10px;padding-bottom:10px;}
.btn-arrow.btn-block{text-align:left;}
.btn{max-width:100%;}
.btn-arrow{justify-content:space-between;padding:0 8px 0 22px;}
.btn-arrow .arrow{width:40px;height:40px;border-radius:50%;background:var(--on-sand);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.btn-arrow .arrow .icon{width:16px;height:16px;stroke:var(--sand);}
.btn-wa .icon{fill:var(--wa);stroke:none;}

/* ---------- Abschnitte ---------- */
.sec{padding:28px 0 0;}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 var(--pad);margin-bottom:14px;}
.sec-head h2{font-size:19px;}
.sec-head.big{display:block;margin-bottom:12px;}
.sec-head.big h2{font-size:24px;margin-top:8px;}
.sec-head.big p{font-size:13.5px;color:var(--muted);margin-top:8px;}
.sec-head .all{font-size:12.5px;color:var(--muted);min-height:32px;display:inline-flex;align-items:center;}
.sec-lead{padding:0 var(--pad);margin:-6px 0 14px;font-size:13.5px;color:var(--muted);}
.actions{display:flex;flex-direction:column;gap:10px;padding:14px var(--pad) 0;}
.eyebrow{display:block;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);}

/* ---------- Hero: Bildwechsler mit unseren Praxisfotos ---------- */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 var(--pad) 26px;overflow:hidden;}
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--bg);}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease;}
.slide.on{opacity:1;}
/* Unschärfe-Verlängerung: dasselbe Foto füllt weich den ganzen Hero, darüber das scharfe Bild */
.slide .blur{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(28px) saturate(1.1) brightness(.62);}
.slide .pic{position:absolute;top:0;left:0;width:100%;aspect-ratio:1.075;object-fit:cover;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 55%,rgba(0,0,0,.55) 78%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 55%,rgba(0,0,0,.55) 78%,transparent 100%);}
.hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to bottom,rgba(22,20,18,.5) 0%,rgba(22,20,18,.08) 12%,rgba(22,20,18,0) 24%,rgba(22,20,18,.2) 44%,rgba(22,20,18,.6) 62%,rgba(22,20,18,.9) 82%,var(--bg) 100%);}
.hero-copy{position:relative;z-index:2;}
.hero-copy h1{font-size:clamp(1.95rem,8.4vw,2.5rem);max-width:20ch;color:#FFFDF9;text-shadow:0 2px 18px rgba(0,0,0,.55);}
.hero-copy h1 em{color:var(--sand);}
.hero-copy p{margin-top:12px;color:#EFE8DD;font-size:15.5px;line-height:1.55;max-width:32ch;text-shadow:0 1px 10px rgba(0,0,0,.6);}
.hero-copy .eyebrow{margin-bottom:10px;text-shadow:0 1px 8px rgba(0,0,0,.6);}
.hero-cta{display:flex;flex-direction:column;gap:10px;margin-top:22px;}
.hero-cta-row{display:flex;gap:10px;}
.hero-cta-row .btn{flex:1;padding:0 12px;font-size:14px;min-height:50px;}
.hero-dots{position:relative;z-index:2;display:flex;justify-content:center;gap:6px;margin-top:20px;}
.hero-dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.28);transition:width .3s ease,background .3s ease;}
.hero-dots span.on{width:18px;border-radius:3px;background:var(--sand);}

/* ---------- Kachel-Reihe (Bereiche) ---------- */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 var(--pad);}
.tile{
  aspect-ratio:1/1.05;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:8px 6px;
}
.tile .icon{width:24px;height:24px;stroke:#EDE6DA;}
.tile span{font-size:11px;color:var(--text);line-height:1.2;}
.tile.plus .icon{stroke:var(--text);}

/* ---------- Schnellkarten (Termin, WhatsApp) ---------- */
.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 var(--pad);}
.qcard{
  position:relative;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);
  padding:16px 14px 14px;min-height:150px;overflow:hidden;display:flex;flex-direction:column;
}
.qcard h3{font-size:15px;}
.qcard p{font-size:11.5px;color:var(--muted);margin-top:4px;max-width:14ch;}
.qcard .arrow{margin-top:auto;width:36px;height:36px;border-radius:50%;background:var(--sand);display:inline-flex;align-items:center;justify-content:center;}
.qcard .arrow .icon{width:15px;height:15px;stroke:var(--on-sand);}
.qcard.wa .arrow{background:var(--wa);}
.qcard.wa .arrow .icon{stroke:#0B2A13;}
.qcard img{position:absolute;right:-6px;bottom:-4px;width:88px;height:88px;object-fit:cover;border-radius:14px;opacity:.95;}
.qcard img.round{border-radius:50%;width:78px;height:78px;right:8px;bottom:8px;}

/* ---------- Horizontale Reihen (Technologie, Räume, Stimmen) ---------- */
.rail{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0 var(--pad);padding:0 var(--pad) 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.rail::-webkit-scrollbar{display:none;}
.rail > *{scroll-snap-align:start;flex:0 0 auto;}
.thumb{position:relative;width:150px;aspect-ratio:3/4;border-radius:var(--r-sm);overflow:hidden;background:var(--surface);border:1px solid rgba(255,255,255,.1);box-shadow:0 14px 28px -16px rgba(0,0,0,.9);}
.thumb img,.thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.thumb video{opacity:0;transition:opacity .6s ease;}
.thumb video.is-playing{opacity:1;}
.thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(22,20,18,.92) 0%,rgba(22,20,18,.35) 40%,transparent 65%);pointer-events:none;}
.thumb-cap{position:absolute;left:10px;right:10px;bottom:10px;z-index:1;}
.thumb-cap strong{display:block;font-size:12px;font-weight:600;line-height:1.25;}
.thumb-cap small{display:block;font-size:10.5px;color:var(--muted);margin-top:2px;}
.thumb.wide{width:200px;aspect-ratio:4/5;}
.review{width:min(78vw,300px);border-radius:var(--r);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);padding:16px 16px 14px;display:flex;flex-direction:column;gap:10px;}
.review-head{display:flex;align-items:center;justify-content:space-between;}
.review .stars{display:inline-flex;gap:2px;}
.review .stars svg{width:13px;height:13px;fill:var(--sand);}
.review .g{width:20px;height:20px;}
.review blockquote{font-size:13.5px;line-height:1.5;color:var(--text);}
.review footer{font-size:12px;color:var(--muted);}
.review footer strong{color:var(--text);font-weight:600;}

/* ---------- Karten / Listen ---------- */
.card{margin:0 var(--pad);border-radius:var(--r);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);overflow:hidden;}
.media{position:relative;aspect-ratio:16/9;background:var(--surface-2);}
.media img,.media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.media .replay{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;background:rgba(22,20,18,.8);border:1px solid var(--line-strong);font-size:12px;font-weight:600;}
.media .replay .icon{width:13px;height:13px;}
.steps{padding:4px 14px;}
.steps li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:center;padding:11px 0;font-size:13.5px;line-height:1.35;}
.steps li + li{border-top:1px solid var(--line);}
.steps span{width:30px;height:30px;border-radius:50%;border:1px solid var(--line-strong);color:var(--sand);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;transition:background .3s ease,color .3s ease;}
.steps li.is-done span{background:var(--sand);color:var(--on-sand);border-color:transparent;}
.note{padding:12px var(--pad) 0;font-size:12px;color:var(--muted);}
.logos{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;margin:14px var(--pad) 0;padding:12px 14px;border-radius:var(--r-sm);background:#F3EEE7;}
.logos img{height:30px;width:auto;}

.team-photo{margin:0 var(--pad);border-radius:var(--r);overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 14px 28px -16px rgba(0,0,0,.9);}
.team-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.docs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px var(--pad) 0;}
.doc{border-radius:var(--r);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);padding:8px 8px 12px;}
.doc img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 0;border-radius:14px;}
.doc .eyebrow{margin:10px 4px 0;font-size:10.5px;}
.doc h3{font-size:14.5px;margin:3px 4px 0;}

/* ---------- Kontakt („Schedule“-Karte) ---------- */
.contact{margin:0 var(--pad);padding:18px 16px 16px;}
.contact h2{font-size:19px;margin-bottom:4px;}
.contact .sub{font-size:13px;color:var(--muted);}
.hours{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;}
.hours div{padding:12px 14px;border-radius:var(--r-sm);background:linear-gradient(180deg,#332E2A,#2A2623);box-shadow:0 1px 0 rgba(255,255,255,.06) inset;}
.hours small{display:block;font-size:11px;color:var(--muted);letter-spacing:.04em;}
.hours strong{display:block;font-size:17px;font-weight:500;margin-top:4px;}
.crow{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;padding:12px 0;}
.crow + .crow{border-top:1px solid var(--line);}
.crow .icon{stroke:var(--sand);margin-top:1px;}
.crow strong{display:block;font-weight:600;font-size:14px;}
.crow small{display:block;color:var(--muted);font-size:12.5px;line-height:1.5;margin-top:2px;}
.crow a{border-bottom:1px solid rgba(205,184,152,.4);}
.crows{margin-top:12px;}
.contact .actions{padding:14px 0 0;}
.tip{margin-top:12px;font-size:12px;color:var(--muted);}
.tip strong{color:var(--text);}

/* ---------- Footer ---------- */
.foot{margin:28px var(--pad) 0;padding:26px 18px 22px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);text-align:center;color:var(--muted);}
.foot img{width:48px;height:48px;margin:0 auto 12px;}
.foot .name{font-size:17px;color:var(--text);}
.foot .name em{color:var(--sand);}
.foot .tag{font-size:12.5px;margin-top:4px;}
.foot .follow{margin-top:18px;font-size:13.5px;color:var(--text);}
.foot .insta{display:inline-flex;align-items:center;gap:9px;margin-top:8px;min-height:42px;padding:0 16px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line-strong);font-size:13px;font-weight:600;color:var(--text);}
.foot .insta svg{width:17px;height:17px;fill:currentColor;}
.foot .legal{display:flex;justify-content:center;gap:18px;margin-top:18px;font-size:12.5px;color:var(--text);}
.foot .legal a{min-height:32px;display:inline-flex;align-items:center;}
.foot .copy{font-size:11.5px;color:var(--faint);margin-top:10px;}
.foot .desktop{display:inline-block;margin-top:8px;font-size:12px;text-decoration:underline;text-underline-offset:3px;}

/* ---------- Tab-Leiste unten ---------- */
.tab-wrap{position:fixed;left:0;right:0;top:0;z-index:55;height:100vh;height:100dvh;display:flex;align-items:flex-end;justify-content:center;padding:0 14px calc(var(--sab) + 12px);pointer-events:none;}
.tabbar{
  position:relative;width:100%;max-width:520px;pointer-events:auto;
  display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:6px;padding:6px;border-radius:999px;
  background:linear-gradient(180deg,#2B2724,#211E1B);border:1px solid rgba(255,255,255,.12);box-shadow:0 1px 0 rgba(255,255,255,.07) inset,0 18px 40px -18px rgba(0,0,0,.95);
  transform:translateY(130%);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s ease;
}
.tabbar.is-visible{transform:none;opacity:1;}
body.menu-open .tabbar{transform:translateY(130%);opacity:0;}
.tabbar a{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text);}
.tabbar a .icon{width:18px;height:18px;}
.tabbar a.wa .icon{fill:var(--wa);stroke:none;}
.tabbar a.main{background:var(--sand);color:var(--on-sand);}
.tabbar a.main .icon{stroke:var(--on-sand);}

/* ---------- Menü ---------- */
.sheet{position:fixed;inset:0;z-index:58;background:rgba(22,20,18,.98);padding:calc(var(--topbar) + var(--sat) + 8px) var(--pad) calc(var(--sab) + 28px);overflow-y:auto;overscroll-behavior:contain;
  opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s ease,transform .4s cubic-bezier(.2,.8,.2,1),visibility 0s linear .4s;}
body.menu-open .sheet{opacity:1;visibility:visible;transform:none;transition:opacity .25s ease,transform .4s cubic-bezier(.2,.8,.2,1);}
body.menu-open{overflow:hidden;}
.sheet nav > a,.sheet details > summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 4px;border-bottom:1px solid var(--line);font-size:20px;font-weight:500;letter-spacing:-.01em;list-style:none;cursor:pointer;}
.sheet summary::-webkit-details-marker{display:none;}
.sheet summary .icon,.sheet nav > a .icon{stroke:var(--muted);transition:transform .3s ease;}
.sheet details[open] summary .icon{transform:rotate(180deg);}
.sheet .sub{padding:6px 0 14px;display:grid;gap:2px;}
.sheet .sub a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;font-size:15px;}
.sheet .sub a:active{background:var(--surface);}
.sheet .grp{margin-top:10px;padding:0 12px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sand);}
.sheet .sheet-cta{display:flex;flex-direction:column;gap:10px;margin-top:22px;}
.sheet .langs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px;}
.sheet .langs a{min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:12px;font-size:13px;font-weight:600;background:var(--surface);border:1px solid var(--line-strong);}
.sheet .langs a.on{background:var(--sand);color:var(--on-sand);border-color:var(--sand);}
.sheet .meta{margin-top:20px;font-size:13px;color:var(--muted);text-align:center;line-height:1.7;}
.sheet .meta a{color:var(--text);font-weight:600;}

/* ---------- Sanftes Einblenden beim Scrollen ---------- */
@supports (animation-timeline: view()){
  .rise{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 55%;}
}
@keyframes rise{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
.no-sda .rise{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease;}
.no-sda .rise.in{opacity:1;transform:none;}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none !important;transition:none !important;}
  .rise,.no-sda .rise{opacity:1;transform:none;}
  video{display:none !important;}
  .tabbar{transform:none;opacity:1;}
}
@media (min-width: 520px){
  :root{--pad:26px;}
  .tiles{grid-template-columns:repeat(4,1fr);}
  .thumb{width:180px;}
}

/* Farbwelt B9: Salbei hell – Überschreibungen zu mobile.css */
:root{
  color-scheme:light;
  --bg:#E6E9E2;--surface:#F3F5EF;--surface-2:#EAEDE6;
  --line:rgba(30,42,36,.1);--line-strong:rgba(30,42,36,.16);
  --text:#1E2A24;--muted:#5C6A62;--faint:#8A958E;
  --sand:#2B3B33;--sand-deep:#1E2A24;--on-sand:#F3F5EF;
  --raised:linear-gradient(180deg,#FBFCF9 0%,#F0F3ED 100%);
  --raised-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 -1px 0 rgba(30,42,36,.06) inset,0 12px 26px -18px rgba(30,42,36,.35);
}
html,body{background:var(--bg);}
h1,h2,h3{color:var(--text);}
em{color:#B5673F;}
.bg{background:
  radial-gradient(90% 40% at 15% 0%, rgba(255,255,255,.7) 0%, transparent 60%),
  radial-gradient(70% 45% at 100% 35%, rgba(181,103,63,.08) 0%, transparent 60%),
  radial-gradient(80% 50% at 0% 75%, rgba(94,122,107,.16) 0%, transparent 60%),
  var(--bg);}
.bg::after{opacity:.18;}
.eyebrow{color:#5E7A6B;}
.hero-copy h1{font-family:'Fraunces',Georgia,serif;font-weight:300;letter-spacing:-.01em;font-size:clamp(2.1rem,9vw,2.7rem);line-height:1.08;color:#1E2A24;text-shadow:none;}
.hero-copy h1 em{color:#B5673F;}
.hero-copy .eyebrow{color:#5E7A6B;text-shadow:none;}
.hero-copy p{color:#4E5A53;text-shadow:none;}
.hero-shade{background:linear-gradient(to bottom,rgba(230,233,226,.35) 0%,rgba(230,233,226,.05) 12%,rgba(230,233,226,0) 24%,rgba(230,233,226,.35) 44%,rgba(230,233,226,.8) 62%,rgba(230,233,226,.96) 82%,var(--bg) 100%);}
.slide .blur{filter:blur(28px) saturate(1.05) brightness(1.02);}
.hero-slides{background:var(--bg);}
.hero-dots span{background:rgba(30,42,36,.2);}
.hero-dots span.on{background:#B5673F;}
.btn-sand{background:linear-gradient(180deg,#2F3F37,#1E2A24);color:#F3F5EF;box-shadow:0 1px 0 rgba(255,255,255,.12) inset,0 10px 22px -12px rgba(30,42,36,.45);}
.btn-sand .icon{stroke:#F3F5EF;}
.btn-sand .arrow{background:#F3F5EF;}
.btn-sand .arrow .icon{stroke:#1E2A24;}
.btn-dark{background:#FFFFFF;color:#1E2A24;border-color:#CBD2C6;box-shadow:0 8px 18px -12px rgba(30,42,36,.25);}
.call-btn{background:linear-gradient(180deg,#2F3F37,#1E2A24);color:#F3F5EF;box-shadow:0 1px 0 rgba(255,255,255,.12) inset,0 8px 18px -10px rgba(30,42,36,.5);}
.call-btn .icon{stroke:#F3F5EF;}
.call-btn::before{border-color:rgba(30,42,36,.35);}
.topbar.is-solid{background:rgba(230,233,226,.92);border-bottom-color:var(--line);}
.icon-btn{background:rgba(255,255,255,.7);border-color:rgba(30,42,36,.12);color:#1E2A24;}
.topbar.is-solid .icon-btn{background:#F3F5EF;}
.brand .brand-icon{filter:brightness(0) opacity(.9);}
.brand .brand-text{filter:none;}
.tile{border-color:rgba(30,42,36,.08);}
.tile .icon{stroke:#1E2A24;}
.tile span{color:#1E2A24;}
.sec-head .all{color:var(--muted);}
.review .stars svg{fill:#B5673F;}
.review .g{opacity:1;}
.thumb{border-color:rgba(30,42,36,.1);box-shadow:0 14px 28px -18px rgba(30,42,36,.4);}
.team-photo{border-color:rgba(30,42,36,.1);box-shadow:0 14px 28px -18px rgba(30,42,36,.4);}
.doc{border-color:rgba(30,42,36,.08);}
.doc .eyebrow{color:#5E7A6B;}
.steps span{border-color:rgba(30,42,36,.2);color:#B5673F;}
.steps li.is-done span{background:#2B3B33;color:#F3F5EF;}
.media .replay{background:rgba(255,255,255,.9);border-color:rgba(30,42,36,.12);color:#1E2A24;}
.logos{background:#FFFFFF;border:1px solid rgba(30,42,36,.08);}
.hours div{background:linear-gradient(180deg,#FFFFFF,#F0F3ED);border:1px solid rgba(30,42,36,.08);box-shadow:none;}
.crow .icon{stroke:#5E7A6B;}
.crow a{border-bottom-color:rgba(181,103,63,.45);}
.tip strong{color:var(--text);}
.foot{border-color:rgba(30,42,36,.08);}
.foot img{filter:brightness(0) opacity(.85);}
.foot .name{color:var(--text);}
.foot .name em{color:#B5673F;}
.foot .insta{background:#FFFFFF;border-color:#CBD2C6;color:#1E2A24;}
.foot .legal{color:#1E2A24;}
.tabbar{background:linear-gradient(180deg,#FFFFFF,#F0F3ED);border-color:rgba(30,42,36,.12);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 18px 40px -18px rgba(30,42,36,.45);}
.tabbar a{color:#1E2A24;}
.tabbar a.main{background:linear-gradient(180deg,#2F3F37,#1E2A24);color:#F3F5EF;}
.tabbar a.main .icon{stroke:#F3F5EF;}
.sheet{background:rgba(230,233,226,.98);}
.sheet summary .icon,.sheet nav > a .icon{stroke:var(--muted);}
.sheet .grp{color:#5E7A6B;}
.sheet .langs a.on{background:#1E2A24;color:#F3F5EF;border-color:#1E2A24;}
.sheet .meta a{color:var(--text);}
.menu-btn span{background:#1E2A24;}
.rail .thumb-cap strong,.rail .thumb-cap small{color:#fff;}
.thumb-cap small{color:rgba(255,255,255,.75);}


/* =====================================================================
   Unterseiten (Behandlungen, Ärzte, Team, Praxis, Leistungen, Kontakt, Werdegang, Rechtliches)
   ===================================================================== */
.page-head{padding:calc(var(--topbar) + var(--sat) + 22px) var(--pad) 6px;}
.page-head .eyebrow{margin-bottom:8px;}
.page-head h1{font-family:'Fraunces',Georgia,serif;font-weight:300;letter-spacing:-.01em;font-size:clamp(1.9rem,8vw,2.4rem);line-height:1.1;}
.page-head p{margin-top:12px;color:var(--muted);font-size:15px;line-height:1.55;}
.back{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 var(--pad);font-size:13px;color:var(--muted);}
.back .icon{width:15px;height:15px;}
.lead{margin:14px var(--pad) 0;padding:16px 16px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);font-size:15.5px;line-height:1.6;color:var(--text);}
.prose{padding:8px var(--pad) 0;font-size:15px;line-height:1.7;color:var(--text);}
.prose h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:23px;line-height:1.15;margin:30px 0 10px;}
.prose h3{font-size:16px;font-weight:600;margin:22px 0 6px;}
.prose p{margin:0 0 12px;}
.prose ul,.prose ol{margin:0 0 14px;padding-left:2px;}
.prose li{position:relative;padding-left:20px;margin:0 0 8px;}
.prose ul li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50%;background:#B5673F;}
.prose ol{counter-reset:li;}
.prose ol li::before{counter-increment:li;content:counter(li) ".";position:absolute;left:0;top:0;color:#B5673F;font-weight:600;}
.prose a{color:#1E2A24;border-bottom:1px solid rgba(181,103,63,.45);}
.prose strong{font-weight:600;}
.prose .legal-card{margin:8px 0 14px;padding:14px 16px;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(30,42,36,.08);}
.prose .legal-card p{margin:0 0 6px;}
.cta-card{margin:28px var(--pad) 0;padding:20px 16px 16px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);}
.cta-card h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:22px;line-height:1.15;}
.cta-card .actions{padding:14px 0 0;}
.doccard{margin:16px var(--pad) 0;padding:10px 10px 16px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);}
.doccard img.photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 12%;border-radius:16px;}
.doccard .eyebrow{margin:14px 6px 0;}
.doccard h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:24px;margin:4px 6px 0;}
.doccard blockquote{margin:12px 6px 0;padding:12px 14px;border-left:2px solid #B5673F;font-family:'Fraunces',Georgia,serif;font-size:15.5px;line-height:1.5;color:var(--text);background:rgba(181,103,63,.06);border-radius:0 12px 12px 0;}
.doccard .bio{margin:12px 6px 0;font-size:14.5px;line-height:1.6;color:var(--muted);}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:12px 6px 0;}
.chips .lbl{width:100%;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2px;}
.chips span{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 10px;border-radius:999px;background:#FFFFFF;border:1px solid rgba(30,42,36,.1);font-size:12.5px;}
.members{display:grid;gap:8px;margin:14px 6px 0;}
.members > div{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;padding:8px 10px;border-radius:12px;background:#FFFFFF;border:1px solid rgba(30,42,36,.08);}
.members img{width:56px;height:36px;object-fit:contain;}
.members p{font-size:12px;color:var(--muted);line-height:1.35;}
.doccard .actions{padding:14px 0 0;}
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px var(--pad) 0;}
.tcard{border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);padding:8px 8px 12px;}
.tcard img,.tcard .ph{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 15%;border-radius:14px;}
.tcard .ph{display:flex;align-items:center;justify-content:center;background:#EAEDE6;color:var(--muted);font-size:12px;}
.tcard h3{font-size:15px;margin:10px 4px 0;}
.tcard p{font-size:12px;color:var(--muted);margin:2px 4px 0;line-height:1.4;}
.tcard .langs{font-size:11.5px;color:var(--muted);margin:6px 4px 0;}
.note-card{margin:16px var(--pad) 0;padding:14px 16px;border-radius:var(--r-sm);background:rgba(94,122,107,.1);font-size:13.5px;color:var(--text);line-height:1.55;}
.gallery{columns:2;column-gap:10px;padding:12px var(--pad) 0;}
.gallery img{width:100%;border-radius:14px;margin-bottom:10px;border:1px solid rgba(30,42,36,.08);break-inside:avoid;}
.svc-cat{padding:22px var(--pad) 0;}
.svc-cat h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:22px;margin-bottom:10px;}
.svc-list{display:grid;gap:8px;}
.svc-list a{display:grid;grid-template-columns:1fr 18px;gap:10px;align-items:center;padding:13px 14px;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);}
.svc-list h3{font-size:15px;}
.svc-list p{font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.4;}
.svc-list .icon{width:18px;height:18px;stroke:var(--muted);}
.timeline{margin:16px var(--pad) 0;padding:6px 0;}
.tl-item{display:grid;grid-template-columns:78px 1fr;gap:12px;padding:12px 0;border-top:1px solid rgba(30,42,36,.1);}
.tl-item:first-child{border-top:0;}
.tl-item .year{font-size:12.5px;font-weight:600;color:#B5673F;padding-top:2px;}
.tl-item h3{font-size:15px;}
.tl-item p{font-size:13.5px;color:var(--muted);margin-top:3px;line-height:1.5;}
.wg-photo{margin:14px var(--pad) 0;border-radius:var(--r);overflow:hidden;border:1px solid rgba(30,42,36,.1);}
.wg-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.dl{display:grid;grid-template-columns:44px 1fr 18px;gap:12px;align-items:center;margin:14px var(--pad) 0;padding:14px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);}
.dl .badge{width:44px;height:44px;border-radius:12px;background:#E23B3B;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.08em;}
.dl strong{display:block;font-size:14.5px;}
.dl small{display:block;font-size:12px;color:var(--muted);margin-top:2px;}
.dl .icon{stroke:var(--muted);}
.sig{margin:22px var(--pad) 0;padding-top:14px;border-top:1px solid rgba(30,42,36,.1);font-size:13.5px;color:var(--muted);line-height:1.6;}
.sig strong{display:block;font-size:15px;color:var(--text);font-weight:600;}
.dir-list{margin:14px var(--pad) 0;display:grid;gap:8px;}
.dir-list > div{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:12px 14px;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(30,42,36,.08);}
.dir-list .ic{width:38px;height:38px;border-radius:50%;background:#FFFFFF;border:1px solid rgba(30,42,36,.1);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:#1E2A24;}
.dir-list .ic .icon{width:18px;height:18px;stroke:#1E2A24;}
.dir-list h3{font-size:14.5px;}
.dir-list p{font-size:13px;color:var(--muted);margin-top:2px;line-height:1.45;}
.map{margin:14px var(--pad) 0;border-radius:var(--r);overflow:hidden;border:1px solid rgba(30,42,36,.1);}
.map img{width:100%;}
.nf{padding:calc(var(--topbar) + var(--sat) + 40px) var(--pad) 0;text-align:center;}
.nf .code{font-family:'Fraunces',Georgia,serif;font-size:72px;line-height:1;color:#B5673F;}
.nf h1{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:28px;margin-top:10px;}
.nf p{color:var(--muted);margin-top:12px;}
.page-cta{margin-top:28px;}

/* ---------- Sprachwechsler im Topbar ---------- */
.lang{position:relative;}
.lang summary{list-style:none;display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 10px 0 10px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid rgba(30,42,36,.12);font-size:12.5px;font-weight:600;color:#1E2A24;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.lang summary::-webkit-details-marker{display:none;}
.lang summary .flag{font-size:15px;line-height:1;}
.lang summary .icon{width:14px;height:14px;stroke:var(--muted);transition:transform .25s ease;}
.lang[open] summary .icon{transform:rotate(180deg);}
.topbar.is-solid .lang summary{background:#F3F5EF;}
.lang-list{position:absolute;right:0;top:calc(100% + 8px);min-width:170px;padding:6px;border-radius:16px;background:#FFFFFF;border:1px solid rgba(30,42,36,.1);box-shadow:0 18px 40px -18px rgba(30,42,36,.45);display:grid;gap:2px;z-index:70;}
.lang-list a{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:10px;font-size:14px;color:#1E2A24;}
.lang-list a.on{background:#1E2A24;color:#F3F5EF;}
.lang-list a:active{background:#EAEDE6;}
.gm{width:24px;height:24px;flex-shrink:0;margin-right:10px;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.25);}
.with-logo{display:inline-flex;align-items:center;}

/* ---------- Karriere ---------- */
.page-head h1 em,.kr-sec h2 em,.cta-card h2 em{font-style:italic;color:var(--sand);}
.kr-photo{margin:14px var(--pad) 0;border-radius:var(--r);overflow:hidden;border:1px solid rgba(30,42,36,.1);box-shadow:var(--raised-shadow);}
.kr-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 30%;display:block;}
.kr-panorama{position:relative;margin:14px 0 0;overflow:hidden;background:linear-gradient(180deg,var(--surface) 0%,var(--surface-2,#EAEDE6) 100%);border-top:1px solid rgba(30,42,36,.08);border-bottom:1px solid rgba(30,42,36,.08);}
.kr-pan-glow{position:absolute;left:50%;top:60%;width:360px;height:360px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(43,59,51,.16) 0%,rgba(43,59,51,.05) 45%,rgba(43,59,51,0) 70%);}
.kr-pan-row{position:relative;display:flex;align-items:flex-end;overflow-x:auto;overflow-y:hidden;padding:34px 32px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.kr-pan-row::-webkit-scrollbar{display:none;}
.kr-pan-side,.kr-pan-center{display:flex;align-items:flex-end;flex:0 0 auto;}
.kr-pan-fig{display:block;height:180px;width:auto;flex:0 0 auto;position:relative;z-index:var(--z,1);filter:drop-shadow(0 12px 16px rgba(30,42,36,.25));}
.kr-pan-left .kr-pan-fig{margin-right:-38px;}
.kr-pan-right .kr-pan-fig{margin-left:-38px;}
.kr-pan-center{position:relative;z-index:10;margin:0 -18px;}
.kr-pan-center .kr-pan-fig{height:212px;}
.kr-pan-center .kr-pan-fig:first-child{margin-right:-30px;}
.kr-pan-fade{position:absolute;top:0;bottom:0;width:44px;pointer-events:none;z-index:20;}
.kr-pan-fade-l{left:0;background:linear-gradient(to right,var(--bg),rgba(230,233,226,0));}
.kr-pan-fade-r{right:0;background:linear-gradient(to left,var(--bg),rgba(230,233,226,0));}
.kr-pan-caption{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:21;margin:0;white-space:nowrap;padding:7px 12px;border-radius:999px;background:rgba(243,245,239,.92);border:1px solid rgba(30,42,36,.1);font-size:11px;font-weight:600;color:var(--text);}
.kr-pan-hint{padding:8px var(--pad) 0;font-size:11.5px;color:var(--muted);text-align:center;}
.kr-sec{padding:26px var(--pad) 0;}
.kr-sec h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:24px;line-height:1.12;margin-top:8px;}
.kr-sec p{margin-top:8px;font-size:13.5px;color:var(--muted);line-height:1.5;}
.kr-quote{margin:14px var(--pad) 0;padding:16px 16px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);text-align:center;}
.kr-quote .avatar{width:72px;height:72px;border-radius:50%;overflow:hidden;margin:0 auto 12px;border:3px solid var(--surface);box-shadow:0 8px 18px -10px rgba(0,0,0,.4);}
.kr-quote .avatar img{width:100%;height:100%;object-fit:cover;object-position:54% 40%;transform:scale(2.1);transform-origin:54% 42%;display:block;}
.kr-quote blockquote{font-family:'Fraunces',Georgia,serif;font-size:14.5px;line-height:1.5;color:var(--text);}
.kr-quote strong{display:block;margin-top:12px;font-size:14px;}
.kr-quote small{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sand);margin-top:2px;}
.kr-ben-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px var(--pad) 0;}
.kr-ben{padding:16px 14px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);}
.kr-ben .ic{width:40px;height:40px;border-radius:12px;background:rgba(43,59,51,.08);display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px;}
.kr-ben .ic svg{width:22px;height:22px;fill:none;stroke:var(--sand);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.kr-ben h3{font-size:14.5px;line-height:1.25;}
.kr-ben p{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.45;}
.kr-jobs{display:grid;gap:10px;padding:14px var(--pad) 0;}
.kr-job{border-radius:var(--r);background:linear-gradient(180deg,#FFFFFF 0%,#F6F4EC 100%);border:1.5px solid rgba(43,59,51,.28);border-left:5px solid var(--sand);box-shadow:0 18px 34px -20px rgba(30,42,36,.45),var(--raised-shadow);overflow:hidden;scroll-margin-top:calc(var(--topbar) + var(--sat) + 12px);}
.kr-job summary{list-style:none;display:grid;grid-template-columns:1fr 20px;gap:10px;align-items:center;padding:16px;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.kr-job summary::-webkit-details-marker{display:none;}
.kr-job .cat .open{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:2px 8px;border-radius:999px;background:#E23B3B;color:#fff;font-size:9.5px;letter-spacing:.08em;vertical-align:middle;}
.kr-job .cat .open::before{content:"";width:5px;height:5px;border-radius:50%;background:#fff;}
.kr-job .cat{display:block;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);margin-bottom:4px;}
.kr-job h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:21px;line-height:1.15;}
.kr-job .meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;}
.kr-job .meta span{font-size:11px;font-weight:600;color:var(--muted);background:rgba(30,42,36,.05);border:1px solid rgba(30,42,36,.08);border-radius:999px;padding:3px 8px;}
.kr-job summary .icon{width:20px;height:20px;stroke:var(--muted);transition:transform .25s ease;}
.kr-job[open] summary .icon{transform:rotate(180deg);}
.kr-job .body.prose{padding:14px 16px 16px;border-top:1px solid rgba(30,42,36,.08);font-size:14px;}
.kr-job .body .kr-job-intro{font-family:'Fraunces',Georgia,serif;font-size:15.5px;line-height:1.5;color:var(--text);}
.kr-job .body h4{font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text);margin:18px 0 8px;}
.kr-job .body h5{font-size:13.5px;font-weight:600;margin:12px 0 6px;}
.kr-job .body li{font-size:13.5px;margin-bottom:6px;}
.kr-job .body .kr-job-note{font-size:13px;color:var(--muted);font-style:italic;}
.kr-job .body .kr-job-perks{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 10px;}
.kr-job .body .kr-job-perks span{font-size:11px;font-weight:600;background:rgba(43,59,51,.08);border-radius:999px;padding:4px 9px;}
.kr-job .body .kr-job-apply{margin-top:14px;padding:14px;border-radius:var(--r-sm);background:rgba(43,59,51,.06);}
.kr-job .body .kr-job-apply p{font-size:13px;margin-bottom:10px;}
.kr-job .body .btn{color:var(--on-sand);border-bottom:0;margin-top:2px;}
.kr-links{display:flex;flex-wrap:wrap;gap:6px;padding:10px var(--pad) 0;}
.kr-links a{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;background:var(--raised);border:1px solid rgba(30,42,36,.1);font-size:12.5px;font-weight:600;}
.kr-links a .icon{width:13px;height:13px;}
.cta-card .eyebrow{margin-bottom:6px;}
.cta-card p.sub{margin-top:10px;font-size:13.5px;color:var(--muted);line-height:1.5;}
.btn .kr-mail-addr{display:block;font-size:12px;font-weight:500;opacity:.8;margin-top:2px;user-select:none;}
.btn .kr-mail-addr::after{content:attr(data-a) "\0040" attr(data-b) "\002E" attr(data-c);}
.btn .kr-mail-addr:not([data-a]){display:none;}
.kr-mailline{padding:10px var(--pad) 0;font-size:13px;color:var(--muted);text-align:center;}
.kr-mailline a{color:var(--text);border-bottom:1px solid rgba(181,103,63,.45);}

/* Hinweispunkt: neue offene Stellen */
.menu-btn{position:relative;}
.top-karriere{position:relative;display:inline-flex;align-items:center;height:42px;padding:0 12px 0 12px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid rgba(30,42,36,.12);font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.topbar.is-solid .top-karriere{background:#F3F5EF;}
.top-karriere[aria-current]{background:var(--sand);color:var(--on-sand);border-color:transparent;}
.top-karriere .dot{position:absolute;top:-3px;right:-3px;width:9px;height:9px;border-radius:50%;background:#E23B3B;box-shadow:0 0 0 2px var(--bg);}
.top-karriere .dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid rgba(226,59,59,.6);animation:dot-pulse 2.2s ease-out infinite;}
.lang summary .code{display:none;}
@media (max-width:374px){.brand .brand-text{display:none;}}
.sheet nav a .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#E23B3B;margin-left:8px;vertical-align:middle;position:relative;top:-1px;}
.sheet nav a .dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid rgba(226,59,59,.6);animation:dot-pulse 2.2s ease-out infinite;}
@keyframes dot-pulse{0%{transform:scale(.55);opacity:1;}100%{transform:scale(1.7);opacity:0;}}
@media (prefers-reduced-motion:reduce){.sheet nav a .dot::after{animation:none;}}

/* Verschleierte E-Mail: Anzeige nur per CSS aus drei Attributen */
.email-obf[data-a]::after{content:attr(data-a) "\0040" attr(data-b) "\002E" attr(data-c);}

.prose .rg-us{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:16.5px;line-height:1.55;color:var(--sand);padding-left:14px;border-left:2px solid var(--sand);margin:4px 0 22px;}
.prose .rg-us strong{font-family:Inter,sans-serif;font-style:normal;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-right:6px;}
.prose .rg-note,.prose .rg-small{font-size:13.5px;color:var(--muted);}

/* ---------- Download-Center (/m/downloads.html) ---------- */
.dc-chips{display:flex;gap:8px;overflow-x:auto;padding:16px var(--pad) 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.dc-chips::-webkit-scrollbar{display:none;}
.dc-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 13px;border-radius:999px;background:var(--raised);border:1px solid rgba(30,42,36,.1);box-shadow:var(--raised-shadow);font-family:Inter,sans-serif;font-size:12.5px;font-weight:600;color:var(--text);}
.dc-chip span{font-size:10.5px;color:var(--muted);background:rgba(30,42,36,.06);border-radius:999px;padding:3px 6px;line-height:1;}
.dc-chip.is-active{background:var(--sand);color:var(--on-sand);border-color:transparent;}
.dc-chip.is-active span{background:rgba(255,255,255,.18);color:var(--on-sand);}
.dc-search{position:relative;display:block;margin:12px var(--pad) 0;}
.dc-search .icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;stroke:var(--muted);pointer-events:none;}
.dc-search input{width:100%;height:44px;padding:0 14px 0 40px;border-radius:999px;border:1px solid rgba(30,42,36,.12);background:var(--surface);font-family:Inter,sans-serif;font-weight:500;font-size:14.5px;color:var(--text);outline:none;-webkit-appearance:none;appearance:none;}
.dc-search input:focus{border-color:var(--sand);}
.dc-search input::-webkit-search-cancel-button{-webkit-appearance:none;}
.dc-sec{padding:28px var(--pad) 0;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;}
.dc-sec .num{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:26px;line-height:1;color:var(--sand);padding-top:2px;}
.dc-sec h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:22px;line-height:1.15;}
.dc-sec p{margin-top:6px;font-size:13px;color:var(--muted);line-height:1.5;}
.dc-list{display:flex;flex-direction:column;gap:10px;padding:14px var(--pad) 0;}
.dl-card{display:grid;grid-template-columns:56px 1fr 36px;gap:13px;align-items:center;padding:10px 12px 10px 10px;border-radius:var(--r);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);color:var(--text);}
.dl-card .cover{position:relative;display:block;width:56px;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:var(--surface-2);box-shadow:0 6px 14px -8px rgba(30,42,36,.5);}
.dl-card .cover img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.dl-card .cover .badge{position:absolute;left:0;bottom:0;font-size:8.5px;font-weight:700;letter-spacing:.1em;color:#fff;background:#E23B3B;padding:3px 5px;border-radius:0 6px 0 0;line-height:1;}
.dl-card .kick{display:block;font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sand);margin-bottom:3px;}
.dl-card h3{font-size:15px;font-weight:600;line-height:1.25;}
.dl-card small{display:block;margin-top:4px;font-size:12px;color:var(--muted);}
.dl-card .arr{width:36px;height:36px;border-radius:50%;background:var(--sand);display:inline-flex;align-items:center;justify-content:center;}
.dl-card .arr .icon{width:16px;height:16px;stroke:var(--on-sand);transform:rotate(90deg);}
.dc-empty{padding:30px var(--pad);text-align:center;font-size:14px;color:var(--muted);line-height:1.6;}
.dc-empty strong{color:var(--text);}
.dc-empty button{background:none;border:0;padding:0;font:inherit;color:var(--text);text-decoration:underline;}
.dc-steps{list-style:none;display:flex;flex-direction:column;gap:10px;padding:14px var(--pad) 0;counter-reset:dc;}
.dc-steps li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:14px;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(30,42,36,.08);box-shadow:var(--raised-shadow);counter-increment:dc;}
.dc-steps li::before{content:"0" counter(dc);font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:20px;color:var(--sand);line-height:1;padding-top:1px;}
.dc-steps h3{font-size:15px;font-weight:600;}
.dc-steps p{margin-top:3px;font-size:13px;color:var(--muted);line-height:1.5;}
.dl-card.is-tall .cover img{object-fit:contain;object-position:center;background:#fff;}.fk-dl .dc-list{padding-top:4px;}

/* Startseite: Zahnarzt Darmstadt + FAQ */
.local-text{padding:0 var(--pad);}
.local-text p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 12px;}
.local-facts{display:flex;flex-wrap:wrap;gap:8px;padding:2px var(--pad) 0;}
.local-facts span{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);font-size:12px;font-weight:600;color:var(--text);}
.local-links{display:grid;gap:8px;padding:14px var(--pad) 0;}
.local-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:12px 14px;border-radius:var(--r-sm);background:var(--raised);border:1px solid rgba(255,255,255,.09);box-shadow:var(--raised-shadow);color:var(--text);}
.local-links a span{display:grid;gap:2px;}
.local-links a strong{font-size:15px;font-weight:600;letter-spacing:-.01em;}
.local-links a small{font-size:12px;color:var(--muted);}
.local-links a .icon{width:18px;height:18px;color:var(--sand);flex-shrink:0;}
.faq{margin:0 var(--pad);}
.faq details{border-top:1px solid var(--line);}
.faq details:last-child{border-bottom:1px solid var(--line);}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:12px 2px;font-size:15.5px;font-weight:600;letter-spacing:-.01em;list-style:none;cursor:pointer;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary .icon{width:18px;height:18px;color:var(--sand);flex-shrink:0;transition:transform .3s ease;}
.faq details[open] summary .icon{transform:rotate(180deg);}
.faq details p{padding:0 2px 16px;font-size:13.5px;line-height:1.6;color:var(--muted);}
.faq details p a{color:var(--sand);text-decoration:underline;text-underline-offset:3px;}
