/* redesign.css – komplettes Design-Upgrade (wird zuletzt geladen, überschreibt style.css/extra.css) */
:root{--promo-h:44px;--header-height:84px}
html{scroll-padding-top:calc(var(--header-height) + var(--promo-h) + 12px)}
body{background:
 radial-gradient(900px 520px at 90% -8%,rgba(255,122,26,.28),transparent 60%),
 radial-gradient(800px 600px at -10% 35%,rgba(80,130,255,.16),transparent 60%),
 linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/48px 48px,
 linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/48px 48px,#06070a}

/* ── Leuchtender Fahrzeug-Banner ganz oben ── */
.promo-rider{position:sticky;top:0;z-index:120;height:var(--promo-h);display:flex;align-items:center;overflow:hidden;
 background:linear-gradient(90deg,#1a0b00,#3a1700 50%,#1a0b00);border-bottom:1px solid var(--color-accent);
 box-shadow:0 0 22px rgba(255,122,26,.65),0 0 60px rgba(255,122,26,.25);animation:pr-pulse 2.4s ease-in-out infinite}
.promo-rider::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 35%,rgba(255,200,120,.35) 50%,transparent 65%);transform:translateX(-120%);animation:pr-sweep 3.2s linear infinite;pointer-events:none}
@keyframes pr-sweep{to{transform:translateX(120%)}}
@keyframes pr-pulse{50%{box-shadow:0 0 34px rgba(255,150,40,.95),0 0 90px rgba(255,122,26,.4)}}
.promo-tag{position:relative;z-index:2;flex:none;height:100%;display:flex;align-items:center;gap:8px;padding:0 18px 0 14px;background:var(--color-accent);color:#160a02;
 font-family:var(--font-display);font-size:1.25rem;letter-spacing:.08em;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%)}
