:root{
  --ink:#06090d;
  --ink-2:#0b1015;
  --panel:rgba(20,26,32,0.72);
  --panel-solid:#141a20;
  --panel-2:#1b232b;
  --line:rgba(255,255,255,0.09);
  --line-2:rgba(255,255,255,0.15);
  --blue:#0D76BD;
  --blue-bright:#33a8ec;
  --white:#eef4f8;
  --steel:#93a0ac;
  --steel-dim:#6c7883;
  --plate:#ffd400;
  --amber:#ffcf33;
  --ok:#48d18a;
  --warn:#ffb020;
  --r:6px;
  --tabh:40px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none!important;transition:none!important;}
}
body{
  background:var(--ink);color:var(--white);
  font-family:'Inter',system-ui,sans-serif;line-height:1.55;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
body.has-tab{padding-top:var(--tabh);}
h1,h2,h3,h4,.disp{font-family:'Oxanium',sans-serif;font-weight:700;letter-spacing:0.01em;}
.mono{font-family:'JetBrains Mono',monospace;}
a{color:var(--blue-bright);text-decoration:none;}
img{display:block;max-width:100%;}
.wrap{max-width:820px;margin:0 auto;padding:0 20px;}

/* Backgrounds — brightened a further ~5% (brightness 1.13→1.19) */
.bg-layer{position:fixed;inset:0;z-index:-2;background:var(--ink);overflow:hidden;}
.bg-photo{position:absolute;inset:-5% 0 -5% 0;width:100%;height:110%;background-position:center;background-size:cover;
  opacity:0;transform:translateY(0);transition:opacity .9s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform;
  filter:brightness(1.19) contrast(1.2);}
.bg-photo.on{opacity:0.61;}
/* Alloy wheels page — a further ~5% brightness/contrast on top of the shared bump above */
body[data-page="alloy-wheels"] .bg-photo{filter:brightness(1.25) contrast(1.26);}
.bg-scrim{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(90deg, rgba(6,9,13,0.72) 0%, rgba(6,9,13,0.42) 45%, rgba(6,9,13,0.58) 100%),
    linear-gradient(180deg, rgba(6,9,13,0.58) 0%, rgba(6,9,13,0.30) 30%, rgba(6,9,13,0.72) 78%, rgba(6,9,13,0.92) 100%);}

header.site{position:sticky;top:0;z-index:40;backdrop-filter:blur(10px);
  background:linear-gradient(180deg, rgba(6,9,13,0.9), rgba(6,9,13,0.55));border-bottom:1px solid var(--line);}
body.has-tab header.site{top:var(--tabh);}
.hd{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 20px;max-width:820px;margin:0 auto;}
.hd-logo{height:40px;width:auto;}
.hd-actions{display:flex;align-items:center;gap:7px;}
.hd-cta{font-family:'Oxanium',sans-serif;font-weight:600;font-size:12px;color:var(--white);
  border:1px solid var(--line-2);padding:7px 12px;border-radius:999px;white-space:nowrap;
  display:inline-flex;align-items:center;gap:7px;transition:border-color .2s,background .2s;}
.hd-cta:hover{border-color:var(--blue-bright);background:rgba(51,168,236,0.08);}
.hd-cta.whatsapp{border-color:rgba(72,209,138,0.42);background:rgba(72,209,138,0.08);color:#dff8eb;}
.hd-cta.whatsapp:hover{border-color:var(--ok);background:rgba(72,209,138,0.16);}
.hd-cta.whatsapp::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.4}}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}

.hero{padding:42px 0 14px;}
.brand-lockup{display:flex;align-items:center;gap:16px;margin-bottom:22px;}
.hero-logo{width:min(196px,52vw);height:auto;filter:drop-shadow(0 18px 36px rgba(0,0,0,0.55));}
.brand-note{max-width:270px;font-family:'Oxanium',sans-serif;font-weight:700;font-size:16.5px;line-height:1.22;text-transform:uppercase;color:#dbe8f0;}
.brand-note span{display:block;margin-top:5px;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:0.14em;color:var(--blue-bright);}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11px;
  letter-spacing:0.18em;color:var(--blue-bright);border:1px solid rgba(51,168,236,0.3);
  background:rgba(51,168,236,0.07);padding:5px 12px;border-radius:2px;margin-bottom:20px;}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--blue-bright);}
