
.zd3{margin:0}
.zd3__box{height:min(74vh,720px);min-height:420px;border-radius:var(--r,18px);overflow:hidden;
  background:linear-gradient(180deg,#0f1418,#0A0A0A);border:1px solid rgba(255,255,255,.08)}
.zd3__hint{margin:.9rem 0 0;font-size:.86rem;opacity:.72}
@media (max-width:640px){.zd3__box{height:min(64vh,520px);min-height:340px}}
@media (prefers-reduced-motion:reduce){.zd3__box{--zd-autorotate:0}}

/* --- Inhaltsverzeichnis in der Seitenspalte ---------------------------- */
.gozside{align-self:stretch;height:100%}
.gozinhalt{position:sticky;top:6.5rem}
.gozinhalt h2{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;opacity:.6;
  margin:0 0 .7rem;font-family:inherit;font-weight:600}
.gozinhalt ol{list-style:none;margin:0;padding:0;counter-reset:goz}
.gozinhalt li{counter-increment:goz;margin:0}
.gozinhalt a{display:block;padding:.36rem 0 .36rem 1.7rem;position:relative;font-size:.88rem;
  line-height:1.35;text-decoration:none;color:inherit;opacity:.78;border-left:2px solid transparent;
  transition:opacity .15s,border-color .15s}
.gozinhalt a::before{content:counter(goz,decimal-leading-zero);position:absolute;left:.45rem;
  font-size:.7rem;opacity:.5;top:.5rem;font-variant-numeric:tabular-nums}
.gozinhalt a:hover,.gozinhalt a:focus-visible{opacity:1;color:var(--gold-deep,#8a6a48)}
.gozinhalt a.is-hier{opacity:1;font-weight:600;color:var(--gold-deep,#8a6a48);
  border-left-color:var(--gold-mid,#cbae8a)}
@media (max-width:980px){.gozside{display:none}}

/* --- Vergleich GOZ / Bema ---------------------------------------------- */
.gozsvg .bar--eins{fill:#d8d3cc}
.gozsvg .bar--zwei{fill:var(--gold-soft,#e4d6c6)}
.gozsvg .bar--drei{fill:var(--gold-mid,#cbae8a)}
.gozsvg .bar--kasse{fill:var(--gold-deep,#8a6a48)}

.balzahlen{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:2rem 0;
  background:var(--linie,#e6e0d8);border:1px solid var(--linie,#e6e0d8);border-radius:10px;overflow:hidden}
.balzahlen>div{background:var(--flaeche,#fff);padding:1.15rem 1rem;text-align:center}
.balzahlen b{display:block;font-size:1.65rem;line-height:1.15;color:var(--gold-deep,#8a6a48);
  font-variant-numeric:tabular-nums}
.balzahlen span{display:block;margin-top:.35rem;font-size:.82rem;line-height:1.35;opacity:.72}

.baltab{margin:1.6rem 0 .6rem;border:1px solid var(--linie,#e6e0d8);border-radius:10px;overflow:auto;
  max-height:34rem;-webkit-overflow-scrolling:touch}
.baltab table{width:100%;border-collapse:collapse;font-size:.86rem;table-layout:fixed}
.baltab thead th{position:sticky;top:0;z-index:1;background:var(--sand,#f3ede5);
  padding:.6rem .55rem;text-align:left;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;
  line-height:1.25;border-bottom:1px solid var(--linie,#e6e0d8)}
.baltab thead th span{display:block;font-weight:400;opacity:.7}
.baltab td{padding:.58rem .55rem;border-bottom:1px solid var(--linie,#efeae3);vertical-align:top}
.baltab tbody tr:last-child td{border-bottom:0}
.baltab tbody tr:nth-child(even){background:rgba(0,0,0,.018)}
.baltab .nr{font-variant-numeric:tabular-nums;color:var(--gold-deep,#8a6a48);white-space:nowrap}
.baltab .nr,.baltab th.nr{width:3.6rem}
.baltab .lst{width:auto}
.baltab th.num{width:5.2rem}
.baltab th.bal{width:4.4rem}
.baltab th.num,.baltab td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.baltab .hoch{opacity:.72}
.baltab td.bal{font-weight:700;color:var(--gold-deep,#8a6a48)}
.baltab .bnr{display:block;font-size:.72rem;opacity:.6;font-weight:400;letter-spacing:.02em}

.baltab__fuss{margin:0 0 1.6rem}
.callout--sach{border-left:3px solid var(--gold-mid,#cbae8a)}
.check--eng li{margin-bottom:.5rem}

/* Auf dem Handy wird aus jeder Zeile eine kleine Karte. Sechs Spalten auf 375 px
   ergeben sonst Wortsalat — jedes Wort auf einer eigenen Zeile. */
@media (max-width:760px){
  .balzahlen{grid-template-columns:1fr}
  .balzahlen b{font-size:1.4rem}
  .baltab{max-height:34rem}
  .baltab table{display:block;table-layout:auto;font-size:.9rem}
  .baltab thead{display:none}
  .baltab tbody,.baltab tr,.baltab td{display:block}
  .baltab tbody tr{padding:.9rem .9rem 1rem;border-bottom:1px solid var(--linie,#e6e0d8)}
  .baltab tbody tr:nth-child(even){background:rgba(0,0,0,.022)}
  .baltab td{border:0;padding:.16rem 0}
  .baltab td::before{content:attr(data-l) " ";opacity:.62;font-size:.84rem;margin-right:auto}
  .baltab td.num{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;text-align:right}
  .baltab td.lst{font-weight:600;font-size:.98rem;margin-bottom:.45rem;line-height:1.3}
  .baltab td.lst::before{content:none}
  .baltab td.nr{font-size:.78rem;letter-spacing:.05em;opacity:.75;margin-bottom:.1rem}
  .baltab td.hoch{opacity:.72}
  .baltab td.bal{margin-top:.35rem;padding-top:.4rem;border-top:1px solid var(--linie,#efeae3);
    font-size:1.02rem}
  .baltab .bnr{display:inline;margin-left:.5rem}
}

/* Rechtslaeufige Sprachen: in RTL kehrt text-anchor seine Bedeutung um — "end" liegt
   dann links. Ohne die Umkehrung laufen alle Beschriftungen in die Balken hinein
   (arabische Fassung, 23.08.2026). Die Geometrie der Schaubilder bleibt unveraendert. */
[dir="rtl"] .gozsvg text[text-anchor="end"]{text-anchor:start}
[dir="rtl"] .gozsvg text[text-anchor="start"]{text-anchor:end}

.gozfig{margin:2.2rem 0;padding:0}
.gozsvg{width:100%;height:auto;display:block}
.gozfig figcaption{font-size:.86rem;line-height:1.55;color:var(--mute);margin-top:.7rem;max-width:64ch}
.gozfig .q{display:block;margin-top:.3rem;font-size:.8rem;opacity:.85}
.gozsvg .grid line{stroke:rgba(26,26,26,.14);stroke-width:1}
.gozsvg .ax{font-family:var(--mono);font-size:12px;fill:var(--mute)}
.gozsvg .ax--s{font-size:10.5px;opacity:.8}
.gozsvg .area{fill:rgba(173,136,100,.16)}
.gozsvg .line{fill:none;stroke:var(--gold-deep);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}
.gozsvg .flat{stroke:var(--ink);stroke-width:2;stroke-dasharray:6 5;opacity:.75}
.gozsvg .dot{fill:var(--gold-deep)}
.gozsvg .dot--flat{fill:var(--ink)}
.gozsvg .lb{font-family:var(--mono);font-size:12px;fill:var(--gold-text);letter-spacing:.04em}
.gozsvg .lb--flat{fill:var(--ink)}
.gozsvg .lb--acc{fill:var(--gold-text)}
.gozsvg .tick{stroke:var(--mute);stroke-width:1.4}
.gozsvg .fuehrung{stroke:var(--mute);stroke-width:1;opacity:.45}
.gozsvg .seg{rx:4}
.gozsvg .seg--1{fill:rgba(173,136,100,.22)}
.gozsvg .seg--2{fill:rgba(173,136,100,.45)}
.gozsvg .seg--3{fill:var(--gold-deep)}
.gozsvg .bar{rx:4}
.gozsvg .bar--damals{fill:rgba(26,26,26,.28)}
.gozsvg .bar--heute{fill:rgba(173,136,100,.42)}
.gozsvg .bar--noetig{fill:var(--gold-deep)}
.gozsvg .ziel{stroke:var(--gold-deep);stroke-width:1.4;stroke-dasharray:4 4;opacity:.55}
.gozsvg .val{font-family:var(--mono);font-size:12.5px;fill:var(--ink);dominant-baseline:middle}
.gozrechnung{margin:1.6rem 0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.gozrechnung table{width:100%;border-collapse:collapse;font-size:.95rem}
.gozrechnung th,.gozrechnung td{padding:.7rem .9rem;text-align:left;border-bottom:1px solid var(--line)}
.gozrechnung th{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-text);background:var(--bone)}
.gozrechnung tr:last-child td{border-bottom:0;font-weight:600}
.gozrechnung td:last-child,.gozrechnung th:last-child{text-align:right;font-variant-numeric:tabular-nums}
.gozquellen{font-size:.88rem;line-height:1.7}
.gozquellen li{margin-bottom:.5rem}

/* Markenpalette nach der Logo-Vorlage vom 22.08.2026: fast schwarzer Grund,
   ein einziges gebuerstetes Bronzegold (Farbton 29 Grad), warme Neutraltoene.
   Das helle Blau entfaellt; die frueheren Tokens --cyan und --champagne gehen
   in --gold auf, weil die Vorlage nur EINEN Akzent kennt. Die kuehlen Graustufen
   wurden auf denselben warmen Farbton gedreht, sonst wirkt die Seite weiter blau. */
:root{--obsidian:#0A0A0A;--deep:#0C0C0C;--ink:#1A1A1A;--graphite:#3A3632;--mute:#6B655D;--gold:#AD8864;--gold-deep:#8A6A4A;--gold-text:#7A5A38;--gold-hi:#D8C3A5;--paper:#F5F2ED;--bone:#EBE6DD;--off:#FAF8F4;--white:#fff;--line:rgba(26,26,26,.12);--r:18px;--ease:cubic-bezier(.2,.7,.2,1);--wrap:1200px;--body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--display:'Fraunces',Georgia,serif;--mono:'JetBrains Mono',ui-monospace,Menlo,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:focus-visible{outline:2px solid #C9A97E;outline-offset:3px;border-radius:4px}a,button,summary,[tabindex]{scroll-margin-bottom:96px}
html,body{overflow-x:clip}body{margin:0;font-family:var(--body);font-size:17px;line-height:1.65;color:var(--ink);background:var(--white)}
img,video{max-width:100%;height:auto;display:block}a{color:var(--gold-text);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--gold-deep)}
.top a:hover,.hero a:hover,.hh a:hover,.ft a:hover,.band--dark a:hover,.nav a:hover,header a:hover{color:var(--gold-hi)}
h1,h2,h3,h4{font-family:var(--display);font-weight:500;line-height:1.12;letter-spacing:-.01em;color:var(--deep);margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2rem,1.3rem + 2.8vw,3.6rem)}h2{font-size:clamp(1.55rem,1.2rem + 1.3vw,2.3rem);margin-top:1.6em}h3{font-size:1.3rem;margin-top:1.4em}h4{font-size:1.1rem}
p{margin:0 0 1em}.lead{font-size:1.18rem;line-height:1.55;color:var(--graphite);max-width:62ch}.muted{color:var(--mute)}.small{font-size:.9rem}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);margin:0 0 .8em}
.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--obsidian);padding:.6rem 1rem;z-index:99}.skip:focus{left:1rem}
/* Wortmarke: Licht durch die Buchstaben.
   Der Schriftzug dient als Maske. Darunter liegt ein ruhiger Schein, darueber
   wandert sehr langsam ein schmaler Lichtstreif — sichtbar nur dort, wo Buchstabe
   ist. Das Bild selbst bleibt darunter liegen: faellt die Maske aus (aeltere
   Browser), sieht man einfach die unveraenderte Wortmarke.
   Der Streif ist ein eigenes Element und wird verschoben, nicht als
   Hintergrundposition gerechnet: bei einem Verlauf, der breiter ist als sein
   Element, kehren Prozentangaben ihre Richtung um — der Streif lag dadurch
   immer ausserhalb und war nie zu sehen. */
.brand--lit{position:relative;display:inline-block;line-height:0;isolation:isolate}
.brand--lit>img{position:relative;z-index:0}
.brand__schein{
  position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;
  -webkit-mask:var(--marke) no-repeat left center/contain;
          mask:var(--marke) no-repeat left center/contain;
  /* der ruhige Schein von hinten, sehr langsam atmend */
  background:radial-gradient(78% 175% at 50% 138%, rgba(216,195,165,.32), transparent 72%);
  mix-blend-mode:screen;
  animation:marke-atem 7.5s ease-in-out infinite;
}
@keyframes marke-atem{0%,100%{opacity:.82}50%{opacity:1}}
.brand__schein>i{
  position:absolute;top:-40%;bottom:-40%;left:0;width:70%;
  background:linear-gradient(102deg,
    transparent 0%,
    rgba(255,249,238,.10) 22%,
    rgba(255,251,243,.42) 38%,
    rgba(255,253,248,.78) 50%,
    rgba(255,251,243,.42) 62%,
    rgba(255,249,238,.10) 78%,
    transparent 100%);
  filter:blur(.6px) drop-shadow(0 0 7px rgba(255,244,224,.45));
  transform:translateX(-170%);
  animation:marke-streif 7.5s cubic-bezier(.5,0,.5,1) infinite;
}
/* Der Lichtstreif braucht rund drei Sekunden fuer den Weg ueber die Wortmarke und
   ruht danach acht Sekunden. Zu schnell wirkt es wie ein Blitz, zu haeufig wie
   eine Werbebande — beides genau das Gegenteil von edel. */
@keyframes marke-streif{
  0%,14%{transform:translateX(-170%)}
  86%,100%{transform:translateX(330%)}
}
.brand--lit:hover .brand__schein>i{animation-duration:3.6s}
@media (prefers-reduced-motion:reduce){
  .brand__schein{animation:none}
  .brand__schein>i{animation:none;transform:translateX(80%);opacity:.4}
}
@supports not ((-webkit-mask-image:url(x)) or (mask-image:url(x))){
  .brand__schein{display:none}
}
/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.35rem;border-radius:999px;font-weight:600;font-size:.95rem;text-decoration:none;border:1.5px solid transparent;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s;cursor:pointer;line-height:1.2}
.btn--primary{background:linear-gradient(180deg,#1E1B17,var(--deep));color:#fff;border:1px solid rgba(216,180,106,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 0 6px -1px rgba(216,180,106,.5),0 0 22px -5px rgba(216,180,106,.5)}
.btn--primary:hover{background:linear-gradient(180deg,#2A2520,#141210);color:#fff;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 10px -1px rgba(216,180,106,.6),0 0 30px -6px rgba(216,180,106,.6)}
.hero .btn--primary,.hh .btn--primary,.top .btn--primary,.ft .btn--primary,.band--dark .btn--primary{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hero .btn--primary:hover,.hh .btn--primary:hover,.top .btn--primary:hover,.ft .btn--primary:hover,.band--dark .btn--primary:hover{background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.12))}
@property --cta-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
.cta-glow{position:relative;isolation:isolate;--cta-glow-c:#d8b46a}
.cta-glow>.cta__glow{position:absolute;inset:0;border-radius:inherit;z-index:-1;padding:2px;pointer-events:none;background:conic-gradient(from var(--cta-ang),transparent 0 56%,var(--cta-glow-c) 70%,#fff 85%,#fff 90%,var(--cta-glow-c) 95%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;filter:drop-shadow(0 0 4px var(--cta-glow-c)) drop-shadow(0 0 9px var(--cta-glow-c));animation:cta-glow-rot 4.2s linear infinite}
@keyframes cta-glow-rot{to{--cta-ang:360deg}}
@media (prefers-reduced-motion:reduce){.cta-glow>.cta__glow{animation:none;opacity:.7}}
.btn--ghost{border-color:var(--deep);color:var(--deep);background:transparent}
/* Auf dunklem Grund war nur der Hover-Zustand definiert — im Ruhezustand stand
   #0C0C0C auf #0C0C0C, der Knopf war schlicht unsichtbar (Inhaber 23.08.2026). */
.hero .btn--ghost,.hh .btn--ghost,.top .btn--ghost,.ft .btn--ghost,.band--dark .btn--ghost{border-color:rgba(255,255,255,.45);color:var(--paper)}
/* Der Zeigezustand fuellte den Knopf mit --deep, eine spaetere Regel setzte die
   Schrift ebenfalls auf --deep — schwarz auf schwarz. Jetzt eindeutig, und auf
   dunklen Flaechen ein eigener Zustand, weil dort eine schwarze Fuellung
   unsichtbar waere. */
.btn--ghost:hover,.btn--ghost:focus-visible{background:var(--deep);color:var(--paper);border-color:var(--deep)}
.hero .btn--ghost:hover,.hh .btn--ghost:hover,.top .btn--ghost:hover,.ft .btn--ghost:hover,.band--dark .btn--ghost:hover,.hero .btn--ghost:focus-visible,.hh .btn--ghost:focus-visible,.ft .btn--ghost:focus-visible,.band--dark .btn--ghost:focus-visible{background:rgba(173,136,100,.18);color:var(--gold-hi);border-color:var(--gold)}
.btn--light{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.08)}.btn--light:hover{background:#fff;color:var(--deep)}
.btn--lg{padding:1rem 1.8rem;font-size:1.05rem}.btn--block{width:100%}.cta-row{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.4em 0}
/* Header */
.top{position:sticky;top:0;z-index:50;background:rgba(10,14,18,.92);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.top::before{content:"";position:absolute;inset:0;z-index:-1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.top__bar{position:relative}
.top__bar{display:flex;align-items:center;gap:1rem;min-height:68px}.brand img{height:42px;width:auto;aspect-ratio:846.14/202.68}
/* Safari leitet aus height+width:auto keine Breite ab, wenn die SVG keine eigenen
   Masse traegt — das Logo erschien dort deutlich zu klein. Beides ist jetzt gesetzt:
   width/height in der Datei und das Seitenverhaeltnis hier. */
.nav{margin-left:auto;display:flex;align-items:center;gap:1.5rem}.nav__list{list-style:none;margin:0;padding:0;display:flex;gap:.2rem}
.nav__item>a{display:block;padding:.6rem .8rem;color:#fff;text-decoration:none;font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;border-radius:8px}
.nav__item>a:hover,.nav__item.is-active>a{color:var(--gold)}.nav__tog{display:none}
.has-sub{position:relative}.sub{list-style:none;margin:0;padding:.6rem 0;position:absolute;top:100%;left:0;min-width:280px;background:#fff;color:var(--ink);border-radius:14px;box-shadow:0 24px 60px -20px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease)}
.has-sub:hover>.sub,.has-sub.is-focus>.sub,.has-sub.is-open>.sub{opacity:1;visibility:visible;transform:none}
.sub li a{display:block;padding:.45rem 1.1rem;color:var(--ink);text-decoration:none;font-size:.92rem}.sub li a:hover{color:var(--gold-text);background:var(--off)}
.sub ul{list-style:none;margin:0;padding:0 0 .3rem .8rem}.sub ul a{font-size:.84rem;color:var(--mute)}
.nav__extra{display:flex;align-items:center;gap:1rem}.nav__tel{color:#fff;text-decoration:none;font-weight:600;font-size:.95rem}.nav__tel:hover{color:var(--gold)}
.top__cta,.top__tel{display:none}.top__tel{color:#fff;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(255,255,255,.25);margin-left:auto;transition:color .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease)}.top__tel:hover,.top__tel:focus-visible{color:var(--gold-hi);border-color:var(--gold);background:rgba(173,136,100,.14);transform:translateY(-1px);box-shadow:0 0 0 1px rgba(173,136,100,.35),0 6px 18px -8px rgba(173,136,100,.55)}.top__tel:active{transform:translateY(0)}@media (prefers-reduced-motion:reduce){.top__tel{transition:none}.top__tel:hover{transform:none}}.burger{display:none;margin-left:auto;width:44px;height:44px;border:0;background:transparent;padding:8px;flex-direction:column;justify-content:space-around;cursor:pointer}.burger span{display:block;height:2px;background:#fff;border-radius:2px;transition:.3s}
@media (max-width:1100px){.nav__item>a{padding:.6rem .55rem;font-size:.68rem;letter-spacing:.1em}.nav__tel{display:none}}
@media (max-width:940px){
 .nav{position:fixed;inset:68px 0 0 0;background:var(--obsidian);flex-direction:column;align-items:stretch;padding:1rem 1.25rem 6rem;overflow:auto;transform:translateX(100%);visibility:hidden;transition:transform .35s var(--ease),visibility 0s .35s;margin:0;gap:0}
 .nav.is-open{transform:none;visibility:visible;transition:transform .35s var(--ease),visibility 0s}.nav__list{flex-direction:column;gap:0}.nav__item{border-bottom:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;align-items:center}
 .nav__item>a{flex:1;padding:1rem .2rem;font-size:.85rem}.nav__tog{display:block;width:44px;height:44px;border:0;background:transparent;position:relative;cursor:pointer}
 .nav__tog::before{content:"";position:absolute;left:16px;top:14px;width:10px;height:10px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg);transition:.3s}.has-sub.is-open .nav__tog::before{transform:rotate(225deg);top:20px}
 .sub{position:static;min-width:0;background:transparent;color:#fff;box-shadow:none;opacity:1;visibility:visible;transform:none;display:none;flex-basis:100%;padding:0 0 .8rem}.has-sub.is-open>.sub{display:block}
 .sub li a{color:#dfe7ec;padding:.5rem .2rem}.sub ul a{color:#9fb0ba}.sub li a:hover{background:transparent;color:var(--gold)}
 .nav__extra{flex-direction:column;align-items:stretch;gap:.8rem;padding-top:1.4rem}.nav__tel{display:block;text-align:center}.top__tel{display:inline-flex}.top__cta{display:inline-flex;margin-left:.5rem;padding:.55rem 1rem;font-size:.85rem}.burger{display:flex;margin-left:0}
 body.nav-open{overflow:hidden}
 /* Die Kopfzeile steht auf position:sticky. Sobald body overflow:hidden bekommt,
    ist der Body kein Scrollport mehr — die Kopfzeile verliert ihren Halt und faellt
    an ihre Dokumentposition zurueck, also genau scrollY Pixel nach oben aus dem Bild.
    Auf einer gescrollten Seite verschwand damit beim Oeffnen des Menues die ganze
    obere Leiste samt Schliessen-Knopf (iPhone/Safari, Inhaber 27.08.2026). Am Seitenanfang
    fiel es nicht auf, weil dort beide Positionen zusammenfallen — daher 'manchmal'.
    Fest verankert haengt sie nicht mehr am Scrollport des Body. */
 body.nav-open .top{position:fixed;top:0;left:0;right:0}
 body.nav-open #dr-flex-reception-button,body.nav-open #zk-rez{display:none!important}.burger[aria-expanded=true] span:nth-child(1){transform:translateY(9px) rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}
}
/* Hero (Unterseiten) */
.hero{background:radial-gradient(120% 140% at 80% 0%,#151310 0%,var(--obsidian) 55%);color:#fff;padding:3rem 0 3.2rem;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(92,198,226,.5),transparent)}
.hero h1{color:#fff}.hero .lead{color:#d5dfe5}.hero .eyebrow{color:var(--gold)}.hero a{color:var(--gold)}.hero .btn--primary{color:#fff}.hero .btn--light{color:#fff}.hero .btn--light:hover{color:var(--deep)}
.hero__grid{display:grid;gap:2.5rem;align-items:center}.hero--img .hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.hero__img{border-radius:var(--r);box-shadow:0 40px 80px -30px rgba(0,0,0,.7);aspect-ratio:4/3;object-fit:cover;width:100%}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.2rem;padding:0;font-size:.8rem;color:#9fb0ba}.crumbs li+li::before{content:"›";margin-right:.4rem;color:#5d6f7a}.crumbs a{color:#c6d2d9;text-decoration:none}.crumbs a:hover{color:var(--gold)}
@media (max-width:900px){.hero{padding:2.2rem 0 2.4rem}.hero--img .hero__grid{grid-template-columns:1fr}.hero__img{aspect-ratio:16/10}}
/* Layout */
.main{padding:3rem 0 4rem}.main--side{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3.5rem;align-items:start}
.content{max-width:760px;font-size:1.05rem}.content>p:first-child{font-size:1.12rem}.content h2:first-child{margin-top:0}
.content ul,.content ol{padding-left:1.3rem}.content li{margin:.35em 0}.check{list-style:none;padding-left:0!important}.check li{padding-left:1.8rem;position:relative}.check li::before{content:"";position:absolute;left:0;top:.55em;width:1rem;height:.55rem;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg)}
.cols{columns:2;column-gap:2.5rem}@media (max-width:700px){.cols{columns:1}}
.badge{margin:.4rem 0 1rem 1.5rem;float:right;width:min(180px,40%)}.badge__img{width:100%}.callout .badge{margin-top:0}.callout::after,.content::after{content:'';display:block;clear:both}
.fig{margin:2rem 0;clear:both}.fig-img{border-radius:var(--r);width:100%;box-shadow:0 30px 60px -30px rgba(12,12,12,.35)}
.callout{background:var(--paper);border-left:4px solid var(--gold);border-radius:0 var(--r) var(--r) 0;padding:1.4rem 1.6rem;margin:2rem 0}.callout__h{margin-top:0;font-size:1.15rem}.callout p:last-child{margin-bottom:0}

.weitere{margin:2.2rem 0 1rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.weitere__h{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;opacity:.62;margin:0 0 .6rem;font-family:inherit;font-weight:600}
.weitere ul{list-style:none;margin:0;padding:0}
.weitere li{border-bottom:1px solid var(--line)}
.weitere li:last-child{border-bottom:0}
.weitere a{display:block;padding:.6rem 0;text-decoration:none;color:inherit}
.weitere a:hover{color:var(--gold-text)}
.acc-group{margin:1.6rem 0;border-top:1px solid var(--line)}.acc{border-bottom:1px solid var(--line)}.acc summary{cursor:pointer;list-style:none;padding:1rem 2.4rem 1rem 0;font-family:var(--display);font-size:1.15rem;color:var(--deep);position:relative}
.acc summary::-webkit-details-marker{display:none}.acc summary::after{content:"+";position:absolute;right:.3rem;top:.75rem;font-size:1.6rem;color:var(--gold-deep);transition:.3s}.acc[open] summary::after{transform:rotate(45deg)}.acc__body{padding:0 0 1.2rem}
.tbl,.hours{border-collapse:collapse;width:100%;margin:1rem 0}.tbl th,.tbl td,.hours th,.hours td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}.hours th{width:3.2rem;font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;color:var(--gold-text)}.hours--compact th,.hours--compact td{padding:.25rem .4rem;font-size:.9rem}
blockquote{margin:2rem 0;padding:0 0 0 1.4rem;border-left:3px solid var(--gold);font-family:var(--display);font-size:1.3rem;color:var(--deep)}
.file::before{content:"⬇ ";color:var(--gold-deep)}
.route{background:var(--off);border-radius:var(--r);padding:1.4rem 1.6rem;margin:1.5rem 0}.route__btns{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0 .6rem}
/* Sidebar */
.side{display:grid;gap:1.4rem;align-content:start}.side__card{background:var(--paper);border-radius:var(--r);padding:1.4rem}.side__card .btn{margin-bottom:.6rem}.side__rating a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(176,141,87,.4)}.side__rating{font-size:.9rem;color:var(--gold-text);margin:0}
.side__nav{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.2rem 1.4rem}.side__nav h3{font-size:1rem;margin:0 0 .6rem;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-weight:500}.side__nav h3 a{color:var(--deep);text-decoration:none}
.side__nav ul{list-style:none;margin:0;padding:0}.side__nav li a{display:block;padding:.4rem 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--graphite);font-size:.95rem}.side__nav li:last-child a{border:0}.side__nav li.is-active a,.side__nav li a:hover{color:var(--gold-text)}
@media (max-width:1000px){.main--side{grid-template-columns:1fr;gap:2.5rem}.side{position:static}.content{max-width:none}}
/* Cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.4rem;margin:2rem 0}.card{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);border:1px solid var(--line);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(12,12,12,.45)}.card{display:flex;flex-direction:column}.card__body{display:flex;flex-direction:column;flex:1}.card__more{margin-top:auto}.card__img{aspect-ratio:16/10;object-fit:cover;object-position:50% 22%;width:100%}.card__body{padding:1.2rem 1.3rem 1.4rem}.card h3{margin:0 0 .4rem;font-size:1.25rem}.card p{color:var(--graphite);margin:0 0 .8rem;font-size:.95rem}.card__more{font-weight:600;color:var(--gold-text);font-size:.9rem}
.cards--news{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.cards--news .card__img{aspect-ratio:16/9;object-position:50% 25%}
/* Galerie, Vorher/Nachher, Video */
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.8rem;margin:1.5rem 0}.gal__item{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--bone)}.gal__img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}.gal__item:hover .gal__img{transform:scale(1.04)}
.ba{position:relative;border-radius:var(--r);overflow:hidden;margin:1.6rem 0;aspect-ratio:3/2;background:var(--bone)}.ba img{width:100%;height:100%;object-fit:cover}.ba__after,.ba__before{position:absolute;inset:0}.ba__before{clip-path:inset(0 50% 0 0)}
.ba__range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}.ba__line{position:absolute;top:0;bottom:0;width:2px;background:#fff;left:50%;box-shadow:0 0 0 1px rgba(0,0,0,.2);pointer-events:none}
.ba__line::after{content:"⇔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:#fff;color:var(--deep);display:grid;place-items:center;font-size:1.2rem;box-shadow:0 10px 30px -10px rgba(0,0,0,.6)}
.ba__tag{position:absolute;bottom:.8rem;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(10,14,18,.7);color:#fff;padding:.3rem .6rem;border-radius:6px;pointer-events:none}.ba__tag--l{left:.8rem}.ba__tag--r{right:.8rem}
.video{margin:2rem 0}.video video{width:100%;border-radius:var(--r);background:#000;aspect-ratio:16/9}.video figcaption{font-size:.9rem;color:var(--mute);margin-top:.5rem}.videos .video:first-child{margin-top:0}
.lb{position:fixed;inset:0;background:rgba(10,14,18,.94);z-index:200;display:grid;place-items:center;padding:2rem}.lb[hidden]{display:none}.lb img{max-width:min(1200px,100%);max-height:88vh;border-radius:12px;box-shadow:0 40px 100px -30px #000;width:auto;height:auto}
.lb button{position:absolute;background:rgba(255,255,255,.1);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:1.6rem;cursor:pointer}.lb__close{top:1rem;right:1rem}.lb__prev{left:1rem;top:50%}.lb__next{right:1rem;top:50%}
/* Team */
.team-group{margin:0 0 3.4rem}.team-group>h2{font-size:clamp(1.7rem,1.25rem + 1.7vw,2.6rem);line-height:1.15;margin:0 0 1.5rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}.cert-cat>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.6rem 0;margin-top:1.6rem}.cert-cat>summary::-webkit-details-marker{display:none}.cert-cat>summary h2{margin:0;font-size:clamp(1.3rem,1.1rem + .9vw,1.8rem)}.cert-cat__n{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-text);white-space:nowrap}.cert-cat__n::after{content:" +";font-weight:700}.cert-cat[open] .cert-cat__n::after{content:" –"}.cert-cat>summary:hover h2{color:var(--gold-text)}
.tm__more:hover{border-color:var(--gold);color:var(--gold-text)}.card:hover .card__more{text-decoration:underline;text-underline-offset:3px}
/* Einladungs-Kachel am Ende des Teams */
.tm--join{display:flex;flex-direction:column;text-decoration:none;color:inherit;
  background:linear-gradient(180deg,var(--paper),#fff);border:1px dashed rgba(176,141,87,.55);
  transition:border-color .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease)}
.tm--join:hover{border-color:var(--gold);transform:translateY(-3px);
  box-shadow:0 20px 40px -26px rgba(12,12,12,.45)}
.tm__joinart{display:grid;place-items:center;aspect-ratio:4/5;font:300 clamp(3rem,2rem + 4vw,4.6rem)/1 var(--display);
  color:var(--gold);background:radial-gradient(circle at 50% 45%,rgba(176,141,87,.12),transparent 68%)}
.tm__joinh{display:block;font:600 1.15rem/1.3 var(--display);color:var(--deep);margin:0 0 .3rem}
.tm__joinmore{display:inline-block;margin-top:.5rem;font-size:.85rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gold-text)}
.tm--join:hover .tm__joinmore{color:var(--deep)}
/* "nach Vereinbarung" mit Erklaerung */
.hours__why{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;
  display:inline-flex;align-items:center;gap:.4rem;text-align:left}
.hours__i{display:inline-grid;place-items:center;width:1.15em;height:1.15em;flex:none;
  border-radius:50%;border:1px solid var(--gold);color:var(--gold-text);
  font-size:.7em;line-height:1;font-weight:700}
.hours__why:hover .hours__i,.hours__why:focus-visible .hours__i{background:var(--gold);color:#fff}
.ft .hours__i{border-color:rgba(255,255,255,.5);color:#e6edf2}
/* nur fuer Vorleseprogramme */
.nur-vorlesen{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
/* Osterei-Zeile und Bilddialog */
.egg__ps{margin-top:1.6rem;opacity:.72}
.egg__btn{background:none;border:0;padding:0;font:inherit;color:var(--gold-text);cursor:pointer;
  text-decoration:underline;text-underline-offset:2px;text-decoration-style:dotted}
.egg__btn:hover{color:var(--deep)}
.dlg--egg{max-width:min(920px,94vw)}
.dlg--egg img{width:100%;height:auto;border-radius:12px;display:block;margin:0 0 .8rem}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.6rem}.team-lead{margin:0 0 1.6rem}.team-lead .tm{display:grid;grid-template-columns:minmax(240px,320px) 1fr;align-items:start}.team-lead .tm__txt{padding:1.6rem 1.8rem}.team-lead .tm__img{aspect-ratio:4/5}.tm__hl{margin:.2rem 0 1rem;font-size:.95rem}.tm__hl li{margin:.25rem 0}@media (max-width:700px){.team-lead .tm{grid-template-columns:1fr}}.tm{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.tm__img{aspect-ratio:4/5;object-fit:cover;width:100%}.tm__txt{padding:1.1rem 1.2rem 1.3rem}.tm h3{font-size:1.15rem;margin:0 0 .3rem}.tm__role{color:var(--graphite);font-size:.92rem;margin:0 0 .6rem}
.tm__more{background:transparent;border:1.5px solid var(--deep);border-radius:999px;padding:.45rem 1rem;font:600 .85rem var(--body);color:var(--deep);cursor:pointer}.tm__more:hover{background:var(--deep);color:#fff}
.pills{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.5rem}.pills a{display:inline-block;padding:.5rem 1rem;border-radius:999px;background:var(--paper);text-decoration:none;color:var(--deep);font-size:.92rem}.pills a:hover{background:var(--gold);color:var(--obsidian)}
.dlg{border:0;border-radius:var(--r);padding:0;max-width:760px;width:calc(100% - 2rem);box-shadow:0 50px 120px -30px rgba(0,0,0,.6)}.dlg::backdrop{background:rgba(10,14,18,.7);backdrop-filter:blur(4px)}.dlg__body{padding:2rem 2.2rem 2.4rem;max-height:85vh;overflow:auto}.dlg__close{position:sticky;top:0;display:flex;justify-content:flex-end;margin:0;padding:.6rem .6rem 0}.dlg__close button{width:40px;height:40px;border-radius:50%;border:0;background:var(--paper);font-size:1.4rem;cursor:pointer}
.dlg h3{margin-top:0}.dlg .gal{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
/* Startseite */
.hh{position:relative;min-height:min(92vh,900px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--obsidian)}
.hh__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
/* Bildvariante des Kopfbereichs — Seiten ohne Hero-Video (bio, kfo) nutzen sie. */
.hh__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}.hh__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,18,.2) 0%,rgba(10,14,18,.55) 55%,rgba(10,14,18,.92) 100%)}
.hh__inner{position:relative;padding:7rem 0 4rem;max-width:900px}.hh h1{color:#fff;font-size:clamp(2.4rem,1.4rem + 4.2vw,5rem);font-weight:400}.hh h1 em{font-style:italic;color:var(--gold)}.hh .lead{color:#d5dfe5;font-size:1.2rem}.hh .eyebrow{color:var(--gold)}
.hh__vtoggle{position:absolute;right:1.2rem;bottom:1.2rem;z-index:2;background:rgba(10,14,18,.55);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:.45rem .9rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(6px)}.hh__vtoggle:hover{border-color:var(--gold)}@media (max-width:900px){.hh__vtoggle{display:none}}
.ft__a11y{margin:0 0 .6rem}.ft__a11y .zk-a11y button{border-color:rgba(255,255,255,.28);color:#c6d2d9}
.ft__a11y .zk-a11y button:hover{border-color:var(--gold);color:#fff}
.route__starts{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin:.7rem 0 .4rem}
.route__from{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;border:1px solid rgba(10,14,18,.16);font-size:.82rem;text-decoration:none;color:var(--deep)}
.route__from:hover{border-color:var(--gold);color:var(--deep)}
.hero__read{margin:1.1rem 0 0}.hero__read .zk-read{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);color:#fff}
.hero__read .zk-read:hover{border-color:var(--gold)}
.brushbox{margin:2.2rem 0}.brushbox h2{margin-top:.2rem}
.hh__sub{font-family:var(--mono);font-size:.9rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:-.4rem 0 1.2rem;padding-left:2px}.hh__sub::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:.8rem}
.hh__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.8rem 0 1.4rem}.hh__trust{font-family:var(--mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#c6d2d9;margin:0;padding-right:5.5rem}.hh__trust a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}.hh__trust a:hover{color:var(--gold)}
.ft__rating a{color:var(--gold);text-decoration:none}.ft__rating a:hover{color:#fff}
.pair{margin:1.8rem 0}.pair__grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.pair__cell{position:relative;border-radius:var(--r);overflow:hidden;background:var(--bone)}.pair__cell img{width:100%;height:auto}.pair__tag{position:absolute;top:.7rem;left:.7rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(10,14,18,.72);color:#fff;padding:.3rem .6rem;border-radius:6px}.pair__tag--after{background:var(--deep)}.pair__cap{font-size:.9rem;color:var(--mute);margin:.6rem 0 0}.pair__cap .eyebrow{display:inline;margin-right:.6rem}
.pv__who,.pv__q{font-size:max(.78rem,12px)}
.welcome{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:4rem;align-items:center;padding:5rem 0}.welcome h2{margin-top:0}.welcome__btns{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.welcome__pic{position:relative}.welcome__photo{border-radius:var(--r);box-shadow:0 50px 100px -40px rgba(12,12,12,.6);aspect-ratio:4/5;object-fit:cover;object-position:top;width:100%}
.tm__avatar{aspect-ratio:4/5;display:grid;place-items:center;background:linear-gradient(135deg,var(--deep),#151310);color:var(--gold);font-family:var(--display);font-size:3rem}.welcome__seals{position:absolute;left:-1.5rem;bottom:1.5rem;display:flex;gap:.6rem;background:rgba(255,255,255,.92);padding:.7rem;border-radius:14px;box-shadow:0 20px 50px -20px rgba(0,0,0,.35)}.welcome__seals img{width:72px;height:72px}
.band{padding:4.5rem 0}.band--paper{background:var(--paper)}.band--dark{background:var(--deep);color:#fff}.band--dark h2{color:#fff}.band--dark .eyebrow{color:var(--gold)}.band--dark .lead{color:#d5dfe5}.band--dark .muted,.band--dark .small{color:#aab7bf}.band h2{margin-top:0}
.spez{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:4rem;align-items:center;padding:5rem 0}.spez h2{margin-top:0}.spez__media .video{margin:0}
.strip{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3rem;align-items:center}.strip__links{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.strip__links a{display:block;padding:.9rem 1.2rem;border:1px solid rgba(255,255,255,.18);border-radius:12px;color:#fff;text-decoration:none;transition:.25s}.strip__links a:hover{background:rgba(92,198,226,.15);border-color:var(--gold)}
.newsblk{padding:4.5rem 0 2rem}.newsblk__head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap}.newsblk h2{margin:0}
.contact{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3rem;align-items:start}.contact h2{margin-top:0}
@media (max-width:900px){.hero__grid{grid-template-columns:minmax(0,1fr)}.hero__txt{min-width:0}h1,h2{overflow-wrap:anywhere;hyphens:auto}.welcome,.spez,.strip,.contact{grid-template-columns:1fr;gap:2.2rem;padding:3.2rem 0}.hh{min-height:78vh}.hh__inner{padding:6rem 0 5.5rem}.hh__trust{padding-right:0;max-width:calc(100% - 5rem)}.welcome__seals{left:.8rem}.band{padding:3.2rem 0}}
.kontakt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.4rem;margin-bottom:3rem}.kontakt-grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem}.kcard{background:var(--paper);border-radius:var(--r);padding:1.5rem 1.6rem}.kcard h2{font-size:1.45rem;margin:.2rem 0 .6rem}.kcard h2 a{text-decoration:none;color:var(--deep)}.kcard .hours{margin:0}.kontakt-grid--2 h2{margin-top:0}
/* Reels / Netzwerk / Zertifikate */
.reels{margin:3rem 0 1rem;padding:1.8rem;background:var(--paper);border-radius:var(--r)}.reels__h{margin-top:0;font-size:1.5rem}.reels__lead{color:var(--graphite);max-width:60ch}
.reels__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin:1.2rem 0}.reels .pv__card{border-color:rgba(10,14,18,.08);box-shadow:0 14px 30px -18px rgba(12,12,12,.5)}.pv__card,.pv__card .pv__q{color:#fff}.pv__card .pv__who{color:#c6d2d9}
.reels--compact .pv__q{font-size:.95rem}.home-reels .reels{margin:4rem 0;padding:0;background:transparent}.home-reels .reels__grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.4rem}.home-reels .reels__h{font-size:clamp(1.55rem,1.2rem + 1.3vw,2.3rem)}
.net{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:1.6rem}.net__card{display:flex;flex-direction:column;gap:.3rem;padding:1.1rem 1.2rem;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.net__card:hover{transform:translateY(-3px);box-shadow:0 24px 50px -30px rgba(12,12,12,.5)}
.net__dom{font-family:var(--mono);font-size:.8rem;letter-spacing:.06em;color:var(--gold-text)}.net__desc{font-size:.95rem;color:var(--graphite)}
.side__net li a{color:var(--graphite);text-decoration:none}.side__net li a strong{color:var(--gold-text);font-weight:600;font-size:.9rem}.side__net li a:hover strong{text-decoration:underline}
.tm__link{display:inline-block;margin-left:.4rem;font-size:.85rem;font-weight:600}
.hero__img--portrait{aspect-ratio:4/5;max-width:380px;margin-left:auto}
.cert-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;margin-bottom:3rem}.cert-intro__bio p{font-size:1.02rem}.hl{display:grid;gap:.15rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.hl strong{color:var(--deep)}.hl span{font-size:.92rem;color:var(--graphite)}
.cert-cat{margin:2.5rem 0}.cert-cat h2{margin:0 0 1rem;font-size:1.5rem}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem}
.cert{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink);aspect-ratio:auto}.cert__pic{display:block;background:var(--bone);padding:.8rem}.cert__pic img{width:100%;height:240px;object-fit:contain;object-position:top;border-radius:6px;box-shadow:0 10px 25px -15px rgba(0,0,0,.5);background:#fff}
.cert__txt{display:grid;gap:.25rem;padding:.9rem 1rem 1.1rem}.cert__year{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--gold-text)}.cert__txt strong{font-size:.98rem;line-height:1.3;color:var(--deep)}.cert__detail{font-size:.84rem;color:var(--graphite);line-height:1.45}
@media (max-width:900px){.cert-intro{grid-template-columns:1fr;gap:1.5rem}}
/* Siegel */
.seal{border:0;background:transparent;padding:0;cursor:pointer;border-radius:50%;transition:transform .3s var(--ease)}.seal:hover{transform:scale(1.06)}.seal:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.seal img{display:block}
.dlg--seal{max-width:560px}.dlg__body--seal{text-align:center}.dlg__body--seal>img{margin:0 auto 1rem;width:120px;height:120px;object-fit:contain}.dlg__body--seal p{text-align:left}.dlg__body--seal .cta-row{justify-content:center}
/* Team-Videos */
.tm__videos{margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--line)}.tm__vlabel{display:block;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:.5rem}
.tm__vrow{display:flex;gap:.4rem;flex-wrap:wrap}.tm__vid{position:relative;width:96px;aspect-ratio:16/9;border:0;padding:0;border-radius:8px;overflow:hidden;cursor:pointer;background:#000;flex:0 0 auto;box-shadow:0 8px 18px -10px rgba(0,0,0,.6)}
.tm__vid img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.85);transition:transform .4s var(--ease)}.tm__vid:hover img{transform:scale(1.06)}.tm__play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:.8rem;text-shadow:0 2px 8px rgba(0,0,0,.8)}
.tm__vmore.pv__card{width:44px;aspect-ratio:16/9;border:1px solid rgba(216,180,106,.7);border-radius:8px;background:linear-gradient(180deg,#1E1B17,var(--deep));color:#fff;font:600 .8rem var(--body);cursor:pointer;display:grid;place-items:center;flex:0 0 auto}
.dlg .reels{padding:1.2rem;margin:1.5rem 0 0}.dlg .reels__grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
/* Footer */
.ft{background:var(--obsidian);color:#c6d2d9;padding:4rem 0 7rem;margin-top:2rem}.ft__bottom{padding-right:15rem}@media (max-width:820px){.ft__bottom{padding-right:0;padding-bottom:5rem}}.ft .muted{color:#aab7bf}.ft li a{hyphens:auto}.ft a{color:#fff;text-decoration:none}.ft a:hover{color:var(--gold)}.ft__col--brand a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px}.ft li a{display:inline-block;padding:.25rem 0;overflow-wrap:anywhere}.ft .btn{white-space:nowrap}.ft__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr 1.1fr;gap:1.8rem}.ft__col h3+ul+h3{margin-top:1.4rem}.ft h3{color:#fff;font-family:var(--mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;margin:0 0 1rem}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin:.35rem 0;font-size:.92rem}.ft__col--brand img{height:40px;width:auto;margin-bottom:1rem}.ft__rating{color:var(--gold);font-size:.9rem}.ft__seals{display:flex;gap:.6rem}.ft__seals img{width:64px;height:64px;background:#fff;border-radius:50%;padding:4px}
.ft .hours th{color:var(--gold)}.ft .hours th,.ft .hours td{border-color:rgba(255,255,255,.1);color:#dfe7ec}.ft__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;border-top:1px solid rgba(255,255,255,.1);margin-top:2.5rem;padding-top:1.4rem;font-size:.85rem}.ft__bottom ul{display:flex;flex-wrap:wrap;gap:1.2rem;list-style:none;margin:0;padding:0}
@media (max-width:1100px){.ft__grid{grid-template-columns:repeat(3,1fr)}.ft__col--brand{grid-column:1/-1}}@media (max-width:760px){.ft__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.ft__grid{grid-template-columns:1fr}}
.legal h2{font-size:1.3rem}.legal code{font-family:var(--mono);font-size:.9em;background:var(--paper);padding:.1em .4em;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.hh__video{display:none}}

/* zahnschmerzen.help: Dringlichkeitsstufen und Angebotsliste */
.angebot ul{list-style:none;padding-left:0;margin:1.6rem 0 0;display:grid;gap:.9rem 2.4rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.angebot li{padding-left:1.8rem;position:relative;line-height:1.55}
.angebot li::before{content:"";position:absolute;left:0;top:.55em;width:1rem;height:.55rem;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg)}
.ehrlich p{max-width:62ch}
.stufen{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:1.8rem 0 0}
.stufen div{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold-deep);border-radius:var(--r);padding:1.1rem 1.3rem}
.stufen div.is-akut{border-left-color:#C0392B}
.stufen b{display:block;font-size:1.02rem;margin-bottom:.35rem}
.stufen span{display:block;font-size:.93rem;color:var(--graphite);line-height:1.5}
.stufen a{font-weight:600}
