/* Phone landing page (max-width:760px only; loaded with a media attribute).
   Desktop and tablet layouts are owned by index.html and the shared stylesheets.
   This file replaces the earlier mobile.css + mobile-editorial.css layers. */
@media (max-width:760px){
:root{--m-red:#ef0010;--m-red-text:#ff3a50;--m-bg:#050506;--m-card:#101114;--m-glass:rgba(255,255,255,.045);--m-line:rgba(255,255,255,.09);--m-text:#f2f2f3;--m-body:#c8c9ce;--m-muted:#9a9ca3;--m-gutter:16px}
html{scroll-padding-top:24px}
body{overflow-x:clip;background:var(--m-bg)}

/* Shared phone-only content that ships hidden in the markup. */
.mobile-only[hidden]{display:block}

/* Removed on phones: side road + car + checkpoint, round progress button, stacked kickers. */
.road-journey>.continuous-highway,.road-journey>.highway,.road-journey>.highway-car,.road-journey>.music-checkpoint,.road-milestones,.road-entry,.feature-road,.discovery>.elevated-road,.scroll-top{display:none!important}
.road-journey .kicker{display:none!important}

/* ---------- Type ---------- */
.road-journey h2,.m-how h2,.m-cards h2{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(36px,10.6vw,48px);line-height:.94;letter-spacing:-.01em;margin:0 0 12px;color:#fff}
.road-journey h2 em,.road-journey h3 em{font-style:inherit;color:var(--m-red)}
.road-journey p{line-height:1.55}
.m-line{margin:0;font-size:15.5px;line-height:1.5;color:var(--m-body)}
.m-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;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}

/* ---------- Hero ---------- */
.hero{position:relative;top:auto;min-height:100vh;min-height:max(620px,100svh);height:auto;padding:0;display:flex;flex-direction:column;width:100%}
.hero .shade{background:linear-gradient(180deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.16) 22%,rgba(0,0,0,.26) 40%,rgba(0,0,0,.82) 62%,#050506 90%)!important}
.hero .grain{opacity:.05}
.hero header{margin:0;padding:12px var(--m-gutter);border:0;align-items:center}
.hero .logo{display:flex;align-items:center;min-height:44px}
.hero .logo img{width:auto;height:46px;border-radius:0;object-fit:contain;filter:drop-shadow(0 2px 10px #000a)}
.hero .burger{display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:0;border:1px solid #ffffff42;border-radius:12px;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:18px;line-height:1}
.hero nav{display:none}
.hero nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;left:var(--m-gutter);right:var(--m-gutter);top:64px;min-width:0;width:auto;padding:8px;background:#0b0b0dee;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #2c2c30;border-radius:16px;box-shadow:0 18px 50px #000c;z-index:20}
.hero nav a,.hero nav a:not(.navcta){display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:10px;font-size:15px;color:#eee}
.hero nav .m-nav[hidden]{display:flex}
.hero nav a[href="#regions"]:not(.logo){display:none}
.hero nav .navcta{justify-content:center;margin-top:6px;border:0;background:var(--m-red);color:#fff;font-weight:700}
.hero .motion{position:absolute;top:12px;right:calc(var(--m-gutter) + 52px);bottom:auto;z-index:6;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff42;border-radius:12px;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:0;line-height:0;color:#fff;display:flex;align-items:center;justify-content:center}
.hero .motion:before{content:'';width:10px;height:12px;border-left:3px solid #fff;border-right:3px solid #fff;box-sizing:border-box}
.hero .motion[data-paused="true"]:before{width:0;height:0;border:0;border-left:11px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
.hero .motion[hidden]{display:none}
.hero .region-slot,.hero .hero-bottom,.hero .divider,.hero .brandline,.hero .product-line,.hero .hero-vendor,.hero .status,.hero .lede,.hero .tagline,#title-region{display:none!important}
.hero .copy{position:relative;inset:auto;flex:1;display:flex;flex-direction:column;width:auto;max-width:none;margin:0;padding:6px var(--m-gutter) 28px;text-align:left;transform:none}
.hero .m-region-chips[hidden],.hero .m-region-chips{order:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));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:6px 4px;border:0;border-radius:10px;background:transparent;color:#d9d9dc;font-size:13px;font-weight:600;line-height:1.2;transition:background .2s,color .2s}
.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 .m-hero-kicker[hidden],.hero .m-hero-kicker{order:2;display:flex;margin:auto 0 14px;padding-top:28px}
.m-hero-kicker span{padding:5px 9px;border-radius:5px;background:var(--m-red);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 6px 20px #ef001055}
.hero h1{order:3;margin:0 0 14px;font-size:clamp(46px,14.6vw,66px);line-height:.9;letter-spacing:-.015em;white-space:normal;text-shadow:0 4px 24px #0009}
.hero .m-hero-title[hidden],.hero .m-hero-title{display:block}
.m-hero-title em{font-style:inherit;color:var(--m-red)}
.hero .m-hero-line[hidden],.hero .m-hero-line{order:4;display:block;margin:0;max-width:30em;font-size:16px;line-height:1.5;color:#ececee;text-shadow:0 1px 10px #000}
.hero .actions{order:5;display:grid;gap:10px;margin:24px 0 0}
.hero .actions .primary{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;padding:14px 20px;border-radius:999px;font-size:14px;letter-spacing:.07em;box-shadow:0 10px 30px #ef001040}
.hero .actions .primary span{margin:0}
.hero .m-hero-partner[hidden],.hero .m-hero-partner{display:flex;align-items:center;justify-content:center;min-height:50px;border:1px solid #ffffff6b;border-radius:999px;background:#0000004d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:14px;font-weight:600;letter-spacing:.02em;color:#fff}

/* ---------- Journey container + section frame ---------- */
.road-journey{border-radius:0;box-shadow:none;padding-bottom:0;background:var(--m-bg);--road-gap:0px;--road-width:0px;display:block}
.road-journey .scroll-reveal{opacity:1;transform:none}
.road-journey>section{position:relative;isolation:isolate;display:block;height:auto;min-height:0;margin:0;padding:60px var(--m-gutter)!important;border:0!important;background:var(--m-bg)!important;background-image:none!important;overflow:hidden;text-align:left}
.road-journey>section>*{min-width:0}
.road-journey>section>img.m-sec-bg,.road-journey>section>img.m-sec-bg[hidden]{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;opacity:.7;pointer-events:none}
.road-journey>#vendors:after,.road-journey>section.mobile-events:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,var(--m-bg) 0,#05050699 22%,#05050680 70%,var(--m-bg) 100%)}

/* ---------- How it works: pinned steps driven by native scroll ---------- */
.road-journey>section.m-how,.m-how[hidden]{display:block;padding:0!important;overflow:visible;background:var(--m-bg)!important}
.m-how-stage{position:relative;overflow:hidden;padding:56px var(--m-gutter) 48px;isolation:isolate}
.m-how-bg{position:absolute;left:0;top:0;z-index:0;width:100%;height:auto;min-height:100%;object-fit:cover;opacity:.75;pointer-events:none;will-change:transform}
.m-how-stage:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(70% 40% at 50% 52%,#ef001033 0,transparent 70%),linear-gradient(180deg,var(--m-bg) 0,#05050666 26%,#05050655 64%,var(--m-bg) 100%)}
.m-how-head,.m-how-steps{position:relative;z-index:2}
.m-how h2{margin:0}
.m-how-progress{display:none}
.m-how-steps{display:grid;gap:12px;margin:22px 0 0;padding:0;list-style:none}
.m-how-step{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:2px 14px;padding:14px;border:1px solid var(--m-line);border-radius:20px;background:#0d0e11cc}
.m-how-step img{grid-row:1/5;width:92px;height:auto;filter:drop-shadow(0 10px 18px #000b)}
.m-how-num{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;font-size:15px;letter-spacing:.06em;color:#ff4a5d}
.m-how-step h3{margin:0;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:28px;line-height:1;color:#fff}
.m-how-step p{margin:2px 0 0;font-size:15px;line-height:1.45;color:var(--m-body)}
.m-how-step .m-tag{justify-self:start;margin-top:8px}
@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:flex;flex-direction:column;height:100vh;height:100svh;padding:34px var(--m-gutter) 104px}
 .m-how.is-live .m-how-progress{display:flex;gap:8px;margin:10px 0 0}
 .m-how-progress button{flex:1;min-height:44px;padding:0;border:0;background:none;display:flex;align-items:center}
 .m-how-progress button span{position:relative;display:block;width:100%;height:4px;border-radius:2px;background:#ffffff2b;overflow:hidden}
 .m-how-progress button span:after{content:'';position:absolute;inset:0;background:var(--m-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{flex:1;display:block;margin:0;min-height:0}
 .m-how.is-live .m-how-step{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:0;border:0;background:none;text-align:center;opacity:0;transform:translateY(28px) scale(.96);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
 .m-how.is-live .m-how-step.is-past{transform:translateY(-28px) scale(.96)}
 .m-how.is-live .m-how-step.is-active{opacity:1;transform:none;pointer-events:auto}
 .m-how.is-live .m-how-step img{width:auto;height:clamp(150px,30svh,250px);margin-bottom:14px;filter:drop-shadow(0 18px 30px #000c) drop-shadow(0 0 40px #ef001033)}
 .m-how.is-live .m-how-num{font-size:18px;margin-bottom:6px}
 .m-how.is-live .m-how-step h3{font-size:clamp(40px,12vw,54px)}
 .m-how.is-live .m-how-step p{margin-top:10px;max-width:22em;font-size:16.5px}
 .m-how.is-live .m-how-step .m-tag{justify-self:auto;margin-top:14px}
}

/* ---------- TiTi cards ---------- */
.road-journey>section.m-cards,.m-cards[hidden]{display:block;padding:0!important;overflow:visible;text-align:center}
.cards-stage{position:relative;isolation:isolate;overflow:hidden;padding:60px var(--m-gutter) 44px}
.cards-stage>img.m-sec-bg{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;opacity:.7;pointer-events:none}
.cards-stage:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,var(--m-bg) 0,#05050699 22%,#05050680 70%,var(--m-bg) 100%)}
.cards-stage>*:not(.m-sec-bg){position:relative;z-index:2}
.m-cards .m-line{margin:0 auto 12px;max-width:24em}
.cards-fanbox{height:clamp(220px,62vw,270px);margin:30px auto 0;max-width:380px}
.m-fan{position:relative;height:100%}
.m-fan-card{position:absolute;left:50%;bottom:0;display:block;width:clamp(92px,27vw,112px);height:auto;aspect-ratio:248/372;padding:0;border:0;border-radius:9px;background:none;transform-origin:50% 165%;transform:translateX(-50%) rotate(var(--r,0deg));z-index:var(--z,1);cursor:pointer;-webkit-tap-highlight-color:transparent}
.m-fan-card img{display:block;width:100%;height:auto;aspect-ratio:248/372;border-radius:9px;box-shadow:0 16px 30px #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(104px,30vw,124px)}
.m-fan-card:nth-child(7) img{box-shadow:0 18px 36px #000c,0 0 0 1px #ffd76a66,0 0 34px #ffcf4a33}
.m-fan-card:focus-visible{outline:3px solid #fff;outline-offset:3px}
.m-fan-card.is-lifted{visibility:hidden}
.cards-stage>.m-fan-hint{margin:16px 0 0;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--m-muted)}
@media (prefers-reduced-motion:no-preference){
 .m-fan-card{animation:m-float 5.5s ease-in-out infinite;animation-delay:calc(var(--z) * -.7s);transition:transform .7s cubic-bezier(.2,.85,.25,1.08);transition-delay:calc(var(--i,0) * 70ms)}
 .m-fan.is-stacked .m-fan-card{transform:translateX(-50%) rotate(0deg) translateY(10px)}
 @keyframes m-float{0%,100%{translate:0 0}50%{translate:0 -7px}}
}

/* Pinned sequence (cards-sequence.js): name + rarity only on phones. */
.m-cards.is-seq{height:135vh;height:135svh}
.m-cards.is-seq .cards-stage{display:flex;flex-direction:column;align-items:center;height:100vh;height:100svh;padding:max(26px,4svh) var(--m-gutter) 100px}
.m-cards.is-seq .cards-copy{flex:none}
.m-cards.is-seq .cards-copy h2{margin-bottom:8px}
.m-cards.is-seq .cards-copy .m-line{margin-bottom:10px}
.m-cards.is-seq .cards-fanbox{flex:1;min-height:0;width:100%;max-width:380px;height:auto;margin:6px auto 0;--seq-w:clamp(100px,29vw,130px)}
.m-cards.is-seq .cards-detail{flex:none;display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px}
.m-cards.is-seq .cards-detail .cd-count,.m-cards.is-seq .cards-detail .cd-line{display:none}
.m-cards.is-seq .cards-detail .cd-intro-title,.m-cards.is-seq .cards-detail .cd-intro-cue{display:none}
.m-cards.is-seq .cd-intro-rarity{justify-content:center;gap:6px}
.m-cards.is-seq .cd-intro-rarity li{gap:6px;padding:5px 10px 5px 5px}
.m-cards.is-seq .cd-intro-rarity b{font-size:16px}
.m-cards.is-seq .cards-detail .cd-name{margin:0;font-size:24px}
.m-cards.is-seq .cards-detail[data-state="done"] .cd-name{font-size:19px}
.m-cards.is-seq .cards-progress{flex:none;width:100%;max-width:380px}
.m-cards.is-seq .cards-stage>.m-fan-hint{margin:2px 0 0}
@media (max-height:700px){.m-cards.is-seq .cards-copy .m-line{display:none}}

/* ---------- What you can do (TiTi tiles) ---------- */
.road-journey .experience{height:auto!important;padding:60px var(--m-gutter)!important}
.road-journey .experience>*:not(.m-what){display:none!important}
.road-journey .experience>.m-what,.road-journey .experience>.m-what[hidden]{display:block;position:relative;z-index:2}
/* Liquid glass: drifting light behind, frosted tiles in front, so the blur has colour to work with. */
.road-journey .experience:before{display:block!important;content:'';position:absolute;inset:0;width:auto;height:auto;transform:none;z-index:0;background:radial-gradient(42% 26% at 14% 20%,rgba(239,0,16,.55),transparent 70%),radial-gradient(38% 24% at 90% 42%,rgba(255,58,80,.4),transparent 70%),radial-gradient(44% 26% at 26% 76%,rgba(255,255,255,.13),transparent 70%),radial-gradient(40% 26% at 86% 92%,rgba(239,0,16,.38),transparent 70%),linear-gradient(180deg,#09090b 0,#16060a 50%,#09090b 100%);background-size:150% 150%;background-position:0 0}
@media (prefers-reduced-motion:no-preference){.road-journey .experience:before{animation:m-liquid 16s ease-in-out infinite alternate}}
@keyframes m-liquid{0%{background-position:0 0}50%{background-position:60% 30%}100%{background-position:100% 100%}}
.m-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0;padding:0;list-style:none}
.m-tiles li{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:12px 14px 16px;border:1px solid rgba(255,255,255,.17);border-radius:20px;background:linear-gradient(150deg,rgba(255,255,255,.15) 0,rgba(255,255,255,.06) 45%,rgba(255,255,255,.035) 100%);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(255,255,255,.05),0 14px 30px rgba(0,0,0,.35);overflow:hidden}
.m-tiles li:before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(125deg,rgba(255,255,255,.2) 0,rgba(255,255,255,0) 38%);pointer-events:none}
.m-tiles img{position:relative;display:block;width:auto;height:86px;margin:0 0 8px -4px;filter:drop-shadow(0 8px 14px #000a)}
.m-tiles h3{margin:0 0 4px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:22px;line-height:1;color:#fff}
.m-tiles p{position:relative;margin:0;font-size:13.5px;line-height:1.45;color:#dcdde1}
.m-tiles h3{position:relative}
.m-tiles .m-tag{margin-top:10px;font-size:10px;padding:4px 8px}

/* ---------- Map ---------- */
.road-journey .discovery{display:block;height:auto!important;min-height:0!important}
.road-journey .discovery>div:first-of-type{position:static;inset:auto;display:flex;flex-direction:column;width:auto;margin:0;padding:0;background:none}
.road-journey .discovery>.carplay-console{display:none!important}
.road-journey .discovery-copy>:not(.m-sec-head):not(.m-map-card):not(.map-options){display:none!important}
.m-sec-head[hidden],.m-sec-head{display:block;margin:0 0 20px}
.m-map-card[hidden],.m-map-card{position:relative;display:block;width:100%;aspect-ratio:16/11;padding:0;border:1px solid #2a2a2f;border-radius:22px;overflow:hidden;background:#141b22;color:#fff;text-align:left;box-shadow:0 20px 44px #000a,0 0 0 1px #ef00101a}
.m-map-card>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.m-map-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0000 30%,#000000d0 100%)}
.m-map-card:focus-visible{outline:3px solid #fff;outline-offset:3px}
.m-map-titi{position:absolute;z-index:2;right:10px;bottom:58px;width:auto;height:min(130px,34vw);filter:drop-shadow(0 12px 18px #000c)}
.m-map-pins i{position:absolute;z-index:1;width:16px;height:16px;border-radius:50%;background:var(--m-red);border:3px solid #fff;box-shadow:0 0 0 6px #ef001040,0 4px 10px #000a}
.m-map-pins i:nth-child(1){left:18%;top:26%}.m-map-pins i:nth-child(2){left:44%;top:16%;width:22px;height:22px}.m-map-pins i:nth-child(3){left:34%;top:50%}
.m-map-card-bar{position:absolute;z-index:3;left:14px;right:14px;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.m-map-card-bar small{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#ff8a97;font-weight:700}
.m-map-card-bar strong{display:block;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-style:italic;font-weight:800;font-size:28px;line-height:1;text-transform:uppercase}
.m-map-go{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--m-red);font-size:20px;font-weight:700;box-shadow:0 8px 20px #ef001055}
.road-journey .discovery .map-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0}
.road-journey .discovery .map-option,.road-journey .discovery .map-option.selected{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:76px;padding:10px 6px;border:1px solid var(--m-line);border-radius:16px;background:var(--m-glass);color:#fff;text-align:center}
.road-journey .discovery .map-option svg,.road-journey .discovery .map-option.selected svg{width:22px;height:22px;color:#ff2c45}
.road-journey .discovery .map-option span{font-size:13px;font-weight:600;line-height:1.25}
.road-journey .discovery .map-option small{display:none}

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

/* ---------- Partners ---------- */
.road-journey #vendors{display:flex;flex-direction:column}
#vendors>*:not(.m-sec-bg){position:relative;z-index:2}
#vendors .vendor-heading,#vendors .vendor-categories,#vendors .vendor-pitch,.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}
.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:block;width:100%;min-width:0;padding:0!important;border:0;background:none;box-shadow:none}
.partner-directory h3{margin:0 0 20px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:clamp(36px,10.6vw,48px);line-height:.94;color:#fff}
.partner-directory h3 .red-text{color:var(--m-red)}
.partner-directory .partner-brands{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;text-align:center}
.partner-directory .partner-brands article{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:10px 10px 14px;border:1px solid var(--m-line);border-radius:18px;background:linear-gradient(165deg,#17181c,#0c0d0f);text-align:center}
.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:78px;width:auto;padding:8px 18px;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:12px 0 4px;font-size:15.5px;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:5px;right:5px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#000000a6;border:1px solid #ffffff2e;color:#fff;font-size:13px;line-height:1}
.m-card-link:focus-visible{outline:2px solid #fff;outline-offset:2px}
.partner-directory .partner-brands article:last-child{grid-column:1/-1;display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:2px 14px;padding:16px;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:62px;height:66px;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:24px;line-height:1}
.partner-directory .partner-brands article:last-child p{text-transform:none;letter-spacing:0;font-size:14px;color:var(--m-body)}
.partner-directory .partner-brands .m-brand-cta[hidden],.partner-directory .partner-brands .m-brand-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;margin:14px 0 0;padding:12px 18px;border-radius:999px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 26px #ef001033}
.m-partner-note[hidden],.m-partner-note{display:block;margin:14px 0 0;font-size:12px;line-height:1.5;color:var(--m-muted)}

/* ---------- From the scene ---------- */
.road-journey>section.mobile-events{display:block}
.mobile-events>.kicker,.mobile-events .mobile-events-note,.mobile-events .mobile-map-cta{display:none!important}
.mobile-events h2,.m-events-track{position:relative;z-index:2}
.mobile-events h2{margin:0}
.m-events-track{display:grid;grid-auto-flow:column;grid-auto-columns:74%;gap:12px;margin:22px calc(var(--m-gutter) * -1) 0;padding:2px var(--m-gutter) 4px;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 var(--m-gutter);scrollbar-width:none}
.m-events-track::-webkit-scrollbar{display:none}
.m-events-track li{scroll-snap-align:start;min-width:0}
.mobile-events .mobile-event{display:flex;flex-direction:column;height:100%;margin:0;padding:0;border:1px solid var(--m-line);border-radius:20px;overflow:hidden;background:#0e0f12e6;color:#fff;text-decoration:none;box-shadow:0 18px 36px #0009}
.mobile-events .mobile-event img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:contain;background:#000;border-radius:0}
.mobile-events .mobile-event.is-spot img{background:#fff;padding:12px}
.mobile-events .mobile-event div{display:flex;flex-direction:column;gap:4px;padding:14px 14px 16px}
.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{margin:2px 0 0;font-size:17px;line-height:1.25}
.mobile-events .mobile-event span{font-size:13.5px;color:var(--m-muted)}
.mobile-events .mobile-event:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* ---------- FAQ ---------- */
.road-journey .faq{display:block!important}
.road-journey .faq>*{margin:0;padding:0;background:none!important}
.road-journey .faq>div:first-child{position:relative;padding-right:96px!important;margin-bottom:18px}
.road-journey .faq h2{margin:0}
.faq-art{display:contents}.faq-q{display:none}
.m-faq-titi[hidden],.m-faq-titi{position:absolute;right:-6px;top:50%;display:block;width:auto;height:96px;transform:translateY(-50%) rotate(6deg);filter:drop-shadow(0 10px 16px #000b)}
.road-journey .faq-list details{padding:0;margin:0 0 8px;border:1px solid var(--m-line)!important;border-radius:16px;background:var(--m-glass)}
.road-journey .faq-list details:first-child{padding-top:0}
.road-journey .faq-list summary{position:relative;display:flex;align-items:center;min-height:58px;padding:14px 52px 14px 16px;list-style:none;font-size:15.5px;line-height:1.35;font-weight:600;color:#fff;cursor:pointer}
.road-journey .faq-list summary::-webkit-details-marker{display:none}
.road-journey .faq-list summary:after{content:'+';position:absolute;right:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ffffff12;color:#ff3a50;font-size:19px;line-height:1}
.road-journey .faq-list details[open] summary:after{content:'\2212';background:var(--m-red);color:#fff}
.road-journey .faq-list p{margin:0;padding:0 16px 16px;font-size:14.5px;line-height:1.6;color:var(--m-body)}

/* ---------- Closing call to action ---------- */
.road-journey .final-invite{display:block!important;position:relative;margin:0!important;width:auto!important;padding:24px var(--m-gutter) 48px!important;text-align:center}
.road-journey .final-invite>*:not(.mobile-ending){display:none!important}
.road-journey .final-invite .mobile-ending[hidden],.road-journey .final-invite .mobile-ending{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;max-width:440px;margin:0 auto;padding:0;background:none}
.m-ending-bg{position:absolute;z-index:0;top:-24px;left:calc(var(--m-gutter) * -1);width:calc(100% + var(--m-gutter) * 2);height:440px;object-fit:cover;opacity:.85;-webkit-mask-image:linear-gradient(180deg,#000 40%,transparent);mask-image:linear-gradient(180deg,#000 40%,transparent);pointer-events:none}
.mobile-ending>*:not(.m-ending-bg){position:relative;z-index:1}
.m-titi{display:block;width:auto;height:190px;margin:36px 0 8px;object-fit:contain;filter:drop-shadow(0 22px 34px #000d) drop-shadow(0 0 50px #ef001040)}
.road-journey .mobile-ending h2{margin:0 0 24px;font-size:clamp(36px,10.6vw,48px);text-align:center}
.road-journey .mobile-ending .primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin:0;padding:14px 20px;border-radius:999px;font-size:14px;letter-spacing:.07em;box-shadow:0 10px 30px #ef001040}
.road-journey .mobile-ending .m-ending-partner{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;margin:10px 0 0;padding:12px 20px;border:1px solid #ffffff5c;border-radius:999px;background:#0000004d;color:#fff;font-size:13px;font-weight:600;letter-spacing:.07em}
.road-journey .mobile-ending .m-footnote{margin:22px 0 0;max-width:30em;font-size:12px;line-height:1.55;color:var(--m-muted)}

/* ---------- Footer ---------- */
.tt-footer{display:flex!important;flex-direction:column;align-items:stretch;gap:22px!important;padding:32px var(--m-gutter) 28px!important;background:#030304!important;border-top:1px solid #1f1f22}
.tt-footer>*{width:100%;max-width:none;min-width:0;grid-column:auto!important}
.tt-footer nav{position:static!important;inset:auto!important;width:100%;min-width:0;margin:0;padding:0!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;transform:none!important}
.tt-footer .footer-brand{min-height:44px}
.tt-footer .footer-brand img{width:auto;height:66px;border-radius:0;background:none;object-fit:contain}
.tt-footer .footer-brand strong,.tt-footer-intro>p,.tt-footer-intro>small,.tt-footer>nav:not(.mobile-footer-nav),.tt-footer-join{display:none!important}
.tt-footer .mobile-footer-nav[hidden],.tt-footer .mobile-footer-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;align-items:stretch}
.tt-footer .mobile-footer-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;color:#e4e4e6;border-bottom:1px solid #18181b}
.tt-footer-bottom{display:flex;flex-direction:column;align-items:center!important;gap:10px;padding-top:6px;border:0!important;font-size:12px;line-height:1.6;text-align:center;color:var(--m-muted)}
.tt-footer .tt-footer-bottom nav{display:flex!important;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:4px 18px}
.tt-footer-bottom nav a{display:flex;align-items:center;min-height:44px;font-size:13px}

/* ---------- Sticky waitlist bar + back to top ---------- */
.m-sticky-cta[hidden],.m-sticky-cta{display:flex;align-items:center;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:22px var(--m-gutter) max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#0000 0,#000000d9 42%);transform:translateY(110%);visibility:hidden;transition:transform .28s ease,visibility 0s linear .28s;pointer-events:none}
.m-sticky-cta.is-visible{transform:none;visibility:visible;transition:transform .28s ease;pointer-events:auto}
.m-sticky-cta .primary{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;min-height:52px;padding:12px 18px;border-radius:999px;font-size:14px;letter-spacing:.07em;box-shadow:0 10px 30px #ef001040}
.m-top{position:relative;display:grid;place-items:center;flex:none;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:#16171bf2;color:#fff;font-size:20px;font-weight:700;line-height:1;box-shadow:0 8px 22px #000a}
.m-top-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible;pointer-events:none}
.m-top-track,.m-top-arc{fill:none;stroke-width:2.5}
.m-top-track{stroke:#ffffff26}
.m-top-arc{stroke:#ff2442;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;filter:drop-shadow(0 0 3px #ff2442) drop-shadow(0 0 7px #ff244299);transition:stroke-dashoffset .12s linear}
.m-top>span{position:relative}
.m-top:focus-visible{outline:2px solid #fff;outline-offset:3px}
.m-top-float[hidden],.m-top-float{display:grid;position:fixed;right:var(--m-gutter);bottom:max(16px,calc(env(safe-area-inset-bottom) + 12px));z-index:44;width:48px;height:48px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility 0s linear .25s}
.m-top-float.is-visible{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s}

/* ---------- Top progress road ---------- */
.m-progress[hidden],.m-progress{display:block;position:fixed;top:0;left:0;right:0;z-index:46;height:13px;pointer-events:none;opacity:0;transition:opacity .25s}
.m-progress.is-visible{opacity:1}
.m-progress-road{position:absolute;left:0;right:0;top:0;height:12px;background:#141416;border-bottom:1px solid #2f2f33;box-shadow:0 2px 8px #0008;overflow:hidden}
.m-progress-road:after{content:'';position:absolute;left:0;right:0;top:5.5px;height:1px;background:repeating-linear-gradient(90deg,#d9d9cc99 0 8px,transparent 8px 18px)}
.m-progress-fill{position:absolute;left:0;top:0;bottom:0;width:100%;transform-origin:0 50%;transform:scaleX(var(--m-progress,0));background:linear-gradient(90deg,#2a0005,#7d0010)}
.m-progress-car{position:absolute;top:-3px;left:0;width:12px;height:18px;background:url('road-f1-v1.sprite.webp') center/contain no-repeat;transform:translateX(calc(var(--m-progress,0) * (100vw - 20px) + 4px)) rotate(-90deg);filter:drop-shadow(0 2px 2px #000c)}

/* ---------- Scroll reveal (added by mobile-v2.js only when motion is allowed) ---------- */
.m-reveal{opacity:0;transform:translateY(16px);transition:opacity .3s ease,transform .3s ease;transition-delay:var(--m-delay,0ms)}
.m-reveal.m-in{opacity:1;transform:none}

/* ---------- Dialogs ---------- */
dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:28px 20px;border-radius:20px;overflow:auto}
dialog h2{font-size:32px}
dialog input:not([type=checkbox]),dialog select{font-size:16px;min-height:48px}
dialog .close{min-width:44px;min-height:44px}
#early-access>.kicker{display:none}
select.has-choice-chips{display:none!important}
.m-choice[hidden],.m-choice{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.m-choice-chip{min-height:44px;padding:8px 14px;border:1px solid #cfd0d6;border-radius:999px;background:#fff;color:#18181b;font-size:14px;font-weight:600;line-height:1.25;text-align:center}
.m-choice-chip[aria-pressed="true"]{border-color:var(--m-red);background:var(--m-red);color:#fff;box-shadow:0 6px 16px #ef001033}
.m-choice-chip:focus-visible{outline:3px solid #ff6570;outline-offset:2px}
.m-choice-chip:disabled{opacity:.5}
#business-category+.m-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
#business-category+.m-choice .m-choice-chip{border-radius:14px;padding:10px 12px}
.m-map-sheet{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#0a0a0b;color:#fff;overflow:hidden;color-scheme:dark}
.m-map-sheet[open]{display:flex;flex-direction:column}
.m-map-sheet::backdrop{background:#000}
.m-map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px var(--m-gutter);border-bottom:1px solid #222}
.m-map-head strong{display:flex;align-items:center;gap:8px;font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:800;font-style:italic;text-transform:uppercase;font-size:24px}
.m-map-head strong img{width:auto;height:36px}
.m-map-head strong em{font-style:inherit;color:var(--m-red)}
.m-map-close{width:44px;height:44px;border:1px solid #333;border-radius:50%;background:#151517;color:#fff;font-size:24px;line-height:1}
.m-map-frame{position:relative;flex:1;min-height:0;background:#101113}
.m-map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.m-map-frame:empty:before{content:'Loading the map\2026';position:absolute;inset:0;display:grid;place-items:center;color:var(--m-muted);font-size:14px}
.m-map-note{margin:0;padding:8px var(--m-gutter) max(8px,env(safe-area-inset-bottom));font-size:11.5px;color:var(--m-muted);border-top:1px solid #222}

/* ---------- Small phones ---------- */
@media (max-width:370px){
 :root{--m-gutter:14px}
 .hero h1{font-size:clamp(42px,14.2vw,56px)}
 .m-region-chips button{font-size:12.5px}
 .m-tiles img{height:74px}
 .m-tiles h3{font-size:20px}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
 .m-sticky-cta,.m-sticky-cta.is-visible,.m-progress,.m-top-float,.m-top-float.is-visible,.m-region-chips button,.m-top-arc{transition:none}
 .m-reveal{opacity:1;transform:none;transition:none}
}
}

/* Liquid glass on every board (owner, 2026-10-06), the same recipe as the "Inside the app" tiles,
   with soft red light behind each section so the frost has colour to blur. */
: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)}
.m-how-step,.road-journey .discovery .map-option,.road-journey .discovery .map-option.selected,.partner-directory .partner-brands article,.mobile-events .mobile-event,.road-journey .faq-list details,.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#vendors,.road-journey>section.mobile-events,.road-journey>section.faq,.road-journey>section.discovery{background-image:radial-gradient(60% 34% at 0 30%,rgba(239,0,16,.32),transparent 70%),radial-gradient(55% 30% at 100% 70%,rgba(255,58,80,.22),transparent 70%),radial-gradient(50% 26% at 30% 76%,rgba(255,255,255,.07),transparent 70%)!important}
/* (Each glow above fades out inside its section, so none is cut at a section edge.) */

/* State dropdown on phones (owner, 2026-10-24: every Malaysian state is too many for chips). Same styled menu as
   desktop-v3.css (form-select.js builds it); the native select stays as the form value, visually hidden. */
@media (max-width:760px){
#early-access select[data-dropdown].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 select[data-dropdown]+.d-select[hidden],#early-access select[data-dropdown]+.d-select{position:relative;display:block;margin-top:8px}
#early-access .d-select-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;margin:0;padding:12px 12px 12px 16px;border:1px solid #c9c9ce;border-radius:14px;background:#fff;color:#111;font:inherit;font-size:16px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}
#early-access .d-select.is-open .d-select-button,#early-access .d-select-button:focus-visible{border-color:var(--m-red,#ef0010);box-shadow:0 0 0 4px rgba(239,0,16,.12);outline:none}
#early-access .d-select-chevron{flex:none;width:28px;height:28px;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 6l4 4 4-4'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .18s ease,background-color .18s ease}
#early-access .d-select.is-open .d-select-chevron{transform:rotate(180deg);background-color:#ffe8eb}
#early-access .d-select-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;max-height:min(320px,46vh);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;margin:0;padding:6px;list-style:none;border:1px solid #e7e7eb;border-radius:16px;background:#fff;box-shadow:0 20px 44px rgba(15,15,20,.22),0 2px 8px rgba(15,15,20,.08)}
#early-access .d-select-list[hidden]{display:none}
#early-access .d-select-list:focus,#early-access .d-select-list:focus-visible{outline:none}
#early-access .d-select.is-up .d-select-list{top:auto;bottom:calc(100% + 6px)}
#early-access .d-select-option{position:relative;display:flex;align-items:center;min-height:46px;margin:0;padding:10px 44px 10px 12px;border-radius:11px;color:#18181b;font-size:16px;line-height:1.3;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
#early-access .d-select-option+.d-select-option{margin-top:2px}
#early-access .d-select-option.is-active{background:#f4f4f6}
#early-access .d-select-option[aria-selected=true]{background:#fff1f2;color:#c40018;font-weight:700}
#early-access .d-select-option[aria-selected=true]:after{content:'';position:absolute;right:12px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--m-red,#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='M3.5 8.5l3 3 6-6.5'/%3E%3C/svg%3E") center/12px no-repeat}
}