.hero h1{font-size:clamp(34px,8vw,58px);line-height:1.02;letter-spacing:0;text-transform:uppercase;}
.hero h1 .dim{color:var(--steel);}
.hero h1 .accent{color:var(--blue-bright);}
.hero .lede{margin-top:18px;font-size:16.5px;color:var(--steel);max-width:52ch;}
.trust-row{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px;max-width:620px;}
@media(min-width:640px){.trust-row{grid-template-columns:repeat(3,1fr);}}
.trust{border:1px solid var(--line);background:rgba(20,26,32,0.62);backdrop-filter:blur(6px);border-radius:var(--r);padding:10px 12px;}
.trust .k{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:0.12em;color:var(--blue-bright);text-transform:uppercase;}
.trust .v{font-size:13px;color:#d7e2ea;margin-top:2px;}

/* Plate lookup */
.lookup{margin-top:34px;}
.lookup-label{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;color:var(--steel);margin-bottom:10px;text-transform:uppercase;}
.lookup-help{margin-top:10px;font-size:12px;color:var(--steel-dim);}
.lookup-help a{color:var(--blue-bright);border-bottom:1px solid rgba(51,168,236,0.35);}
.plate-row{display:flex;gap:10px;flex-wrap:wrap;}
.gb-plate{display:flex;align-items:stretch;border-radius:8px;overflow:hidden;border:3px solid #0a0a0a;
  box-shadow:0 10px 30px rgba(0,0,0,0.5);flex:1;min-width:220px;background:var(--plate);min-height:62px;}
.gb-plate .gb{background:linear-gradient(180deg,#0b3fb0,#062a86);color:#fff;width:34px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;padding:6px 0;gap:4px;}
.gb-plate .gb .stars{font-size:9px;line-height:1;color:#ffd400;}
.gb-plate input{flex:1;border:none;background:var(--plate);color:#111;font-family:'Oxanium',sans-serif;
  font-weight:700;font-size:clamp(22px,6vw,30px);letter-spacing:0.12em;text-transform:uppercase;text-align:center;padding:12px 10px;min-width:0;}
.gb-plate input::placeholder{color:#0009;}
.gb-plate input:focus{outline:none;}
.lookup-btn{font-family:'Oxanium',sans-serif;font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:0.03em;
  background:var(--blue);color:#fff;border:none;border-radius:8px;padding:0 24px;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;transition:background .2s,transform .1s,box-shadow .2s;white-space:nowrap;min-height:50px;}
.lookup-btn:hover{background:var(--blue-bright);}
.lookup-btn:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(51,168,236,0.22);}
.lookup-btn:active{transform:scale(.98);}
.lookup-btn:disabled{opacity:.6;cursor:default;}

.veh-card{margin-top:14px;max-height:0;overflow:hidden;opacity:0;
  transition:max-height .5s cubic-bezier(.2,.7,.2,1),opacity .4s,margin-top .3s;}
.veh-card.show{max-height:360px;opacity:1;}
.veh-inner{border:1px solid rgba(72,209,138,0.35);background:rgba(72,209,138,0.06);border-radius:var(--r);padding:16px 18px;}
.veh-inner.err{border-color:rgba(255,176,32,0.4);background:rgba(255,176,32,0.06);}
.veh-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.veh-head .tick{width:22px;height:22px;border-radius:50%;background:var(--ok);color:#06231a;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0;}
.veh-inner.err .tick{background:var(--warn);color:#2a1c00;}
.veh-title{font-family:'Oxanium',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;}
.veh-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px;}
@media(min-width:520px){.veh-grid{grid-template-columns:repeat(4,1fr);}}
.veh-cell .k{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:0.12em;color:var(--steel-dim);text-transform:uppercase;}
.veh-cell .v{font-size:14px;font-weight:600;margin-top:2px;}
.veh-cell .v.tax-ok{color:var(--ok);}.veh-cell .v.tax-no{color:var(--warn);}

/* Section heads */
.services{padding:16px 0 20px;}
.sec-head{margin-bottom:22px;}
.sec-tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.16em;color:var(--blue-bright);text-transform:uppercase;}
.sec-head h2{font-size:clamp(24px,5vw,34px);text-transform:uppercase;margin-top:6px;}
.sec-head p{color:var(--steel);margin-top:6px;font-size:15px;}

/* Service cards (clickable, with photos) */
.svc-grid{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:680px){.svc-grid{grid-template-columns:repeat(2,1fr);}}
.svc-card{display:flex;flex-direction:column;background:var(--panel);backdrop-filter:blur(6px);
  border:1px solid var(--line);border-radius:10px;overflow:hidden;color:var(--white);
  transition:border-color .25s,transform .25s,box-shadow .25s;}
.svc-card:hover{border-color:rgba(51,168,236,0.55);transform:translateY(-3px);box-shadow:0 18px 50px rgba(0,0,0,0.45);}
.svc-card .ph{position:relative;aspect-ratio:16/9;overflow:hidden;}
.svc-card .ph img{width:100%;height:100%;object-fit:cover;filter:brightness(1.08);transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.svc-card:hover .ph img{transform:scale(1.05);}
.svc-card .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,9,13,0.75));}
.svc-card .ph .tag{position:absolute;left:12px;bottom:10px;z-index:2;font-family:'JetBrains Mono',monospace;
  font-size:9.5px;letter-spacing:0.14em;color:var(--blue-bright);text-transform:uppercase;background:rgba(6,9,13,0.7);
  border:1px solid rgba(51,168,236,0.35);border-radius:3px;padding:4px 8px;}
.svc-card .bd{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1;}
.svc-card h3{font-size:17px;text-transform:uppercase;}
.svc-card p{color:var(--steel);font-size:13.5px;margin-top:6px;flex:1;}
.svc-card .go{margin-top:14px;font-family:'Oxanium',sans-serif;font-weight:700;font-size:13px;
  text-transform:uppercase;color:var(--blue-bright);display:inline-flex;align-items:center;gap:7px;}
.svc-card:hover .go{text-decoration:underline;text-underline-offset:4px;}

/* Service cards — extra pop */
.svc-card{position:relative;box-shadow:0 10px 34px rgba(0,0,0,0.38);}
.svc-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:3;
  background:linear-gradient(90deg,var(--blue),var(--blue-bright));
  transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1);}
.svc-card:hover::before{transform:scaleX(1);}
.svc-card h3{font-size:18.5px;}
.svc-card:hover{border-color:var(--blue-bright);box-shadow:0 22px 60px rgba(13,118,189,0.30);}

/* Intro line under the service cards */
.svc-intro{max-width:60ch;margin:46px auto 6px;text-align:center;color:var(--steel);font-size:15px;}

/* Maxton image carousel — Instagram-style: one image at a time, auto-rotating,
   swipeable, with dot indicators overlaid on the bottom of the picture. */
.mx-carousel{position:relative;margin:6px 0 16px;border-radius:12px;overflow:hidden;
  border:1px solid var(--line);background:var(--panel-2);}
.mx-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;}
.mx-track::-webkit-scrollbar{display:none;}
.mx-track img{flex:0 0 100%;width:100%;scroll-snap-align:center;aspect-ratio:4/3;object-fit:cover;
  filter:brightness(1.05);background:var(--panel-2);}
