/* ASTON KARTING — Identité Visuelle 2026
   Responsive brand layer. Complements style.css without touching championship data. */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,400;0,600;0,700;0,800;0,900;1,700;1,800;1,900&family=DM+Sans:wght@400;500;600;700;800&display=swap');

:root{
  --bg:#111112;--bg2:#191819;--bg3:#242022;
  --red:#ff252a;--redHover:#e51b25;--pink:#ff265d;
  --burgundy:#390609;--cream:#f8f5f5;--muted:#aaa5a7;
  --line:#3a3134;--ink:#141214;--line-light:#ded8d9;
  --font:'DM Sans',Arial,sans-serif;
  --head:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
}
html{scroll-padding-top:90px}
body{background:var(--bg);color:var(--cream);overflow-x:clip}
img,svg{max-width:100%}
.container{width:min(1360px,calc(100% - clamp(32px,7.5vw,112px)));margin-inline:auto}
:focus-visible{outline-color:var(--pink)!important}
::selection{background:var(--pink);color:#fff}

/* Core brand typography and forms */
.eyebrow{color:#f3eeef;letter-spacing:.18em}
.eyebrow.red{color:var(--pink)}
.eyebrow .bar{background:var(--pink);width:28px;height:4px;transform:skew(-25deg)}
.section-head h2,.section-head h1,.intro-oversized,.standings-split h2,.inner-hero h1,.schedule-entry .schedule-name,.event-faq h2,.cta-section h2{
  font-weight:900;font-style:italic;letter-spacing:-.015em
}
.section-head h2{font-size:clamp(52px,6.3vw,101px);line-height:.91}
.btn{min-height:52px;padding-inline:30px;letter-spacing:.11em;gap:16px;font-size:11px;line-height:1.25;transition:background .2s,transform .2s,border-color .2s}
.btn-primary,.btn-dark{clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%)}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--pink)}
.btn-dark{background:var(--ink);color:#fff}
.btn-outline{border-color:#797176}
.btn-outline:hover{background:var(--pink);border-color:var(--pink)}
.arrow-link{color:inherit}
.arrow-link:hover{color:var(--pink)}

/* Navigation */
.site-header{position:sticky;top:0;background:#111112f2;border-bottom:1px solid #ffffff20;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.nav-shell{height:84px}
.brand img{width:210px;height:auto}
.nav-link.active::after{background:var(--pink);bottom:-32px}
.instagram-btn{border:1px solid #ffffff42}
.instagram-btn:hover{background:var(--pink);border-color:var(--pink)}
.menu-toggle{border-color:#ffffff4d;min-width:48px;min-height:45px}
.mobile-nav{padding-block:12px 25px}
.mobile-nav a{padding:14px 2px;font-weight:800;min-height:49px;display:flex;align-items:center}
.mobile-nav a.active{color:var(--pink)}

/* Primary brand composition — strong type and racing diagonals */
.home-hero{
 background:radial-gradient(ellipse at 74% 45%,#4d0915 0%,#20090e 25%,#121113 62%,#101011 93%);
 min-height:730px;isolation:isolate
}
.home-hero::before{background-image:repeating-linear-gradient(116deg,transparent 0 62px,#ffffff06 63px 64px,transparent 65px 108px);background-size:auto;mask-image:linear-gradient(90deg,transparent 24%,#000)}
.home-hero::after{content:'';position:absolute;right:-125px;top:-80px;width:min(39vw,565px);height:114%;transform:skew(-22deg);border-inline:42px solid #ff265b0f;pointer-events:none;z-index:-1}
.hero-layout{min-height:730px;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr)}
.hero-copy{padding-block:70px 86px}
.hero-title{font-size:clamp(92px,9vw,169px);font-weight:900;font-style:italic;line-height:.78;letter-spacing:-.038em;margin:37px 0 12px}
.hero-title .outlined{-webkit-text-stroke:1.6px #f8f5f5}
.hero-title .accent{color:var(--pink)}
.hero-sub{color:#d0c7ca;max-width:505px;font-size:clamp(14px,1.2vw,17px);line-height:1.75;margin:21px 0 28px}
.rush-label{display:inline-flex;align-items:center;gap:11px;background:var(--red);color:#fff;clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%);padding:7px 24px;font-family:var(--head);font-size:22px;font-weight:900;font-style:italic;letter-spacing:.04em;line-height:1}
.rush-label::before{content:'';width:15px;height:15px;background:#181011;transform:skew(-22deg)}
.hero-bottom{gap:clamp(18px,3vw,44px);margin-top:42px;flex-wrap:wrap}
.mini-data{font-size:clamp(30px,3vw,40px)}
.mini-data small{font-family:var(--font);color:#b4a8ad;font-size:9px}
.hero-art::before{background:radial-gradient(circle,#ff255d28,transparent 65%);width:100%;height:88%;left:0;top:5%}
.hero-art::after{content:'';position:absolute;left:1%;top:22%;width:22px;height:45%;background:linear-gradient(var(--pink),#ff252a26);transform:skew(-25deg);filter:blur(1px);opacity:.45}
.hero-art .circuit{top:4%;left:-12%;width:122%;height:86%;filter:drop-shadow(0 16px 48px #0009) saturate(1.5)}
.hero-art .giant-number{font-size:clamp(260px,28vw,480px);top:-70px;right:-3%;color:#ffffff08;font-style:italic}
.visual-tag{color:#fff;font-weight:800}
.next-race-tile{bottom:61px;right:0;width:min(285px,100%);background:linear-gradient(130deg,#ff252a,#9c0b1c 70%,#350407);color:#fff;border-top:5px solid var(--pink);padding:22px 24px;box-shadow:0 15px 45px #000b}
.next-race-tile .next-pre,.next-race-tile .next-date,.next-race-tile .next-bottom b{color:#fff}
.next-race-tile strong{font-style:italic;font-size:44px;margin:12px 0}
.next-race-tile .next-bottom{border-color:#ffffff48}
.ticker{background:var(--red);border:0;color:#fff}
.ticker-inside{font-size:17px;font-style:italic;letter-spacing:.08em;padding-block:10px}
.ticker-inside span:before{content:'◆';font-size:12px;color:#350407}

/* Who we are */
.intro-section{background:linear-gradient(155deg,#171516 0%,#111112 60%,#27070c 100%);color:#f8f5f5;border-bottom:1px solid #ffffff14}
.intro-layout{gap:clamp(40px,7vw,125px)}
.intro-oversized{font-size:clamp(75px,8.5vw,144px);line-height:.81}
.intro-oversized .light{color:#9f303e}
.intro-copy .lead{color:#fff;font-size:clamp(20px,2vw,27px)}
.intro-copy p:not(.lead){color:#b9b1b4}
.pillar{border-color:#ffffff27}
.pillar .number{color:var(--pink);font-style:italic;font-size:27px}
.pillar strong{color:#f7f2f2}

/* Racing calendar cards */
.events-section{background:#0e0e0f;padding-block:clamp(65px,8vw,116px)}
.events-grid{gap:16px}
.event-card{background:linear-gradient(150deg,#23171b 0%,#151417 70%,#111112);border:1px solid #483539;min-width:0;min-height:393px}
.event-card::before{content:'';position:absolute;right:-45px;top:90px;width:85px;height:240px;background:linear-gradient(#ff265d33,transparent);transform:skew(-21deg);pointer-events:none}
.event-card:hover{border-color:var(--pink)}
.event-card.featured{background:linear-gradient(150deg,#ff2a2e 0%,#ae0a1e 60%,#360607);border-color:#ff3b4f}
.event-card .event-date .day{font-size:clamp(90px,8vw,128px);font-style:italic}
.event-card .event-location{font-style:italic;font-size:clamp(43px,4vw,65px);letter-spacing:-.02em}
.event-card .event-description{color:#c6b7bd}
.event-card.featured .event-description{color:#ffe0e5}
.event-card .event-status{border-color:#6e535c;color:#dfd1d3}
.event-card .event-top{flex-wrap:wrap;row-gap:8px}
.event-card .event-bottom{color:#fff}

/* Standings glimpse uses official light variant of identity system */
.standings-teaser{background:#f8f5f5;color:var(--ink);padding-block:clamp(75px,9vw,135px)}
.standings-split{gap:clamp(40px,7vw,100px)}
.standings-split h2{font-size:clamp(86px,8.6vw,141px);line-height:.79}
.standings-split h2 span{color:var(--red)}
.standings-split p{color:#665c61}
.teaser-table{border-color:#e2d9dc;box-shadow:16px 17px 0 #ff253034}
.teaser-table .table-head{background:#181617;color:#fff}
.teaser-row .rank{font-style:italic}
.teaser-row:first-of-type .rank{color:var(--pink)}
.teaser-note{color:#877b80}

/* Partners, CTA and footer */
.sponsor-section{background:#181617;color:#f9f6f7;border-color:#44353a;padding-block:57px 65px}
.sponsor-head{color:#b9adb1}
.sponsor-logo{background:#211e20;color:#fff;border-color:#4b393d;min-width:0}
.sponsor-logo:hover{border-color:var(--pink)}
.sponsor-logo small{color:#bdb0b6}
.sponsor-logo .wordmark span{color:var(--pink)}
.cta-section{background:linear-gradient(108deg,#f9235f 0%,#ff272b 49%,#a5091b 100%);color:#fff;padding-block:clamp(65px,7.6vw,115px)}
.cta-section::before{content:'ASTON';color:#ffffff11;top:-9%;right:-1%;font-style:italic;font-size:clamp(245px,36vw,610px)}
.cta-section h2{font-size:clamp(65px,8vw,122px);line-height:.82;color:#fff}
.cta-section p{color:#ffedf0;max-width:570px;font-size:15px}
.cta-section .btn-dark{background:#171315;color:#fff}
.cta-section .eyebrow{color:#fff}
.cta-section .eyebrow .bar{background:#fff!important}
.site-footer{background:#101011;border-top:1px solid #ffffff1a}
.footer-main img{width:205px}
.footer-main p{color:#a79a9f}
.footer-bottom{color:#9a8a8f}
.footer-col a:hover{color:var(--pink)}

/* Internal mastheads */
.inner-hero{padding-block:clamp(75px,8vw,125px);background:radial-gradient(ellipse at 85% 50%,#4b0915,#1e1114 45%,#101011 80%);border-bottom:1px solid #ffffff21}
.inner-hero::before{content:'';position:absolute;right:12%;top:0;width:16%;height:100%;transform:skew(-22deg);background:linear-gradient(90deg,#ff265d14,transparent);pointer-events:none}
.inner-hero::after{color:#ffffff08;font-style:italic}
.inner-hero h1{font-size:clamp(78px,11vw,171px);line-height:.79;overflow-wrap:anywhere;max-width:100%}
.inner-hero h1 span{color:var(--pink)}
.inner-hero p{color:#c9bec2}
.inner-badges span::before{background:var(--pink)}
.crumb strong{color:#fff}

/* Championship */
.champ-body{background:linear-gradient(180deg,#171516,#111112);color:#fff}
.podium-section{padding-block:clamp(66px,7vw,105px)}
.podium-head h2{color:#fff}
.podium-head p{color:#bab0b4}
.podium-grid{gap:15px;min-width:0}
.podium-card{min-width:0;background:#241f22;border-color:#4a383f;color:#fff}
.podium-card::before{color:#ffffff09;font-style:italic}
.podium-card.champion{background:linear-gradient(143deg,#ff265d 0%,#ff252a 44%,#580710 100%);color:#fff}
.podium-card.champion::after{background:#fff}
.podium-card .badge-pos{color:#d8c6cd}
.podium-card.champion .badge-pos{color:#fff}
.podium-card .podium-name{font-style:italic;overflow-wrap:anywhere}
.podium-card .podium-points small,.podium-card.champion .podium-points small{color:#f0dbe1}
.podium-card .podium-line{background:#645056}
.podium-card .podium-line span{background:var(--pink)}
.podium-card.champion .podium-line{background:#ffffff60}
.podium-card.champion .podium-line span{background:#fff}
.results-section{padding-bottom:clamp(78px,9vw,130px)}
.results-panel{border-color:#3d3136;background:#f8f6f6;color:var(--ink);min-width:0}
.results-toolbar{background:#201a1d;color:#fff;border-color:#4e353f}
.toolbar-title{font-style:italic;font-size:clamp(31px,3.3vw,43px)}
.toolbar-sub{color:#c0abb1}
.chip{background:#272024;color:#dacdd2;border-color:#5b464d;min-height:39px}
.chip.active,.chip:hover{background:var(--pink);border-color:var(--pink);color:#fff}
.search-input{border-color:#68515a;color:#c8b7bc;background:#181316}
.search-input input{color:#fff}
.search-input input::placeholder{color:#c7b6bd}
.details-toggle{background:#272024;border-color:#68515a;color:#fff}
.details-toggle:hover{border-color:var(--pink);color:#fff}
.ranking-table{color:var(--ink)}
.ranking-table thead th{background:#e9e2e4;color:#6c535d}
.ranking-table tbody tr{border-color:#e4dade}
.ranking-table tbody tr:hover{background:#ffe8ed}
.ranking-table tr.top3 .rank-number{color:var(--pink)}
.ranking-table .points-cell{color:#2a141b}
.table-footer{background:#f2edef;border-color:#e4dade;color:#61565b}
.table-footer strong{color:#24191e}
.empty-state{color:#73666c}

/* Events list and FAQ */
.events-page-body{background:#111112;color:#fff}
.schedule-section{padding-block:clamp(70px,8vw,110px)}
.schedule-list{border-color:#4a343c}
.schedule-entry{grid-template-columns:minmax(46px,.23fr) minmax(160px,.9fr) minmax(185px,1fr) auto;gap:clamp(14px,3vw,38px);border-color:#403139;padding:32px clamp(14px,2vw,28px)}
.schedule-entry.highlight{background:linear-gradient(100deg,#ff252a,#9a0618 75%,#3d060b);margin-inline:0;padding-inline:clamp(14px,2vw,28px)}
.schedule-entry .schedule-number{color:#78636b;font-style:italic}
.schedule-entry.highlight .schedule-number{color:#ffe9ec}
.schedule-entry .schedule-date strong{color:#fff;font-style:italic;font-size:clamp(40px,5vw,63px)}
.schedule-entry .schedule-date small{color:var(--pink)}
.schedule-entry.highlight .schedule-date small{color:#ffe0e8}
.schedule-entry .schedule-name{color:#fff;font-size:clamp(37px,4vw,58px);margin:0}
.schedule-entry .schedule-desc{color:#c3b2b9}
.schedule-entry.highlight .schedule-desc{color:#ffeff1}
.schedule-entry .schedule-cta .btn{min-width:119px}
.schedule-entry .btn-light-outline{border-color:#9f8790;color:#fff}
.schedule-entry .btn-light-outline:hover{background:var(--pink);border-color:var(--pink)}
.event-faq{background:#1c181a;border-top:1px solid #49343b}
.faq-grid h2{font-size:clamp(76px,8vw,119px)}
.faq-items details{border-color:#564047}
.faq-items summary:after{color:var(--pink)}
.faq-items p{color:#c4b9bd}
.faq-items a{color:var(--pink)!important}

/* Responsiveness: desktops through tablets */
@media(min-width:1900px){
  .hero-title{font-size:172px}
  .hero-layout{min-height:810px}
  .home-hero{min-height:810px}
}
@media(max-width:1150px){
  .hero-title{font-size:clamp(80px,9.4vw,121px)}
  .intro-layout,.standings-split{gap:48px}
  .event-card .event-top{padding-inline:20px}
  .event-card .event-date{padding-inline:20px}
  .event-card .event-location{margin-inline:20px}
  .event-card .event-description{padding-inline:20px}
  .event-card .event-bottom{padding-inline:20px}
  .schedule-entry{grid-template-columns:48px minmax(135px,.8fr) minmax(145px,1fr) auto}
}
@media(max-width:920px){
  .container{width:calc(100% - 48px)}
  .desktop-nav,.instagram-btn{display:none}
  .menu-toggle{display:flex}
  .nav-shell{height:76px}
  .brand img{width:186px}
  .nav-link.active::after{bottom:-27px}
  .home-hero,.hero-layout{min-height:0}
  .hero-layout{grid-template-columns:1fr}
  .hero-copy{padding:85px 0 350px}
  .hero-title{font-size:clamp(91px,13vw,154px)}
  .hero-sub{max-width:560px}
  .hero-art{position:absolute;inset:auto 0 0 auto;width:min(100%,720px);height:360px;opacity:.85}
  .hero-art .circuit{width:640px;height:455px;max-width:none;left:auto;right:-80px;top:-90px}
  .hero-art .giant-number{font-size:320px;top:-58px}
  .next-race-tile{right:0;bottom:25px;width:250px}
  .events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .events-grid .event-card:last-child{grid-column:1 / -1;min-height:305px}
  .intro-layout,.standings-split,.faq-grid{grid-template-columns:1fr;gap:33px}
  .intro-copy{padding-top:0}
  .intro-oversized{font-size:clamp(93px,12vw,148px)}
  .standings-split h2{font-size:clamp(83px,13vw,130px)}
  .podium-grid{gap:10px}
  .podium-card{padding:23px}
  .podium-card.champion{padding:24px}
  .podium-card .podium-name{font-size:clamp(31px,4vw,43px)}
  .schedule-entry{grid-template-columns:60px minmax(0,.9fr) minmax(0,1.1fr);gap:18px}
  .schedule-entry .schedule-cta{grid-column:2 / 4;justify-content:flex-start}
  .cta-shell{flex-direction:column;align-items:flex-start}
  .cta-section h2{font-size:clamp(69px,11vw,113px)}
}
@media(max-width:640px){
  html{scroll-padding-top:73px}
  .container{width:calc(100% - 34px)}
  .nav-shell{height:67px}
  .brand img{width:170px}
  .menu-toggle{width:44px;height:43px}
  .home-hero::after{opacity:.45}
  .hero-copy{padding:58px 0 325px}
  .hero-title{font-size:clamp(77px,15vw,106px);margin:25px 0 14px;letter-spacing:-.05em}
  .hero-title .outlined{-webkit-text-stroke:1px #fff}
  .rush-label{font-size:19px;padding-block:6px}
  .hero-sub{font-size:14px;line-height:1.72;margin-block:18px 24px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .hero-actions .btn{justify-content:space-between;min-width:0;width:100%}
  .hero-bottom{margin-top:27px;gap:15px 25px}
  .mini-data{font-size:30px}
  .mini-data small{font-size:8px;letter-spacing:.09em}
  .hero-art{height:316px;width:100%}
  .hero-art .circuit{right:-129px;top:-125px;width:525px;height:425px}
  .hero-art .giant-number{font-size:275px;top:6px}
  .next-race-tile{right:0;bottom:20px;width:195px;padding:14px 16px;border-top-width:3px}
  .next-race-tile strong{font-size:32px;margin-block:8px}
  .next-race-tile .next-date,.next-race-tile .next-pre,.next-race-tile .next-bottom{font-size:9px}
  .next-race-tile .next-bottom{margin-top:9px;padding-top:8px}
  .ticker-inside{font-size:14px;gap:24px}
  .ticker-inside span:before{padding-right:24px}
  .intro-section,.events-section,.standings-teaser,.podium-section,.schedule-section{padding-block:69px}
  .section-head{gap:17px;margin-bottom:30px;align-items:flex-start}
  .section-head h2{font-size:clamp(52px,12vw,78px)}
  .intro-oversized{font-size:clamp(79px,16vw,105px)}
  .intro-copy .lead{font-size:20px}
  .intro-copy p:not(.lead){font-size:14px;line-height:1.8}
  .events-grid{grid-template-columns:1fr}
  .events-grid .event-card:last-child{grid-column:auto}
  .event-card,.events-grid .event-card:last-child{min-height:335px}
  .event-card .event-date .day{font-size:100px}
  .event-card .event-location{font-size:clamp(43px,12vw,63px)}
  .standings-split h2{font-size:clamp(82px,16.7vw,112px)}
  .teaser-table{box-shadow:8px 9px 0 #ff25302b;min-width:0}
  .teaser-row{grid-template-columns:34px minmax(0,1fr) 60px;gap:10px;padding:15px 13px}
  .teaser-row .driver{font-size:12px;overflow-wrap:anywhere}
  .teaser-row .score{font-size:25px}
  .teaser-table .table-head{padding:17px 14px;font-size:10px;letter-spacing:.04em}
  .sponsor-logos{grid-template-columns:1fr;gap:10px}
  .sponsor-logo{min-height:80px}
  .sponsor-section{padding-block:45px}
  .cta-section h2{font-size:clamp(60px,13vw,90px)}
  .cta-section .btn{max-width:100%;white-space:normal}
  .footer-main,.footer-bottom{flex-direction:column}
  .footer-nav{gap:clamp(20px,9vw,65px);flex-wrap:wrap}
  .footer-main{gap:27px}
  .footer-bottom{gap:8px;margin-top:36px}
  .inner-hero{padding:63px 0 69px}
  .inner-hero h1{font-size:clamp(45px,12vw,76px);line-height:.82;letter-spacing:-.035em;margin:18px 0 24px}
  .inner-hero:after{font-size:220px;right:-9px;bottom:-42px}
  .inner-hero p{font-size:14px;line-height:1.7}
  .inner-badges{gap:10px 16px;margin-top:30px;font-size:10px}
  .crumb{margin-bottom:25px}
  .podium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .podium-card.champion{grid-column:1 / -1;grid-row:1;min-height:220px}
  .podium-card{min-height:216px;padding:17px}
  .podium-card .podium-name{font-size:clamp(27px,7.8vw,39px)}
  .podium-card.champion .podium-name{font-size:clamp(40px,11vw,57px)}
  .podium-card .podium-points{font-size:clamp(43px,11vw,62px)}
  .podium-card .badge-pos{font-size:9px;letter-spacing:.08em}
  .results-section{padding:24px 0 74px}
  .results-toolbar{flex-direction:column;align-items:stretch;padding:18px 16px;gap:15px}
  .filters{gap:6px}
  .chip{padding:9px 10px;font-size:10px}
  .toolbar-actions{flex-direction:column;align-items:stretch;gap:8px}
  .search-input{width:100%;min-width:0}
  .details-toggle{justify-content:center}
  /* Native mobile driver cards: no horizontal scrolling needed. */
  .table-wrap{overflow:visible}
  .ranking-table,.ranking-table tbody{display:block;width:100%;white-space:normal}
  .ranking-table thead{display:none}
  .ranking-table tbody{padding:10px}
  .ranking-table tbody tr{
    display:grid;grid-template-columns:43px minmax(0,1fr) minmax(65px,auto);
    align-items:center;column-gap:8px;row-gap:5px;
    padding:14px 12px;margin-bottom:8px;
    border:1px solid #eadfe2;background:#fff;
  }
  .ranking-table tbody tr.top3{border-left:4px solid var(--pink)}
  .ranking-table tbody tr:hover{background:#fff0f3}
  .ranking-table tbody td{padding:0;min-width:0;font-size:12px}
  .ranking-table tbody td:nth-child(1){grid-column:1;grid-row:1}
  .ranking-table tbody td:nth-child(2){grid-column:2;grid-row:1;min-width:0;font-size:13px;overflow-wrap:anywhere}
  .ranking-table tbody td:nth-child(3){grid-column:2 / 4;grid-row:2;text-align:left;color:#8a727a;font-size:10px}
  .ranking-table tbody td:nth-child(3)::before{content:'FASTEST LAPS  ';font-weight:800;letter-spacing:.04em;color:#7d6b73}
  .ranking-table tbody td:last-child{grid-column:3;grid-row:1;text-align:right;font-size:28px}
  .ranking-table tbody td:last-child::after{content:' PTS';font:800 8px var(--font);color:#8b747d;letter-spacing:.04em}
  .ranking-table .rank-number{font-size:26px}
  .ranking-table .driver-cell .driver-sub{font-size:10px}
  .ranking-table .race-cell.extra-col{display:none}
  .ranking-table.show-details .race-cell.extra-col{
    display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;
    min-height:28px;padding:4px 2px;border-top:1px solid #f0e6e9;text-align:right
  }
  .ranking-table.show-details .race-cell.extra-col::before{content:attr(data-label);color:#8c6f79;font:800 10px var(--font);letter-spacing:.08em}
  .table-footer{flex-direction:column;gap:9px;padding:16px;font-size:10px}
  .schedule-entry,.schedule-entry.highlight{grid-template-columns:42px minmax(0,1fr);padding:23px 9px;gap:8px 12px}
  .schedule-entry .schedule-number{grid-column:1;grid-row:1 / 4;align-self:start;font-size:35px}
  .schedule-entry .schedule-date{grid-column:2;grid-row:1}
  .schedule-entry .schedule-date strong{font-size:clamp(39px,10vw,60px);white-space:normal}
  .schedule-entry .schedule-name{font-size:clamp(40px,10vw,59px)}
  .schedule-entry > div:nth-child(3){grid-column:2;grid-row:2}
  .schedule-entry .schedule-desc{font-size:12px}
  .schedule-entry .schedule-cta{grid-column:2;grid-row:3}
  .schedule-entry .schedule-cta .btn{min-width:0;min-height:44px}
  .event-faq{padding-block:70px}
  .faq-grid h2{font-size:clamp(78px,15vw,105px)}
  .faq-items summary{font-size:13px}
}
@media(max-width:370px){
  .hero-title{font-size:clamp(70px,14.3vw,80px)}
  .mini-data{font-size:28px}
  .mini-data small{font-size:7px}
  .event-date .day{font-size:88px!important}
  .event-card .event-top{padding-inline:15px}
  .event-card .event-date{padding-inline:15px}
  .event-card .event-location{margin-inline:15px}
  .event-card .event-description,.event-card .event-bottom{padding-inline:15px}
  .standings-split h2{font-size:76px}
  .inner-hero h1{font-size:11.4vw}
  .ranking-table tbody tr{grid-template-columns:36px minmax(0,1fr) minmax(56px,auto);padding-inline:9px}
  .ranking-table tbody td:last-child{font-size:25px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Final small-device intrinsic-size safeguards: long racing headlines stay fully visible. */
@media(max-width:640px){
  .hero-layout,.hero-copy,.hero-title,.intro-layout,.intro-layout>*,.faq-grid,.faq-grid>*,.section-head,.section-head>*{min-width:0}
  .hero-title{font-size:clamp(52px,17vw,104px)}
  .intro-oversized{font-size:clamp(56px,17.5vw,105px)}
  .section-head h2{font-size:clamp(42px,11.5vw,75px);overflow-wrap:anywhere}
  .faq-grid h2{font-size:clamp(40px,12.6vw,79px);overflow-wrap:anywhere}
  .podium-card:not(.champion) .podium-name{font-size:clamp(22px,6.7vw,34px)}
}
@media(max-width:640px){
  .standings-split,.standings-split>*{min-width:0}
  .standings-split h2{font-size:clamp(68px,19vw,112px)}
  .teaser-table{min-width:0;width:100%}
}
