@font-face{font-family:"JetBrains Mono Variable";font-style:normal;font-display:swap;
  font-weight:100 800;src:url(fonts/jetbrains-mono-var.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--black:#080A0C;--charcoal:#151719;--charcoal-2:#1D2023;--ivory:#F4F1EA;--sand:#EDE9E0;--gold:#D4AF37;--gold-hi:#EBD68F;--gold-lo:#B08D24;--gold-ink:#7A5F0C;--ink:#111111;--grad:linear-gradient(180deg,var(--gold-hi) 0%,var(--gold) 45%,var(--gold-lo) 100%);--sans:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--r-sm:10px;--r:14px;--r-lg:20px;--r-pill:999px;--pad:clamp(1.15rem,5vw,4.5rem);--max:1240px;--ease:cubic-bezier(.22,.68,.28,1);--dur:700ms;--bg:var(--black);--surface:var(--charcoal);--surface-2:var(--charcoal-2);--text:#FFFFFF;--text-2:#C9CBCE;--muted:#8B8E93;--muted-2:#5F6266;--line:#24272A;--gold-txt:var(--gold);--shadow:0 30px 64px -34px rgba(0,0,0,.95)}.sec-dark{background:var(--black);--bg:var(--black);--surface:var(--charcoal);--surface-2:var(--charcoal-2);--text:#FFFFFF;--text-2:#C9CBCE;--muted:#8B8E93;--muted-2:#5F6266;--line:#24272A;--gold-txt:var(--gold);--shadow:0 30px 64px -34px rgba(0,0,0,.95);color:var(--text)}.sec-dark.deep{background:#050607}.sec-dark.coal{background:var(--charcoal)}.sec-light{background:var(--sand);--bg:var(--sand);--surface:#FFFFFF;--surface-2:var(--ivory);--text:var(--ink);--text-2:#3A3D40;--muted:#5B5F63;--muted-2:#63676B;--line:#DCD7CB;--gold-txt:var(--gold-ink);--shadow:0 22px 50px -30px rgba(20,16,8,.28);color:var(--text)}.sec-light.ivory{background:var(--ivory)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip;scroll-padding-top:84px}body{background:var(--black);color:#fff;font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--gold);color:#000}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}.skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--gold);color:#000;padding:.8rem 1.3rem;font-weight:700}.skip:focus{left:0}.eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-txt);margin-bottom:1.15rem}.eyebrow.center{text-align:center}h1,h2,h3,h4{font-weight:700;letter-spacing:-.032em;line-height:1.08;color:var(--text)}h1{font-size:clamp(2.45rem,6.2vw,4.35rem);letter-spacing:-.042em;font-weight:700}h2{font-size:clamp(1.9rem,3.9vw,2.95rem)}h3{font-size:clamp(1.15rem,1.8vw,1.4rem);letter-spacing:-.022em;line-height:1.3}.lead{font-size:clamp(1rem,1.3vw,1.12rem);color:var(--text-2);max-width:56ch;font-weight:400}.trust{background:#000;color:#7E8186;border-bottom:1px solid #1B1E20;font-size:.72rem;letter-spacing:.02em}.trust .wrap{display:flex;align-items:center;justify-content:center;gap:1.7rem;padding-block:.6rem;flex-wrap:wrap}.trust span{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}.trust b{color:var(--gold);font-weight:600}.trust a:hover{color:var(--gold)}header.site{position:sticky;top:0;z-index:100;background:transparent;border-bottom:1px solid transparent;--hdr-scrim:1;transition:background .45s var(--ease),border-color .45s var(--ease),backdrop-filter .45s var(--ease),box-shadow .45s var(--ease)}header.site.stuck{background:rgba(8,10,12,.72);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom-color:rgba(255,255,255,.08);box-shadow:0 12px 40px -28px rgba(0,0,0,.9)}header.site::before{content:"";position:absolute;inset:0 0 -28px 0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(5,6,7,.82) 0%,rgba(5,6,7,.5) 55%,transparent 100%);opacity:var(--hdr-scrim);transition:opacity .45s var(--ease)}header.site.stuck{--hdr-scrim:0}header.site .wrap{display:flex;align-items:center;gap:1rem;padding-block:.85rem;position:relative;min-width:0}.brand{display:flex;align-items:center;gap:.7rem;flex:0 1 auto;min-width:0}.brand img{height:42px;width:auto}.brand .wm b{display:block;font-size:1rem;font-weight:700;letter-spacing:.13em;color:#fff}.brand .wm span{display:block;font-size:.53rem;letter-spacing:.22em;color:#7E8186;margin-top:.22rem;text-transform:uppercase;font-weight:500}nav.main{display:flex;align-items:center;gap:.2rem;margin-left:auto}nav.main a{font-size:.84rem;font-weight:500;color:#D3D5D8;padding:.55rem .9rem;border-radius:var(--r-pill);transition:color .25s,background .25s}nav.main a:hover{color:#fff}nav.main a[aria-current="page"]{color:var(--gold)}.hdr-cta{display:flex;align-items:center;gap:.7rem;flex:none}.burger{display:none;width:44px;height:44px;border:1px solid rgba(212,175,55,.3);background:rgba(255,255,255,.04);border-radius:var(--r-sm);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.burger span{display:block;width:18px;height:1.6px;background:var(--gold);border-radius:2px;transition:.3s var(--ease)}.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.6px) rotate(45deg)}.burger[aria-expanded="true"] span:nth-child(2){opacity:0}.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--sans);font-size:.82rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;padding:1.05rem 2rem;border:1px solid transparent;border-radius:var(--r-sm);background:var(--grad);color:#0A0A0A;cursor:pointer;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),box-shadow .35s var(--ease),filter .35s var(--ease)}.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.45) 50%,transparent 68%);transform:translateX(-130%);transition:transform .8s var(--ease)}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px -18px rgba(212,175,55,.55)}.btn:hover::before{transform:translateX(130%)}.btn:active{transform:translateY(0)}.btn.ghost{background:transparent;color:var(--text);border-color:var(--line)}.btn.ghost::before{background:linear-gradient(105deg,transparent 32%,rgba(212,175,55,.16) 50%,transparent 68%)}.btn.ghost:hover{border-color:var(--gold);color:var(--gold-txt);box-shadow:none}.sec-dark .btn.ghost{border-color:rgba(255,255,255,.22);color:#fff}.sec-dark .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}.btn.sm{padding:.7rem 1.25rem;font-size:.72rem}.btn svg{width:15px;height:15px;fill:currentColor;flex:none}.btn[disabled]{opacity:.6;cursor:not-allowed;transform:none}.chips{display:flex;gap:.55rem;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.62rem 1.2rem;border-radius:var(--r-pill);border:1px solid rgba(212,175,55,.32);color:var(--gold-txt);font-size:.86rem;font-weight:600;background:rgba(212,175,55,.05);transition:background .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}.chip:hover{background:rgba(212,175,55,.13);border-color:var(--gold);transform:translateY(-2px)}.chip svg{width:14px;height:14px;fill:currentColor}.hero{position:relative;overflow:hidden;background:var(--black);color:#fff;padding-block:clamp(4rem,9vw,7rem) clamp(3.5rem,7vw,5.5rem);margin-top:-73px;padding-top:calc(clamp(4rem,9vw,7rem) + 73px)}.hero video,.hero .vfallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero video{z-index:1;opacity:.95}.hero .vfallback{z-index:0;background-size:cover;background-position:center}.hero .scrim{position:absolute;inset:0;z-index:2;background:radial-gradient(56% 50% at 20% 44%,rgba(212,175,55,.07),transparent 68%),linear-gradient(92deg,rgba(5,6,7,.93) 0%,rgba(5,6,7,.8) 34%,rgba(5,6,7,.38) 62%,rgba(5,6,7,.2) 82%,rgba(5,6,7,.5) 100%)}.hero .wrap{position:relative;z-index:3}.hero-grid{display:grid;grid-template-columns:1fr;gap:clamp(2rem,4vw,3.25rem);align-items:center}@media(min-width:1000px){.hero-grid{grid-template-columns:1.05fr .95fr}}.hero h1{margin-bottom:1.2rem;color:#fff}.hero h1 em{font-style:normal;color:var(--gold)}.hero .lead{margin-bottom:1.7rem;color:#C9CBCE}.hero .eyebrow{color:var(--gold)}.avail{display:inline-flex;align-items:center;gap:.6rem;background:rgba(74,222,128,.08);border:1px solid rgba(74,222,128,.26);border-radius:var(--r-pill);padding:.55rem 1.1rem;font-size:.84rem;font-weight:600;color:#4ADE80;margin-bottom:1.5rem}.avail i{position:relative;width:6px;height:6px;border-radius:50%;background:#4ADE80;flex:none}.avail i::after{content:"";position:absolute;inset:-1px;border-radius:50%;background:#4ADE80;opacity:.5;animation:pulseRing 2.6s infinite;will-change:transform,opacity}@keyframes pulseRing{0%{transform:scale(1);opacity:.5}70%{transform:scale(4.2);opacity:0}100%{transform:scale(4.2);opacity:0}}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-bottom:1.5rem}.or-app{margin-top:1.8rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;max-width:420px}.or-app span{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:#7E8186;font-weight:600}.or-app img{height:42px;width:auto;opacity:.92;transition:opacity .3s}.or-app a:hover img{opacity:1}.soundbtn{position:absolute;right:clamp(1rem,4vw,3rem);bottom:clamp(1rem,3vw,2rem);z-index:4;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .95rem .55rem .8rem;border-radius:var(--r-pill);background:rgba(8,10,12,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.3);color:var(--gold);font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.06em;cursor:pointer;transition:background .3s,border-color .3s,transform .3s}.soundbtn:hover{background:rgba(212,175,55,.14);border-color:var(--gold);transform:translateY(-2px)}.soundbtn svg{width:15px;height:15px;fill:currentColor;flex:none}.soundbtn .ic-on{display:none}.soundbtn[aria-pressed="true"] .ic-off{display:none}.soundbtn[aria-pressed="true"] .ic-on{display:block}@media(max-width:620px){.soundbtn{padding:.5rem .7rem}.soundbtn span{display:none}}@media(max-width:700px){.soundbtn{display:none}}.strip{background:rgba(14,16,19,.9);border:1px solid rgba(212,175,55,.16);border-radius:var(--r-lg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden;color:#fff;box-shadow:0 34px 78px -34px rgba(0,0,0,.95)}.sec-light .strip{background:var(--surface);border-color:var(--line);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--ink);box-shadow:var(--shadow)}.strip-hd{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.35rem;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(212,175,55,.045)}.sec-light .strip-hd{border-bottom-color:var(--line);background:rgba(212,175,55,.07)}.strip-hd .tag{font-size:.66rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.sec-light .strip-hd .tag{color:var(--gold-ink)}.strip-hd .live{display:inline-flex;align-items:center;gap:.42rem;font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#4ADE80}.strip-hd .live i{position:relative;width:6px;height:6px;border-radius:50%;background:#4ADE80;flex:none}.strip-hd .live i::after{content:"";position:absolute;inset:-1px;border-radius:50%;background:#4ADE80;opacity:.5;animation:pulseRing 2.6s infinite;will-change:transform,opacity}.strip-rows{padding:.4rem 1.35rem 1rem}.row{display:grid;grid-template-columns:1fr auto;gap:1rem;padding-block:.76rem;border-bottom:1px solid rgba(255,255,255,.055);align-items:baseline}.sec-light .row{border-bottom-color:var(--line)}.row:last-child{border-bottom:0}.row dt{font-size:.72rem;font-weight:500;color:#7E8186;letter-spacing:.03em}.sec-light .row dt{color:var(--muted-2)}.row dd{font-family:var(--mono);font-size:.9rem;text-align:right}.row dd.gold{color:var(--gold)}.sec-light .row dd.gold{color:var(--gold-ink)}.strip-ft{border-top:1px solid rgba(255,255,255,.07);padding:.9rem 1.35rem;font-size:.7rem;color:#7E8186;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:rgba(0,0,0,.28)}.sec-light .strip-ft{border-top-color:var(--line);background:rgba(0,0,0,.02);color:var(--muted-2)}.strip-ft b{color:var(--gold);font-weight:700;letter-spacing:.12em}.sec-light .strip-ft b{color:var(--gold-ink)}section{padding-block:clamp(3.5rem,7vw,6rem)}.sec-head{max-width:62ch;margin-bottom:clamp(2rem,3.5vw,3rem)}.sec-head.center{margin-inline:auto;text-align:center}.sec-head h2{margin-bottom:.9rem}.bookwrap{margin-top:calc(clamp(3.5rem,7vw,6rem) * -1 - 2.5rem);position:relative;z-index:20}.bookcard{background:var(--ivory);border:1px solid #E0DACD;border-radius:var(--r-lg);padding:clamp(1.5rem,3vw,2.5rem);box-shadow:0 40px 90px -46px rgba(20,16,8,.55)}.bookcard .bhead{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.bookcard h2{font-size:clamp(1.4rem,2.4vw,1.85rem);color:var(--ink);margin:0}.bookcard .bnote{font-size:.85rem;color:#5B5F63}.bgrid{display:grid;grid-template-columns:1fr;gap:.9rem}@media(min-width:640px){.bgrid{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.bgrid{grid-template-columns:repeat(6,1fr)}.bgrid .sp2{grid-column:span 2}.bgrid .sp3{grid-column:span 3}.bgrid .sp6{grid-column:span 6}}.bfield label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5A5E62;margin-bottom:.45rem}.bfield input,.bfield select{width:100%;background:#fff;border:1px solid #DED8CB;color:var(--ink);font-family:var(--sans);font-size:16px;padding:.9rem 1rem;border-radius:var(--r-sm);min-height:48px;-webkit-appearance:none;appearance:none;transition:border-color .3s,box-shadow .3s}.bfield select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235A5E62' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem}.bfield input:focus,.bfield select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.16)}.bfield input::placeholder{color:#A7A9AC}.editorial{display:grid;grid-template-columns:1fr;gap:clamp(2rem,4vw,3.5rem);align-items:center}@media(min-width:940px){.editorial{grid-template-columns:1.02fr .98fr}.editorial.flip .ed-media{order:-1}}.ed-media{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow)}.ed-media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform 1.1s var(--ease)}.ed-media:hover img{transform:scale(1.03)}.ed-media .cap{position:absolute;left:0;right:0;bottom:0;padding:1.5rem 1.4rem .95rem;background:linear-gradient(180deg,transparent,rgba(5,6,7,.82));font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.85);font-weight:600}.pointlist{list-style:none;margin-top:1.6rem;display:grid;gap:.15rem}.pointlist li{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding-block:1rem;border-top:1px solid var(--line);align-items:start}.pointlist li:last-child{border-bottom:1px solid var(--line)}.pointlist .n{font-family:var(--mono);font-size:.72rem;color:var(--gold-txt);padding-top:.2rem;min-width:1.8rem}.pointlist b{display:block;font-size:1rem;font-weight:700;margin-bottom:.2rem;letter-spacing:-.015em}.pointlist span{font-size:.9rem;color:var(--muted);line-height:1.6}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border-block:1px solid var(--line)}@media(min-width:760px){.stats{grid-template-columns:repeat(4,1fr)}}.stats>div{background:var(--bg);padding:1.9rem 1.2rem;text-align:center}.stats .v{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:700;color:var(--gold-txt);line-height:1;margin-bottom:.5rem;letter-spacing:-.035em}.stats .l{font-size:.76rem;color:var(--muted);line-height:1.5}.grid4{display:grid;grid-template-columns:1fr;gap:.85rem}@media(min-width:680px){.grid4{grid-template-columns:repeat(2,1fr)}}@media(min-width:1020px){.grid4{grid-template-columns:repeat(4,1fr)}}.grid4.stack{grid-template-columns:1fr !important}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.7rem 1.45rem;transition:border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}.tile:hover{border-color:rgba(212,175,55,.4);transform:translateY(-4px);box-shadow:var(--shadow)}.tile .ic{width:40px;height:40px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.11);border:1px solid rgba(212,175,55,.2);margin-bottom:1.1rem}.tile .ic svg{width:18px;height:18px;fill:var(--gold-txt)}.tile h3{margin-bottom:.5rem}.tile p{font-size:.9rem;color:var(--muted);line-height:1.62}.svc{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:760px){.svc{grid-template-columns:repeat(3,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);display:flex;flex-direction:column;overflow:hidden;transition:border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}.card:hover{border-color:rgba(212,175,55,.4);transform:translateY(-5px);box-shadow:var(--shadow)}.card .pic{aspect-ratio:16/10;overflow:hidden;background:var(--surface-2)}.card .pic img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.card:hover .pic img{transform:scale(1.045)}.card .in{padding:1.55rem;display:flex;flex-direction:column;flex:1}.card .k{font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-txt);margin-bottom:.75rem}.card h3{margin-bottom:.6rem}.card p{font-size:.9rem;color:var(--muted);flex:1;margin-bottom:1.2rem;line-height:1.62}.card .more{font-size:.84rem;font-weight:600;color:var(--gold-txt);display:inline-flex;align-items:center;gap:.4rem}.card .more::after{content:"→";transition:transform .3s var(--ease)}.card:hover .more::after{transform:translateX(5px)}.fleet{display:grid;grid-template-columns:1fr;gap:.9rem}@media(min-width:620px){.fleet{grid-template-columns:repeat(2,1fr)}}.veh{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);display:flex;flex-direction:column;overflow:hidden;transition:border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}.veh:hover{border-color:rgba(212,175,55,.42);transform:translateY(-5px);box-shadow:var(--shadow)}.veh .shot{aspect-ratio:16/9;position:relative;overflow:hidden;background:var(--surface-2)}.veh .shot img{width:100%;height:100%;object-fit:contain;padding:.9rem;transition:transform 1s var(--ease)}.veh:hover .shot img{transform:scale(1.045)}.veh .shot .cls{position:absolute;top:.8rem;left:.95rem;z-index:2;font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-txt)}.veh .body{padding:1.35rem 1.45rem 1.6rem}.veh h2,.veh h3{margin-bottom:.4rem;font-size:1.28rem}.veh .spec{display:inline-block;font-size:.74rem;font-weight:600;color:var(--gold-txt);background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.22);padding:.26rem .68rem;border-radius:var(--r-pill);margin-bottom:.8rem}.veh p{font-size:.88rem;color:var(--muted);line-height:1.62}.cap{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--line)}.cap-row{display:flex;align-items:center;gap:.7rem}.cap-l{font-size:.64rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);width:2.6rem;flex:none}.pips{display:flex;flex-wrap:wrap;gap:4px}.pips i,.pips b{display:block;width:8px;height:8px;flex:none}.pips i{border-radius:50%;background:var(--gold)}.pips.bags b{background:transparent;border:1.4px solid rgba(212,175,55,.5);border-radius:2px}.steps{display:grid;grid-template-columns:1fr;gap:.8rem}.step{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.45rem;transition:border-color .4s var(--ease),transform .4s var(--ease)}.step:hover{border-color:rgba(212,175,55,.35);transform:translateX(4px)}.step .no{width:36px;height:36px;border-radius:var(--r-pill);flex:none;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.11);border:1px solid rgba(212,175,55,.28);font-size:.82rem;font-weight:700;color:var(--gold-txt)}.step h3{margin-bottom:.4rem}.step p{font-size:.9rem;color:var(--muted);max-width:64ch}.faq{display:grid;gap:.65rem}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:border-color .35s var(--ease),background .35s var(--ease)}.faq details[open]{border-color:rgba(212,175,55,.35)}.faq summary{cursor:pointer;list-style:none;padding:1.2rem 3rem 1.2rem 1.45rem;font-size:clamp(.98rem,1.5vw,1.08rem);font-weight:700;letter-spacing:-.018em;position:relative;transition:color .3s}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--gold-txt)}.faq summary::after{content:"";position:absolute;right:1.4rem;top:50%;width:11px;height:11px;margin-top:-6px;border-right:1.6px solid var(--gold);border-bottom:1.6px solid var(--gold);transform:rotate(45deg);transition:transform .4s var(--ease)}.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}.faq .ans{padding:0 1.45rem 1.4rem;color:var(--muted);font-size:.92rem;line-height:1.75}.faq .ans p + p{margin-top:.8rem}.faq .ans ul{margin:.8rem 0 0 1.1rem}.faq .ans li{margin-bottom:.42rem}.faq .ans strong{color:var(--text);font-weight:600}.reviews{text-align:center}.reviews .stars{color:var(--gold);font-size:1.3rem;letter-spacing:.32em;margin-bottom:.9rem}.reviews>p{color:var(--muted);max-width:54ch;margin:0 auto 2rem}.revgrid{display:grid;grid-template-columns:1fr;gap:.9rem;margin-bottom:2rem;text-align:left;max-width:900px;margin-inline:auto}@media(min-width:700px){.revgrid{grid-template-columns:1fr 1fr}}.rev{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.5rem;transition:border-color .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}.rev:hover{border-color:rgba(212,175,55,.35);transform:translateY(-3px);box-shadow:var(--shadow)}.rev .s{color:var(--gold);font-size:.88rem;letter-spacing:.22em;margin-bottom:.75rem}.rev p{font-size:.92rem;color:var(--text-2);line-height:1.7;margin-bottom:.95rem}.rev .who{font-size:.8rem;color:var(--muted-2);font-weight:500}.appshow{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem);align-items:center}@media(min-width:940px){.appshow{grid-template-columns:1fr .82fr}}.phones{position:relative;display:flex;justify-content:center;align-items:flex-start;gap:clamp(.9rem,2.2vw,1.5rem);padding-block:1rem}.phone{width:min(205px,42vw);border-radius:30px;padding:7px;flex:none;background:linear-gradient(160deg,#2A2C30,#0C0D0F);border:1px solid #34363B;box-shadow:0 44px 84px -34px rgba(20,16,8,.55)}.phone img{width:100%;height:auto;border-radius:24px;display:block}.phone.back{width:min(205px,42vw)}@media(max-width:700px){.phones{gap:.7rem}.phone,.phone.back{width:min(168px,44vw)}}@media(max-width:400px){.phone,.phone.back{width:min(150px,44vw)}}.appsteps{display:flex;gap:1.6rem;flex-wrap:wrap;margin:1.5rem 0 1.8rem}.appsteps div{flex:1;min-width:108px}.appsteps .n{font-size:1.45rem;font-weight:700;color:var(--gold-txt);letter-spacing:-.035em;margin-bottom:.15rem}.appsteps .t{font-size:.86rem;color:var(--muted)}.routes{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.routes .r{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--line);background:var(--surface);transition:background .3s var(--ease),transform .3s var(--ease);will-change:transform}.routes .r:last-child{border-bottom:0}.routes .r:hover{background:var(--surface-2);transform:translateX(.35rem)}.routes .r b{font-size:.94rem;font-weight:600}.routes .r span{font-size:.79rem;color:var(--muted-2);display:block;margin-top:.14rem}.routes .r .t{font-family:var(--mono);font-size:.86rem;color:var(--gold-txt);white-space:nowrap}.areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:.65rem}.area{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:.95rem 1.1rem;transition:border-color .35s var(--ease),background .35s var(--ease),transform .35s var(--ease)}.area:hover{border-color:rgba(212,175,55,.35);background:var(--surface-2);transform:translateY(-3px)}.area b{display:block;font-size:.94rem;font-weight:600;margin-bottom:.12rem}.area span{font-size:.77rem;color:var(--muted-2)}.linkrow{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.2rem}.linkrow a{font-size:.81rem;color:var(--muted);padding:.42rem .88rem;border:1px solid var(--line);border-radius:var(--r-pill);transition:.3s var(--ease)}.linkrow a:hover{color:var(--gold-txt);border-color:rgba(212,175,55,.4)}.comply{display:grid;grid-template-columns:repeat(auto-fit,minmax(208px,1fr));gap:.65rem}.comply>div{display:flex;align-items:flex-start;gap:.8rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:1.1rem 1.15rem;transition:border-color .35s var(--ease),transform .35s var(--ease)}.comply>div:hover{border-color:rgba(212,175,55,.35);transform:translateY(-3px)}.comply .ic{width:30px;height:30px;border-radius:8px;flex:none;display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.11);border:1px solid rgba(212,175,55,.2)}.comply .ic svg{width:15px;height:15px;fill:var(--gold-txt)}.comply>div>div:last-child{min-width:0}.comply b{display:block;font-size:.9rem;font-weight:600;margin-bottom:.15rem}.comply span{font-size:.79rem;color:var(--muted);line-height:1.5}.finalcta{position:relative;overflow:hidden;background:var(--black);padding-block:clamp(4.5rem,10vw,8rem);text-align:center;color:#fff}.finalcta .bgimg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center 55%;opacity:.5}.finalcta .scrim{position:absolute;inset:0;z-index:1;background:radial-gradient(60% 70% at 50% 45%,rgba(212,175,55,.09),transparent 70%),linear-gradient(180deg,rgba(5,6,7,.86) 0%,rgba(5,6,7,.7) 45%,rgba(5,6,7,.92) 100%)}.finalcta .wrap{position:relative;z-index:2}.finalcta h2{font-size:clamp(2.2rem,5.4vw,3.8rem);color:#fff;margin-bottom:1rem}.finalcta p{color:#C9CBCE;max-width:46ch;margin:0 auto 2rem}.finalcta .acts{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap}.finalcta .btn.ghost{color:#fff;border-color:rgba(255,255,255,.26)}.finalcta .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}.cta-band{border:1px solid rgba(212,175,55,.3);border-radius:var(--r-lg);background:radial-gradient(75% 140% at 12% 0%,rgba(212,175,55,.13),transparent 62%),var(--charcoal);padding:clamp(2rem,4.5vw,3.5rem);color:#fff;display:grid;grid-template-columns:1fr;gap:1.8rem;align-items:center}@media(min-width:860px){.cta-band{grid-template-columns:1.35fr auto}}.cta-band h2{margin-bottom:.75rem;color:#fff}.cta-band p{color:#B4B7BB;max-width:48ch}.cta-band .acts{display:flex;flex-direction:column;gap:.65rem}.cta-band .btn.ghost{color:#fff;border-color:rgba(255,255,255,.24)}.cta-band .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}@media(max-width:859px){.cta-band .acts{flex-direction:row;flex-wrap:wrap}}.contact-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.75rem,3.5vw,3rem)}@media(min-width:900px){.contact-grid{grid-template-columns:.85fr 1.15fr}}.cinfo{display:flex;flex-direction:column;gap:.75rem}.cinfo .item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.25rem 1.35rem;transition:border-color .35s var(--ease)}.cinfo .item:hover{border-color:rgba(212,175,55,.35)}.cinfo .item .l{font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-txt);margin-bottom:.4rem}.cinfo .item .v{font-size:1.06rem;font-weight:600}.cinfo .item .v a:hover{color:var(--gold-txt)}.cinfo .item .s{font-size:.84rem;color:var(--muted);margin-top:.3rem;line-height:1.55}.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.4rem,3vw,2.25rem)}.fgrid{display:grid;grid-template-columns:1fr;gap:.95rem}@media(min-width:560px){.fgrid.two{grid-template-columns:1fr 1fr}}.field{transition:transform .3s var(--ease)}.field label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.45rem}.field input,.field select,.field textarea{width:100%;background:var(--bg);border:1px solid var(--line);color:var(--text);font-family:var(--sans);font-size:16px;padding:.92rem 1rem;border-radius:var(--r-sm);min-height:48px;-webkit-appearance:none;appearance:none;transition:border-color .3s,box-shadow .3s,background .3s}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A8D91' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem}.field textarea{min-height:124px}.sec-light .field input,.sec-light .field select,.sec-light .field textarea{background:#fff;border-color:#DED8CB}.field textarea{min-height:124px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.15)}.field:focus-within label{color:var(--gold-txt)}.field input::placeholder,.field textarea::placeholder{color:var(--muted-2)}.field input:user-invalid,.field textarea:user-invalid{border-color:#E5484D}.form .btn{width:100%;margin-top:.3rem}.form .note{font-size:.8rem;color:var(--muted-2);margin-top:.95rem;text-align:center}.formmsg{display:none;margin-top:1rem;padding:.95rem 1.1rem;border-radius:var(--r-sm);font-size:.9rem;line-height:1.55;border:1px solid}.formmsg.show{display:block;animation:rise .5s var(--ease) both}.formmsg.ok{background:rgba(74,222,128,.08);border-color:rgba(74,222,128,.35);color:#2E9E58}.sec-dark .formmsg.ok{color:#4ADE80}.formmsg.err{background:rgba(229,72,77,.08);border-color:rgba(229,72,77,.35);color:#C4383C}.formmsg strong{display:block;margin-bottom:.2rem}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-sm);padding:4px}.sec-light .segmented{background:#fff;border-color:#DED8CB}.seg{position:relative;margin:0}.seg input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;inset:0}.seg span{display:block;text-align:center;padding:.7rem .5rem;border-radius:calc(var(--r-sm) - 4px);font-size:.94rem;font-weight:600;color:var(--muted);text-transform:none;letter-spacing:-.01em;transition:background .3s var(--ease),color .3s var(--ease);pointer-events:none}.seg input:checked + span{background:var(--grad);color:#0A0A0A}.seg input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}.seg:hover input:not(:checked) + span{color:var(--text)}.phero{padding-block:clamp(3.5rem,7vw,5rem) clamp(2.25rem,4.5vw,3.25rem);background:radial-gradient(62% 120% at 86% 0%,rgba(212,175,55,.12),transparent 62%),var(--black);color:#fff;margin-top:-73px;padding-top:calc(clamp(3.5rem,7vw,5rem) + 73px)}.phero h1{font-size:clamp(2.1rem,4.8vw,3.4rem);margin-bottom:.85rem;color:#fff}.phero .lead{max-width:60ch;color:#C9CBCE}.phero .eyebrow{color:var(--gold)}.crumb{font-size:.76rem;color:#7E8186;margin-bottom:1.2rem;font-weight:500}.crumb a{color:#B4B7BB}.crumb a:hover{color:var(--gold)}.crumb span{color:var(--gold);margin-inline:.42rem}.prose{max-width:70ch}.prose p{color:var(--muted);margin-bottom:1.2rem;font-size:1rem;line-height:1.78}.prose p:last-child{margin-bottom:0}.prose strong{color:var(--text);font-weight:600}.prose h2{margin-bottom:.85rem}.prose a{color:var(--gold-txt)}.split{display:grid;grid-template-columns:1fr;gap:clamp(1.85rem,4vw,3.25rem);align-items:start}@media(min-width:900px){.split{grid-template-columns:1.1fr .9fr}}.figure{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.figure img{width:100%;height:auto;display:block}footer.site{background:#000;color:#fff;border-top:1px solid #1B1E20;padding-block:clamp(3rem,5vw,4.25rem) 0}.fgrid-main{display:grid;grid-template-columns:1fr;gap:2.25rem}@media(min-width:760px){.fgrid-main{grid-template-columns:1.4fr 1fr 1fr 1.2fr}}footer.site h3{font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.05rem}footer.site ul{list-style:none}footer.site li{margin-bottom:.62rem;font-size:.89rem;color:#8B8E93}footer.site li a:hover{color:var(--gold)}.fbrand .fmark{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.fbrand .fmark img{height:54px;width:auto;margin:0}
.fbrand .fmark .wm b{display:block;font-size:1.15rem;font-weight:700;letter-spacing:.13em;color:#fff}
.fbrand .fmark .wm span{display:block;font-size:.6rem;letter-spacing:.22em;color:#8B8E93;margin-top:.25rem;text-transform:uppercase;font-weight:500}.fbrand p{font-size:.87rem;color:#8B8E93;max-width:34ch;margin-bottom:1.05rem;line-height:1.68}.fbrand .tcp{font-size:.71rem;letter-spacing:.12em;color:var(--gold);text-transform:uppercase;font-weight:600;line-height:1.9}.fbot{margin-top:clamp(2.25rem,4vw,3rem);border-top:1px solid #1B1E20;padding-block:1.35rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.79rem;color:#5F6266}.fbot a:hover{color:var(--gold)}.stickybar{display:none}@media(max-width:900px){.stickybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:95;gap:.55rem;padding:.65rem .85rem calc(.65rem + env(safe-area-inset-bottom));background:rgba(8,10,12,.93);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.08);transform:translateY(110%);transition:transform .5s var(--ease)}.stickybar.up{transform:none}.stickybar .btn{flex:1;padding:.92rem .8rem;font-size:.78rem}.stickybar .btn.ghost{flex:0 0 42%;color:#fff;border-color:rgba(255,255,255,.22)}body{padding-bottom:76px}}@media(max-width:900px){header.site{backdrop-filter:none}header.site.stuck{background:rgba(8,10,12,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}nav.main{position:fixed;inset:0 0 0 auto;width:min(308px,84vw);background:#0B0D0F;border-left:1px solid #24272A;flex-direction:column;align-items:stretch;gap:.25rem;padding:5.5rem 1.3rem 2rem;transform:translateX(100%);visibility:hidden;transition:transform .42s var(--ease),visibility .42s;z-index:90;overflow-y:auto}nav.main[data-open="true"]{transform:translateX(0);visibility:visible}nav.main a{padding:.95rem 1.05rem;font-size:1rem;border-radius:var(--r-sm)}nav.main a[aria-current="page"]{background:rgba(212,175,55,.1)}.navscrim{position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .42s var(--ease),visibility .42s;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.navscrim.on{opacity:1;visibility:visible}.burger{display:flex}.hdr-cta .btn{display:none}.hdr-cta .btn.call{display:inline-flex}.hero,.phero{margin-top:-69px;padding-top:calc(clamp(3rem,7vw,5rem) + 69px)}}@media(max-width:620px){.hdr-cta .btn.call{display:none}header.site .wrap{gap:.7rem}.brand .wm span{display:none}}@media(max-width:520px){.trust .wrap{gap:.8rem;font-size:.66rem}.hero-actions .btn{width:100%}.brand .wm b{font-size:.92rem}.brand img{height:36px}.bookwrap{margin-top:0}}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes riseCard{from{opacity:0;transform:translateY(28px) scale(.985)}to{opacity:1;transform:none}}@keyframes kenburns{from{transform:scale(1.05)}to{transform:scale(1.14)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.hero video,.hero .vfallback{animation:kenburns 30s ease-out forwards;will-change:transform}.hero .scrim{animation:fadeIn 1s var(--ease) both}.hero .eyebrow,.hero .avail,.hero h1,.hero .lead,.hero .hero-actions,.hero .chips,.hero .or-app{animation:rise .8s var(--ease) both}.hero .eyebrow{animation-delay:.08s}.hero .avail{animation-delay:.16s}.hero h1{animation-delay:.26s}.hero .lead{animation-delay:.4s}.hero .hero-actions{animation-delay:.52s}.hero .chips{animation-delay:.62s}.hero .or-app{animation-delay:.72s}.hero .strip{animation:riseCard .9s var(--ease) .58s both}.soundbtn{opacity:0;animation:rise .7s var(--ease) 1.1s forwards}.phero .crumb,.phero .eyebrow,.phero h1,.phero .lead,.phero .hero-actions{animation:rise .7s var(--ease) both}.phero .crumb{animation-delay:.04s}.phero .eyebrow{animation-delay:.1s}.phero h1{animation-delay:.18s}.phero .lead{animation-delay:.3s}.phero .hero-actions{animation-delay:.4s}[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);will-change:opacity,transform}[data-reveal].in{opacity:1;transform:none}[data-reveal][data-d="1"]{transition-delay:.09s}[data-reveal][data-d="2"]{transition-delay:.18s}[data-reveal][data-d="3"]{transition-delay:.27s}[data-reveal][data-d="4"]{transition-delay:.36s}.hero video,.hero .vfallback{top:calc(var(--py,0px) * -1)}.finalcta .bgimg{transform:translateY(var(--fy,0px))}.phone{animation:phoneFloat 8s ease-in-out infinite}.phone.back{animation:phoneFloat 8s ease-in-out 1.2s infinite}@keyframes phoneFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}.faq .ans{animation:rise .45s var(--ease) both}@media(min-width:901px){nav.main a{position:relative}nav.main a::after{content:"";position:absolute;left:.9rem;right:.9rem;bottom:.2rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .38s var(--ease)}nav.main a:hover::after{transform:scaleX(1)}nav.main a[aria-current="page"]::after{display:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important}[data-reveal]{opacity:1 !important;transform:none !important}.hero video{display:none}.soundbtn{opacity:1}.stickybar{transform:none}.btn::before{display:none}}nav.main a.drivelink{color:var(--gold);font-weight:600;margin-left:.35rem;border:1px solid rgba(212,175,55,.28);border-radius:var(--r-pill);padding:.5rem .95rem}nav.main a.drivelink:hover{background:rgba(212,175,55,.1);border-color:var(--gold);color:var(--gold-hi)}nav.main a.drivelink::after{display:none}nav.main a.drivelink[aria-current="page"]{background:rgba(212,175,55,.14)}@media(max-width:1080px) and (min-width:901px){nav.main{gap:0}nav.main a{padding:.55rem .62rem;font-size:.8rem}nav.main a.drivelink{padding:.48rem .8rem}}@media(max-width:900px){nav.main a.drivelink{margin-left:0;margin-top:.7rem;text-align:center;border-color:rgba(212,175,55,.35);background:rgba(212,175,55,.06)}}.phone figcaption{margin-top:.85rem;text-align:center;font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-txt)}.wrap{padding-left:max(var(--pad),env(safe-area-inset-left));padding-right:max(var(--pad),env(safe-area-inset-right))}.trust .wrap,header.site .wrap{padding-left:max(var(--pad),env(safe-area-inset-left));padding-right:max(var(--pad),env(safe-area-inset-right))}@media(max-width:900px){.stickybar{padding-left:max(.85rem,env(safe-area-inset-left));padding-right:max(.85rem,env(safe-area-inset-right));padding-bottom:calc(.65rem + env(safe-area-inset-bottom))}body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}nav.main{padding-top:calc(5.5rem + env(safe-area-inset-top));padding-right:max(1.3rem,env(safe-area-inset-right));padding-bottom:calc(2rem + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media(hover:none){nav.main a,.linkrow a,footer.site li a,.crumb a{min-height:44px;display:flex;align-items:center}.linkrow a{display:inline-flex;padding-block:.7rem}footer.site li{margin-bottom:.15rem}.chip{min-height:44px}.faq summary{min-height:56px;display:flex;align-items:center}.card .more,.rev .who{min-height:32px;display:inline-flex;align-items:center}.btn{min-height:48px}.btn.sm{min-height:44px}.soundbtn{min-height:44px}.seg span{min-height:48px;display:flex;align-items:center;justify-content:center}}@media(hover:none){.card:hover,.veh:hover,.tile:hover,.area:hover,.rev:hover,.step:hover,.comply>div:hover,.cinfo .item:hover{transform:none;box-shadow:none}.card:hover .pic img,.veh:hover .shot img,.ed-media:hover img{transform:none}.routes .r:hover{transform:none}.btn:hover{transform:none;box-shadow:none}.btn::before{display:none}}@media(max-width:700px){.hero{padding-block:clamp(2.5rem,7vw,4rem) clamp(2.5rem,6vw,3.5rem);padding-top:calc(clamp(2.5rem,7vw,4rem) + 69px + env(safe-area-inset-top))}.hero video{object-position:50% 42%}.hero .vfallback{background-position:50% 42%}.hero .scrim{background:linear-gradient(180deg,rgba(5,6,7,.72) 0%,rgba(5,6,7,.68) 40%,rgba(5,6,7,.9) 100%)}.hero h1{font-size:clamp(2.1rem,9vw,2.9rem)}.hero .lead{font-size:1rem}.finalcta .bgimg{background-position:50% 45%}}@media(max-height:520px) and (orientation:landscape){.hero{padding-block:calc(1.5rem + 69px) 2rem}.hero h1{font-size:clamp(1.7rem,5.2vw,2.3rem);margin-bottom:.7rem}.hero .lead{font-size:.95rem;margin-bottom:1.1rem;max-width:46ch}.hero .avail{margin-bottom:.9rem}.hero .or-app{display:none}.avail,.chips{margin-bottom:.9rem}.stickybar{padding-block:.45rem}.stickybar .btn{padding-block:.7rem}body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}nav.main{padding-top:calc(4rem + env(safe-area-inset-top))}}.card .pic,.veh .shot,.ed-media,.phone,.figure{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-mask-image:-webkit-radial-gradient(#fff,#000)}img{max-width:100%;height:auto}.card .pic img,.veh .shot img,.ed-media img,.phone img{height:100%}.phone img{height:auto}.ed-media img{object-position:50% 50%}@media(max-width:700px){.ed-media img{aspect-ratio:3/2}.card .pic{aspect-ratio:16/9}}html,body{-webkit-overflow-scrolling:touch}a,button,summary,label,input,select,textarea{touch-action:manipulation}body{-webkit-text-size-adjust:100%}input:not([type="hidden"]),select,textarea,button{font-size:max(16px,1em)}.btn,.btn.sm{font-size:.82rem}.btn.sm{font-size:.72rem}@media(hover:none){.trust a,.fbot a,.prose a,.faq .ans a,.cinfo .item .v a,.bnote a,.cinfo .item a{position:relative;display:inline-block}.trust a::after,.fbot a::after,.prose a::after,.faq .ans a::after,.cinfo .item .v a::after,.bnote a::after,.cinfo .item a::after{content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}.brand{min-height:44px}.fbot{gap:1.1rem;padding-block:1.6rem}.trust .wrap{padding-block:.75rem}}.usflag{width:34px;height:auto;flex:none;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.18);margin-left:.35rem}@media(max-width:1120px) and (min-width:901px){.usflag{width:26px;margin-left:.2rem}.brand .wm span{font-size:.5rem;letter-spacing:.18em}}@media(max-width:620px){.usflag{width:28px}}.aclist{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;list-style:none;margin:0;padding:.3rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:0 22px 46px -22px rgba(20,16,8,.4);max-height:280px;overflow-y:auto;-webkit-overflow-scrolling:touch}.bfield .aclist{background:#fff;border-color:#DED8CB}.aclist li{padding:.7rem .8rem;border-radius:calc(var(--r-sm) - 4px);cursor:pointer;transition:background .15s}.aclist li.on{background:rgba(212,175,55,.12)}.aclist li b{display:block;font-size:.92rem;font-weight:600;color:var(--text);line-height:1.3}.bfield .aclist li b{color:var(--ink)}.aclist li span{display:block;font-size:.79rem;color:var(--muted-2);margin-top:.1rem;line-height:1.3}@media(max-width:700px){.aclist{max-height:200px}}
/* ============================================================
   MOBILE HERO — FIT THE FIRST SCREEN IN SAFARI TOO
   ============================================================
   The problem was never 100vh — there is no vh unit anywhere in
   this stylesheet, and the hero is sized by its content plus
   padding. Measured proof: at 390px the airport chips start at
   y=699 in *both* Safari and Chrome iOS. The page is identical.
   Safari simply shows ~60px less of it, because it renders a
   bottom toolbar that Chrome iOS doesn't.

   So the fix is to reclaim about 60px of vertical rhythm above
   the chips, on portrait phones only, without touching a single
   font size or button dimension.

   Why svh and not dvh: dvh tracks the viewport as Safari's
   toolbar expands and collapses, which would make the whole hero
   re-flow mid-scroll — exactly the jumping the brief rules out.
   svh is pinned to the *small* viewport (toolbars expanded) and
   never changes during a session, so spacing is computed once
   against the worst case and stays put. Chrome, which has more
   room, simply gets slightly more breathing space below.

   Every value is a clamp: a hard floor so a short phone never
   collapses the layout, an svh-proportional middle so taller
   phones keep the generous spacing, and a ceiling equal to the
   original desktop-scale value so nothing ever grows beyond
   what it was before. */

@media (max-width:700px) and (orientation:portrait){

  /* The trust strip wraps to two lines at these widths, so its
     padding is doubled in effect. Tightening it is the single
     cheapest win and touches no text. The phone link inside keeps
     its full 44px tap area — that comes from an absolutely
     positioned ::after further up this file, which is unaffected
     by the parent's padding. */
  .trust .wrap{ padding-block:clamp(.4rem, 1.1svh, .75rem) }

  /* Gap between the header and the eyebrow. The +69px is the
     header overlap compensation and must stay exactly as-is. */
  .hero{
    padding-top:calc(clamp(1.35rem, 3.4svh, 2.5rem) + 69px + env(safe-area-inset-top));
  }

  .hero .eyebrow      { margin-bottom:clamp(.5rem,  1.4svh, 1.15rem) }
  .hero .avail        { margin-bottom:clamp(.7rem,  1.9svh, 1.5rem) }
  .hero h1            { margin-bottom:clamp(.6rem,  1.6svh, 1.2rem) }
  .hero .lead         { margin-bottom:clamp(.8rem,  2.1svh, 1.7rem) }
  .hero .hero-actions { margin-bottom:clamp(.7rem,  1.9svh, 1.5rem) }
}

/* Fallback for browsers without svh support (pre-iOS 15.4,
   pre-Chrome 108). They get the fixed floor values rather than
   the proportional middle — slightly tighter than ideal on a
   large phone, but never broken, and never larger than the
   original spacing. */
@supports not (height: 1svh){
  @media (max-width:700px) and (orientation:portrait){
    .trust .wrap{ padding-block:.55rem }
    .hero{ padding-top:calc(1.75rem + 69px + env(safe-area-inset-top)) }
    .hero .eyebrow      { margin-bottom:.7rem }
    .hero .avail        { margin-bottom:.95rem }
    .hero h1            { margin-bottom:.8rem }
    .hero .lead         { margin-bottom:1.1rem }
    .hero .hero-actions { margin-bottom:.95rem }
  }
}

/* Shown on the contact form only when trip details were carried over
   from the homepage booking card, so the visitor understands why the
   fields are already filled in rather than wondering. */
.prefill-note{
  background:rgba(74,222,128,.08);
  border:1px solid rgba(74,222,128,.3);
  border-radius:var(--r-sm);
  padding:.85rem 1rem;
  margin-bottom:1.25rem;
  font-size:.88rem;
  line-height:1.5;
  color:#2E9E58;
}
.sec-dark .prefill-note{ color:#4ADE80 }

/* ---------- footer social links ----------
   Gold on hover to match every other interactive element on the site,
   muted at rest so they read as secondary to the legal line beside them. */
.fsocial{ display:flex; align-items:center; gap:.4rem; order:-1 }
.fsocial a{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:50%;
  color:#8B8E93; border:1px solid transparent;
  transition:color .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease);
}
.fsocial svg{ width:19px; height:19px; fill:currentColor; display:block }
.fsocial a:hover{
  color:var(--gold);
  background:rgba(212,175,55,.09);
  border-color:rgba(212,175,55,.28);
}
.fsocial a:focus-visible{ color:var(--gold) }
/* Touch devices keep the full 40px circle as the tap target, which is
   already close to the 44px minimum; nudge it the rest of the way. */
@media(hover:none){
  .fsocial a{ width:44px; height:44px }
  .fsocial a:hover{ color:#8B8E93; background:none; border-color:transparent }
}

/* Responsive hero background (LCP). Replaces the inline
   background-image so the poster can be served per viewport. */
.hero .vfallback{background-image:url('images/hero-poster-1280.webp')}
@media (min-width:1400px){.hero .vfallback{background-image:url('images/hero-poster.webp')}}
/* Final-CTA background, responsive. */
.finalcta .bgimg{background-image:url('images/svc-events-800.webp')}
@media (min-width:900px){.finalcta .bgimg{background-image:url('images/svc-events-1200.webp')}}

/* GLS fix: burger to the right edge on mobile.
   nav.main is position:fixed under 900px, so it leaves the flex row
   and .hdr-cta collapsed next to the logo instead of the edge. */
@media (max-width:900px){header.site .wrap .hdr-cta{margin-left:auto}}

/* GLS fix: hero legibility on phones. The scrim was tuned for the
   still poster; now that the video also plays on phones, its bright
   tarmac frames washed out the headline. Darken the media itself so
   contrast holds on every frame, not just the poster. */
@media (max-width:700px){
  .hero video,.hero .vfallback{filter:brightness(.58) saturate(.9)}
  .hero .scrim{background:linear-gradient(180deg,rgba(5,6,7,.78) 0%,rgba(5,6,7,.72) 40%,rgba(5,6,7,.93) 100%)}
}

/* GLS fix: touch targets on phones. Inline phone/email/legal links
   rendered 17-28px tall — below the 44px both Apple and Google ask
   for. This expands the tappable area with an overlay so nothing
   moves visually and no layout is touched. */
@media (max-width:900px){
  a[href^="tel:"]:not(.btn),a[href^="mailto:"]:not(.btn),.fbot a[href="privacy.html"]{position:relative}
  a[href^="tel:"]:not(.btn)::after,a[href^="mailto:"]:not(.btn)::after,.fbot a[href="privacy.html"]::after{
    content:"";position:absolute;left:-8px;right:-8px;top:50%;height:44px;
    transform:translateY(-50%);border-radius:6px}
}

/* GLS fix: keep the wordmark subtitle on phones. It was hidden under
   620px to save room; with the burger now pushed to the edge there is
   space for it, so "General Limo Services" reads under "GLS BLACK". */
@media (max-width:620px){
  .brand .wm span{display:block;font-size:.47rem;letter-spacing:.15em;margin-top:.18rem}
}
@media (max-width:360px){
  .brand .wm span{font-size:.43rem;letter-spacing:.1em}
  .usflag{width:22px}
}

/* Hero was reading almost black on a real phone screen — brightness
   pulled back so the video is visible while the headline still holds
   contrast. */
@media (max-width:700px){.hero video,.hero .vfallback{filter:brightness(.72) saturate(.95)}}

/* GLS fix: sound button on phones. It was hidden under 700px because
   the video never played there; now that it does, the toggle has to
   come back or the audio is unreachable on mobile. */
@media (max-width:700px){
  /* the hero is taller than a phone screen, so the button's usual
     bottom-right anchor put it below the fold — and the fixed booking
     bar owns the bottom edge. Park it under the header instead. */
  .soundbtn{display:inline-flex;top:calc(76px + env(safe-area-inset-top));right:14px;bottom:auto}
}

/* GLS fix: footer on phones.
   Two things made it read badly on a phone. First, the touch rule under
   @media (hover:none) gives every footer link a 44px row — right for the
   thumb, but stacked in one column it turned the footer into a very long,
   very empty scroll. Two columns halve that without shrinking a single
   target. Second, the fixed booking bar covers the last ~70px of the page,
   so "Burlingame, California" and the copyright were sitting underneath it.
   The footer now reserves that height. */
@media (max-width:759px){
  .fgrid-main{gap:1.5rem}
  .fgrid-main>div:nth-child(2) ul,
  .fgrid-main>div:nth-child(3) ul{
    display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
  footer.site h3{margin-bottom:.55rem}
  .fbrand .fmark{margin-bottom:.8rem}
  .fbrand p{margin-bottom:.8rem}
  .fbot{padding-block:1.1rem;gap:.6rem}
  .fbot .fsocial{order:-1}
}
@media (max-width:900px){
  footer.site{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
}

/* Footer bottom row failed AA contrast (3.42:1 on black). This is the
   grey already used for the footer link lists, which clears 6.4:1. */
.fbot{color:#8B8E93}

/* ── Consent bar ────────────────────────────────────────────────
   Slim fixed bar, dismissed in one tap. Sits above .stickybar and
   hides it while open so two fixed bars never stack on a phone. */
.ccbar{position:fixed;left:0;right:0;bottom:0;z-index:98;display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;background:rgba(8,10,12,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(212,175,55,.28);padding:.9rem max(var(--pad),env(safe-area-inset-left)) calc(.9rem + env(safe-area-inset-bottom)) max(var(--pad),env(safe-area-inset-right));transform:translateY(110%);transition:transform .5s var(--ease)}
.ccbar.up{transform:none}
.ccbar p{flex:1 1 340px;max-width:70ch;margin:0;font-size:.82rem;line-height:1.55;color:#C9CBCE}
.ccbar a{color:var(--gold);text-decoration:underline;text-underline-offset:2px}
.ccbar a:hover{color:var(--gold-hi)}
.ccbar .acts{display:flex;gap:.55rem;flex:none}
.ccbar .btn{min-height:44px;padding:.72rem 1.5rem}
.ccbar .btn.ghost{color:#fff;border-color:rgba(255,255,255,.24)}
.ccbar .btn.ghost:hover{border-color:var(--gold);color:var(--gold)}
body.cc-open .stickybar{display:none}
@media(max-width:620px){.ccbar{gap:.75rem}.ccbar p{flex-basis:100%;font-size:.78rem}.ccbar .acts{width:100%}.ccbar .acts .btn{flex:1}}
@media(prefers-reduced-motion:reduce){.ccbar{transition:none}}

/* ── Contact page: form first on phones ─────────────────────────
   Above 900px .contact-grid is two columns and this does nothing.
   Below it the grid stacks, and without this the visitor scrolls
   past six .cinfo cards before reaching the form. */
@media(max-width:899px){
  .contact-grid .form{order:-1}
  .contact-grid .cinfo{order:0}
}

/* ── instant fare ─────────────────────────────── */
.fare-block{grid-column:1/-1;margin:4px 0 8px;}
.fare-btn{width:100%;padding:13px;border-radius:9px;background:transparent;
  border:1px solid #8A7328;color:#D4AF37;font-size:14.5px;font-weight:600;
  cursor:pointer;transition:.15s;font-family:inherit;}
.fare-btn:hover:not(:disabled){background:rgba(212,175,55,.08);}
.fare-btn:disabled{opacity:.4;cursor:not-allowed;}
.fare-hint{font-size:12px;color:#5A5F68;margin:8px 0 0;text-align:center;}
.fare-result{margin-top:16px;border:1px solid #8A7328;border-radius:12px;
  background:rgba(212,175,55,.05);overflow:hidden;}
.fare-result-head{padding:11px 16px;border-bottom:1px solid rgba(212,175,55,.2);
  font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:#8A7328;}
.fare-result-body{padding:16px;}
.fare-trip{font-size:12.5px;color:#8A8F98;margin:0 0 14px;line-height:1.7;}
.fare-row{display:flex;align-items:center;justify-content:space-between;
  padding:11px 13px;border-radius:9px;background:rgba(0,0,0,.35);
  border:1px solid #1E242C;margin-bottom:9px;}
.fare-row:last-of-type{margin-bottom:0;}
.fare-name{font-size:14px;color:#8A8F98;}
.fare-row-primary .fare-name{color:#F0F0F0;font-weight:600;}
.fare-amt{font-size:17px;font-weight:700;color:#8A8F98;}
.fare-row-primary .fare-amt{font-size:20px;color:#D4AF37;}
.fare-incl{font-size:11.5px;color:#5A5F68;margin:11px 0 0;line-height:1.6;}
.fare-error{font-size:12.5px;color:#E0796F;margin:10px 0 0;text-align:center;}

/* ── instant fare · light form override ───────── */
.fare-result{border-color:#C9A227;background:#FBF9F2;}
.fare-result-head{color:#8A7328;border-bottom-color:rgba(201,162,39,.25);}
.fare-trip{color:#4A4A4A;}
.fare-row{background:#FFFFFF;border-color:#E5E0D3;}
.fare-name{color:#4A4A4A;}
.fare-row-primary .fare-name{color:#1A1A1A;}
.fare-amt{color:#4A4A4A;}
.fare-row-primary .fare-amt{color:#8A7328;}
.fare-incl{color:#6B6B6B;}
.fare-hint{color:#6B6B6B;}
.fare-btn{border-color:#C9A227;color:#8A7328;}
.fare-btn:hover:not(:disabled){background:rgba(201,162,39,.08);}

/* ── autocomplete list must sit above the fare block ── */
.aclist{z-index:60;}
.fare-block{position:relative;z-index:1;}

/* ── fare result actions ──────────────────────── */
.fare-cta{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;}
.fare-cta a{flex:1;min-width:140px;text-align:center;padding:12px;
  border-radius:9px;font-size:13.5px;font-weight:700;text-decoration:none;}
.fare-cta-primary{background:#C9A227;color:#1A1A1A;}
.fare-cta-ghost{border:1px solid #C9A227;color:#8A7328;}

/* ── date and time fields: larger tap target ──── */
.bookcard input[type="date"],
.bookcard select#q-time,
.form input[type="datetime-local"]{
  font-size:16px;
  padding:14px 12px;
  min-height:52px;
}
.bookcard input[type="date"]::-webkit-calendar-picker-indicator,
.form input[type="datetime-local"]::-webkit-calendar-picker-indicator{
  transform:scale(1.4);
  cursor:pointer;
  opacity:.75;
}

/* ── sticky bar yields to the form ────────────── */
.stickybar{transition:transform .25s ease, opacity .25s ease;}
.stickybar.bar-hidden{transform:translateY(110%);opacity:0;pointer-events:none;}

/* ── autocomplete: the active field owns the stack ──
   Without this the suggestion list renders under the next
   field on narrow screens, so tapping a suggestion lands on
   whatever sits below it instead. */
.field:focus-within{position:relative;z-index:70;}
.aclist{z-index:80;}