.mx-carousel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:64px;z-index:1;
  pointer-events:none;background:linear-gradient(180deg,transparent,rgba(4,7,10,0.55));}
/* Light-sweep across the photo as it auto-transitions — same shine motif as the save-tab,
   contrast cut hard (0.55 -> 0.14 alpha) so it's a gleam, not a visible white line. */
.mx-sweep{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;}
.mx-sweep::before{content:"";position:absolute;top:0;left:-55%;height:100%;width:38%;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,0.14) 50%,transparent 100%);
  transform:skewX(-18deg);opacity:0;}
.mx-sweep.play::before{animation:mxSweep .68s cubic-bezier(.3,.1,.2,1);}
@keyframes mxSweep{
  0%{left:-55%;opacity:0;}
  12%{opacity:1;}
  80%{opacity:1;}
  100%{left:130%;opacity:0;}
}
.mx-dots{position:absolute;left:0;right:0;bottom:13px;z-index:3;
  display:flex;align-items:center;justify-content:center;gap:7px;}
.mx-dot{width:7px;height:7px;border-radius:50%;border:none;padding:0;background:rgba(255,255,255,0.5);
  cursor:pointer;transition:background .25s,transform .25s;box-shadow:0 1px 3px rgba(0,0,0,0.5);}
.mx-dot:hover{background:rgba(255,255,255,0.85);}
.mx-dot.active{background:#fff;transform:scale(1.4);}

/* Service detail pages */
.breadcrumbs{padding:16px 0 0;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.06em;color:var(--steel-dim);}
.breadcrumbs a{color:var(--steel);}
.breadcrumbs a:hover{color:var(--blue-bright);}
.page-hero{padding:34px 0 26px;}
.page-hero h1{font-size:clamp(30px,6.5vw,48px);line-height:1.05;text-transform:uppercase;}
.page-hero h1 .accent{color:var(--blue-bright);}
.page-hero .lede{margin-top:14px;font-size:16px;color:var(--steel);max-width:56ch;}
.hero-cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.hero-cta-btn{font-size:17px;padding:15px 26px!important;}
.btn-ghost{font-family:'Oxanium',sans-serif;font-weight:700;font-size:14px;text-transform:uppercase;
  color:var(--white);border:1px solid var(--line-2);border-radius:8px;padding:13px 20px;
  display:inline-flex;align-items:center;gap:8px;transition:border-color .2s,background .2s;}
.btn-ghost:hover{border-color:var(--blue-bright);background:rgba(51,168,236,0.08);}
.content{padding:14px 0 8px;}
.block{background:var(--panel);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:10px;
  padding:22px 20px;margin-bottom:16px;}
.block h2{font-size:20px;text-transform:uppercase;margin-bottom:10px;}
.block h2 .hash{color:var(--blue-bright);}
.block p{color:#c6d2db;font-size:14.5px;margin-bottom:10px;}
.block p:last-child{margin-bottom:0;}
.block .lookup-help{font-size:10.5px;}
.block ul{list-style:none;display:grid;gap:8px;margin:12px 0 4px;}
.block li{color:#d7e2ea;font-size:15px;position:relative;padding-left:20px;}
.block li::before{content:"//";position:absolute;left:0;top:0;color:var(--blue-bright);font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.9;}
.block li b{color:var(--white);}
.figure{border-radius:10px;overflow:hidden;border:1px solid var(--line);margin:18px 0;position:relative;}
.figure img{width:100%;aspect-ratio:16/8;object-fit:cover;filter:brightness(1.1);}
.figure figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 16px 10px;font-size:12px;color:#d7e2ea;
  background:linear-gradient(180deg,transparent,rgba(6,9,13,0.85));font-family:'JetBrains Mono',monospace;letter-spacing:0.04em;}
.spec-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px;}
@media(min-width:640px){.spec-row{grid-template-columns:repeat(4,1fr);}}
.spec{border:1px solid var(--line);background:rgba(11,16,21,0.6);border-radius:var(--r);padding:12px;}
.spec .k{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:0.12em;color:var(--blue-bright);text-transform:uppercase;}
.spec .v{font-size:13.5px;color:#d7e2ea;margin-top:3px;font-weight:600;}

/* Accordion (kept for extra options) */
.acc{display:flex;flex-direction:column;gap:12px;}
.acc-item{background:var(--panel);backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;transition:border-color .25s,box-shadow .25s;}
.acc-item.open{border-color:rgba(51,168,236,0.45);box-shadow:0 0 0 1px rgba(51,168,236,0.15),0 12px 40px rgba(0,0,0,0.35);}
.acc-head{display:flex;align-items:center;gap:14px;padding:18px 18px;cursor:pointer;user-select:none;}
.acc-head:focus-visible{outline:2px solid var(--blue-bright);outline-offset:-3px;}
.acc-ico{width:42px;height:42px;flex-shrink:0;border-radius:8px;
  background:linear-gradient(135deg,rgba(13,118,189,0.25),rgba(51,168,236,0.08));
  border:1px solid rgba(51,168,236,0.25);display:flex;align-items:center;justify-content:center;}
.acc-ico svg{width:22px;height:22px;stroke:var(--blue-bright);fill:none;stroke-width:1.6;}
.acc-titles{flex:1;min-width:0;}
.acc-titles h3{font-size:17px;text-transform:uppercase;letter-spacing:0.01em;}
.acc-titles .sub{font-size:12.5px;color:var(--steel);margin-top:1px;}
.acc-price{font-family:'Oxanium',sans-serif;font-weight:700;font-size:14px;color:var(--blue-bright);white-space:nowrap;}
.acc-chev{width:18px;height:18px;flex-shrink:0;stroke:var(--steel);stroke-width:2;fill:none;transition:transform .3s;}
.acc-item.open .acc-chev{transform:rotate(180deg);stroke:var(--blue-bright);}
.acc-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.2,.7,.2,1);}
.acc-item.open .acc-body{max-height:440px;}
.acc-inner{padding:0 18px 18px;}
.opt-list{display:flex;flex-wrap:wrap;gap:8px;}
.opt{display:inline-flex;align-items:center;gap:8px;background:var(--panel-2);border:1px solid var(--line);
  border-radius:999px;padding:9px 14px;font-size:13.5px;cursor:pointer;transition:border-color .2s,background .2s;}
