@font-face{font-family:"Oswald";font-weight:300;font-display:swap;src:url(f-os3.9b439790.woff2) format("woff2")}
@font-face{font-family:"Oswald";font-weight:500;font-display:swap;src:url(f-os5.3ed849ae.woff2) format("woff2")}
@font-face{font-family:"Oswald";font-weight:700;font-display:swap;src:url(f-os7.f691ee17.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-weight:400;font-display:swap;src:url(f-it4.cea71b90.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-weight:500;font-display:swap;src:url(f-it5.eafebe6f.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-weight:600;font-display:swap;src:url(f-it6.e40dc7ea.woff2) format("woff2")}
:root{color-scheme:dark;--bg:#0d0f10;--bg2:#141719;--ink:#e7eaeb;--muted:#8b9295;--acc:#d6dde0;--line:rgba(231,234,235,.16);--line2:rgba(231,234,235,.3);--ok:#9fd3a8;--bad:#e8a39b;--head:"Oswald","Arial Narrow",sans-serif;--sans:"Inter Tight",system-ui,sans-serif;--pad:clamp(20px,4vw,56px)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.02rem/1.6 var(--sans);overflow-x:clip}
a{color:inherit}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit;color:inherit}
.wrap{max-width:1240px;margin:0 auto;padding-inline:var(--pad)}
.h{font:500 clamp(2.2rem,6vw,5.4rem)/.95 var(--head);text-transform:uppercase;letter-spacing:.01em;margin:0}
.h2{font:500 clamp(1.6rem,3.4vw,2.8rem)/1 var(--head);text-transform:uppercase;margin:0 0 18px}
.o{color:transparent;-webkit-text-stroke:1.2px var(--ink)}
.eb{font:600 .72rem var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.muted{color:var(--muted)}
.small{font-size:.86rem}
/* Kopfzeile */
.top{position:sticky;top:0;z-index:20;background:rgba(13,15,16,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:62px;gap:16px}
.logo{font:700 1.35rem var(--head);letter-spacing:.14em;text-decoration:none;display:flex;align-items:center;gap:10px}
.logo i{width:22px;height:22px;border:1.5px solid var(--ink);display:grid;place-items:center;font:700 .7rem var(--head);font-style:normal;transform:rotate(45deg)}
.logo i b{transform:rotate(-45deg)}
.nav{display:flex;gap:clamp(14px,2.4vw,30px);align-items:center;font:500 .76rem var(--sans);letter-spacing:.16em;text-transform:uppercase}
.nav a{text-decoration:none;color:var(--muted);white-space:nowrap}.nav a:hover,.nav a.on{color:var(--ink)}.nav a.on{text-decoration:underline;text-underline-offset:6px}
/* Knöpfe + Formulare */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);padding:13px 22px;font:600 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s,color .25s,opacity .25s}
.btn:hover{background:transparent;color:var(--ink)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line2)}.btn.ghost:hover{border-color:var(--ink)}
.btn.sm{padding:8px 14px;font-size:.68rem}
.btn[disabled]{opacity:.45;pointer-events:none}
label.f{display:block;margin:0 0 16px}
label.f>span{display:block;font:600 .7rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.inp{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line2);padding:9px 0;outline:none;font-size:1rem;border-radius:0}
.inp:focus{border-color:var(--ink)}
textarea.inp{resize:vertical;min-height:110px;border:1px solid var(--line2);padding:12px}
select.inp option{background:var(--bg)}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;color:var(--muted);margin:6px 0 18px}.chk input{margin-top:4px;accent-color:var(--ink)}
.msg{font-size:.9rem;min-height:1.4em;margin:8px 0 0}.msg.err{color:var(--bad)}.msg.ok{color:var(--ok)}
/* Sterne */
.stars{display:inline-flex;gap:3px;vertical-align:middle}
.stars svg{width:1em;height:1em}
.stars .on{fill:var(--ink)}.stars .off{fill:none;stroke:var(--line2);stroke-width:1.4}
/* Bewertungskarten */
.rv{border-top:1px solid var(--line);padding:22px 0}
.rv-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.rv p{margin:0 0 10px}
.rv .who{font:500 .78rem var(--sans);letter-spacing:.14em;text-transform:uppercase}
.badge{display:inline-flex;align-items:center;gap:6px;font:600 .62rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:4px 8px}
.badge svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2}
/* Fuß */
.foot{border-top:1px solid var(--line);margin-top:80px;padding:28px 0 40px;font-size:.82rem;color:var(--muted)}
.foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.foot a{color:var(--muted);text-decoration:none;margin-left:18px}.foot a:hover{color:var(--ink)}
/* Einblenden */
.fi{opacity:0;translate:0 18px;transition:opacity 1s cubic-bezier(.22,.61,.36,1),translate 1s cubic-bezier(.22,.61,.36,1)}
.fi.in{opacity:1;translate:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.fi{opacity:1;translate:none}}
@media (max-width:640px){.nav .hide-m{display:none}.top .wrap{height:56px}.logo{font-size:1.15rem}.nav{gap:14px;font-size:.66rem;letter-spacing:.1em}}
@media (max-width:480px){.logo{font-size:0;gap:0}.logo i{font-size:.7rem}.nav{gap:12px;font-size:.62rem;letter-spacing:.06em}}
.vchk{width:.62em;height:.62em;display:inline-block;vertical-align:.08em;margin-left:.22em;flex:none}.vchk .s{fill:var(--ink)}.vchk .k{fill:none;stroke:var(--bg);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}h1 .vchk,h2 .vchk,.h .vchk{width:.4em;height:.4em;vertical-align:.14em;margin-left:.18em}
[hidden]{display:none!important}
.sico{width:1.15em;height:1.15em;flex:none;vertical-align:-.22em}
