/* steps. base colour "Himmel" (chosen 2026-11-08 with the Koralle accent), shared by every page.
   Bright sky-blue surfaces where the first design had dark navy. The voucher and the
   footer stay dark on purpose, as anchors. Every rule starts with html so it beats the plain
   page rules without !important (flat, no CSS nesting, so old iPhones get it too). Tokens --s-* live in tokens.css. */
/* ribbon + header */
html .ribbon{ background:var(--s-ribbon); color:var(--ink); }
html .ribbon b{ color:var(--ink); }
html .ribbon .free{ color:var(--accent-ink); background:rgba(255,255,255,.6); }
html .head{ background:color-mix(in srgb, var(--s-head) 90%, transparent); }
html :focus-visible,html .cbar :focus-visible{ outline-color:var(--accent-ink); }
html .head[data-scrolled="true"]{ border-bottom-color:var(--line); }
html .head .mark{ color:var(--ink); }
html .head .mark small{ color:var(--ink-2); }
html .nav a.lnk,html .dd-btn{ color:var(--ink); }
html .nav a.lnk:hover,html .dd-btn:hover,html .dd-btn[aria-expanded="true"]{ background:rgba(11,28,39,.06); color:var(--ink); }
html .dark .eyebrow{ color:var(--accent-ink); }
html .btn--ghost-d{ color:var(--ink); border-color:rgba(11,28,39,.2); }
html .btn--ghost-d:hover{ border-color:var(--ink); background:rgba(255,255,255,.5); }

/* hero */
html .hero{ background:linear-gradient(175deg,var(--s-hero) 30%,var(--s-hero-2)); color:var(--ink); }
html .hero::before{ background-image:radial-gradient(circle, rgba(11,28,39,.07) 1px, transparent 1.4px); }
html .hero .glow .g1{ background:radial-gradient(circle,rgba(var(--accent-rgb),.2),transparent 65%); }
html .hero .glow .g2{ background:radial-gradient(circle,rgba(255,255,255,.9),transparent 62%); }
html .tag{ background:rgba(255,255,255,.75); border-color:var(--line); color:var(--ink); }
html .hero h1,html .hero .sub b{ color:var(--ink); }
html .hero .sub,html .cta-note{ color:var(--ink-2); }
html .stats{ border-top-color:rgba(11,28,39,.12); }
html .stats li{ border-right-color:rgba(11,28,39,.12); }
html .stats b{ color:var(--ink); }
html .stats li:first-child b{ color:var(--accent-ink); }
html .stats span{ color:var(--ink-2); }
html .photo-wrap{ box-shadow:0 26px 50px rgba(11,28,39,.18); }
html .photo-wrap::after{ display:none; }
html .card .vshadow{ opacity:.55; }

/* journey */
html .toggle{ background:#fff; box-shadow:inset 0 0 0 1px var(--line); }
html .toggle button{ color:var(--ink-2); }
html .toggle button[aria-pressed="true"]{ color:var(--on-accent); }
html .tl-check{ background:#fff; color:var(--ink); box-shadow:inset 0 0 0 1px var(--line); }
html .tl-check:hover{ background:#fff; box-shadow:inset 0 0 0 1px var(--ink); }
html .tl-check svg{ color:var(--accent-ink); }
html .tl-ic{ background:#fff; color:var(--accent-ink); border-color:var(--line); box-shadow:0 8px 20px rgba(11,28,39,.08); }
/* goal: a white card on the bright base, the gold icon and badge mark the finish */
html .tl-step.goal .tl-card{ background:#fff; border-color:var(--line); color:var(--ink); box-shadow:0 14px 36px rgba(11,28,39,.08); }
html .tl-step.goal .tl-card h3{ color:var(--ink); }
html .tl-step.goal .tl-card p,html .tl-step.goal .tl-card .st{ color:var(--ink-2); }
html .tl-step.goal.on .tl-card{ border-color:rgba(227,180,87,.6); box-shadow:0 18px 44px rgba(11,28,39,.1), 0 0 0 1px rgba(227,180,87,.3); }
html .tl-step.goal.on .tl-card .st{ color:#8A6414; }
html .tl-step.goal .tl-card .badge{ color:var(--ink); background:rgba(11,28,39,.06); }
html .tl-step.goal.on .tl-card .badge{ color:#2E2408; background:var(--gold); }

/* coachings advice card */
html .ccard--cta{ background:var(--s-feat); border-color:var(--line); color:var(--ink); }
html .ccard--cta h3{ color:var(--ink); }
html .ccard--cta p{ color:var(--ink-2); }

/* feature section */
html .dark-sec{ background:var(--s-feat); color:var(--ink); }
html .dark-sec::before{ background-image:radial-gradient(circle,rgba(11,28,39,.06) 1px,transparent 1.4px); }
html .dark-sec h2,html .flist b{ color:var(--ink); }
html .dark-sec .lead,html .flist span{ color:var(--ink-2); }
html .split2 .ph{ box-shadow:0 22px 44px rgba(11,28,39,.16); }

/* booking */
html .final{ background:linear-gradient(170deg,var(--s-final),var(--s-final-2)); color:var(--ink); }
html .final::before{ background-image:radial-gradient(circle,rgba(11,28,39,.06) 1px,transparent 1.4px); }
html .final h2{ color:var(--ink); }
html .final .lead{ color:var(--ink-2); }
html .cal-gate .ic{ background:rgba(var(--accent-rgb),.16); color:var(--accent-ink); box-shadow:none; }

/* contact bar */
html .cbar{ background:color-mix(in srgb, #fff 94%, transparent); color:var(--ink); box-shadow:0 -10px 30px rgba(11,28,39,.08); }
html .cbar-st{ color:var(--ink-2); }
html .cbar-st[data-open="true"]{ color:#0F7A4F; }
html .cbar-txt p{ color:var(--ink); }
html .cbar-a{ color:var(--ink); background:rgba(11,28,39,.04); border-color:var(--line); }
html .cbar-a:hover{ background:rgba(11,28,39,.08); }
html .cbar-a.go{ background:var(--mint); color:var(--on-accent); border-color:transparent; }

/* generated pages (coachings.html, coaching pages, legal) and antrag.html */
html .nav a.lnk[aria-current]{ background:rgba(11,28,39,.06); color:var(--ink); }
html .hero .facts,html .crumbs{ color:var(--ink-2); }
html .crumbs a{ color:var(--ink); }
html .crumbs a:hover,html .crumbs [aria-current]{ color:var(--ink); }
html .hero .chip{ color:var(--accent-ink); background:rgba(255,255,255,.75); }
html .dark :focus-visible{ outline-color:var(--accent-ink); }
html .contact a{ color:var(--ink); }
html .contact span{ color:var(--ink-2); }
html .goal:not(.tl-step){ background:linear-gradient(160deg,var(--s-final),var(--s-final-2)); color:var(--ink); }
html .goal:not(.tl-step) h2{ color:var(--ink); }
html .goal:not(.tl-step) p{ color:var(--ink-2); }
html .goal:not(.tl-step) .eyebrow{ color:var(--accent-ink); }
html .goal:not(.tl-step) li{ background:rgba(255,255,255,.7); border-color:rgba(11,28,39,.08); }
html .goal:not(.tl-step) li svg{ color:var(--accent-ink); }

html .head :focus-visible{ outline-color:var(--accent-ink); }