.opt:hover{border-color:var(--line-2);}
.opt.sel{border-color:var(--blue-bright);background:rgba(51,168,236,0.12);color:#fff;}
.opt .cb{width:15px;height:15px;border-radius:4px;border:1.5px solid var(--steel-dim);display:inline-flex;
  align-items:center;justify-content:center;flex-shrink:0;transition:.15s;}
.opt.sel .cb{background:var(--blue-bright);border-color:var(--blue-bright);}
.opt.sel .cb::after{content:"✓";font-size:10px;color:#06090d;font-weight:800;}
.acc-note{font-size:12px;color:var(--steel-dim);margin-top:12px;}

.proof{padding:24px 0 24px;}
.proof-grid{display:grid;grid-template-columns:1fr;gap:12px;}
@media(min-width:640px){.proof-grid{grid-template-columns:repeat(3,1fr);}}
.proof-card{border:1px solid var(--line);background:rgba(20,26,32,0.68);backdrop-filter:blur(7px);
  border-radius:var(--r);padding:16px 16px 15px;}
.proof-card .stat{font-family:'Oxanium',sans-serif;font-weight:700;font-size:24px;line-height:1;color:var(--white);}
.proof-card .label{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.13em;color:var(--blue-bright);
  text-transform:uppercase;margin-top:7px;}
.proof-card p{color:var(--steel);font-size:13.5px;margin-top:8px;}

/* Enquiry form */
.enq{padding:30px 0 60px;}
.card{background:var(--panel);backdrop-filter:blur(8px);border:1px solid var(--line-2);border-radius:10px;
  padding:26px 22px 28px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,0.45);}
.card::before{content:"ENQUIRY / JOB CARD";position:absolute;top:16px;right:18px;font-family:'JetBrains Mono',monospace;
  font-size:9.5px;letter-spacing:0.16em;color:var(--steel-dim);}
.card h2{font-size:22px;text-transform:uppercase;}
.card .csub{color:var(--steel);font-size:14px;margin:4px 0 22px;}
.selected-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px;min-height:4px;}
.selected-chips .sc{font-size:12px;background:rgba(51,168,236,0.14);border:1px solid rgba(51,168,236,0.35);
  color:var(--blue-bright);border-radius:999px;padding:5px 11px;display:inline-flex;align-items:center;gap:7px;}
