/* Layout concept: black notched showroom panels on a white page, in the manner of the reference sites.
   The hero is a camera: the real line-up pans and zooms past a fixed orange sun (the logo's sun) when you change vehicle.
   Three colours only: Black, Orange, White. Greys are tints of black on white. This design commits to one light page, so there is no dark mode. */
:root{
  --black:#0A0A0A; --white:#FFFFFF; --orange:#FF6A13;
  --ash:color-mix(in srgb,var(--black) 5%,var(--white));
  --ash2:color-mix(in srgb,var(--black) 10%,var(--white));
  --line:color-mix(in srgb,var(--black) 16%,var(--white));
  --muted:color-mix(in srgb,var(--black) 64%,var(--white));
  --line-d:color-mix(in srgb,var(--white) 22%,var(--black));
  --muted-d:color-mix(in srgb,var(--white) 68%,var(--black));
  --card-d:color-mix(in srgb,var(--white) 7%,var(--black));
  --disp:"Unbounded","Arial Black",system-ui,sans-serif;
  --body:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --hero-img:url("assets/herobg.webp"); --r:28px; --header-h:64px;
  
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--white);color:var(--black);font-family:var(--body);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit}
button,input,textarea{font:inherit;color:inherit}
img{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--black);outline-offset:3px;border-radius:4px}
.dark :focus-visible{outline-color:var(--orange)}
.on-orange :focus-visible{outline-color:var(--black)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-80px;background:var(--black);color:var(--white);padding:10px 16px;z-index:100;font-weight:700;text-decoration:none}
.skip:focus{top:calc(env(safe-area-inset-top,0px) + 8px)}
.page{max-width:1480px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.stack>*+*{margin-top:16px}
.disp{font-family:var(--disp);font-weight:400;text-transform:uppercase;letter-spacing:-.01em;line-height:1.08;text-wrap:balance}
h2.disp{font-size:clamp(1.7rem,4.2vw,3.3rem)}
.br{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.muted{color:var(--muted)}
.dark .muted{color:var(--muted-d)}
.sec{scroll-margin-top:calc(var(--header-h) + 8px)}
.pad{padding:clamp(24px,4vw,64px)}

/* panels and notches */
.panel{position:relative;border-radius:var(--r);overflow:hidden}
.dark{background:var(--black);color:var(--white)}
.light{background:var(--ash)}
.on-orange{background:var(--orange);color:var(--black)}
.tab{position:absolute;z-index:6;background:var(--white);color:var(--black)}
.tab::before,.tab::after{content:"";position:absolute;width:var(--r);height:var(--r)}
.tab.tr{top:0;right:0;border-bottom-left-radius:var(--r)}
.tab.tr::before{top:0;left:calc(var(--r)*-1);background:radial-gradient(circle at 0 100%,transparent var(--r),var(--white) calc(var(--r) + .5px))}
.tab.tr::after{right:0;bottom:calc(var(--r)*-1);background:radial-gradient(circle at 0 100%,transparent var(--r),var(--white) calc(var(--r) + .5px))}
.tab.br{bottom:0;right:0;border-top-left-radius:var(--r)}
.tab.br::before{right:0;top:calc(var(--r)*-1);background:radial-gradient(circle at 0 0,transparent var(--r),var(--white) calc(var(--r) + .5px))}
.tab.br::after{bottom:0;left:calc(var(--r)*-1);background:radial-gradient(circle at 0 0,transparent var(--r),var(--white) calc(var(--r) + .5px))}

/* chevron call-to-action: label + orange arrow block with slanted join */
.cta{display:inline-flex;align-items:stretch;height:52px;text-decoration:none;font-weight:700;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;border:0;background:none;padding:0;cursor:pointer;color:inherit;white-space:nowrap}
.cta .t{display:flex;align-items:center;padding:0 24px 0 22px;background:var(--white);color:var(--black);border-radius:8px 0 0 8px;clip-path:polygon(0 0,100% 0,calc(100% - 12px) 100%,0 100%);padding-right:30px;transition:background .2s,color .2s}
.cta .a{display:grid;place-items:center;width:58px;margin-left:-14px;background:var(--orange);color:var(--black);border-radius:0 8px 8px 0;clip-path:polygon(14px 0,100% 0,100% 100%,0 100%);padding-left:8px;transition:background .2s}
.cta:hover .t{background:var(--orange)}
.cta:hover .a{background:var(--white)}
.cta.k .t{background:var(--black);color:var(--white)}
.cta.k:hover .t{background:var(--orange);color:var(--black)}
.cta.k:hover .a{background:var(--black);color:var(--orange)}
.on-orange .cta .t{background:var(--black);color:var(--white)}
.on-orange .cta .a{background:var(--white)}
.on-orange .cta:hover .t{background:var(--white);color:var(--black)}
.on-orange .cta:hover .a{background:var(--black);color:var(--white)}
.cta[disabled]{opacity:.6;cursor:progress}
svg.i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.cta .i{width:22px;height:22px}
.pill{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:2px solid currentColor;font-weight:700;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;background:transparent;cursor:pointer;white-space:nowrap;color:inherit;transition:background .2s,color .2s,border-color .2s}
.pill:hover{background:var(--orange);border-color:var(--orange);color:var(--black)}
.sq-btn{display:grid;place-items:center;width:52px;height:52px;border:0;border-radius:10px;cursor:pointer;background:var(--white);color:var(--black);transition:background .2s}
.sq-btn.o{background:var(--orange)}
.sq-btn:hover{background:var(--ash2)}
.sq-btn.o:hover{background:var(--white)}
.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--black);background:transparent;color:var(--black);cursor:pointer;text-decoration:none}
.icon-btn:hover{background:var(--orange);border-color:var(--orange)}
.link{font-weight:700;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:3px;text-underline-offset:4px}

