@font-face{font-family:"Instrument Sans";src:url(/assets/fonts/InstrumentSans.woff2) format("woff2");font-weight:400 700;font-display:swap}

/* Farben: Weiß, Tinte, Orange, Rosa, Lila.
   Alles in rem; ab 1440 px wächst 1rem mit der Fensterbreite, so füllt die Seite jeden Bildschirm gleich. */
html{font-size:max(100%,1.1111vw);-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
:root{
  --tinte:#131315;--ton:#5C5D63;--grau:#8D8E94;--akzent:#CF4610;--akzent-d:#B53C0C;--orange:#F2591D;--rosa:#E9407A;--lila:#6A4BFF;
  --papier:#fff;--nebel:#F6F6F8;--linie:#E7E7EB;--nacht:#131118;--nacht-ton:#A9A8B4;
  --sans:"Instrument Sans",-apple-system,system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  --schatten:0 0 0 1px rgb(19 19 21/.05),0 .125rem .25rem -.0625rem rgb(19 19 21/.06),0 .75rem 1.5rem -.5rem rgb(19 19 21/.12),0 2rem 4rem -1.5rem rgb(19 19 21/.22);
  --verlauf:linear-gradient(90deg,#FF9A5C 0%,#F2591D 34%,#E9407A 68%,#6A4BFF 100%);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--papier);color:var(--tinte);font:400 1.0625rem/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip;position:relative}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--akzent);outline-offset:3px;border-radius:.25rem}
h1,h2,h3,p,ul,ol,dl{margin:0;padding:0}
ul,ol{list-style:none}
h1,h2,h3{font-weight:400;overflow-wrap:break-word}
h1{font-size:clamp(2.25rem,1.3rem + 2.8vw,3.5rem);line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
h1 .soft{color:var(--ton)}
h2{font-size:clamp(1.625rem,1.2rem + 1.2vw,2.125rem);line-height:1.18;letter-spacing:-.02em}
h3{font-size:1.375rem;line-height:1.22;letter-spacing:-.015em}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:var(--tinte);color:#fff;padding:.5rem .75rem;z-index:80;border-radius:.375rem}
.in{width:min(calc(100% - 2rem),77rem);margin-inline:auto;position:relative;z-index:1}
.lead{font-size:clamp(1.0625rem,.95rem + .35vw,1.1875rem);line-height:1.55;color:var(--ton);max-width:37rem}
.ton{color:var(--ton)}
.zwei{max-width:52rem;text-wrap:pretty}
.label{font-size:.875rem;font-weight:500;color:#FFB48C;text-align:center;margin-bottom:1rem}
.label.dunkel{color:var(--akzent-d);text-align:left}
.abschnitt{padding-block:5rem}
@media(min-width:768px){.abschnitt{padding-block:7.5rem}}
.oben-linie>.in{border-top:1px solid var(--linie);padding-top:5rem;}
.abschnitt.oben-linie{padding-top:0}
@media(min-width:768px){.oben-linie>.in{padding-top:7.5rem}}

/* Führungslinien wie bei Stripe */
@media(min-width:1300px){body::before,body::after{content:"";position:absolute;top:0;bottom:0;width:1px;background:var(--linie);pointer-events:none;z-index:0}body::before{left:calc(50% - 39.5rem)}body::after{right:calc(50% - 39.5rem)}}

/* Knöpfe */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:.5rem 1.125rem;border:0;border-radius:.375rem;background:var(--akzent);color:#fff;font:500 .9375rem/1.2 var(--sans);cursor:pointer;transition:background-color .2s,box-shadow .2s;text-align:center}
.btn:hover{background:var(--akzent-d)}
.btn-s{min-height:2.5rem;white-space:nowrap}
.btn-rand{background:#fff;color:var(--tinte);box-shadow:inset 0 0 0 1px #D6D6DC}
.btn-rand:hover{background:#fff;box-shadow:inset 0 0 0 1px var(--akzent);color:var(--akzent-d)}
.btn-weiss{background:#fff;color:var(--tinte)}
.btn-weiss:hover{background:var(--nebel)}
.btn:disabled{opacity:.6;cursor:default}
.pf{width:.625rem;height:.625rem;flex:none;transition:transform .2s}
a:hover>.pf,button:hover>.pf{transform:translateX(3px)}

/* Kopf */
.kopf{position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid transparent;transition:background-color .25s,border-color .25s}
.kopf.scrolled,.legal-seite .kopf{background:rgb(255 255 255/.9);border-color:var(--linie);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}
.kopf-in{display:flex;align-items:center;gap:1.5rem;min-height:4.75rem}
.marke{display:inline-flex;align-items:center;gap:.625rem;font-weight:600;font-size:1.0625rem;letter-spacing:-.015em}
.badge{display:grid;place-items:center;width:1.875rem;height:1.875rem;border-radius:.4375rem;background:linear-gradient(135deg,var(--orange),var(--rosa))}
.badge svg{width:1.125rem;height:1.125rem}
.nav{display:flex;gap:.25rem;margin-left:1.25rem}
.nav a{display:inline-flex;align-items:center;min-height:2.75rem;padding-inline:.75rem;font-size:.9375rem;font-weight:500;transition:color .2s}
.nav a:hover,.lang:hover{color:var(--akzent-d)}
.rechts{margin-left:auto;display:flex;align-items:center;gap:.75rem}
.lang{display:inline-flex;align-items:center;min-height:2.5rem;padding-inline:.75rem;border-radius:.375rem;background:rgb(255 255 255/.86);font-size:.9375rem;font-weight:500}
.menue{display:none;position:relative}
.menue summary{list-style:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;cursor:pointer;border-radius:.375rem;background:#fff;box-shadow:inset 0 0 0 1px var(--linie)}
.menue summary::-webkit-details-marker{display:none}
.menue summary svg{width:1.25rem;height:1.25rem}
.menue nav{position:absolute;right:0;top:calc(100% + .5rem);min-width:15rem;padding:.5rem;background:#fff;border-radius:.5rem;box-shadow:var(--schatten);display:grid}
.menue nav a{display:flex;align-items:center;min-height:2.75rem;padding-inline:.75rem;border-radius:.375rem;font-size:1rem}
.menue nav a:hover{background:var(--nebel)}
@media(max-width:860px){.nav{display:none}.menue{display:block}.rechts{gap:.25rem}.kopf-in{gap:.5rem}.kopf-in .btn-s{display:none}}

/* Hero */
.hero{position:relative;overflow:hidden}
.band{position:absolute;top:0;right:0;height:100%;width:100%;opacity:.95;-webkit-mask-image:linear-gradient(to bottom,#000 6%,transparent 30%);mask-image:linear-gradient(to bottom,#000 6%,transparent 30%);pointer-events:none}
@media(min-width:1024px){.band{width:74%;-webkit-mask-image:linear-gradient(to left,#000 55%,transparent 96%);mask-image:linear-gradient(to left,#000 55%,transparent 96%)}}
.hero-in{display:grid;gap:3rem;padding-top:8.5rem;padding-bottom:4rem}
@media(min-width:1024px){.hero-in{grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);align-items:center;padding-top:clamp(8.5rem,24vh,12rem);padding-bottom:clamp(4.5rem,11vh,7rem)}}
.zeile{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.4;margin-bottom:1.25rem}
.punkt{width:.5rem;height:.5rem;border-radius:50%;background:var(--akzent);box-shadow:0 0 0 .25rem rgb(242 89 29/.18)}
.hero .lead{margin-top:1.5rem}
.cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.25rem}

/* Musterkarten */
.hero-bild{position:relative;height:29.5rem;min-width:0}
.m{position:absolute;background:#fff;border-radius:.625rem;box-shadow:var(--schatten);padding:1rem;font-size:.8125rem;line-height:1.35}
.m-kopf{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500}
.m-ic{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:.3125rem;background:#FDE6DB;color:var(--akzent)}
.m-ic svg,.m-haken svg{width:.875rem;height:.875rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.m-zahl{font-size:1.75rem;line-height:1.1;letter-spacing:-.025em;margin-top:.75rem}
.m-klein{color:var(--ton);font-size:.75rem;margin-top:.25rem}
.m-rechner{left:0;top:0;width:min(17rem,74%)}
.m-kurve{width:100%;height:3.5rem;margin-top:.75rem}
.m-auto{right:0;top:9.5rem;width:min(14.5rem,62%);z-index:2}
.m-z{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-top:1px solid var(--linie);margin-top:.5rem;font-size:.75rem}
.m-z+.m-z{margin-top:0}
.m-z i{width:.5rem;height:.5rem;border-radius:50%;background:#17914F}
.m-z.an i{background:var(--orange);box-shadow:0 0 0 .1875rem rgb(242 89 29/.2)}
.m-nacht{left:6%;top:20.5rem;width:min(15rem,66%);background:var(--tinte);color:#fff;z-index:3}
.m-nacht .m-klein{color:#A9A8B4}
.m-balken{height:.3125rem;border-radius:9rem;background:rgb(255 255 255/.16);margin-top:.75rem;overflow:hidden}
.m-balken i{display:block;height:100%;width:62%;background:var(--verlauf)}
.m-chip{right:4%;top:.75rem;display:flex;gap:.625rem;align-items:center;padding:.625rem .875rem .625rem .625rem;font-size:.75rem;color:var(--ton);z-index:2}
.m-chip b{display:block;font-weight:500;color:var(--tinte)}
.m-haken{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:#DDF3E6;color:#17914F;flex:none}
@media(max-width:1023px){.hero-bild{height:28.5rem}.m-chip{top:auto;bottom:0;right:0}.m-auto{top:8.5rem}.m-nacht{top:20rem;left:0}}
@media(max-width:600px){.m-chip{display:none}}

/* Laufband */
.namen{border-block:1px solid var(--linie);overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}
.namen-lauf{display:flex;width:max-content;gap:4.5rem;padding:1.5rem 4.5rem 1.5rem 0}
.namen-lauf li{font-size:1.125rem;font-weight:600;letter-spacing:-.015em;color:#3D3D44;white-space:nowrap}
@keyframes lauf{to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:no-preference){.namen-lauf{animation:lauf 38s linear infinite}}

/* Bento */
.karte{background:#fff;border:1px solid var(--linie);border-radius:.5rem;overflow:hidden;position:relative}
.bento{display:grid;gap:1rem;margin-top:3rem}
@media(min-width:768px){.bento{grid-template-columns:1fr 1fr}.breit{grid-column:1/-1}}
.kachel{display:flex;flex-direction:column;padding:1.5rem 1.5rem 0}
.kachel>p,.breit-text>p{margin-top:.625rem;font-size:.9375rem;color:var(--ton);max-width:30rem}
.haken{margin-top:1rem;display:grid;gap:.375rem;font-size:.9375rem}
.mehr{display:inline-flex;align-items:center;align-self:flex-start;gap:.375rem;margin-top:1rem;min-height:2.75rem;font-size:.9375rem;font-weight:500;color:var(--akzent-d)}
.haken li{position:relative;padding-left:1.375rem}
.haken li::before{content:"";position:absolute;left:0;top:.4em;width:.75rem;height:.4375rem;border-left:2px solid var(--akzent);border-bottom:2px solid var(--akzent);transform:rotate(-45deg) scale(.8)}
.bild{position:relative;display:grid;place-items:center;flex:1;min-height:17rem;margin:1.5rem -1.5rem 0;overflow:hidden}
.bild.kurz{min-height:11rem}
.b-orange{background:radial-gradient(90% 120% at 100% 100%,#FFB48C 0%,#FDE6DB 52%,#fff 92%)}
.b-rosa{background:radial-gradient(90% 120% at 0% 100%,#F7A8C4 0%,#FBE3EC 52%,#fff 92%)}
.b-lila{background:linear-gradient(110deg,#fff 0%,#E8E4FF 42%,#B3A4FF 100%)}
.bild .m{position:relative}
.m-balken-tafel{width:min(19rem,76%);display:grid;gap:.75rem}
.m-balken-tafel i{display:block;height:.75rem;width:var(--w);border-radius:9rem;background:linear-gradient(90deg,var(--orange),var(--rosa))}
.telefon{background:var(--tinte);border-radius:1.75rem;padding:.4rem;width:10.5rem;transform:translateY(2.5rem);box-shadow:0 1.875rem 3.75rem -1.25rem rgb(19 19 21/.45)}
.schirm{background:#fff;border-radius:1.4rem;padding:1.5rem 1rem 3.5rem;display:grid;gap:.625rem;min-height:15rem;align-content:start}
.schirm i{display:block;height:.5rem;border-radius:9rem;background:#E7E7EB}
.schirm .z2{width:66%}.schirm .z3{width:80%}
.schirm .fehlt{height:4.5rem;border-radius:.5rem;background:repeating-linear-gradient(135deg,rgb(233 64 122/.14) 0 .4rem,transparent .4rem .8rem);outline:1.5px dashed var(--rosa);outline-offset:-1.5px}
.breit{padding-bottom:0}
@media(min-width:768px){.breit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1.5rem;padding:0}.breit-text{padding:1.5rem 0 2rem 1.5rem}.breit .bild{margin:0;min-height:18rem}}
.kalender{display:grid;grid-template-columns:repeat(5,1fr);gap:.375rem;width:min(24rem,80%)}
.kalender i{aspect-ratio:1.5;border-radius:.3125rem;background:rgb(255 255 255/.75);box-shadow:inset 0 0 0 1px rgb(106 75 255/.2)}
.kalender i:nth-child(-n+18){background:var(--lila);opacity:.72;box-shadow:none}
.m-regler{width:min(19rem,76%);display:grid;gap:1rem}
.r{height:.375rem;border-radius:9rem;background:#EDEDF0}
.r i{display:block;position:relative;height:100%;width:var(--w);border-radius:9rem;background:var(--akzent)}
.r i::after{content:"";position:absolute;right:-.5rem;top:-.3125rem;width:1rem;height:1rem;border-radius:50%;background:#fff;box-shadow:0 0 0 2px var(--akzent)}
.fluss{width:min(21rem,84%)}
.browser{width:min(30rem,84%);background:#fff;border-radius:.5rem .5rem 0 0;box-shadow:var(--schatten);align-self:end;transform:translateY(.0625rem)}
.leiste{display:flex;gap:.375rem;padding:.625rem .75rem;border-bottom:1px solid var(--linie)}
.leiste i{width:.5rem;height:.5rem;border-radius:50%;background:#DADADF}
.seite{padding:1.5rem;display:grid;gap:.75rem}
.seite i{display:block;border-radius:9rem;height:.625rem;background:#EDEDF0}
.seite .s1{height:1.25rem;width:68%;background:var(--tinte)}.seite .s2{width:88%}.seite .s3{width:32%;height:1.75rem;border-radius:.3125rem;background:var(--akzent)}
.s4{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.5rem}
.s4 u{height:4rem;border-radius:.375rem;background:var(--nebel);text-decoration:none}

/* Kennzahlen */
.band-hell{background:var(--nebel);position:relative}
.zahlen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));text-align:center}
@media(min-width:1024px){.zahlen{grid-template-columns:repeat(4,minmax(0,1fr))}}
.zahlen li{padding:2.5rem .75rem}
.zahlen b{display:block;font-weight:400;font-size:clamp(2.25rem,1.6rem + 1.8vw,3rem);line-height:1.05;letter-spacing:-.03em}
.zahlen span{display:block;max-width:14rem;margin:.625rem auto 0;font-size:.875rem;line-height:1.4;color:var(--ton)}

/* Dunkler Teil */
.nacht{position:relative;background:var(--nacht);color:#fff;padding-block:calc(5rem + 5vw);-webkit-clip-path:polygon(0 5vw,100% 0,100% calc(100% - 5vw),0 100%);clip-path:polygon(0 5vw,100% 0,100% calc(100% - 5vw),0 100%);overflow:hidden}
.strahlen{position:absolute;left:50%;bottom:-40%;width:130%;aspect-ratio:1;transform:translateX(-50%);background:repeating-conic-gradient(from 0deg at 50% 50%,rgb(255 180 140/.34) 0 .25deg,transparent .25deg 2.2deg);-webkit-mask-image:radial-gradient(closest-side,transparent 18%,#000 26%,transparent 62%);mask-image:radial-gradient(closest-side,transparent 18%,#000 26%,transparent 62%)}
.nacht-in{z-index:1}
.mitte{text-align:center;font-size:clamp(2rem,1.3rem + 2.2vw,3.25rem);line-height:1.1;letter-spacing:-.025em;text-wrap:balance}
.mitte-text{margin:1.25rem auto 0;text-align:center;color:var(--nacht-ton)}
.schritte{display:grid;gap:2rem;margin-top:4rem}
@media(min-width:640px){.schritte{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.schritte{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.schritte li{padding-inline:1.5rem;border-left:1px dashed rgb(255 255 255/.16)}}
.nr{font-size:.875rem;color:var(--nacht-ton)}
.schritte h3{margin-top:.5rem;font-size:clamp(1.375rem,1.1rem + .7vw,1.75rem);line-height:1.15;background:linear-gradient(90deg,#FFD0B3,#FF8D52 55%,#F478A5);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.0625rem}
.schritte p{margin-top:.75rem;font-size:.9375rem;color:var(--nacht-ton)}
.status{display:inline-block;margin-top:1rem;padding:.1875rem .625rem;border-radius:.3125rem;background:rgb(255 255 255/.08);font-size:.8125rem;color:#fff}

/* Kundenschutz */
.vier{display:grid;gap:2.5rem;margin-top:3.5rem}
@media(min-width:640px){.vier{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.vier{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}}
.ic{display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border:1px solid var(--linie);border-radius:.375rem;color:var(--akzent)}
.ic svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vier h3{margin-top:1rem;font-size:1.0625rem;line-height:1.3;font-weight:500;letter-spacing:-.01em}
.vier p{margin-top:.5rem;font-size:.9375rem;color:var(--ton)}

/* Preise */
.preis-kopf{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:flex-end}
.preis-kopf .zwei{flex:1 1 30rem}
.cur{display:inline-flex;padding:.1875rem;border-radius:.375rem;background:var(--nebel);box-shadow:inset 0 0 0 1px var(--linie)}
.cur button{min-height:2.5rem;padding:.25rem .875rem;border:0;border-radius:.25rem;background:none;font:500 .875rem var(--sans);color:var(--ton);cursor:pointer}
.cur button[aria-pressed=true]{background:#fff;color:var(--tinte);box-shadow:0 1px 2px rgb(19 19 21/.12)}
.plans{display:grid;gap:1rem;margin-top:3rem}
@media(min-width:900px){.plans{grid-template-columns:repeat(3,minmax(0,1fr))}}
.plan{display:flex;flex-direction:column;padding:1.5rem}
.plan.hl{border-color:transparent;box-shadow:0 0 0 1.5px var(--akzent),var(--schatten)}
.tag{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.8125rem;color:var(--ton);min-height:1.5rem}
.emp{padding:.0625rem .5rem;border-radius:.3125rem;background:#FDE6DB;color:var(--akzent-d);font-weight:500}
.plan h3{margin-top:1rem}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .625rem;margin-top:.75rem}
.price>span{font-size:clamp(2.5rem,1.9rem + 1.5vw,3rem);line-height:1.05;letter-spacing:-.03em}
.price small{font-size:.875rem;color:var(--ton)}
.plan p{margin-top:1rem;margin-bottom:1.5rem;font-size:.9375rem;color:var(--ton);flex:1}
.fest{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem;margin-top:1rem;padding:1.25rem 1.5rem;border:1px solid var(--linie);border-radius:.5rem;background:var(--nebel);font-size:.9375rem}
@media(min-width:640px){.fest{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1100px){.fest{grid-template-columns:repeat(6,minmax(0,1fr))}}
.fest>div{display:flex;flex-direction:column;min-width:0}
.fest b{font-weight:500}.fest>div>span:first-child{color:var(--ton)}.fest>div:first-child span{color:var(--ton)}
.fest .v{color:var(--tinte);font-size:1.125rem}
.netto{margin-top:1rem;font-size:.875rem;color:var(--ton)}
.banner{position:relative;margin-top:3rem;border-radius:.5rem;overflow:hidden;background:radial-gradient(70% 150% at 100% 0%,#6A4BFF 0%,transparent 70%),radial-gradient(70% 170% at 76% 110%,#E9407A 0%,transparent 66%),radial-gradient(60% 120% at 46% 0%,rgb(242 89 29/.85) 0%,transparent 72%),var(--nacht);color:#fff}
.banner>div{max-width:38rem;padding:2.5rem 1.5rem}
@media(min-width:768px){.banner>div{padding:3.5rem 2.5rem}}
.banner h3{font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem);line-height:1.12;letter-spacing:-.02em}
.banner p{margin:1rem 0 1.75rem;font-size:1rem;color:rgb(255 255 255/.86)}

/* Fragen */
.faq-raster{display:grid;gap:2.5rem}
@media(min-width:900px){.faq-raster{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:3rem}}
.faq details{border-top:1px solid var(--linie)}
.faq details:last-child{border-bottom:1px solid var(--linie)}
.faq summary{list-style:none;display:flex;align-items:center;gap:1rem;min-height:4.5rem;padding-block:.75rem;cursor:pointer;font-size:1.125rem;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.plus{margin-left:auto;flex:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:.375rem;background:#FDE6DB;color:var(--akzent-d)}
.plus svg{width:1.125rem;height:1.125rem;transition:transform .2s}
details[open] .plus svg{transform:rotate(45deg)}
.faq details>p{padding:0 3.75rem 1.5rem 0;color:var(--ton);font-size:1rem}
@media(max-width:520px){.faq details>p{padding-right:0}}
.faq details>p a{text-decoration:underline;text-underline-offset:2px}

/* Kontakt */
.kontakt{padding-block:5rem}
@media(min-width:768px){.kontakt{padding-block:7.5rem}}
.kontakt-raster{display:grid;gap:3rem}
@media(min-width:1024px){.kontakt-raster{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:4rem;align-items:start}}
.kontakt .lead{margin-top:1rem}
.direkt{display:grid;gap:1rem;margin-top:2rem;font-size:.9375rem}
.direkt .k{display:block;font-size:.8125rem;color:var(--ton)}
.direkt a{font-weight:500}
.direkt .trenner{color:var(--ton)}
.formular{padding:clamp(1.25rem,3vw,2rem)}
.row{display:grid;gap:0 1rem}
@media(min-width:600px){.row{grid-template-columns:1fr 1fr}}
.f{margin-bottom:1.125rem;min-width:0}
.f label,.lbl{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500}
.o{font-weight:400;color:var(--ton)}
input:not([type=checkbox]),textarea{width:100%;min-height:2.75rem;padding:.625rem .75rem;border:1px solid #D6D6DC;border-radius:.375rem;background:#fff;color:var(--tinte);font:400 1rem/1.4 var(--sans)}
input:focus,textarea:focus{outline:2px solid var(--akzent);outline-offset:-1px;border-color:transparent}
textarea{min-height:7.5rem;resize:vertical}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chips label{margin:0;font-weight:400;cursor:pointer}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-flex;align-items:center;min-height:2.5rem;padding:.25rem .75rem;border:1px solid #D6D6DC;border-radius:.375rem;background:#fff;font-size:.875rem;transition:border-color .15s,background-color .15s}
.chips span:hover{border-color:var(--akzent)}
.chips input:checked+span{background:#FDE6DB;border-color:var(--akzent);color:var(--akzent-d)}
.chips input:focus-visible+span{outline:2px solid var(--akzent);outline-offset:2px}
.hp{position:absolute;left:-9999px}
.send{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}
.send .btn{white-space:nowrap}
.small{font-size:.8125rem;color:var(--ton)}
.small a{text-decoration:underline;text-underline-offset:2px}
.msg{margin-top:.75rem;font-size:.875rem;min-height:1.25rem}
.msg.err{color:#B3261E}
.msg a{font-weight:500;text-decoration:underline;text-underline-offset:.15em}
.done h3{margin-bottom:.5rem}.muted{color:var(--ton)}

/* Fuß */
.fuss{background:var(--nebel);position:relative;font-size:.9375rem}
.fuss-raster{display:grid;gap:2rem;padding-block:3.5rem;border-top:1px dashed #D6D6DC}
@media(min-width:640px){.fuss-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.fuss-raster{grid-template-columns:1.4fr 1fr 1fr 1fr}.fuss-raster>div+div{border-left:1px dashed #D6D6DC;padding-left:1.5rem}}
.fuss-raster p{color:var(--ton);margin-top:.75rem;font-size:.875rem;max-width:16rem}
.fuss-raster .ft{margin:0 0 .5rem;font-weight:500;color:var(--tinte)}
.fuss-raster>div>a:not(.marke){display:block;padding-block:.375rem;color:var(--ton);transition:color .2s}
.fuss-raster>div>a:not(.marke):hover{color:var(--tinte)}
.fuss-knopf{display:block;padding:.375rem 0;border:0;background:none;color:var(--ton);font:inherit;text-align:left;cursor:pointer;transition:color .2s}
.fuss-knopf:hover{color:var(--tinte)}
.fuss-knopf[hidden]{display:none}
.fuss-unten{padding-block:1.75rem 2.25rem;border-top:1px dashed #D6D6DC;font-size:.875rem;color:var(--ton)}

/* Rechtsseiten */
.legal{padding:9rem 1rem 5rem}
.legal .wrap{max-width:48.75rem;margin:0 auto}
.legal h1{font-size:clamp(2.125rem,1.4rem + 2.4vw,3.25rem);margin-bottom:1.75rem;letter-spacing:-.03em}
.legal h2{font-size:1.375rem;margin:2.25rem 0 .625rem}
.legal h3{font-size:1.125rem;margin:1.5rem 0 .5rem}
.legal p,.legal li{color:var(--ton);margin-bottom:.625rem;overflow-wrap:anywhere}
.legal ul{list-style:disc;padding-left:1.25rem}
.legal a{text-decoration:underline;text-underline-offset:2px}

/* Einblenden */
@media(prefers-reduced-motion:no-preference){.rv{opacity:0;transform:translate3d(0,1.75rem,0);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.rv.sichtbar{opacity:1;transform:none}}
@media print{.rv{opacity:1;transform:none}.kopf{position:static}}
@media(max-width:400px){.fest{grid-template-columns:minmax(0,1fr)}}

/* Einwilligung Statistik: liegt über der Seite, schiebt nichts. Unter ihr bleibt am Seitenende Platz, damit sie den Fuß nicht verdeckt. */
.ww-consent{position:fixed;z-index:45;left:.75rem;right:.75rem;bottom:max(.75rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.5rem;padding:.625rem .75rem;background:#fff;border-radius:.75rem;box-shadow:var(--schatten);color:var(--ton);font-size:.8125rem;line-height:1.4}
.ww-consent[hidden]{display:none}
.ww-consent p{margin:0}
.ww-consent a{color:var(--tinte);text-decoration:underline;text-underline-offset:.15em}
.ww-consent-wahl{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;flex:none}
.ww-consent button{min-height:2.75rem;padding:0 1rem;border:0;border-radius:.5rem;background:var(--tinte);color:#fff;font:inherit;font-weight:500;cursor:pointer;transition:background-color .2s}
.ww-consent button:hover{background:#34343A}
.ww-consent button:focus-visible{outline:2px solid var(--akzent);outline-offset:2px}
@media(min-width:640px){.ww-consent{flex-direction:row;align-items:center;gap:1rem;padding:.75rem .875rem;right:auto;width:min(34rem,calc(100vw - 1.5rem))}.ww-consent p{flex:1 1 0}.ww-consent-wahl{grid-auto-columns:6.5rem;grid-template-columns:6.5rem 6.5rem}}
@media(min-width:640px) and (pointer:fine){.ww-consent button{min-height:2.25rem}}
html.ww-consent-offen{scroll-padding-bottom:var(--ww-consent-h,0px)}
html.ww-consent-offen .fuss-unten{padding-bottom:calc(2.25rem + var(--ww-consent-h,0px))}
@media print{.ww-consent{display:none}}