.selected-chips .sc button{background:none;border:none;color:var(--blue-bright);cursor:pointer;font-size:14px;line-height:1;padding:0;}
.field{margin-bottom:15px;}
.field label{display:block;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:0.1em;
  text-transform:uppercase;color:var(--steel);margin-bottom:7px;}
.field input,.field textarea{width:100%;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r);
  padding:12px 13px;color:var(--white);font-family:'Inter',sans-serif;font-size:15px;transition:border-color .2s,box-shadow .2s;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue-bright);box-shadow:0 0 0 3px rgba(51,168,236,0.12);}
.field textarea{min-height:90px;resize:vertical;}
.field input.invalid{border-color:var(--warn);box-shadow:0 0 0 3px rgba(255,176,32,0.12);}
.field-err{display:none;font-size:12px;color:var(--warn);margin-top:6px;}
.field-err.show{display:block;}
.two{display:grid;grid-template-columns:1fr;gap:15px;}
@media(min-width:520px){.two{grid-template-columns:1fr 1fr;}}
.req::after{content:" *";color:var(--blue-bright);}
.form-plate{margin-bottom:15px;}
.form-plate .gb-plate{min-height:54px;}
.form-plate .gb-plate input{font-size:clamp(19px,5vw,24px);}
.hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;opacity:0;pointer-events:none;}

