/*
Theme Name: Kathi Unterdechler
Theme URI: https://kathiunterdechler.com
Author: Chris
Description: Custom One-Pager-Theme für die Skirennläuferin Kathi Unterdechler. Alpin-Editorial-Design mit Rennen-, News- und Sponsoren-Verwaltung.
Version: 5.5.1
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: kathi-unterdechler
*/

:root{
  --bg:#0F0F0F;
  --bg-raised:#1A1A1A;
  --ink:#FFFFFF;
  --ink-soft:#A3A3A3;
  --hairline:#2A2A2A;
  --rot:#E04435;
  --footage:#151515;
  --display:'Anton',sans-serif;
  --body:'Inter',sans-serif;
  --mono:'IBM Plex Mono',monospace;
  --pad:clamp(20px,5vw,72px);
  --sec:clamp(56px,7vw,104px);
  --ease:cubic-bezier(0.22,1,0.36,1);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
section,footer{scroll-margin-top:72px;}
::selection{background:var(--rot);color:#0F0F0F;}
:focus-visible{outline:2px solid var(--rot);outline-offset:3px;}
.wrap{max-width:1440px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--bg);padding:10px 18px;z-index:100;font-size:14px;}
.skip:focus{left:12px;top:12px;}
h1,h2,h3{text-wrap:balance;}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}

/* Grain über Footage-Flächen */
.grain::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.54 0 0 0 0 0.5 0 0 0 0.12 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");}

