@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:400;font-display:swap;src:url(/schrift/atkinson-400.woff2) format("woff2")}
@font-face{font-family:"Atkinson Hyperlegible";font-style:normal;font-weight:700;font-display:swap;src:url(/schrift/atkinson-700.woff2) format("woff2")}
@font-face{font-family:"Fredoka";font-style:normal;font-weight:600;font-display:swap;src:url(/schrift/fredoka-600.woff2) format("woff2")}

:root{
  --grund:#fbf7ef; --flaeche:#ffffff; --sand:#f3ead8; --linie:#e4d8c1;
  --tinte:#2b2118; --leise:#6b5d4d;
  --rost:#b5532a; --rost-dunkel:#8f3e1d; --oliv:#566331; --oliv-hell:#e9edd9;
  --senf:#d9a441; --senf-hell:#f8ecd0; --blau:#5b7182;
  --rund:18px; --schatten:0 10px 30px rgba(60,40,20,.10);
  --breite:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--grund);color:var(--tinte);font:18px/1.6 "Atkinson Hyperlegible",system-ui,sans-serif;-webkit-text-size-adjust:100%}
img{max-width:100%;height:auto;display:block}
a{color:var(--rost-dunkel)}
h1,h2,h3{font-family:"Fredoka","Atkinson Hyperlegible",sans-serif;font-weight:600;line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.1rem,5vw,3.6rem)}
h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
h3{font-size:1.3rem}
p{margin:0 0 1em}
.innen{max-width:var(--breite);margin:0 auto;padding:0 20px}