/* Reference-photo upload — up to 5 photos, shown as a thumbnail strip below the drop zone */
.file-drop{position:relative;border:1.5px dashed var(--line-2);border-radius:var(--r);
  background:var(--ink-2);transition:border-color .2s,background .2s,opacity .2s;overflow:hidden;}
.file-drop:hover{border-color:rgba(51,168,236,0.55);}
.file-drop.disabled{opacity:.5;}
.file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;}
.file-input:disabled{cursor:default;}
.file-drop-inner{display:flex;align-items:center;gap:10px;padding:14px 15px;color:var(--steel);font-size:13px;}
.file-ico{font-size:17px;flex-shrink:0;}
.file-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.file-thumb{position:relative;width:60px;height:60px;border-radius:8px;overflow:hidden;
  border:1px solid var(--line);flex-shrink:0;}
.file-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.file-thumb-remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;
  background:rgba(6,9,13,0.75);border:none;color:#fff;font-size:13px;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s;}
.file-thumb-remove:hover{background:rgba(220,60,60,0.9);}
.file-hint{font-size:11px;color:var(--steel-dim);margin-top:6px;}

.submit{width:100%;justify-content:center;font-size:16px;padding:16px;margin-top:8px;}
.form-note{font-size:11.5px;color:var(--steel-dim);text-align:center;margin-top:11px;}
.consent{display:flex;align-items:flex-start;gap:10px;margin:4px 0 12px;color:var(--steel);font-size:13px;
  padding:12px 14px;border:1px solid rgba(51,168,236,0.35);border-radius:var(--r);background:rgba(51,168,236,0.07);}