/* header */
.head{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:color-mix(in srgb,var(--white) 94%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.head .page{display:flex;align-items:center;gap:20px;height:var(--header-h)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.plate{display:grid;place-items:center;background:var(--white);border:2px solid var(--black);border-radius:12px;flex:none}
.brand .plate{width:44px;height:44px}
.brand .plate img{width:32px}
.brand b{display:block;font-family:var(--disp);font-weight:600;font-size:.95rem;line-height:1;letter-spacing:-.01em;text-transform:uppercase}
.brand small{display:block;font-size:.625rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.nav{display:none;margin-left:36px;gap:4px}
.nav a{position:relative;padding:10px 12px;text-decoration:none;font-weight:600;font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase}
.nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav a:hover::after,.nav a[aria-current="true"]::after{transform:scaleX(1)}
.head-actions{display:flex;gap:8px;margin-left:auto;align-items:center}
.head-actions .call-d{display:none}
#mobileNav{background:var(--white);border-top:2px solid var(--black)}
#mobileNav ul{display:grid;padding-block:6px 14px}
#mobileNav a{display:flex;justify-content:space-between;align-items:center;min-height:54px;text-decoration:none;font-family:var(--disp);text-transform:uppercase;font-size:1.25rem;border-bottom:1px solid var(--line)}
@media (min-width:1000px){.nav{display:flex}.head-actions .call-d{display:inline-flex}.head-actions .icon-btn,#menuBtn{display:none}#mobileNav{display:none!important}}

/* hero */
.hero{min-height:640px;display:grid;padding:clamp(22px,3vw,40px);--px:0;--py:0}
.hero-copy{position:relative;z-index:4;display:grid;gap:22px;align-content:start;max-width:46rem}
.hero h1{font-size:clamp(1.55rem,5vw,3.7rem);line-height:1.1}
.hero h1 em{font-style:normal;color:var(--orange)}
.hero .lead{max-width:30rem;color:var(--muted-d);font-size:1rem}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.stats{position:relative;z-index:4;display:grid;gap:18px;align-content:start}
.stat b{display:block;font-family:var(--disp);font-weight:300;text-transform:uppercase;font-size:clamp(1.15rem,2vw,1.6rem);line-height:1.1}
.stat span{display:block;font-size:.75rem;color:var(--muted-d);margin-top:4px}
.cam{position:relative;overflow:hidden;touch-action:pan-y;cursor:grab;height:clamp(230px,62vw,300px);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.cam:active{cursor:grabbing}
.cam:focus-visible{outline-offset:-3px}
.sun{position:absolute;left:50%;bottom:14%;width:clamp(210px,62vw,300px);aspect-ratio:1;z-index:0;transform:translateX(-50%) translate(calc(var(--px)*22px),calc(var(--py)*12px));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.sun svg{display:block;width:100%;height:100%}
.lineup-wrap{position:absolute;left:0;bottom:0;z-index:2;transform:translate(calc(var(--px)*-12px),calc(var(--py)*-5px));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.lineup{transition:transform 1s cubic-bezier(.65,.05,.15,1);will-change:transform}
.ground{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:1;background:repeating-linear-gradient(90deg,var(--muted-d) 0 22px,transparent 22px 44px);opacity:.6}
.hero-foot{position:relative;z-index:4;display:grid;gap:14px;align-content:end}
.now{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.now .idx{font-family:var(--disp);font-weight:300;font-size:.875rem;color:var(--muted-d)}
.now .nm{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(.95rem,1.6vw,1.25rem);line-height:1.2}
.ctrl{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dots{display:flex;gap:6px;margin-left:8px}
.dots button{width:44px;height:44px;border:0;background:transparent;color:var(--muted-d);font-family:var(--disp);font-weight:300;font-size:.75rem;cursor:pointer;border-radius:8px;position:relative}
.dots button::after{content:"";position:absolute;left:10px;right:10px;bottom:8px;height:3px;background:var(--line-d);transition:background .25s}
.dots button[aria-pressed="true"]{color:var(--white)}
.dots button[aria-pressed="true"]::after{background:var(--orange)}
.hero .tab.tr{padding:12px 16px 16px 20px}
.hero .tab.br{padding:16px 20px 18px 28px;display:none}
.tab .tb{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.tab .tn{font-family:var(--disp);font-weight:400;font-size:1.25rem;line-height:1.2;display:flex;align-items:center;gap:10px}
.tab .tn .i{color:var(--orange)}
.scroll-cue{display:none}
.mob-call{display:flex}
@media (max-width:759px){
  .hero{gap:22px;padding-top:70px}
  .stats{grid-template-columns:1fr 1fr}
  .stats .stat:nth-child(3){grid-column:1/-1}
}
@media (min-width:760px){
  .hero{padding-bottom:0}
  .hero-copy{padding-top:6px}
  .stats{position:absolute;right:clamp(24px,3vw,40px);top:110px;text-align:right}
  .cam{position:absolute;left:0;right:0;bottom:70px;height:clamp(300px,36vw,470px)}
  .hero-foot{position:absolute;left:clamp(24px,3vw,40px);bottom:20px;right:clamp(24px,3vw,40px)}
  .hero .tab.br{display:block}
  .mob-call{display:none}
  .scroll-cue{display:flex;position:absolute;right:clamp(18px,2.4vw,34px);top:46%;z-index:4;writing-mode:vertical-rl;font-size:.6875rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-d);align-items:center;gap:10px}
  .scroll-cue::after{content:"";width:2px;height:34px;background:var(--orange)}
  .sun{bottom:17%}
}
@media (min-width:760px) and (max-width:1099px){.cam{height:clamp(260px,40vw,380px)}.hero{min-height:680px}.stats{top:100px}}
@media (min-width:1100px){.hero{min-height:760px}}

/* marquee */
.marq{overflow:hidden;padding-block:clamp(14px,2vw,28px)}
.marq-track{display:flex;gap:clamp(20px,3vw,44px);width:max-content;align-items:center;font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(2.4rem,9vw,8rem);line-height:1;white-space:nowrap;will-change:transform}
.marq-track i{width:.28em;height:.28em;background:var(--black);border-radius:50%;flex:none}

/* enquiry */
.enq{display:grid;gap:36px}
.enq h2{margin-top:14px}
.enq-side{display:grid;gap:20px;align-content:start}
.direct{display:grid;gap:12px;padding-top:20px;border-top:2px solid var(--black)}
.direct .row{display:flex;flex-wrap:wrap;gap:10px}
.form{display:grid;gap:28px}
.grid3{display:grid;gap:24px}
.field{display:grid;gap:6px;min-width:0}
.field label,.legend{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.req{color:var(--black);background:var(--orange);padding:0 5px;margin-left:4px}
.in{width:100%;min-height:58px;padding:8px 0;background:transparent;border:0;border-bottom:3px solid var(--line);border-radius:0;color:var(--black);font-size:1.35rem;font-weight:500;transition:border-color .2s}
.in::placeholder{color:var(--muted);opacity:.8}
.in:hover{border-bottom-color:var(--muted)}
.in:focus-visible{outline:none;border-bottom-color:var(--black)}
.in[aria-invalid="true"]{border-bottom-color:var(--orange);border-bottom-width:6px}
textarea.in{font-size:1.0625rem;min-height:96px;resize:vertical;border:3px solid var(--line);padding:12px 14px;border-radius:12px}
.err{font-size:.9375rem;font-weight:700;display:flex;gap:8px;align-items:baseline}
.err::before{content:"";width:10px;height:10px;background:var(--orange);flex:none}
fieldset{border:0;margin:0;padding:0;min-width:0}
.seg{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.seg label{position:relative;display:block}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:flex;align-items:center;min-height:50px;padding:0 20px;border:2px solid var(--black);border-radius:999px;font-weight:600;transition:background .2s,color .2s,border-color .2s}
.seg input:hover+span{background:var(--ash2)}
.seg input:checked+span{background:var(--orange);border-color:var(--orange);color:var(--black);font-weight:700}
.seg input:focus-visible+span{outline:3px solid var(--black);outline-offset:3px}
.more{border-top:2px solid var(--line)}
.more summary{list-style:none;display:flex;align-items:center;min-height:56px;cursor:pointer;font-weight:700;border-radius:4px}
.more summary::-webkit-details-marker{display:none}
.more summary::after{content:"+";margin-left:auto;font-size:1.8rem;line-height:1;transition:transform .2s}
.more[open] summary::after{transform:rotate(45deg)}
.more .grid3{padding-block:6px 4px}
.tagrow{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:none;align-items:center;gap:6px;min-height:34px;padding:0 6px 0 14px;border-radius:999px;background:var(--orange);color:var(--black);font-size:.8125rem;font-weight:700}
.tag.on{display:inline-flex}
.tag button{width:26px;height:26px;border:0;background:transparent;border-radius:50%;cursor:pointer;display:grid;place-items:center;color:var(--black)}
.tag button:hover{background:var(--black);color:var(--white)}
.tag .i{width:14px;height:14px}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.linkbtn{background:none;border:0;padding:10px 4px;min-height:46px;font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;cursor:pointer}
.fine{font-size:.875rem;color:var(--muted);flex:1 1 240px}
.status{display:none;padding:14px 16px;border:3px solid var(--orange);font-weight:700;border-radius:12px}
.status.on{display:block}
.result{display:none;gap:16px;padding:22px;border:3px solid var(--black);border-radius:20px;background:var(--white)}
.result.on{display:grid}
.result h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:1.4rem;line-height:1.1}
.result textarea{width:100%;min-height:170px;resize:vertical;padding:12px 14px;background:var(--ash);border:2px solid var(--line);border-radius:12px;color:var(--black);font-size:1rem;line-height:1.5}
.result .acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
@media (min-width:760px){.grid3.three{grid-template-columns:1.2fr 1.2fr .8fr}.grid3.three-b{grid-template-columns:1fr 1fr 1fr}}
@media (min-width:1000px){.enq{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:72px}}

/* accordion */
.acc-item{border-bottom:1px solid var(--line)}
.acc-item:first-child{border-top:1px solid var(--line)}
.dark .acc-item{border-color:var(--line-d)}
.acc-btn{all:unset;box-sizing:border-box;width:100%;min-height:76px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:12px 0;cursor:pointer}
.acc-btn:focus-visible{outline:3px solid var(--black);outline-offset:2px;border-radius:8px}
.dark .acc-btn:focus-visible{outline-color:var(--orange)}
.acc-btn.nothumb{grid-template-columns:auto 1fr auto}
.acc-no{font-family:var(--disp);font-weight:300;font-size:.875rem;color:var(--muted);min-width:2ch}
.dark .acc-no{color:var(--muted-d)}
.acc-title{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(1rem,2.2vw,1.45rem);line-height:1.2}
.acc-chev{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:2px solid currentColor;transition:transform .3s,background .25s,color .25s,border-color .25s}
.acc-btn:hover .acc-chev{background:var(--orange);border-color:var(--orange);color:var(--black)}
.acc-btn[aria-expanded="true"] .acc-chev{transform:rotate(180deg);background:var(--orange);border-color:var(--orange);color:var(--black)}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.3,.7,.2,1),visibility 0s .4s;visibility:hidden}
.acc-panel.open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .4s cubic-bezier(.3,.7,.2,1),visibility 0s}
.acc-in{overflow:hidden;min-height:0}
.acc-body{display:grid;gap:16px;padding:4px 0 26px;max-width:40rem}
.thumb{width:72px;height:56px;border-radius:12px;background-color:var(--orange);background-repeat:no-repeat;flex:none}

/* services */
.svc-head{display:grid;gap:14px;margin-bottom:clamp(24px,4vw,48px)}
.svc{display:grid;gap:36px}
@media (min-width:900px){.svc{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}}

/* fleet */
.fleet{display:grid;gap:32px}
.fleet-view{position:relative;border-radius:24px;background:var(--card-d);overflow:hidden;margin-top:24px}
.fleet-view .cam{position:relative;height:clamp(200px,52vw,300px);bottom:auto}
.fleet-view .sun{width:clamp(160px,46vw,230px);bottom:12%}
.fleet-note{font-size:.875rem;color:var(--muted-d);margin-top:16px}
@media (min-width:900px){.fleet{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start}}

/* destinations */
.dest{display:grid;gap:20px;align-items:start;margin-top:clamp(24px,4vw,44px)}
.map{position:relative;border-radius:24px;overflow:hidden;background:var(--black)}
.map .sea{fill:var(--card-d)}
.map .land{fill:var(--black)}
.map .coast{fill:none;stroke:var(--white);stroke-width:3}
.map .wave{fill:none;stroke:var(--white);stroke-width:1.6;opacity:.22;stroke-linecap:round}
.map .river{fill:none;stroke:var(--card-d);stroke-width:8;stroke-linecap:round}
.map .road{fill:none;stroke:var(--orange);stroke-width:4;stroke-dasharray:3 10;stroke-linecap:round}
.map .sealabel{font-family:var(--disp);font-weight:300;font-size:26px;fill:var(--white);opacity:.45}
.pin{cursor:pointer}
.pin .ring{fill:var(--black);stroke:var(--white);stroke-width:3.5;transition:fill .25s,stroke .25s}
.pin text{font-family:var(--disp);font-weight:400;font-size:22px;fill:var(--white);paint-order:stroke;stroke:var(--black);stroke-width:7px;stroke-linejoin:round;text-transform:uppercase}
.pin:hover .ring{fill:var(--line-d)}
.pin[aria-pressed="true"] .ring{fill:var(--orange);stroke:var(--orange)}
.pin:focus-visible{outline:none}
.pin:focus-visible .ring{stroke:var(--orange);stroke-width:7}
.map-dot{transition:transform .8s cubic-bezier(.5,.1,.2,1);fill:var(--white)}
.map-note{position:absolute;left:14px;bottom:10px;font-size:.75rem;color:var(--muted-d)}
.dest-side{display:grid;gap:14px;min-width:0}
.dest-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dest-list button{min-height:52px;padding:0 16px;text-align:left;border:2px solid var(--black);background:transparent;font-family:var(--disp);font-size:.8125rem;text-transform:uppercase;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.dest-list button:hover{background:var(--ash2)}
.dest-list button[aria-pressed="true"]{background:var(--black);color:var(--white)}
.dest-card{display:grid;gap:14px;padding:clamp(22px,3vw,32px);background:var(--white);border-radius:24px}
.dest-card h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1}
.dest-card .cta{justify-self:start}
@media (min-width:900px){.dest{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:32px}}

/* why */
.why{display:grid;gap:36px}
.tiles{display:grid;gap:12px}
.tile{display:grid;gap:10px;padding:24px;background:var(--ash);border-radius:24px;align-content:start}
.tile .sqo{width:34px;height:34px;background:var(--orange);border-radius:9px 9px 9px 2px;display:grid;place-items:center}
.tile .sqo .i{width:18px;height:18px;color:var(--black)}
.tile h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:1rem;line-height:1.25}
.tile p{color:var(--muted);font-size:.9375rem}
.steps{padding:clamp(24px,4vw,40px)}
.steps h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:1.5rem;margin-bottom:22px}
.steps ol{display:grid;gap:20px;counter-reset:s}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:16px;counter-increment:s}
.steps li::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--orange);color:var(--black);font-family:var(--disp);font-weight:600;font-size:.875rem}
.steps strong{display:block}
.steps span{color:var(--muted-d);font-size:.9375rem}
@media (min-width:640px){.tiles{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.why{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;align-items:stretch}}

/* about */
.about{display:grid;gap:36px;align-items:start}
.about p+p{margin-top:16px}
.about .logo{display:grid;gap:18px}
.about .plate{padding:20px;border-radius:20px;width:min(100%,340px)}
.about .plate img{width:100%}
.aud{border-top:2px solid var(--black)}
.aud li{display:grid;gap:2px;padding:12px 0;border-bottom:1px solid var(--line)}
.aud b{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:.875rem}
.aud span{font-size:.9375rem;color:var(--muted)}
@media (min-width:900px){.about{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:72px}}

/* reviews */
.rev{display:grid;gap:28px;align-items:end}
.rev h2{margin-top:14px}
@media (min-width:860px){.rev{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.rev .acts{justify-self:end}}

/* contact */
.contact{position:relative}
.contact-in{position:relative;z-index:2;display:grid;gap:36px}
.bigphone{font-family:var(--disp);font-weight:300;font-size:clamp(2.1rem,9.5vw,6.6rem);line-height:1;letter-spacing:-.03em;user-select:all;overflow-wrap:anywhere}
.clist{display:grid;border-top:2px solid var(--black)}
.clist>div{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;padding:14px 0;border-bottom:2px solid var(--black)}
.clist dt{grid-column:1/-1;font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.clist dd{font-size:1.0625rem;font-weight:600;overflow-wrap:anywhere;user-select:all}
.copy-btn{min-height:44px;padding:0 16px;border:2px solid var(--black);background:transparent;border-radius:999px;font-weight:700;font-size:.8125rem;cursor:pointer;color:var(--black)}
.copy-btn:hover{background:var(--black);color:var(--white)}
.cta-stack{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.contact .palm-c{position:absolute;right:-20px;bottom:0;height:clamp(180px,34vw,380px);width:auto;color:var(--black);z-index:1;opacity:.92}
@media (min-width:900px){.contact-in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:end}}

/* faq */
.faq{display:grid;gap:28px}
.faq .acc-btn{grid-template-columns:auto 1fr auto}
.faq .acc-title{font-size:clamp(.9375rem,1.8vw,1.15rem)}
@media (min-width:900px){.faq{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:72px}}

/* footer */
.foot{position:relative;padding-top:clamp(36px,5vw,64px);padding-inline:clamp(24px,4vw,64px);padding-bottom:0}
.foot-grid{display:grid;gap:32px;position:relative;z-index:2}
.foot .plate{width:140px;padding:10px;border-radius:14px}
.foot-brand{display:grid;gap:14px;max-width:26rem;font-size:.9375rem}
.foot h4{margin:0 0 10px;font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}
.foot ul{display:grid}
.foot a{display:inline-block;padding:6px 0;text-decoration:none;font-size:.9375rem}
.foot a:hover{text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:4px}
.foot-links{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
.foot-base{position:relative;z-index:2;display:grid;gap:10px;margin-top:36px;padding-top:20px;border-top:1px solid var(--line-d);font-size:.8125rem;color:var(--muted-d)}
.privacy summary{cursor:pointer;display:inline-block;min-height:36px;font-weight:700;color:var(--white)}
.privacy p{margin-top:8px;max-width:46rem}
.giant{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(2.6rem,13.2vw,12.5rem);line-height:.8;letter-spacing:-.04em;white-space:nowrap;color:color-mix(in srgb,var(--white) 12%,var(--black));margin-top:28px;margin-bottom:-.12em;overflow:hidden;user-select:none}
@media (min-width:860px){.foot-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px}.foot-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 20px);transform:translateX(-50%);background:var(--black);color:var(--white);padding:12px 20px;border-radius:999px;border:2px solid var(--orange);font-weight:700;font-size:.9375rem;z-index:70;pointer-events:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.marq-track{transform:none!important}}

/* Airport section cards: image on the left, content on the right. Swap .acard-img contents for an <img> to use a photo. */
.acards{display:grid;gap:8px}
.acard{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:stretch;background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.acard-img{display:grid;place-items:center;background:var(--orange);color:var(--black);border-right:1px solid var(--line)}
.acard-img img{width:100%;height:100%;object-fit:cover;display:block}
.acard-img .i{width:30px;height:30px}
.acard-body{display:grid;gap:0;align-content:center;padding:10px 16px}
.acard-body b{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:.875rem;line-height:1.25}
.acard-body span{font-size:.875rem;line-height:1.4;color:var(--muted)}
@media (max-width:420px){.acard{grid-template-columns:60px minmax(0,1fr)}.acard-img .i{width:26px;height:26px}}
.acard{position:relative;isolation:isolate}
.acard::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.acard-img,.acard-body{position:relative}
.acard-img{transition:border-color .3s}
.acard-body span{transition:color .3s}
.acard:hover::before,.acard:focus-within::before{transform:scaleX(1)}
.acard:hover .acard-body span{color:var(--black)}
.acard:hover .acard-img{border-right-color:var(--black)}
@media (prefers-reduced-motion:reduce){.acard::before{transition:none}}
/* smoother hover */
.acard{transition:border-color .6s ease,box-shadow .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}
.acard::before{transition:transform .7s cubic-bezier(.22,1,.36,1);will-change:transform}
.acard-img,.acard-img .i{transition:border-color .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}
.acard-body{transition:transform .6s cubic-bezier(.22,1,.36,1)}
.acard-body b,.acard-body span{transition:color .6s ease}
.acard:hover{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 8px 20px -10px rgba(10,10,10,.25)}
.acard:hover .acard-body{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){.acard,.acard::before,.acard-img,.acard-img .i,.acard-body{transition:none}.acard:hover{transform:none}.acard:hover .acard-body,.acard:hover .acard-img .i{transform:none}}
/* no movement: orange spreads by clip-path only */
.acard:hover{transform:none;box-shadow:none}
.acard:hover .acard-body{transform:none}
.acard::before{transform:none;clip-path:inset(0 100% 0 0);transition:clip-path .7s cubic-bezier(.22,1,.36,1);will-change:clip-path}
.acard:hover::before,.acard:focus-within::before{transform:none;clip-path:inset(0 0 0 0)}
@media (prefers-reduced-motion:reduce){.acard::before{transition:none}}
/* eyebrows: uppercase label led by a dot */
p.br{display:flex;align-items:center;gap:10px}
p.br::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);flex:none}
/* buttons: orange wipes in from right to left on hover */
.cta{--tb:var(--white);--tc:var(--black);--ab:var(--orange);--ac:var(--black);--tbh:var(--orange);--tch:var(--black);--abh:var(--white);--ach:var(--black)}
.cta.k{--tb:var(--black);--tc:var(--white);--ab:var(--orange);--ac:var(--black);--tbh:var(--orange);--tch:var(--black);--abh:var(--black);--ach:var(--orange)}
.on-orange .cta{--tb:var(--black);--tc:var(--white);--ab:var(--white);--ac:var(--black);--tbh:var(--white);--tch:var(--black);--abh:var(--black);--ach:var(--white)}
.cta .t,.cta .a,.cta:hover .t,.cta:hover .a,.cta.k .t,.cta.k .a,.cta.k:hover .t,.cta.k:hover .a,.on-orange .cta .t,.on-orange .cta .a,.on-orange .cta:hover .t,.on-orange .cta:hover .a{position:relative;isolation:isolate;transition:color .5s ease}
.cta .t,.cta:hover .t,.cta.k .t,.cta.k:hover .t,.on-orange .cta .t,.on-orange .cta:hover .t{background:var(--tb);color:var(--tc)}
.cta .a,.cta:hover .a,.cta.k .a,.cta.k:hover .a,.on-orange .cta .a,.on-orange .cta:hover .a{background:var(--ab);color:var(--ac)}
.cta .t::before,.cta .a::before{content:"";position:absolute;inset:0;z-index:-1;clip-path:inset(0 0 0 100%);transition:clip-path .6s cubic-bezier(.22,1,.36,1);will-change:clip-path}
.cta .t::before{background:var(--tbh)}
.cta .a::before{background:var(--abh);transition-delay:.12s}
.cta:hover .t::before,.cta:focus-visible .t::before{clip-path:inset(0);transition-delay:.12s}
.cta:hover .a::before,.cta:focus-visible .a::before{clip-path:inset(0);transition-delay:0s}
.cta:hover .t,.cta:focus-visible .t{color:var(--tch);transition-delay:.12s}
.cta:hover .a,.cta:focus-visible .a{color:var(--ach)}
.pill{position:relative;isolation:isolate;overflow:hidden;transition:color .5s ease,border-color .5s ease}
.pill::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--orange);clip-path:inset(0 0 0 100%);transition:clip-path .6s cubic-bezier(.22,1,.36,1);will-change:clip-path}
.pill:hover,.pill:focus-visible{background:transparent;border-color:var(--orange);color:var(--black)}
.pill:hover::before,.pill:focus-visible::before{clip-path:inset(0)}
@media (prefers-reduced-motion:reduce){.cta .t,.cta .a,.cta .t::before,.cta .a::before,.pill,.pill::before{transition:none!important}}
/* arrow block keeps its colours; only the label part wipes */
.cta,.cta.k,.on-orange .cta{--abh:var(--ab);--ach:var(--ac)}
.cta .t::before{transition-delay:0s}
.cta:hover .t::before,.cta:focus-visible .t::before{transition-delay:0s}
.cta:hover .t,.cta:focus-visible .t{transition-delay:0s}
.cta .t::before,.cta .a::before{border-radius:inherit}
/* hero background photo */
.hero{background:linear-gradient(90deg,rgba(10,10,10,.78) 0,rgba(10,10,10,.45) 55%,rgba(10,10,10,.2) 100%),linear-gradient(0deg,rgba(10,10,10,.6) 0,transparent 40%),var(--hero-img) center/cover no-repeat var(--black)}
.hero .cam .sun{display:none}
.hero{background:linear-gradient(90deg,#0A0A0A 0,rgba(10,10,10,.85) 30%,rgba(10,10,10,0) 100%),var(--hero-img) center/cover no-repeat var(--black)}
/* hero: one vehicle on the right, copy stays readable on the left */
.hero .cam{-webkit-mask-image:none;mask-image:none}
.hero .lineup{transition:transform 1s cubic-bezier(.65,.05,.15,1),clip-path 1s cubic-bezier(.65,.05,.15,1)}
@media (min-width:760px){.hero .cam{height:clamp(280px,28vw,400px)}}
.hero{background:linear-gradient(270deg,rgba(10,10,10,.85) 0,rgba(10,10,10,0) 50%),linear-gradient(90deg,#0A0A0A 0,rgba(10,10,10,.85) 30%,rgba(10,10,10,0) 100%),var(--hero-img) center/cover no-repeat var(--black)}
.hero .ground{display:none}
@media (min-width:760px){.hero .cam{height:clamp(320px,33vw,500px)}}
@media (min-width:1100px){.hero{min-height:820px}}
/* hero owner + phone highlight */
.owner{display:inline-flex;align-items:center;gap:14px;width:fit-content;max-width:100%;padding:12px 20px 12px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.22);border-left:4px solid var(--orange);background:rgba(10,10,10,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--white);text-decoration:none;transition:border-color .5s ease,background .5s ease}
.owner:hover,.owner:focus-visible{background:rgba(10,10,10,.8);border-color:var(--orange)}
.owner-ic{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:12px;background:var(--orange);color:var(--black)}
.owner-ic .i{width:22px;height:22px}
.owner-tx{display:grid;gap:1px;line-height:1.25}
.owner-tx small{font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-d)}
.owner-tx b{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:.9375rem}
.owner-tx strong{font-family:var(--disp);font-weight:600;font-size:1.25rem;letter-spacing:.02em;color:var(--orange)}
@media (max-width:759px){
  .hero{padding-top:110px}
  .hero .hero-copy p.br{font-size:.6875rem;letter-spacing:.1em;line-height:1.4;align-items:flex-start}
  .hero .hero-copy p.br::before{margin-top:.4em}
}
/* hero owner: simplified, no card */
.owner{padding:18px 0 0;border:0;border-top:1px solid rgba(255,255,255,.22);border-radius:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;gap:14px;width:100%;max-width:26rem}
.owner:hover,.owner:focus-visible{background:none;border-color:rgba(255,255,255,.22)}
.owner-ic{width:44px;height:44px;border-radius:50%;transition:background .4s ease,color .4s ease}
.owner:hover .owner-ic{background:var(--white)}
.owner-tx b{font-family:var(--body);font-weight:600;text-transform:none;font-size:1rem;letter-spacing:0;color:var(--white)}
.owner-tx strong{color:var(--white);font-size:1.375rem;transition:color .4s ease}
.owner:hover .owner-tx strong{color:var(--orange)}
/* hero trust block */
.trust{display:grid;gap:12px;justify-items:start;padding-top:18px;border-top:1px solid rgba(255,255,255,.22);max-width:26rem;width:100%}
.trust-badge{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 14px 0 10px;border-radius:999px;background:var(--orange);color:var(--black);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.trust-badge .i{width:18px;height:18px}
.trust-g{display:inline-flex;align-items:center;gap:12px;color:var(--white);text-decoration:none}
.stars{display:inline-flex;gap:3px;color:var(--orange)}
.stars svg{width:20px;height:20px;fill:currentColor}
.trust-tx{display:grid;line-height:1.3;font-size:.875rem;color:var(--muted-d)}
.trust-tx b{font-family:var(--disp);font-weight:600;font-size:1.125rem;color:var(--white)}
.trust-g:hover .trust-tx{color:var(--white)}
/* Google rating card: white, green top bar, one row */
.trust{border-top:0;padding-top:0}
.trust-g{display:inline-flex;align-items:center;gap:14px;padding:14px 22px 14px 16px;background:var(--white);color:var(--black);border-radius:8px;border-top:5px solid #4CD964;box-shadow:0 8px 24px -10px rgba(0,0,0,.5);transition:transform .0s}
.glogo{width:44px;height:44px;flex:none}
.g-tx{display:grid;gap:2px;line-height:1.1}
.g-t{font-size:1.0625rem;font-weight:500;color:#202124;letter-spacing:0;text-transform:none}
.g-r{display:flex;align-items:center;gap:12px}
.g-r b{font-family:var(--body);font-weight:500;font-size:1.75rem;line-height:1;color:var(--orange)}
.trust-g .stars svg{width:22px;height:22px}
.trust-g:hover .g-t{color:#202124}
/* trust row: badge + Google rating, same height, one line */
.trust{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;max-width:none;width:auto}
.trust-badge,.trust-g{height:52px;min-height:0;box-sizing:border-box;display:inline-flex;align-items:center;gap:12px;padding:0 18px 0 12px;background:var(--white);color:var(--black);border:0;border-top:0;border-radius:8px;box-shadow:0 8px 24px -10px rgba(0,0,0,.5)}
.trust-badge{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.trust-badge .i{width:28px;height:28px;padding:5px;box-sizing:border-box;border-radius:50%;background:var(--orange);color:var(--black);stroke-width:2.4}
.glogo{width:28px;height:28px}
.g-tx{display:flex;align-items:center}
.g-t{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.g-r{gap:10px}
.g-r b{font-size:1.25rem;font-weight:600}
.trust-g .stars{gap:2px}
.trust-g .stars svg{width:18px;height:18px}
.g-col{display:grid;gap:2px;line-height:1}
.g-col small{font-size:.6875rem;font-weight:600;color:#5f6368;letter-spacing:0;text-transform:none;white-space:nowrap}
.trust-g .stars svg{width:16px;height:16px}
.trust-badge .i{padding:4px;stroke-width:2}
@media (min-width:1100px){
  .hero-copy{max-width:54rem}
  .hero h1{font-size:clamp(3.7rem,4.4vw,4.4rem)}
  .hero .lead{max-width:36rem;font-size:1.125rem}
}
@media (min-width:1100px){
  .hero-copy{max-width:62rem}
  .hero h1{font-size:clamp(4.2rem,5.2vw,5.6rem);line-height:1.05}
  .hero .lead{max-width:42rem;font-size:1.25rem}
}
/* scroll cue sits below the hero box */
.scrolldown{display:none}
@media (min-width:760px){
  .scrolldown{display:flex;flex-direction:column;align-items:center;gap:4px;width:fit-content;margin:14px auto 0;font-size:.6875rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--black);text-decoration:none}
  .scrolldown .i{width:22px;height:22px;color:var(--orange);animation:sdBounce 1.6s ease-in-out infinite}
  .scrolldown:hover .i{color:var(--black)}
}
@keyframes sdBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media (prefers-reduced-motion:reduce){.scrolldown .i{animation:none}}
/* scroll cue: inside the hero, white, bottom centre between the info and the car */
@media (min-width:760px){
  .hero .scrolldown{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);margin:0;z-index:5;color:var(--white)}
  .hero .scrolldown .i{color:var(--white)}
  .hero .scrolldown:hover .i{color:var(--orange)}
}
@media (max-width:759px){
  .brand>span:not(.plate){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}
/* the white tabs cover the hero's corners; square those corners so no dark fringe shows around the tab edge */
.hero{border-top-right-radius:0}
@media (min-width:760px){.hero{border-bottom-right-radius:0}}
/* hero: let the white tabs overshoot the box by 1px so no dark hairline shows at their outer edges (.cam still clips the car) */
.hero{overflow:visible}
.hero .tab.tr{top:-1px;right:-1px}
.hero .tab.br{bottom:-1px;right:-1px}
@media (max-width:759px){.hero .cam{height:clamp(290px,82vw,420px)}}
@media (max-width:759px){.hero .cam{margin-bottom:-14px}}
/* phones: the car frame bleeds to the hero's edges so the car is cut by the box edge, not by an inner padded box */
@media (max-width:759px){.hero .cam{margin-left:calc(-1*clamp(22px,3vw,40px));margin-right:calc(-1*clamp(22px,3vw,40px))}}
/* phones: plain rounded hero, no WhatsApp tab notch */
@media (max-width:759px){
  .hero .tab.tr{display:none}
  .hero{border-top-right-radius:var(--r);padding-top:44px;overflow:hidden}
}
.hero .mob-call{display:none!important}
@media (max-width:759px){#menuBtn,#mobileNav{display:none!important}}
.icon-btn .lbl{display:none}
@media (max-width:759px){
  .head-actions a.icon-btn{width:auto;height:44px;padding:0 16px 0 12px;gap:8px;border-radius:999px;display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
  .head-actions a.icon-btn .lbl{display:inline}
}
/* phones: the two hero buttons share one row */
@media (max-width:759px){
  .hero .cta-row{display:flex;flex-wrap:nowrap;gap:8px;align-items:center}
  .hero .cta-row .cta{height:48px;font-size:.6875rem;letter-spacing:.05em;flex:none}
  .hero .cta-row .cta .t{padding:0 8px 0 14px}
  .hero .cta-row .cta .a{width:40px}
  .hero .cta-row .cta .i{width:18px;height:18px}
  .hero .cta-row .pill{min-height:48px;padding:0 14px;font-size:.6875rem;letter-spacing:.05em;white-space:nowrap}
}
@media (max-width:759px){
  .hero .cta-row{gap:6px}
  .hero .cta-row .cta,.hero .cta-row .pill{font-size:.65rem;letter-spacing:.03em}
  .hero .cta-row .cta .t{padding:0 4px 0 12px}
  .hero .cta-row .cta .a{width:34px;padding-left:6px}
  .hero .cta-row .pill{padding:0 11px;border-width:2px}
}
@media (max-width:759px){
  .hero .cta-row .cta .t{padding:0 16px 0 12px}
  .hero .cta-row .cta .a{width:32px;padding-left:4px}
  .hero .cta-row .pill{padding:0 9px}
  .hero .cta-row .cta,.hero .cta-row .pill{font-size:.625rem;letter-spacing:.02em}
}
/* phones: arrows + numbered lines on one row, pushed to the right corner */
@media (max-width:759px){
  .hero .ctrl{flex-wrap:nowrap;justify-content:flex-end;gap:6px}
  .hero .ctrl .sq-btn{width:44px;height:44px;border-radius:8px}
  .hero .dots{gap:0;margin-left:6px}
  .hero .dots button{width:38px}
  .hero .dots button::after{left:8px;right:8px}
}
@media (max-width:759px){
  .hero .ctrl{position:relative;justify-content:flex-start}
  .hero .ctrl .dots{margin-left:auto}
}
@media (max-width:759px){.hero .stats{display:none}}
/* phones: the two hero buttons stretch to fill the row */
@media (max-width:759px){
  .hero .cta-row{width:100%}
  .hero .cta-row .cta{flex:1 1 0;min-width:0}
  .hero .cta-row .cta .t{flex:1;justify-content:center}
  .hero .cta-row .pill{flex:1 1 0;min-width:0;justify-content:center}
}
/* phones: bigger hero heading, solid header buttons */
@media (max-width:759px){
  .hero h1{font-size:clamp(1.6rem,8.4vw,2.4rem);line-height:1.1}
  .head-actions a.icon-btn[data-call]{background:var(--black);border-color:var(--black);color:var(--white)}
  .head-actions a.icon-btn[data-wa]{background:var(--orange);border-color:var(--orange);color:var(--black)}
}
/* phones: trust cards identical in width, height, padding and alignment */
@media (max-width:759px){
  .hero .trust{display:grid;grid-template-columns:1fr;gap:8px;width:100%;max-width:none}
  .hero .trust-badge,.hero .trust-g{width:100%;height:56px;padding:0 16px;justify-content:flex-start;gap:12px;border-radius:12px;box-sizing:border-box}
  .hero .trust-badge .i,.hero .glogo{width:32px;height:32px;flex:none}
  .hero .trust-badge{font-size:.75rem;letter-spacing:.08em}
  .hero .g-r{gap:10px}
  .hero .g-r b{font-size:1.375rem}
}
/* phones: "Prefer to talk?" buttons span the card */
@media (max-width:759px){
  .direct .row{display:grid;grid-template-columns:1fr;gap:10px;width:100%}
  .direct .row .cta,.direct .row .pill{width:100%;box-sizing:border-box;justify-content:center}
  .direct .row .cta .t{flex:1;justify-content:center}
}
/* phones: single full-width Plan Your Ride button */
@media (max-width:759px){
  .hero .cta-row .pill{display:none}
  .hero .cta-row .cta{flex:1 1 100%;width:100%;height:52px;font-size:.8125rem;letter-spacing:.08em}
  .hero .cta-row .cta .a{width:58px;padding-left:8px}
  .hero .cta-row .cta .i{width:22px;height:22px}
}
.ground{display:none}
/* fleet preview: bigger vehicles and a bigger sun circle */
.fleet-view .cam{height:clamp(250px,66vw,380px)}
.fleet-view .sun{width:min(96%,460px);bottom:-10%}
@media (min-width:1100px){.fleet-view .cam{height:clamp(300px,26vw,400px)}}
/* destination photos: one wide, two half-width; neutral tile until the file exists */
.dgal{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.dgal figure{margin:0;position:relative;overflow:hidden;border-radius:14px;aspect-ratio:4/3;background:var(--ash) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8a2 2 0 012-2h2l1.5-2h7L17 6h2a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") center/32px no-repeat}
.dgal figure:first-child{grid-column:1/-1;aspect-ratio:16/9}
.dgal img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s ease}
.dgal figure.ok img{opacity:1}
.dgal img:not([src]),.dgal figure:not(.ok) img{visibility:hidden}
/* destination section: responsive */
.dest-card{min-width:0}
.dest-card .cta{max-width:100%}
@media (max-width:759px){
  .dest-list{grid-template-columns:1fr 1fr}
  .dest-card .cta{justify-self:stretch;width:100%}
  .dest-card .cta .t{flex:1;justify-content:center}
}
@media (min-width:760px) and (max-width:899px){.dest-list{grid-template-columns:repeat(4,1fr)}}
.dest-card{grid-template-columns:minmax(0,1fr)}
.map-note{left:auto;right:14px}
@media (min-width:760px){.dest{grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:28px}}
@media (min-width:760px) and (max-width:899px){.dest-list{grid-template-columns:1fr 1fr}}
/* destination: pills centred, button never wider than the card */
.dest-list button{text-align:center;display:flex;align-items:center;justify-content:center;padding:0 12px}
.dest-card .cta{box-sizing:border-box;max-width:100%;white-space:normal;height:auto;min-height:52px}
.dest-card .cta .t{min-width:0;white-space:normal;text-align:center;justify-content:center;line-height:1.25;padding:8px 8px 8px 16px}
.dest-card .cta .a{flex:none}
@media (max-width:759px){.dest-card .cta{justify-self:stretch;width:100%}.dest-card .cta .t{flex:1}}
@media (max-width:759px){.map-note{display:none}}
.dgal{display:block}.dgal figure,.dgal figure:first-child{grid-column:auto;aspect-ratio:16/10;width:100%}
/* desktop: the four stops sit in one row */
@media (min-width:900px){
  .dest-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .dest-list button{min-height:46px;padding:0 6px;font-size:.75rem;letter-spacing:0;white-space:nowrap}
}
@media (min-width:900px) and (max-width:1099px){
  .dest-list{grid-template-columns:1fr 1fr;gap:8px}
  .dest-list button{min-height:46px;padding:0 12px;font-size:.8125rem;white-space:normal}
}
/* two-column layout: the map fills the same height as the right column */
@media (min-width:760px){
  .dest{align-items:stretch}
  .map{min-height:420px}
}
@media (min-width:760px) and (max-width:1099px){.map .sealabel{display:none}}
/* tablets: stacked, map at its natural shape; the equal-height map is for wide desktops only */
@media (min-width:760px) and (max-width:1099px){
  .dest{grid-template-columns:minmax(0,1fr);gap:20px}
  .map{min-height:0}
  .map .sealabel{display:inline}
  .dest-list{grid-template-columns:repeat(4,minmax(0,1fr))}
  .dest-list button{white-space:nowrap;padding:0 10px}
}
/* real map */
.map{background:var(--ash2)}
#destMap{position:absolute;inset:0;z-index:0;font-family:var(--body)}
.map{min-height:340px}
@media (min-width:760px) and (max-width:1099px){.map{min-height:380px}}
.dpin{background:none;border:0}
.dpin-dot{position:absolute;left:0;top:0;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:var(--white);border:4px solid var(--black);box-sizing:border-box;box-shadow:0 2px 8px rgba(0,0,0,.35);transition:background .3s ease,border-color .3s ease,transform .3s ease}
.dpin-lbl{position:absolute;left:16px;top:-12px;padding:3px 9px;border-radius:999px;background:var(--black);color:var(--white);font-family:var(--disp);font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.dpin.on .dpin-dot{background:var(--orange);border-color:var(--black);transform:scale(1.25)}
.dpin.on .dpin-lbl{background:var(--orange);color:var(--black)}
.dpin:focus-visible .dpin-dot{outline:3px solid var(--orange);outline-offset:3px}
.leaflet-container a{color:inherit}
.dpin.left .dpin-lbl{left:auto;right:16px}
/* bottom sheet (phones) */
.sheet{position:fixed;inset:0;z-index:80;display:none}
.sheet:not([hidden]){display:block}
.sheet-bg{position:absolute;inset:0;background:rgba(10,10,10,.55);opacity:0;transition:opacity .35s ease}
.sheet.open .sheet-bg{opacity:1}
.sheet-panel{position:absolute;left:0;right:0;bottom:0;max-height:92vh;max-height:92dvh;display:flex;flex-direction:column;background:var(--white);color:var(--black);border-radius:24px 24px 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.35);transform:translate3d(0,100%,0);transition:transform .38s cubic-bezier(.22,1,.36,1);outline:0;padding-bottom:env(safe-area-inset-bottom,0px)}
.sheet.open .sheet-panel{transform:translate3d(0,0,0)}
.sheet-top{flex:none;touch-action:none;cursor:grab;padding:8px 20px 4px}
.sheet-grab{display:block;width:44px;height:5px;margin:0 auto 6px;border-radius:999px;background:var(--line)}
.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.sheet-head h2{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:1.25rem;line-height:1.2}
.sheet-x{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--ash);color:var(--black);cursor:pointer}
.sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:8px 20px 24px}
.sheet-body .form{gap:22px}
html.sheet-lock,html.sheet-lock body{overflow:hidden}
@media (min-width:760px){.sheet{display:none!important}}
@media (prefers-reduced-motion:reduce){.sheet-bg,.sheet-panel{transition:none}}
/* phones: no hero button; a full-width sticky Plan Your Ride bar sits at the bottom */
.sticky-cta{display:none}
@media (max-width:759px){
  .hero .cta-row{display:none}
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line)}
  .sticky-cta .cta{display:flex;width:100%;height:54px;font-size:.8125rem;letter-spacing:.08em}
  .sticky-cta .cta .t{flex:1;justify-content:center}
  html.sheet-lock .sticky-cta{display:none}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
  .toast{bottom:calc(env(safe-area-inset-bottom,0px) + 86px)}
}
.sticky-cta .cta .t{gap:10px}.sticky-cta .lead-ic{width:22px;height:22px;flex:none;color:var(--orange)}
.dgal figcaption{position:absolute;left:10px;bottom:10px;z-index:1;padding:3px 10px;border-radius:999px;background:rgba(10,10,10,.6);color:var(--white);font-size:.6875rem;font-weight:600;letter-spacing:.04em;opacity:0;transition:opacity .5s ease;pointer-events:none}
.dgal figure.ok figcaption{opacity:1}
section[aria-labelledby="why-h"]>.pad{padding-left:0;padding-right:0}
/* about: same left edge as the cards in other sections; image under the text */
#about{padding-left:0;padding-right:0}
.about-img{margin:clamp(20px,3vw,32px) 0 0;border-radius:24px;overflow:hidden;background:var(--ash)}
.about-img img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
/* about: trip picker */
.trip-pick{display:grid;gap:14px;padding:clamp(18px,2.4vw,26px);border-radius:24px;background:var(--black);color:var(--white)}
.tp-q{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.2}
.tp-chips{display:flex;flex-wrap:wrap;gap:8px}
.tp-chip{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border:2px solid var(--line-d);border-radius:999px;background:transparent;color:var(--white);font:700 .75rem/1 var(--body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .45s ease,border-color .45s ease}
.tp-chip .i{width:18px;height:18px;color:var(--orange);transition:color .45s ease}
.tp-chip::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--orange);clip-path:inset(0 100% 0 0);transition:clip-path .55s cubic-bezier(.22,1,.36,1)}
.tp-chip:hover,.tp-chip[aria-selected="true"]{border-color:var(--orange);color:var(--black)}
.tp-chip:hover .i,.tp-chip[aria-selected="true"] .i{color:var(--black)}
.tp-chip[aria-selected="true"]::before{clip-path:inset(0 0 0 0)}
.tp-chip:hover::before{clip-path:inset(0 0 0 0)}
.tp-chip:focus-visible{outline:3px solid var(--white);outline-offset:3px}
.tp-panel{display:grid;gap:14px;justify-items:start;padding-top:14px;border-top:1px solid var(--line-d)}
.tp-text{color:var(--muted-d);font-size:1rem;line-height:1.55;min-height:3.1em}
.tp-panel.swap .tp-text{animation:tpIn .45s cubic-bezier(.22,1,.36,1)}
@keyframes tpIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.trip-pick .cta{--tb:var(--white);--tc:var(--black)}
@media (max-width:759px){.tp-panel .cta{width:100%}.tp-panel .cta .t{flex:1;justify-content:center}}
@media (prefers-reduced-motion:reduce){.tp-panel.swap .tp-text{animation:none}.tp-chip,.tp-chip::before{transition:none}}
/* fleet preview: lower height */
.fleet-view .cam{height:clamp(200px,52vw,280px)}
@media (min-width:1100px){.fleet-view .cam{height:clamp(240px,20vw,300px)}}
/* reviews */
.rv{display:grid;gap:clamp(20px,3vw,32px);background:radial-gradient(120% 140% at 85% -10%,rgba(255,106,19,.16),transparent 55%),var(--black)}
.rv-head h2{margin-top:14px}
.rv-wrap{display:grid;gap:16px;align-items:stretch;min-width:0}
.rv-sum{display:grid;gap:14px;align-content:center;padding:clamp(20px,2.6vw,28px);border:1px solid var(--line-d);border-radius:24px;background:rgba(255,255,255,.05)}
.rv-brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.0625rem}
.rv-g{width:32px;height:32px;padding:5px;box-sizing:border-box;border-radius:50%;background:var(--white)}
.rv-score{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.rv-score b{font-family:var(--body);font-weight:500;font-size:clamp(3.2rem,6vw,4.4rem);line-height:1;letter-spacing:-.03em}
.rv .stars{display:inline-flex;gap:3px;color:#FBBC05}
.rv .stars svg{width:24px;height:24px;fill:currentColor}
.rv .stars.sm svg{width:16px;height:16px}
.rv .stars svg.off{color:var(--line-d)}
.rv-based{color:var(--muted-d);font-size:.9375rem}
.rv-based b{color:var(--white)}
.rv-btn{justify-self:start;display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:999px;background:var(--white);color:var(--black);font-weight:600;font-size:.9375rem;text-decoration:none;transition:background .35s ease}
.rv-btn:hover{background:var(--orange)}
.rv-rail{position:relative;min-width:0;display:grid;gap:12px}
.rv-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px;-webkit-mask-image:linear-gradient(90deg,#000 0,#000 88%,transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 88%,transparent 100%)}
.rv-track::-webkit-scrollbar{display:none}
.rv-card{flex:0 0 min(82%,320px);scroll-snap-align:start;display:grid;gap:12px;align-content:start;padding:20px;border:1px solid var(--line-d);border-radius:22px;background:rgba(255,255,255,.05)}
.rv-who{display:flex;align-items:center;gap:12px}
.rv-av{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;color:var(--white);font-weight:700;font-size:.9375rem}
.rv-nm{display:grid;line-height:1.3;min-width:0}
.rv-nm b{font-weight:600}
.rv-nm small{color:var(--muted-d);font-size:.8125rem}
.rv-card p{color:#e8e8e8;font-size:.9375rem;line-height:1.55}
.rv-ctrl{display:flex;gap:8px;justify-content:flex-end}
@media (min-width:900px){.rv-wrap{grid-template-columns:minmax(0,300px) minmax(0,1fr)}.rv-wrap:has(.rv-rail[hidden]){grid-template-columns:minmax(0,420px)}}
.rv-card p,.rv-nm b{font-family:var(--body),"Noto Sans Devanagari",sans-serif}
/* reviews marquee */
.rv-track.marquee{overflow:hidden;scroll-snap-type:none;width:100%}
.rv-track.marquee{display:flex;flex-wrap:nowrap;gap:16px}
.rv-track.marquee .rv-card{scroll-snap-align:none}
.rv-track.marquee{animation:none}
.rv-track.marquee>.rv-card:first-child{margin-left:0}
.rv-track.marquee>*{animation:rvMove var(--rv-dur,40s) linear infinite;will-change:transform}
.rv-track.marquee.paused>*{animation-play-state:paused}
@keyframes rvMove{to{transform:translate3d(var(--rv-shift,-50%),0,0)}}
.rv-track.marquee{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%)}
/* contact: name and number each on one line, sized to the column */
.contact{container-type:inline-size}
#contact-h{white-space:nowrap;font-size:clamp(1.15rem,6.4vw,2.6rem)}
.bigphone{white-space:nowrap;overflow-wrap:normal;font-size:clamp(1.8rem,10.5vw,3.8rem)}
@media (min-width:900px){
  #contact-h{font-size:clamp(1.8rem,3.6vw,3.4rem)}
  .bigphone{font-size:clamp(2.6rem,6.2vw,5.6rem)}
}
.contact-in{grid-template-columns:minmax(0,1fr)}
.contact-in>*{min-width:0}
#contact-h{font-size:min(2.6rem,calc((100cqw - 60px)/14.8))}
.bigphone{font-size:min(3.8rem,calc((100cqw - 60px)/8.4))}
@media (min-width:900px){
  .contact-in{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
  #contact-h{font-size:min(3.4rem,calc((100cqw*.58 - 40px)/14.8))}
  .bigphone{font-size:min(5.6rem,calc((100cqw*.58 - 40px)/8.4))}
}
#contact-h{font-size:min(2.6rem,calc(100cqw/11.8))}
.bigphone{font-size:min(3.8rem,calc(100cqw/6.7))}
@media (min-width:900px){
  #contact-h{font-size:min(3.4rem,calc((58cqw - 30px)/11.8))}
  .bigphone{font-size:min(5.6rem,calc((58cqw - 30px)/6.7))}
}
/* contact heading + number: one line each, sized from the real glyph widths */
#contact-h{font-size:min(2.6rem,calc(100cqw/14.8))}
.bigphone{font-size:min(3.8rem,calc(100cqw/8.3))}
@media (min-width:900px){
  #contact-h{font-size:min(3.4rem,calc((58cqw - 40px)/14.8))}
  .bigphone{font-size:min(5.6rem,calc((58cqw - 40px)/8.3))}
}
/* contact: social icons */
.contact .palm-c{display:none}
.social{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.social-t{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.social ul{display:flex;gap:10px;list-style:none;margin:0;padding:0}
.social a{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;width:48px;height:48px;border:2px solid var(--black);border-radius:50%;color:var(--black);transition:color .45s ease}
.social a[hidden]{display:none}
.social a::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--black);clip-path:inset(0 0 0 100%);transition:clip-path .55s cubic-bezier(.22,1,.36,1)}
.social a:hover,.social a:focus-visible{color:var(--white)}
.social a:hover::before,.social a:focus-visible::before{clip-path:inset(0)}
.social .i{width:22px;height:22px}
@media (prefers-reduced-motion:reduce){.social a,.social a::before{transition:none}}
@media (min-width:900px){
  .contact-in{align-items:end;row-gap:0}
  .contact-in>div:first-child{grid-row:1/span 2}
  .contact-in>.social{grid-column:2;margin-top:18px;align-self:end}
}
/* faq: left column stays in view while the questions scroll */
@media (min-width:900px){
  .faq{align-items:start}
  .faq>div:first-child{position:sticky;top:calc(var(--header-h) + 24px);align-self:start}
}
/* footer base: copyright left, credit right */
@media (min-width:760px){.foot-base{grid-template-columns:1fr auto;align-items:center;gap:10px 24px}.foot-base .dev{text-align:right}}
.foot-base .dev b{color:var(--white);font-weight:600}
/* footer wordmark: the full name, sized to the footer width */
.foot{container-type:inline-size}
.giant{font-size:calc(100cqw/11.9);overflow:visible}
.giant{font-size:calc(100cqw/10.5);margin-bottom:-.06em}
/* footer contact lines with icons */
.foot-contact{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.foot-contact li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start}
.foot-contact .i{width:20px;height:20px;margin-top:2px;color:var(--orange)}
.foot-contact a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.foot-contact a:hover{color:var(--orange)}
.foot-contact{gap:6px;font-size:.9375rem;line-height:1.45}
.foot-contact li{grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start}
.foot-contact .i{width:18px;height:18px;margin:0;align-self:start;position:relative;top:calc((1.45em - 18px)/2)}
.foot-contact a,.foot-contact a:hover,.foot-contact a:focus{text-decoration:none;border:0;background:none;box-shadow:none;display:inline}
.foot-contact a:hover{color:var(--orange)}
.foot .foot-contact a{padding:0;display:inline;font-size:inherit;line-height:inherit}
.foot .foot-contact a:hover{text-decoration:none;color:var(--orange)}
.foot-contact{gap:10px}
.foot-contact li{min-height:0}
.foot-contact .i{top:calc((1.45em - 18px)/2)}
.snd[hidden]{display:none}
.snd{margin-left:6px}
@media (max-width:759px){.snd{display:none}}
@media (min-width:1100px){.hero-copy{max-width:min(62rem,calc(100% - 340px))}}
/* phones only: compact glass trust badges, side by side, icon on top */
@media (max-width:759px){
  .hero .trust{display:grid;grid-template-columns:repeat(2,minmax(0,170px));gap:10px;width:auto;max-width:none;padding:0;border:0;align-items:stretch}
  .hero .trust-badge,.hero .trust-g{position:relative;box-sizing:border-box;width:auto;height:auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 12px 13px;border-radius:16px;border:1px solid rgba(255,255,255,.16);border-top-color:rgba(255,106,19,.75);background:linear-gradient(180deg,rgba(255,106,19,.08),rgba(10,10,10,.62) 48%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 24px -12px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.05);color:var(--white);text-align:center;text-decoration:none;transition:border-color .4s ease,transform .0s}
  .hero .trust-g:hover{border-color:rgba(255,255,255,.3);border-top-color:var(--orange)}
  .hero .trust-badge .i{width:38px;height:38px;padding:8px;box-sizing:border-box;border-radius:50%;background:var(--orange);color:var(--black);stroke-width:2;box-shadow:0 0 16px rgba(255,106,19,.45)}
  .hero .trust-badge{font-size:.6875rem;font-weight:700;letter-spacing:.08em;line-height:1.3;text-transform:uppercase;white-space:normal}
  .hero .glogo{width:38px;height:38px;padding:7px;box-sizing:border-box;border-radius:50%;background:var(--white);flex:none}
  .hero .g-tx{display:grid;justify-items:center;gap:2px}
  .hero .g-r{display:grid;justify-items:center;gap:3px}
  .hero .g-r b{font-size:1.375rem;line-height:1;font-weight:600;color:var(--orange)}
  .hero .g-col{display:grid;justify-items:center;gap:3px}
  .hero .trust-g .stars{gap:2px;color:var(--orange)}
  .hero .trust-g .stars svg{width:13px;height:13px}
  .hero .g-col small{font-size:.6875rem;font-weight:500;color:rgba(255,255,255,.78);letter-spacing:0;text-transform:none;white-space:nowrap}
  .hero .trust{grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .hero .trust-badge,.hero .trust-g{width:100%;height:auto;padding:12px 8px 11px;justify-content:center;border-radius:14px}
  .hero .trust-badge{font-size:.625rem;letter-spacing:.06em}
  .hero .g-col small{font-size:.625rem}
}
/* desktop: same row layout as before, in the dark glass style of the phone badges */
@media (min-width:760px){
  .hero .trust-badge,.hero .trust-g{background:linear-gradient(180deg,rgba(255,106,19,.08),rgba(10,10,10,.62) 70%);border:1px solid rgba(255,255,255,.16);border-top:1px solid rgba(255,106,19,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 24px -12px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.05);color:var(--white);border-radius:12px;transition:border-color .4s ease}
  .hero .trust-g:hover{border-color:rgba(255,255,255,.3);border-top-color:var(--orange)}
  .hero .trust-badge .i{box-shadow:0 0 14px rgba(255,106,19,.45)}
  .hero .g-r b{color:var(--orange)}
  .hero .trust-g .stars{color:var(--orange)}
  .hero .g-col small{color:rgba(255,255,255,.78)}
  .hero .glogo{background:var(--white);border-radius:50%;padding:4px;box-sizing:border-box}
}

/* ===== footer redesign ===== */
.foot{background:linear-gradient(90deg,rgba(10,10,10,.93) 0,rgba(10,10,10,.8) 45%,rgba(10,10,10,.28) 100%),linear-gradient(0deg,rgba(10,10,10,.55),transparent 40%),url("assets/footerbg.webp") 70% 40%/cover no-repeat var(--black)}
.foot-grid{grid-template-columns:minmax(0,1fr);gap:28px}
.foot-brand{max-width:none;gap:16px}
.foot .plate{width:150px;padding:8px;border-radius:18px;background:var(--white)}
.foot-contact{gap:12px}
.foot-contact li{grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center}
.foot-contact li:last-child{align-items:start}
.fc-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--orange);color:var(--black)}
.fc-ic .i{width:17px;height:17px;position:static;margin:0}
.foot-contact .i{position:static;margin:0;top:auto;color:inherit}
.foot-contact li>span:not(.fc-ic){line-height:1.45}
.foot-social{display:flex;gap:10px;list-style:none;margin:0;padding:0}
.foot-social li{display:block}
.foot .foot-social a{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(10,10,10,.55);color:var(--white);transition:background .4s ease,color .4s ease,border-color .4s ease}
.foot .foot-social a[hidden]{display:none}
.foot .foot-social a:hover{background:var(--orange);border-color:var(--orange);color:var(--black);text-decoration:none}
.foot-social .i{width:20px;height:20px}
.foot .foot-book{display:inline-flex;align-items:center;gap:12px;width:fit-content;max-width:100%;min-height:52px;padding:0 20px;border-radius:14px;background:var(--orange);color:var(--black);font-weight:700;font-size:1rem;text-decoration:none;transition:background .4s ease,color .4s ease}
.foot .foot-book span{flex:1}
.foot .foot-book .i{width:22px;height:22px}
.foot .foot-book:hover{background:var(--white);text-decoration:none}
.foot-col h4{position:relative;margin:0 0 18px;padding-bottom:12px;font-size:.8125rem;letter-spacing:.16em}
.foot-col h4::after{content:"";position:absolute;left:0;bottom:0;width:30px;height:3px;border-radius:2px;background:var(--orange)}
.foot-col ul{gap:2px;list-style:none;margin:0;padding:0}
.foot .foot-col a{display:flex;align-items:center;gap:12px;padding:8px 0;color:rgba(255,255,255,.92);text-decoration:none;transition:color .3s ease}
.foot .foot-col a .i{width:20px;height:20px;flex:none;color:var(--white);transition:color .3s ease}
.foot .foot-col a:hover{color:var(--orange);text-decoration:none}
.foot .foot-col a:hover .i{color:var(--orange)}
.foot-touch p{color:rgba(255,255,255,.78);font-size:.9375rem;line-height:1.55;margin-bottom:16px}
.foot-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.foot-tiles li{display:grid;justify-items:center;align-content:center;gap:8px;padding:14px 6px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(10,10,10,.5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;font-size:.75rem;line-height:1.3}
.foot-tiles .i{width:26px;height:26px;color:var(--orange)}
.foot-base{margin-top:28px;padding:16px 0 18px;background:none;border-top:1px solid rgba(255,255,255,.14)}
@media (min-width:760px) and (max-width:1099px){
  .foot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
  .foot-brand{grid-column:1/-1}
  .foot-touch{grid-column:1/-1}
  .foot-tiles{max-width:420px}
}
@media (min-width:1100px){
  .foot-grid{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr)) minmax(0,1.15fr);gap:0}
  .foot-grid>*{padding:0 clamp(16px,2vw,32px);border-left:1px solid rgba(255,255,255,.12)}
  .foot-grid>:first-child{padding-left:0;border-left:0}
  .foot-grid>:last-child{padding-right:0}
}
.foot .foot-social{display:flex;flex-wrap:wrap;gap:10px}
.foot .foot-social li{width:auto}
.fc-ic{align-self:center;flex:none;aspect-ratio:1}
.fc-ic .i{display:block}
.foot-contact li:last-child .fc-ic{align-self:start}
.foot-contact .fc-ic .i{align-self:center;justify-self:center}

/* enquiry form: name + mobile row, honeypot */
.pair{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media (min-width:560px){.pair{grid-template-columns:1fr 1fr;gap:24px}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media (max-width:759px){:root{--hero-img:url("assets/herobg-m.webp")}}
/* routes + marathi */
.routes-lead{margin-top:14px;max-width:32rem}
.routes h2{margin-top:14px}
.routes-grid{list-style:none;margin:clamp(20px,3vw,32px) 0 0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
.routes-grid a{display:grid;gap:6px;height:100%;padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--black);text-decoration:none;transition:border-color .35s ease,transform 0s}
.routes-grid a:hover{border-color:var(--orange)}
.routes-grid b{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:1rem;line-height:1.25}
.routes-grid span{color:var(--muted);font-size:.9375rem;line-height:1.5}
@media (min-width:640px){.routes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.routes-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mr-band{padding-left:0;padding-right:0;max-width:60rem}
.mr-band h2{margin:14px 0 20px}
.mr-band p+p{margin-top:14px}
.mr-band,.mr-band p,.mr-band h2{font-family:var(--body),"Noto Sans Devanagari",sans-serif}
.mr-band h2{font-family:"Noto Sans Devanagari",var(--body),sans-serif;font-weight:600;text-transform:none;letter-spacing:0;font-size:clamp(1.5rem,3.4vw,2.4rem);line-height:1.3}
.mr-band a{color:inherit;font-weight:700}
