/* RAFINO — DARK FUTURISTIC CONCEPT V1
   This stylesheet intentionally overrides the original, keeping its accessible JS interactions.
   No library/build tooling required. Adjust brand tokens below to iterate quickly. */
:root{
  --navy:#050b14; --ink:#f2f7ff; --blue:#7ac8ff; --muted:#9aaec1;
  --line:#ffffff1c; --surface:#0c1725; --surface-2:#101e30;
  --glow:#4a9ddb; --font:"Manrope",Arial,sans-serif;
}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{background:#050b14;color:var(--ink);overflow-x:hidden;background-image:radial-gradient(circle at 85% 10%,#0b2d4860 0%,transparent 25%),radial-gradient(circle at 12% 54%,#17335526 0%,transparent 28%)}
::selection{background:#6dbff9;color:#02111f}
:focus-visible{outline-color:#75caff}
.section-space{padding-block:120px}
.content-shell{max-width:1290px}
.eyebrow{color:#77b6dc;letter-spacing:2.1px;font-size:10px}
h2{font-size:clamp(42px,5.5vw,76px);letter-spacing:-3.8px;font-weight:600;line-height:1.12}
h2 span{color:#86ceff}
.text-link{color:#c0e8ff;transition:color .25s ease}
.text-link:hover{color:white}
.button{border-radius:30px;transition:transform .2s,background .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px)}
.button-dark{background:linear-gradient(120deg,#77cdff,#2e88d0);color:#061827;box-shadow:0 8px 32px #1787ca45;font-weight:800}
.button-dark:hover{background:linear-gradient(120deg,#a4e2ff,#58baff);color:#031726;box-shadow:0 12px 40px #278edc55}
.status-dot{background:#83d8ff;box-shadow:0 0 12px #4eb6ff7c,0 0 0 4px #83d8ff19}
/* Navigation */
.site-header{position:sticky;top:0;z-index:20;background:#050b14e8;backdrop-filter:blur(20px);border-bottom:1px solid #d8edff12}
.header-inner{height:82px;max-width:1510px}
.wordmark{font-size:30px;font-weight:800;color:#eef8ff;letter-spacing:-1.7px}
.wordmark::after{content:"";display:inline-block;width:5px;height:5px;margin-left:4px;margin-bottom:18px;background:#61c9ff;border-radius:50%;box-shadow:0 0 12px #61c9ff}
.header-wordmark{display:inline-flex;align-items:center;gap:10px}
.header-wordmark::after{content:none}
.brand-orb{width:44px;height:44px;flex:none;object-fit:cover;clip-path:circle(40% at 50% 48%);transform:scale(1.18)}
.main-nav{gap:36px}
.main-nav>a{font-size:12px;color:#acb9c8;transition:color .2s}
.main-nav>a:hover{color:#e4f7ff}
.main-nav .button{background:#10293e;border:1px solid #285470;color:#d2eeff;box-shadow:none;font-size:11px}
.main-nav .button:hover{background:#183e5a;border-color:#4a9ddb;color:white}
/* Hero */
.hero.page-shell{width:calc(100% - 32px);max-width:1680px;margin-top:14px}
.hero{min-height:690px;height:min(790px,calc(100svh - 125px));border:1px solid #2e65842e;border-radius:18px;background:#071523;box-shadow:inset 0 0 0 1px #ffffff06}
.hero::before{content:"";position:absolute;pointer-events:none;z-index:-1;inset:0;background:linear-gradient(120deg,#7bc8ff13,transparent 42%),radial-gradient(circle at 67% 40%,#53b5ff0e,transparent 38%)}
.hero-image{width:78%;left:auto;right:0;object-position:64% 57%;filter:brightness(.77) saturate(.72) contrast(1.12)}
.hero-shade{background:linear-gradient(90deg,#05111ff9 0%,#05111ffa 25%,#05111fdb 40%,#05111f8d 54%,#05111f0f 82%),linear-gradient(0deg,#04101fe8 0%,#04101f00 33%),linear-gradient(180deg,#051322b5 0%,transparent 35%)}
.hero-copy{padding:clamp(92px,10vh,140px) 0 0 7%;width:72%;max-width:930px;z-index:2}
.hero-copy .eyebrow{color:#91c7e8;font-size:11px;letter-spacing:2.3px}
.hero h1{font-weight:600;font-size:clamp(68px,7.8vw,120px);line-height:1.055;letter-spacing:-7px;margin-top:28px;text-shadow:0 1px 30px #04131e39}
.hero h1 span{color:#88cfff;background:linear-gradient(110deg,#e3f7ff,#71bded);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-description{color:#bdd0dc;font-size:15px;line-height:1.9;margin-top:31px;max-width:480px}
.hero-actions{margin-top:39px;gap:32px}
.hero-actions .button{min-height:55px;padding:15px 27px}
.hero-actions .text-link{color:#daeaf3}
.hero-bottom{left:7%;right:5%;bottom:30px}
.hero-bottom>p{color:#c0cad8;font-size:11px}
.hero-index{color:#61b7ed}
.hero-view{color:#ccedff;background:#0716269a;border-color:#d5efff40;border-radius:30px;padding-inline:18px}
.hero-view:hover{color:#061726;background:#d5f0ff}
.hero-orbit{position:absolute;right:7%;bottom:95px;z-index:2;width:156px;height:156px;display:grid;place-items:center;opacity:.88;pointer-events:none}
.orbit-ring{width:112px;height:112px;border:1px solid #b9eaff60;transform:rotate(27deg) scaleX(1.35);border-radius:50%;box-shadow:0 0 17px #4aa9e91d, inset 0 0 16px #4aa9e913}
.orbit-ring::before{content:"";position:absolute;inset:-21px;border-radius:50%;border:1px dotted #c2e8ff39}
.orbit-core{position:absolute;width:14px;height:14px;background:#bceeff;border-radius:50%;box-shadow:0 0 16px 4px #57bfff,0 0 45px 9px #57bfff62;animation:orb-breathe 4s ease-in-out infinite}
.orbit-text{position:absolute;bottom:-4px;white-space:nowrap;font-size:7px;color:#c9e9ff;letter-spacing:1.2px}
.orbit-text i{display:inline-block;width:4px;height:4px;border-radius:50%;margin:0 8px 2px;background:#5bb8f7}
@keyframes orb-breathe{50%{transform:scale(1.23);box-shadow:0 0 20px 6px #57bfff,0 0 65px 15px #57bfff62}}
/* Connected travel strip, matching the supplied reference. */
.connection-strip{position:relative;padding:34px 4px 26px;border-bottom:0;gap:32px}
.connection-strip::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,#6c9fbb1c,#79b5d55c 50%,#6c9fbb1c)}
.connection-strip .strip-title{display:flex;align-items:center;gap:22px;min-width:0;font-size:9px;font-weight:600;line-height:1.6;letter-spacing:2.5px;text-transform:uppercase;color:#8ce2ff}
.strip-accent{width:60px;height:1px;flex:none;background:linear-gradient(90deg,#b9eaff,#4c8aaf);box-shadow:0 0 8px #8cdaff80}
.strip-tagline{font-size:9px;font-weight:600;line-height:1.6;letter-spacing:2.1px;text-transform:uppercase;color:#6895b1;text-align:right}
/* Network section inspired by storyboard panel 07 */
.network-showcase{position:relative;isolation:isolate;display:grid;grid-template-columns:.92fr 1.25fr;gap:10px;min-height:580px;margin-top:112px;border:1px solid #42749a55;border-radius:20px;overflow:hidden;background:radial-gradient(circle at 70% 40%,#123653 0%,transparent 52%),linear-gradient(120deg,#091827,#06111f 58%,#091a2b);box-shadow:0 40px 110px #0008}
.network-showcase:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#5f9dc710 1px,transparent 1px),linear-gradient(90deg,#5f9dc710 1px,transparent 1px);background-size:50px 50px;mask-image:linear-gradient(90deg,transparent 18%,black 100%)}
.network-backdrop{pointer-events:none;position:absolute;inset:0;background:radial-gradient(circle at 67% 47%,#5eb5ff12,transparent 33%)}
.network-intro{position:relative;z-index:3;padding:90px 0 70px 72px;display:flex;flex-direction:column;align-items:flex-start}
.network-intro h2{font-size:clamp(45px,4vw,62px);margin-top:39px;letter-spacing:-3.5px}
.network-intro h2 span{white-space:nowrap}
.network-intro>p:not(.eyebrow){margin-top:28px;color:#a8bfd0;font-size:14px;line-height:1.85;max-width:390px}
.network-intro .text-link{margin-top:25px}
.network-note{font-size:8px;letter-spacing:1.3px;color:#658da9;margin-top:auto;padding-top:30px}
.network-map{position:relative;min-width:0;align-self:stretch;overflow:hidden}
.network-path{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.network-path .route-glow{opacity:.62}
.network-path .route-under{stroke:url(#flow-line);stroke-width:3.5;filter:drop-shadow(0 0 3px #7ac6ff)}
.network-path .route-dash{stroke:#eefcff;stroke-width:1.5;stroke-dasharray:8 24;opacity:.6;animation:route-flow 13s linear infinite}
.network-path .map-secondary{stroke:#4a92c8;stroke-width:1;opacity:.27}
.network-path .route-stops circle{fill:#061e33;stroke:#c4edff;stroke-width:2.5;filter:drop-shadow(0 0 12px #72ceff)}
.network-path .route-cores circle{fill:#94d9ff}
.route-endpoint-icon{fill:#091c2c;stroke:#c4edff;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px #72ceff40)}
.route-location circle{fill:none}
.route-home .home-door{fill:none}
@keyframes route-flow{to{stroke-dashoffset:-640}}
.map-label{position:absolute;z-index:2;padding:13px 16px;min-width:160px;border:1px solid #8bc9ff24;border-radius:8px;background:#071829c4;backdrop-filter:blur(12px);box-shadow:0 6px 25px #0002}
.map-label span{display:block;color:#72beed;font-size:9px;font-weight:700;letter-spacing:1.5px}
.map-label strong{display:block;color:#e4f3fe;font-size:12px;font-weight:600;margin-top:7px}
.map-label-one{left:12%;top:69%}.map-label-two{left:40%;top:45%}.map-label-three{right:4%;top:7%}
.map-meta{position:absolute;right:32px;bottom:27px;font-size:8px;letter-spacing:1.4px;color:#779db8}
.map-meta span{margin-left:13px;color:#b2e4ff}
/* Stages */
.experience{padding-top:140px}
.section-heading{margin-bottom:48px}
.section-heading .eyebrow{color:#80bdde}
.section-intro{color:#99afc0}
.journey-tabs{border-color:#ffffff20;margin-bottom:20px}
.journey-tabs button{color:#93a8bc;min-height:78px;transition:background .2s,color .2s}
.journey-tabs button+button{border-color:#ffffff20}
.journey-tabs button:hover{background:#162b3e;color:#e6f4ff}
.journey-tabs [aria-selected="true"]{background:#112b44;color:#e0f4ff}
.journey-tabs [aria-selected="true"]::after{height:2px;background:#78ccff}
.journey-tabs [aria-selected="true"] .tab-index{color:#77ccff}
.tab-index{color:#6c879b}
.scene-panel{grid-template-columns:1.32fr 1fr;min-height:500px;border:1px solid #ffffff14;border-radius:14px;background:linear-gradient(135deg,#122436,#0b1828)}
.scene-visual{min-height:500px}
.scene-visual>img{filter:saturate(.67) brightness(.81)}
.scene-visual:after{background:linear-gradient(transparent,#061624cc)}
.scene-copy{padding:60px 54px 32px}
.scene-copy .eyebrow{color:#83c1e9}
.scene-copy h3{color:#f0f7ff;letter-spacing:-1.6px;font-size:clamp(31px,3vw,45px)}
.scene-copy>p:not(.eyebrow){color:#a3b9c9;font-size:14px}
.scene-count{color:#edf7ff}
.scene-count span{color:#6b8aa1}
.image-expand{background:#081a2dab}
/* Companion */
.network-showcase + .companion{margin-top:clamp(72px,8vw,120px)}
.companion{background:radial-gradient(circle at 22% 40%,#173c5c65,transparent 37%),linear-gradient(140deg,#0b1929,#091320);border-top:1px solid #22466065;border-bottom:1px solid #22466065}
.companion-inner{grid-template-columns:1.05fr 1fr;gap:80px;padding-block:85px}
.orb-visual{isolation:isolate}
.orb-visual:after{content:"";position:absolute;pointer-events:none;inset:5%;border-radius:50%;background:radial-gradient(circle,#54aefb29,transparent 60%);z-index:-1}
.orb-visual img{mix-blend-mode:screen;opacity:.69;filter:saturate(.8) contrast(1.22) brightness(.65);mask-image:radial-gradient(circle,#000 45%,transparent 73%)}
.orb-caption{color:#80a6c3}
.companion-copy .eyebrow{color:#82bddf}
.companion-copy h2{font-size:clamp(42px,4.8vw,67px)}
.companion-lead{color:#e6f3ff;font-size:19px}
.companion-copy>p:not(.eyebrow):not(.companion-lead){color:#9db2c4}
.travel-modes{border-color:#ffffff24}
.travel-modes span{color:#d5e9f7}
.travel-modes .icon{color:#8accf9}
.travel-modes i{color:#7990a4}
/* Launch */
.launch-section{padding-block:122px 0}
.launch-card{border-radius:18px;border:1px solid #4484a64a;background:#07192a;min-height:480px;padding:76px 70px 75px}
.launch-art{background-image:linear-gradient(90deg,#07192a 5%,#07192ae8 34%,#07192a4d 72%,#07192a38 100%),url("assets/connected-route.svg");background-size:100% 100%,75% auto;opacity:.92;filter:saturate(.82)}
.launch-copy h2{font-size:clamp(43px,4.9vw,67px)}
.launch-copy h2 span{color:#8ed5ff}
.launch-copy>p:not(.eyebrow){color:#b3c6d6}
.store-button{border-radius:9px;background:#122e48b8;border-color:#5790b05e;color:#eef9ff;transition:background .2s, transform .2s}
.store-button:hover{background:#d7efff;color:#071626;transform:translateY(-2px)}
.launch-side-note{color:#7da2bd}
/* FAQs */
.questions-intro h2 span{color:#84ceff}
.questions-intro>p:last-child{color:#92aabb}
.faq-list{border-color:#ffffff2d}
.faq-list details{border-color:#ffffff25}
.faq-list summary{color:#dae8f3}
.faq-list summary:hover{color:#94d5ff}
.faq-list details>p{color:#98b2c6}
.faq-plus{color:#8bcfff}
/* Footer */
.site-footer{border-top:1px solid #ffffff1e;color:#9eb4c7}
.footer-wordmark{color:#ecf8ff}
.footer-main>p{color:#9cb5c9}
.back-top{color:#c4def0}
.footer-bottom{border-top:1px solid #ffffff1a}
.footer-bottom nav{color:#a6c0d1}
.footer-status{color:#a6c0d1}
/* Native modal preserved */
.launch-dialog,.gallery-dialog{background:#0b1c2e;color:#eff8ff;border:1px solid #6fa8ca68}
.launch-dialog .eyebrow{color:#8fd3f8}
.launch-dialog>p:not(.eyebrow){color:#a9c4d9}
.launch-dialog .dialog-mark{background:#123c5c;color:#8bdeff}
.launch-dialog .platform-note{color:#9bc3df}
.dialog-close,.gallery-close{color:#d9eefe}
/* Responsive */
@media(max-width:1100px){.network-intro{padding-left:46px}.network-intro h2{font-size:49px}.network-intro h2 span{white-space:normal}.network-showcase{min-height:540px}.map-label{min-width:135px;padding:11px}.map-label-two{left:35%}.scene-copy{padding:48px 34px 30px}}
@media(max-width:800px){.hero{height:680px;min-height:0}.hero-copy{padding-top:95px;width:82%}.hero h1{font-size:clamp(64px,9vw,84px);letter-spacing:-4px}.hero-image{width:100%;object-position:65% center}.hero-shade{background:linear-gradient(90deg,#05111fff 0%,#05111ff2 23%,#05111fc7 49%,#05111f4a 85%),linear-gradient(0deg,#04101fe8,transparent 42%)}.hero-orbit{right:4%;bottom:80px;transform:scale(.75)}.network-showcase{grid-template-columns:1fr;min-height:840px}.network-intro{padding:50px 45px 0;min-height:320px}.network-intro h2{margin-top:20px}.network-intro>p:not(.eyebrow){margin-top:20px}.network-note{display:none}.network-map{min-height:500px}.scene-panel{min-height:460px}.scene-visual{min-height:460px}.scene-copy{padding:35px 26px}.scene-copy h3{font-size:31px}.companion-inner{gap:38px}}
@media(max-width:600px){html{scroll-padding-top:68px}.content-shell{width:calc(100% - 36px)}.site-header{position:sticky}.header-inner{height:66px;width:calc(100% - 38px)}.wordmark{font-size:27px}.main-nav{top:66px;left:0;right:0;background:#0b1928;border:1px solid #32628690;box-shadow:0 20px 40px #0009}.main-nav>a,.main-nav>a:nth-child(3){color:#d5e7f7}.menu-button{color:#e8f7ff}.hero.page-shell{width:calc(100% - 20px);margin-top:10px}.hero{height:750px;min-height:0;border-radius:12px}.hero-image{top:auto;bottom:0;height:62%;width:100%;object-position:69% bottom;filter:brightness(.55) saturate(.68)}.hero-shade{background:linear-gradient(180deg,#071422 0%,#071422 36%,#071422b8 50%,#0714221f 76%),linear-gradient(0deg,#04101fe8 0%,#04101f00 26%)}.hero-copy{padding:65px 27px 0;width:100%}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.5px}.hero h1{font-size:clamp(50px,12.3vw,66px);letter-spacing:-3.6px;margin-top:29px}.hero-description{margin-top:24px;font-size:13px;line-height:1.75;max-width:360px}.hero-description br{display:none}.hero-actions{gap:12px;align-items:flex-start;flex-wrap:wrap;margin-top:25px}.hero-actions .text-link{min-height:48px;font-size:10px}.hero-actions .button{padding:13px 17px;min-height:48px}.hero-orbit{right:11%;bottom:109px;transform:scale(.62)}.hero-bottom{left:27px;bottom:20px;right:24px}.hero-bottom>p{font-size:9px}.connection-strip{padding-block:25px}.connection-strip>p{min-width:110px}.network-showcase{margin-top:72px;min-height:710px;border-radius:12px}.network-intro{padding:39px 25px 0;min-height:310px}.network-intro .eyebrow{font-size:8px}.network-intro h2{font-size:40px;letter-spacing:-2.7px;margin-top:25px}.network-intro>p:not(.eyebrow){font-size:13px;margin-top:18px}.network-intro .text-link{margin-top:11px}.network-map{min-height:400px;margin-inline:-40px}.map-label{min-width:116px;padding:9px}.map-label span{font-size:7px}.map-label strong{font-size:10px}.map-label-one{left:20%;top:72%}.map-label-two{left:38%;top:42%}.map-label-three{right:4%;top:14%}.map-meta{font-size:7px;right:54px;bottom:12px}.section-space{padding-block:85px}.experience{padding-top:95px}.section-heading h2{font-size:44px;letter-spacing:-2.7px}.section-intro{color:#9cb4c7}.journey-tabs button{font-size:10px;padding:13px 9px}.journey-tabs [aria-selected="true"]{background:#123350}.scene-panel{grid-template-columns:1fr;min-height:0}.scene-visual{min-height:0;height:260px}.scene-copy{min-height:305px;padding:29px 28px}.scene-copy h3{font-size:35px}.scene-copy>p:not(.eyebrow){font-size:13px}.companion-inner{padding-block:66px;gap:18px}.companion-copy h2{font-size:43px}.orb-visual img{opacity:.78}.launch-section{padding-block:90px 0}.launch-card{padding:42px 27px 65px;min-height:0}.launch-copy h2{font-size:39px}.launch-art{background-size:100% 100%,160% auto}.questions{gap:30px}.questions-intro h2{font-size:43px}.footer-main{padding-block:25px}.gallery-dialog{background:#0a1929}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.network-path .route-dash,.orbit-core{animation:none}.button,.store-button{transition:none}}

/* Follow the SVG stops even when the route is letterboxed at different screen sizes. */
.network-map{container-type:inline-size}
.map-label-one{top:calc(50% + 9.079cqw + 30px)}
.map-label-two{top:calc(50% - 6.711cqw + 24px)}
.map-label-three{top:calc(50% - 22.632cqw + 24px);bottom:auto}

@media (min-width:801px) and (max-width:1100px){
  .network-intro h2{font-size:clamp(38px,4.45vw,49px)}
}

/* Keep the strip, new heading and route endpoints inside the mobile card. */
@media (max-width:600px){
  .connection-strip{flex-direction:column;align-items:stretch;gap:15px;padding:26px 4px 24px}
  .connection-strip .strip-title{gap:16px;font-size:8px;letter-spacing:2px}
  .strip-accent{width:44px}
  .strip-tagline{align-self:flex-end;font-size:8px;letter-spacing:1.7px}
  .network-intro h2{font-size:clamp(32px,10.5vw,40px)}
  .network-map{margin-inline:0}
  .map-label-one{left:6%}
  .map-label-two{left:32%}
}

/* Companion introduction: floating orb on the left, copy on the right. */
.companion{overflow:hidden;background:radial-gradient(ellipse at 50% 68%,#12345155,transparent 58%),linear-gradient(180deg,#091624,#08121f)}
.companion .companion-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,64px);padding-block:56px 40px;text-align:left}
.companion-intro{width:100%;max-width:540px}
.companion-intro h2{font-size:clamp(42px,5vw,68px);line-height:1.12;letter-spacing:-.04em}
.companion-intro p{max-width:490px;margin:16px 0 0;color:#b3c9da;font-size:18px;line-height:1.6}
.companion-features{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 0;padding:0;list-style:none}
.companion-features li{display:flex;align-items:center;gap:12px;padding:12px 18px;border:1px solid #3b81ae66;border-radius:999px;background:#07192e66;color:#dceaf5;font-size:12px;font-weight:500;white-space:nowrap}
.companion-features .icon{width:21px;height:21px;color:#83caff;filter:drop-shadow(0 0 5px #55afff40)}
/* The PNG's transparent edges leave a visible sphere of approximately 450px. */
.companion .orb-visual{width:min(570px,100%);max-width:none;margin:0;order:initial;justify-self:center}
.companion .orb-visual img{position:relative;z-index:1;width:100%;height:auto;mix-blend-mode:normal;opacity:.92;filter:brightness(.72) saturate(.65);mask-image:none;transform-origin:center;animation:rafino-orb-float 6s ease-in-out infinite;will-change:transform}
.companion .orb-visual::after{inset:4%;background:radial-gradient(circle,#52a9ec55 0%,#3286c338 55%,transparent 72%);filter:blur(30px);opacity:.55;animation:rafino-orb-glow 6s ease-in-out infinite}
.orb-floor{position:absolute;z-index:0;left:50%;top:84%;width:78%;height:10%;border-radius:50%;background:radial-gradient(ellipse at center,#70c9f84d 0%,#3285bb26 35%,#1b5c880d 58%,transparent 75%);filter:blur(8px);pointer-events:none;transform-origin:center;animation:rafino-orb-floor 6s ease-in-out infinite}
@keyframes rafino-orb-float{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-10px,0)}
}
@keyframes rafino-orb-glow{
  0%,100%{opacity:.45;transform:scale(.98)}
  50%{opacity:.65;transform:scale(1.02)}
}
@keyframes rafino-orb-floor{
  0%,100%{opacity:.7;transform:translateX(-50%) scaleX(1)}
  50%{opacity:.5;transform:translateX(-50%) scaleX(1.04)}
}
@media(max-width:900px){
  .companion .companion-inner{grid-template-columns:minmax(0,1fr);justify-items:center;gap:8px;padding-block:36px 56px;text-align:center}
  .companion .orb-visual{width:min(480px,100%)}
  .companion-intro p{margin-inline:auto}
  .companion-features{justify-content:center}
}
@media(max-width:600px){
  .companion .companion-inner{padding-block:28px 48px}
  .companion-intro p{max-width:340px;margin-top:12px;font-size:16px}
  .companion-features{gap:8px;margin-top:24px}
  .companion-features li{gap:8px;padding:10px 12px;font-size:11px}
}
/* Coming-soon card with a dedicated India connectivity illustration. */
.launch-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:20px;min-height:480px;padding:42px 54px;background:radial-gradient(ellipse at 75% 50%,#0d34544d,transparent 65%),#061625}
.launch-copy{z-index:1;min-width:0}
.launch-copy h2{margin-top:0;font-size:clamp(30px,3.1vw,44px);line-height:1.2;letter-spacing:-.04em}
.launch-copy>p:not(.eyebrow){margin-top:24px;font-size:15px;line-height:1.8}
.launch-card .launch-art{position:relative;inset:auto;z-index:0;height:420px;min-width:0;background:none;opacity:1;filter:none}
.launch-card .launch-art::before{content:"";position:absolute;inset:-10% -12%;background:url("assets/map-grid.svg") center/contain no-repeat;opacity:.5;pointer-events:none}
.launch-art img{position:relative;display:block;width:100%;height:100%;object-fit:contain;filter:saturate(.8);transform:scale(1.13)}
.launch-card .store-buttons{margin-top:28px;gap:12px}
.launch-card .store-button{min-width:178px;min-height:60px;padding:12px 16px;background:#0a20344d}
.launch-card .store-button:hover{background:#173b56;color:#eef9ff}
.launch-card .apple-icon{fill:currentColor;stroke:none}
@media(max-width:1100px) and (min-width:801px){
  .launch-card{padding:36px;gap:12px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
  .launch-card .store-button{min-width:158px;padding:12px}
}
@media(max-width:800px){
  .launch-card{grid-template-columns:minmax(0,1fr);padding:36px 28px;gap:12px}
  .launch-copy h2{font-size:clamp(30px,5.5vw,42px)}
  .launch-card .launch-art{height:330px}
  .launch-card .store-buttons{flex-direction:row;flex-wrap:wrap;max-width:none}
  .launch-card .store-button{flex:1;min-width:155px}
}
@media(max-width:400px){
  .launch-card{padding:32px 22px}
  .launch-card .store-button{flex-basis:100%}
  .launch-card .launch-art{height:280px}
}
