﻿/* ARENA / index: cinematic event front door. All data comes from the shared renderer. */
/* The scale the V2 concept was drawn at. v2.css is now the FOUNDATION every page
   builds on — framed cards, a heading scale a form can carry, labels on fields
   only — and these are the showcase values it used to impose on all of them:
   full-bleed width, 132px and 70px titles, cards dissolved into the page, 11px
   labels. Scoped to this page, at a specificity that keeps it exactly as it was.
   The light-theme card rule keeps its old weight on purpose: it outranked
   .contact-card's background before, and still must. */
.v2-index main.wrap{max-width:none;margin:0;padding:0 4vw 60px}
.v2-index h1{font-size:clamp(64px,8vw,132px)}
.v2-index h2{font-size:clamp(38px,4.7vw,70px);margin:0 0 24px}
.v2-index .card{border:0;border-radius:0;box-shadow:none;background:transparent;padding:0;margin:0}
:root[data-theme="light"] .v2-index .card{background:transparent;box-shadow:none}
.v2-index label,.v2-index .field > label{font-size:11px;font-weight:800}
@media(max-width:600px){.v2-index main.wrap{padding:0 20px 35px}.v2-index h1{font-size:64px}.v2-index h2{font-size:44px}}
.v2-index .v2-arena{position:relative;isolation:isolate;background:#090b10;color:#f4f5f7;margin:0 -4vw;overflow:hidden;--v2-line:#ffffff24;--v2-muted:#c5cbd2}
.v2-index .v2-image-stage{position:absolute;z-index:-2;inset:0;overflow:hidden;background:#17212a}
.v2-index .v2-image-stage img{width:100%;height:100%;object-fit:cover;object-position:60% 43%;transform:scale(1.045)}
.v2-index .v2-image-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#070a10ed 0%,#090c12a3 42%,#090c1210 82%),linear-gradient(0deg,#090b10 0%,transparent 46%,#090b1030)}
.v2-index .v2-arena-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:96px 96px;opacity:.45}
.v2-index .v2-intro{padding:54px 6vw 48px;min-height:clamp(360px,50vh,520px);display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;max-width:1020px}
.v2-index .v2-title .v2-kicker{color:#e1e6eb;display:flex;align-items:center;gap:12px;letter-spacing:.2em;margin-bottom:20px;font-size:11px}
.v2-index .v2-title .v2-kicker:before{content:'';width:26px;height:5px;background:var(--v2-brand);transform:skewX(-24deg)}
.v2-index .v2-title h1{font-size:clamp(58px,6.6vw,108px);font-style:italic;line-height:.88;letter-spacing:-.035em;max-width:820px;text-wrap:balance;text-shadow:0 5px 44px #0003}
.v2-index .v2-intro-aside{max-width:570px;margin-top:20px}.v2-index .v2-intro-aside p{font-size:14px;line-height:1.85;color:#cbd2dc;max-width:470px;margin:0 0 20px}
.v2-index .v2-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.v2-index .v2-hero-actions .btn{color:#fff;border-color:#ffffff50;background:#ffffff08;backdrop-filter:blur(10px);min-height:56px;font-size:12px;padding:15px 24px}.v2-index .v2-hero-actions .btn-primary{background:var(--v2-brand);border-color:var(--v2-brand);color:#fff;box-shadow:0 7px 35px color-mix(in srgb,var(--v2-brand) 15%,transparent)}.v2-index .v2-hero-actions .btn-primary:before{content:'\2197';font-size:22px}.v2-index .v2-hero-actions .btn:hover{background:#ffffff20}.v2-index .v2-hero-actions .btn-primary:hover{background:#e93b19}
.v2-arena-corner{position:absolute;right:6vw;top:46%;display:flex;gap:9px;transform:skewX(-25deg)}.v2-arena-corner i{display:block;width:8px;height:70px;background:#fff3}.v2-arena-corner i:last-child{background:var(--v2-brand)}
.v2-index .v2-stat-strip{position:relative;margin:0 6vw;border-top:1px solid #ffffff40;background:#0b0e15b8;backdrop-filter:blur(20px);color:#fff}.v2-index .v2-stat-strip:before{content:'';position:absolute;top:-2px;left:0;width:64px;height:3px;background:var(--v2-brand)}.v2-index .v2-stat-strip .plat-stat{padding:20px 26px 22px;position:relative}.v2-index .v2-stat-strip .plat-stat:first-child{padding-left:0}.v2-index .v2-stat-strip .n{font-size:62px;font-style:italic}.v2-index .v2-stat-strip .k{font-size:10px;letter-spacing:.13em}.v2-index .v2-stat-strip .stat-sub{color:#b1bdc9;font-size:11px}.v2-index .v2-stat-strip .stat-sub strong{color:#fff}
.v2-index .v2-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:66px 0 80px}
.v2-index .v2-feature{position:relative;overflow:hidden;border:1px solid var(--v2-line);border-top:3px solid var(--v2-line);padding:32px;background:var(--v2-card);min-height:325px;transition:border-color .35s,transform .35s}.v2-index .v2-feature:hover{border-top-color:var(--v2-brand);transform:translateY(-5px)}
.v2-feature .v2-feature-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:72px;position:relative;z-index:1}.v2-feature .v2-feature-number{font-family:'V2 Display',sans-serif;font-size:34px;line-height:1;color:var(--v2-brand);font-style:italic}.v2-feature .pf-ico{width:36px;height:36px;background:none;border:0;color:var(--v2-ink);box-shadow:none;display:grid;place-items:center}.v2-feature .pf-ico svg{width:25px;height:25px}
.v2-index .v2-feature h2{position:relative;font-family:'V2 Display',sans-serif;font-size:35px;font-style:italic;text-transform:uppercase;line-height:1.03;letter-spacing:0;margin:0 0 16px;max-width:270px}.v2-feature p{position:relative;margin:0;max-width:350px;line-height:1.85;font-size:12px;color:var(--v2-muted)}
.v2-feature-art{position:absolute;right:-30px;top:40px;width:170px;height:170px;color:var(--v2-ink);opacity:.07;transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .7s}.v2-feature:hover .v2-feature-art{transform:rotate(-15deg) scale(1.12);opacity:.12}.v2-art-entry{transform:rotate(-15deg)}.v2-art-entry i{display:block;position:absolute;inset:12px;border:1px solid currentColor;transform:translate(-15px,-15px)}.v2-art-entry i:nth-child(2){inset:30px;transform:translate(0)}.v2-art-entry i:nth-child(3){inset:48px;transform:translate(15px,15px)}.v2-art-target i{position:absolute;border:1px solid currentColor;border-radius:50%;inset:0}.v2-art-target i:nth-child(2){inset:26px}.v2-art-target i:nth-child(3){inset:52px;background:var(--v2-brand)}.v2-art-world{border:1px solid currentColor;border-radius:50%}.v2-art-world i{position:absolute;inset:0 42px;border:1px solid currentColor;border-radius:50%}.v2-art-world i:nth-child(2){inset:42px 0}.v2-art-world i:nth-child(3){inset:80px 0;border-radius:0}
.v2-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px;padding-top:24px;border-top:1px solid var(--v2-line);position:relative}.v2-section-head:before{content:'';position:absolute;left:0;top:-2px;background:var(--v2-brand);width:54px;height:3px}.v2-section-head h2{margin:0;text-transform:uppercase;font-style:italic}.v2-section-head>.v2-kicker{color:var(--v2-muted)}
.v2-index #events{scroll-margin-top:110px}.v2-index .ev-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v2-index .ev-group{margin-bottom:42px}.v2-index .ev-group-head{display:flex;align-items:center;gap:14px;margin:0 0 16px}.v2-index .ev-group-head h3{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--v2-muted);margin:0}.v2-index .ev-group-head>.n{background:var(--v2-card);color:var(--v2-muted);font-size:10px}.v2-index .ev-group-head .rule{background:var(--v2-line)}.v2-index .see-all-link{font-size:11px;font-weight:800;color:var(--v2-ink);gap:12px;display:inline-flex;align-items:center;text-decoration:none}.v2-index .see-all-link svg{width:15px;height:15px}.v2-index .see-all-link .n{font-size:10px;background:var(--v2-line);border-radius:2px}
.v2-index .ev-card{display:grid;grid-template-columns:96px minmax(0,1fr) 34px;gap:22px;padding:30px 25px;background:var(--v2-card);border:1px solid var(--v2-line);border-radius:0;box-shadow:none;align-items:center;transition:border-color .25s,transform .35s,box-shadow .35s;position:relative;text-decoration:none;color:var(--v2-ink);min-height:175px;overflow:hidden}.v2-index .ev-card:before{content:'';position:absolute;left:0;top:0;width:3px;height:100%;background:var(--v2-brand);transform:scaleY(0);transform-origin:bottom;transition:transform .35s}.v2-index .ev-card:hover:before{transform:scaleY(1)}.v2-index .ev-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--v2-brand) 40%,transparent);box-shadow:0 16px 38px #00000013}.v2-index .ev-rail{display:none}.v2-index .ev-date{width:auto;background:transparent;color:var(--v2-ink);border:0;border-right:1px solid var(--v2-line);padding:0 14px 0 0;min-width:0;align-items:flex-start;text-align:left;box-shadow:none}.v2-index .ev-date .d{font-family:'V2 Display';font-size:48px;font-style:italic;line-height:.95;font-weight:600;white-space:nowrap}.v2-index .ev-date.range .d{font-size:27px;letter-spacing:-.01em}.v2-index .ev-card.is-live .ev-date{background:transparent}.v2-index .ev-date .m{font-size:11px;letter-spacing:.08em;color:var(--v2-brand)}.v2-index .ev-date .y{font-size:10px;color:var(--v2-muted)}.v2-index .ev-main{padding:0;min-width:0}.v2-index .ev-head{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.v2-index .ev-title{font-family:'V2 Sans';font-size:20px;font-weight:800;letter-spacing:-.03em;line-height:1.25;color:var(--v2-ink)}.v2-index .ev-badges{margin:0;gap:5px;flex-wrap:wrap;display:flex}.v2-index .ev-sub{font-size:11px;margin-top:12px;color:var(--v2-muted)}.v2-index .ev-org{font-size:10px;color:var(--v2-muted);margin-top:4px}.v2-index .ev-go{background:transparent;border:1px solid var(--v2-line);border-radius:0;width:34px;height:40px;display:grid;place-items:center;color:var(--v2-ink);margin:0;transition:background .25s,color .25s}.v2-index .ev-go svg{width:15px}.v2-index .ev-card:hover .ev-go{background:var(--v2-brand);color:#fff;border-color:var(--v2-brand)}.v2-index .disc-chip{background:transparent;color:var(--v2-muted);font-size:9px;border-radius:0}
.v2-index #podiumCard{margin:70px 0;padding:40px;background:#10151e;color:#f4f5f7;--v2-ink:#f4f5f7;--v2-muted:#b2bdcb;--v2-line:#ffffff20;border-left:3px solid var(--v2-brand)}.v2-index #podiumCard .v2-section-head{border:0;padding:0}.v2-index #podiumCard .v2-section-head:before{display:none}.v2-index .podium-cols{gap:34px 56px}.v2-index .podium-col{padding:0;min-width:0}.v2-index .podium-col h3{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.v2-index .top-scope{font-size:10px}
/* Which board these three names won. On the dark podium card it inherited
   theme.css's LIGHT chip background together with index-v2's muted ink —
   pale grey on pale grey, at about 1.4:1. It is the only thing telling a
   visitor the scope of the result, so it is drawn as an accent chip. */
.v2-index #podiumCard .top-scope{padding:5px 11px;border-radius:2px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb,var(--v2-brand) 15%,transparent);border:1px solid color-mix(in srgb,var(--v2-brand) 39%,transparent);color:color-mix(in srgb,var(--v2-brand) 62%,#fff)}
/* theme.css draws the hairline between the two boards WITH a 28px
   padding-left; `.podium-col{padding:0}` above dropped the padding and kept
   the rule, so the team column's rank marks sat on the line. Both sides of
   the divider get the same air, and only while both boards are side by side. */
@media(min-width:901px){.v2-index #podiumCard .podium-col+.podium-col{padding-left:56px}}
.v2-index .contact-card{scroll-margin-top:110px;margin:80px 0 0;padding:0;background:var(--v2-card);border:1px solid var(--v2-line)}.v2-index .contact-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:0}.v2-index .contact-aside{position:relative;isolation:isolate;overflow:hidden;padding:48px 38px;background:#10151e;border:0;color:#f4f5f7}.v2-index .contact-aside:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#0b1018b8,#0b1018f5),url('/assets/img/v2-flight.jpg') center/cover;opacity:.85}.v2-index .contact-aside .plat-eyebrow{font-size:10px;letter-spacing:.15em;color:#d1dae5;text-transform:uppercase;display:block;margin-bottom:30px}.v2-index .contact-aside .dot{display:inline-block;width:7px;height:7px;background:var(--v2-brand);margin-right:10px;border-radius:0}.v2-index .contact-aside h2{font-size:clamp(46px,4.8vw,74px);line-height:.98;max-width:440px;font-style:italic;text-transform:uppercase}.v2-index .contact-aside>p{font-size:12px;line-height:1.9;color:#b9c5d4;max-width:380px}.v2-index .contact-body{padding:42px;background:transparent}.v2-index .ct-steps{margin:40px 0 28px;padding:0;list-style:none}.v2-index .ct-steps li{display:flex;gap:18px;align-items:center;padding:18px 0;border-top:1px solid #ffffff25;font-size:12px}.v2-index .ct-steps .n{display:grid;place-items:center;background:none;border:1px solid color-mix(in srgb,var(--v2-brand) 50%,transparent);color:color-mix(in srgb,var(--v2-brand) 83%,#fff);border-radius:0;font-family:'V2 Display';font-size:20px;width:30px;height:32px;flex-shrink:0}.v2-index .ct-note{font-size:10px!important}.v2-index .seg{display:flex;flex-wrap:wrap;background:none;border:1px solid var(--v2-line);border-radius:0;padding:4px;gap:4px}.v2-index .seg button{min-height:50px;flex:1;padding:10px;font-size:10px;border:0;background:transparent;color:var(--v2-muted);border-radius:0;white-space:normal}.v2-index .seg button.active{background:var(--v2-brand);color:#fff;box-shadow:none}.v2-index #contactForm>.field{margin-bottom:28px}.v2-index .ct-foot{padding-top:26px}.v2-index #ctSubmit{width:100%;justify-content:space-between}.v2-index #ctSubmit:before{content:'\2197';font-size:24px;line-height:1}
@media(min-width:1800px){.v2-index .v2-intro{max-width:1250px;padding-top:70px;padding-bottom:64px;min-height:min(600px,56vh)}.v2-index .v2-title h1{font-size:124px;max-width:960px}}
@media(max-width:1050px){.v2-index .v2-intro{min-height:clamp(330px,46vh,470px);padding:48px 6vw}.v2-index .v2-title h1{font-size:84px;max-width:660px}.v2-index .v2-feature{padding:24px}.v2-index .v2-feature h2{font-size:30px}.v2-index .ev-card{gap:15px;padding:25px 20px;grid-template-columns:82px minmax(0,1fr) 30px}.v2-index .ev-title{font-size:18px}.v2-index .ev-go{width:30px}.v2-index .ev-date.range .d{font-size:23px}.v2-index .contact-aside{padding:36px 28px}.v2-index .contact-body{padding:30px}}
@media(max-width:760px){.v2-index .v2-title h1{font-size:72px}.v2-index .v2-features{gap:10px}.v2-index .v2-feature{padding:22px 18px}.v2-index .v2-feature h2{font-size:27px}.v2-index .v2-feature p{font-size:11px}.v2-index .ev-grid{grid-template-columns:1fr}.v2-index .contact-split{grid-template-columns:1fr}.v2-index .contact-aside h2{max-width:490px}.v2-index .ct-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.v2-index .ct-steps li{align-items:start;flex-direction:column}.v2-index .contact-aside>p{max-width:520px}}
@media(max-width:600px){.v2-index .v2-arena{margin:0 -20px}.v2-index .v2-intro{padding:40px 24px 34px;min-height:clamp(300px,40vh,420px);justify-content:flex-start}.v2-index .v2-title .v2-kicker{font-size:9px;letter-spacing:.14em;margin-bottom:16px}.v2-index .v2-title h1{font-size:clamp(44px,12.5vw,68px);line-height:.91;max-width:520px;text-wrap:balance}.v2-index .v2-intro-aside{margin-top:18px}.v2-index .v2-intro-aside p{font-size:12px;line-height:1.8;max-width:320px;margin-bottom:24px}.v2-index .v2-hero-actions{gap:10px;flex-direction:column;max-width:280px}.v2-index .v2-hero-actions .btn{font-size:11px;min-height:50px;padding:13px 18px;justify-content:space-between}.v2-index .v2-image-stage img{object-position:67% 40%}.v2-index .v2-image-stage:after{background:linear-gradient(90deg,#070a10ce,#090c1260),linear-gradient(0deg,#090b10,transparent 65%)}.v2-arena-corner{top:50%;right:28px;gap:6px}.v2-arena-corner i{width:5px;height:45px}.v2-index .v2-stat-strip{margin:0 24px}.v2-index .v2-stat-strip .plat-stat{padding:15px 14px}.v2-index .v2-stat-strip .plat-stat:nth-child(odd){padding-left:0}.v2-index .v2-stat-strip .n{font-size:36px}.v2-index .v2-stat-strip .k{font-size:9px}.v2-index .v2-stat-strip .stat-sub{font-size:10px}.v2-index .v2-features{grid-template-columns:1fr;padding:34px 0 54px;gap:12px}.v2-index .v2-feature{padding:26px;min-height:0}.v2-feature .v2-feature-head{margin-bottom:35px}.v2-index .v2-feature h2{font-size:34px;max-width:none;margin-bottom:13px}.v2-index .v2-feature p{font-size:12px;max-width:none}.v2-feature-art{right:-5px;top:24px}.v2-section-head{padding-top:24px;margin-bottom:25px;gap:16px}.v2-section-head .v2-kicker{font-size:8px;white-space:nowrap}.v2-index .ev-card{grid-template-columns:78px minmax(0,1fr) 28px;gap:13px;padding:23px 18px;min-height:175px}.v2-index .ev-title{font-size:17px}.v2-index .ev-date .d{font-size:42px}.v2-index .ev-date.range .d{font-size:22px}.v2-index .ev-go{width:28px;height:36px}.v2-index .ev-head{gap:10px}.v2-index .badge,.v2-index .disc-chip{font-size:8px}.v2-index #podiumCard{margin:44px 0;padding:28px 22px}.v2-index #podiumCard .v2-section-head{align-items:start;flex-direction:column}.v2-index .podium-cols{grid-template-columns:1fr;gap:30px}.v2-index .contact-card{margin-top:50px}.v2-index .contact-aside,.v2-index .contact-body{padding:30px 24px}.v2-index .contact-aside h2{font-size:52px}.v2-index .ct-steps{display:block;margin:30px 0}.v2-index .ct-steps li{flex-direction:row;align-items:center;gap:16px}.v2-index .seg button{font-size:9px;min-width:70px}.v2-index .contact-body .grid{gap:18px}}
@media(prefers-reduced-motion:reduce){.v2-index .v2-feature:hover,.v2-index .ev-card:hover{transform:none}.v2-index .v2-feature-art{transition:none}}
.v2-index .contact-aside:before{width:auto;height:auto;border-radius:0;transform:none;top:0;right:0;bottom:0;left:0}

.v2-index .v2-hero-actions .btn-primary:before,.v2-index #ctSubmit:before{order:2}
/* Short viewports: same reasoning as event-v2.css — the fold is a height
   question and every rule above is keyed to width. 360x740 was 7px short. */
@media(max-width:600px) and (max-height:780px){.v2-index .v2-intro{padding:32px 24px 28px}.v2-index .v2-stat-strip .plat-stat{padding:12px 14px}.v2-index .v2-stat-strip .n{font-size:32px}}
/* The caption on the rotating artwork. It names the sport currently drawn,
   which is the shortest way to say "this platform runs every kind of
   precision landing" without spending a line of copy on it. Below 760px the
   headline owns the full width of the frame and the caption stands down. */
.v2-index .v2-hero-disc{position:absolute;top:26px;right:6vw;z-index:2;display:flex;align-items:center;gap:11px;margin:0;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#e2e8ee;text-shadow:0 2px 14px #000a}
.v2-index .v2-hero-disc .tick{width:22px;height:4px;background:var(--v2-brand);transform:skewX(-24deg);flex:none}
.v2-index .v2-hero-disc b{font-weight:800}
@media(max-width:760px){.v2-index .v2-hero-disc{display:none}}