.consent input{width:18px;height:18px;margin-top:1px;accent-color:var(--blue-bright);flex-shrink:0;}
.consent span{display:block;}
.result{margin-top:16px;padding:14px;border-radius:var(--r);font-size:14px;display:none;}
.result.show{display:block;}
.result.ok{background:rgba(72,209,138,0.1);border:1px solid rgba(72,209,138,0.4);color:#b6ecd0;}
.result.err{background:rgba(255,176,32,0.1);border:1px solid rgba(255,176,32,0.4);color:#ffe0a8;}

/* CTA strip on service pages */
.cta-strip{border:1px solid rgba(51,168,236,0.4);background:linear-gradient(135deg,rgba(13,118,189,0.2),rgba(13,118,189,0.05));
  border-radius:10px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:22px 0;}
.cta-strip .t{font-family:'Oxanium',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;}
.cta-strip .s{font-size:13px;color:var(--steel);margin-top:3px;}

footer{border-top:1px solid var(--line);padding:26px 0 60px;background:rgba(6,9,13,0.6);}
.foot{display:flex;flex-direction:column;gap:6px;}
.foot .co{font-family:'Oxanium',sans-serif;font-weight:700;font-size:15px;text-transform:uppercase;}
.foot p{font-size:12.5px;color:var(--steel);}
.foot a{color:var(--steel);}
.foot .nav{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;}
.foot .nav a{color:var(--blue-bright);font-size:12.5px;}

/* Sticky top offer tab — subtle glow + shine sweep to draw the eye */
.save-tab{position:fixed;top:0;left:0;right:0;height:var(--tabh);z-index:50;overflow:hidden;
  background:linear-gradient(90deg,var(--blue),#0a5f9a);border-bottom:1px solid rgba(255,255,255,0.16);
  display:none;align-items:center;justify-content:center;gap:12px;padding:0 40px 0 14px;
  box-shadow:0 6px 24px rgba(0,0,0,0.35);animation:tabGlow 2.8s ease-in-out infinite;}
body.has-tab .save-tab{display:flex;}
.save-tab > *{position:relative;z-index:1;}
.save-tab::before{content:"";position:absolute;top:0;left:-70%;z-index:0;height:100%;width:55%;pointer-events:none;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,0.30) 50%,transparent 100%);
  transform:skewX(-18deg);animation:tabShine 3.6s ease-in-out infinite;}
@keyframes tabGlow{0%,100%{box-shadow:0 6px 24px rgba(0,0,0,0.35);}
  50%{box-shadow:0 6px 24px rgba(0,0,0,0.35),0 2px 22px rgba(51,168,236,0.55);}}
@keyframes tabShine{0%{left:-70%;}55%,100%{left:130%;}}
.save-tab p{font-family:'Oxanium',sans-serif;font-weight:600;font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.save-tab p b{color:#ffd400;}
.save-tab button.get{font-family:'Oxanium',sans-serif;font-weight:700;font-size:11.5px;text-transform:uppercase;
  background:#fff;color:var(--blue);border:none;border-radius:999px;padding:6px 14px;cursor:pointer;white-space:nowrap;
  animation:getPulse 2.8s ease-in-out infinite;}
@keyframes getPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 rgba(255,255,255,0);}
  50%{transform:scale(1.06);box-shadow:0 0 14px rgba(255,255,255,0.55);}}

/* Offer modal */
.modal-veil{position:fixed;inset:0;z-index:60;background:rgba(3,5,8,0.78);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .35s;}
.modal-veil.show{opacity:1;pointer-events:auto;}
.modal{width:100%;max-width:420px;background:var(--panel-solid);border:1px solid rgba(51,168,236,0.4);border-radius:14px;
  overflow:hidden;transform:translateY(20px) scale(.97);transition:transform .4s cubic-bezier(.2,.7,.2,1);
  box-shadow:0 30px 80px rgba(0,0,0,0.6);position:relative;}
.modal-veil.show .modal{transform:none;}
.modal-top{background:linear-gradient(135deg,var(--blue),#0a5f9a);padding:22px 22px 20px;position:relative;overflow:hidden;}
.modal-top::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:rgba(255,255,255,0.08);}
.modal-badge{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.16em;color:rgba(255,255,255,0.8);text-transform:uppercase;}
.modal-top h3{font-size:30px;color:#fff;text-transform:uppercase;margin-top:4px;line-height:1;}
.modal-top h3 span{color:#ffd400;}
.modal-body{padding:20px 22px 24px;}
.modal-body p{font-size:13.5px;color:var(--steel);margin-bottom:16px;}
.modal-body input{width:100%;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r);
  padding:13px;color:var(--white);font-size:15px;margin-bottom:10px;}
.modal-body input:focus{outline:none;border-color:var(--blue-bright);}
.modal-body .go{width:100%;justify-content:center;font-size:15px;padding:14px;}
.modal-x{position:absolute;top:12px;right:14px;background:none;border:none;color:rgba(255,255,255,0.85);
  font-size:24px;cursor:pointer;z-index:2;line-height:1;}
.modal-skip{display:block;width:100%;text-align:center;background:none;border:none;color:var(--steel-dim);font-size:12px;margin-top:12px;cursor:pointer;}
.modal-done{display:none;text-align:center;padding:10px 0;}
.modal-done .big{font-family:'Oxanium',sans-serif;font-weight:700;font-size:22px;color:var(--ok);text-transform:uppercase;}
.modal-done .code{font-family:'JetBrains Mono',monospace;font-size:20px;letter-spacing:0.2em;color:#fff;
  background:var(--ink-2);border:1px dashed var(--blue-bright);border-radius:6px;padding:10px;margin-top:10px;display:inline-block;}
.save-tab .x{background:none;border:none;color:rgba(255,255,255,0.75);font-size:18px;cursor:pointer;
  position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:4px 8px;}

@media(max-width:520px){
  .hd{padding:10px 14px;gap:12px;}
  .hd-logo{height:32px;}
  .hd-actions{gap:6px;}
  .hd-cta{font-size:11px;padding:6px 9px;}
  .hero{padding-top:30px;}
  .brand-lockup{align-items:flex-start;flex-direction:column;gap:12px;}
  .plate-row{gap:12px;}
  .lookup-btn{width:100%;justify-content:center;min-height:50px;}
  .acc-head{align-items:flex-start;padding:16px 14px;}
  .acc-ico{width:38px;height:38px;}
  .acc-price{display:none;}
  .card{padding:24px 16px 26px;}
  .save-tab p{font-size:11.5px;}
  .cta-strip{flex-direction:column;align-items:flex-start;}
}