/* Kopf */
.kopf{position:sticky;top:0;z-index:20;background:rgba(251,247,239,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linie)}
.kopf .innen{display:flex;align-items:center;gap:20px;min-height:68px}
.marke{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--tinte);font-family:"Fredoka",sans-serif;font-size:1.5rem;font-weight:600}
.marke svg{width:38px;height:38px}
.nav{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--tinte);padding:8px 14px;border-radius:999px;font-weight:700;font-size:.95rem}
.nav a:hover{background:var(--sand)}
.nav a.betont{background:var(--rost);color:#fff}
.nav a.betont:hover{background:var(--rost-dunkel)}
@media (max-width:760px){.nav a:not(.betont){display:none}}

/* Knöpfe */
.knopf{display:inline-block;padding:14px 24px;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;transition:transform .15s ease}
.knopf:hover{transform:translateY(-2px)}
.knopf.rost{background:var(--rost);color:#fff}
.knopf.oliv{background:var(--oliv);color:#fff}
.knopf.rand{border-color:var(--tinte);color:var(--tinte);background:transparent}
.knoepfe{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}

/* Bühne */
.buehne{padding:56px 0 30px}
.buehne .innen{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.buehne .unterzeile{font-size:1.25rem;color:var(--leise);max-width:34em}
.marker{display:inline-block;background:var(--senf-hell);color:var(--rost-dunkel);font-weight:700;padding:6px 14px;border-radius:999px;font-size:.9rem;margin-bottom:16px}
.buehne figure{margin:0;background:radial-gradient(circle at 50% 55%,var(--senf-hell),transparent 68%)}
@media (max-width:900px){.buehne .innen{grid-template-columns:1fr}.buehne figure{max-width:520px;margin:0 auto}}

/* Zwei Türen */
.tueren{padding:20px 0 50px}
.tueren .innen{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tuer{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rund);padding:22px;text-decoration:none;color:var(--tinte);box-shadow:var(--schatten);transition:transform .15s ease}
.tuer:hover{transform:translateY(-3px)}
.tuer h3{margin-bottom:.25em}
.tuer p{margin:0;color:var(--leise)}
.tuer .pfeil{display:inline-block;margin-top:10px;font-weight:700;color:var(--rost-dunkel)}
@media (max-width:860px){.tueren .innen{grid-template-columns:1fr}}
@media (max-width:560px){.tuer{grid-template-columns:1fr;text-align:left}.tuer img{max-width:170px}}

/* Abschnitte */
.abschnitt{padding:72px 0}
.abschnitt.sand{background:var(--sand)}
.abschnitt.oliv{background:var(--oliv-hell)}
.kopfzeile{max-width:760px;margin-bottom:34px}
.kopfzeile .vor{font-weight:700;color:var(--rost);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;margin-bottom:8px}
.kopfzeile p{font-size:1.15rem;color:var(--leise)}

/* Ablauf in Schritten */
.schritte{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:schritt}
.schritt{background:var(--flaeche);border-radius:var(--rund);padding:20px;border:1px solid var(--linie);position:relative}
.schritt::before{counter-increment:schritt;content:counter(schritt);position:absolute;top:14px;right:16px;width:34px;height:34px;border-radius:50%;background:var(--senf);color:var(--tinte);font-weight:700;display:grid;place-items:center}
.schritt img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--grund);border-radius:12px;margin-bottom:14px}
.schritt h3{font-size:1.15rem}
.schritt p{margin:0;color:var(--leise);font-size:1rem}
@media (max-width:900px){.schritte{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.schritte{grid-template-columns:1fr}}

/* Bild + Text */
.paar{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:44px;align-items:center;margin:0 0 56px}
.paar.rechts{grid-template-columns:1fr minmax(220px,380px)}
.paar.rechts figure{order:2}
.paar figure{margin:0}
.paar:last-child{margin-bottom:0}
@media (max-width:820px){.paar,.paar.rechts{grid-template-columns:1fr}.paar.rechts figure{order:0}.paar figure{max-width:300px}}

.haken{list-style:none;padding:0;margin:0}
.haken li{padding-left:34px;position:relative;margin:0 0 10px}
.haken li::before{content:"";position:absolute;left:0;top:.35em;width:22px;height:22px;border-radius:50%;background:var(--oliv) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.haken li strong{display:block}

/* Karten */
.karten{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--rund);padding:22px}
.karte .zeichen{width:46px;height:46px;border-radius:12px;background:var(--senf-hell);color:var(--rost);display:grid;place-items:center;margin-bottom:12px}
.karte .zeichen svg{width:26px;height:26px}
.karte h3{font-size:1.15rem}
.karte p{margin:0;color:var(--leise);font-size:1rem}
@media (max-width:900px){.karten{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.karten{grid-template-columns:1fr}}

/* Rechnung */
.rechnung{background:var(--flaeche);border-radius:var(--rund);border:1px solid var(--linie);padding:24px;box-shadow:var(--schatten)}
.regeln{display:flex;flex-direction:column;gap:10px;margin:0 0 18px;padding:0;list-style:none}
.regeln li{background:var(--senf-hell);border-radius:12px;padding:10px 14px;font-weight:700}
.regeln li span{display:block;font-weight:400;color:var(--leise);font-size:.95rem}
table.tafel{width:100%;border-collapse:collapse;font-size:1rem}
.tafel th,.tafel td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--linie)}
.tafel th{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--leise)}
.tafel td.zahl,.tafel th.zahl{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tafel tr.summe td{font-weight:700;border-bottom:none}
.klein{font-size:.9rem;color:var(--leise)}

/* Preise */
.preise{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.preis{background:var(--flaeche);border:2px solid var(--linie);border-radius:var(--rund);padding:26px;display:flex;flex-direction:column}
.preis.hervor{border-color:var(--rost)}
.preis .betrag{font-family:"Fredoka",sans-serif;font-size:2.1rem;margin:6px 0 2px}
.preis .zusatz{color:var(--leise);font-size:.95rem;margin-bottom:16px}
.preis .haken{margin-bottom:20px}
.preis .knopf{margin-top:auto;text-align:center}
@media (max-width:900px){.preise{grid-template-columns:1fr}}

/* Vertrauen */
.vertrauen{display:grid;grid-template-columns:minmax(200px,320px) 1fr;gap:40px;align-items:center}
@media (max-width:820px){.vertrauen{grid-template-columns:1fr}.vertrauen figure{max-width:260px}}

/* Fragen */
details.frage{background:var(--flaeche);border:1px solid var(--linie);border-radius:14px;margin:0 0 12px}
details.frage summary{cursor:pointer;padding:16px 20px;font-weight:700;list-style:none;position:relative;padding-right:48px}
details.frage summary::-webkit-details-marker{display:none}
details.frage summary::after{content:"+";position:absolute;right:20px;top:12px;font-size:1.5rem;color:var(--rost)}
details.frage[open] summary::after{content:"–"}
details.frage div{padding:0 20px 16px;color:var(--leise)}

/* Schluss */
.schluss{background:var(--tinte);color:#f8f1e4;padding:70px 0;text-align:center}
.schluss h2{color:#fff}
.schluss p{color:#e2d6c2;max-width:640px;margin:0 auto 1em}
.schluss .knoepfe{justify-content:center}
.schluss .knopf.rand{border-color:#f8f1e4;color:#f8f1e4}

.fuss{padding:30px 0 40px;font-size:.92rem;color:var(--leise)}
.fuss .innen{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.fuss a{color:var(--leise)}
.fuss .rechts{margin-left:auto;display:flex;gap:18px}

/* Rechtsseiten */
.prosa{max-width:820px;margin:0 auto;padding:50px 20px 70px}
.prosa h1{font-size:2.3rem}
.prosa h2{font-size:1.4rem;margin-top:1.6em}
.prosa .stand{color:var(--leise)}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.rechnung{overflow-x:auto}
@media (max-width:560px){.tafel{font-size:.82rem}.tafel th,.tafel td{padding:7px 5px}}
