:root{--ink:#000;--gelb:#ffd400;--gold:#b39210;--weiss:#fff;--word:rgba(205,205,205,.32)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:56px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--ink);color:var(--weiss);font:18px/1.55 Acumin,"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif}
a{color:inherit}
:focus-visible{outline:3px solid var(--gelb);outline-offset:3px}
img{display:block;max-width:100%}
.big,h2{font-family:Metalista,Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;font-weight:400;text-transform:uppercase;line-height:.9;margin:0}
.title{font-family:AvianoFuture,"Arial Black",system-ui,sans-serif;font-style:italic;text-transform:uppercase;letter-spacing:.08em;margin:0;line-height:1.1}
nav{position:sticky;top:0;z-index:9;background:var(--ink);border-bottom:1px solid #fff3;display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;padding:.8rem 1.2rem}
nav a{text-decoration:none;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
nav a:hover{color:var(--gelb)}
nav .logo{margin-right:auto;color:var(--gelb);font-weight:700}
.slide{position:relative;overflow:hidden;padding:5rem 1.5rem;isolation:isolate}
.slide>*{max-width:1200px;margin-left:auto;margin-right:auto;position:relative}
.frame::after{content:"";position:absolute;inset:1.2rem;border:1px solid #fff8;pointer-events:none;z-index:3}
.bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;max-width:none!important;margin:0!important}
.shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(#0008,#000b);max-width:none!important;margin:0!important}
/* 1 Start */
.hero{min-height:92vh;display:grid;place-items:center;text-align:center}
.hero .year{position:absolute;left:3rem;top:2.5rem;font-size:clamp(2.5rem,6vw,5rem);margin:0;max-width:none}
.hero .title.t1{font-size:clamp(1.6rem,5.2vw,4.2rem);font-weight:900}
.hero .title.t2{font-size:clamp(1.4rem,4.6vw,3.7rem);font-weight:200;border-bottom:1px solid #fff;padding-bottom:.6rem;margin-bottom:.9rem}
.hero .title.t3{font-size:clamp(1rem,2vw,1.6rem);font-weight:900}
/* 2 Gravity */
.gravity .big{font-size:clamp(5rem,20vw,16rem);color:var(--word);position:absolute;left:3%;top:0;z-index:-1;max-width:none}
.gravity .txt{max-width:720px;margin:0 auto 3rem 0;background:#000c;padding:1.5rem 0}
.gravity .txt p{margin:0 0 1.1em}
.tags span{margin-right:1.4rem;text-transform:uppercase;letter-spacing:.04em}
.collage{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem}
.collage img{width:100%;height:220px;object-fit:cover}
.gravity{padding-top:9rem}
/* 3 Rennen */
.rennen .big{font-size:clamp(3.5rem,13vw,10rem);color:var(--word);margin-bottom:1rem}
.rennen .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;background:#000b;padding:1.5rem}
.rennen h3{font-family:Metalista,Impact,sans-serif;font-weight:400;font-size:3rem;color:var(--word);margin:0 0 .4rem}
ul.l{list-style:none;margin:0;padding:0}
ul.l li::before{content:"- "}
.stats{margin-top:1rem;border-top:1px solid #fff;padding-top:1rem}
ul.l.stats li::before{content:"* "}
/* 4 Team */
.team .big{font-size:clamp(4rem,16vw,12rem);color:var(--word);position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:-1;max-width:none;white-space:nowrap}
.team .head{text-align:center;margin-bottom:3rem}
.team .head .title:first-child{font-size:clamp(1.4rem,4vw,3rem);font-weight:900}
.team .head .title:nth-child(2){font-size:clamp(1.2rem,3.4vw,2.6rem);font-weight:200;border-bottom:1px solid #fff;padding-bottom:.5rem;display:inline-block;min-width:60%}
.team .head .title:nth-child(3){font-size:1.2rem;font-weight:900}
.grp{margin-bottom:2.5rem}
.grp>h3{font-family:AvianoFuture,"Arial Black",sans-serif;font-style:italic;font-size:1rem;text-transform:uppercase;border-bottom:1px solid #fff;margin:0 0 1rem}
.boxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem}
.box{background:var(--gold);padding:.7rem 1rem;text-align:center;display:flex;gap:.8rem;align-items:center;justify-content:center;flex-direction:column}
.box.soft{background:#b3921040}
.box.pic{flex-direction:row;text-align:left;justify-content:flex-start}
.box img{width:72px;height:72px;object-fit:cover;flex:none}
.box b{display:block;font-style:italic;font-size:1.15rem}
.box small{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.04em}
.box em{font-size:.72rem;opacity:.7}
/* 5 Fotos */
.fotos{padding:0}
.fotos .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0;max-width:none}
.fotos figure{margin:0;position:relative}
.fotos img{width:100%;aspect-ratio:3/2;object-fit:cover}
.fotos figcaption{position:absolute;left:1rem;bottom:.2rem;font-family:Metalista,Impact,sans-serif;font-size:clamp(3rem,7vw,5.5rem);color:var(--word);text-transform:uppercase;line-height:1}
/* 6 Maschine */
.maschine{padding:0;background:#000}
.mosaic{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-flow:dense;gap:2px;max-width:none}
.mosaic img{width:100%;height:100%;min-height:200px;object-fit:cover;filter:grayscale(1)}
.mosaic .w{grid-row:span 2;grid-column:span 2}
.mtext{position:relative;max-width:560px;margin:-1px auto 0;background:#000;padding:2rem 2.2rem}
.mtext h2{font-family:inherit;text-transform:none;font-style:italic;font-weight:700;font-size:1.1rem;margin-bottom:1rem}
.mtext p{margin:0 0 1em}
.bolt{position:absolute;inset:0;z-index:1;background:#b3921099;clip-path:polygon(66% 0,32% 52%,52% 52%,28% 100%,72% 40%,52% 40%,86% 0);pointer-events:none;max-width:none!important;margin:0!important}
/* 7 Kontakt */
.kontakt{min-height:100vh}
.kontakt .bgimg{filter:grayscale(1)}
.kontakt .bolt{background:#b3921099;clip-path:polygon(40% 0,64% 0,52% 36%,75% 36%,38% 100%,44% 55%,24% 55%)}
.kontakt .head .title:first-child{font-size:clamp(1.3rem,3.4vw,2.6rem);font-weight:900}
.kontakt .head .title:nth-child(2){font-size:clamp(1.1rem,3vw,2.2rem);font-weight:200}
.kontakt .addr{text-align:center;max-width:480px;margin:2rem auto 0 0}
.kontakt .logo{position:absolute;right:3rem;top:3rem;width:min(22vw,200px);max-width:none}
.ride{font-size:clamp(2rem,9vw,7rem);text-align:center;margin-top:5rem;color:#fff}
footer{padding:1.5rem;text-align:center;font-size:.9rem}
footer a{margin:0 .8rem}
@media(max-width:700px){.hero .year{left:1.5rem;top:1.5rem}.kontakt .logo{position:static;margin:0 auto 1.5rem;width:120px}.frame::after{inset:.5rem}}
.mtext,.kontakt .head,.kontakt .addr,.kontakt .ride{z-index:2}
.kontakt .logo{z-index:2}
/* Schriften: FORCE BATTLE (Überschriften) und ING Me (Text) */
@font-face{font-family:"ForceBattle";src:url(fonts/FORCE_BATTLE.otf) format("opentype");font-display:swap}
@font-face{font-family:"INGMe";src:url(fonts/INGMe-Regular.ttf) format("truetype");font-display:swap}
body{font-family:INGMe,Acumin,"Segoe UI",system-ui,sans-serif}
.big,h2,.rennen h3,.fotos figcaption{font-family:ForceBattle,Impact,"Arial Narrow Bold",sans-serif}
.title,.grp>h3,.mtext h2{font-family:INGMe,system-ui,sans-serif}
/* Logo SRTT mittig */
.srtt{text-align:center;margin:0 auto}
.srtt img{margin:0 auto;width:min(86%,820px);height:auto}
.hero h1.srtt{margin:0}
/* Gravity */
.gravity .txt{width:66.666%;max-width:none;margin:0 auto 3rem;text-align:justify;hyphens:auto;background:#000c;padding:1.5rem 1.8rem}
.gravity .tags{text-align:center}
/* Rennen 26 ohne Kasten */
.rennen .cols{background:none;padding:0;text-shadow:0 1px 6px #000,0 0 12px #000}
/* Rennkalender + Sponsoren */
.kalender .big,.sponsoren .big{font-size:clamp(3rem,11vw,8rem);color:var(--word);margin-bottom:1.5rem}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid #fff5}
th{background:var(--gold);color:#000}
.sponsoren .intro{text-align:center}
.spg{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem}
.sponsoren .ph{aspect-ratio:3/2;display:grid;place-items:center;border:1px solid var(--gold);color:#fff9;font-size:.9rem}
/* Team 27: Anordnung wie in der PDF */
.org{display:grid;grid-template-columns:150px 1fr 1fr 150px;grid-template-rows:auto auto auto auto auto auto;gap:.5rem .9rem;max-width:1100px;position:relative;margin-top:2rem}
.org img{width:150px;height:150px;object-fit:cover;align-self:start}
.ph1{grid-column:1;grid-row:1/3}.ph2{grid-column:4;grid-row:1/3}
.ph3{grid-column:1;grid-row:3/5}.ph4{grid-column:4;grid-row:3/5}
.ph5{grid-column:1;grid-row:5/7}
.mgmt{grid-column:2/4;grid-row:1;display:grid;grid-template-columns:1fr 1fr;padding:1.2rem 1rem}
.c2{grid-column:2}.c3{grid-column:3}.r2{grid-row:2}.r3{grid-row:3}.r4{grid-row:4}
.org .box{padding:.9rem 1rem;text-align:center;flex-direction:column}
.rookies{grid-column:2/4;grid-row:5/7;display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1.6rem;position:relative}
.rookies h3{position:absolute;left:0;top:-1.9rem;font-family:ForceBattle,Impact,sans-serif;font-weight:400;font-size:1.6rem;color:var(--word);margin:0}
.rookies .box{background:#b3921066}
.vert{position:absolute;left:calc(150px + .2rem);top:5.6rem;writing-mode:vertical-rl;transform:rotate(180deg);font-family:INGMe,sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:1.3rem;margin:0}
/* Fotos: 2 nebeneinander, 2 Reihen */
.fotos .grid{grid-template-columns:1fr 1fr}
@media(max-width:800px){
 .gravity .txt{width:100%}
 .org{grid-template-columns:1fr}
 .org>*{grid-column:auto!important;grid-row:auto!important}
 .org img{width:96px;height:96px}.vert{display:none}
 .rookies{grid-template-columns:1fr 1fr}.rookies h3{position:static;grid-column:1/-1}
 .mgmt{grid-template-columns:1fr}
 .fotos .grid{grid-template-columns:1fr 1fr}
}
.org{column-gap:2.4rem}
.vert{left:calc(150px + .6rem)}
/* FORCE BATTLE ist breit: Größen angepasst */
.gravity .big{font-size:clamp(3rem,12vw,9rem)}
.rennen .big{font-size:clamp(2.6rem,8vw,6.5rem)}
.team .big{font-size:clamp(3rem,10vw,7.5rem)}
.kalender .big,.sponsoren .big{font-size:clamp(2.4rem,7vw,5rem)}
.rennen h3{font-size:2.2rem}
.collage{display:flex;flex-wrap:wrap;justify-content:center}
.collage img{width:calc(25% - .45rem);min-width:160px}
/* Blitz aus Flash.png */
.maschine .bolt,.kontakt .bolt{clip-path:none;background:none;inset:auto;left:50%;top:0;transform:translateX(-50%);height:100%;width:auto;max-width:none;opacity:.45;z-index:1}
.kontakt .bolt{top:6%;height:88%}
/* Mensch und Maschine: Blocksatz auf 2/3 der Breite */
.mtext{width:66.666%;max-width:none;text-align:justify;hyphens:auto;padding:2rem 2.4rem}
@media(max-width:800px){.mtext{width:100%}}
.kontakt-srtt{text-align:left;margin:0;position:relative;z-index:2}
.kontakt-srtt img{margin:0;width:min(70%,640px)}
@media(max-width:700px){.kontakt-srtt{text-align:center}.kontakt-srtt img{margin:0 auto;width:90%}}
nav{justify-content:center}
/* Highswift für Zahlen in Überschriften */
@font-face{font-family:"Highswift";src:url(fonts/HighswiftRegular-DOXWW.ttf) format("truetype");font-display:swap}
.num{font-family:Highswift,ForceBattle,Impact,sans-serif;font-weight:400}
/* Gravity ohne schwarzen Kasten */
.gravity .txt{background:none;padding:1.5rem 0;text-shadow:0 1px 6px #000,0 0 14px #000}
/* Sylvester 10% kleiner */
.fotos figcaption.sm{font-size:clamp(2.7rem,6.3vw,4.95rem)}
/* Merch */
.merch .big{font-size:clamp(2.4rem,7vw,5rem);color:var(--word);margin-bottom:1.5rem}
.mg{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;max-width:900px;margin:0 auto}
.mg img{width:100%;aspect-ratio:3/4;object-fit:cover}
.mtxt{text-align:center;margin:2rem auto 0;max-width:700px}
/* Sponsoren: 10 Logos, ohne Rahmen */
.spg{grid-template-columns:repeat(5,1fr);gap:1.6rem 1rem}
.spg figure{margin:0;text-align:center}
.spg img{width:100%;aspect-ratio:3/2;object-fit:contain}
.spg figcaption{font-size:.75rem;margin-top:.3rem;letter-spacing:.04em}
@media(max-width:800px){.spg{grid-template-columns:repeat(2,1fr)}}
/* Letzte Seite: eine Zeile */
.kontakt .ride{white-space:nowrap;font-size:clamp(.9rem,3.7vw,3.4rem)}
.kalender .big{font-size:clamp(1.8rem,5.2vw,4rem);white-space:nowrap}

/* ---- Update 04.11. ---- */
.hero .bgimg{filter:brightness(1.265)}
/* Gravity: volle Breite, mittig */
.gravity .big{left:0;right:0;top:1.5rem;width:100%;text-align:center;font-size:calc((100vw - 3rem)*0.1455);white-space:nowrap}
.gravity{padding-top:calc((100vw - 3rem)*0.1455*.9 + 2rem)}
/* Rennkalender + Rennen: mittig */
.kalender .big,.rennen .big{text-align:center}
.rennen .big{font-size:clamp(2.2rem,7vw,5.5rem)}
/* Team: volle Breite */
.team .big{left:0;right:0;top:1.5rem;transform:none;width:100%;text-align:center;font-size:calc((100vw - 3rem)*0.1037);white-space:nowrap}
/* Pro Team: groß, grau, hinter den Kästen */
.org>*:not(.vert){position:relative;z-index:1}
.vert{position:absolute;z-index:0;left:calc(150px - 3rem);top:0;font-family:ForceBattle,Impact,sans-serif;font-style:normal;font-weight:400;font-size:clamp(4rem,9vw,7.5rem);line-height:.9;color:var(--word);white-space:nowrap;margin:0}
/* Mensch und Maschine: Text über den Fotos */
.maschine{position:relative}
.maschine .mtext{position:absolute;z-index:2;left:50%;transform:translateX(-50%);bottom:5%;width:66.666%;max-width:none;margin:0;background:#000c}
@media(max-width:800px){.maschine .mtext{width:94%;bottom:2%}}
/* Letzte Seite */
.kontakt-srtt{text-align:center}
.kontakt-srtt img{margin:0 auto;width:min(70%,620px)}
.kontakt .addr{margin:2rem auto 0;text-align:center}
.kontakt .ride{max-width:none;width:100%;white-space:nowrap;text-align:center;font-size:calc((100vw - 3rem)*0.0514);margin-top:4rem}
@media(max-width:700px){.kontakt-srtt img{width:90%}.kontakt .logo{position:static;margin:1rem auto;width:100px}}

/* ---- Update 04.11. 00:20 ---- */
.rennen .big{text-align:center;white-space:nowrap;font-size:calc((100vw - 3rem)*0.0854)}
.merch .big,.sponsoren .big{text-align:center}
.fotos figcaption.sm{font-size:clamp(2.43rem,5.67vw,4.46rem)}
.kontakt .ride{font-size:calc((100vw - 3rem)*.0528)}

/* Startseite: 8 Sponsoren-Logos unten */
.hero{padding-bottom:7rem}
.hero .hero-sp{position:absolute;left:0;right:0;bottom:2.8rem;margin:0 auto;max-width:1200px;padding:0 2.2rem;display:grid;grid-template-columns:repeat(8,1fr);gap:1rem;align-items:center;z-index:2}
.hero-sp img{width:100%;height:56px;object-fit:contain}
@media(max-width:800px){.hero .hero-sp{grid-template-columns:repeat(4,1fr);gap:.8rem .6rem;bottom:1.8rem}.hero-sp img{height:40px}.hero{padding-bottom:9rem}}
/* Gravity: Kopf im letzten Foto nicht abschneiden */
.collage img[src$="winner.jpg"]{object-position:center 8%}
/* Gravity: Text mittenbündig */
.gravity .txt{text-align:center;hyphens:none}
/* Gravity: Text etwas größer */
.gravity .txt{font-size:1.25rem;line-height:1.6}
@media(max-width:800px){.gravity .txt{font-size:1.1rem}}
/* Gravity: Text 24px */
.gravity .txt{font-size:24px;line-height:1.55}
@media(max-width:800px){.gravity .txt{font-size:19px}}
/* Gravity: Hintergrundfoto vollständig, nicht abgeschnitten */
.gravity .bgimg{object-fit:contain!important;object-position:left top!important}
/* Gravity: Hintergrundfoto doppelt so groß, unten bei Bedarf abgeschnitten */
.gravity .bgimg{width:70%!important;height:100%!important;object-fit:cover!important;object-position:left top!important}
@media(max-width:800px){.gravity .bgimg{width:100%!important;height:auto!important;aspect-ratio:1539/2980;max-height:100%}}
/* Rennen 2026: Überschrift oben wie bei Gravity */
.rennen{padding-top:1.5rem}
.rennen .big{margin-bottom:2rem}
/* Rennen 2026: Überschrift exakt mittig */
.rennen .big{max-width:none;width:100%;margin-left:0;margin-right:0;text-align:center}
/* Rennen 2026: drei Spalten DH | EN | FINAL */
.rennen .cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem}
.rennen .stats{margin-top:0;border-top:0;padding-top:0}
/* Team 2027: PRO TEAM groß, grau, nur hinter den gelben Kästen */
.org .vert{position:relative;grid-column:2/4;grid-row:2/5;align-self:center;justify-self:center;writing-mode:horizontal-tb;transform:none;left:auto;top:auto;z-index:0;text-align:center;white-space:normal;font-size:min(150px,11vw);line-height:.9;color:rgba(205,205,205,.42);margin:0;pointer-events:none}
.org>.box.c2,.org>.box.c3{background:rgba(179,146,16,.8)}
/* Rookies Hobby: groß, grau, hinter den unteren Kästen */
.rookies h3{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;z-index:0;font-size:min(97px,7.6vw);line-height:.9;color:rgba(205,205,205,.42);margin:0;pointer-events:none}
.rookies .box{position:relative;z-index:1}
@media(max-width:800px){.rookies h3{position:static;transform:none;grid-column:1/-1;font-size:2.2rem;text-align:left}}
/* Rookies Hobby: 10 % weniger Deckkraft */
.rookies h3{color:rgba(205,205,205,.378)}
/* Rookies Hobby: nochmal 10 % weniger Deckkraft */
.rookies h3{color:rgba(205,205,205,.34)}
/* Team 2027: obere zwei Fotos mittig neben dem oberen Kasten */
@media(min-width:801px){.org .ph1,.org .ph2{grid-row:1;align-self:center;height:150px;margin-block:-100px}}
/* Team 2027: Fotos je mittig neben ihrem Kasten (einheitlich 119 px, passend zur Kastenhöhe) */
@media(min-width:801px){
 .org .ph1,.org .ph2,.org .ph3,.org .ph4,.org .ph5{width:119px;height:119px;align-self:center;justify-self:center;margin-block:-100px}
 .org .ph1,.org .ph2{grid-row:1}
 .org .ph3,.org .ph4{grid-row:3}
 .org .ph5{grid-column:1;grid-row:4}
}
/* Fotos: auf dem Handy alle Bilder untereinander */
@media(max-width:800px){.fotos .grid{grid-template-columns:1fr}}
/* Mensch und Maschine: schwarzer Balken mit Text oberhalb der Fotos */
.maschine .mtext{position:relative;left:auto;bottom:auto;transform:none;width:100%;max-width:none;margin:0;background:#000;padding:2.5rem 16.666%;z-index:2}
.maschine .mwrap{position:relative;max-width:none;margin:0}
@media(max-width:800px){.maschine .mtext{padding:1.8rem 1.2rem}}

/* Mensch Maschine: große Überschrift in Grau hinter dem Text */
.maschine .mtext{position:relative;overflow:hidden;padding-top:calc((100vw - 3rem)*0.0658*.62 + 2.5rem)}
.maschine .mtext h2.big{position:absolute;left:0;right:0;top:1.5rem;width:100%;max-width:none;margin:0;text-align:center;white-space:nowrap;text-transform:uppercase;font-style:normal;font-family:ForceBattle,Impact,sans-serif;font-weight:400;font-size:calc((100vw - 3rem)*0.0658);line-height:.9;color:var(--word);z-index:0;pointer-events:none}
.maschine .mtext p{position:relative;z-index:1}
@media(max-width:800px){.maschine .mtext{padding-top:calc((100vw - 3rem)*0.0658*.62 + 2rem)}}

/* Mensch Maschine: erste Zeile ohne Silbentrennung; Fotos in Reihen ohne Beschnitt */
.maschine .mtext p{hyphens:none;-webkit-hyphens:none}
.maschine .mosaic{display:flex;flex-direction:column;gap:2px}
.maschine .mrow{display:flex;gap:2px;align-items:flex-start}
.maschine .mosaic img{flex-basis:0;flex-shrink:1;min-width:0;width:0;height:auto;min-height:0;object-fit:cover;filter:grayscale(1)}
@media(max-width:800px){.maschine .mrow{flex-direction:column;align-items:stretch}.maschine .mosaic img{width:100%;flex:none!important}}

@media(max-width:800px){.maschine .bolt{display:none!important}}
/* Mensch Maschine: Überschrift über die volle Seitenbreite */
.maschine .mtext{padding-top:calc(100vw*0.0668*.62 + 2.5rem)}
.maschine .mtext h2.big{left:0;right:0;width:100%;font-size:calc(100vw*0.0668);top:1.2rem}
@media(max-width:800px){.maschine .mtext{padding-top:calc(100vw*0.0668*.62 + 2rem)}.maschine .mtext h2.big{top:1rem}}

/* Mensch - Maschine mit Bindestrich: Breite neu angepasst */
.maschine .mtext{padding-top:calc(100vw*0.0632*.62 + 2.5rem)}
.maschine .mtext h2.big{font-size:calc(100vw*0.0632)}
@media(max-width:800px){.maschine .mtext{padding-top:calc(100vw*0.0632*.62 + 2rem)}}
/* Merch: Überschrift seitenfüllend */
.merch .big{max-width:none;width:100%;white-space:nowrap;text-align:center;font-size:calc((100vw - 5rem)*0.18);line-height:.9;margin-bottom:1.5rem}
/* Merch: Überschrift 20% hinter die Bilder geschoben */
.merch .big{position:relative;z-index:0;margin-bottom:-.205em}
.merch .mg{position:relative;z-index:1}

/* Merch: eine Textzeile unter jedem Bild */
.mg figure{margin:0}
.mg figcaption{margin-top:.5rem;text-align:center;font-size:15px;line-height:1.3;color:#fff}

/* Sponsoren: Überschrift seitenfüllend */
.sponsoren .big{max-width:none;width:100%;white-space:nowrap;text-align:center;font-size:calc((100vw - 5rem)*0.0955);line-height:.9}
/* Sponsoren: Überschrift bis an den Rand */
.sponsoren .big{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:0;font-size:calc(100vw*0.0972)}

/* Social */
.social{padding-top:2.5rem}
.social .big{width:100vw;max-width:none;margin:0 0 1rem calc(50% - 50vw);white-space:nowrap;text-align:center;color:var(--word);font-size:calc(100vw*0.1729);line-height:.9}
.social .intro{text-align:center;margin-bottom:2.5rem}
.sog{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;max-width:1000px;margin:0 auto 3rem}
.so{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;aspect-ratio:1;background:rgba(179,146,16,.8);color:#000;text-decoration:none;text-align:center}
.so .sn{font-size:1.5rem}
.so .sh{font-size:.95rem}
.so:hover{background:#ffd400}
@media(max-width:800px){.sog{grid-template-columns:1fr 1fr}}

/* Social: kleine Logos mit Link */
.sog{display:flex;flex-direction:column;align-items:center;gap:1.2rem;max-width:none;margin:0 auto 3rem}
.so{display:flex;flex-direction:row;aspect-ratio:auto;background:none;color:#fff;gap:.9rem;font-size:1.3rem;justify-content:flex-start;width:16rem}
.so svg{width:32px;height:32px;flex:none}
.so:hover{background:none;color:#ffd400}
@media(max-width:800px){.sog{display:flex}}
/* Social: Links nebeneinander */
.sog{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:1.2rem 3rem}
.so{width:auto}
@media(max-width:800px){.sog{flex-direction:column;align-items:center}}

/* Social: 8 Video-Platzhalter, Abspielen mit Ton per Klick */
.vids{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;max-width:1100px;margin:0 auto 3rem;padding:0 1rem}
.vid{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;margin:0;cursor:pointer;background:rgba(179,146,16,.8);color:#000;font:inherit;overflow:hidden}
.vid .vl{position:absolute;left:0;right:0;bottom:.6rem;text-align:center;font-size:1rem}
.vid .vp{position:absolute;left:50%;top:44%;width:0;height:0;transform:translate(-30%,-50%);border-left:34px solid #000;border-top:20px solid transparent;border-bottom:20px solid transparent}
.vid:hover{background:#ffd400}
video.vid{background:#000;cursor:default;object-fit:contain}
@media(max-width:800px){.vids{grid-template-columns:1fr 1fr}}
/* Videos hochkant 9:16 */
.vids{max-width:960px}
.vid,video.vid{aspect-ratio:9/16}
.vid .vp{top:46%}

/* echte Videos: Vorschaubild, Querformat unter den Hochformat-Videos */
.vid.has{background-size:cover;background-position:center}
.vid.has .vp{border-left-color:#fff;filter:drop-shadow(0 0 6px #000a)}
.vid.has:hover{filter:brightness(1.15)}
.vwide{max-width:960px;margin:0 auto 3rem;padding:0 1rem}
.vid.wide,video.vid.wide{aspect-ratio:16/9}
/* Kontakt: fette Zeile ganz nach unten */
.kontakt{display:flex;flex-direction:column;padding-bottom:3rem}
.kontakt .ride{margin-top:auto;padding-top:3rem}
/* Footer-Links über dem Foto statt schwarzem Streifen */
.kontakt{padding-bottom:5rem}
footer{position:relative;z-index:6;background:transparent;margin-top:-3.4rem;height:3.4rem;padding:0;display:flex;align-items:center;justify-content:center;gap:2rem}
footer a{color:#fffc;text-shadow:0 0 6px #000}
footer{top:-1.9rem}
/* Kontakt: fette Zeile noch tiefer, Footer-Links knapp darunter */
.kontakt{padding-bottom:3.6rem}
footer{top:-1.15rem;font-size:.8rem}
footer{top:-.6rem}
