/* Projekt-Unterseiten */
:root{--bg:#000;--txt:#f4f4f5;--mut:#9a9ba3;--card:#141416;--line:rgba(255,255,255,.1);--f-disp:'Unbounded','Inter',sans-serif;--f-body:'Inter',system-ui,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--txt);font-family:var(--f-body);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:8px 14px;border-radius:8px;z-index:10}.skip:focus{left:8px}
.top{display:flex;justify-content:space-between;align-items:center;padding:20px clamp(18px,4vw,48px);position:absolute;inset:0 0 auto 0;z-index:5}
.brand{font-family:var(--f-disp);font-weight:700;letter-spacing:.2em;font-size:14px}
.back{font-size:14px;color:rgba(255,255,255,.8);padding:9px 16px;border-radius:999px;background:rgba(0,0,0,.45);backdrop-filter:blur(10px);box-shadow:0 0 0 1px var(--line);transition:background .3s}
.back:hover{background:rgba(255,255,255,.16)}
.hero{position:relative;min-height:min(78vh,640px);display:flex;align-items:flex-end;overflow:hidden;background:#000}
.hero::before{content:"";position:absolute;inset:-60px;background:var(--banner) center/cover no-repeat;filter:blur(26px) saturate(1.3) brightness(.85);transform:scale(1.08)}
.hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.55) 45%,#000 100%)}
.hero__in{position:relative;width:100%;max-width:980px;margin:0 auto;padding:120px clamp(18px,4vw,48px) 52px}
.hero__ic{width:104px;height:104px;border-radius:26px;object-fit:cover;box-shadow:0 0 0 4px #000,0 20px 60px rgba(0,0,0,.6);margin-bottom:22px}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.tags span{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:0 0 0 1px var(--line)}
h1{font-family:var(--f-disp);font-size:clamp(34px,7vw,68px);line-height:1.05;letter-spacing:-.03em;font-weight:700}
.tagline{margin-top:12px;font-size:clamp(15px,2vw,19px);color:rgba(255,255,255,.78);font-weight:300}
.stats{margin-top:20px;color:var(--mut);font-size:15px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.stats b{color:#fff;font-weight:600}.sep{opacity:.4;margin:0 4px}
.dot{width:9px;height:9px;border-radius:50%;background:#3cc86e;box-shadow:0 0 12px #3cc86e;margin-right:4px;animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35;transform:scale(.8)}}
.btn{display:inline-flex;align-items:center;gap:10px;margin-top:26px;background:#fff;color:#000;font-weight:700;font-size:16px;padding:15px 28px;border-radius:999px;transition:transform .3s,box-shadow .3s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 40px rgba(255,255,255,.25)}
.btn i{font-style:normal}
.sec{max-width:980px;margin:0 auto;padding:56px clamp(18px,4vw,48px) 0}
h2{font-family:var(--f-disp);font-size:clamp(20px,3vw,28px);letter-spacing:-.02em;margin-bottom:18px}
.sec p{color:#c9cad0;font-size:17px;max-width:720px}.sec p+p{margin-top:14px}
.vid{border-radius:22px;overflow:hidden;background:#0b0b0c;box-shadow:0 0 0 1px var(--line);margin-bottom:22px;aspect-ratio:16/9}
.vid video{width:100%;height:100%;object-fit:cover;display:block}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.card{background:var(--card);border-radius:20px;padding:24px;box-shadow:0 0 0 1px var(--line)}
.num{font-style:normal;font-family:var(--f-disp);font-size:12px;color:var(--mut);letter-spacing:.1em}
.card h3{font-size:19px;margin:10px 0 8px}.card p{font-size:15px;color:var(--mut)}
.safe{display:inline-block;margin-top:14px;font-size:11px;font-weight:700;letter-spacing:.08em;color:#4ade80;border:1px solid rgba(74,222,128,.35);background:rgba(74,222,128,.08);border-radius:999px;padding:5px 12px}
.more{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.mini{display:flex;align-items:center;gap:14px;background:var(--card);border-radius:18px;padding:16px;box-shadow:0 0 0 1px var(--line);transition:transform .3s,box-shadow .3s}
.mini:hover{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(255,255,255,.3)}
.mini img{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none}
.mini b{display:block;font-size:16px}.mini em{display:block;font-style:normal;font-size:13px;color:var(--mut);line-height:1.4}
.cta{max-width:980px;margin:64px auto 0;padding:48px clamp(18px,4vw,48px);text-align:center;background:linear-gradient(180deg,#121214,#0a0a0b);border-radius:28px;box-shadow:0 0 0 1px var(--line)}
.cta p{color:var(--mut);margin-top:-6px}
.foot{display:flex;flex-wrap:wrap;gap:22px;justify-content:center;padding:56px 20px 40px;color:var(--mut);font-size:14px}
.foot a:hover{color:#fff}
@media (max-width:640px){.hero{min-height:560px}.btn{width:100%;justify-content:center}.cta{margin-inline:14px;border-radius:22px}}
@media (prefers-reduced-motion:reduce){.dot{animation:none}html{scroll-behavior:auto}}
.logo{display:block;background:#fff;-webkit-mask:url(assets/logo.jpg) center/cover no-repeat;mask:url(assets/logo.jpg) center/cover no-repeat;-webkit-mask-mode:luminance;mask-mode:luminance}
.curtain{position:fixed;inset:0;z-index:700;background:#0a0a0b;display:grid;place-items:center;pointer-events:none;transform:translateY(-100%);animation:curtainOut .85s cubic-bezier(.22,1,.36,1) both}
.curtain .logo{width:90px;height:90px}
.curtain.no-anim{animation:none;transform:translateY(-100%)}
.curtain.is-in{animation:curtainIn .5s cubic-bezier(.76,0,.24,1) both;pointer-events:auto}
@keyframes curtainOut{from{transform:translateY(0)}to{transform:translateY(-100%)}}
@keyframes curtainIn{from{transform:translateY(100%)}to{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.curtain{animation:none}}
.hero.hd::before{inset:0;transform:none;filter:brightness(.92)}
.hero.hd .hero__shade{background:linear-gradient(180deg,rgba(0,0,0,.3),rgba(0,0,0,.3) 45%,#000 100%)}