.promo-tag i{width:9px;height:9px;border-radius:50%;background:#160a02;animation:pr-blink 1s steps(2) infinite}
@keyframes pr-blink{50%{opacity:.15}}
.promo-track{display:flex;gap:44px;width:max-content;padding-left:30px;animation:pr-scroll 110s linear infinite}
.promo-rider:hover .promo-track{animation-play-state:paused}
@keyframes pr-scroll{to{transform:translateX(-50%)}}
.promo-item{display:flex;align-items:center;gap:10px;color:#fff;white-space:nowrap;font-weight:600;font-size:.92rem;text-decoration:none}
.promo-item img{height:30px;width:48px;object-fit:cover;border-radius:6px;border:1px solid rgba(255,179,71,.7);box-shadow:0 0 10px rgba(255,122,26,.7)}
.promo-item b{color:var(--color-accent-2);text-shadow:0 0 12px var(--color-accent)}
.promo-item:hover span{text-decoration:underline}

/* ── Header ── */
.site-header{top:var(--promo-h);background:rgba(6,7,10,.78);backdrop-filter:blur(18px) saturate(160%);border:0}
.nav-link{font-family:var(--font-display);font-size:1.2rem;letter-spacing:.1em;position:relative}
.nav-link::after{content:"";position:absolute;left:12%;right:12%;bottom:-6px;height:3px;border-radius:3px;background:var(--color-accent);box-shadow:0 0 12px var(--color-accent);transform:scaleX(0);transition:transform .25s}
.nav-link:hover::after,.nav-link.active::after{transform:scaleX(1)}

/* ── Hero ── */
.hero{min-height:min(78vh,720px);display:flex;align-items:center;border-radius:28px;border:1px solid rgba(255,122,26,.5);
 background:radial-gradient(700px 400px at 80% 20%,rgba(255,122,26,.35),transparent 65%),linear-gradient(160deg,#14161c,#07080b);box-shadow:0 0 70px rgba(255,122,26,.3),inset 0 0 80px rgba(0,0,0,.6)}
.hero::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:46%;pointer-events:none;
 background:repeating-linear-gradient(90deg,rgba(255,122,26,.35) 0 2px,transparent 2px 70px);transform:perspective(300px) rotateX(62deg);transform-origin:bottom;
 -webkit-mask-image:linear-gradient(transparent,#000);mask-image:linear-gradient(transparent,#000);animation:rd-grid 1.6s linear infinite}
@keyframes rd-grid{to{background-position:70px 0}}
.hero-content{position:relative;z-index:3;padding:clamp(28px,6vw,80px)}
.hero-eyebrow{display:inline-block;padding:6px 14px;border-radius:99px;background:rgba(255,122,26,.16);border:1px solid var(--color-accent);color:var(--color-accent-2);letter-spacing:.22em;text-transform:uppercase;font-size:.78rem;font-weight:700}
.hero-title{font-size:clamp(3.6rem,11vw,8.5rem);margin:.2em 0}
.hero-badges li{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);border-radius:99px;padding:6px 14px}
.btn{border-radius:99px;font-weight:700;letter-spacing:.03em}
.btn-secondary{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.06);backdrop-filter:blur(6px)}

/* ── Sektionen & Karten ── */
.section-title{font-size:clamp(2.6rem,6vw,4.4rem);position:relative;display:block;margin-bottom:.3em}
.section-title::after{content:"";display:block;width:90px;height:4px;margin:10px auto 0;border-radius:4px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-2));box-shadow:0 0 16px var(--color-accent)}
.section-badge{border-radius:99px;border:1px solid var(--color-accent);background:rgba(255,122,26,.12);color:var(--color-accent-2)}
.card,.service-card,.vehicle-card{background:linear-gradient(160deg,rgba(38,42,50,.75),rgba(14,15,19,.9));border:1px solid rgba(255,255,255,.08);border-radius:20px;backdrop-filter:blur(8px)}
.service-card:hover,.vehicle-card:hover{transform:translateY(-8px) rotate(-.4deg);box-shadow:0 18px 50px rgba(255,122,26,.3)}
.vehicle-card img{transition:transform .5s}.vehicle-card:hover img{transform:scale(1.07)}
.vehicle-slideshow{border-radius:26px;border:1px solid rgba(255,122,26,.5);box-shadow:0 0 60px rgba(255,122,26,.25)}
.page-section--alt{background:linear-gradient(180deg,transparent,rgba(255,122,26,.06),transparent)}
.site-footer{background:linear-gradient(180deg,transparent,#020203);border-top:1px solid rgba(255,122,26,.4)}

/* ── Spiel ── */
.cg-game{max-width:1000px;margin:5rem auto;padding:clamp(14px,3vw,28px);border-radius:28px;border:1px solid var(--color-accent);
 background:radial-gradient(600px 300px at 50% 0,rgba(255,122,26,.22),transparent 70%),#0a0b0f;box-shadow:0 0 70px rgba(255,122,26,.35)}
.cg-sub{text-align:center;color:var(--color-text-muted);margin:0 0 14px}
.cg-garage{display:flex;gap:12px;overflow-x:auto;padding:6px 2px 14px;scroll-snap-type:x proximity}
.cg-pick{flex:none;width:150px;scroll-snap-align:start;cursor:pointer;border-radius:14px;overflow:hidden;background:#15171d;border:2px solid #2d313a;color:#fff;text-align:left;padding:0;transition:.2s}
.cg-pick img{display:block;width:100%;height:84px;object-fit:cover}
.cg-pick span{display:block;padding:6px 8px;font-size:.78rem;font-weight:600;line-height:1.2}
.cg-pick small{display:block;color:var(--color-accent-2);font-size:.7rem}
.cg-pick:hover{transform:translateY(-3px)}
.cg-pick.is-sel{border-color:var(--color-accent);box-shadow:0 0 22px var(--color-accent)}
.cg-hud{display:flex;justify-content:space-between;font-family:var(--font-display);font-size:1.6rem;letter-spacing:.08em;margin:4px 0 8px}
#cg-canvas{display:block;width:100%;aspect-ratio:16/8;border-radius:16px;touch-action:none;background:#0d0f13;box-shadow:0 0 0 1px rgba(255,122,26,.5)}
.cg-overlay strong{font-size:3rem;text-shadow:0 0 24px var(--color-accent)}
.cg-overlay .btn{margin-top:6px}
.cg-promo{position:absolute;left:50%;top:12px;transform:translateX(-50%);max-width:92%;padding:8px 16px;border-radius:99px;background:rgba(255,122,26,.95);color:#160a02;font-weight:800;text-decoration:none;font-size:.9rem;box-shadow:0 0 30px var(--color-accent)}
.cg-promo[hidden]{display:none}
.cg-touch{display:none}
@media (pointer:coarse){.cg-touch{display:flex}}
@media (max-width:720px){:root{--promo-h:38px}.promo-tag{font-size:1rem;padding-right:14px}.hero{min-height:0}#cg-canvas{aspect-ratio:16/10}}
@media (prefers-reduced-motion:reduce){.promo-rider,.promo-rider::before,.promo-track,.hero::before{animation:none}}

/* Spiel-Kachel + Spiel-Fenster */
.service-card--game{border-color:var(--color-accent)!important;background:radial-gradient(300px 160px at 80% 0,rgba(255,122,26,.45),transparent 70%),linear-gradient(160deg,#241006,#0b0c10)!important;cursor:pointer;box-shadow:0 0 34px rgba(255,122,26,.4);animation:pr-pulse 2.4s ease-in-out infinite}
.service-card--game .service-icon{font-size:1.8rem;display:grid;place-items:center}
.cg-modal{position:fixed;inset:0;z-index:300;background:rgba(3,3,5,.88);backdrop-filter:blur(8px);overflow:auto;padding:16px;display:flex;align-items:flex-start;justify-content:center}
.cg-modal[hidden]{display:none}
.cg-modal .cg-game{margin:24px auto;width:100%;position:relative}
.cg-close{position:absolute;top:10px;right:12px;z-index:5;width:40px;height:40px;border-radius:50%;border:1px solid var(--color-accent);background:#160a02;color:#fff;font-size:1.3rem;cursor:pointer}

/* ── Chrom Racer: Button in der Navigation (neben Kontakt) ── */
.nav-game-item{display:flex;align-items:center;margin-left:10px}
.nav-game{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:9px;padding:7px 16px 7px 12px;border-radius:99px;border:1.5px solid var(--color-accent);
 background:linear-gradient(160deg,#2a1206,#120a05);color:var(--color-accent-2);font-family:var(--font-display);font-size:1.2rem;letter-spacing:.1em;line-height:1.1;cursor:pointer;
 box-shadow:0 0 18px rgba(255,122,26,.35);transition:background .2s,color .2s,box-shadow .2s,transform .2s}
.nav-game-flag{width:16px;height:16px;flex:none;fill:currentColor;border-radius:2px;outline:1px solid rgba(255,179,71,.6)}
.nav-game::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:nav-game-sweep 6s ease-in-out 2s infinite}
@keyframes nav-game-sweep{0%,70%{left:-40%}100%{left:130%}}
.nav-game:hover,.nav-game:focus-visible{background:var(--color-accent);color:#160a02;box-shadow:0 0 30px rgba(255,122,26,.75);transform:translateY(-1px)}
.nav-game:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (max-width:900px){.nav-game-item{margin:6px 0 8px 16px}.nav-game{font-size:1.3rem}}
@media (prefers-reduced-motion:reduce){.nav-game::after{animation:none;display:none}}

/* ── Chrom Racer: HUD + Start-Legende ── */
.cg-hud span:nth-child(3) b{color:var(--color-accent-2)}
.cg-hud b{display:inline-block;min-width:1.6ch}
.cg-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;list-style:none;margin:0;padding:0;font-size:.82rem;color:var(--color-text-muted)}
.cg-legend li{display:flex;align-items:center;gap:7px}
.cg-legend i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--c);color:#120800;font:700 .72rem/1 var(--font-body);font-style:normal;box-shadow:0 0 12px var(--c)}
@media (max-width:720px){.cg-hud{font-size:1rem;letter-spacing:.02em}.cg-overlay strong{font-size:2.2rem}.cg-legend{font-size:.74rem;gap:4px 10px}}
