:root{--bg:#090D1A;--bg2:#0E1426;--surface:#131B31;--surface2:#18223D;--line:rgb(255 255 255/.08);--line2:rgb(255 255 255/.14);
--ink:#EEF2FF;--ink2:#B6C0D8;--ink3:#8691AD;--o:#FF8A00;--o2:#FFB547;--o-ink:#1A0F00;--t:#2DD4BF;--t2:#14B8A6;--err:#FF8A8A;
--o-soft:rgb(255 138 0/.12);--g-soft:rgb(45 212 191/.12);
--disp:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;--sans:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
--eo:cubic-bezier(.23,1,.32,1);--eio:cubic-bezier(.77,0,.175,1);--spring:cubic-bezier(.34,1.56,.64,1);--max:1220px;--gut:clamp(16px,5vw,48px);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;font:400 16.5px/1.65 var(--sans);color:var(--ink);background:radial-gradient(1200px 700px at 85% -10%,rgb(255 138 0/.10),transparent 60%),radial-gradient(900px 600px at -10% 20%,rgb(45 212 191/.08),transparent 60%),var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%;display:block}a{color:var(--o2)}
h1,h2,h3{font-family:var(--disp);font-weight:700;line-height:1.04;letter-spacing:-.025em;margin:0;text-wrap:balance}p{margin:0}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;color:#000;padding:8px 12px;border-radius:8px}
/* top + header */
.topbar{background:rgb(0 0 0/.35);border-bottom:1px solid var(--line);color:var(--ink3);font-size:13px}.topbar .wrap{display:flex;gap:16px;justify-content:space-between;align-items:center;min-height:36px;flex-wrap:wrap}.topbar a{color:var(--ink);text-decoration:none;font-weight:700}
@media (max-width:640px){.topbar .hide-s{display:none}}
header.hd{position:sticky;top:0;z-index:50;background:rgb(9 13 26/.72);backdrop-filter:blur(16px) saturate(1.4);border-bottom:1px solid var(--line)}
.hd .wrap{display:flex;align-items:center;gap:14px;min-height:72px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}.brand b{font:800 21px/1 var(--disp);letter-spacing:-.02em}.brand small{display:block;font:700 10.5px/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--o2);margin-top:4px;white-space:nowrap}
nav.mn{margin-left:auto;display:flex;gap:2px}.mn a{position:relative;padding:8px 11px;border-radius:999px;color:var(--ink2);text-decoration:none;font-weight:600;font-size:14.5px;white-space:nowrap;transition:color .2s var(--eo),background .2s var(--eo)}
.mn a:hover,.mn a[aria-current]{color:var(--ink);background:rgb(255 255 255/.06)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 24px;border-radius:999px;border:0;font:800 15px var(--sans);text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .18s var(--eo),box-shadow .25s var(--eo),background .2s}
.btn:active{transform:scale(.97)}
.btn.o{background:linear-gradient(135deg,#FFB547,#FF8A00 55%,#FF6A00);color:var(--o-ink);box-shadow:0 10px 30px -10px rgb(255 138 0/.75),inset 0 1px 0 rgb(255 255 255/.35)}
.btn.g{background:var(--t);color:#04211D}.btn.w{background:rgb(255 255 255/.06);color:var(--ink);border:1px solid var(--line2)}.btn.wa{background:#1FAF55;color:#fff}
@media (hover:hover) and (pointer:fine){.btn.o:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgb(255 138 0/.9),inset 0 1px 0 rgb(255 255 255/.35)}.btn.w:hover{background:rgb(255 255 255/.1)}.btn.wa:hover{background:#178F45}.btn.g:hover{background:var(--t2)}}
.menu-b{display:none;margin-left:auto;width:46px;height:46px;border-radius:14px;border:1px solid var(--line2);background:rgb(255 255 255/.05);cursor:pointer}.menu-b i{display:block;width:20px;height:2px;background:var(--ink);margin:4px auto;border-radius:2px}
@media (max-width:1280px){nav.mn{display:none}.menu-b{display:block}.hd .cta{display:none}}
.drawer{position:fixed;inset:0;z-index:80;visibility:hidden}.drawer.open{visibility:visible}.drawer .bg{position:absolute;inset:0;background:rgb(0 0 0/.55);opacity:0;transition:opacity .25s var(--eo)}.drawer.open .bg{opacity:1}
.drawer .pn{position:absolute;right:0;top:0;bottom:0;width:min(340px,88vw);background:var(--bg2);border-left:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:4px;overflow:auto;transform:translateX(100%);transition:transform .3s var(--eo)}.drawer.open .pn{transform:none}
.drawer .pn a{padding:12px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:600}.drawer .pn a:hover{background:rgb(255 255 255/.06)}.drawer .x{align-self:flex-end;width:42px;height:42px;border-radius:50%;border:0;background:rgb(255 255 255/.08);color:var(--ink);font-size:22px;cursor:pointer}
/* generic hero (inner pages) */
.hero{position:relative;padding-block:clamp(26px,4vw,56px) clamp(48px,7vw,88px)}
.hgrid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,56px);align-items:start}@media (max-width:980px){.hgrid{grid-template-columns:1fr}}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--o2)}.eyebrow:before{content:"";width:26px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--o),var(--t))}
.hero h1{font-size:clamp(38px,5.4vw,68px);margin-top:14px}.hero h1 em{font-style:normal;background:linear-gradient(100deg,#FFD08A,#FF8A00 45%,#2DD4BF);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:clamp(17px,1.4vw,19px);color:var(--ink2);margin-top:16px;max-width:54ch}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.pills span{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;background:rgb(255 255 255/.04);border:1px solid var(--line2);font-size:13.5px;font-weight:600;color:var(--ink2)}.pills span svg{color:var(--t)}
.hart{position:relative;margin-top:26px;border-radius:24px;overflow:hidden;aspect-ratio:16/10;border:1px solid var(--line2);box-shadow:0 40px 80px -40px rgb(0 0 0/.8);transform:perspective(1000px) rotateX(var(--trx,0deg)) rotateY(var(--try,0deg));transition:transform .5s var(--eo)}.hart svg{width:100%;height:100%}
.crumbs{font-size:13.5px;color:var(--ink3);padding-top:16px}.crumbs a{color:var(--ink3);text-decoration:none}.crumbs a:hover{color:var(--o2)}
/* booking */
.book{background:linear-gradient(180deg,rgb(255 255 255/.06),rgb(255 255 255/.03));border:1px solid var(--line2);border-radius:28px;padding:clamp(20px,2.6vw,30px);box-shadow:0 30px 80px -30px rgb(0 0 0/.8),inset 0 1px 0 rgb(255 255 255/.08);backdrop-filter:blur(14px);position:sticky;top:92px}
.book h2{font-size:26px}.book .sub{color:var(--ink3);font-size:14.5px;margin-top:6px}
.steps-i{display:flex;gap:6px;margin-top:14px}.steps-i span{flex:1;height:4px;border-radius:4px;background:rgb(255 255 255/.1);overflow:hidden;position:relative}.steps-i span.on:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--o),var(--o2));animation:fillbar .5s var(--eo) both}@keyframes fillbar{from{transform:scaleX(0);transform-origin:left}}
.bf{display:grid;gap:12px;margin-top:16px}.bf fieldset{border:0;padding:0;margin:0;display:grid;gap:12px;min-width:0}.bf fieldset[hidden],.bf [hidden]{display:none!important}
.bf fieldset:not([hidden]){animation:stepin .35s var(--eo) both}@keyframes stepin{from{opacity:0;transform:translateX(12px);filter:blur(4px)}}
.bf label{display:grid;gap:6px;font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--ink2);min-width:0}
.bf input,.bf select,.bf textarea{font:500 15px var(--sans);color:var(--ink);padding:12px 13px;border:1px solid var(--line2);border-radius:14px;background:rgb(0 0 0/.25);width:100%;outline:0;transition:border-color .2s var(--eo),box-shadow .2s var(--eo),background .2s;min-width:0}
.bf select option{background:#141C33;color:var(--ink)}
.bf textarea{min-height:76px;resize:vertical}.bf input:focus,.bf select:focus,.bf textarea:focus{border-color:var(--o);box-shadow:0 0 0 4px rgb(255 138 0/.18);background:rgb(0 0 0/.35)}
.bf input::placeholder,.bf textarea::placeholder{color:#6E7893}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}@media (max-width:420px){.row3{grid-template-columns:1fr 1fr}}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chips label{display:inline-flex}.chips input{position:absolute;opacity:0;width:1px;height:1px}.chips span{padding:8px 12px;border-radius:999px;border:1px solid var(--line2);font-size:13.5px;font-weight:700;color:var(--ink2);cursor:pointer;transition:background .18s var(--eo),color .18s var(--eo),border-color .18s,transform .15s var(--eo);background:rgb(255 255 255/.03)}
.chips span:active{transform:scale(.96)}.chips input:checked+span{background:var(--o);border-color:var(--o);color:var(--o-ink)}.chips input:focus-visible+span{outline:2px solid var(--t);outline-offset:2px}
.legend{font-size:12.5px;font-weight:700;color:var(--ink2);margin-bottom:6px}
.ph{display:flex;border:1px solid var(--line2);border-radius:14px;overflow:hidden;background:rgb(0 0 0/.25)}.ph span{display:grid;place-items:center;padding:0 12px;background:rgb(255 255 255/.06);font-weight:700;font-size:14px;color:var(--ink2)}.ph input{border:0;border-radius:0;background:transparent}
.cons{display:flex!important;gap:9px;align-items:flex-start;font-weight:500!important;font-size:12.5px!important;line-height:1.5;color:var(--ink3)!important}.cons input{width:17px!important;height:17px;flex:none;margin-top:1px;accent-color:var(--o)}
.err{color:var(--err);font-size:13.5px;font-weight:600}.err:empty{display:none}.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.navb{display:flex;gap:10px}.navb .btn{flex:1}
.trust{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px dashed var(--line2);display:grid;gap:6px;font-size:13px;color:var(--ink3)}.trust li{display:flex;gap:8px;align-items:flex-start}.trust svg{color:var(--t);flex:none;margin-top:2px}
.done{display:none;text-align:center}.book.sent .done{display:block;animation:stepin .45s var(--eo) both}.book.sent .bf,.book.sent .hd2,.book.sent .trust{display:none}
.done .ok{width:62px;height:62px;border-radius:50%;background:var(--g-soft);color:var(--t);display:grid;place-items:center;margin:4px auto 12px;font-size:30px}
.done .sum{text-align:left;background:rgb(0 0 0/.25);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:13.5px;margin-top:14px;white-space:pre-line;color:var(--ink2)}
/* sections */
section.s{padding-block:clamp(60px,8vw,110px)}section.alt{background:linear-gradient(180deg,transparent,rgb(255 255 255/.025) 20%,rgb(255 255 255/.025) 80%,transparent)}section.dk{background:transparent}
.kick{font-size:12.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--t)}.h2{font-size:clamp(30px,4vw,52px);margin-top:10px}.sl{color:var(--ink2);margin-top:14px;max-width:62ch;font-size:17px}
section.dk .sl{color:var(--ink2)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px;perspective:1400px}@media (max-width:960px){.grid3{grid-template-columns:1fr 1fr}}@media (max-width:620px){.grid3{grid-template-columns:1fr}}
.pk,.sv,.fl,.wy,.hw,.card{position:relative;transform-style:preserve-3d;transform:perspective(1000px) rotateX(var(--trx,0deg)) rotateY(var(--try,0deg));transition:transform .5s var(--eo),box-shadow .5s var(--eo),border-color .3s}
.pk{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden;text-decoration:none;color:inherit}
.pk .im{aspect-ratio:16/10;overflow:hidden;position:relative;transform:translateZ(0)}.pk .im svg{width:100%;height:100%;transition:transform .8s var(--eo)}
.pk .im:after,.sv .im:after,.hart:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgb(9 13 26/.05),rgb(9 13 26/.0) 40%,rgb(19 27 49/.75))}.sv .im{position:relative}.pk .im svg,.sv .im svg,.hart svg{filter:saturate(1.08) brightness(.92)}
.pk .tag{position:absolute;left:12px;top:12px;background:rgb(9 13 26/.72);backdrop-filter:blur(8px);border:1px solid var(--line2);border-radius:999px;padding:5px 11px;font-size:11.5px;font-weight:800;letter-spacing:.06em;color:var(--o2)}
.pk .bd{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1;transform:translateZ(30px)}.pk h3{font-size:23px}.pk p{color:var(--ink2);font-size:15px}.pk .mt{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;font-size:14px;font-weight:700;color:var(--ink3)}.pk .mt b{color:var(--o2)}
.glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(500px circle at var(--gx,50%) var(--gy,0%),rgb(255 255 255/.14),transparent 45%);opacity:0;transition:opacity .3s var(--eo);z-index:3}
[data-tilt]:hover .glare{opacity:1}
@media (hover:hover) and (pointer:fine){.pk:hover{box-shadow:0 40px 70px -30px rgb(0 0 0/.9),0 0 0 1px rgb(255 138 0/.35)}.pk:hover .im svg{transform:scale(1.07)}}
.svc{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:34px;perspective:1400px}@media (max-width:1000px){.svc{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.svc{grid-template-columns:1fr 1fr}}@media (max-width:400px){.svc{grid-template-columns:1fr}}
.sv{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:14px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:10px}
.sv .im{border-radius:14px;overflow:hidden;aspect-ratio:16/10;transform:translateZ(24px)}.sv .im svg{width:100%;height:100%}.sv h3{font-size:18px;transform:translateZ(18px)}.sv p{font-size:14px;color:var(--ink2)}.sv span.go{margin-top:auto;font-weight:800;font-size:14px;color:var(--o2)}
@media (hover:hover) and (pointer:fine){.sv:hover{border-color:rgb(255 138 0/.4);box-shadow:0 30px 60px -30px rgb(0 0 0/.9)}}
.fleet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;perspective:1400px}@media (max-width:860px){.fleet{grid-template-columns:1fr}}
.fl{background:linear-gradient(160deg,var(--surface2),var(--surface));border:1px solid var(--line2);border-radius:24px;padding:24px}.fl h3{font-size:26px;transform:translateZ(30px)}.fl .eg{color:var(--o2);font-weight:700;font-size:14px;margin-top:4px}.fl ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px;font-size:15px;color:var(--ink2)}.fl li{display:flex;gap:8px}.fl li svg{color:var(--t);flex:none;margin-top:4px}
.why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:34px;perspective:1400px}@media (max-width:900px){.why{grid-template-columns:1fr 1fr}}@media (max-width:520px){.why{grid-template-columns:1fr}}
.wy{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px}.wy b{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--o),#FF5E00);color:var(--o-ink);font:800 20px var(--disp);transform:translateZ(36px);box-shadow:0 12px 26px -10px rgb(255 138 0/.7)}.wy h3{font-size:20px;margin-top:14px}.wy p{color:var(--ink2);font-size:15px;margin-top:6px}
.how{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px;counter-reset:h;perspective:1400px}@media (max-width:900px){.how{grid-template-columns:1fr 1fr}}@media (max-width:520px){.how{grid-template-columns:1fr}}
.hw{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px}.hw:before{counter-increment:h;content:"0" counter(h);display:block;font:800 34px var(--disp);background:linear-gradient(120deg,var(--o2),var(--t));-webkit-background-clip:text;background-clip:text;color:transparent;transform:translateZ(30px)}.hw h3{font-size:18px;margin-top:6px}.hw p{font-size:14.5px;color:var(--ink2);margin-top:6px}
.rev{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(120deg,rgb(255 138 0/.10),rgb(45 212 191/.08));border:1px solid var(--line2);border-radius:24px;padding:24px 26px;margin-top:30px}
.rev .st{display:flex;gap:2px;color:#FFC94A}.rev p{font-size:17px;font-weight:600;max-width:56ch}
.band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;background:radial-gradient(600px 300px at 90% 0%,rgb(255 138 0/.35),transparent 60%),linear-gradient(120deg,#13203A,#0E1830);border:1px solid var(--line2);border-radius:28px;padding:30px 32px;position:relative;overflow:hidden}
.band h2{font-size:clamp(26px,3vw,38px)}.band p{color:var(--ink2);margin-top:6px}.band .acts{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:start}@media (max-width:980px){.two{grid-template-columns:1fr}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:24px}.card h3{font-size:22px}
.tl{list-style:none;margin:16px 0 0;padding:0;display:grid}.tl li{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.tl li:first-child{border-top:0}.tl b{color:var(--o2);font-weight:800}.tl span{color:var(--ink2)}
.ck{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:9px}.ck li{display:flex;gap:10px;color:var(--ink2)}.ck svg{flex:none;color:var(--t);margin-top:4px}
.faq{display:grid;gap:10px;margin-top:26px;max-width:880px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:0 20px;transition:border-color .2s var(--eo)}.faq details[open]{border-color:var(--line2)}.faq summary{list-style:none;cursor:pointer;padding:17px 0;font-weight:700;display:flex;justify-content:space-between;gap:12px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--o2);font-size:22px;line-height:1;transition:transform .25s var(--eo)}.faq details[open] summary:after{transform:rotate(45deg)}.faq p{padding-bottom:17px;color:var(--ink2)}
.prose{max-width:760px}.prose h2{font-size:28px;margin:32px 0 8px}.prose p,.prose li{color:var(--ink2)}.prose p+p{margin-top:12px}
footer.ft{border-top:1px solid var(--line);background:rgb(0 0 0/.3);color:var(--ink3);padding-block:56px 28px}footer.ft a{color:var(--ink2);text-decoration:none}footer.ft a:hover{color:var(--o2)}
.fcols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}@media (max-width:900px){.fcols{grid-template-columns:1fr 1fr}}@media (max-width:520px){.fcols{grid-template-columns:1fr}}
.fcols h4{color:var(--ink);font:800 15px var(--sans);margin:0 0 12px}.fcols ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14.5px}
.fbot{border-top:1px solid var(--line);margin-top:34px;padding-top:18px;font-size:13px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}
.fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;flex-direction:column;gap:10px}
.fab a{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 14px 30px -10px rgb(0 0 0/.6);transition:transform .2s var(--eo)}.fab a:hover{transform:scale(1.06)}.fab a:active{transform:scale(.95)}.fab .w{background:#1FAF55}.fab .c{background:var(--o);color:var(--o-ink)}.fab svg{width:26px;height:26px}
@media (max-width:760px){.fab{display:none}.mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgb(9 13 26/.92);backdrop-filter:blur(12px);border-top:1px solid var(--line)}.mbar a{flex:1;min-height:46px;font-size:14.5px;padding:0 10px}body{padding-bottom:72px}}
@media (min-width:761px){.mbar{display:none}}
/* scroll 3D reveal */
.js-rv .rv{opacity:0;transform:perspective(1200px) rotateX(18deg) translateY(40px) translateZ(-60px);transform-origin:50% 100%;transition:opacity .9s var(--eo),transform .9s var(--eo)}
.js-rv .rv.in{opacity:1;transform:perspective(1200px) rotateX(var(--trx,0deg)) rotateY(var(--try,0deg))}
.js-rv .rv.in.tilting{transition:transform .5s var(--eo),opacity .9s var(--eo)}
/* ===== Home hero ===== */
.hero3{position:relative;padding-block:clamp(28px,5vw,64px) clamp(40px,6vw,80px)}
.h3grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:clamp(28px,4vw,64px);align-items:center}
.h3text{position:relative;z-index:2}
.h3text h1{font-size:clamp(42px,5.6vw,80px);margin-top:16px}
.h3text h1 em,.h3text h1 em .w{font-style:normal;background:linear-gradient(100deg,#FFD08A,#FF8A00 45%,#2DD4BF);-webkit-background-clip:text;background-clip:text;color:transparent}
.h3text .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.h3text .w{display:inline-block;animation:wordin .9s var(--eo) both;animation-delay:calc(var(--i)*70ms + 100ms)}
@keyframes wordin{from{opacity:0;transform:translateY(18px) rotateX(-40deg);filter:blur(8px)}}
.h3text .eyebrow,.h3text .lede,.h3text .acts,.h3text .pills{animation:wordin .9s var(--eo) both}.h3text .lede{animation-delay:.55s}.h3text .acts{animation-delay:.7s}.h3text .pills{animation-delay:.85s}
@media (max-width:980px){.h3grid{grid-template-columns:1fr}.h3text h1{font-size:clamp(38px,9vw,56px)}}
/* 3D stage */
.stage{position:relative;aspect-ratio:1/1.02;max-height:76vh;width:100%;border-radius:32px;perspective:1600px;animation:stagein 1.2s var(--eo) .15s both}
@keyframes stagein{from{opacity:0;transform:perspective(1600px) rotateY(-28deg) rotateX(10deg) scale(.9)}}
.st-cam{position:absolute;inset:0;border-radius:32px;overflow:hidden;border:1px solid var(--line2);box-shadow:0 60px 120px -40px rgb(0 0 0/.9),0 0 0 1px rgb(255 138 0/.12),inset 0 1px 0 rgb(255 255 255/.08);transform:rotateX(var(--srx,0deg)) rotateY(var(--sry,0deg));transform-style:preserve-3d;transition:transform .8s var(--eo);background:#120E27}
.st-sky{position:absolute;inset:0;background:linear-gradient(180deg,#0B0A22 0%,#2A1650 30%,#6B2B6B 52%,#FF7A3D 66%,#FFB15C 70%)}
.stars i{position:absolute;width:var(--s);height:var(--s);border-radius:50%;background:#fff;opacity:.8;animation:tw var(--t) ease-in-out infinite alternate}@keyframes tw{to{opacity:.15;transform:scale(.6)}}
.sunset{position:absolute;left:50%;top:58%;width:34%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#FFE6A8 0%,#FFB347 40%,#FF7A3D 62%,rgb(255 122 61/0) 72%);filter:blur(.3px);animation:sunpulse 5s ease-in-out infinite}@keyframes sunpulse{50%{transform:translate(-50%,-50%) scale(1.05)}}
.mnt{position:absolute;left:-10%;width:120%;height:18%;transform:translate3d(calc(var(--mx,0)*var(--k)*1px),0,0);transition:transform .8s var(--eo)}.mnt.m1{top:46%;--k:-10}.mnt.m2{top:52%;--k:-18}
.world{position:absolute;inset:0;transform-style:preserve-3d;perspective:820px;perspective-origin:calc(50% + var(--mx,0)*9%) calc(60% + var(--my,0)*3%);transition:perspective-origin .8s var(--eo)}
.ground{position:absolute;left:50%;top:68%;width:2400px;height:7000px;margin-left:-1200px;transform-origin:50% 0;transform:translateZ(700px) rotateX(-90deg);transform-style:preserve-3d;overflow:hidden;background:#123A2D}
.ground>div{position:absolute;inset:0}
.grass{height:calc(100% + 400px)!important;background:repeating-linear-gradient(180deg,#14402F 0 200px,#185039 200px 400px);animation:rush 1s linear infinite}
.road{left:41%!important;right:41%!important;background:linear-gradient(90deg,#2B2F3A,#363B47 50%,#2B2F3A)}
.edges{left:41%!important;right:41%!important;background:linear-gradient(90deg,#FFB547 0 6px,transparent 6px calc(100% - 6px),#FFB547 calc(100% - 6px))}
.dashes{left:calc(50% - 7px)!important;width:14px;height:calc(100% + 400px)!important;background:repeating-linear-gradient(180deg,#F4F6FA 0 150px,transparent 150px 400px);animation:rush .5s linear infinite}
@keyframes rush{to{transform:translate3d(0,-400px,0)}}
.obj{position:absolute;left:50%;top:68%;width:150px;height:260px;margin-left:-75px;margin-top:-260px;transform-origin:50% 100%;transform:translate3d(calc(var(--x)*(330px + var(--o))),0,-5200px);animation:pass 4.2s linear infinite;animation-delay:calc(var(--d)*-1);will-change:transform,opacity}
.obj svg{width:100%;height:100%}
@keyframes pass{0%{transform:translate3d(calc(var(--x)*(330px + var(--o))),0,-5200px);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translate3d(calc(var(--x)*(330px + var(--o))),0,640px);opacity:0}}
.car{position:absolute;left:50%;bottom:7%;width:40%;margin-left:-20%;z-index:4;animation:carin 1.6s var(--eo) .4s both}
.car svg{width:100%;height:auto;overflow:visible;animation:sway 3.6s var(--eio) infinite,bump .38s ease-in-out infinite alternate;transform-origin:50% 100%}
.car .tl{animation:brake 5s ease-in-out infinite}
@keyframes carin{from{transform:translate3d(0,40%,0) scale(1.35);opacity:0;filter:blur(6px)}}
@keyframes sway{0%,100%{transform:translateX(-7%) rotate(-1.2deg)}50%{transform:translateX(7%) rotate(1.2deg)}}
@keyframes bump{to{translate:0 -1.5px}}
@keyframes brake{0%,80%,100%{opacity:.85}86%,94%{opacity:1;filter:brightness(1.4)}}
.glass{position:absolute;z-index:5;padding:11px 15px;border-radius:16px;background:rgb(255 255 255/.10);border:1px solid rgb(255 255 255/.22);backdrop-filter:blur(12px) saturate(1.5);box-shadow:0 20px 40px -20px rgb(0 0 0/.7);display:grid;gap:2px;font-size:12.5px;color:#E8ECF8;transform:translate3d(calc(var(--mx,0)*16px),calc(var(--my,0)*10px),60px);transition:transform .8s var(--eo);animation:chipin .9s var(--eo) both}
.glass b{font:800 14px var(--disp);color:#fff}.glass.g1{left:6%;top:7%;animation-delay:1.5s}.glass.g2{right:6%;top:20%;animation-delay:1.75s}
@keyframes chipin{from{opacity:0;translate:0 12px;filter:blur(6px)}}
.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 60%,rgb(0 0 0/.45))}
.st-pause{position:absolute;right:14px;bottom:14px;z-index:8;width:36px;height:36px;border-radius:50%;border:1px solid rgb(255 255 255/.25);background:rgb(0 0 0/.35);backdrop-filter:blur(8px);display:flex;gap:4px;align-items:center;justify-content:center;cursor:pointer;opacity:.85;transition:opacity .2s,transform .15s var(--eo)}
.st-pause:active{transform:scale(.94)}.st-pause span{width:3px;height:12px;border-radius:2px;background:#fff}
.st-pause[aria-pressed=true] span:first-child{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent #fff;background:none;border-radius:0}.st-pause[aria-pressed=true] span:last-child{display:none}
.stage.paused *{animation-play-state:paused!important}
@media (max-width:980px){.stage{aspect-ratio:1/1;max-height:none}.glass{font-size:11.5px;padding:9px 12px}.car{width:46%;margin-left:-23%}}
.bookwrap{padding-bottom:clamp(40px,6vw,72px)}.bookwrap .two{align-items:start}.bookwrap .book{position:relative;top:auto}.bookwrap .intro{padding-top:6px}
/* 3D logo */
.y3d{position:relative;width:44px;height:44px;flex:none;perspective:220px}
.y3d .yi{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--lx,0deg)) rotateY(var(--ly,0deg));transition:transform .4s var(--eo);animation:lgin 1.2s var(--spring) both}
.y3d .ly{position:absolute;inset:0;transform:translateZ(var(--z,0))}.y3d .ly svg{width:100%;height:100%}
.y3d .ly.b{--z:0px;filter:drop-shadow(0 10px 14px rgb(255 138 0/.45))}.y3d .ly.s{--z:10px}.y3d .ly.r{--z:18px}
.y3d .ly.s{animation:sunrise 1s var(--eo) .5s both}@keyframes sunrise{from{opacity:0;transform:translateZ(10px) translateY(10px)}}
.y3d .ly.r{animation:roadin .9s var(--eo) .35s both}@keyframes roadin{from{opacity:0;transform:translateZ(18px) scaleY(.2);transform-origin:50% 100%}}
.y3d .yl-dash path{animation:dash 1.1s linear infinite}@keyframes dash{to{stroke-dashoffset:-13.6}}
@keyframes lgin{from{transform:rotateY(-160deg) rotateX(20deg) scale(.6);opacity:0}}
.y3d.idle .yi{animation:sway3 7s ease-in-out infinite}@keyframes sway3{0%,100%{transform:rotateY(0) rotateX(0)}20%{transform:rotateY(26deg) rotateX(-10deg)}40%{transform:rotateY(0) rotateX(0)}}
@media (hover:hover) and (pointer:fine){.brand:hover .y3d .yi{animation:none;--ly:28deg;--lx:-12deg}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-rv .rv{opacity:1;transform:none}.st-cam,.world,.mnt,.glass{transform:none!important}.obj{opacity:0}.obj:nth-child(3),.obj:nth-child(10){opacity:1;transform:translate3d(calc(var(--x)*360px),0,-600px)}}