/* Scroll-Reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.rv.in{opacity:1;transform:none;}
.rv.d1{transition-delay:.08s;}
.rv.d2{transition-delay:.16s;}
.no-js .rv{opacity:1;transform:none;}

/* ---------- Nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:rgba(15,15,15,0.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--hairline);}
.nav-inner{display:flex;justify-content:space-between;align-items:center;height:60px;}
.nav-mark{font-family:var(--display);font-size:16px;letter-spacing:1px;text-transform:uppercase;}
.nav-mark span{color:var(--rot);}
.nav-links{display:flex;gap:30px;font-size:14px;color:var(--ink-soft);list-style:none;}
.nav-links a{position:relative;padding-bottom:3px;transition:color .2s;}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--rot);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease);}
.nav-links a:hover{color:var(--ink);}
.nav-links a:hover::after{transform:scaleX(1);transform-origin:left;}
.nav-toggle{display:none;background:none;border:0;font-family:var(--mono);font-size:13px;cursor:pointer;color:var(--ink);}

/* ---------- Hero ---------- */
.hero-media{position:relative;height:min(92vh,900px);min-height:480px;overflow:hidden;cursor:pointer;background:var(--footage);display:block;width:100%;border:0;text-align:left;}
.hero-media .hero-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.hero-media .layer{position:absolute;inset:-10% 0;background:
  radial-gradient(ellipse 80% 60% at 68% 28%, #262626 0%, transparent 60%),
  linear-gradient(168deg,#1E1E1E 0%,#0F0F0F 72%);
  will-change:transform;transform:scale(1.045);transition:transform 1.6s var(--ease);}
.hero-media.has-video .layer{display:none;}
.hero-media.loaded .layer{transform:scale(1);}
.hero-media::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(to top,rgba(5,5,5,0.72),transparent);pointer-events:none;z-index:2;}
.hero-inner{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;padding:0 var(--pad) clamp(28px,4vw,52px);pointer-events:none;}
.hero-name{font-family:var(--display);font-size:clamp(54px,10vw,168px);line-height:0.98;letter-spacing:0.03em;color:var(--ink);font-weight:400;}
.hero-name .line{display:block;overflow:hidden;}
.hero-name .line span{display:inline-block;transform:translateY(110%);transition:transform 1s var(--ease);}
.hero-name .line:nth-child(2) span{transition-delay:.12s;}
.hero-media.loaded .hero-name .line span,.no-js .hero-name .line span{transform:translateY(0);}
.hero-caption{position:absolute;right:22px;bottom:18px;font-size:12px;color:#8F8F8F;z-index:3;}
.hero-min{position:absolute;right:22px;top:18px;z-index:3;font-family:var(--mono);font-size:12px;color:#A6A6A6;font-variant-numeric:tabular-nums;}
.hero-media:hover 
/* Zeile unterm Video */
.hero-bar{display:flex;justify-content:space-between;align-items:baseline;gap:28px;flex-wrap:wrap;padding-top:22px;padding-bottom:26px;}
.hero-bar p{max-width:460px;color:var(--ink-soft);font-size:15px;line-height:1.55;}
.next-race{font-size:15px;white-space:nowrap;}
.next-race strong{font-weight:600;border-bottom:2px solid var(--rot);padding-bottom:2px;}
.next-race .tage{font-family:var(--mono);font-size:12.5px;color:var(--ink-soft);margin-left:10px;font-variant-numeric:tabular-nums;}

/* ---------- Ticker ---------- */
.ticker{background:var(--rot);color:#0F0F0F;overflow:hidden;padding:13px 0;position:relative;}
.ticker-track{display:flex;width:max-content;animation:ticker 36s linear infinite;}
.ticker:hover .ticker-track{animation-play-state:paused;}
.ticker-seq{display:flex;align-items:baseline;white-space:nowrap;}
.ticker-seq span{font-family:var(--mono);font-size:13px;letter-spacing:1px;padding:0 14px;font-variant-numeric:tabular-nums;}
.ticker-seq b{font-family:var(--display);font-weight:400;font-size:15px;letter-spacing:1.5px;padding:0 14px;}
.ticker-seq i{color:rgba(15,15,15,0.45);font-style:normal;padding:0 6px;}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- Intro (Full-Bleed-Split) ---------- */
.intro{padding:var(--sec) 0 0;}
.intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:0;align-items:stretch;}
.intro-text{align-self:center;padding-left:max(var(--pad),calc((100% - 720px)));}
.intro .intro-text{padding-left:max(var(--pad),calc((100vw - 1440px)/2 + var(--pad)));padding-right:clamp(24px,5vw,90px);padding-top:40px;padding-bottom:40px;}
.intro-text h2{font-family:var(--display);font-size:clamp(30px,3.8vw,56px);line-height:1.05;letter-spacing:0.015em;margin-bottom:22px;font-weight:400;}
.intro-text p{color:var(--ink-soft);font-size:16px;max-width:560px;}
.intro-text p + p{margin-top:14px;}
.intro-media{position:relative;overflow:hidden;height:clamp(440px,72vh,760px);background:var(--footage);}
.intro-media img{position:absolute;left:0;right:0;top:-8%;bottom:auto;width:100%;height:116%;object-fit:cover;will-change:transform;}
.intro-media .layer{position:absolute;inset:-8%;background:radial-gradient(ellipse 75% 55% at 40% 38%, #262626 0%, transparent 62%),linear-gradient(195deg,#1E1E1E 0%,#0F0F0F 78%);}
.intro-media .cap{position:absolute;left:18px;bottom:14px;font-size:12px;color:#ECECEC;z-index:3;text-shadow:0 1px 10px rgba(0,0,0,.6);}

/* ---------- Sections allgemein ---------- */
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:18px;}
.sec-head h2{font-family:var(--display);font-size:clamp(32px,4.2vw,60px);line-height:1;letter-spacing:0.015em;font-weight:400;}
.arrow-link{font-size:14px;color:var(--rot);display:inline-flex;align-items:center;gap:6px;}
.arrow-link i{display:inline-block;font-style:normal;transition:transform .3s var(--ease);}
.arrow-link:hover i{transform:translateX(5px);}

/* ---------- News (Feature mit Overlay) ---------- */
.news{padding:var(--sec) 0 0;}
.news-feature{display:block;position:relative;height:clamp(400px,64vh,680px);overflow:hidden;background:var(--footage);}
.news-feature img.cover-img{position:absolute;left:0;right:0;top:-8%;bottom:auto;width:100%;height:116%;object-fit:cover;will-change:transform;}
.news-feature .layer{position:absolute;inset:-6%;background:radial-gradient(ellipse 80% 60% at 60% 50%, #262626 0%, transparent 60%),linear-gradient(150deg,#1E1E1E,#0F0F0F);}
.news-feature::after{content:"";position:absolute;left:0;right:0;bottom:0;height:65%;background:linear-gradient(to top,rgba(5,5,5,0.82),transparent);pointer-events:none;}
.news-feature .feature-body{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:0 max(var(--pad),calc((100vw - 1440px)/2 + var(--pad))) clamp(26px,4vw,52px);}
.news-feature .datum{font-family:var(--mono);font-size:13px;color:#C4C4C4;font-variant-numeric:tabular-nums;}
.news-feature h3{font-family:var(--display);font-size:clamp(26px,4vw,54px);font-weight:400;line-height:1.06;letter-spacing:0.015em;margin:10px 0 10px;color:var(--ink);max-width:20ch;transition:color .2s;}
.news-feature:hover h3{color:#FF8A7E;}
.news-feature p{font-size:15px;color:#D6D6D6;max-width:520px;}
.news-list{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,44px);margin-top:clamp(24px,3vw,40px);}
.news-item{display:block;padding:18px 0 20px;border-top:2px solid var(--ink);transition:border-color .25s;}
.news-item:hover{border-top-color:var(--rot);}
.news-item .datum{font-family:var(--mono);font-size:12px;color:var(--ink-soft);font-variant-numeric:tabular-nums;}
.news-item h4{font-size:17px;font-weight:600;margin-top:8px;line-height:1.35;transition:color .2s;}
.news-item:hover h4{color:var(--rot);}
.news-item .cat{font-family:var(--mono);font-size:12px;color:var(--rot);}

/* ---------- Startliste ---------- */
.rennen{padding:var(--sec) 0 0;}
.startliste{border-top:2px solid var(--ink);}
.row{display:grid;grid-template-columns:118px 1.2fr 1fr 110px;align-items:baseline;padding:15px 12px;border-bottom:1px solid var(--hairline);transition:background .25s,padding-left .3s var(--ease);position:relative;}
.row:hover{background:var(--bg-raised);padding-left:20px;}
.row:hover .datum{color:var(--rot);}
.row.next{border-left:3px solid var(--rot);background:var(--bg-raised);padding-left:15px;}
.row.next:hover{padding-left:22px;}
.row .datum{font-family:var(--mono);font-size:13.5px;color:var(--ink-soft);transition:color .2s;font-variant-numeric:tabular-nums;}
.row.next .datum{color:var(--ink);font-weight:500;}
.row .ort{font-size:15px;}
.row.next .ort{font-weight:600;}
.row .disziplin{font-size:14px;color:var(--ink-soft);}
.row .ergebnis{font-family:var(--mono);font-size:13px;text-align:right;font-variant-numeric:tabular-nums;}
.row .ergebnis .platz{font-weight:500;font-size:14px;}
.row .ergebnis .tage{color:var(--ink-soft);}

/* ---------- Über mich (Split, Bild links) ---------- */
.ueber{padding:var(--sec) 0 0;}
.ueber-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:0;align-items:stretch;}
.ueber-media{position:relative;overflow:hidden;cursor:pointer;background:var(--footage);display:block;border:0;padding:0;height:clamp(440px,72vh,760px);}
.ueber-media img{position:absolute;left:0;right:0;top:-8%;bottom:auto;width:100%;height:116%;object-fit:cover;will-change:transform;}
.ueber-media .layer{position:absolute;inset:-8%;background:radial-gradient(ellipse 90% 70% at 40% 40%, #262626 0%, transparent 65%),linear-gradient(200deg,#1E1E1E 0%,#0F0F0F 75%);}
.ueber-media .cap{position:absolute;left:18px;bottom:14px;font-size:12px;color:#ECECEC;z-index:3;text-shadow:0 1px 10px rgba(0,0,0,.6);}
.ueber-media .mini-play{position:absolute;right:18px;bottom:14px;z-index:3;font-family:var(--mono);font-size:12px;color:#ECECEC;text-shadow:0 1px 10px rgba(0,0,0,.6);}
.ueber-body{align-self:center;padding:40px clamp(24px,5vw,90px);padding-right:max(var(--pad),calc((100vw - 1440px)/2 + var(--pad)));}
.ueber-body h2{font-family:var(--display);font-size:clamp(30px,3.8vw,56px);line-height:1;letter-spacing:0.015em;margin-bottom:20px;font-weight:400;}
.ueber-body p{color:var(--ink-soft);font-size:16px;max-width:560px;}
.ueber-body p + p{margin-top:14px;}
.mehr{display:inline-block;margin-top:26px;font-size:15px;font-weight:500;position:relative;padding-bottom:3px;}
.mehr::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--rot);transform-origin:left;transition:transform .3s var(--ease);}
.mehr:hover::after{transform:scaleX(0.4);}

/* ---------- Galerie (versetzte Spalten, natürliche Formate) ---------- */
.galerie{padding:var(--sec) 0 0;overflow:hidden;}
.galerie-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,32px);align-items:start;max-width:1600px;margin:0 auto;padding:0 var(--pad);}
.gcol{display:flex;flex-direction:column;gap:clamp(14px,2vw,32px);will-change:transform;}
.gcol:nth-child(2){margin-top:clamp(52px,7vw,150px);}
.gcol:nth-child(3){margin-top:clamp(24px,3.5vw,80px);}
.galerie .g{position:relative;overflow:hidden;background:var(--footage);}
.galerie .g img{display:block;width:100%;height:auto;}

/* ---------- Sponsoren ---------- */
.sponsoren{padding:var(--sec) 0 0;}
.sponsoren .lead{font-size:15px;color:var(--ink-soft);max-width:460px;margin-bottom:28px;}
.haupt{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--ink);border-bottom:1px solid var(--hairline);}
.haupt a{display:flex;align-items:center;justify-content:center;padding:clamp(30px,4.5vw,56px) 20px;font-family:var(--display);font-size:clamp(22px,3vw,32px);color:#6E6E6E;letter-spacing:0.06em;transition:color .25s,background .25s;}
.haupt a + a{border-left:1px solid var(--hairline);}
.haupt a:hover{color:var(--ink);background:var(--bg-raised);}
.haupt a img{max-height:76px;max-width:70%;width:auto;object-fit:contain;opacity:.92;transition:opacity .25s,transform .3s var(--ease);}
.haupt a:hover img{opacity:1;transform:scale(1.03);}
.partner{display:flex;flex-wrap:wrap;}
.partner a{flex:1 1 20%;min-width:150px;display:flex;align-items:center;justify-content:center;padding:24px 16px;border-bottom:1px solid var(--hairline);border-right:1px solid var(--hairline);font-size:14px;font-weight:500;color:#6E6E6E;letter-spacing:0.5px;transition:color .25s,background .25s;}
.partner a:hover{color:var(--ink);background:var(--bg-raised);}
.partner a img{max-height:50px;max-width:60%;width:auto;object-fit:contain;opacity:.92;transition:opacity .25s,transform .3s var(--ease);}
.partner a:hover img{opacity:1;transform:scale(1.04);}

/* ---------- Footer ---------- */
.footer{background:#0A0A0A;color:var(--ink);}
.footer-inner{padding-top:clamp(44px,5.5vw,80px);padding-bottom:36px;}
.footer-name{font-family:var(--display);font-size:clamp(36px,6vw,84px);line-height:1;letter-spacing:0.03em;text-transform:uppercase;}
.footer-name span{color:var(--rot);}
.footer-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:clamp(28px,5vw,72px);margin-top:clamp(32px,4.5vw,56px);padding-top:30px;border-top:1px solid #2A2A2A;}
.footer h5{font-family:var(--mono);font-size:11px;letter-spacing:2px;color:#8F8F8F;font-weight:400;margin-bottom:13px;text-transform:uppercase;}
.footer a{color:#C4C4C4;font-size:14px;transition:color .2s;}
.footer a:hover{color:var(--bg);}
.footer .stack a{display:block;margin-bottom:8px;}
.mediakit{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#0F0F0F !important;font-size:14px;font-weight:500;padding:13px 22px;transition:transform .3s var(--ease),background .2s;}
.mediakit:hover{background:#FFFFFF;transform:translateY(-2px);}
.footer-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:48px;font-size:12px;color:#8F8F8F;}
.footer-base a{font-size:12px;color:#8F8F8F;}
.footer-base .menu{display:flex;gap:16px;list-style:none;}

/* ---------- Video-Modal ---------- */
.vmodal{position:fixed;inset:0;z-index:200;background:rgba(12,11,7,0.94);display:none;align-items:center;justify-content:center;padding:4vw;}
.vmodal.open{display:flex;}
.vmodal-inner{width:min(1100px,100%);aspect-ratio:16/9;background:#000;position:relative;}
.vmodal-inner iframe,.vmodal-inner video{width:100%;height:100%;border:0;}
.vmodal-close{position:absolute;top:-44px;right:0;background:none;border:0;color:var(--bg);font-family:var(--mono);font-size:14px;cursor:pointer;padding:8px;}

/* ---------- Unterseiten / Blog ---------- */
.page-head{padding:clamp(40px,6vw,80px) 0 clamp(24px,3vw,40px);}
.page-head h1{font-family:var(--display);font-size:clamp(34px,5vw,68px);line-height:1;letter-spacing:0.02em;font-weight:400;}
.page-head .sub{color:var(--ink-soft);font-size:15px;margin-top:14px;max-width:520px;}
.entry{padding-bottom:var(--sec);}
.entry-content{max-width:720px;font-size:16.5px;color:#CCCCCC;}
.entry-content > * + *{margin-top:1.1em;}
.entry-content h2,.entry-content h3{font-family:var(--display);font-weight:400;line-height:1.1;letter-spacing:0.015em;margin-top:1.6em;}
.entry-content h2{font-size:clamp(24px,2.6vw,34px);}
.entry-content h3{font-size:clamp(20px,2.2vw,26px);}
.entry-content a{border-bottom:2px solid var(--rot);padding-bottom:1px;}
.entry-content img{margin:1.4em 0;}
.entry-content blockquote{border-left:3px solid var(--rot);padding-left:18px;color:var(--ink-soft);}
.entry-content ul,.entry-content ol{padding-left:1.2em;}
.entry-meta{font-family:var(--mono);font-size:13px;color:var(--ink-soft);margin-bottom:10px;font-variant-numeric:tabular-nums;}
.entry-cover{aspect-ratio:16/8;position:relative;overflow:hidden;background:var(--footage);margin-bottom:clamp(24px,4vw,44px);}
.entry-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

/* News-Archiv */
.arch-list{border-top:2px solid var(--ink);}
.arch-item{display:grid;grid-template-columns:130px 1fr auto;gap:20px;align-items:baseline;padding:20px 8px;border-bottom:1px solid var(--hairline);transition:background .25s,padding-left .3s var(--ease);}
.arch-item:hover{background:var(--bg-raised);padding-left:16px;}
.arch-item .datum{font-family:var(--mono);font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums;}
.arch-item h3{font-size:17px;font-weight:600;line-height:1.35;}
.arch-item .cat{font-family:var(--mono);font-size:12px;color:var(--rot);white-space:nowrap;}
.pagination{display:flex;gap:8px;margin-top:32px;font-family:var(--mono);font-size:14px;}
.pagination .page-numbers{padding:8px 14px;border:1px solid var(--hairline);}
.pagination .current{background:var(--ink);color:var(--bg);border-color:var(--ink);}

/* Rennen-Archiv */
.saison-label{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--ink-soft);margin:36px 0 10px;text-transform:uppercase;}

/* ---------- Responsive ---------- */
@media (max-width:860px){
  .nav-links{display:none;position:absolute;top:60px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--hairline);flex-direction:column;gap:0;padding:8px 0;}
  .nav-links.open{display:flex;}
  .nav-links a{display:block;padding:13px var(--pad);}
  .nav-links a::after{display:none;}
  .nav-toggle{display:block;}
  .hero-media{height:70vh;min-height:400px;}
    .intro-grid{grid-template-columns:1fr;}
  .intro .intro-text{padding:32px var(--pad);}
  .intro-media{height:52vh;}
  .news-feature{height:56vh;}
  .news-feature .feature-body{padding:0 var(--pad) 24px;}
  .news-list{grid-template-columns:1fr;gap:0;}
  .news-item{border-top:1px solid var(--hairline);}
  .galerie-cols{grid-template-columns:repeat(2,1fr);gap:10px;}
  .gcol{gap:10px;}
  .gcol:nth-child(2){margin-top:40px;}
  .gcol:nth-child(3){margin-top:0;}
  .row{grid-template-columns:84px 1fr 80px;grid-template-rows:auto auto;row-gap:2px;}
  .row .disziplin{grid-column:2;grid-row:2;}
  .row .ergebnis{grid-row:1 / span 2;align-self:center;}
  .ueber-grid{grid-template-columns:1fr;}
  .ueber-media{height:52vh;}
  .ueber-body{padding:32px var(--pad);}
  .haupt{grid-template-columns:1fr;}
  .haupt a + a{border-left:none;border-top:1px solid var(--hairline);}
  .footer-grid{grid-template-columns:1fr;gap:30px;}
  .arch-item{grid-template-columns:1fr;gap:4px;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{transition:none !important;animation:none !important;}
  .rv{opacity:1;transform:none;}
  .hero-name .line span{transform:none;}
  .hero-media .layer{transform:none;}
}

/* WordPress-Admin-Leiste: Sticky-Nav darunter versetzen */
body.admin-bar .nav{top:32px;}
@media (max-width:782px){ body.admin-bar .nav{top:46px;} }

/* ---------- Farb-Bänder & Wellen-Übergänge ---------- */
.wave{display:block;width:100%;height:clamp(44px,7vw,100px);line-height:0;}
.wave svg{display:block;width:100%;height:100%;}
.wave.flip svg{transform:scaleX(-1);}

.rennen.band-white{background:#F4F4F1;color:#121212;padding:0 0 var(--sec);}
.rennen.band-white .wrap{padding-top:clamp(24px,3.5vw,56px);}
.band-white .sec-head h2{color:#121212;}
.band-white .startliste{border-top-color:#121212;}
.band-white .row{border-bottom-color:#DCDCD6;}
.band-white .row:hover,.band-white .row.next{background:#EBEBE5;}
.band-white .row .datum,.band-white .row .disziplin{color:#6C6C66;}
.band-white .row.next .datum,.band-white .row .ort{color:#121212;}
.band-white .row .ergebnis{color:#121212;}

.ueber.band-red{background:#D6362B;color:#fff;padding:0;}
.band-red .ueber-grid{padding-top:clamp(20px,3vw,48px);}
.band-red .ueber-body h2{color:#fff;}
.band-red .ueber-body p{color:rgba(255,255,255,0.9);}
.band-red .mehr{color:#fff;}
.band-red .mehr::after{background:#16150F;}
.band-red ::selection{background:#16150F;color:#fff;}

/* Partner auf Weiß */
.sponsoren.band-white{background:#F4F4F1;color:#121212;padding:0 0 var(--sec);}
.sponsoren.band-white .wrap{padding-top:clamp(24px,3.5vw,56px);}
.band-white .lead{color:#5E5E58;}
.band-white .haupt{border-top-color:#121212;border-bottom-color:#DCDCD6;}
.band-white .haupt a + a{border-left-color:#DCDCD6;}
.band-white .haupt a,.band-white .partner a{color:#8A8A84;}
.band-white .haupt a:hover,.band-white .partner a:hover{color:#121212;background:#ECECE6;}
.band-white .partner a{border-bottom-color:#DCDCD6;border-right-color:#DCDCD6;}
@media (max-width:860px){ .band-white .haupt a + a{border-top-color:#DCDCD6;} }

/* ---------- Statement ---------- */
.statement{position:relative;min-height:clamp(420px,74vh,780px);overflow:hidden;display:flex;align-items:flex-end;background:var(--footage);}
.statement .st-img{position:absolute;left:0;right:0;top:-8%;bottom:auto;width:100%;height:116%;object-fit:cover;will-change:transform;}
.statement .layer{position:absolute;inset:-8%;background:radial-gradient(ellipse 80% 60% at 60% 35%, #262626 0%, transparent 60%),linear-gradient(160deg,#1E1E1E,#0F0F0F);}
.statement::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70%;background:linear-gradient(to top,rgba(5,5,5,0.72),transparent);pointer-events:none;z-index:1;}
.statement .st-inner{position:relative;z-index:3;width:100%;padding:0 max(var(--pad),calc((100% - 1440px)/2 + var(--pad))) clamp(40px,6vw,84px);}
.statement h2{font-family:var(--display);font-weight:400;font-size:clamp(34px,5.6vw,88px);line-height:1.02;letter-spacing:0.02em;color:#fff;max-width:16ch;}

/* ---------- Über mich: runder, persönlicher ---------- */
.band-red .ueber-grid{grid-template-columns:1.05fr 1fr;gap:clamp(32px,5vw,80px);align-items:center;max-width:1440px;margin:0 auto;padding:clamp(44px,6vw,96px) var(--pad);}
.band-red .ueber-media{order:2;height:auto;aspect-ratio:3/4;width:100%;max-width:520px;justify-self:end;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,0.25);}
.band-red .ueber-body{order:1;padding:0;align-self:center;}
.band-red .ueber-body h2{font-size:clamp(38px,4.8vw,72px);}

/* ---------- Galerie: Ecken + Lightbox-Cursor ---------- */
.galerie .g{border-radius:12px;cursor:zoom-in;}
.vmodal-inner img{width:100%;height:100%;object-fit:contain;}

/* ---------- Beitragsseiten: zentrierte Lesespalte ---------- */
.single .wrap.page-head,.page .wrap.page-head,.single .entry .wrap,.page .entry .wrap{max-width:920px;}
.entry-content{max-width:100%;}

@media (max-width:860px){
  .band-red .ueber-grid{grid-template-columns:1fr;}
  .band-red .ueber-media{order:1;transform:none;max-width:100%;justify-self:start;}
  .band-red .ueber-body{order:2;}
  .statement h2{font-size:clamp(30px,8vw,48px);}
}

/* ---------- Statement: Schwung ins Dunkle ---------- */
.st-wave{position:absolute;left:0;right:0;bottom:-1px;z-index:2;height:clamp(44px,7vw,100px);line-height:0;}
.statement .st-wave{z-index:2;}
.st-wave svg{display:block;width:100%;height:100%;}
.statement .st-inner{padding-bottom:clamp(96px,13vw,190px);}
.news{padding-top:clamp(24px,3.5vw,52px);}

/* ---------- News-Feature als Karte ---------- */
.news-feature{height:clamp(360px,58vh,620px);border-radius:16px;}
.news-feature .feature-body{padding:0 clamp(22px,3.5vw,48px) clamp(22px,3.5vw,44px);}
.news-feature.no-img{height:auto;min-height:clamp(220px,30vh,320px);display:flex;align-items:flex-end;}
.news-feature.no-img .feature-body{position:static;padding-top:clamp(40px,6vw,80px);}

/* ---------- News-Liste mit Thumbnails ---------- */
.news-item{display:grid;grid-template-columns:1fr;gap:0 16px;align-items:center;border-radius:10px;}
.news-item.has-thumb{grid-template-columns:76px 1fr;}
.news-item .thumb{display:block;width:76px;height:76px;border-radius:10px;overflow:hidden;}
.news-item .thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.news-item:hover{padding-left:10px;}

/* Modal: Inhalt füllt den Rahmen */
#vmodalContent{width:100%;height:100%;}
#vmodalContent iframe,#vmodalContent video,#vmodalContent img{width:100%;height:100%;display:block;}

/* Über-mich als Video-Kachel (Video gesetzt, kein Bild) */
.ueber-media.video-tile::after{content:"";position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border:1.5px solid rgba(255,255,255,0.9);border-radius:50%;z-index:3;background:rgba(15,15,15,0.3) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/28px no-repeat;transition:transform .3s var(--ease);}
.ueber-media.video-tile:hover::after{transform:scale(1.08);}

/* Hero: Vimeo/YouTube als stummer Hintergrund */
.hero-embed{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:101%;min-width:179.5vh;transform:translate(-50%,-50%);border:0;pointer-events:none;z-index:1;}

/* ---------- Responsive-Überholung ---------- */
@media (max-width:860px){
  .next-race{white-space:normal;line-height:1.7;}
  .hero-media{height:60vh;min-height:340px;}
  .hero-name{font-size:clamp(36px,10.5vw,60px);}
  .hero-bar{padding-top:16px;padding-bottom:18px;gap:14px;}
  .statement{min-height:54vh;}
  .statement .st-inner{padding-bottom:clamp(64px,15vw,110px);}
  .statement h2{max-width:100%;}
  .news-feature{height:46vh;border-radius:12px;}
  .news-feature h3{font-size:clamp(22px,6.5vw,30px);}
  .wave,.st-wave{height:clamp(26px,6vw,44px);}
  .rennen.band-white .wrap{padding-top:18px;}
  .band-red .ueber-grid{padding:24px var(--pad) 8px;}
  .band-red .ueber-media{max-width:100%;}
  .galerie .g{border-radius:8px;}
  .footer-name{font-size:clamp(28px,8.5vw,46px);}
  .footer-inner{padding-top:36px;}
  .sec-head h2{font-size:clamp(28px,8vw,40px);}
  .row{padding:12px 8px;}
  .row.next{padding-left:11px;}
}

/* ---------- Über mich: Steckbrief & Signatur ---------- */
.steckbrief{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,0.35);}
.steckbrief span{font-family:var(--mono);font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.92);}
.signatur{font-family:var(--display);font-size:clamp(24px,2.8vw,38px);margin-top:22px;letter-spacing:0.02em;color:#fff;}

/* ---------- Erfolge (weißes Band, Fortsetzung) ---------- */
.erfolge{background:#F4F4F1;color:#121212;padding:0 0 var(--sec);}
.erfolge .sec-head{margin-bottom:6px;}
.jahr-row{display:grid;grid-template-columns:150px 1fr;gap:16px 28px;padding:22px 0;border-top:1px solid #DCDCD6;align-items:start;}
.jahr-row:first-of-type{border-top:2px solid #121212;}
.jahr{font-family:var(--display);font-size:clamp(28px,3vw,42px);line-height:1;color:var(--rot);}
.jahr-row ul{list-style:none;margin:0;padding:0;}
.jahr-row li{padding:4px 0;font-size:15px;color:#3C3C36;line-height:1.5;}
.jahr-row li::before{content:"—";color:var(--rot);margin-right:10px;}
@media (max-width:860px){ .jahr-row{grid-template-columns:1fr;gap:6px;} }

/* Hero: Vorstellungszeile + nächstes Rennen im Overlay */
.hero-sub2{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-top:clamp(16px,2vw,28px);pointer-events:auto;}
.hero-sub2 p{max-width:440px;color:#D9D9D9;font-size:15px;line-height:1.55;}
.hero-sub2 .next-race{color:#fff;}
.hero-sub2 .next-race .tage{color:#B9B9B9;}
@media (max-width:860px){
  .hero-media{height:74vh;}
  .hero-sub2{flex-direction:column;align-items:flex-start;gap:10px;}
}
/* Partner: Logos größer, Sektion kompakter */
.haupt a{padding:clamp(26px,3.5vw,44px) 20px;}
.haupt a img{max-height:88px;}
.partner a img{max-height:56px;}

/* Hero: Parallax */

.hero-media::after{z-index:1;}


@media (max-width:860px){
  .ueber-head h2{font-size:clamp(40px,11vw,64px);}
  .band-red .ueber-media{margin-top:0;}
}

/* ============================================================
   KONSOLIDIERTE RESPONSIVE-SCHICHT (überschreibt alles davor)
   ============================================================ */

/* ---------- Tablet ---------- */
@media (max-width:1100px){
  .news-list{grid-template-columns:repeat(2,1fr);}
  .band-red .ueber-grid{gap:clamp(24px,4vw,44px);}
  .band-red .ueber-media{max-width:400px;}
  .jahr-row{grid-template-columns:110px 1fr;}
  .galerie-cols{gap:16px;}
  .gcol{gap:16px;}
}

/* ---------- Handy ---------- */
@media (max-width:860px){
  :root{--sec:clamp(40px,10vw,64px);}

  /* Hero */
  .hero-media{height:78vh;min-height:420px;}
  .hero-inner{padding:0 var(--pad) clamp(52px,12vw,80px);}
  .hero-name{font-size:clamp(40px,12vw,64px);letter-spacing:0.02em;}
  .hero-sub2{flex-direction:column;align-items:flex-start;gap:10px;margin-top:14px;}
  .hero-sub2 p{font-size:14px;max-width:100%;}
  .next-race{white-space:normal;font-size:14px;line-height:1.6;}
  .hero-min{display:none;}
  .hero-wave{height:26px;}

  /* Statement */
  .statement{min-height:52vh;}
  .statement h2{font-size:clamp(28px,8.5vw,44px);max-width:100%;}
  .statement .st-inner{padding-bottom:clamp(56px,14vw,84px);}
  .st-wave{height:26px;}
  .wave{height:26px;}

  /* News */
  .news{padding-top:20px;}
  .news-feature{height:auto;min-height:44vh;border-radius:12px;}
  .news-feature .feature-body{padding:0 18px 18px;}
  .news-feature h3{font-size:clamp(22px,7vw,30px);}
  .news-feature p{display:none;}
  .news-list{grid-template-columns:1fr;gap:0;margin-top:18px;}
  .news-item{padding:14px 0;}

  /* Startliste + Erfolge */
  .rennen.band-white .wrap{padding-top:14px;}
  .sec-head{margin-bottom:12px;}
  .sec-head h2{font-size:clamp(30px,9vw,40px);}
  .row{grid-template-columns:84px 1fr 64px;padding:12px 6px;}
  .row .ergebnis{padding-right:0;}
  .row .go{display:none;}
  .jahr-row{grid-template-columns:1fr;gap:4px;padding:16px 0;}
  .jahr{font-size:30px;}
  .jahr-row li{font-size:14px;}

  /* Über mich */
  .ueber-head{padding-top:22px;}
  .ueber-head h2{font-size:clamp(38px,11.5vw,56px);}
  .band-red .ueber-grid{grid-template-columns:1fr;padding:14px var(--pad) 6px;gap:22px;}
  .band-red .ueber-media{order:1;margin-top:0;max-width:100%;transform:none;border-radius:12px;}
  .band-red .ueber-body{order:2;}
  .signatur{font-size:clamp(21px,6vw,26px);}
  .steckbrief{gap:6px 16px;}
  .steckbrief span{font-size:11.5px;}

  /* Galerie / Partner / Footer */
  .galerie-cols{grid-template-columns:repeat(2,1fr);gap:10px;padding:0 var(--pad);}
  .gcol{gap:10px;}
  .gcol:nth-child(2){margin-top:36px;}
  .gcol:nth-child(3){margin-top:0;}
  .haupt{grid-template-columns:1fr;}
  .haupt a{padding:24px 16px;}
  .haupt a img{max-height:60px;}
  .partner a{flex:1 1 45%;min-width:0;padding:18px 10px;}
  .partner a img{max-height:40px;max-width:75%;}
  .footer-name{font-size:clamp(30px,9vw,44px);}
  .footer-grid{grid-template-columns:1fr;gap:26px;margin-top:28px;padding-top:24px;}
  .footer-base{margin-top:32px;}

  /* Modal */
  .vmodal{padding:12px;}
  .vmodal-inner{width:100%;}
  .vmodal-close{top:-38px;right:0;font-size:13px;}
}

/* ---------- Kleines Handy ---------- */
@media (max-width:480px){
  :root{--pad:16px;}
  .hero-name{font-size:11.5vw;}
  .ueber-head h2{font-size:12vw;}
  .statement h2{font-size:9.5vw;}
  .galerie-cols{grid-template-columns:1fr;}
  .gcol:nth-child(2),.gcol:nth-child(3){margin-top:0;}
  .partner a{flex:1 1 100%;}
}

/* ---------- Hero: Curtain — Inhalt schiebt sich über den Hero ---------- */
main > header{position:sticky;top:0;z-index:0;}
main > section,main > div.ticker{position:relative;z-index:2;}
.news,.galerie{background:var(--bg);}
.statement{z-index:2;}

/* ---------- About: sauberes Editorial-Layout ---------- */
.band-red .ueber-grid{grid-template-columns:1.1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;max-width:1440px;margin:0 auto;padding:clamp(40px,5.5vw,80px) var(--pad) clamp(28px,4vw,56px);}
.band-red .ueber-body h2{font-size:clamp(40px,4.8vw,74px);line-height:1;margin-bottom:22px;}
.steckbrief-band{max-width:1440px;margin:0 auto;padding:18px var(--pad) clamp(36px,5vw,64px);display:flex;flex-wrap:wrap;gap:10px 28px;border-top:1px solid rgba(255,255,255,0.3);}
.steckbrief-band span{font-family:var(--mono);font-size:13px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.92);}
@media (max-width:860px){
  .band-red .ueber-grid{grid-template-columns:1fr;padding:24px var(--pad) 16px;gap:20px;}
  .band-red .ueber-media{order:1;max-width:100%;}
  .band-red .ueber-body{order:2;}
  .band-red .ueber-body h2{font-size:clamp(34px,10vw,48px);}
  .steckbrief-band{gap:6px 16px;padding-bottom:28px;}
  .steckbrief-band span{font-size:11.5px;}
}

/* ---------- Hero: Rennen-Karte ---------- */
.hero-foot{display:flex;justify-content:flex-end;margin-top:clamp(18px,2.5vw,32px);}
.next-card{display:inline-flex;flex-direction:column;gap:3px;background:var(--rot);color:#fff;padding:16px 22px;border-radius:14px;box-shadow:0 18px 44px rgba(0,0,0,0.35);transition:transform .3s var(--ease);}
.next-card:hover{transform:translateY(-3px);}
.next-card .lbl{font-family:var(--mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.85);}
.next-card strong{font-size:16px;font-weight:600;}
.next-card .tage{font-family:var(--mono);font-size:12px;color:rgba(255,255,255,0.85);font-variant-numeric:tabular-nums;}

/* ---------- About: Cinematic ---------- */
.ueber-cine{max-width:1440px;margin:0 auto;padding:clamp(36px,5vw,72px) var(--pad) 0;}
.ueber-media.cine{position:relative;aspect-ratio:21/9;max-width:none;width:100%;border-radius:18px;overflow:hidden;cursor:pointer;background:var(--footage);box-shadow:0 30px 80px rgba(0,0,0,0.3);transform:none;margin:0;order:0;height:auto;}
.ueber-media.cine img{position:absolute;left:0;right:0;top:-8%;bottom:auto;width:100%;height:116%;object-fit:cover;will-change:transform;}
.cine-grad{position:absolute;left:0;right:0;bottom:0;height:70%;background:linear-gradient(to top,rgba(5,5,5,0.7),transparent);pointer-events:none;z-index:1;}
.cine-title{position:absolute;left:clamp(18px,3vw,44px);bottom:clamp(14px,2.5vw,34px);z-index:2;font-family:var(--display);font-weight:400;font-size:clamp(34px,5vw,80px);line-height:1;letter-spacing:0.02em;color:#fff;margin:0;}
.ueber-media.cine .cap{left:auto;right:18px;bottom:16px;z-index:2;}
.ueber-cols{max-width:1440px;margin:0 auto;padding:clamp(26px,3.5vw,52px) var(--pad) 0;}
.ueber-cols .cols{column-count:2;column-gap:clamp(32px,4vw,64px);max-width:1080px;}
.ueber-cols .cols p{break-inside:avoid;margin-bottom:14px;color:rgba(255,255,255,0.9);font-size:16px;}
@media (max-width:860px){
  .hero-foot{justify-content:flex-start;}
  .next-card{width:100%;}
  .ueber-media.cine{aspect-ratio:4/5;}
  .cine-title{font-size:clamp(30px,9vw,44px);}
  .ueber-cols .cols{column-count:1;}
}

/* ---------- Mobile-Fix: Startlisten-Zeilen ---------- */
@media (max-width:860px){
  .row{grid-template-columns:minmax(72px,auto) 1fr auto;grid-template-rows:auto auto;column-gap:10px;row-gap:1px;padding:12px 4px;}
  .row .datum{grid-column:1;grid-row:1;}
  .row .ort{grid-column:2;grid-row:1;font-size:14px;line-height:1.35;}
  .row .disziplin{grid-column:2;grid-row:2;font-size:12.5px;}
  .row .ergebnis{grid-column:3;grid-row:1 / span 2;align-self:center;text-align:right;padding:0;}
  .row .ergebnis .tage{font-size:11px;white-space:nowrap;}
  .hero-media{height:66vh;min-height:340px;}
}

/* ---------- Versteckte Effekte ---------- */
.nav{transition:transform .35s var(--ease),background .3s;}
.nav.nav-hidden{transform:translateY(-100%);}
body.admin-bar .nav.nav-hidden{transform:translateY(calc(-100% - 32px));}

@keyframes kuUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
.startliste.in .row{animation:kuUp .5s var(--ease) backwards;}
.startliste.in .row:nth-child(1){animation-delay:.04s;}
.startliste.in .row:nth-child(2){animation-delay:.11s;}
.startliste.in .row:nth-child(3){animation-delay:.18s;}
.startliste.in .row:nth-child(4){animation-delay:.25s;}
.startliste.in .row:nth-child(5){animation-delay:.32s;}
.startliste.in .row:nth-child(6){animation-delay:.39s;}
.news-list.in .news-item{animation:kuUp .5s var(--ease) backwards;}
.news-list.in .news-item:nth-child(1){animation-delay:.05s;}
.news-list.in .news-item:nth-child(2){animation-delay:.13s;}
.news-list.in .news-item:nth-child(3){animation-delay:.21s;}
.jahr-row.in li{animation:kuUp .45s var(--ease) backwards;}
.jahr-row.in li:nth-child(1){animation-delay:.05s;}
.jahr-row.in li:nth-child(2){animation-delay:.12s;}
.jahr-row.in li:nth-child(3){animation-delay:.19s;}
.jahr-row.in li:nth-child(4){animation-delay:.26s;}
.jahr-row.in li:nth-child(5){animation-delay:.33s;}
.galerie .g.rv{transform:translateY(24px) scale(0.97);}
.galerie .g.rv.in{transform:none;}
