/* Global redesign: everything below the hero. Hero and booking card styles live in style.css / premium.css. */
:root{--ink:#153d43;--mint:#00c89a;--mint-soft:#94f2d2;--deep:#05232a;--deep-2:#0a3139;--paper:#fafbf8;--muted:#6d8183;--line:#dfe7e3;--ease:cubic-bezier(.22,1,.36,1)}

/* Scroll progress */
.scroll-progress{position:fixed;top:0;left:0;height:2px;width:100%;background:linear-gradient(90deg,var(--mint),#7ff0cd);transform-origin:0 50%;transform:scaleX(0);z-index:100;pointer-events:none}

/* Header: aligned tabs and a larger booking button */
.site-header nav{display:flex;align-items:center;gap:36px;font-size:13.5px;font-weight:500;line-height:1}
.site-header nav>a:not(.nav-cta){display:inline-flex;align-items:center;height:44px;letter-spacing:.01em}
.site-header nav>a:not(.nav-cta):after{bottom:8px}
.site-header .nav-cta{display:inline-flex;align-items:center;gap:14px;height:56px;padding:0 30px;margin-left:8px;font-size:15px;font-weight:700;border-radius:8px;box-shadow:0 10px 30px #00c89a40;transition:background .25s,transform .25s var(--ease),box-shadow .25s}
.site-header .nav-cta span{margin:0;font-size:17px;transition:transform .3s var(--ease)}
.site-header .nav-cta:hover{transform:translateY(-1px);box-shadow:0 14px 36px #00c89a55}
.site-header .nav-cta:hover span{transform:translate(2px,-2px)}
.site-header.scrolled .nav-cta{height:52px}
@media(max-width:1050px){.site-header nav{gap:22px;font-size:12.5px}.site-header .nav-cta{height:50px;padding:0 22px;font-size:14px}}
@media(max-width:760px){.site-header nav:not(.open){display:none}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:16px 25px 24px}.site-header nav.open>a:not(.nav-cta){height:46px;font-size:15px;border-bottom:1px solid #ffffff18}.site-header nav.open .nav-cta{margin:14px 0 0;align-self:stretch;justify-content:center}}

/* Shared motion primitives */
[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
[data-split] .wi{display:inline-block}
.js-motion [data-split] .wi{transform:translateY(105%);transition:transform 1s var(--ease);transition-delay:calc(var(--i)*45ms)}
.js-motion [data-split].is-in .wi{transform:none}
.js-motion [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--delay,0ms)}
.js-motion [data-reveal].is-in{opacity:1;transform:none}
.js-motion [data-reveal="clip"]{opacity:1;transform:none;clip-path:inset(12% 12% 12% 12% round 24px);transition:clip-path 1.3s var(--ease)}
.js-motion [data-reveal="clip"].is-in{clip-path:inset(0 0 0 0 round 0px)}
.magnetic{transition:transform .35s var(--ease),background .25s,box-shadow .25s}

/* Trust rail */
.trust-rail{padding:52px 0 0;overflow:hidden}
.trust-items{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:0 0 46px;border-bottom:1px solid var(--line)}
.trust-item{display:flex;align-items:center;gap:16px}
.trust-item:nth-child(2){--delay:80ms}.trust-item:nth-child(3){--delay:160ms}.trust-item:nth-child(4){--delay:240ms}
.trust-item svg{width:46px;height:46px;padding:11px;border-radius:50%;background:#e6f6f0;color:#039b79;flex-shrink:0}
.trust-item span{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted);line-height:1.4}
.trust-item strong{font-size:14px;font-weight:600;color:var(--ink)}
.city-marquee{padding:34px 0;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee-track{display:flex;width:max-content;animation:marquee 60s linear infinite}
.marquee-track span{font:500 clamp(30px,3.6vw,54px)/1 Outfit,sans-serif;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px #b6c9c2;padding:0 26px;display:flex;align-items:center;gap:52px;white-space:nowrap}
.marquee-track span:after{content:'';width:9px;height:9px;border-radius:50%;background:var(--mint)}
.marquee-track span:nth-child(3n+1){color:var(--ink);-webkit-text-stroke:0}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Services */
.svc{padding-top:90px}
.svc-stage{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:56px;align-items:stretch}
.svc-list{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.svc-list button{all:unset;box-sizing:border-box;position:relative;display:flex;gap:22px;padding:24px 4px 24px 0;border-bottom:1px solid var(--line);cursor:pointer;color:var(--ink)}
.svc-list button:focus-visible{outline:2px solid var(--mint);outline-offset:4px}
.svc-num{font:500 12px/1.9 Outfit,sans-serif;color:#9fb2ad;min-width:24px;transition:color .3s}
.svc-text{display:flex;flex-direction:column}
.svc-name{font:500 clamp(20px,1.9vw,26px)/1.25 Outfit,sans-serif;letter-spacing:-.03em;transition:color .3s,transform .5s var(--ease)}
.svc-desc{display:block;max-height:0;opacity:0;font-size:13px;line-height:1.8;color:var(--muted);max-width:430px;transition:max-height .7s var(--ease),opacity .4s,margin .6s var(--ease);overflow:hidden}
.svc-list button[aria-selected=true] .svc-desc{max-height:140px;opacity:1;margin-top:10px}
.svc-list button[aria-selected=true] .svc-num{color:var(--mint)}
.svc-list button:not([aria-selected=true]):hover .svc-name{transform:translateX(6px);color:#0a8f70}
.svc-list button[aria-selected=false] .svc-name{color:#7c918d}
.svc-bar{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--mint);transform:scaleX(0);transform-origin:0 50%}
.svc-list button[aria-selected=true] .svc-bar{animation:svc-progress var(--svc-time,6.5s) linear forwards}
.svc-stage.paused .svc-bar{animation-play-state:paused}
@keyframes svc-progress{to{transform:scaleX(1)}}
.svc-media{position:relative;min-height:520px;border-radius:22px;overflow:hidden;background:var(--deep);isolation:isolate}
.svc-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s var(--ease)}
.svc-slide[hidden]{display:block;visibility:hidden}
.svc-slide.is-active{opacity:1;visibility:visible;z-index:1}
.svc-slide img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.12);transition:transform 7s linear}
.svc-slide.is-active img{transform:scale(1.02)}
.svc-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#031a1fcc)}
.svc-slide figcaption{position:absolute;left:32px;bottom:30px;right:200px;z-index:1;color:#fff;font:500 clamp(22px,2.2vw,30px)/1.2 Outfit,sans-serif;letter-spacing:-.03em}
.svc-slide figcaption span{display:block;font:600 10px/1 'DM Sans',sans-serif;letter-spacing:.2em;color:var(--mint-soft);margin-bottom:14px}
.svc-cta{position:absolute;right:28px;bottom:28px;z-index:2;display:inline-flex;align-items:center;gap:18px;padding:16px 22px;border-radius:40px;background:#ffffffeb;backdrop-filter:blur(10px);color:var(--ink);font-size:13px;font-weight:700}
.svc-cta span{color:#00a77f;font-size:17px}
.svc-cta:hover{background:#fff}

/* World network */
.world{position:relative;background:radial-gradient(120% 80% at 75% 0%,#0d4148 0%,var(--deep) 55%,#031a1f 100%);color:#e8f4f0;overflow:hidden;padding:120px 0 110px}
.world-glow{position:absolute;width:900px;height:900px;left:-300px;top:120px;border-radius:50%;background:radial-gradient(closest-side,#00c89a22,transparent);pointer-events:none}
.world-inner{position:relative;max-width:1180px;margin:auto}
.world-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:40px}
.world-head .kicker,.world .now-head .kicker{color:var(--mint-soft)}
.world h2{font:500 clamp(38px,4.4vw,60px)/1.06 Outfit,sans-serif;letter-spacing:-.045em;margin:0;color:#fff}
.world h2 em{font:italic 400 1em/1.1 Georgia,serif;color:var(--mint-soft);letter-spacing:-.04em}
.world-head>p{max-width:380px;font-size:14px;line-height:1.85;color:#a9c3bd;margin:0 0 6px}
.world-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:50px;align-items:center}
.globe-wrap{position:relative;aspect-ratio:1;max-width:600px;width:100%;margin:auto;cursor:grab}
.globe-wrap:active{cursor:grabbing}
#globe{width:100%;height:100%;display:block;opacity:0;transition:opacity 1.4s var(--ease);contain:layout paint size}
#globe.ready{opacity:1}
.globe-ring{position:absolute;inset:-4%;border-radius:50%;border:1px dashed #ffffff1c;animation:spin 80s linear infinite;pointer-events:none}
.globe-ring:before{content:'';position:absolute;top:50%;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 16px var(--mint)}
@keyframes spin{to{transform:rotate(360deg)}}
.globe-fallback .globe-ring{display:none}
.globe-hud{position:absolute;left:0;bottom:6%;display:flex;flex-direction:column;gap:6px;padding:18px 22px;min-width:200px;border:1px solid #ffffff1f;border-radius:14px;background:#06262bb8;backdrop-filter:blur(14px);pointer-events:none}
.hud-label{font-size:9px;letter-spacing:.22em;color:#7fa8a0}
.globe-hud strong{font:500 24px/1.1 Outfit,sans-serif;letter-spacing:-.03em;color:#fff}
#hud-meta{font-size:11px;color:#9ebdb6}
.hud-time{font:500 13px/1 'DM Sans',sans-serif;color:var(--mint-soft);font-variant-numeric:tabular-nums}
.world-panel{min-width:0}
.region-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.region-tabs button{border:1px solid #ffffff26;background:transparent;color:#cfe3de;border-radius:30px;padding:10px 16px;font-size:12px;font-weight:500;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.region-tabs button:hover{border-color:#ffffff60;color:#fff}
.region-tabs button[aria-selected=true]{background:var(--mint);border-color:var(--mint);color:#032a24;font-weight:700}
.city-list{list-style:none;margin:0;padding:0;border-top:1px solid #ffffff1a;min-height:388px}
.city-list li{border-bottom:1px solid #ffffff1a;animation:city-in .6s var(--ease) both;animation-delay:calc(var(--i)*55ms)}
@keyframes city-in{from{opacity:0;transform:translateX(18px)}}
.city-row{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:15px 6px;cursor:pointer;transition:background .25s,padding .35s var(--ease)}
.city-row:hover,.city-row.active{background:#ffffff0b;padding-left:14px}
.city-row:focus-visible{outline:2px solid var(--mint);outline-offset:-2px}
.city-code{font:600 11px/1 'DM Sans',sans-serif;letter-spacing:.12em;color:#7fa8a0}
.city-name{display:flex;flex-direction:column;gap:3px;min-width:0}
.city-name strong{font:500 18px/1.2 Outfit,sans-serif;letter-spacing:-.02em;color:#fff}
.city-name small{font-size:11px;color:#88aaa2}
.city-time{font-size:12px;color:#bcd5cf;font-variant-numeric:tabular-nums}
.city-status{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 11px;border-radius:30px;white-space:nowrap}
.city-status.live{background:var(--mint);color:#032a24}
.city-status.soon{border:1px solid #ffffff2e;color:#9fbfb8}
.world-legend{display:flex;gap:22px;margin-top:20px;font-size:11px;color:#8fb0a9}
.world-legend span{display:flex;align-items:center;gap:8px}
.dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.dot.live{background:var(--mint);box-shadow:0 0 0 4px #00c89a33}
.dot.soon{border:1px solid #9fbfb8}
.now-booking{margin-top:90px}
.now-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.now-head .kicker{margin:0}
.world .text-link{color:#fff;border-bottom:1px solid #ffffff55}
.world .text-link>span{color:var(--mint)}
.world .place-card:nth-child(2){--delay:100ms}.world .place-card:nth-child(3){--delay:200ms}
.world .place-card{height:420px;border-radius:18px}
.world .place-card>img{transition:transform 1.2s var(--ease)}
.world .place-card:hover>img{transform:scale(1.07)}
.world .place-arrow{transition:background .3s,color .3s,transform .4s var(--ease)}
.world .place-card:hover .place-arrow{background:#fff;color:var(--ink);transform:rotate(45deg)}
.world .route-note{color:#7fa39b}

/* Fleet showroom */
.showroom{background:linear-gradient(180deg,var(--paper),#eef4f1)}
.showroom-inner{padding-bottom:80px}
.stage{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-rows:auto auto;gap:10px 40px;align-items:center;padding:40px 0 0;min-height:560px}
.stage-word{position:absolute;inset:0 0 auto;top:6%;text-align:center;font:600 clamp(80px,13vw,190px)/1 Outfit,sans-serif;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #c9d9d3;white-space:nowrap;pointer-events:none;user-select:none;transition:opacity .5s}
.stage-floor{position:absolute;left:4%;width:56%;bottom:120px;height:60px;border-radius:50%;background:radial-gradient(closest-side,#0d2b2f33,transparent);filter:blur(4px)}
.stage-car{position:relative;grid-row:1;grid-column:1;aspect-ratio:16/9;width:100%}
.stage-car img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 30px 30px #0b262b26)}
.stage-car img.enter{animation:car-in 1.1s var(--ease) both}
.stage-car img.leave{animation:car-out .55s var(--ease) both}
@keyframes car-in{from{opacity:0;transform:translateX(var(--from,14%)) scale(.96)}}
@keyframes car-out{to{opacity:0;transform:translateX(var(--to,-12%)) scale(.97)}}
.stage-info{grid-row:1;grid-column:2;position:relative;z-index:1}
.stage-info>*{transition:opacity .4s,transform .6s var(--ease)}
.stage.swapping .stage-info>*{opacity:0;transform:translateY(10px)}
.stage-class{font-size:10px;font-weight:700;letter-spacing:.2em;color:#039d7a;margin:0 0 14px}
.stage-name{font:500 clamp(32px,3.4vw,46px)/1.05 Outfit,sans-serif;letter-spacing:-.04em;margin:0 0 10px;color:var(--ink)}
.stage-model{font-size:14px;color:var(--muted);margin:0 0 28px}
.stage-specs{display:grid;gap:18px;margin:0 0 30px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stage-specs div{display:grid;grid-template-columns:110px 1fr;align-items:center}
.stage-specs dt{font-size:12px;color:var(--muted)}
.stage-specs dd{margin:0;display:flex;align-items:center;gap:14px}
.stage-specs b{font:500 22px/1 Outfit,sans-serif;min-width:24px;color:var(--ink);font-variant-numeric:tabular-nums}
.meter{flex:1;height:4px;border-radius:4px;background:#dce7e3;overflow:hidden;display:block}
.meter>i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--mint),#5fe3bd);border-radius:4px;transition:width 1.1s var(--ease)}
.stage-nav{grid-row:2;grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px}
.stage-arrow{width:50px;height:50px;border-radius:50%;border:1px solid #c9d8d3;background:#fff;color:var(--ink);font-size:18px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.stage-arrow:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.stage-thumbs{display:flex;gap:12px}
.stage-thumbs button{display:flex;flex-direction:column;align-items:center;gap:6px;width:150px;padding:12px 10px 14px;border:1px solid #d8e4e0;border-radius:14px;background:#ffffffb3;cursor:pointer;color:var(--ink);font-size:12px;font-weight:600;transition:border-color .25s,background .25s,transform .35s var(--ease)}
.stage-thumbs button img{width:100%;height:58px;object-fit:contain}
.stage-thumbs button:hover{transform:translateY(-3px)}
.stage-thumbs button[aria-selected=true]{border-color:var(--mint);background:#fff;box-shadow:0 10px 30px #0b3a3214}
.stage-empty{grid-column:1/-1;text-align:center;color:var(--muted)}
.showroom .fleet-bottom{border-top:1px solid var(--line);padding-top:26px;margin-top:40px}

/* Standard */
.standard{background:#edf3ef;padding:100px 0}
.standard-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.standard-photos{position:relative;padding:0 50px 50px 0}
.standard-main{height:560px;border-radius:160px 16px 16px 16px;overflow:hidden}
.standard-main img{display:block;width:100%;height:118%;margin-top:-9%;object-fit:cover;object-position:46%;will-change:transform}
.standard-detail{position:absolute;bottom:0;right:0;width:240px;border:8px solid #edf3ef;border-radius:16px;overflow:hidden;background:#173d43;--delay:250ms}
.standard-detail img{display:block;width:100%;height:170px;object-fit:cover}
.standard-detail>span{display:block;font-size:8px;color:white;letter-spacing:.14em;padding:13px 10px}
.standard .photo-label{position:absolute;left:25px;bottom:84px;display:flex;align-items:center;gap:12px;padding:17px 20px;color:white;background:#143d43ed;border-radius:10px;backdrop-filter:blur(8px);--delay:400ms}
.standard .photo-label>span{font:500 28px Outfit,sans-serif;color:#77e6c1}
.standard .photo-label p{margin:0;font-size:11px;line-height:1.5}
.standard h2{font:500 clamp(36px,3.8vw,50px)/1.08 Outfit,sans-serif;letter-spacing:-.045em;margin:0 0 22px;color:var(--ink)}
.standard h2 em{font:italic 400 1em/1.1 Georgia,serif;color:#658d7f}
.standard .large-copy{font-size:15px;color:#607c77;line-height:1.8;margin-bottom:26px}
.standard-list{list-style:none;margin:0;padding:0;border-top:1px solid #d3e1da}
.standard-list li{display:flex;gap:22px;padding:22px 0;border-bottom:1px solid #d3e1da}
.standard-list li:nth-child(2){--delay:80ms}.standard-list li:nth-child(3){--delay:160ms}.standard-list li:nth-child(4){--delay:240ms}
.standard-list li>span{font:500 13px/1.6 Outfit,sans-serif;color:var(--mint)}
.standard-list h3{font:500 17px/1.4 Outfit,sans-serif;letter-spacing:-.01em;margin:0 0 6px;color:var(--ink)}
.standard-list p{font-size:13px;line-height:1.75;color:#6d8580;margin:0}

/* Journey */
.how-section{background:var(--paper)}
.how-section .section{padding:110px 0}
.journey{position:relative;margin:56px 0 34px}
.journey-route{position:absolute;left:12%;right:12%;top:0;width:76%;height:60px;overflow:visible}
.journey-route path{fill:none;stroke-width:1.5;vector-effect:non-scaling-stroke}
.route-base{stroke:#c9dbd3;stroke-dasharray:4 7}
.route-live{stroke:var(--mint);stroke-width:2.5!important;stroke-dasharray:1;stroke-dashoffset:1}
.journey .journey-steps{margin:0}
.journey .journey-steps:before{display:none}
.journey-steps article:nth-child(2){--delay:120ms}.journey-steps article:nth-child(3){--delay:240ms}
.journey .journey-number{background:#fff;box-shadow:0 0 0 12px var(--paper);transition:background .5s,color .5s,border-color .5s}
.journey .journey-number.lit{background:var(--mint);border-color:var(--mint);color:#fff}

/* Business */
.business{background:var(--deep);color:#e4f1ed;position:relative;overflow:hidden}
.business .section{padding:115px 0}
.business h2{color:#fff!important}
.business h2 em{color:var(--mint-soft)!important}
.business .kicker{color:var(--mint-soft)}
.business .section-aside{color:#a3bfb8}
.biz-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.biz-card{position:relative;padding:34px 28px 36px;border-radius:18px;border:1px solid #ffffff1a;background:radial-gradient(420px circle at var(--mx,50%) var(--my,-20%),#00c89a26,transparent 60%),#ffffff06;transition:border-color .35s,transform .5s var(--ease)}
.biz-card:nth-child(2){--delay:80ms}.biz-card:nth-child(3){--delay:160ms}.biz-card:nth-child(4){--delay:240ms}
.biz-card:hover{border-color:#00c89a66;transform:translateY(-6px)}
.biz-card svg{width:44px;height:44px;padding:10px;border-radius:12px;background:#00c89a1f;color:var(--mint-soft);margin-bottom:46px}
.biz-card h3{font:500 20px/1.25 Outfit,sans-serif;letter-spacing:-.02em;color:#fff;margin:0 0 12px}
.biz-card p{font-size:13px;line-height:1.75;color:#9db9b2;margin:0}
.biz-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:22px;padding:34px 36px;border-radius:18px;background:linear-gradient(110deg,#00c89a,#00a984)}
.biz-cta h3{font:500 26px/1.2 Outfit,sans-serif;letter-spacing:-.03em;color:#032a24;margin:0 0 6px}
.biz-cta p{margin:0;font-size:13px;color:#064a3c}
.business .biz-cta .primary-button{background:var(--deep);color:#fff;border-radius:8px;padding:18px 26px;gap:30px;font-size:14px}
.business .biz-cta .primary-button:hover{background:#0e3d44}

/* FAQ refinements */
.faq-list summary{transition:color .25s,padding .35s var(--ease)}
.faq-list summary:hover{padding-left:8px;color:#008b69}
.faq-list summary:after{transition:transform .35s var(--ease)}
.faq-list details[open] p{animation:faq-open .5s var(--ease)}
@keyframes faq-open{from{opacity:0;transform:translateY(-6px)}}

/* Final call to action and footer */
.last-cta{padding:150px 24px}
.cta-photo{inset:-12% 0}
.last-cta .primary-button{padding:20px 30px;font-size:15px}
.footer-word{max-width:1180px;margin:0 auto;font:600 clamp(60px,12.4vw,178px)/.9 Outfit,sans-serif;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #2f5a58;white-space:nowrap;overflow:hidden;padding-bottom:10px;user-select:none}
.footer-word span{-webkit-text-stroke:1px #00c89a80}

/* Responsive */
@media(max-width:1280px){.trust-items,.world-inner,.standard-inner{margin-left:40px;margin-right:40px}.footer-word{margin:0 40px}}
@media(max-width:1050px){
.trust-items{grid-template-columns:repeat(2,1fr);gap:26px;margin:0 6vw}
.svc-stage{grid-template-columns:1fr;gap:30px}
.svc-media{min-height:440px;order:-1}
.world{padding:90px 0}
.world-inner{margin:0 6vw}
.world-grid{grid-template-columns:1fr;gap:40px}
.globe-wrap{max-width:520px}
.world-head{flex-direction:column;align-items:start;gap:22px}
.stage{grid-template-columns:1fr;min-height:0}
.stage-info{grid-row:2;grid-column:1}
.stage-nav{grid-row:3}
.stage-floor{display:none}
.standard{padding:80px 0}
.standard-inner{margin:0 6vw;gap:50px}
.standard-main{height:480px}
.biz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.footer-word{margin:0 6vw}
}
@media(max-width:760px){
.trust-rail{padding-top:34px}
.trust-items{grid-template-columns:1fr;margin:0 22px;gap:18px;padding-bottom:30px}
.city-marquee{padding:24px 0}
.svc{padding-top:60px}
.svc-media{min-height:340px;border-radius:16px}
.svc-slide figcaption{left:22px;right:22px;bottom:84px;font-size:22px}
.svc-cta{left:22px;right:auto;bottom:22px}
.svc-list button{padding:20px 0}
.world{padding:70px 0}
.world-inner{margin:0 22px}
.globe-hud{left:0;bottom:0;padding:14px 16px;min-width:0}
.globe-hud strong{font-size:19px}
.city-row{grid-template-columns:42px minmax(0,1fr) auto;gap:12px}
.city-time{display:none}
.city-list{min-height:0}
.now-booking{margin-top:60px}
.now-head{flex-direction:column;align-items:start;gap:14px}
.world .place-card{height:340px}
.stage-word{font-size:22vw;top:2%}
.stage-thumbs button{width:96px;padding:8px 6px 10px;font-size:10px}
.stage-thumbs button img{height:40px}
.stage-arrow{display:none}
.stage-specs div{grid-template-columns:96px 1fr}
.showroom-inner{padding-bottom:70px}
.standard{padding:60px 0}
.standard-inner{display:flex;flex-direction:column;margin:0 22px;gap:45px;align-items:stretch}
.standard-photos{padding-right:30px}
.standard-main{height:400px;border-radius:100px 12px 12px 12px}
.standard-detail{width:190px}
.standard-detail img{height:130px}
.how-section .section{padding:65px 0}
.journey-route{display:none}
.business .section{padding:70px 0}
.biz-grid{grid-template-columns:1fr}
.biz-card svg{margin-bottom:26px}
.biz-cta{flex-direction:column;align-items:start;padding:28px 24px}
.business .biz-cta .primary-button{width:100%;justify-content:space-between}
.last-cta{padding:100px 22px}
.footer-word{margin:0 0 0;font-size:16vw}
}
@media(prefers-reduced-motion:reduce){[data-reveal],[data-reveal="clip"],[data-split] .wi{opacity:1!important;transform:none!important;clip-path:none!important}.marquee-track,.globe-ring{animation:none}.svc-slide img{transition:none;transform:none}}
.globe-fallback #globe{opacity:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#1d5a5e,#06262b 70%);box-shadow:0 0 120px #00c89a22}

/* Regions sit on one row; on narrow screens the row scrolls sideways. */
.region-tabs{flex-wrap:nowrap;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.region-tabs::-webkit-scrollbar{display:none}
.region-tabs button{flex:1 0 auto;white-space:nowrap;padding:10px 13px;font-size:12px}

/* Back to top */
.to-top{position:fixed;right:24px;bottom:24px;z-index:60;width:54px;height:54px;border:0;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 30px #05232a40;opacity:0;visibility:hidden;transform:translateY(16px) scale(.9);transition:opacity .35s,transform .45s var(--ease),visibility .35s,background .25s}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:#0a8f70}
.to-top svg.arrow{width:20px;height:20px;transition:transform .35s var(--ease)}
.to-top:hover svg.arrow{transform:translateY(-3px)}
.to-top .ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.to-top .ring circle{fill:none;stroke-width:2.5}
.to-top .ring .track{stroke:#ffffff26}
.to-top .ring .fill{stroke:var(--mint);stroke-dasharray:151;stroke-dashoffset:151;stroke-linecap:round}
body.flow-open .to-top{display:none}
@media(max-width:760px){.to-top{right:16px;bottom:16px;width:48px;height:48px}}

/* Email contact points */
.footer-main .footer-phone{font-size:15px!important;overflow-wrap:anywhere}
.faq-list details p a{color:#008b69;text-decoration:underline;text-underline-offset:3px}
#fare-status a{color:#008b69;font-weight:700;text-decoration:underline}

/* Navigation: sliding underline for the section on screen */
.site-header nav{position:relative}
.nav-indicator{position:absolute;left:0;bottom:24px;height:2px;border-radius:2px;background:var(--mint);opacity:0;pointer-events:none;transition:transform .5s var(--ease),width .5s var(--ease),opacity .3s}
.site-header.scrolled .nav-indicator{bottom:16px}
.site-header nav>a.active{color:var(--mint)}
.site-header nav>a.active:after{display:none}
@media(max-width:760px){.nav-indicator{display:none}}

/* Fleet showroom: tilt, light sweep and tour controls */
.stage-car{transform:perspective(1400px) rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg));transition:transform .7s var(--ease);touch-action:pan-y}
.stage-car:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,#ffffff8c 48%,transparent 60%) no-repeat;background-size:250% 100%;background-position:150% 0;-webkit-mask:var(--car) center/contain no-repeat;mask:var(--car) center/contain no-repeat;opacity:0}
.stage-car.shine:after{animation:car-shine 1.6s .55s var(--ease) both}
@keyframes car-shine{0%{opacity:1;background-position:150% 0}100%{opacity:1;background-position:-60% 0}}
.stage-ideal{display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--ink);background:#e2f3ec;border-radius:30px;padding:8px 14px;margin:-12px 0 24px}
.stage-ideal:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--mint)}
.stage-ideal:empty{display:none}
.stage-thumbs button{position:relative;overflow:hidden}
.stage-thumbs button:after{content:'';position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--mint);transform:scaleX(0);transform-origin:0 50%}
.stage.touring .stage-thumbs button[aria-selected=true]:after{animation:svc-progress var(--tour-time,5.2s) linear forwards}
.stage-play{width:50px;height:50px;border-radius:50%;border:1px solid #c9d8d3;background:#fff;cursor:pointer;display:grid;place-items:center;transition:background .25s,border-color .25s}
.stage-play:hover{border-color:var(--ink)}
.i-pause{width:12px;height:14px;border-left:4px solid var(--ink);border-right:4px solid var(--ink)}
.stage-play.is-paused .i-pause{width:0;height:0;border:0;border-left:13px solid var(--ink);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}

/* Arrivals board */
.board-section{background:linear-gradient(180deg,#edf3ef,var(--paper))}
.board-section .section{padding:20px 0 110px}
.board{background:#0b1517;border-radius:22px;padding:26px 28px 20px;box-shadow:0 40px 80px #05232a2e,inset 0 1px 0 #ffffff12;color:#e9f3ef}
.board-head,.board-row{display:grid;grid-template-columns:auto auto 1fr auto;gap:28px;align-items:center}
.board-head{padding:0 12px 14px;border-bottom:1px solid #ffffff14;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#6f8f88}
.board-head>span:nth-child(1){width:calc(5 * 30px)}
.board-head>.col-code{width:calc(3 * 30px)}
.board-head>.col-status{width:calc(10 * 30px)}
.board-row{padding:10px 12px;border-bottom:1px solid #ffffff0d;border-radius:10px;transition:background .25s}
.board-row:hover{background:#ffffff08}
.board-row:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
.flap-cell{display:flex;gap:3px}
.flap{position:relative;display:grid;place-items:center;width:27px;height:38px;border-radius:4px;background:linear-gradient(180deg,#1c2629 50%,#162023 50%);font:600 20px/1 Outfit,sans-serif;color:#f1f6f4;white-space:pre;box-shadow:inset 0 -1px 0 #00000080}
.flap:after{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:#00000040}
.board-row.is-live .col-status .flap:after{background:#0000001f}
.flap.flip{animation:flap .11s ease-in}
@keyframes flap{0%{transform:perspective(200px) rotateX(-70deg);filter:brightness(.6)}100%{transform:none}}
.col-time .flap{color:#ffd88a}
.board-row.is-live .col-status .flap{color:#032a24;background:linear-gradient(180deg,#19d6a6 50%,#00c89a 50%)}
.board-row:not(.is-live) .col-status .flap{color:#9fbfb8}
.board-foot{display:flex;align-items:center;gap:10px;padding:16px 12px 0;font-size:11px;color:#6f8f88}
.board-dot{width:8px;height:8px;border-radius:50%;background:var(--mint);animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 6px #00c89a00;opacity:.5}0%{box-shadow:0 0 0 0 #00c89a66}}
@media(max-width:1180px){.board .col-code{display:none}.flap{width:24px;height:34px;font-size:18px}.board-head>span:nth-child(1){width:calc(5 * 27px)}.board-head>.col-status{width:calc(10 * 27px)}}
@media(max-width:860px){.board{padding:18px 12px 14px;border-radius:16px}.board-head{display:none}.board-row{gap:8px 12px;grid-template-columns:auto 1fr}.board-row .col-time{grid-area:1/1}.board-row .col-status{grid-area:1/2;justify-self:end}.board-row .col-city{grid-area:2/1/3/3}.flap{width:19px;height:27px;font-size:14px;border-radius:3px}.flap-cell{gap:2px}.board-head>span:nth-child(1){width:calc(5 * 21px)}.board-row{padding:10px 4px}.board-section .section{padding-bottom:70px}}
@media(max-width:420px){.flap{width:16px;height:24px;font-size:12.5px}.board-head>span:nth-child(1){width:calc(5 * 18px)}}
@media(prefers-reduced-motion:reduce){.stage-car:after{display:none}.board-dot{animation:none}}
