/* PYRANHA MMA – Grundstile. Das Layout arbeitet mit Inline-Styles; hier stehen nur Schriften,
   Basis, Responsive-Regeln und Bausteine ohne Inline-Pendant. Hover-Effekte: hover.css */

@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/anton/Anton-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/anton/Anton-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-var/Inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-var/Inter-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}

html,body{margin:0;padding:0;background:#0A0A0C;color:#FFFFFF;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{font-family:'Inter',sans-serif}
*{box-sizing:border-box}
a{color:inherit}a:hover{color:#E30613}
img{max-width:100%}
::selection{background:#FFFFFF;color:#0A0A0C}
[hidden]{display:none !important}
:focus-visible{outline:2px solid #E30613;outline-offset:2px}
body::after{content:'';position:fixed;inset:0;z-index:9990;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes slideprog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Bild-Platzhalter des Layouts (image-slot) → <img class="slot"> füllt seinen Rahmen */
img.slot,video.slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.vplayer{position:relative;width:100%;overflow:hidden;background:#000}
.vplayer video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;background:#000}
.vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:clamp(16px,2vw,28px)}
.vcap{margin:12px 0 0;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;line-height:1.6}

/* Navigation */
@media (max-width:1260px){[data-nav-links],[data-nav-cta]{display:none !important}[data-nav-burger]{display:inline-flex !important}}
body.nav-open{overflow:hidden}

/* Mobile Sticky-CTA */
@media (max-width:760px){[data-sticky-cta]{display:flex !important}body.has-sticky{padding-bottom:76px}}

@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}html,body{scroll-behavior:auto}}

/* Cookie-Hinweis */
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:9995;max-width:520px;margin-left:auto;background:#141418;border:1px solid #2A2A2F;padding:22px;font-family:'Inter',sans-serif;color:#C9CACF;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.consent__title{margin:0;font-family:'Anton',sans-serif;font-size:24px;line-height:1.1;text-transform:uppercase;color:#FFFFFF;letter-spacing:.005em}
.consent__text{margin:10px 0 0;font-size:14px;line-height:1.6}
.consent__text a{color:#FFFFFF}
.consent__options{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid #2A2A2F;font-size:14px;color:#FFFFFF}
.consent__options label{display:flex;align-items:center;gap:10px;cursor:pointer}
.consent__options span{color:#8B8B92;font-size:12px}
.consent__options input{accent-color:#E30613;width:18px;height:18px}
.consent__buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.consent__btn{flex:1 1 auto;background:#E30613;border:1px solid #E30613;color:#FFFFFF;cursor:pointer;font-family:'Inter',sans-serif;font-weight:800;font-size:13px;letter-spacing:.02em;text-transform:uppercase;padding:12px 14px;border-radius:10px;transition:background .15s,border-color .15s}
.consent__btn:hover{background:#C40511}
.consent__btn--ghost{background:transparent;border-color:#2A2A2F;color:#C9CACF}
.consent__btn--ghost:hover{background:transparent;border-color:#FFFFFF;color:#FFFFFF}
@media (max-width:760px){body.has-sticky .consent{bottom:92px}}

/* Formular-Rückmeldungen */
.form-msg{margin:0;font-size:14px;line-height:1.5;color:#FF6B73}
/* Hauptmenü: Untermenü „Training“ (Desktop) */
.nav-dd{position:relative;display:flex;align-items:center}
.nav-dd-panel{display:none;position:absolute;top:100%;left:-24px;min-width:440px;padding:18px 24px 20px;background:#0A0A0C;border:1px solid #2A2A2F;box-shadow:0 24px 60px rgba(0,0,0,.5);grid-template-columns:1fr 1fr;gap:4px 28px;z-index:80}
.nav-dd:hover .nav-dd-panel,.nav-dd:focus-within .nav-dd-panel{display:grid}
.nav-dd-panel a{display:block;padding:7px 0;font-family:'Inter',sans-serif;font-weight:600;font-size:14px;color:#C9CACF;text-decoration:none;border-bottom:1px solid #1C1C20;white-space:nowrap}
.nav-dd-panel a:hover,.nav-dd-panel a:focus-visible{color:#FFFFFF;border-color:#E30613;outline:none}
.nav-dd-panel .nav-dd-all{grid-column:1/-1;margin-top:8px;border:0;font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#E30613}
