/* Salzburg Simulator (/simulator) – Game-Landingpage, immer dunkel */
.sim{--s-bg:#0D1016;--s-bg2:#131821;--s-panel:#171D28;--s-line:rgba(243,241,236,.14);--s-fg:#F3F1EC;--s-mute:rgba(243,241,236,.64);--s-red:#D4453A;--s-yel:#F2C94C;--s-green:#3DDC84;
  --bg:var(--s-bg);--fg:var(--s-fg);background:var(--s-bg);color:var(--s-fg);color-scheme:dark;--px:0;--py:0;--sy:0}
.sim i{font-style:normal;color:var(--s-red)}
.sim a{color:var(--s-fg)}
.sim a:hover{color:var(--s-red)}
.sim-num{font-size:13px;font-weight:600;color:var(--s-red);letter-spacing:.06em}
.sim-red{color:var(--s-red)!important}
.sim-lc{text-transform:none}   /* Einheiten (m, km/h) klein, auch in Großbuchstaben-Zeilen */

/* Buttons */
.sim-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;padding:16px 22px;font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:2px solid;transition:transform 160ms cubic-bezier(.2,.8,.2,1),background-color 160ms,color 160ms,border-color 160ms}
.sim-btn:hover{transform:translateY(-2px)}
.sim-btn-red{background:var(--s-red);border-color:var(--s-red);color:var(--s-fg)!important;box-shadow:0 10px 30px -10px rgba(212,69,58,.7)}
.sim-btn-red:hover{background:#E0564B;border-color:#E0564B}
.sim-btn-ghost{background:transparent;border-color:var(--s-fg);color:var(--s-fg)!important}
.sim-btn-ghost:hover{background:var(--s-fg);color:var(--s-bg)!important}
.sim-ctas{display:flex;flex-wrap:wrap;gap:12px}
.sim-ctas .sim-btn{flex:1 1 240px;max-width:340px}

/* ---------- HERO ---------- */
.sim-hero{position:relative;min-height:min(100svh,1080px);display:flex;flex-direction:column;overflow:hidden;background:#202125}
.sim-hero-bg{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(120% 70% at 72% 105%,#3E4F5D 0%,rgba(62,79,93,.35) 38%,transparent 62%),
  linear-gradient(180deg,#1B1C20 0%,#222328 60%,#2A3440 100%)}
.sim-hero-glow{position:absolute;right:8%;top:14%;width:min(52vw,760px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(212,69,58,.28),rgba(212,69,58,0) 62%);filter:blur(10px);transform:translate3d(calc(var(--px)*-10px),calc(var(--py)*-10px + var(--sy)*.15px),0)}
.sim-hero-ghost{position:absolute;right:-2vw;bottom:6%;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(160px,34vw,560px);line-height:.8;color:transparent;-webkit-text-stroke:2px rgba(243,241,236,.08);white-space:nowrap;letter-spacing:-.02em}
.sim-hero-in{position:relative;flex:1;display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:calc(62px + clamp(28px,5vw,56px)) var(--gutter) 24px;align-items:center}
.sim-hero-copy{display:flex;flex-direction:column;gap:clamp(16px,2vw,24px);position:relative;z-index:2}
.sim-eyebrow{margin:0;display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--s-mute)}
.sim-dot{width:8px;height:8px;border-radius:50%;background:var(--s-red);box-shadow:0 0 0 0 rgba(212,69,58,.6);animation:simPulse 1.8s infinite}
@keyframes simPulse{70%{box-shadow:0 0 0 10px rgba(212,69,58,0)}100%{box-shadow:0 0 0 0 rgba(212,69,58,0)}}
.sim-title{margin:0 0 0 -.04em;display:flex;flex-direction:column;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(64px,calc(11*var(--vw)),200px);line-height:.8;letter-spacing:-.01em}
.sim-title span{display:block;white-space:nowrap}
.sim-title span:first-child{color:transparent;-webkit-text-stroke:2px var(--s-fg)}
.sim-claim{margin:0;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(28px,calc(3.2*var(--vw)),52px);line-height:.95}
.sim-claim b{color:var(--s-red);white-space:nowrap}
.sim-lead{margin:0;font-size:clamp(15px,calc(1.3*var(--vw)),18px);line-height:1.6;max-width:50ch;color:var(--s-mute)}
.sim-platforms{display:flex;flex-wrap:wrap;gap:8px}
.sim-platforms span{padding:7px 10px;border:1px solid var(--s-line);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute)}

.sim-hero-stage{position:relative;min-height:min(78svh,720px);height:100%;max-height:900px}
[data-depth]{transform:translate3d(calc(var(--px)*var(--d,0)*1px),calc(var(--py)*var(--d,0)*1px),0);will-change:transform}
.sim-hero-ghost[data-depth]{--d:-14}
.sim-figure{--d:6;position:absolute;inset:0 0 0 0;cursor:grab;touch-action:pan-y}
.sim-figure:active{cursor:grabbing}
.sim-figure-img{position:absolute;left:50%;bottom:0;height:100%;width:auto;max-width:none;transform:translateX(-50%);
  -webkit-mask-image:radial-gradient(48% 56% at 50% 50%,#000 58%,transparent 100%);mask-image:radial-gradient(48% 56% at 50% 50%,#000 58%,transparent 100%);transition:opacity 400ms}
.sim-figure.is-3d .sim-figure-img{opacity:0}
.sim-3d-canvas,.sim3d-canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.sim-floor{position:absolute;left:50%;bottom:2%;width:46%;height:6%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.55),transparent);pointer-events:none}
.sim-hud{position:absolute;z-index:3;display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:rgba(13,16,22,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--s-line);border-left:3px solid var(--s-yel);font-size:12px;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;animation:simFloat 6s ease-in-out infinite}
.sim-hud b{font-size:10px;letter-spacing:.14em;color:var(--s-yel)}
/* Sprechblase von Björnhart (Sprüche wechseln zufällig, sim.js) */
.sim-bubble{--d:16;position:absolute;z-index:4;left:calc(50% + 70px);top:3%;max-width:min(300px,48%);padding:14px 18px;background:var(--s-fg);color:#111111;border-radius:18px;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(20px,1.9vw,28px);line-height:1;box-shadow:0 14px 40px -12px rgba(0,0,0,.8);pointer-events:none}
.sim-bubble::after{content:"";position:absolute;left:18px;bottom:-14px;border:16px solid transparent;border-top-color:var(--s-fg);border-bottom:0;border-left:0}
.sim-bubble span{display:block}
.sim-bubble.is-pop span{animation:simPop 380ms cubic-bezier(.2,1.4,.4,1)}
@keyframes simPop{0%{opacity:0;transform:scale(.6) translateY(8px)}100%{opacity:1;transform:none}}
@keyframes simFloat{50%{margin-top:-8px}}
.sim-nametag{--d:12;position:absolute;z-index:3;left:0;bottom:6%;display:flex;flex-direction:column;gap:4px;min-width:230px;padding:14px 16px;background:rgba(13,16,22,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--s-line)}
.sim-nametag-l{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--s-mute)}
.sim-nametag strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:30px;line-height:.95}
.sim-nametag>span:not(.sim-nametag-l):not(.sim-stat):not(.sim-drag-hint){font-size:13px;color:var(--s-mute)}
.sim-drag-hint{margin-top:6px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--s-mute);display:none}
.sim-figure.is-3d~.sim-nametag .sim-drag-hint{display:block}

.sim-stat{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.sim-stat em{font-style:normal;color:var(--s-mute)}
.sim-stat em:last-child{font-weight:600}
.sim-bar{height:6px;background:rgba(243,241,236,.12);position:relative;overflow:hidden}
.sim-bar i{position:absolute;inset:0 auto 0 0;background:var(--s-yel)}

.sim-marquee{position:relative;z-index:2;border-top:2px solid var(--s-fg);border-bottom:2px solid var(--s-fg);background:var(--s-red);overflow:hidden;white-space:nowrap}
.sim-marquee-track{display:inline-flex;animation:simMarq 38s linear infinite}
.sim-marquee span{padding:12px 0;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(18px,2vw,26px);letter-spacing:.02em}
.sim-marquee span::after{content:"+++";margin:0 22px;opacity:.6}
@keyframes simMarq{to{transform:translateX(-50%)}}

@media (min-width:900px){
  .sim-hero-in{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,3vw,56px)}
  .sim-hero-stage{min-height:0;height:min(80svh,820px)}
}
@media (max-width:899.98px){
  .sim-hero-stage{height:min(78svh,760px);margin:0 calc(-1*var(--gutter))}
  .sim-bubble{left:calc(50% + 40px);top:2%;max-width:calc(50% - 40px - var(--gutter))}
  .sim-nametag{left:var(--gutter);bottom:5%;min-width:210px}
  .sim-hero-ghost{bottom:auto;top:52%}
}

/* ---------- Abschnitte ---------- */
.sim-sec{padding:clamp(72px,calc(10*var(--vw)),150px) var(--gutter) 0;position:relative}
.sim-sec-head{display:flex;justify-content:space-between;gap:8px 24px;flex-wrap:wrap;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border-top:2px solid var(--s-fg);padding-top:12px;color:var(--s-mute)}
.sim-sec-head span:first-child{color:var(--s-red)}
.sim-h2{margin:clamp(20px,3vw,40px) 0 0 -.03em;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(56px,calc(8.5*var(--vw)),150px);line-height:.84}

[data-reveal]{transition:opacity 700ms cubic-bezier(.2,.8,.2,1),transform 700ms cubic-bezier(.2,.8,.2,1)}
.sim-pre [data-reveal]:not(.is-in){opacity:0;transform:translateY(28px)}

/* Experiment */
.sim-exp-grid{display:grid;gap:clamp(20px,3vw,40px);margin-top:clamp(24px,4vw,56px)}
.sim-exp-state{margin:0;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(40px,calc(5.2*var(--vw)),92px);line-height:.98;max-width:24ch;text-wrap:balance}
.sim-exp-state span{color:var(--s-mute)}
.sim-exp-turn{margin:0;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(40px,calc(5.2*var(--vw)),92px);line-height:.98;color:var(--s-red)}
.sim-exp-turn b{color:var(--s-fg);background:var(--s-red);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.sim-pillars{list-style:none;margin:clamp(40px,6vw,88px) 0 0;padding:0;display:grid;gap:0;grid-template-columns:minmax(0,1fr)}
.sim-pillars li{display:flex;flex-direction:column;gap:12px;padding:24px 0 32px;border-top:2px solid var(--s-line)}
.sim-pillars strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(34px,calc(3.4*var(--vw)),56px);line-height:.95}
.sim-pillars li>span:last-child{font-size:15px;line-height:1.6;color:var(--s-mute);max-width:46ch}
@media (min-width:900px){.sim-pillars{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}.sim-pillars li:nth-child(2){transition-delay:120ms}.sim-pillars li:nth-child(3){transition-delay:240ms}}

/* Trailer */
.sim-trailer-grid{display:grid;gap:clamp(32px,5vw,80px);margin-top:clamp(32px,5vw,64px);align-items:center;grid-template-columns:minmax(0,1fr)}
.sim-phone{justify-self:center;width:min(78vw,340px);aspect-ratio:9/19.5;padding:12px;border-radius:44px;background:linear-gradient(145deg,#2A2F38,#0A0C10);box-shadow:0 0 0 2px #3A404A,0 40px 80px -30px rgba(0,0,0,.9),0 0 120px -20px rgba(212,69,58,.35);transform:rotate(-3deg);transition:transform 500ms cubic-bezier(.2,.8,.2,1)}
.sim-phone:hover{transform:rotate(0)}
.sim-phone-screen{position:relative;width:100%;height:100%;border-radius:34px;overflow:hidden;background:#000}
.sim-phone-screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sim-phone-screen::before{content:"";position:absolute;z-index:2;top:10px;left:50%;width:34%;height:22px;transform:translateX(-50%);border-radius:14px;background:#000}
.sim-play{position:absolute;z-index:3;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;border:2px solid var(--s-fg);background:rgba(212,69,58,.9);color:var(--s-fg);font-size:26px;cursor:pointer;padding-left:6px}
.sim-play.is-hidden{display:none}
.sim-sound{position:absolute;z-index:3;right:14px;bottom:12px;padding:8px 12px;border:2px solid var(--s-fg);background:rgba(212,69,58,.9);color:var(--s-fg);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.sim-sound[aria-pressed="true"]{background:rgba(0,0,0,.55)}
.sim-sound.is-hidden{display:none}
.sim-sound:focus-visible{outline:2px solid var(--s-yel);outline-offset:2px}
.sim-phone-rec{position:absolute;z-index:2;left:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:6px 10px;background:rgba(0,0,0,.55);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.sim-phone-rec i{width:7px;height:7px;border-radius:50%;background:var(--s-red);animation:simPulse 1.8s infinite}
.sim-clips ol{list-style:none;margin:clamp(24px,3vw,40px) 0 0;padding:0;border-bottom:2px solid var(--s-line)}
.sim-clips button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;width:100%;padding:18px 0 18px 12px;border-top:2px solid var(--s-line);position:relative;transition:background-color 200ms}
.sim-clips button::before{content:"";position:absolute;left:0;top:-2px;bottom:0;width:3px;background:var(--s-red);transform:scaleY(0);transform-origin:top;transition:transform 250ms}
.sim-clips button[aria-current="true"]::before{transform:scaleY(1)}
.sim-clips button[aria-current="true"]{background:rgba(243,241,236,.04)}
.sim-clips button:hover strong,.sim-clips button[aria-current="true"] strong{color:var(--s-red)}
.sim-clips button:focus-visible{outline:2px solid var(--s-yel);outline-offset:2px}
.sim-clips button>span:nth-child(2){display:flex;flex-direction:column;gap:4px}
.sim-clips strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(24px,calc(2.2*var(--vw)),34px);line-height:1;transition:color 150ms}
.sim-clips button>span:nth-child(2)>span{font-size:14px;color:var(--s-mute);line-height:1.5}
.sim-clip-prog{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--s-red);transform-origin:left;transform:scaleX(0)}
@media (min-width:900px){.sim-trailer-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.sim-phone{width:min(28vw,360px)}}

/* Level */
.sim-levels-top{display:grid;gap:16px 48px;align-items:end;grid-template-columns:minmax(0,1fr)}
.sim-levels-top p{margin:0;font-size:16px;line-height:1.6;color:var(--s-mute);max-width:46ch}
@media (min-width:900px){.sim-levels-top{grid-template-columns:auto minmax(0,1fr)}}
.sim-level-grid{display:grid;gap:16px;margin-top:clamp(32px,4vw,56px);grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.sim-level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.sim-level-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* Ideen zur Wahl (sim.js) */
.sim-level-img.is-sign::before{content:"Bauplan";position:absolute;z-index:2;right:10px;top:10px;padding:4px 8px;border:1px solid var(--s-yel);color:var(--s-yel);background:rgba(13,16,22,.55);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.sim-level-credit{position:absolute;z-index:2;left:8px;bottom:6px;font-size:9px;letter-spacing:.06em;color:rgba(243,241,236,.7);text-shadow:0 1px 2px #000}
.sim-level.is-idea .sim-level-tag b{color:var(--s-mute)}
.sim-level-more{display:flex;flex-direction:column;justify-content:space-between;gap:24px;min-height:220px;padding:20px 16px;background:transparent;border:1px dashed rgba(243,241,236,.35);color:var(--s-fg);font:inherit;text-align:left;cursor:pointer;transition:border-color 200ms,background-color 200ms,transform 250ms cubic-bezier(.2,.8,.2,1)}
.sim-level-more:hover,.sim-level-more:focus-visible{border-color:var(--s-yel);background:rgba(242,201,76,.06);transform:translateY(-6px)}
.sim-level-more b{font-family:var(--head);font-weight:800;font-size:clamp(88px,9vw,140px);line-height:.8;color:var(--s-yel)}
.sim-level-more span{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.sim-level.is-new{animation:simLvIn 600ms cubic-bezier(.2,.8,.2,1) both}
@keyframes simLvIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.sim-votes{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:clamp(24px,3vw,40px);padding-top:20px;border-top:2px solid var(--s-line)}
.sim-votes p{margin:0;font-size:15px;line-height:1.5;color:var(--s-mute)}
.sim-votes b{font-family:var(--head);font-weight:800;font-size:clamp(28px,3vw,40px);line-height:1;color:var(--s-fg);margin-right:6px}
.sim-votes.is-hidden{display:none}
.sim-credits{margin:20px 0 0;max-width:110ch;font-size:11px;line-height:1.6;color:var(--s-mute)}
.sim-credits.is-hidden{display:none}
.sim-credits b{color:var(--s-fg);font-weight:600}
.sim-credits a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.sim-credits a:hover{color:var(--s-fg)}
@media (prefers-reduced-motion:reduce){.sim-level.is-new{animation:none}}
.sim-level{position:relative;display:flex;flex-direction:column;background:var(--s-panel);border:1px solid var(--s-line);overflow:hidden;transition:transform 250ms cubic-bezier(.2,.8,.2,1),border-color 250ms,box-shadow 250ms,opacity 700ms}
.sim-level:hover{transform:translateY(-6px);border-color:rgba(243,241,236,.4);box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.sim-level.is-live{border-color:var(--s-red)}
.sim-level-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:#0A0C10}
@media (min-width:1100px){.sim-level-img{aspect-ratio:4/5}}
.sim-level-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 600ms cubic-bezier(.2,.8,.2,1)}
.sim-level:hover .sim-level-img img{transform:scale(1.05)}
.sim-level-img.is-plan img{filter:grayscale(1) contrast(1.1) brightness(.55)}
.sim-level-img.is-plan::after{content:"";position:absolute;inset:0;background:
  linear-gradient(rgba(242,201,76,.12) 1px,transparent 1px) 0 0/22px 22px,
  linear-gradient(90deg,rgba(242,201,76,.12) 1px,transparent 1px) 0 0/22px 22px;mix-blend-mode:screen}
.sim-level-img.is-plan::before{content:"Bauplan";position:absolute;z-index:2;right:10px;top:10px;padding:4px 8px;border:1px solid var(--s-yel);color:var(--s-yel);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.is-locked .sim-level-img{display:grid;place-items:center;background:repeating-linear-gradient(135deg,#131821 0 14px,#171D28 14px 28px)}
.sim-lock{position:relative;z-index:2;color:var(--s-yel)}
.sim-level-q{position:absolute;font-family:var(--head);font-weight:800;font-size:260px;line-height:1;color:rgba(242,201,76,.08)}
.sim-level-body{display:flex;flex-direction:column;gap:10px;padding:16px 16px 20px}
.sim-level-tag{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.sim-level-tag b{color:var(--s-mute)}
.sim-pill{font-style:normal;padding:3px 7px;border:1px solid var(--s-line);font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--s-mute)}
.sim-pill-live{border-color:var(--s-green);color:var(--s-green)}
.sim-pill-yel{border-color:var(--s-yel);color:var(--s-yel)}
.sim-level-body strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:30px;line-height:.95}
.sim-level-body>span:last-child{font-size:14px;line-height:1.55;color:var(--s-mute)}

/* Meine Idee */
.sim-idea-lead{margin:20px 0 0;font-size:clamp(17px,1.6vw,21px);line-height:1.5;max-width:40ch}
.sim-steps{list-style:none;margin:clamp(28px,4vw,48px) 0 0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.sim-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.is-solo .sim-steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sim-steps li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:18px 16px;background:var(--s-panel);border:1px solid var(--s-line)}
.sim-steps li:last-child{border-color:var(--s-yel)}
.sim-steps li>span:last-child{display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5;color:var(--s-mute)}
.sim-steps strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:26px;line-height:1;color:var(--s-fg)}
.sim-fine{margin:20px 0 0;font-size:13px;line-height:1.6;color:var(--s-mute);max-width:60ch}

/* Bestenliste */
.sim-board-grid{display:grid;gap:24px clamp(32px,5vw,80px);grid-template-columns:minmax(0,1fr);align-items:end}
@media (min-width:900px){.sim-board-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.sim-board-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.sim-board-tab{all:unset;box-sizing:border-box;cursor:pointer;padding:8px 12px;border:1px solid var(--s-line);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute);transition:background-color 200ms,color 200ms,border-color 200ms}
.sim-board-tab:hover{color:var(--s-fg);border-color:var(--s-fg)}
.sim-board-tab:focus-visible{outline:2px solid var(--s-yel);outline-offset:2px}
.sim-board-tab[aria-selected="true"]{background:var(--s-yel);border-color:var(--s-yel);color:var(--s-bg)}
.sim-board-route{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute)}
.sim-board-list{list-style:none;margin:0;padding:0;border-bottom:2px solid var(--s-line)}
.sim-board-list li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:14px 0;border-top:2px solid var(--s-line)}
.sim-board-list li:first-child .sim-rank{color:var(--s-yel)}
.sim-rank{font-family:var(--head);font-weight:800;font-size:34px;line-height:1;color:var(--s-red)}
.sim-board-list strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:28px;line-height:1;overflow-wrap:anywhere}
.sim-board-list small{display:block;margin-top:4px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute)}
.sim-time{font-family:var(--head);font-weight:800;font-size:30px;font-variant-numeric:tabular-nums}


/* Garage */
.sim-drivers{display:grid;gap:16px;margin-top:clamp(32px,4vw,56px);grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.sim-drivers{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-drivers.is-solo{grid-template-columns:minmax(0,1fr)}.is-solo .sim-card{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}
.sim-card{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);background:var(--s-panel);border:1px solid var(--s-line);overflow:hidden;transition:border-color 200ms}
.sim-card:hover{border-color:var(--s-yel)}
.sim-card-img{background:radial-gradient(80% 60% at 50% 60%,#3A4654,#1B1C20);overflow:hidden}
.sim-card-img img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block;transform:scale(1.3);transform-origin:50% 22%;transition:transform 500ms cubic-bezier(.2,.8,.2,1)}
.sim-card:hover .sim-card-img img{transform:scale(1.38)}
.sim-card-body{display:flex;flex-direction:column;gap:8px;padding:20px}
.sim-card-l{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--s-yel)}
.sim-card-body strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(32px,3vw,44px);line-height:.95}
.sim-card-body>span:nth-of-type(2){font-size:14px;line-height:1.55;color:var(--s-mute);margin-bottom:6px}
.sim-vehicles{display:grid;gap:16px;margin-top:16px;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.sim-vehicles{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sim-veh{display:flex;flex-direction:column;gap:8px;padding:0 0 20px;background:var(--s-panel);border:1px solid var(--s-line);overflow:hidden;transition:border-color 200ms,transform 250ms cubic-bezier(.2,.8,.2,1)}
.sim-veh:hover{border-color:var(--s-red);transform:translateY(-4px)}
.sim-veh img{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;display:block;margin-bottom:8px}
.sim-veh>strong,.sim-veh>span{padding:0 18px}
.sim-veh>strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:30px;line-height:1}
.sim-veh>span:nth-of-type(2){font-size:14px;line-height:1.55;color:var(--s-mute)}
.sim-veh-stats{display:flex;gap:20px;margin-top:6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute)}
.sim-veh-stats b{display:block;font-family:var(--head);font-weight:800;font-size:34px;line-height:1;color:var(--s-fg);letter-spacing:0}

/* Finale */
.sim-final{margin-top:clamp(80px,10vw,160px);padding:clamp(72px,10vw,150px) var(--gutter);background:
  linear-gradient(180deg,rgba(13,16,22,.2),rgba(13,16,22,.92)),url(/assets/sim/rudolfskai_dom_stau_obus.webp) center 35%/cover;border-top:2px solid var(--s-fg)}
.sim-final-in{display:flex;flex-direction:column;gap:24px;max-width:900px}
.sim-final-h{margin:0 0 0 -.03em;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(60px,calc(10*var(--vw)),170px);line-height:.84}
.sim-final-t{margin:0;font-size:clamp(16px,1.4vw,19px);line-height:1.6;max-width:50ch}

@media (prefers-reduced-motion:reduce){
  .sim *,.sim *::before,.sim *::after{animation:none!important;transition:none!important}
  [data-depth]{transform:none!important}
}

/* ---------- Beta-Seiten (/beta, /beta-bestaetigen, /beta-abmelden) ---------- */
.bt-body{margin:0;background:#0D1016}
.bt{min-height:100svh;display:flex;flex-direction:column;padding:0 var(--gutter);font-family:var(--mono);background:
  radial-gradient(90% 60% at 85% 0%,rgba(212,69,58,.22),transparent 60%),radial-gradient(80% 50% at 0% 100%,rgba(62,79,93,.45),transparent 60%),#0D1016}
.bt-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:2px solid var(--s-fg)}
.bt-brand{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:24px;line-height:1;text-decoration:none}
.bt-top-l{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--s-mute)!important}
.bt-hero{display:grid;gap:28px;padding:clamp(24px,5vw,64px) 0 clamp(40px,6vw,80px);align-items:start;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.bt-hero{grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:clamp(32px,5vw,80px);align-items:center}}
.bt-copy{display:flex;flex-direction:column;gap:18px;position:relative}
.bt-title{margin:0 0 0 -.03em;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(64px,calc(10*var(--vw)),170px);line-height:.86}
.bt-lead{margin:0;font-size:clamp(16px,1.4vw,19px);line-height:1.6;max-width:44ch;color:var(--s-mute)}
.bt-figure{position:relative;height:clamp(220px,34vw,460px);margin-top:4px}
.bt-figure img{position:absolute;left:0;bottom:0;height:100%;width:auto;-webkit-mask-image:radial-gradient(48% 56% at 50% 50%,#000 58%,transparent 100%);mask-image:radial-gradient(48% 56% at 50% 50%,#000 58%,transparent 100%)}
.bt-bubble{left:clamp(150px,20vw,260px)!important;top:6%!important;max-width:240px}
@media (max-width:959.98px){.bt-figure{display:none}}
.bt-card{padding:clamp(20px,3vw,32px);background:rgba(23,29,40,.92);border:1px solid var(--s-line);box-shadow:0 40px 80px -40px rgba(0,0,0,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.bt-card form{display:flex;flex-direction:column;gap:20px}
.bt-field{display:flex;flex-direction:column;gap:8px}
.bt-lbl{display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.bt-err{color:var(--s-red);font-weight:600;letter-spacing:.04em;text-transform:none}
.bt-plat{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bt-plat label{cursor:pointer}
.bt-plat input{position:absolute;opacity:0;pointer-events:none}
.bt-plat span{display:flex;flex-direction:column;gap:4px;padding:16px;border:2px solid var(--s-line);transition:border-color 150ms,background-color 150ms}
.bt-plat b{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:30px;line-height:1}
.bt-plat em{font-style:normal;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--s-mute)}
.bt-plat label:hover span{border-color:rgba(243,241,236,.5)}
.bt-plat input:checked+span{border-color:var(--s-red);background:rgba(212,69,58,.14)}
.bt-plat input:focus-visible+span{outline:2px solid var(--s-yel);outline-offset:2px}
.bt-inp{width:100%;min-height:54px;padding:12px 14px;border:2px solid var(--s-line);background:#0D1016;color:var(--s-fg);font-family:var(--mono);font-size:16px;border-radius:0}
.bt-inp:focus{outline:none;border-color:var(--s-red)}
.bt-hint{font-size:12px;line-height:1.5;color:var(--s-mute)}
.bt-check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;font-size:13px;line-height:1.55;cursor:pointer}
.bt-check .chk{width:24px;height:24px;border:2px solid var(--s-fg)}
.bt-check .chk:checked{background:var(--s-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='square'/%3E%3C/svg%3E") center/18px no-repeat;border-color:var(--s-red)}
.bt-submit{width:100%;max-width:none!important;min-height:64px;font-size:16px}
.bt-submit:disabled{opacity:.7;cursor:wait}
.bt-error{margin:0;font-size:13px;font-weight:600;line-height:1.5;color:var(--s-red)}
.bt-mail{display:flex;flex-direction:column;gap:20px}
.bt-ios{display:flex;flex-direction:column;gap:16px}
.bt-ok{color:var(--s-yel);letter-spacing:.06em}
.bt-ios-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.bt-ios-steps li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:baseline;padding:12px 14px;border:2px solid var(--s-line);font-size:14px;line-height:1.5;color:var(--s-mute)}
.bt-ios-steps b{display:block;font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:22px;line-height:1.05;color:var(--s-fg)}
.bt-ios-steps a{color:var(--s-fg)}
.bt-qr{display:none;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;font-size:13px;line-height:1.5;color:var(--s-mute)}
.bt-qr img{display:block;width:120px;height:120px;image-rendering:pixelated}
@media (hover:hover) and (pointer:fine) and (min-width:760px){.bt-qr{display:grid}}
.bt-done{display:flex;flex-direction:column;gap:14px;padding:8px 0}
.bt-done-l{margin:0;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--s-red)}
.bt-done strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(44px,5vw,64px);line-height:.92}
.bt-done>span:not(.bt-done-l):not(.bt-hint){font-size:15px;line-height:1.6}
.bt-steps ol{list-style:none;margin:0;padding:0 0 clamp(40px,6vw,80px);display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.bt-steps ol{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bt-steps li{display:flex;flex-direction:column;gap:8px;padding:18px 0 0;border-top:2px solid var(--s-line)}
.bt-steps strong{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:28px;line-height:1}
.bt-steps li>span:last-child{font-size:14px;line-height:1.55;color:var(--s-mute)}
.bt-steps li a{color:var(--s-fg)}
@media (min-width:960px){.bt-modes ol{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bt-get{display:flex;flex-direction:column;gap:20px}
.bt-msg{flex:1;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:clamp(40px,8vw,120px) 0;max-width:820px}
.bt-msg>div{display:flex;flex-direction:column;gap:20px}
.bt-foot{margin-top:auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;padding:16px 0 24px;border-top:1px solid var(--s-line);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--s-mute)}

/* Mitmachen (zukunftsangst.at/mitmachen) – nutzt die Beta-Formularstile (bt-*) */
.mm-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:0;grid-template-columns:minmax(0,1fr);border-top:2px solid var(--s-line)}
@media (min-width:560px){.mm-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}}
.mm-list li{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-bottom:1px solid var(--s-line);font-size:13px;line-height:1.5;color:var(--s-mute)}
.mm-list b{font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:24px;line-height:1;color:var(--s-fg)}
.mm-fs{border:0;margin:0;padding:0;min-width:0}
.mm-fs legend{width:100%;padding:0;margin-bottom:8px}
.mm-chips{display:flex;flex-wrap:wrap;gap:8px}
.mm-chips label{cursor:pointer}
.mm-chips input{position:absolute;opacity:0;pointer-events:none}
.mm-chips span{display:inline-block;padding:10px 12px;border:2px solid var(--s-line);font-size:13px;font-weight:600;line-height:1.2;transition:border-color 150ms,background-color 150ms}
.mm-chips label:hover span{border-color:rgba(243,241,236,.5)}
.mm-chips input:checked+span{border-color:var(--s-red);background:rgba(212,69,58,.18)}
.mm-chips input:checked+span::before{content:"✓ ";color:var(--s-red)}
.mm-chips input:focus-visible+span{outline:2px solid var(--s-yel);outline-offset:2px}
.mm-opt{font-style:normal;font-weight:400;color:var(--s-mute);text-transform:none;letter-spacing:0;margin-left:6px}
.mm-count{font-weight:400;color:var(--s-mute);letter-spacing:0}
.mm-ta{min-height:96px;resize:vertical;font-size:15px;line-height:1.5}
.mm-claim{margin:0;padding:12px 0 12px 16px;border-left:4px solid var(--s-red);font-family:var(--head);font-weight:800;text-transform:uppercase;font-size:clamp(24px,2.4vw,34px);line-height:1;max-width:22ch}
.mm-claim i{font-style:normal;color:var(--s-red)}
