/* Desktop and tablet (761px and wider): the phone page's content, laid out for wide screens around
   the continuous centre road (content | road lane | content). Loaded with media="(min-width:761px)";
   phones use mobile-v2.css. */
@media (min-width:761px){
:root{--d-red:#ef0010;--d-red-text:#ff3a50;--d-line:rgba(255,255,255,.09);--d-glass:rgba(255,255,255,.045);--d-body:#c8c9ce;--d-muted:#9a9ca3;--d-gap:var(--road-gap,136px);--d-breath:clamp(20px,calc(7vw - 40px),80px);--d-lane:calc(var(--d-gap) + 2 * var(--d-breath))}
/* --d-lane = the road plus breathing room each side, so text never sits against the road. */
.road-journey{--d-gap:var(--road-gap,136px);--d-lane:calc(var(--d-gap) + 2 * var(--d-breath))}

/* ---------- Header ---------- */
header .logo{display:flex;align-items:center;min-height:56px}
header .logo img{width:auto;height:58px;border-radius:0;object-fit:contain;filter:drop-shadow(0 2px 10px #000a)}
#nav>a[href="#regions"]{display:none!important}
#nav .m-nav[hidden]{display:inline-flex}
#nav a:not(.navcta){display:inline-flex;align-items:center;min-height:44px;transition:color .2s}
#nav a:not(.navcta):hover{color:#fff}
#nav .navcta{transition:background .2s,border-color .2s}
#nav .navcta:hover{background:var(--d-red);border-color:var(--d-red)}

/* ---------- Hero: the value proposition is the headline; region chips support it ---------- */
.hero .region-slot,.hero .brandline,.hero .product-line,.hero .divider,.hero .lede,.hero .tagline,.hero .hero-vendor,.hero #title-region,.hero .launch-note,.hero .concept{display:none!important}
.hero .shade{background:linear-gradient(180deg,#080a0ad6 0,#080a0a33 26%,#080a0a44 52%,#080a0ae6 90%,#080a0a)!important}
.hero .copy{display:flex;flex-direction:column;align-items:center;padding-top:clamp(24px,4vh,52px)}
.hero .m-region-chips[hidden],.hero .m-region-chips{order:0;display:grid;grid-template-columns:repeat(3,auto);gap:4px;padding:4px;border:1px solid #ffffff2e;border-radius:14px;background:#00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.m-region-chips button{min-height:44px;padding:0 22px;border:0;border-radius:10px;background:transparent;color:#e2e2e5;font-size:14px;font-weight:600;transition:background .2s,color .2s}
.m-region-chips button:hover{background:#ffffff1a;color:#fff}
.m-region-chips button[aria-pressed="true"]{background:#fff;color:#0a0a0a}
.m-region-chips button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hero .status{order:1;margin:14px 0 0}
.hero .m-hero-kicker,.hero .m-hero-kicker[hidden]{display:none}
.m-hero-kicker span{padding:6px 11px;border-radius:5px;background:var(--d-red);color:#fff;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;box-shadow:0 6px 20px #ef001055}
.hero h1{order:3;margin:clamp(26px,5vh,52px) 0 18px;font-size:clamp(66px,9.2vw,148px);line-height:.88;text-shadow:0 6px 30px #0009}
.hero .m-hero-title[hidden],.hero .m-hero-title{display:block}
.m-hero-title em{font-style:inherit;color:var(--d-red)}
.hero .m-hero-line[hidden],.hero .m-hero-line{order:4;display:block;margin:0;max-width:36em;font-size:18px;line-height:1.5;color:#ececee;text-shadow:0 1px 10px #000}
.hero .actions{order:5;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.hero .actions .primary{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:0 30px;transition:transform .2s,box-shadow .2s,background .2s}
.hero .actions .primary span{margin:0}
.hero .m-hero-partner[hidden],.hero .m-hero-partner{display:inline-flex;align-items:center;min-height:56px;padding:0 28px;border:1px solid #ffffff6b;border-radius:40px;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:14px;font-weight:700;letter-spacing:.05em;color:#fff;transition:border-color .2s,background .2s}
.hero .m-hero-partner:hover{border-color:#fff;background:#ffffff1a}
.hero .hero-bottom{justify-content:center}

/* ---------- Shared ---------- */
.primary{transition:transform .2s,box-shadow .2s,background .2s}
.primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px #ef001059;background:#ff1626}
.road-journey .kicker{display:none!important}
.road-journey h2 em{font-style:inherit;color:var(--d-red)}
.m-line{margin:0;font-size:18px;line-height:1.55;color:var(--d-body);max-width:28em}
.m-tag{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:6px 12px;border:1px solid #ef00105c;border-radius:999px;background:#ef00101f;color:#ff7383;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.3}
.m-tag:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.m-reveal{opacity:0;transform:translateY(18px);transition:opacity .3s ease,transform .3s ease;transition-delay:var(--m-delay,0ms)}
.m-reveal.m-in{opacity:1;transform:none}

/* ---------- How it works: pinned while native scroll picks the step; the road runs between TiTi and the text ---------- */
.road-journey>section.m-how,.m-how[hidden]{display:block;padding:0;background:transparent}
.m-how .m-how-bg{display:none}
.m-how-stage{position:relative;padding:100px 6% 70px}
.m-how h2{margin:0}
.m-how-progress{display:none}
.m-how-steps{display:grid;gap:30px;margin:40px 0 0;padding:0;list-style:none}
.m-how-step{display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);grid-template-rows:1fr auto auto auto auto 1fr;align-items:center}
.m-how-step img{grid-column:1;grid-row:1/-1;justify-self:center;width:auto;height:240px;filter:drop-shadow(0 24px 40px #000c) drop-shadow(0 0 60px #ef001044)}
.m-how-step>:not(img){grid-column:3;justify-self:start}
.m-how-num{grid-row:2;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;font-size:22px;letter-spacing:.06em;color:#ff4a5d}
.m-how-step h3{grid-row:3;margin:4px 0 0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(48px,5.6vw,92px);line-height:.92;color:#fff}
.m-how-step p{grid-row:4;margin:14px 0 0;max-width:20em;font-size:clamp(17px,1.4vw,21px);line-height:1.5;color:var(--d-body)}
.m-how-step .m-tag{grid-row:5;margin-top:18px}
@media (prefers-reduced-motion:no-preference){
 .m-how.is-live{height:200vh;height:200svh}
 .m-how.is-live .m-how-stage{position:sticky;top:0;display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:100vh;height:100svh;padding:clamp(70px,11vh,120px) 6% clamp(40px,7vh,80px)}
 .m-how.is-live .m-how-head{grid-column:3;grid-row:1}
 .m-how.is-live .m-how-progress{display:flex;gap:8px;max-width:420px;margin:14px 0 0}
 .m-how-progress button{flex:1;min-height:44px;padding:0;border:0;background:none;display:flex;align-items:center;cursor:pointer}
 .m-how-progress button span{position:relative;display:block;width:100%;height:4px;border-radius:2px;background:#ffffff2b;overflow:hidden;transition:height .2s}
 .m-how-progress button:hover span{height:6px}
 .m-how-progress button span:after{content:'';position:absolute;inset:0;background:var(--d-red);transform-origin:0 50%;transform:scaleX(var(--fill,0))}
 .m-how-progress button:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:4px}
 .m-how.is-live .m-how-steps{grid-column:1/-1;grid-row:2;position:relative;display:block;margin:0;min-height:0}
 .m-how.is-live .m-how-step{position:absolute;inset:0;opacity:0;transform:translateY(30px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
 .m-how.is-live .m-how-step.is-past{transform:translateY(-30px)}
 .m-how.is-live .m-how-step.is-active{opacity:1;transform:none;pointer-events:auto}
 .m-how.is-live .m-how-step img{height:min(56vh,440px);transition:transform .45s cubic-bezier(.2,.9,.25,1.15)}
 .m-how.is-live .m-how-step:not(.is-active) img{transform:scale(.9) rotate(-4deg)}
}

/* ---------- Extra detail for larger screens (phones keep the short copy) ---------- */
.m-how-step{grid-template-rows:1fr auto auto auto auto auto 1fr}
.m-how-step .how-more[hidden],.m-how-step .how-more{grid-column:3;grid-row:6;display:block;justify-self:stretch;max-width:30em;margin-top:22px}
.how-facts{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.how-facts li{padding:12px 16px;border:1px solid var(--d-line);border-radius:14px;background:var(--d-glass);font-size:15px;line-height:1.5;color:var(--d-body)}
.how-facts b{display:block;margin-bottom:2px;color:#fff;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.how-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.how-points>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid var(--d-line);border-radius:12px;background:var(--d-glass)}
.how-points>div:last-child{grid-column:1/-1}
.how-points dt{font-size:14px;color:var(--d-body)}
.how-points dd{margin:0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;font-size:22px;line-height:1;color:#fff;white-space:nowrap}
.how-points>div:last-child dd{font-size:18px}
.how-note{max-width:none!important;margin:14px 0 0!important;font-size:15px!important;line-height:1.5!important;color:var(--d-body)}
.how-small{display:block;margin-top:8px;font-size:12px;color:var(--d-muted)}
.partner-directory .partner-brands article:last-child .m-brand-more[hidden],.partner-directory .partner-brands article:last-child .m-brand-more{grid-column:1/-1;display:block;margin:12px 0 0;font-size:14px;line-height:1.5;color:var(--d-muted)}

/* ---------- TiTi cards: copy + details left, cards right; pinned sequence when motion is allowed ---------- */
.road-journey>section.m-cards,.m-cards[hidden]{display:block;padding:0;overflow:visible;background:#000}
.cards-stage{display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);grid-template-rows:1fr auto auto auto auto 1fr;align-items:start;padding:110px 6% 120px;text-align:left;background:linear-gradient(90deg,#000 0,#000 46%,rgba(0,0,0,.35) 72%,rgba(0,0,0,0) 100%),url('racing-black-red-v2.webp') center/cover no-repeat #000;overflow:hidden}
.cards-stage>.m-sec-bg{display:none}
/* The stage (and its backdrop) paints below the road canvas, so the centre road and car continue straight through the pinned section. Cards and details stay in the side columns. */
.road-journey>section.m-cards>.cards-stage{z-index:auto}
.cards-copy{grid-column:1;grid-row:2}
.cards-copy h2{margin:0 0 18px}
.cards-copy .m-line{margin:0 0 18px}
.cards-more[hidden],.cards-more{display:block;margin:18px 0 0;max-width:30em;font-size:15px;line-height:1.6;color:var(--d-muted)}
.cards-stage>.cards-list{grid-column:1;grid-row:4}
.cards-stage>.m-fan-hint{grid-column:1;grid-row:5;margin:22px 0 0;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--d-muted)}
.cards-fanbox{grid-column:3;grid-row:1/-1;position:relative;align-self:center;width:100%;height:clamp(240px,28vw,420px)}
.m-fan{position:relative;width:100%;height:100%}
.m-fan-card{position:absolute;left:50%;bottom:6%;display:block;width:clamp(84px,10.4vw,158px);aspect-ratio:248/372;padding:0;border:0;border-radius:11px;background:none;transform-origin:50% 165%;transform:translateX(-50%) rotate(var(--r,0deg));z-index:var(--z,1);cursor:pointer;transition:scale .25s ease,filter .25s ease}
.m-fan-card img{display:block;width:100%;height:auto;aspect-ratio:248/372;border-radius:11px;box-shadow:0 18px 34px #000b,0 0 0 1px #ffffff1f}
.m-fan-card:nth-child(1){--r:-30deg;--z:1;--i:3}.m-fan-card:nth-child(2){--r:-20deg;--z:2;--i:2}.m-fan-card:nth-child(3){--r:-10deg;--z:3;--i:1}
.m-fan-card:nth-child(4){--r:10deg;--z:3;--i:1}.m-fan-card:nth-child(5){--r:20deg;--z:2;--i:2}.m-fan-card:nth-child(6){--r:30deg;--z:1;--i:3}
.m-fan-card:nth-child(7){--r:0deg;--z:5;--i:0;width:clamp(94px,11.6vw,176px)}
.m-fan-card:nth-child(7) img{box-shadow:0 20px 40px #000c,0 0 0 1px #ffd76a66,0 0 40px #ffcf4a33}
.m-fan-card:hover{scale:1.07;z-index:9;filter:brightness(1.06)}
.m-fan-card:focus-visible{outline:3px solid #fff;outline-offset:4px;z-index:9}
.m-fan-card.is-lifted{visibility:hidden}
@media (prefers-reduced-motion:no-preference){
 .m-fan-card{animation:d-float 5.5s ease-in-out infinite;animation-delay:calc(var(--z) * -.7s);transition:transform .7s cubic-bezier(.2,.85,.25,1.08),scale .25s ease,filter .25s ease;transition-delay:calc(var(--i,0) * 70ms),0s,0s}
 .m-fan.is-stacked .m-fan-card{transform:translateX(-50%) rotate(0deg) translateY(12px)}
 @keyframes d-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
}

/* ---------- Road: one straight centre lane through How it works and the features; no milestone markers ---------- */
.road-journey .experience>.road-milestones{display:none!important}

.m-cards.is-seq{height:170vh;height:170svh}
.m-cards.is-seq .cards-stage{height:100vh;height:100svh;padding:clamp(60px,10vh,120px) 6% clamp(40px,7vh,80px);grid-template-rows:1fr auto auto 1fr;align-content:stretch}
/* Text block and fan share the same vertical centre. */
.m-cards.is-seq .cards-copy{grid-row:2}
.m-cards.is-seq .cards-detail{grid-column:1;grid-row:3;margin-top:clamp(18px,4vh,40px);max-width:30em}
.m-cards.is-seq .cards-progress{grid-column:1;grid-row:4;max-width:460px;width:100%}
.m-cards.is-seq .cards-stage>.m-fan-hint{display:none}
.m-cards.is-seq .cards-fanbox{grid-row:1/-1;align-self:stretch;height:auto;--seq-w:clamp(130px,12.5vw,200px)}
.m-cards.is-seq .cards-stage{background:linear-gradient(90deg,#000 0,#000 44%,rgba(0,0,0,.72) 70%,rgba(0,0,0,.55) 100%),url('racing-black-red-v2.webp') center/cover no-repeat #000}
.cards-detail[data-state="done"] .cd-name{font-size:clamp(30px,3vw,44px)}
.cards-detail .cd-name{font-size:clamp(40px,4.2vw,64px)}
.cards-detail .cd-line{font-size:18px}

/* ---------- Inside the app: rich tiles in two columns either side of the road, over a night-meet photo ---------- */
.road-journey .experience{height:auto!important;min-height:0;padding:110px 6% 120px;overflow:clip;background:radial-gradient(34% 30% at 18% 32%,rgba(239,0,16,.42),transparent 70%),radial-gradient(30% 28% at 84% 62%,rgba(255,58,80,.32),transparent 70%),radial-gradient(30% 26% at 30% 88%,rgba(255,255,255,.1),transparent 70%),linear-gradient(180deg,#000 0,rgba(0,0,0,.42) 14%,rgba(0,0,0,.5) 86%,#000 100%),url('mobile-meet-v1.webp') center/cover no-repeat #000!important}
.road-journey .experience>.m-what,.road-journey .experience>.m-what[hidden]{display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);row-gap:20px;position:relative;z-index:2}
.m-what-head{grid-column:1;grid-row:1;align-self:end;margin-bottom:10px}
.m-what-head h2{margin:0 0 14px}
.m-what-sub[hidden],.m-what-sub{display:block;margin:0;max-width:28em;font-size:18px;line-height:1.55;color:var(--d-body)}
.m-what .m-tiles{display:contents}
.m-what .app-tile{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:20px;align-items:start;min-width:0;padding:22px 24px 24px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:linear-gradient(150deg,rgba(255,255,255,.13) 0,rgba(255,255,255,.05) 45%,rgba(255,255,255,.03) 100%);-webkit-backdrop-filter:blur(22px) saturate(165%);backdrop-filter:blur(22px) saturate(165%);box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(255,255,255,.05),0 18px 40px rgba(0,0,0,.4);transition:transform .2s,border-color .2s,box-shadow .2s}
.m-what .app-tile:hover{transform:translateY(-3px);border-color:#ef00105c;box-shadow:0 22px 46px #0009}
.m-what .app-tile:nth-child(odd){grid-column:1}.m-what .app-tile:nth-child(even){grid-column:3}
.m-what .app-tile:nth-child(1),.m-what .app-tile:nth-child(2){grid-row:2}.m-what .app-tile:nth-child(3),.m-what .app-tile:nth-child(4){grid-row:3}.m-what .app-tile:nth-child(5),.m-what .app-tile:nth-child(6){grid-row:4}
.m-what .app-tile>img{grid-row:1/4;width:auto;height:112px;margin:-6px 0 0 -6px;filter:drop-shadow(0 10px 18px #000b)}
.m-what .app-tile h3{grid-column:2;margin:4px 0 8px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:30px;line-height:1;color:#fff}
.m-what .app-tile .app-short{display:none}
.m-what .app-tile .app-desc[hidden],.m-what .app-tile .app-desc{grid-column:2;display:block;margin:0 0 12px;font-size:15.5px;line-height:1.55;color:var(--d-body)}
.m-what .app-tile .app-bullets[hidden],.m-what .app-tile .app-bullets{grid-column:2;display:grid;gap:6px;margin:0;padding:0;list-style:none}
.m-what .app-bullets li{position:relative;padding-left:18px;font-size:13.5px;line-height:1.45;color:#c7c9ce}
.m-what .app-bullets li:before{content:'';position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--d-red)}

/* ---------- Map ---------- */
.road-journey .discovery .cn-copy{display:none}
.road-journey .discovery .map-option{transition:border-color .2s,background .2s,transform .2s}
.road-journey .discovery .map-option:not(.selected):hover{border-color:#ef00105c;background:#1a0b0e;transform:translateX(3px)}

/* ---------- TTPoints chapter: covered by How it works ---------- */
.road-journey .reward-journey{display:none!important}

/* ---------- Partners: title and "Your brand here" left, uniform partner grid right ---------- */
#vendors .vendor-heading,#vendors .vendor-categories,#vendors .vendor-pitch,#vendors .m-sec-bg,.partner-carousel-nav,.partner-page-status,.partner-autoplay,#partner-join,.partner-directory>.kicker,.partner-directory .directory-intro,.partner-directory>.partner-caption,.partner-brands article>span,.partner-brands .partner-address,.partner-brands article>.partner-join-link{display:none!important}
.road-journey #vendors .vendor-panel{display:block;margin:0;background:none;border:0}
.road-journey #vendors .partner-carousel{margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
.road-journey #vendors .partner-track{display:block!important;height:auto!important;overflow:visible}
.road-journey #vendors .partner-directory{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) calc(var(--d-lane) - 28px) minmax(0,1fr) minmax(0,1fr);gap:14px;padding:0!important;border:0;background:none;box-shadow:none;align-items:stretch}
.partner-directory h3{grid-column:1/3;grid-row:1;align-self:center;margin:0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(48px,5.3vw,80px);line-height:.94;color:#fff}
.partner-directory .partner-brands{display:contents}
.partner-directory .partner-brands article{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:12px 12px 18px;border:1px solid var(--d-line);border-radius:18px;background:linear-gradient(165deg,#17181c,#0c0d0f);text-align:center;transition:transform .2s,border-color .2s,box-shadow .2s}
.partner-directory .partner-brands article:nth-child(1){grid-column:4;grid-row:1}.partner-directory .partner-brands article:nth-child(2){grid-column:5;grid-row:1}
.partner-directory .partner-brands article:nth-child(3){grid-column:4;grid-row:2}.partner-directory .partner-brands article:nth-child(4){grid-column:5;grid-row:2}
.partner-directory .partner-brands article:hover{transform:translateY(-3px);border-color:#ef00105c;box-shadow:0 18px 40px #0009}
.partner-directory .partner-brands article .partner-logo,.partner-directory .partner-brands article .partner-logo.autolab-logo,.partner-directory .partner-brands article .partner-logo.soundstream-logo{display:flex;align-items:center;justify-content:center;height:clamp(76px,7vw,104px);width:auto;padding:10px clamp(10px,1.4vw,22px);border:1px solid #ffffff12;border-radius:12px;background:radial-gradient(120% 100% at 50% 0,#24252b,#141518)}
.partner-directory .partner-brands article .partner-logo img{position:static;display:block;width:100%;height:100%;max-width:none;object-fit:contain;transform:none}
.partner-directory .partner-brands article .partner-logo-window{position:static;display:block;width:100%;height:100%;aspect-ratio:auto;overflow:visible}
.partner-directory .partner-brands h4{margin:14px 0 4px;font-size:17px;line-height:1.25;color:#fff}
.partner-directory .partner-brands p{margin:0;font-size:11px;line-height:1.45;letter-spacing:.07em;text-transform:uppercase;color:#a9abb2}
.m-card-link[hidden],.m-card-link{position:absolute;inset:0;z-index:3;display:block;border-radius:18px}
.m-card-link:after{content:'\2197';position:absolute;top:6px;right:6px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#000000a6;border:1px solid #ffffff2e;color:#fff;font-size:14px;line-height:1;transition:background .2s}
.m-card-link:hover:after{background:var(--d-red)}
.m-card-link:focus-visible{outline:2px solid #fff;outline-offset:2px}
.partner-directory .partner-brands article:last-child{grid-column:1/3;grid-row:2;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto 1fr;align-items:center;gap:4px 16px;padding:20px;text-align:left;border:1px solid #ef00103d;background:radial-gradient(110% 120% at 100% 0,#3b0710 0,transparent 60%),#0e0e11}
.partner-directory .partner-brands article:last-child .partner-logo{grid-row:1/3;width:72px;height:78px;padding:0;border:0;background:none}
.partner-directory .partner-brands article:last-child h4{margin:0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:30px;line-height:1}
.partner-directory .partner-brands article:last-child p{text-transform:none;letter-spacing:0;font-size:15px;color:var(--d-body)}
.partner-directory .partner-brands .m-brand-cta[hidden],.partner-directory .partner-brands .m-brand-cta{grid-column:1/-1;align-self:end;display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:16px 0 0;padding:12px 18px;border-radius:999px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.m-partner-note[hidden],.m-partner-note{grid-column:4/6;grid-row:3;display:block;margin:4px 0 0;font-size:12.5px;line-height:1.5;color:var(--d-muted)}

/* ---------- From the scene: heading left, event cards right ---------- */
.road-journey>section.mobile-events,.mobile-events[hidden]{display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);grid-template-rows:auto auto 1fr;align-items:start;padding:100px 6%;background:#000}
.mobile-events>.kicker,.mobile-events .m-sec-bg{display:none!important}
.mobile-events h2{grid-column:1;grid-row:1;margin:0 0 16px}
.mobile-events .mobile-events-note{grid-column:1;grid-row:2;margin:0;font-size:18px;line-height:1.55;color:var(--d-body);max-width:24em}
.mobile-events .mobile-map-cta{grid-column:1;grid-row:3;align-self:start;display:inline-flex;align-items:center;width:max-content;min-height:50px;margin-top:24px;padding:0 24px;border:1px solid #ffffff5c;border-radius:999px;font-size:14px;font-weight:600;color:#fff;transition:border-color .2s,background .2s}
.mobile-events .mobile-map-cta:hover{border-color:#fff;background:#ffffff14}
.m-events-track{grid-column:3;grid-row:1/-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;list-style:none}
.m-events-track li{min-width:0}
.mobile-events .mobile-event{display:flex;flex-direction:column;height:100%;border:1px solid var(--d-line);border-radius:18px;overflow:hidden;background:#0e0f12;color:#fff;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
.mobile-events .mobile-event:hover{transform:translateY(-4px);border-color:#ef00105c;box-shadow:0 20px 40px #0009}
.mobile-events .mobile-event img{display:block;width:100%;height:auto;aspect-ratio:16/12;object-fit:contain;background:#000}
.mobile-events .mobile-event.is-spot img{background:#fff;padding:14px}
.mobile-events .mobile-event div{display:flex;flex-direction:column;gap:4px;padding:14px}
.mobile-events .mobile-event small{font-size:11px;line-height:1.45;letter-spacing:.08em;font-weight:700;color:#ff5b6d}
.mobile-events .mobile-event strong{font-size:17px;line-height:1.25}
.mobile-events .mobile-event span{font-size:13.5px;color:var(--d-muted)}
.mobile-events .mobile-event:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* ---------- FAQ ---------- */
.road-journey .faq>div:first-child{position:relative}
.m-faq-titi[hidden],.m-faq-titi{display:block;width:auto;height:150px;margin-top:28px;filter:drop-shadow(0 12px 20px #000b)}
.road-journey .faq-list details,.road-journey .faq-list details:first-child{margin:0 0 10px;padding:0;border:1px solid var(--d-line);border-radius:16px;background:var(--d-glass);transition:border-color .2s}
.road-journey .faq-list details:hover{border-color:#ffffff26}
.road-journey .faq-list summary{position:relative;display:flex;align-items:center;min-height:62px;padding:16px 60px 16px 20px;list-style:none;font-size:17px;line-height:1.35;font-weight:600;color:#fff}
.road-journey .faq-list summary::-webkit-details-marker{display:none}
.road-journey .faq-list summary:after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ffffff12;color:#ff3a50;font-size:20px;line-height:1}
.road-journey .faq-list details[open] summary:after{content:'\2212';background:var(--d-red);color:#fff}
.road-journey .faq-list p{margin:0;padding:0 20px 18px;font-size:15.5px;line-height:1.65;color:var(--d-body)}

/* ---------- Closing call to action: TiTi left, invitation right, one honesty footnote ---------- */
.road-journey .final-invite{display:block!important;padding:80px 6% 120px}
.road-journey .final-invite>*:not(.mobile-ending){display:none!important}
.road-journey .final-invite .mobile-ending[hidden],.road-journey .final-invite .mobile-ending{display:grid;grid-template-columns:minmax(0,1fr) var(--d-lane) minmax(0,1fr);grid-template-rows:1fr auto auto auto auto 1fr;align-items:center;min-height:min(70vh,560px);margin:0;padding:0;background:none;text-align:left}
.m-ending-bg{grid-column:1;grid-row:1/-1;align-self:stretch;width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:24px;opacity:.9;-webkit-mask-image:radial-gradient(120% 90% at 50% 40%,#000 55%,transparent);mask-image:radial-gradient(120% 90% at 50% 40%,#000 55%,transparent)}
.mobile-ending .m-titi{grid-column:1;grid-row:1/-1;align-self:end;justify-self:center;width:auto;height:min(48vh,360px);margin:0 0 4%;filter:drop-shadow(0 26px 40px #000d) drop-shadow(0 0 60px #ef001040)}
.road-journey .mobile-ending h2{grid-column:3;grid-row:2;margin:0 0 26px}
.road-journey .mobile-ending .primary{grid-column:3;grid-row:3;justify-self:start;display:inline-flex;align-items:center;min-height:56px;padding:0 32px}
.road-journey .mobile-ending .m-ending-partner{grid-column:3;grid-row:4;justify-self:start;display:inline-flex;align-items:center;min-height:52px;margin-top:12px;padding:0 28px;border:1px solid #ffffff5c;border-radius:999px;background:transparent;color:#fff;font-size:13px;font-weight:700;letter-spacing:.07em;transition:border-color .2s,background .2s}
.road-journey .mobile-ending .m-ending-partner:hover{border-color:#fff;background:#ffffff14}
.road-journey .mobile-ending .m-footnote{grid-column:3;grid-row:5;margin:26px 0 0;max-width:30em;font-size:13px;line-height:1.55;color:var(--d-muted)}

/* ---------- Footer ---------- */
.tt-footer .footer-brand img{width:auto;height:66px;border-radius:0;object-fit:contain}
.tt-footer .footer-brand strong,.tt-footer-intro>small,.tt-footer-join{display:none!important}
.tt-footer{grid-template-columns:1.2fr 1fr}

/* ---------- Tablet ---------- */
@media (max-width:1050px){
 .m-cards.is-seq .cards-stage{grid-template-rows:auto auto 1fr auto auto}
 .m-cards.is-seq .cards-copy{grid-row:1}
 .m-cards.is-seq .cards-fanbox{grid-row:1/4;--seq-w:clamp(110px,14.5vw,140px)}
 .m-cards.is-seq .cards-detail{grid-column:3;grid-row:4/6;align-self:start;margin-top:8px;text-align:center;max-width:none}
 .m-cards.is-seq .cards-progress{grid-row:4;align-self:end}
 .cards-detail .cd-name{font-size:clamp(30px,4vw,42px)}
 .cards-detail .cd-line{font-size:16px}
 .m-what .app-tile{grid-template-columns:minmax(0,1fr);grid-template-rows:none;align-content:start;padding:18px}
 .m-what .app-tile>img{grid-row:auto;height:84px;margin:-4px 0 10px -4px}
 .m-what .app-tile h3,.m-what .app-tile .app-desc,.m-what .app-tile .app-desc[hidden],.m-what .app-tile .app-bullets,.m-what .app-tile .app-bullets[hidden]{grid-column:1}
 .m-what .app-tile h3{font-size:26px}
 .m-how-step img{height:200px}
 .partner-directory .partner-brands h4{font-size:15px}
}
@media (max-width:900px){
 .hero h1{font-size:clamp(60px,10vw,100px)}
 .m-how.is-live .m-how-step img{height:min(44vh,320px)}
 .partner-directory .partner-brands article:last-child{grid-template-columns:56px minmax(0,1fr)}
 .partner-directory .partner-brands article:last-child .partner-logo{width:56px;height:60px}
 .partner-directory .partner-brands article:last-child h4{font-size:24px}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
 .m-reveal{opacity:1;transform:none;transition:none}
 .primary:hover,.partner-directory .partner-brands article:hover,.mobile-events .mobile-event:hover{transform:none}
}
}

/* Partners, FAQ and the closing section: soft red glows instead of the racing-art edge strips, which were cut hard and repeated with a seam between sections. */
/* Each glow fades out well inside its section, so no glow is cut at a section edge (that showed as a hard seam). */
#vendors .vendor-heading>*,#vendors .vendor-categories,.road-journey .faq>*,.road-journey .final-invite>*{background-color:transparent}
.road-journey #vendors,.road-journey .faq,.road-journey .final-invite{background-image:radial-gradient(30% 40% at 100% 50%,rgba(239,0,16,.15),transparent 70%),radial-gradient(28% 36% at 0 62%,rgba(239,0,16,.11),transparent 70%);background-size:auto;background-repeat:no-repeat;background-position:0 0;background-color:#000}
.m-ending-bg{border-radius:0;opacity:.75;-webkit-mask-image:radial-gradient(closest-side,#000 35%,transparent 100%);mask-image:radial-gradient(closest-side,#000 35%,transparent 100%)}

/* Liquid glass on every board (owner, 2026-10-06), the same recipe as the "Inside the app" tiles. */
:root{--glass-bg:linear-gradient(125deg,rgba(255,255,255,.16) 0,rgba(255,255,255,0) 38%),linear-gradient(150deg,rgba(255,255,255,.13) 0,rgba(255,255,255,.05) 45%,rgba(255,255,255,.03) 100%);--glass-line:rgba(255,255,255,.16);--glass-blur:blur(18px) saturate(165%);--glass-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -1px 0 rgba(255,255,255,.05),0 14px 30px rgba(0,0,0,.35)}
.how-facts li,.how-points>div,.partner-directory .partner-brands article,.mobile-events .mobile-event,.road-journey .faq-list details,.road-journey .faq-list details:first-child,.cd-intro-rarity li{background:var(--glass-bg)!important;border-color:var(--glass-line)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow)}
.partner-directory .partner-brands article:last-child{background:var(--glass-bg),radial-gradient(110% 120% at 100% 0,rgba(239,0,16,.3) 0,transparent 60%)!important}
.road-journey>section.mobile-events{background:radial-gradient(34% 40% at 100% 40%,rgba(239,0,16,.18),transparent 70%),radial-gradient(30% 36% at 0 64%,rgba(239,0,16,.12),transparent 70%),#000!important}
.m-how.is-live .m-how-stage{background:radial-gradient(34% 42% at 82% 66%,rgba(239,0,16,.16),transparent 72%)}

/* FAQ (owner, 2026-10-06: TiTi looked small and alone): heading on top, a big magnifier TiTi under it on a red glow, with glass "?" bubbles. */
.road-journey .faq{align-items:center}
.road-journey .faq>div:first-child{display:flex;flex-direction:column;align-items:flex-start}
.faq-art{--faq-h:min(36vh,26vw,360px);position:relative;align-self:center;display:grid;place-items:center;width:min(100%,560px);height:var(--faq-h);margin-top:clamp(20px,4vh,40px)}
.faq-art:before{content:'';position:absolute;left:50%;top:50%;width:calc(var(--faq-h)*1.2);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(239,0,16,.32),rgba(239,0,16,.1) 55%,transparent 100%)}
.faq-art:after{content:'';position:absolute;left:50%;bottom:-3%;width:calc(var(--faq-h)*.66);height:calc(var(--faq-h)*.09);transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.9),transparent)}
.faq-art .m-faq-titi,.faq-art .m-faq-titi[hidden]{position:relative;z-index:1;display:block;width:auto;height:100%;margin:0;filter:drop-shadow(0 22px 34px #000c) drop-shadow(0 0 50px #ef001033)}
.faq-q{position:absolute;z-index:2;display:grid;place-items:center;width:var(--s);height:var(--s);border-radius:50%;background:var(--glass-bg);border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;font-size:calc(var(--s)*.58);line-height:1;color:#ff3a50}
.faq-q:before{content:'?'}
.faq-q:nth-of-type(1){--s:clamp(48px,calc(var(--faq-h)*.2),68px);left:calc(50% + var(--faq-h)*.36);top:2%}
.faq-q:nth-of-type(2){--s:clamp(36px,calc(var(--faq-h)*.14),50px);left:calc(50% + var(--faq-h)*.5);top:40%}
.faq-q:nth-of-type(3){--s:clamp(30px,calc(var(--faq-h)*.11),40px);right:calc(50% + var(--faq-h)*.46);top:10%}
@media (prefers-reduced-motion:no-preference){
 .faq-art .m-faq-titi{animation:faq-bob 5.5s ease-in-out infinite}
 .faq-q{animation:faq-float 6s ease-in-out infinite}
 .faq-q:nth-of-type(2){animation-delay:-2s}.faq-q:nth-of-type(3){animation-delay:-4s}
 @keyframes faq-bob{0%,100%{translate:0 0}50%{translate:0 -8px}}
 @keyframes faq-float{0%,100%{translate:0 0;rotate:-6deg}50%{translate:0 -12px;rotate:6deg}}
}

/* Sign-up form dropdowns (form-select.js; owner, 2026-10-06: the browser's own list looked plain). The native select stays for the form. */
select.has-select-menu{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;opacity:0;pointer-events:none;clip-path:inset(50%)}
#early-access input[type=email],#early-access input[type=tel],#early-access input[type=text]{border-radius:10px;transition:border-color .15s,box-shadow .15s}
#early-access input[type=email]:focus,#early-access input[type=tel]:focus,#early-access input[type=text]:focus{border-color:#ef0010;box-shadow:0 0 0 4px rgba(239,0,16,.12);outline:none}
.d-select[hidden],.d-select{position:relative;display:block;margin-top:7px}
.d-select-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;margin:0;padding:11px 12px 11px 14px;border:1px solid #bbb;border-radius:10px;background:#fff;color:#111;font:inherit;font-size:16px;line-height:1.3;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.d-select-button:hover{border-color:#86868b}
.d-select-button.is-empty .d-select-value{color:#8a8a8f}
.d-select.is-open .d-select-button,.d-select-button:focus-visible{border-color:#ef0010;box-shadow:0 0 0 4px rgba(239,0,16,.12);outline:none}
.d-select-button[aria-invalid=true]{border-color:#d4001a;box-shadow:0 0 0 4px rgba(212,0,26,.1)}
.d-select-button:disabled{opacity:.5;cursor:default}
.d-select-chevron{flex:none;width:26px;height:26px;border-radius:50%;background:#f2f2f4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%233f3f46' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6.2l4 4 4-4'/%3E%3C/svg%3E") center/13px no-repeat;transition:transform .22s cubic-bezier(.2,.8,.2,1),background-color .15s}
.d-select.is-open .d-select-chevron{transform:rotate(180deg);background-color:#ffe8eb}
.d-select-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;max-height:min(330px,52vh);overflow:auto;margin:0;padding:6px;list-style:none;border:1px solid #e7e7eb;border-radius:14px;background:#fff;box-shadow:0 20px 44px rgba(15,15,20,.2),0 2px 8px rgba(15,15,20,.08);outline:none;overscroll-behavior:contain}
.d-select.is-up .d-select-list{top:auto;bottom:calc(100% + 6px)}
.d-select-option{position:relative;display:flex;align-items:center;min-height:44px;margin:0;padding:10px 42px 10px 12px;border-radius:10px;color:#18181b;font-size:15.5px;line-height:1.3;cursor:pointer;user-select:none}
.d-select-option+.d-select-option{margin-top:2px}
.d-select-option.is-active{background:#f4f4f6}
.d-select-option[aria-selected=true]{background:#fff1f2;color:#c40018;font-weight:700}
.d-select-option[aria-selected=true].is-active{background:#ffe6e9}
.d-select-option[aria-selected=true]:after{content:'';position:absolute;right:12px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:50%;background:#ef0010 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.4l2.6 2.6L12 5.6'/%3E%3C/svg%3E") center/12px no-repeat}
@media (prefers-reduced-motion:no-preference){
 .d-select-list:not([hidden]){animation:dsel-down .17s cubic-bezier(.2,.8,.2,1)}
 .d-select.is-up .d-select-list:not([hidden]){animation-name:dsel-up}
 @keyframes dsel-down{from{opacity:0;transform:translateY(-6px) scale(.985)}}
 @keyframes dsel-up{from{opacity:0;transform:translateY(6px) scale(.985)}}
}
