:root{
  --bg:#0b1220;
  --card:#ffffff;
  --soft:#f6f7fb;
  --ink:#0e1525;
  --muted:#6b7280;
  --brand1:#0a8dea;
  --brand2:#5a2fba;
  --ring: rgba(10,141,234,.25);
  --radius:18px;
  --shadow: 0 12px 28px rgba(0,0,0,.12);
  --shadow2: 0 8px 20px rgba(0,0,0,.10);
  --max: 1180px;
  --ease: cubic-bezier(.2,.9,.2,1);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  background:#0b1220;
  line-height:1.35;
}

/* Better defaults */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible{
  outline: none;
  box-shadow: 0 0 0 6px var(--ring);
  border-radius: 14px;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{max-width:var(--max);margin:0 auto;padding:0 18px}
.row{display:flex;gap:12px;align-items:center;justify-content:space-between}

/* Utility bar */
.utility{
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.utility .left, .utility .right{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.social{display:flex;gap:10px;align-items:center}
.social a{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.social svg{width:18px;height:18px}
.pill{padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:12px;white-space:nowrap}

/* Header */
.header{
  position:sticky;top:0;z-index:30;
  background: linear-gradient(180deg, rgba(11,18,32,.92), rgba(11,18,32,.74));
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.header .top{display:flex;align-items:center;gap:14px;padding:14px 0}
.brand img{height:36px;width:auto}
.center{flex:1}
.search{
  display:flex;align-items:center;gap:10px;
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  padding:10px 12px;border-radius:999px;
}
.search svg{width:18px;height:18px;color:rgba(255,255,255,.9)}
.search input{flex:1;background:transparent;border:0;outline:none;color:#fff}
.search input::placeholder{color:rgba(255,255,255,.65)}
.kbd{font-size:12px;color:rgba(255,255,255,.75);padding:3px 8px;border:1px solid rgba(255,255,255,.18);border-radius:8px}
.actions{display:flex;align-items:center;gap:10px}
.iconbtn{
  display:grid;place-items:center;
  width:42px;height:42px;border-radius:14px;
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;cursor:pointer;
  position:relative;
  transition: transform .15s var(--ease), background .15s var(--ease), border-color .15s var(--ease);
}
.iconbtn:hover{transform: translateY(-1px); background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.18)}
.iconbtn svg{width:20px;height:20px}
.iconbtn .count{
  position:absolute; transform: translate(14px,-14px);
  min-width:18px;height:18px;border-radius:999px;
  background: linear-gradient(135deg,var(--brand1),var(--brand2));
  color:#fff;font-size:11px;display:grid;place-items:center;
  padding:0 6px;
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:11px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  color:#fff;cursor:pointer;
  transition: transform .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);
}
.btn:hover{transform: translateY(-1px)}
.btn:active{transform: translateY(0px)}
.btn.small{padding:8px 10px;border-radius:12px;font-size:13px}
.btn.primary{
  border:0;
  background: linear-gradient(135deg,var(--brand1),var(--brand2));
  box-shadow: 0 10px 24px rgba(90,47,186,.22);
}
.btn.danger{
  background: rgba(239,68,68,.16);
  border:1px solid rgba(239,68,68,.35);
  color:#fff;
}
.navrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 14px}
.nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nav a{color:rgba(255,255,255,.9);font-weight:700;font-size:14px;opacity:.95}
.nav a.active{color:#fff;text-decoration:underline;text-underline-offset:6px}
.navItem{position:relative}
.navItem > a{display:inline-flex;align-items:center;gap:6px}
.chev{width:14px;height:14px;opacity:.9}
.mega{
  position:absolute;left:0;top:38px;
  min-width:560px;
  background:#0f1a30;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  box-shadow: var(--shadow);
  padding:14px;
  display:none;
}
.navItem:hover .mega{display:grid}
.mega{grid-template-columns: repeat(4, 1fr); gap:12px}
.megaCol{padding:10px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.megaTitle{color:#fff;font-weight:900;font-size:12px;margin-bottom:8px;opacity:.95}
.megaCol a{display:block;color:rgba(255,255,255,.86);font-weight:700;font-size:13px;padding:7px 8px;border-radius:10px}
.megaCol a:hover{background:rgba(255,255,255,.08)}
.meta .badge{
  color:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
}

/* Hero / slider */
.hero{
  padding: 28px 0 8px;
  color:#fff;
  background:
    radial-gradient(900px 420px at 22% 20%, rgba(10,141,234,.28), rgba(11,18,32,0) 65%),
    radial-gradient(900px 420px at 78% 12%, rgba(90,47,186,.26), rgba(11,18,32,0) 60%),
    linear-gradient(180deg, rgba(11,18,32,1), rgba(11,18,32,.96));
}
.heroWrap{
  position:relative;
  border-radius: 26px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  box-shadow: 0 20px 60px rgba(0,0,0,.35);
}
.hero .slides{display:flex;transition: transform .45s var(--ease);will-change: transform}
.hero .slide{min-width:100%}
.hero .inner{display:grid;grid-template-columns: 1.2fr .8fr;gap:18px;align-items:center;padding:22px}
.hero h1{margin:10px 0 10px;font-size: clamp(28px, 3.2vw, 44px);line-height:1.08}
.hero p{margin:0;color: rgba(255,255,255,.85);font-weight:700;max-width: 52ch}
.hero .art{display:grid;place-items:center}
.hero .art img{width: 140px;height: 140px;filter: drop-shadow(0 16px 22px rgba(0,0,0,.28))}
.actions-row{display:flex;gap:10px;align-items:center}

.navArrows{
  position:absolute;inset:0;pointer-events:none;
}
.arrowBtn{
  pointer-events:auto;
  position:absolute;top:50%;transform: translateY(-50%);
  width:44px;height:44px;border-radius: 16px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.18);
  color:#fff;
  cursor:pointer;
  display:grid;place-items:center;
  backdrop-filter: blur(10px);
  transition: transform .15s var(--ease), background .15s var(--ease), border-color .15s var(--ease);
}
.arrowBtn:hover{transform: translateY(-50%) scale(1.03); background: rgba(0,0,0,.28); border-color: rgba(255,255,255,.28)}
.arrowBtn.left{left: 14px}
.arrowBtn.right{right: 14px}
.arrowBtn span{font-size: 26px;line-height:1}

.dots{
  position:absolute;left:0;right:0;bottom: 14px;
  display:flex;gap:8px;justify-content:center;
}
.dot{
  width: 9px;height: 9px;border-radius: 999px;
  border:1px solid rgba(255,255,255,.32);
  background: rgba(255,255,255,.22);
  cursor:pointer;
}
.dot.active{width: 22px; background: linear-gradient(135deg,var(--brand1),var(--brand2)); border-color: rgba(255,255,255,.0)}

/* Steps */
.steps{display:grid;grid-template-columns: repeat(6, 1fr);gap:10px;margin-top:14px}
.step{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;box-shadow: var(--shadow2);padding:12px}
.step strong{display:block;font-weight:1000}
.step span{display:block;margin-top:6px;color:var(--muted);font-weight:700;font-size:13px}

/* Toast */
.toastHost{position:fixed;left:0;right:0;bottom:18px;display:flex;justify-content:center;pointer-events:none;z-index:120}
.toast{
  pointer-events:auto;
  background: rgba(15,26,48,.92);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 12px 14px;
  display:flex;gap:10px;align-items:center;
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
  transform: translateY(10px);
  opacity:0;
  transition: opacity .18s var(--ease), transform .18s var(--ease);
}
.toast.show{opacity:1;transform: translateY(0)}
.toast .ticon{font-size:16px}
.toast .ttext{font-weight:900}

/* Sections */
.section{background:#fff}
.section.soft{background:var(--soft)}
.section .container{padding-top:34px;padding-bottom:34px}
.sectionTitle{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}
.sectionTitle h3{margin:0;font-size:24px}
.hint{color:var(--muted);font-size:13px;font-weight:700}
.panel{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);box-shadow: var(--shadow2);padding:16px}
.steptitle{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 10px;border-radius:999px;
  font-size:12px;font-weight:900;
  background: rgba(10,141,234,.12);
  border:1px solid rgba(10,141,234,.25);
  color:#083a62;
}
.small{font-size:13px;color:var(--muted);font-weight:700}

/* Cards & grids */
.catGrid{display:grid;grid-template-columns: repeat(4, 1fr);gap:14px}
.catCard{
  background:#fff;border:1px solid rgba(0,0,0,.08);
  border-radius:22px;overflow:hidden;
  box-shadow: var(--shadow2);
  transition: transform .15s ease, box-shadow .15s ease;
}
.catCard:hover{transform: translateY(-2px); box-shadow: var(--shadow)}
.catCard .top{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 0}
.catCard img{width:44px;height:44px}
.catCard .body{padding:12px 14px 14px}
.catCard h4{margin:0 0 6px;font-size:16px}
.catCard p{margin:0 0 10px;color:var(--muted);font-weight:700;font-size:13px}
.catCard .row{display:flex;align-items:center;justify-content:space-between}
.catCard .cta{font-weight:900;color:#0b4fa6}
.grid{display:grid;grid-template-columns: repeat(3, 1fr);gap:14px}
.pcard{
  background:#fff;border:1px solid rgba(0,0,0,.08);
  border-radius:22px;overflow:hidden;
  box-shadow: var(--shadow2);
}
.pcard:hover{box-shadow: var(--shadow)}
.pimg{padding:16px;background:linear-gradient(135deg, rgba(10,141,234,.10), rgba(90,47,186,.08))}
.pimg img{width:56px;height:56px}
.pmeta{padding:14px}
.ptop{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.ptitle{font-weight:900}
.pprice{font-weight:900;color:#0b4fa6}
.psub{color:var(--muted);font-weight:700;font-size:13px;margin-top:6px}
.pbadges{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.tag{font-size:12px;font-weight:900;color:#0c3b6a;background:rgba(10,141,234,.12);border:1px solid rgba(10,141,234,.22);padding:6px 10px;border-radius:999px}

/* Drawer menu */
.mm-back{
  position:fixed;inset:0;background:rgba(0,0,0,.5);
  opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:60;
}
.mm-back.open{opacity:1;pointer-events:auto}
.mm-drawer{
  position:fixed;right:-360px;top:0;height:100%;width:360px;max-width:88vw;
  background:#fff;color:var(--ink);
  border-left:1px solid rgba(0,0,0,.1);
  box-shadow: var(--shadow);
  transition:right .18s ease;
  z-index:70;
  display:flex;flex-direction:column;
}
.mm-drawer.open{right:0}
.mm-drawer header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px;border-bottom:1px solid rgba(0,0,0,.08)}
.mm-title{font-weight:1000}
.mm-drawer .content{padding:14px;overflow:auto}
.mm-drawer .content a{display:block;padding:10px 12px;border-radius:14px;border:1px solid rgba(0,0,0,.08);margin-bottom:10px}
.mm-drawer .content a.btn{display:inline-flex;margin:0 0 12px}

/* Forms */
.field{margin:12px 0}
.field label{font-size:12px;font-weight:900;color:#111827;display:block;margin-bottom:6px}
.field input, .field textarea, .input{
  width:100%;padding:12px 12px;border-radius:14px;
  border:1px solid rgba(0,0,0,.14);
  outline:none;
}
.field input:focus, .field textarea:focus, .input:focus{box-shadow:0 0 0 6px var(--ring);border-color:rgba(10,141,234,.35)}
.two{display:grid;grid-template-columns: 1fr 1fr;gap:12px}

/* Cart / checkout */
.head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}
.head h2{margin:0;font-size:28px}
.sub{margin:6px 0 0;color:var(--muted);font-weight:700}
.headActions{display:flex;gap:10px;flex-wrap:wrap}
.card{
  background:#fff;border:1px solid rgba(0,0,0,.08);
  border-radius:22px;box-shadow: var(--shadow2);
  padding:16px;
}
.cartLayout, .checkoutLayout{display:grid;grid-template-columns: 1.55fr .85fr;gap:14px}
.cartItem{display:grid;grid-template-columns: 54px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:18px;margin-bottom:10px}
.cartItem .ciImg{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg, rgba(10,141,234,.10), rgba(90,47,186,.08));display:grid;place-items:center}
.cartItem .ciImg svg{width:26px;height:26px;opacity:.9}
.cartItem .ciTitle{font-weight:1000}
.cartItem .ciMeta{color:var(--muted);font-weight:700;font-size:12px;margin-top:4px}
.qtyRow{display:flex;align-items:center;gap:10px;justify-content:flex-end}
.qtyRow button{width:34px;height:34px;border-radius:12px;border:1px solid rgba(0,0,0,.14);background:#fff;cursor:pointer}
.qtyRow input{width:58px;text-align:center}
.sumRow{display:flex;justify-content:space-between;gap:10px;margin:10px 0}

/* Shipping method selector (checkout) */
.shipMethods{display:grid;gap:10px}
.shipOpt{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(0,0,0,.10);border-radius:14px;background:rgba(255,255,255,.55)}
.shipOpt input{accent-color:var(--brand2)}
.shipOpt b{font-size:14px;color:var(--ink)}
.shipOpt .small{margin-left:auto;color:var(--muted)}
.summary textarea{min-height:92px;resize:vertical}
.payRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}

/* Trust / work / faq */
.trustGrid{display:grid;grid-template-columns: repeat(4, 1fr);gap:14px}
.trustCard{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:22px;box-shadow: var(--shadow2);padding:16px}
.ticon{font-size:22px}
.trustCard h4{margin:10px 0 6px}
.trustCard p{margin:0;color:var(--muted);font-weight:700;font-size:13px}
.workGrid{display:grid;grid-template-columns: repeat(3, 1fr);gap:14px}
.workCard{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:22px;box-shadow: var(--shadow2);overflow:hidden}
.workImg{height:160px;background:linear-gradient(135deg, rgba(10,141,234,.16), rgba(90,47,186,.12))}
.workBody{padding:14px}
.workBody h4{margin:0 0 6px}
.workBody p{margin:0;color:var(--muted);font-weight:700;font-size:13px}
.faqGrid{display:grid;grid-template-columns: 1fr 1fr;gap:12px}
.faq{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:12px 14px}
.faq summary{font-weight:1000;cursor:pointer}
.faq p{margin:10px 0 0;color:var(--muted);font-weight:700;font-size:13px}

/* Footer */
.footer{background:#0b1220;color:#fff}
.footer .container{padding-top:30px;padding-bottom:30px}
.footer a{color:rgba(255,255,255,.9)}
.footer h4{margin:0 0 10px}
.footer .cols{display:grid;grid-template-columns: 1.2fr 1fr 1fr 1fr;gap:14px}
.footer .small{color:rgba(255,255,255,.75)}
.footer .social a{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}

/* Responsive */
.mobile-toggle{display:none}
@media (max-width: 980px){
  .mega{min-width: 520px}
  .catGrid{grid-template-columns: repeat(2, 1fr)}
  .grid{grid-template-columns: repeat(2, 1fr)}
  .trustGrid{grid-template-columns: repeat(2, 1fr)}
  .workGrid{grid-template-columns: 1fr}
  .steps{grid-template-columns: repeat(3, 1fr)}
}
@media (max-width: 760px){
  .utility .right{display:none}
  .center{display:none}
  .navrow .meta{display:none}
  .nav{display:none}
  .mobile-toggle{display:grid}
  .brand img{height:34px}
  .sectionTitle{flex-direction:column;align-items:flex-start}
  .catGrid{grid-template-columns: 1fr}
  .grid{grid-template-columns: 1fr}
  .two{grid-template-columns: 1fr}
  .cartLayout, .checkoutLayout{grid-template-columns: 1fr}
  .footer .cols{grid-template-columns: 1fr 1fr;gap:12px}
  .hero .inner{grid-template-columns: 1fr; padding: 16px}
  .hero .art{display:none}
  .arrowBtn{display:none}
  .steps{grid-template-columns: repeat(2, 1fr)}
}

@media (max-width: 420px){
  .steps{grid-template-columns: 1fr}
}



/* ================================
   Legacy theme base — recoloured for Sign Palette
   ================================ */

:root{
  --bg:#0b0b0c;
  --surface:#0f0f12;
  --soft:#f6f3ec;
  --card:#ffffff;
  --ink:#111114;
  --muted:#6a6a74;

  /* Brand (from logo) */
  --brand1:#e60063;   /* gold */
  --brand2:#fff0f5;   /* light gold */
  --ring: rgba(230,0,99,.28);

  --border: rgba(230,0,99,.22);
  --shadow: 0 18px 44px rgba(0,0,0,.14);
  --shadow2: 0 10px 24px rgba(0,0,0,.12);
}

/* Global */
body{
  background: var(--soft);
  color: var(--ink);
}

a{color:inherit}
.kbd{background:rgba(0,0,0,.06); color:rgba(0,0,0,.65); border:1px solid rgba(0,0,0,.08)}

/* Utility bar */
.utility{
  background: radial-gradient(1100px 220px at 40% 0%, rgba(230,0,99,.18), transparent 60%),
              linear-gradient(180deg, rgba(15,15,18,.98), rgba(12,12,14,.98));
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.utility .pill{
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  color: rgba(255,255,255,.88);
}
.utility .pill b{color:#fff}
.utility .social a{
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
}
.utility .social a:hover{
  border-color: rgba(230,0,99,.55);
  box-shadow: 0 0 0 4px rgba(230,0,99,.12);
}

/* Header + nav */
.header{
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(13,13,15,.86);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.header .top{padding: 14px 0}
.header .brand img{
  height: 44px;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.35));
}
.header .navrow{
  border-top: 1px solid rgba(255,255,255,.06);
  padding: 10px 0 12px;
}
.header .meta .badge{
  background: rgba(230,0,99,.14);
  border: 1px solid rgba(230,0,99,.28);
  color: rgba(255,255,255,.92);
}

.nav a, .nav .navItem > a{
  color: rgba(255,255,255,.90) !important;
  position: relative;
}
.nav a:hover, .nav .navItem > a:hover{
  color: #fff !important;
}
.nav a::after{
  content:"";
  position:absolute;
  left:10px; right:10px; bottom:-10px;
  height:2px;
  background: linear-gradient(90deg, transparent, var(--brand1), transparent);
  opacity:0;
  transform: translateY(4px);
  transition: opacity .18s var(--ease), transform .18s var(--ease);
}
.nav a:hover::after{opacity:1; transform: translateY(0)}

.mega{
  background: rgba(15,15,18,.98);
  border: 1px solid rgba(230,0,99,.26);
  box-shadow: 0 22px 54px rgba(0,0,0,.35);
}
.mega a{
  color: rgba(255,255,255,.86) !important;
  border-radius: 10px;
}
.mega a:hover{
  background: rgba(230,0,99,.12);
  color:#fff !important;
}
.megaTitle{
  color: rgba(255,122,26,.92);
}

/* Search (header) */
.header .search{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}
.header .search input{color:#fff}
.header .search input::placeholder{color: rgba(255,255,255,.55)}

/* Icon buttons in header */
.header .iconbtn{
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  color:#fff;
}
.header .iconbtn:hover{
  border-color: rgba(230,0,99,.55);
  box-shadow: 0 0 0 4px rgba(230,0,99,.12);
}

/* Buttons (site-wide) */
.btn{
  background: #fff;
  color: var(--ink);
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: var(--shadow2);
}
.btn:hover{
  background: #f7f8fa;
  transform: translateY(-1px);
}
.btn.primary{
  background: linear-gradient(135deg, var(--brand1), var(--brand2));
  color: #0d0d0f;
  border: 1px solid rgba(0,0,0,.14);
}
.btn.primary:hover{
  box-shadow: 0 18px 40px rgba(230,0,99,.24);
}

/* Ensure buttons look right on dark header */
.header .btn{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  color:#fff;
  box-shadow:none;
}
.header .btn.primary{
  background: linear-gradient(135deg, var(--brand1), var(--brand2));
  color:#0b0b0c;
  border-color: rgba(0,0,0,.20);
}

/* Cards + panels */
.card, .panel, .catCard, .productCard{
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 14px 34px rgba(0,0,0,.08);
}
.catCard:hover, .productCard:hover{
  transform: translateY(-2px);
  box-shadow: 0 24px 54px rgba(0,0,0,.12);
}

/* Badges */
.badge{
  background: rgba(230,0,99,.16);
  border: 1px solid rgba(230,0,99,.30);
  color: #34363b;
}

/* HERO */
.hero{
  background:
    radial-gradient(1200px 520px at 28% 0%, rgba(230,0,99,.22), transparent 60%),
    radial-gradient(900px 420px at 92% 10%, rgba(255,122,26,.14), transparent 55%),
    linear-gradient(180deg, rgba(13,13,15,1), rgba(13,13,15,1));
  color:#fff;
}
.hero .heroWrap{
  background: linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 30px 80px rgba(0,0,0,.45);
}
.hero h1{
  letter-spacing: -0.02em;
  font-size: clamp(34px, 4.2vw, 56px);
  line-height: 1.02;
}
.hero p{color: rgba(255,255,255,.78); font-size: 16.5px}
.hero .badge{
  background: rgba(230,0,99,.18);
  border: 1px solid rgba(230,0,99,.34);
  color: rgba(255,255,255,.92);
}
.hero .art{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 20px;
}
.hero .art img{
  width: 100%;
  max-width: 360px;
  height:auto;
  filter: drop-shadow(0 22px 40px rgba(0,0,0,.35));
}
.hero .dots button{
  background: rgba(255,255,255,.22);
}
.hero .dots button.active{
  background: linear-gradient(90deg, var(--brand1), var(--brand2));
}

/* Section titles */
.sectionTitle h3{
  letter-spacing: -0.01em;
}
.sectionTitle .hint{
  color: rgba(0,0,0,.55);
}

/* Footer */
.footer{
  background: #0d0d0f;
  color: rgba(255,255,255,.86);
  border-top: 1px solid rgba(255,255,255,.08);
}
.footer a{color: rgba(255,255,255,.88)}
.footer a:hover{color:#fff}
.footer .social a{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  color:#fff;
}
.footer .social a:hover{
  border-color: rgba(230,0,99,.55);
  box-shadow: 0 0 0 4px rgba(230,0,99,.12);
}

/* Mobile nav polish */
@media (max-width: 900px){
  .header{background: rgba(13,13,15,.92)}
  .header .brand img{height: 40px}
}


.header .brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.header .brand .tagline{
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color: rgba(255,255,255,.62);
  font-weight:800;
  white-space:nowrap;
}
@media (max-width: 980px){
  .header .brand .tagline{display:none}
}

.heroTrust{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:12px;
  color: rgba(255,255,255,.78);
  font-weight:700;
  font-size:13px;
}
.heroTrust span{
  padding:8px 10px;
  border-radius:999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
}

.nav a.active{
  color:#fff !important;
}
.nav a.active::after{
  opacity:1;
  transform: translateY(0);
}


/* ---------------------------
   Product page — clean layout
----------------------------*/
.head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.head h2{margin:0;color:var(--ink)}
.head .sub{margin:8px 0 0;color:rgba(0,0,0,.62);font-weight:700}
.actions-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

.nextsteps{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.stepcard{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:14px;
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow2);
}
.stepdot{
  width:26px;height:26px;border-radius:999px;
  display:grid;place-items:center;
  background: linear-gradient(135deg, #e60063, #ff7a1a);
  color:#121212;
  font-weight:900;
  flex:0 0 auto;
}
.steplbl b{display:block;font-size:13px}
.steplbl span{display:block;font-size:12px;color:rgba(0,0,0,.60);font-weight:800;margin-top:2px}

.productLayout{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap:18px;
  align-items:start;
}

.mediaCard{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:var(--radius);
  box-shadow: var(--shadow2);
  overflow:hidden;
}
.gallery{padding:14px}
.mainImg{
  border-radius:16px;
  overflow:hidden;
  background: linear-gradient(135deg, rgba(0,0,0,.08), rgba(230,0,99,.18));
  aspect-ratio: 16/9;
  display:grid;
  place-items:center;
}
.mainImg.noimg::before{
  content:"WPP";
  font-weight:1000;
  letter-spacing:.12em;
  color: rgba(0,0,0,.38);
  font-size:34px;
}
.mainImg img{width:100%;height:100%;object-fit:cover}
.thumbGrid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.thumb{
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.03);
  aspect-ratio: 1/1;
}
.thumb img{width:100%;height:100%;object-fit:cover}

.benefits{
  border-top:1px solid rgba(0,0,0,.06);
  padding:12px 14px 14px;
  display:grid;
  gap:10px;
}
.benefit{
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.benefit b{font-size:13px}
.benefit span{color:rgba(0,0,0,.62);font-weight:750;font-size:13px}

.steptitle{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.steptitle h3{margin:0}
.steptitle p{margin:6px 0 0;color:rgba(0,0,0,.62);font-weight:700}

.option-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.opt{
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px;
  padding:12px;
  background: rgba(0,0,0,.02);
}
.opt h4{margin:0 0 10px}
.calcRow{display:grid;grid-template-columns: repeat(3, minmax(0,1fr));gap:10px}
.field{display:grid;gap:6px}
.label{font-weight:900;color:rgba(0,0,0,.72);font-size:12px}
.input{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.help{margin-top:8px;color:rgba(0,0,0,.56);font-weight:700;font-size:12px}

.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{
  border-radius:999px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  cursor:pointer;
  font-weight:900;
  font-size:13px;
  transition: transform .15s var(--ease), box-shadow .15s var(--ease), border-color .15s var(--ease);
}
.chip:hover{transform: translateY(-1px);border-color: rgba(230,0,99,.55); box-shadow: 0 0 0 4px rgba(230,0,99,.14)}
.chip.active{
  border-color: rgba(230,0,99,.85);
  box-shadow: 0 0 0 4px rgba(230,0,99,.18);
  background: linear-gradient(135deg, rgba(230,0,99,.20), rgba(255,255,255,.92));
}

.matrix{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
}
.matrix th, .matrix td{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(0,0,0,.06);font-weight:800}
.matrix th{background:rgba(0,0,0,.03)}
.matrix tr:last-child td{border-bottom:0}
.matrix .quickAdd{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 10px;border-radius:12px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.02);
  cursor:pointer;
  font-weight:900;
}
.matrix .quickAdd:hover{border-color: rgba(230,0,99,.55); box-shadow: 0 0 0 4px rgba(230,0,99,.14)}

.softline{
  height:1px;
  background: rgba(0,0,0,.08);
  margin:14px 0;
}

.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

.faq details{
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px;
  padding:10px 12px;
  background: rgba(0,0,0,.02);
  margin-top:10px;
}
.faq summary{cursor:pointer;font-weight:1000}
.faq p{margin:8px 0 0;color:rgba(0,0,0,.62);font-weight:700}

.related{margin-top:16px}
.relatedGrid{display:grid;grid-template-columns: repeat(3, minmax(0,1fr));gap:12px;margin-top:10px}
.relatedGrid a{
  display:block;
  border-radius:16px;
  border:1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.02);
  padding:12px;
}
.relatedGrid a:hover{border-color: rgba(230,0,99,.55); box-shadow: 0 0 0 4px rgba(230,0,99,.12)}
.relatedGrid .rt{font-weight:1000}
.relatedGrid .rs{color:rgba(0,0,0,.60);font-weight:800;font-size:13px;margin-top:4px}

.stickyRight{position:sticky;top:110px}
.quoteBox{
  border-radius:var(--radius);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
  border:1px solid rgba(0,0,0,.10);
  box-shadow: var(--shadow);
  padding:14px;
}
.quoteTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.quoteTop h3{margin:0}
.bigPrice{font-size:34px;font-weight:1100;letter-spacing:-0.02em;margin-top:4px}
.perItem{color:rgba(0,0,0,.62);font-weight:800;margin-top:4px}
.valid{font-size:12px;font-weight:950;color:rgba(0,0,0,.62);background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);padding:8px 10px;border-radius:999px}
.sumrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;color:rgba(0,0,0,.72);font-weight:950}
.pmini{margin-top:10px;color:rgba(0,0,0,.56);font-weight:800;font-size:12px}

.btn.ghost{
  background: rgba(0,0,0,.04);
  color: var(--ink);
  border: 1px solid rgba(0,0,0,.10);
}
.btn.ghost:hover{box-shadow: 0 0 0 4px rgba(230,0,99,.14)}

@media (max-width: 980px){
  .head{flex-direction:column}
  .actions-row{justify-content:flex-start}
  .nextsteps{grid-template-columns: repeat(2, minmax(0,1fr))}
  .productLayout{grid-template-columns: 1fr}
  .stickyRight{position:relative;top:auto}
  .calcRow{grid-template-columns: 1fr}
  .option-grid{grid-template-columns: 1fr}
  .relatedGrid{grid-template-columns: 1fr}
}


/* ---- Category pages clarity + anchor offset ---- */
html{scroll-padding-top:120px}
.categoryPage{background: radial-gradient(1200px 600px at 20% 0%, rgba(196,168,98,.12), transparent 60%),
                     radial-gradient(900px 520px at 90% 10%, rgba(196,168,98,.08), transparent 55%),
                     #f7f8fa;}
.categoryPage .container{padding-top:22px;padding-bottom:44px}
.categoryBrowse{
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,255,255,.78));
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 24px;
  box-shadow: var(--shadow);
  padding: 22px;
  margin-bottom: 18px;
}
.categoryBrowse .sectionTitle h3{font-size:26px}
.categoryBrowse .panel{
  background: rgba(11,18,32,.06);
  border: 1px solid rgba(196,168,98,.30);
  box-shadow:none;
}
.categoryBrowse .badge{
  background: rgba(196,168,98,.12);
  border: 1px solid rgba(196,168,98,.35);
  color: #1a1a1a;
}
.categoryDivider{
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,0,0,.10), transparent);
  margin: 10px 0 22px;
}
.catCard{
  border-color: rgba(0,0,0,.10);
}
.catCard:hover{transform: translateY(-3px); box-shadow: 0 18px 55px rgba(11,18,32,.14)}
.catCard .cta{color: var(--brand)}



/* =========================
   Vehicle Wrap configurator
   ========================= */
.cardGrid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:12px;
}
@media (max-width: 900px){
  .cardGrid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 420px){
  .cardGrid{ grid-template-columns:1fr; }
}
.pickCard{
  border:1px solid rgba(12,18,28,.12);
  background:#fff;
  border-radius:16px;
  padding:12px;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  display:flex;
  gap:10px;
  align-items:center;
}
.pickCard:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}
.pickCard.selected{
  border-color: rgba(193,155,73,.75);
  box-shadow:0 12px 30px rgba(193,155,73,.18);
}
.pickCard .thumb{
  width:54px; height:40px;
  display:grid; place-items:center;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(193,155,73,.10), rgba(193,155,73,.04));
  color:#0b0f16;
  flex:0 0 auto;
}
.pickCard .thumb img{ width:100%; height:100%; object-fit:contain; filter:contrast(1.05); }
.pickCard .meta{ min-width:0; }
.pickCard .t{ font-weight:800; font-size:14px; margin:0; color:var(--ink); line-height:1.15; }
.pickCard .d{ font-size:12px; color:var(--muted); margin-top:4px; line-height:1.25; }
.sep{ height:1px; background:rgba(12,18,28,.08); margin:14px 0; }

/* --- Vehicle Wrap premium enhancements --- */
.ba{margin-top:12px}
.baFrame{position:relative; border-radius:16px; overflow:hidden; background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 10px 30px rgba(0,0,0,.08)}
.baFrame img{display:block; width:100%; height:auto}
.baAfter{position:absolute; left:0; top:0; height:100%; width:58%; overflow:hidden}
.baLabel{position:absolute; top:12px; padding:8px 12px; border-radius:999px; font-size:12px; font-weight:700; letter-spacing:.02em; background:rgba(255,255,255,.88); border:1px solid rgba(0,0,0,.08); color:#0f0f0f}
.baL{left:12px}
.baR{right:12px}
.baRange{width:100%; margin-top:10px}
.baHint{margin-top:6px}

.pickCard{position:relative}
.pickBadge{position:absolute; right:12px; top:12px; padding:6px 10px; border-radius:999px; font-size:11px; font-weight:800; background:#111; color:#ffffff; border:1px solid rgba(0,0,0,.12)}

/* tighter chips on small screens */
@media (max-width: 640px){
  .baLabel{top:10px}
  .pickBadge{right:10px; top:10px}
}
.wrapMock{width:100%; height:auto; display:block; border-radius:16px; border:1px solid rgba(0,0,0,.08); background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.08); margin-bottom:12px}


/* ============================= */
/* Mega Menu UX Improvements */
/* ============================= */

/* Larger click targets */
.mega a{
  display:block;
  padding:12px 14px;
  border-radius:12px;
  line-height:1.2;
}

.mega a:hover,
.mega a:focus-visible{
  background: rgba(194,164,98,.16);
  outline:none;
}

.megaCol{
  gap:6px;
}

/* Hover bridge */
.navItem{
  position:relative;
}

.navItem::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:14px;
}

/* Click-to-open behavior */
.navItem .mega{ display:none; }
.navItem.open .mega{ display:block; }

.pplaceholder{font-weight:950;color:#fff;opacity:.7}


/* ===== Sign Palette: Hero Offer Slider ===== */
.hero-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:60px;
}

.hero-left{ flex:1; }
.hero-right{
  flex:1;
  display:flex;
  justify-content:center;
}

.offer-slider{
  position:relative;
  width:100%;
  max-width:400px;
}

.offer-slide{
  background:#ffffff;
  border-radius:20px;
  padding:28px;
  box-shadow:0 20px 60px rgba(0,0,0,0.25);
  display:none;
  transition:opacity .5s ease;
}

.offer-slide.active{ display:block; }

.offer-tag{
  display:inline-block;
  font-size:12px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#e60063;
  margin-bottom:6px;
}

.offer-slide h3{
  margin:10px 0;
  font-size:22px;
  color:#111;
}

.offer-slide p{
  margin:0 0 12px;
  color:#555;
}

.offer-price{
  font-size:20px;
  font-weight:700;
  color:#000;
}

.slider-dots{
  text-align:center;
  margin-top:18px;
}

.slider-dots .dot{
  height:8px;
  width:8px;
  margin:0 5px;
  background:#ddd;
  border-radius:50%;
  display:inline-block;
  cursor:pointer;
}

.slider-dots .dot.active{ background:#e60063; }

@media(max-width:900px){
  .hero-inner{
    flex-direction:column;
    text-align:center;
  }
  .hero-right{ width:100%; }
}



/* =========================================================
   SIGN PALETTE BRAND LAYER
   ========================================================= */
:root{
  --sp-blue:#19a7ff;
  --sp-green:#57d98c;
  --sp-orange:#ff9f43;
  --sp-violet:#a678ff;
  --sp-charcoal:#090d15;
  --sp-ink:#10151f;
}
body{background:var(--sp-charcoal)}
.utility-link:hover{background:rgba(255,255,255,.14)}
.brand img{height:48px;max-width:270px}
.header{background:linear-gradient(180deg,rgba(9,13,21,.97),rgba(9,13,21,.92))}
.nav{gap:12px}.nav a{font-size:13px}.navrow{padding-bottom:12px}.brand-badge{color:#d9e1ee!important;background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important}
.footer{background:#090d15}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:16px;margin-top:20px}.signpalette-footer .cols{grid-template-columns:1.5fr repeat(3,1fr)}
.eyebrow{font-size:12px;font-weight:1000;letter-spacing:.18em;text-transform:uppercase;color:#dbe8f8}.eyebrow.dark{color:#506176}.lead{font-size:20px;line-height:1.55;font-weight:750;color:#202a38}
.sp-hero{color:#fff;position:relative;overflow:hidden;background:radial-gradient(900px 560px at 16% 28%,rgba(25,167,255,.18),transparent 60%),radial-gradient(800px 520px at 88% 12%,rgba(166,120,255,.16),transparent 62%),#090d15;padding:84px 0 78px}.sp-hero:after{content:"";position:absolute;inset:auto -10% -55% 35%;height:520px;background:radial-gradient(circle,rgba(87,217,140,.11),transparent 67%);pointer-events:none}.sp-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.sp-hero h1{font-size:clamp(48px,6.3vw,82px);line-height:.94;letter-spacing:-.055em;margin:16px 0 24px;max-width:820px}.sp-hero h1 span{background:linear-gradient(90deg,var(--sp-blue),var(--sp-green),var(--sp-orange),var(--sp-violet));-webkit-background-clip:text;background-clip:text;color:transparent}.sp-hero p{font-size:19px;line-height:1.6;color:#c6d0df;max-width:620px}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn-primary,.btn-outline{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:14px;font-weight:900}.btn-primary{background:#fff;color:#0c111b;border:1px solid #fff}.btn-primary:hover{transform:translateY(-1px)}.btn-outline{border:1px solid rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.04)}.dark-outline{color:#111827;border-color:#cbd5e1}.hero-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.hero-proof span{font-size:12px;font-weight:800;color:#aeb9c9;padding:7px 10px;border-left:2px solid rgba(255,255,255,.16)}
.palette-stage{display:grid;grid-template-columns:1fr 1fr;gap:14px;transform:rotate(-1deg)}.palette-card{min-height:180px;border-radius:24px;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 24px 60px rgba(0,0,0,.28);transition:transform .2s ease;color:#fff;position:relative;overflow:hidden}.palette-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-55px;top:-75px;background:rgba(255,255,255,.12)}.palette-card:hover{transform:translateY(-5px)}.palette-card small{position:absolute;top:18px;left:20px;font-weight:900;opacity:.72}.palette-card strong{font-size:24px;position:relative}.palette-card span{font-size:12px;font-weight:800;opacity:.86;margin-top:5px;position:relative}.palette-card.signage{background:linear-gradient(135deg,#0c5f9c,#169fe8)}.palette-card.wraps{background:linear-gradient(135deg,#176843,#51cb82)}.palette-card.print{background:linear-gradient(135deg,#a85615,#f6963e)}.palette-card.digital{background:linear-gradient(135deg,#5a3b9b,#9a70ef)}
.sp-intro{padding:22px 0}.sp-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.sp-split h2{font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.04em;margin:10px 0}.sp-split p{margin-top:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-grid.four{grid-template-columns:repeat(4,1fr)}.service-tile{min-height:280px;padding:24px;border:1px solid #e7eaf0;border-radius:22px;background:#fff;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.service-tile:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(15,23,42,.11)}.service-tile:before{content:"";height:5px;position:absolute;left:0;right:0;top:0;background:#cbd5e1}.service-tile.signage:before{background:var(--sp-blue)}.service-tile.wraps:before{background:var(--sp-green)}.service-tile.print:before{background:var(--sp-orange)}.service-tile.digital:before{background:var(--sp-violet)}.service-tile.web:before{background:linear-gradient(90deg,var(--sp-blue),var(--sp-violet))}.service-tile.media:before{background:linear-gradient(90deg,var(--sp-orange),var(--sp-violet))}.service-tile h3{font-size:26px;margin:34px 0 10px}.service-tile p{color:#667085;line-height:1.55}.service-tile>span{margin-top:auto;font-weight:900}.service-no{font-size:12px;font-weight:1000;color:#98a2b3}
.sp-statement{background:#0a0f18;color:#fff}.statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:36px!important;padding-bottom:36px!important}.statement-grid h2{font-size:clamp(50px,7vw,86px);line-height:.86;letter-spacing:-.055em;margin:16px 0}.statement-grid p{font-size:20px;color:#c5cfdd;line-height:1.55}.darkbtn{color:#111827!important;border-color:#d0d5dd!important;background:#fff!important}.sp-steps .step b,.steps .step b{display:block;color:#98a2b3;font-size:11px;margin-bottom:20px}.proof-card{border:1px solid #e4e7ec;border-radius:22px;padding:10px 22px;background:#f9fafb}.proof-row{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid #e4e7ec}.proof-row:last-child{border-bottom:0}.proof-row>b{font-size:12px;color:#98a2b3}.proof-row span{display:grid;gap:4px}.proof-row small{color:#667085}.sp-cta{background:linear-gradient(110deg,#0d1825,#111827);color:#fff}.sp-cta .container{display:flex;align-items:center;justify-content:space-between;gap:40px}.sp-cta h2{font-size:40px;margin:8px 0}.sp-cta p{color:#cbd5e1}
.page-hero{padding:82px 0;color:#fff;background:#090d15}.page-hero h1{font-size:clamp(46px,6vw,78px);line-height:.98;letter-spacing:-.05em;margin:16px 0 22px}.page-hero h1 span{color:var(--sp-blue)}.page-hero p{max-width:760px;color:#c6d0df;font-size:19px;line-height:1.6}.wraps-hero{background:radial-gradient(850px 430px at 70% 5%,rgba(87,217,140,.18),transparent 65%),#090d15}.wraps-hero h1 span{color:var(--sp-green)}.design-hero{background:radial-gradient(850px 430px at 70% 5%,rgba(166,120,255,.20),transparent 65%),#090d15}.design-hero h1 span{color:var(--sp-violet)}.portfolio-hero{background:radial-gradient(800px 430px at 65% 0%,rgba(255,159,67,.16),transparent 65%),#090d15}.portfolio-hero h1 span{color:var(--sp-orange)}.about-hero{background:radial-gradient(850px 430px at 70% 5%,rgba(25,167,255,.14),transparent 65%),#090d15}.center-cta{text-align:center;margin-top:28px}.steps.five{grid-template-columns:repeat(5,1fr)}
.portfolio-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filter{padding:9px 12px;border-radius:999px;border:1px solid #d0d5dd;background:#fff;font-weight:800}.filter.active{background:#111827;color:#fff;border-color:#111827}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project-card{border:1px solid #e4e7ec;border-radius:22px;overflow:hidden;background:#fff}.project-art{height:270px;display:grid;place-items:center;font-size:26px;font-weight:1000;letter-spacing:.08em;color:#fff}.project-solar .project-art{background:linear-gradient(135deg,#071219,#0f4b55)}.project-bruno .project-art{background:linear-gradient(135deg,#10234a,#0a76be)}.project-placeholder .project-art{background:linear-gradient(135deg,#272b33,#4a4755)}.project-copy{padding:20px}.project-copy small{font-weight:900;color:#667085}.project-copy h3{font-size:26px;margin:8px 0}.project-copy p{color:#667085}.value-card{background:#fff;border:1px solid #e4e7ec;border-radius:22px;padding:24px}.value-card b{font-size:23px}.value-card p{color:#667085}.mm-title{font-weight:1000}.mm-drawer .content .btn:not(.primary){color:#111827;background:#fff;border-color:#d0d5dd}
@media(max-width:1040px){.sp-hero-grid,.sp-split,.statement-grid{grid-template-columns:1fr}.palette-stage{max-width:720px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid.four{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.signpalette-footer .cols{grid-template-columns:1fr 1fr}.meta{display:none}}
@media(max-width:720px){.sp-hero{padding:58px 0}.sp-hero h1{font-size:48px}.palette-stage{grid-template-columns:1fr 1fr}.palette-card{min-height:145px;padding:16px}.palette-card strong{font-size:20px}.service-grid,.service-grid.four,.portfolio-grid{grid-template-columns:1fr}.steps.five{grid-template-columns:1fr 1fr}.sp-cta .container{display:block}.signpalette-footer .cols{grid-template-columns:1fr}.brand img{height:40px;max-width:210px}.page-hero{padding:58px 0}.page-hero h1{font-size:48px}}
@media(max-width:520px){.palette-stage{grid-template-columns:1fr}.steps.five{grid-template-columns:1fr}.sp-hero h1,.page-hero h1{font-size:42px}.hero-proof{display:none}}

/* ===== Sign Palette supplied-logo brand refresh ===== */
:root{
  --sp-magenta:#e60063;
  --sp-orange:#ff7a1a;
  --sp-yellow:#ffc62a;
  --sp-green:#79bf43;
  --sp-cyan:#009fc9;
  --sp-ink:#111217;
  --sp-soft:#f5f6f8;
}
body{background:#fff;color:var(--sp-ink)}
.utility{background:var(--sp-ink)}
.header{
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(17,18,23,.10)!important;
  box-shadow:0 8px 28px rgba(17,18,23,.06);
}
.header:before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-yellow),var(--sp-green),var(--sp-cyan));
}
.header .top{padding:10px 0 8px!important}
.header .brand img{
  height:58px!important;width:auto!important;max-width:235px;object-fit:contain;
  filter:none!important;
}
.header .brand .tagline{color:#616773!important}
.header .navrow{border-top:1px solid rgba(17,18,23,.08)!important}
.nav a,.nav .navItem>a{color:#1a1b20!important}
.nav a:hover,.nav .navItem>a:hover{background:#f4f5f7!important;border-color:#e5e7eb!important;color:#000!important}
.header .search{background:#f4f5f7!important;border:1px solid #e2e5e9!important;box-shadow:none!important}
.header .search input{color:#111217!important}
.header .search input::placeholder{color:#7a808b!important}
.header .iconbtn{background:#fff!important;border:1px solid #e1e4e8!important;color:#111217!important}
.header .iconbtn:hover{background:#f7f7f8!important;border-color:#cfd3d8!important}
.header .btn{background:#fff!important;border-color:#d9dde2!important;color:#111217!important}
.header .btn.primary{
  color:#fff!important;border:none!important;
  background:linear-gradient(100deg,var(--sp-magenta),#ef3159 38%,var(--sp-orange))!important;
  box-shadow:0 8px 22px rgba(230,0,99,.18)!important;
}
.header .meta .badge{background:#f6f7f8!important;border-color:#e3e5e8!important;color:#34363b!important}
.btn.primary,.button.primary,a.btn.primary{
  background:linear-gradient(100deg,var(--sp-magenta),#ef3159 40%,var(--sp-orange))!important;
  border-color:transparent!important;color:#fff!important;
}
a{accent-color:var(--sp-magenta)}
.section-kicker,.eyebrow{color:var(--sp-magenta)!important}
.footer .brand img,.footer img[src*="signpalette-logo.png"]{
  content:url('../../images/signpalette-logo-reverse.png');
  height:58px!important;width:auto!important;max-width:235px;
}
@media(max-width:900px){
  .header{background:rgba(255,255,255,.98)!important}
  .header .brand img{height:46px!important;max-width:190px}
}


/* =========================================================
   SIGN PALETTE — NAVIGATION REFRESH
   Clean white navigation, palette-colour accents, no legacy gold.
   ========================================================= */
:root{
  --brand1:var(--sp-magenta);
  --brand2:var(--sp-orange);
  --ring:rgba(230,0,99,.18);
  --border:rgba(17,18,23,.10);
}

.header{overflow:visible!important;}
.header .container{position:relative;}
.header .top{gap:18px;min-height:78px;}
.header .center{flex:1;max-width:720px;}
.header .search{
  height:46px!important;
  border-radius:14px!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.header .search:focus-within{
  background:#fff!important;
  border-color:rgba(0,159,201,.58)!important;
  box-shadow:0 0 0 4px rgba(0,159,201,.09)!important;
}
.header .search .kbd{background:#fff!important;border-color:#dfe3e8!important;color:#6b7280!important;}
.header .actions{gap:9px;}
.header .actions .iconbtn{width:44px;height:44px;border-radius:13px;}
.header .actions .btn.primary{border-radius:13px!important;padding:12px 18px!important;white-space:nowrap;}

.header .navrow{
  min-height:56px;
  padding:7px 0!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.nav{
  display:flex;
  align-items:center;
  gap:4px!important;
  flex-wrap:nowrap;
}
.nav>a,.nav .navItem>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:40px;
  padding:9px 12px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:-.01em;
  white-space:nowrap;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease!important;
}
.nav>a::after,.nav .navItem>a::after{display:none!important;}
.nav>a:hover,.nav .navItem>a:hover{
  background:#f6f7f9!important;
  border-color:#e7e9ed!important;
  transform:translateY(-1px);
}
.nav>a.active,.nav .navItem>a.active{
  background:#f4f5f7!important;
  color:#08090b!important;
  border-color:#e1e4e8!important;
  box-shadow:inset 0 -3px 0 var(--nav-accent,var(--sp-cyan));
}
.nav .nav-signage{--nav-accent:var(--sp-cyan)}
.nav .nav-wraps{--nav-accent:var(--sp-green)}
.nav .nav-print{--nav-accent:var(--sp-orange)}
.nav .nav-creative{--nav-accent:var(--sp-magenta)}
.nav .nav-portfolio{--nav-accent:var(--sp-yellow)}
.nav .nav-about{--nav-accent:#111217}
.nav .navItem{position:relative;}
.nav .navItem>a svg{width:13px;height:13px;opacity:.55;transition:transform .18s ease;}
.nav .navItem:hover>a svg{transform:rotate(180deg);}

/* modern mega menu */
.nav .mega{
  top:calc(100% + 8px)!important;
  left:0!important;
  min-width:650px;
  max-width:min(820px,calc(100vw - 32px));
  padding:14px!important;
  gap:8px!important;
  background:rgba(255,255,255,.99)!important;
  border:1px solid #e4e7eb!important;
  border-radius:18px!important;
  box-shadow:0 22px 60px rgba(15,23,42,.16)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.nav .navItem:last-of-type .mega{left:auto!important;right:0!important;}
.nav .mega:before{
  content:"";
  position:absolute;
  left:18px;right:18px;top:0;height:3px;border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-yellow),var(--sp-green),var(--sp-cyan));
}
.nav .megaCol{
  min-width:145px;
  padding:10px!important;
  border-radius:13px;
}
.nav .megaTitle{
  color:#111217!important;
  font-size:11px!important;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin:1px 0 7px!important;
}
.nav .mega a{
  display:block!important;
  color:#4d535d!important;
  padding:8px 9px!important;
  border-radius:9px!important;
  font-size:13px!important;
  font-weight:700!important;
  border:0!important;
}
.nav .mega a:hover{
  color:#111217!important;
  background:#f4f6f8!important;
  transform:none!important;
}
.nav .megaFeature{
  min-width:210px;
  border-radius:14px;
  padding:15px;
  background:linear-gradient(135deg,#101216,#1a2029);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
}
.nav .megaFeature .megaTitle{color:rgba(255,255,255,.68)!important;}
.nav .megaFeature strong{font-size:18px;line-height:1.15;}
.nav .megaFeature p{font-size:12px;line-height:1.5;color:#cbd1da;margin:6px 0 0;}
.nav .megaFeature a{color:#fff!important;background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.12)!important;margin-top:auto;}
.nav .megaFeature a:hover{background:rgba(255,255,255,.16)!important;color:#fff!important;}

.header .meta{margin-left:auto;}
.header .meta .badge{
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:800!important;
  padding:8px 11px!important;
  background:#fff!important;
}

/* remove any legacy gold impression from common components */
.btn.primary{background:linear-gradient(105deg,var(--sp-magenta),var(--sp-orange))!important;color:#fff!important;border-color:transparent!important;}
.btn.primary:hover{box-shadow:0 14px 30px rgba(230,0,99,.18)!important;}
.badge{background:rgba(0,159,201,.08)!important;border-color:rgba(0,159,201,.18)!important;color:#14536a!important;}
.stepdot{background:linear-gradient(135deg,var(--sp-cyan),var(--sp-green))!important;color:#fff!important;}
.slider-dots .dot.active{background:var(--sp-magenta)!important;}
.mainImg{background:linear-gradient(135deg,rgba(0,159,201,.08),rgba(230,0,99,.08))!important;}
.mainImg.noimg::before{content:"SP"!important;color:rgba(17,18,23,.30)!important;}

@media(max-width:1180px){
  .header .meta{display:none!important;}
  .nav>a,.nav .navItem>a{padding:9px 9px!important;font-size:12.5px!important;}
}
@media(max-width:1040px){
  .header .navrow{display:none!important;}
}

/* Sign Palette mobile navigation */
.signpalette-mobile-menu{background:#fff!important;}
.signpalette-mobile-menu header{border-bottom:1px solid #e8eaee!important;background:#fff!important;}
.signpalette-mobile-menu .content{background:#fff!important;}
.signpalette-mobile-menu .search{background:#f4f5f7!important;border:1px solid #e2e5e9!important;}
.signpalette-mobile-menu .search input{color:#111217!important;}
.mobile-nav-block{padding:5px 0 13px;margin-bottom:10px;border-bottom:1px solid #edf0f3;}
.mobile-nav-title{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#8a9099;margin:7px 3px 8px;}
.mobile-nav-link{display:flex;align-items:center;justify-content:space-between;padding:11px 4px;color:#16181d!important;font-size:15px;font-weight:800;text-decoration:none;border-radius:9px;}
.mobile-nav-link:hover{padding-left:10px;background:#f5f6f8;color:#000!important;}
.mobile-nav-link span{font-weight:500;color:#9aa0a9;}


/* Sign Palette development pass — homepage visualisation + smarter quote UI */
.service-tile.featured{border-color:#d6e2ef;box-shadow:0 12px 34px rgba(15,23,42,.07)}
.service-tile.featured h3{font-size:29px}
.sp-visualise{background:#f7f9fc}
.visualise-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}
.visualise-grid h2{font-size:clamp(38px,4.8vw,62px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 18px;max-width:700px}
.visualise-points{display:grid;gap:10px;margin:26px 0 4px}
.visualise-points span{display:flex;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #dfe5ec;color:#98a2b3;font-size:12px;font-weight:900}
.visualise-points b{font-size:15px;color:#182230}
.visual-dark{background:#111827;color:#fff;border-color:#111827}
.visual-demo{display:grid;grid-template-columns:1fr 34px 1fr 34px 1fr;align-items:stretch}
.visual-arrow{display:flex;align-items:center;justify-content:center;font-size:24px;color:#98a2b3}
.visual-card{border-radius:22px;padding:24px;min-height:235px;display:flex;flex-direction:column;border:1px solid #dfe5ec;background:#fff;position:relative;overflow:hidden}
.visual-card:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:#d0d5dd}
.visual-card.concept:before{background:linear-gradient(90deg,var(--sp-blue),var(--sp-violet))}
.visual-card.approved:before{background:linear-gradient(90deg,var(--sp-green),var(--sp-orange))}
.visual-card small{font-weight:1000;color:#98a2b3;margin-top:12px}.visual-card strong{font-size:21px;line-height:1.12;margin:auto 0 12px}.visual-card span{color:#667085;font-size:14px;line-height:1.5}
.category-fields{margin:18px 0 4px;padding:18px;border:1px solid #dfe5ec;border-radius:18px;background:#f8fafc}
.category-fields .dynamic-title{font-size:14px;font-weight:1000;margin:0 0 14px;color:#182230}
.category-fields .inline{margin-bottom:12px}.category-fields .field:last-child{margin-bottom:0}
.qstep[hidden]{display:none!important}
.form-steps{display:flex;gap:7px;margin-bottom:18px}.form-steps .progress-dot{height:6px;flex:1;border-radius:20px;background:#e4e7ec}.form-steps .progress-dot.active{background:#111827}.form-steps .progress-dot.done{background:var(--sp-green)}
@media(max-width:1040px){.visualise-grid{grid-template-columns:1fr}.visual-demo{max-width:900px}}
@media(max-width:720px){.visual-demo{grid-template-columns:1fr}.visual-arrow{transform:rotate(90deg);height:34px}.visual-card{min-height:170px}}


/* Sign Palette business positioning pass */
.sp-partner .head h2,.sp-production .head h2{max-width:880px}
.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:28px}
.partner-card{padding:26px;border:1px solid #e1e6ec;border-radius:20px;background:#fff;min-height:230px}
.partner-card>b{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#111827;color:#fff;font-size:11px}.partner-card h3{font-size:24px;margin:38px 0 10px}.partner-card p{color:#667085;line-height:1.6;margin:0}
.value-compare{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.value-compare h2{font-size:clamp(38px,4.8vw,62px);line-height:1.02;letter-spacing:-.04em}.compare-table{background:#fff;border:1px solid #e0e5eb;border-radius:22px;overflow:hidden}.compare-table>div{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #edf0f3}.compare-table>div:last-child{border-bottom:0}.compare-table span,.compare-table strong{padding:17px 20px}.compare-table span{color:#7a8493}.compare-table strong{background:#f9fbfc;color:#182230}.compare-head span,.compare-head strong{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#fff!important;background:#111827!important}
.production-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.production-card{border:1px solid #dfe5ec;border-radius:22px;padding:28px;background:#fff}.production-card.featured{border:2px solid #111827;box-shadow:0 18px 40px rgba(15,23,42,.09)}.production-card>span{font-size:10px;letter-spacing:.12em;font-weight:1000;color:#7a8493}.production-card h3{font-size:28px;margin:26px 0 10px}.production-card p{font-size:16px;line-height:1.55}.production-card small{display:block;color:#7a8493;line-height:1.5;margin-top:20px}.price-note{margin-top:22px;padding:18px 20px;border-radius:16px;background:#111827;color:#fff}
.launch-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center}.launch-grid h2{font-size:clamp(40px,5vw,64px);line-height:1.02;letter-spacing:-.045em}.launch-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:24px 0}.launch-list span{padding:12px 0;border-bottom:1px solid #dde3e9;font-weight:800}.launch-panel{min-height:360px;border-radius:26px;background:linear-gradient(145deg,#101318,#1c2430);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.launch-panel:before{content:"";position:absolute;inset:-25% auto auto -15%;width:250px;height:250px;border-radius:50%;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange));filter:blur(10px);opacity:.9}.launch-panel small,.launch-panel strong,.launch-panel p{position:relative}.launch-panel small{font-weight:1000;letter-spacing:.12em;color:#cbd5e1}.launch-panel strong{font-size:40px;line-height:1.05;margin:18px 0}.launch-panel p{color:#d7dde6;line-height:1.6}
.vehicle-value{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.vehicle-value h2{font-size:clamp(38px,4.7vw,60px);line-height:1.02}.mini-stack{display:grid;gap:12px}.mini-stack>div{padding:22px;border:1px solid #dfe5ec;border-radius:18px;background:#fff}.mini-stack b{display:block;font-size:20px;margin-bottom:6px}.mini-stack span{color:#667085;line-height:1.5}
@media(max-width:980px){.partner-grid{grid-template-columns:1fr 1fr}.value-compare,.launch-grid,.vehicle-value{grid-template-columns:1fr}.production-grid{grid-template-columns:1fr}.launch-panel{min-height:280px}}
@media(max-width:620px){.partner-grid,.launch-list{grid-template-columns:1fr}.compare-table span,.compare-table strong{padding:14px 12px;font-size:13px}.partner-card{min-height:auto}}


/* Premium business sections — V5 */
.sp-partner-premium,.sp-value-premium,.sp-production-premium,.sp-launch-premium{overflow:hidden}
.premium-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:end;margin-bottom:38px}.premium-intro h2{font-size:clamp(44px,5.2vw,70px);line-height:.98;letter-spacing:-.05em;margin:10px 0 0}.premium-intro h2 span{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-yellow));-webkit-background-clip:text;background-clip:text;color:transparent}.premium-intro>p{font-size:18px;line-height:1.7;color:#667085;max-width:590px;margin:0 0 6px}
.partner-showcase{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.partner-feature{min-height:470px;border-radius:30px;background:linear-gradient(145deg,#0e1117,#1b2230);color:#fff;padding:38px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.partner-feature:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-90px;top:-90px;background:radial-gradient(circle,var(--sp-cyan),transparent 68%);opacity:.28}.partner-feature:after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-yellow),var(--sp-green),var(--sp-cyan))}.pf-no{font-size:12px;font-weight:1000;color:#9ba7b9;letter-spacing:.14em}.pf-icon{position:absolute;right:30px;top:28px;width:58px;height:58px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px}.partner-feature small{font-size:11px;letter-spacing:.14em;color:#aeb9c9;font-weight:1000}.partner-feature h3{font-size:clamp(34px,4vw,52px);line-height:1.02;letter-spacing:-.04em;max-width:620px;margin:12px 0 16px}.partner-feature p{font-size:17px;line-height:1.65;color:#c9d1de;max-width:620px;margin:0}.partner-side{display:grid;gap:12px}.partner-side article{border:1px solid #e1e6ec;border-radius:22px;background:#fff;padding:24px 26px;display:grid;grid-template-columns:46px 1fr;column-gap:12px;align-content:center;transition:.2s ease}.partner-side article:hover{transform:translateX(4px);box-shadow:0 14px 34px rgba(15,23,42,.07)}.partner-side article>span{width:38px;height:38px;border-radius:50%;background:#f1f3f6;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:1000}.partner-side h3{font-size:22px;margin:0 0 6px}.partner-side p{grid-column:2;color:#667085;line-height:1.55;margin:0}
.quality-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px;align-items:center}.quality-copy h2{font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.045em;margin:12px 0 22px}.quality-copy .lead{color:#667085;line-height:1.7;margin-bottom:28px}.quality-path{position:relative;padding-left:18px}.quality-line{position:absolute;left:41px;top:36px;bottom:36px;width:1px;background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan))}.quality-path article{position:relative;display:grid;grid-template-columns:50px 1fr;gap:20px;padding:18px 0}.quality-path article>span{width:48px;height:48px;border-radius:50%;background:#fff;border:1px solid #dce2e8;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:1000;z-index:1;box-shadow:0 6px 16px rgba(15,23,42,.05)}.quality-path small{font-size:10px;font-weight:1000;letter-spacing:.13em;color:#8b95a5}.quality-path h3{font-size:22px;margin:5px 0 6px}.quality-path p{color:#667085;line-height:1.55;margin:0}
.sp-production-premium{background:#0b0f16;color:#fff}.production-shell{position:relative}.production-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end;margin-bottom:38px}.production-heading h2{font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.045em;margin:12px 0 0}.production-heading p{font-size:17px;line-height:1.65;color:#aeb8c7;max-width:560px;margin:0}.eyebrow.light{color:#fff!important;opacity:.72}.production-flow{display:grid;grid-template-columns:1fr 38px 1fr 38px 1fr 38px 1fr;gap:8px;align-items:stretch}.production-flow article{border:1px solid rgba(255,255,255,.11);border-radius:22px;padding:24px;background:rgba(255,255,255,.035);min-height:230px;display:flex;flex-direction:column}.production-flow article.active{background:linear-gradient(155deg,rgba(230,0,99,.18),rgba(255,122,26,.09));border-color:rgba(255,255,255,.22)}.flow-top{display:flex;align-items:center;justify-content:space-between}.flow-top span{font-size:11px;color:#8d99aa;font-weight:1000}.flow-top b{font-size:10px;letter-spacing:.14em;color:#d5dbe5}.production-flow h3{font-size:25px;line-height:1.08;margin:auto 0 10px}.production-flow p{color:#9eabba;line-height:1.55;margin:0}.flow-arrow{display:flex;align-items:center;justify-content:center;color:#566273;font-size:22px}.production-note{margin-top:18px;border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:18px 22px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;background:rgba(255,255,255,.025)}.production-note>span{font-size:10px;font-weight:1000;letter-spacing:.14em;color:#fff}.production-note p{margin:0;color:#aeb8c7;line-height:1.5}.production-note a{color:#fff;font-weight:900;white-space:nowrap}
.launch-head{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-bottom:34px}.launch-head h2{font-size:clamp(42px,5vw,66px);line-height:1;letter-spacing:-.045em;margin:10px 0 0}.launch-head>p{font-size:17px;line-height:1.65;color:#667085;margin:0}.launch-studio{display:grid;grid-template-columns:.88fr 1.12fr;border-radius:30px;overflow:hidden;box-shadow:0 22px 60px rgba(15,23,42,.09);min-height:470px}.launch-main{padding:42px;background:linear-gradient(145deg,#11151d,#1b2431);color:#fff;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.launch-main:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;left:-100px;top:-100px;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange));filter:blur(8px);opacity:.5}.launch-main>*{position:relative}.launch-badge{font-size:10px;letter-spacing:.14em;font-weight:1000;color:#c5ced9}.launch-main h3{font-size:clamp(38px,4vw,54px);line-height:1;letter-spacing:-.04em;margin:18px 0}.launch-main p{color:#c5ced9;line-height:1.65;margin:0 0 26px;max-width:520px}.launch-main .btn{align-self:flex-start}.launch-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr 1fr;background:#fff}.launch-mosaic article{padding:24px 26px;border-left:1px solid #e8ebef;border-bottom:1px solid #e8ebef;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.launch-mosaic article:nth-child(5){grid-column:1/3;border-bottom:0}.launch-mosaic article:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:#d9dee5}.launch-mosaic .lm-sign:before{background:var(--sp-cyan)}.launch-mosaic .lm-brand:before{background:var(--sp-magenta)}.launch-mosaic .lm-vehicle:before{background:var(--sp-green)}.launch-mosaic .lm-print:before{background:var(--sp-orange)}.launch-mosaic .lm-digital:before{background:linear-gradient(var(--sp-violet,#8d6cff),var(--sp-cyan))}.launch-mosaic small{position:absolute;right:20px;top:18px;font-size:10px;font-weight:1000;color:#a0a8b3}.launch-mosaic strong{font-size:28px;line-height:1;margin-bottom:8px}.launch-mosaic span{color:#7a8493;font-size:13px;line-height:1.4}
@media(max-width:1050px){.premium-intro,.production-heading,.launch-head{grid-template-columns:1fr;gap:22px}.partner-showcase,.quality-layout,.launch-studio{grid-template-columns:1fr}.partner-feature{min-height:390px}.production-flow{grid-template-columns:1fr 24px 1fr;row-gap:16px}.production-flow .flow-arrow:nth-of-type(2),.production-flow .flow-arrow:nth-of-type(3){display:none}.production-note{grid-template-columns:1fr}.launch-main{min-height:360px}}
@media(max-width:720px){.partner-side article{grid-template-columns:42px 1fr}.production-flow{grid-template-columns:1fr}.flow-arrow{display:none!important}.launch-mosaic{grid-template-columns:1fr;grid-template-rows:none}.launch-mosaic article,.launch-mosaic article:nth-child(5){grid-column:auto;min-height:150px}.quality-path{padding-left:0}.premium-intro h2,.production-heading h2,.launch-head h2,.quality-copy h2{font-size:40px}.partner-feature{padding:28px}.launch-main{padding:30px}}

/* Sign Palette homepage premium sections v6 */
.sp-partner-x{position:relative;background:#fff}.spx-head{display:grid;grid-template-columns:1.05fr .75fr;gap:72px;align-items:end;margin-bottom:38px}.spx-head h2,.ql-copy h2,.px-top h2,.lx-head h2{font-size:clamp(46px,5.5vw,74px);line-height:.96;letter-spacing:-.055em;margin:10px 0 0}.spx-head h2 span{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.spx-head>p,.lx-head>p{font-size:17px;line-height:1.7;color:#667085;margin:0}.spx-stage{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.spx-main{min-height:560px;border-radius:34px;padding:48px;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.16),transparent 28%),linear-gradient(135deg,#11151d 0%,#192434 100%);color:white;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.spx-main:after{content:"";position:absolute;width:430px;height:430px;border:68px solid rgba(255,255,255,.055);border-radius:50%;right:-90px;top:-80px}.spx-orbit{position:absolute;width:260px;height:260px;border-radius:50%;right:36px;top:58px;background:conic-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan),var(--sp-magenta));-webkit-mask:radial-gradient(circle,#0000 0 57%,#000 58%);mask:radial-gradient(circle,#0000 0 57%,#000 58%);opacity:.95;filter:saturate(1.1)}.spx-orbit:after{content:"";position:absolute;inset:35px;border:1px solid rgba(255,255,255,.25);border-radius:50%}.spx-kicker{font-size:10px;font-weight:1000;letter-spacing:.18em;color:#cfd7e3}.spx-main h3{font-size:clamp(38px,4vw,58px);line-height:1;letter-spacing:-.04em;margin:14px 0 16px;max-width:720px}.spx-main p{max-width:650px;color:#c1cad7;font-size:16px;line-height:1.65}.spx-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.spx-tags span{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 12px;font-size:11px;color:#e6ecf3;background:rgba(255,255,255,.045)}.spx-stack{display:grid;gap:14px}.spx-stack article{position:relative;min-height:170px;border-radius:26px;padding:24px 24px 22px 84px;background:#f7f9fb;border:1px solid #e6ebf0;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.04)}.spx-stack article:before{content:"";position:absolute;inset:0 auto 0 0;width:8px;background:#ddd}.spx-stack article.mag:before{background:var(--sp-magenta)}.spx-stack article.orange:before{background:var(--sp-orange)}.spx-stack article.cyan:before{background:var(--sp-cyan)}.spx-stack article>b{position:absolute;right:20px;top:18px;font-size:11px;color:#a0a8b3}.spx-icon{position:absolute;left:24px;top:28px;width:42px;height:42px;border-radius:14px;background:#11151d;color:white;display:flex;align-items:center;justify-content:center;font-size:20px}.spx-stack small{font-size:9px;font-weight:1000;letter-spacing:.15em;color:#8a95a3}.spx-stack h3{font-size:26px;margin:6px 0}.spx-stack p{color:#667085;line-height:1.55;margin:0}

.sp-quality-lab{background:linear-gradient(180deg,#f3f5f7,#fff)}.ql-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}.ql-copy .lead{color:#667085;line-height:1.72;margin:22px 0 30px}.ql-board{background:#10151d;border-radius:32px;padding:18px;box-shadow:0 30px 70px rgba(15,23,42,.16)}.ql-board-top{display:flex;justify-content:space-between;align-items:center;color:#98a4b3;padding:4px 6px 16px;font-size:10px;letter-spacing:.14em}.ql-board-top b{color:#78e3a7}.ql-preview{display:grid;grid-template-columns:1.08fr .92fr;gap:12px}.ql-art{position:relative;min-height:420px;border-radius:22px;background:linear-gradient(135deg,#eef1f4,#fff);overflow:hidden;border:1px solid rgba(255,255,255,.12)}.ql-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(31,41,55,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(31,41,55,.055) 1px,transparent 1px);background-size:28px 28px}.ql-logo-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-58%);width:190px;height:190px;border-radius:48px;background:linear-gradient(145deg,var(--sp-magenta),var(--sp-orange) 45%,var(--sp-cyan));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:1000;font-size:54px;letter-spacing:-.08em;box-shadow:0 22px 45px rgba(15,23,42,.2)}.ql-vector{position:absolute;left:24px;top:24px;background:#11151d;color:white;font-size:9px;letter-spacing:.15em;font-weight:1000;padding:8px 10px;border-radius:999px}.ql-crop{position:absolute;width:36px;height:36px;border-style:solid;border-color:#11151d}.ql-crop.a{left:54px;bottom:54px;border-width:0 0 2px 2px}.ql-crop.b{right:54px;top:54px;border-width:2px 2px 0 0}.ql-dim{position:absolute;font-size:10px;font-weight:900;color:#5d6775}.ql-dim.horiz{left:50%;bottom:28px;transform:translateX(-50%)}.ql-dim.vert{right:16px;top:50%;transform:rotate(90deg) translateY(-50%);transform-origin:right top}.ql-checks{display:grid;gap:10px}.ql-checks article{background:#171e28;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px;display:grid;grid-template-columns:34px 1fr 28px;gap:12px;align-items:center;color:white}.ql-checks article>span{font-size:10px;color:#778293}.ql-checks small{display:block;font-size:9px;letter-spacing:.14em;color:#8c98a8;margin-bottom:4px}.ql-checks strong{font-size:14px}.ql-checks i{font-style:normal;width:28px;height:28px;border-radius:50%;background:#163e2b;color:#71e1a0;display:flex;align-items:center;justify-content:center;font-weight:1000}

.sp-production-x{background:#0a0e14;color:#fff;position:relative;overflow:hidden}.sp-production-x:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0,rgba(230,0,99,.12),transparent 28%),radial-gradient(circle at 90% 100%,rgba(0,188,212,.13),transparent 30%)}.sp-production-x .container{position:relative}.px-top{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end;margin-bottom:50px}.px-top p{color:#a8b2c0;line-height:1.7;font-size:17px}.px-track{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}.px-line{position:absolute;left:12%;right:12%;top:55px;height:2px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan));opacity:.7}.px-track article{position:relative;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);border-radius:26px;padding:22px 22px 24px;min-height:260px;backdrop-filter:blur(8px)}.px-no{position:absolute;right:18px;top:16px;font-size:10px;color:#6f7a89}.px-symbol{width:66px;height:66px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#111923;border:1px solid rgba(255,255,255,.11);font-size:28px;margin-bottom:48px;position:relative;z-index:2;box-shadow:0 0 0 8px #0a0e14}.p1 .px-symbol{color:var(--sp-magenta)}.p2 .px-symbol{color:var(--sp-orange)}.p3 .px-symbol{color:var(--sp-green)}.p4 .px-symbol{color:var(--sp-cyan)}.px-track small{font-size:9px;font-weight:1000;letter-spacing:.15em;color:#8995a5}.px-track h3{font-size:25px;line-height:1.04;margin:8px 0 10px}.px-track p{color:#9aa6b5;line-height:1.55;margin:0}.px-footer{margin-top:18px;border-radius:18px;border:1px solid rgba(255,255,255,.1);padding:17px 20px;display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:rgba(255,255,255,.03)}.px-footer>div{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.13em}.pulse{width:8px;height:8px;border-radius:50%;background:#75e5a5;box-shadow:0 0 0 6px rgba(117,229,165,.12)}.px-footer p{margin:0;color:#a8b2c0}.px-footer a{color:white;font-weight:900;white-space:nowrap}

.sp-launch-x{background:linear-gradient(180deg,#fff,#f3f5f7)}.lx-head{display:grid;grid-template-columns:1.05fr .7fr;gap:70px;align-items:end;margin-bottom:36px}.lx-showroom{display:grid;grid-template-columns:1.2fr .8fr;border-radius:34px;overflow:hidden;background:#11151d;box-shadow:0 28px 75px rgba(15,23,42,.14)}.lx-scene{min-height:540px;position:relative;background:linear-gradient(145deg,#e9edf1,#f8fafb);overflow:hidden}.lx-scene:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:34px 34px}.lx-shopfront{position:absolute;left:58px;top:70px;width:58%;height:58%;background:#d9dfe5;border:8px solid #1d2631;box-shadow:0 24px 50px rgba(15,23,42,.16)}.lx-fascia{height:58px;background:#0d1118;color:#fff;display:flex;align-items:center;padding:0 22px;font-size:18px;font-weight:1000;letter-spacing:.04em}.lx-window{position:absolute;bottom:0;width:38%;height:70%;background:linear-gradient(150deg,#7ed6e3,#dff8fb);border-top:7px solid #1d2631}.lx-window.w1{left:0;border-right:6px solid #1d2631}.lx-window.w2{left:38%}.lx-door{position:absolute;right:0;bottom:0;width:24%;height:70%;background:#c6d1dc;border-left:7px solid #1d2631}.lx-van{position:absolute;left:39%;bottom:45px;width:44%;height:122px;z-index:4}.lx-van-body{position:absolute;inset:10px 0 20px;background:linear-gradient(90deg,#171d26 0 62%,#252f3b 62%);border-radius:18px 28px 10px 12px;box-shadow:0 18px 35px rgba(15,23,42,.25)}.lx-van-body:before{content:"";position:absolute;right:8%;top:8px;width:25%;height:38%;background:#8bd3dc;border-radius:8px 16px 4px 4px}.lx-van-body span{position:absolute;left:24px;top:40px;color:#fff;font-weight:1000;font-size:16px}.wheel{position:absolute;bottom:0;width:38px;height:38px;background:#0d1118;border:7px solid #444f5d;border-radius:50%;z-index:5}.wheel.wa{left:15%}.wheel.wb{right:14%}.lx-phone{position:absolute;right:42px;top:70px;width:118px;height:220px;border-radius:24px;background:#11151d;border:8px solid #11151d;box-shadow:0 20px 40px rgba(15,23,42,.2);overflow:hidden}.phone-bar{height:24px;background:#fff}.phone-hero{height:82px;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}.phone-lines{height:114px;background:repeating-linear-gradient(#fff 0 12px,#eef1f4 12px 20px)}.lx-card{position:absolute;right:72px;bottom:42px;width:190px;height:112px;border-radius:14px;background:white;box-shadow:0 18px 35px rgba(15,23,42,.16);padding:18px;transform:rotate(-5deg)}.lx-card:before{content:"";position:absolute;left:0;top:0;width:9px;height:100%;background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}.lx-card small{display:block;color:#9aa3af;font-size:8px;letter-spacing:.14em;margin-bottom:22px}.lx-card strong{font-size:18px}.lx-copy{padding:48px;color:white;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.lx-copy:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-180px;bottom:-170px;background:conic-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan),var(--sp-magenta));opacity:.22}.lx-copy>*{position:relative}.lx-copy h3{font-size:clamp(38px,4.4vw,58px);line-height:.98;letter-spacing:-.045em;margin:18px 0}.lx-copy p{color:#c1cad6;line-height:1.65}.lx-pills{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}.lx-pills span{font-size:10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:8px 10px;color:#e8edf3;background:rgba(255,255,255,.04)}.lx-copy .btn{align-self:flex-start;margin-top:10px}

@media(max-width:1050px){.spx-head,.ql-grid,.px-top,.lx-head,.spx-stage,.lx-showroom{grid-template-columns:1fr}.spx-main{min-height:480px}.ql-preview{grid-template-columns:1fr}.px-track{grid-template-columns:1fr 1fr}.px-line{display:none}.px-footer{grid-template-columns:1fr}.lx-scene{min-height:500px}}
@media(max-width:700px){.spx-main{padding:30px;min-height:470px}.spx-orbit{width:190px;height:190px;right:-10px;top:40px}.spx-stack article{padding-left:74px}.ql-board{padding:12px}.ql-art{min-height:340px}.ql-logo-mark{width:150px;height:150px;font-size:42px}.px-track{grid-template-columns:1fr}.lx-scene{min-height:430px}.lx-shopfront{left:24px;top:44px;width:68%;height:54%}.lx-phone{right:18px;top:50px;transform:scale(.82);transform-origin:top right}.lx-van{left:22%;width:64%;bottom:42px}.lx-card{right:26px;bottom:24px;transform:scale(.82) rotate(-5deg);transform-origin:bottom right}.lx-copy{padding:32px}}


/* V7 editorial showcase sections */
.sp-wow{position:relative;padding:110px 0;overflow:hidden}.sp-wow h2{letter-spacing:-.055em}.sp-wow em{font-style:normal}.sp-why{background:#0a0d12;color:#fff;min-height:780px;display:flex;align-items:center}.sp-wow-bgword{position:absolute;left:-2vw;bottom:-5vw;font-size:15vw;line-height:.8;font-weight:1000;letter-spacing:-.08em;color:rgba(255,255,255,.025);white-space:nowrap;pointer-events:none}.sp-why:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 18%,rgba(230,0,99,.16),transparent 24%),radial-gradient(circle at 88% 78%,rgba(0,188,212,.15),transparent 28%)}.sp-why-wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:center;position:relative}.sp-why-intro h2{font-size:clamp(56px,6vw,88px);line-height:.9;margin:18px 0 26px}.sp-why-intro h2 em{display:inline-block;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.sp-why-intro p{font-size:19px;line-height:1.65;color:#aeb9c7;max-width:520px}.sp-text-link{display:inline-flex;gap:12px;align-items:center;color:#fff;font-weight:900;margin-top:24px;border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:6px}.sp-text-link span{font-size:22px}.sp-why-visual{height:560px;position:relative;perspective:1200px}.sp-canvas-card{position:absolute;inset:44px 40px 44px 66px;background:#f4f6f8;border-radius:10px;box-shadow:0 40px 100px rgba(0,0,0,.38);transform:rotateY(-7deg) rotateZ(1.2deg);overflow:hidden}.sp-canvas-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(20,30,42,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(20,30,42,.055) 1px,transparent 1px);background-size:34px 34px}.sp-canvas-logo{position:absolute;left:14%;top:31%;font-size:68px;line-height:.82;letter-spacing:-.06em;color:#0c1118}.sp-canvas-logo span{display:block;font-weight:300}.sp-canvas-logo strong{font-weight:1000}.sp-colour-swatch{position:absolute;left:14%;bottom:16%;display:flex;gap:8px}.sp-colour-swatch i{width:42px;height:11px;border-radius:999px}.sp-colour-swatch i:nth-child(1){background:var(--sp-magenta)}.sp-colour-swatch i:nth-child(2){background:var(--sp-orange)}.sp-colour-swatch i:nth-child(3){background:#ffd43b}.sp-colour-swatch i:nth-child(4){background:var(--sp-green)}.sp-colour-swatch i:nth-child(5){background:var(--sp-cyan)}.sp-ruler{position:absolute;color:#66717f;font-size:8px;font-weight:900;letter-spacing:.08em;z-index:4}.sp-ruler.top{left:66px;right:40px;top:23px;height:18px;border-bottom:1px solid #44505d;display:flex;justify-content:space-between}.sp-ruler.top:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:7px;background:repeating-linear-gradient(90deg,#44505d 0 1px,transparent 1px 18px)}.sp-ruler.side{left:36px;top:44px;bottom:44px;width:20px;border-right:1px solid #44505d;display:flex;flex-direction:column;justify-content:space-between}.sp-ruler.side:after{content:"";position:absolute;top:0;bottom:0;right:-1px;width:7px;background:repeating-linear-gradient(#44505d 0 1px,transparent 1px 18px)}.sp-dimline{position:absolute;font-size:9px;color:#596472;font-weight:900}.sp-dimline.dim-a{right:12%;bottom:10%;border-top:1px solid #7b8794;width:42%;padding-top:5px;text-align:center}.sp-dimline.dim-b{right:5%;top:28%;height:34%;border-left:1px solid #7b8794;writing-mode:vertical-rl;padding-left:5px}.sp-crosshair{position:absolute;width:18px;height:18px;border:1px solid #c02;border-radius:50%}.sp-crosshair:before,.sp-crosshair:after{content:"";position:absolute;background:#c02}.sp-crosshair:before{left:50%;top:-6px;bottom:-6px;width:1px}.sp-crosshair:after{top:50%;left:-6px;right:-6px;height:1px}.sp-crosshair.x1{right:18%;top:22%}.sp-crosshair.x2{left:11%;bottom:22%}.sp-float-note{position:absolute;z-index:6;background:#fff;color:#111820;border-radius:16px;padding:13px 16px;display:flex;gap:12px;align-items:center;box-shadow:0 18px 45px rgba(0,0,0,.22);font-size:11px;font-weight:1000;letter-spacing:.08em}.sp-float-note b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:9px}.sp-float-note small{display:block;color:#8b96a4;font-size:8px;margin-top:2px;font-weight:800}.note-a{left:0;top:90px}.note-a b{background:var(--sp-magenta)}.note-b{right:0;top:218px}.note-b b{background:var(--sp-orange)}.note-c{left:28px;bottom:40px}.note-c b{background:var(--sp-cyan)}
.sp-artwork-showcase{background:#f3f5f7}.sp-art-head{display:grid;grid-template-columns:1fr .62fr;gap:80px;align-items:end;margin-bottom:46px}.sp-art-head h2{font-size:clamp(52px,5.8vw,82px);line-height:.92;margin:12px 0 0}.sp-art-head h2 em{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange));-webkit-background-clip:text;background-clip:text;color:transparent}.sp-art-head p{font-size:18px;line-height:1.7;color:#667085;margin:0}.sp-art-grid{display:grid;grid-template-columns:1fr 100px 1fr;gap:18px;align-items:stretch;position:relative}.sp-beforeafter{min-height:470px;background:#fff;border-radius:28px;padding:26px;position:relative;overflow:hidden;box-shadow:0 20px 50px rgba(15,23,42,.08)}.sp-beforeafter:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:28px 28px}.sp-ba-label{position:absolute;left:22px;top:22px;background:#221018;color:#ff8bbd;border:1px solid #5b2941;border-radius:999px;padding:8px 11px;font-size:9px;font-weight:1000;letter-spacing:.14em;z-index:2}.sp-ba-label.good{background:#10261d;color:#77e4a3;border-color:#244f3a}.sp-pixel-logo,.sp-vector-logo{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:210px;height:210px;border-radius:48px;display:grid;place-items:center;font-size:76px;font-weight:1000;color:#fff}.sp-pixel-logo{background:linear-gradient(135deg,#d92779,#e58c35,#3aa6b9);filter:contrast(.75) saturate(.65);image-rendering:pixelated;box-shadow:0 0 0 10px rgba(210,40,120,.06)}.sp-pixel-logo:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.18) 0 4px,transparent 4px 9px),repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 4px,transparent 4px 9px);mix-blend-mode:overlay}.sp-vector-logo{background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));box-shadow:0 24px 45px rgba(15,23,42,.22)}.sp-file-meta{position:absolute;left:24px;right:24px;bottom:24px;display:flex;justify-content:space-between;gap:16px;align-items:end;z-index:2}.sp-file-meta span{font-size:9px;color:#8893a1;letter-spacing:.12em;font-weight:900}.sp-file-meta strong{font-size:10px;color:#cf245f;letter-spacing:.1em}.good .sp-file-meta strong{color:#178650}.sp-transform-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#808b99}.sp-transform-arrow span{width:64px;height:64px;border-radius:50%;background:#0d1219;color:#fff;display:grid;place-items:center;font-size:28px;box-shadow:0 14px 30px rgba(15,23,42,.18)}.sp-transform-arrow small{text-align:center;font-size:8px;line-height:1.6;letter-spacing:.12em;font-weight:1000;margin-top:12px}.sp-bezier{position:absolute;left:9%;right:9%;top:10%;width:82%;height:74%;pointer-events:none}.sp-bezier path,.sp-bezier line{fill:none;stroke:rgba(13,18,25,.18);stroke-width:1.3}.sp-bezier circle{fill:#fff;stroke:#222;stroke-width:1.5}.sp-qc-strip{grid-column:1/-1;margin-top:4px;background:#0d1219;color:#fff;border-radius:18px;padding:16px 20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.sp-qc-strip span{font-size:11px;font-weight:900;letter-spacing:.04em}.sp-qc-strip i{font-style:normal;color:#62d997;margin-right:6px}
.sp-control-line{background:#0a0d12;color:#fff}.sp-control-line:before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),#ffd43b,var(--sp-green),var(--sp-cyan))}.sp-control-title{display:grid;grid-template-columns:1fr .5fr;gap:70px;align-items:end;margin-bottom:64px}.sp-control-title h2{font-size:clamp(54px,6vw,84px);line-height:.92;margin:12px 0 0}.sp-control-title p{color:#98a4b3;font-size:17px;line-height:1.7}.sp-conveyor{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;padding-top:40px}.sp-conveyor-rail{position:absolute;left:8%;right:8%;top:73px;height:6px;border-radius:999px;background:#1e2834;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.sp-conveyor-rail:after{content:"";position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan));opacity:.85;border-radius:999px}.sp-conveyor article{position:relative;padding:0 26px 26px 0;min-height:330px}.sp-conveyor article+article{border-left:1px solid rgba(255,255,255,.09);padding-left:28px}.sp-stepdisc{width:68px;height:68px;border-radius:50%;background:#0a0d12;border:2px solid currentColor;display:grid;place-items:center;font-size:12px;font-weight:1000;position:relative;z-index:2;box-shadow:0 0 0 11px #0a0d12;margin-bottom:42px}.d1{color:var(--sp-magenta)}.d2{color:var(--sp-orange)}.d3{color:var(--sp-green)}.d4{color:var(--sp-cyan)}.sp-conveyor small{font-size:9px;letter-spacing:.16em;color:#7f8b9a;font-weight:1000}.sp-conveyor h3{font-size:34px;margin:8px 0 12px;letter-spacing:-.035em}.sp-conveyor p{color:#a6b0be;line-height:1.6;max-width:250px}.sp-step-tag{position:absolute;left:0;bottom:0;font-size:8px;letter-spacing:.12em;font-weight:1000;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:7px 9px;color:#b8c1cd}.sp-conveyor article+article .sp-step-tag{left:28px}.sp-control-cta{margin-top:40px;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}.sp-control-cta b{font-size:13px}.sp-control-cta span{color:#98a4b3}.sp-control-cta a{color:#fff;font-weight:1000}
.sp-launch-ecosystem{background:#fff}.sp-launch-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:50px;align-items:center}.sp-launch-copy h2{font-size:clamp(58px,6.2vw,88px);line-height:.9;margin:14px 0 24px}.sp-launch-copy h2 em{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}.sp-launch-copy p{color:#667085;font-size:18px;line-height:1.7;max-width:520px}.sp-launch-chips{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}.sp-launch-chips span{background:#f0f3f6;border-radius:999px;padding:8px 11px;font-size:9px;font-weight:1000;letter-spacing:.1em}.sp-orbit-scene{min-height:650px;position:relative;background:radial-gradient(circle at center,#fff 0 28%,#f2f5f7 29% 100%);border-radius:48px;overflow:hidden;border:1px solid #e6ebef;box-shadow:0 30px 70px rgba(15,23,42,.08)}.sp-orbit-scene:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.025) 1px,transparent 1px);background-size:40px 40px}.sp-orbit-ring{position:absolute;left:50%;top:50%;border:1px dashed #cad2da;border-radius:50%;transform:translate(-50%,-50%)}.sp-orbit-ring.r1{width:420px;height:420px}.sp-orbit-ring.r2{width:590px;height:590px}.sp-orbit-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:50%;background:#0d1219;color:#fff;display:grid;place-items:center;text-align:center;box-shadow:0 28px 55px rgba(15,23,42,.25);z-index:3}.sp-orbit-core b{font-size:28px;line-height:.9;letter-spacing:-.05em}.sp-mini-swatches{position:absolute;top:35px;display:flex;gap:4px}.sp-mini-swatches i{width:20px;height:6px;border-radius:999px}.sp-mini-swatches i:nth-child(1){background:var(--sp-magenta)}.sp-mini-swatches i:nth-child(2){background:var(--sp-orange)}.sp-mini-swatches i:nth-child(3){background:#ffd43b}.sp-mini-swatches i:nth-child(4){background:var(--sp-green)}.sp-mini-swatches i:nth-child(5){background:var(--sp-cyan)}.sp-orbit-item{position:absolute;background:#fff;border-radius:20px;padding:14px 16px;box-shadow:0 18px 40px rgba(15,23,42,.14);border:1px solid #e5e9ee}.sp-orbit-item small{display:block;font-size:8px;letter-spacing:.14em;font-weight:1000;color:#8994a2;margin-bottom:10px}.sp-orbit-item.shop{left:5%;top:12%;width:260px}.mini-fascia{height:38px;background:#11151d;color:#fff;font-size:10px;font-weight:1000;display:flex;align-items:center;padding:0 12px}.mini-windows{display:grid;grid-template-columns:repeat(3,1fr);height:105px;border:4px solid #252d37;border-top:0}.mini-windows i{background:linear-gradient(145deg,#a6e2e7,#e8fbfd);border-right:3px solid #252d37}.mini-windows i:last-child{border:0}.sp-orbit-item.van{right:3%;top:19%;width:250px}.mini-van{height:106px;position:relative;background:#eef1f4;border-radius:14px}.mini-van:before{content:"";position:absolute;left:20px;right:16px;top:22px;height:58px;border-radius:16px 24px 12px 12px;background:#151c25}.mini-van span{position:absolute;left:42px;top:43px;z-index:2;color:#fff;font-size:9px;font-weight:1000}.mini-van i{position:absolute;bottom:13px;width:25px;height:25px;border-radius:50%;background:#111;border:5px solid #596574;z-index:3}.mini-van i:nth-of-type(1){left:54px}.mini-van i:nth-of-type(2){right:42px}.sp-orbit-item.web{right:8%;bottom:9%;width:210px}.mini-screen{height:132px;background:#111820;border-radius:12px;padding:10px}.mini-screen div{height:58px;border-radius:7px;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));margin-bottom:10px}.mini-screen span{display:block;height:7px;background:#dfe5ea;border-radius:999px;margin:8px 4px}.mini-screen span:last-child{width:60%}.sp-orbit-item.print{left:8%;bottom:13%;width:180px;transform:rotate(-6deg)}.mini-card{height:105px;border-radius:10px;background:#0d1219;color:white;padding:16px;position:relative;overflow:hidden}.mini-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}.mini-card b{display:block;margin-top:22px}.mini-card span{font-size:7px;color:#98a4b3;letter-spacing:.12em}.sp-orbit-caption{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);font-size:9px;letter-spacing:.18em;font-weight:1000;color:#8a95a2}
@media(max-width:1050px){.sp-why-wrap,.sp-art-head,.sp-control-title,.sp-launch-grid{grid-template-columns:1fr}.sp-why-visual{height:500px}.sp-art-grid{grid-template-columns:1fr}.sp-transform-arrow{transform:rotate(90deg);padding:10px}.sp-qc-strip{grid-column:auto}.sp-conveyor{grid-template-columns:1fr 1fr;gap:34px}.sp-conveyor-rail{display:none}.sp-conveyor article+article{border-left:0;padding-left:0}.sp-conveyor article+article .sp-step-tag{left:0}.sp-control-cta{grid-template-columns:1fr}.sp-orbit-scene{min-height:620px}}@media(max-width:700px){.sp-wow{padding:80px 0}.sp-why{min-height:auto}.sp-why-intro h2,.sp-art-head h2,.sp-control-title h2,.sp-launch-copy h2{font-size:48px}.sp-why-visual{height:430px}.sp-canvas-card{inset:50px 16px 50px 40px}.sp-ruler.top{left:40px;right:16px}.sp-ruler.side{left:12px}.sp-float-note{transform:scale(.82)}.note-b{right:-14px}.sp-conveyor{grid-template-columns:1fr}.sp-conveyor article{min-height:250px}.sp-orbit-scene{min-height:570px}.sp-orbit-ring.r2{width:480px;height:480px}.sp-orbit-ring.r1{width:340px;height:340px}.sp-orbit-item.shop{left:2%;top:9%;width:210px}.sp-orbit-item.van{right:1%;top:28%;width:200px}.sp-orbit-item.web{right:2%;bottom:9%;width:180px}.sp-orbit-item.print{left:2%;bottom:14%;width:150px}.sp-orbit-core{width:150px;height:150px}.sp-orbit-core b{font-size:23px}}

/* ===== Sign Palette homepage V8 section redesign ===== */
.sp-why-v8{position:relative;padding:120px 0;background:linear-gradient(135deg,#090c11 0%,#111826 52%,#090c11 100%);color:#fff;overflow:hidden}
.sp-why-v8:before{content:"";position:absolute;inset:-10% -5%;background:radial-gradient(circle at 10% 18%,rgba(230,0,99,.22),transparent 22%),radial-gradient(circle at 85% 22%,rgba(255,152,0,.18),transparent 20%),radial-gradient(circle at 74% 82%,rgba(0,188,212,.18),transparent 25%)}
.sp-why-v8:after{content:"SIGN PALETTE";position:absolute;left:-1vw;bottom:-3vw;font-size:15vw;line-height:.8;font-weight:1000;letter-spacing:-.09em;color:rgba(255,255,255,.03);pointer-events:none;white-space:nowrap}
.sp-why-v8-grid{position:relative;z-index:1;display:grid;grid-template-columns:.82fr 1.18fr;gap:54px;align-items:center}
.sp-why-v8-copy h2{font-size:clamp(54px,6vw,90px);line-height:.9;margin:16px 0 22px;letter-spacing:-.06em}
.sp-why-v8-copy h2 em{font-style:normal;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-why-v8-copy p{max-width:520px;color:#b9c4d2;font-size:18px;line-height:1.75}
.sp-why-v8-points{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 10px}
.sp-why-v8-points span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:900;letter-spacing:.06em}
.sp-why-v8-stage{position:relative;min-height:640px}
.sp-stage-board{position:relative;height:100%;min-height:640px;border-radius:34px;background:linear-gradient(160deg,#f8fafc 0%,#eef2f6 100%);box-shadow:0 50px 100px rgba(0,0,0,.35);overflow:hidden;border:1px solid rgba(255,255,255,.25)}
.sp-stage-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.045) 1px,transparent 1px);background-size:36px 36px}
.sp-stage-board:after{content:"";position:absolute;right:-80px;top:-60px;width:240px;height:240px;border-radius:50%;background:conic-gradient(from 180deg,var(--sp-magenta),var(--sp-orange),#ffd43b,var(--sp-green),var(--sp-cyan),var(--sp-magenta));opacity:.22;filter:blur(8px)}
.sp-stage-ribbon{position:absolute;left:24px;top:22px;padding:8px 14px;border-radius:999px;background:#0d1219;color:#fff;font-size:10px;font-weight:1000;letter-spacing:.14em;z-index:2}
.sp-stage-panel{position:absolute;background:#fff;border:1px solid #e6ebef;border-radius:22px;box-shadow:0 24px 45px rgba(15,23,42,.14);overflow:hidden}
.sp-stage-panel small{display:block;padding:14px 16px 8px;font-size:9px;letter-spacing:.14em;font-weight:1000;color:#8692a0}
.sp-stage-panel.shop{left:36px;top:78px;width:320px;transform:rotate(-2.4deg)}
.sp-stage-panel.van{right:34px;top:118px;width:280px;transform:rotate(4deg)}
.sp-stage-panel.card{left:160px;bottom:48px;width:260px;transform:rotate(-6deg)}
.sp-stage-panel .fascia{height:46px;background:#0e141c;margin:0 16px;border-radius:10px 10px 0 0}
.sp-stage-panel .windows{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px 16px 16px}
.sp-stage-panel .windows i{display:block;height:128px;background:linear-gradient(145deg,#8fd0d6,#e8f8fb);border-radius:0 0 12px 12px}
.mini-vehicle{height:136px;margin:0 16px 16px;background:#edf1f5;border-radius:16px;position:relative;overflow:hidden}
.mini-vehicle:before{content:"";position:absolute;left:22px;right:20px;top:30px;height:66px;border-radius:22px 28px 14px 14px;background:#131a23}
.mini-vehicle span{position:absolute;left:52px;top:54px;font-size:10px;color:#fff;letter-spacing:.08em;font-weight:1000;z-index:2}
.mini-vehicle i{position:absolute;bottom:15px;width:28px;height:28px;border-radius:50%;background:#111;border:5px solid #62707d}
.mini-vehicle i:nth-of-type(1){left:54px}.mini-vehicle i:nth-of-type(2){right:46px}
.mini-brand-card{height:138px;margin:0 16px 16px;background:#0f141b;border-radius:16px;padding:18px;position:relative;color:#fff}
.mini-brand-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:9px;background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan))}
.mini-brand-card b,.mini-brand-card strong{display:block;font-size:34px;line-height:.84;letter-spacing:-.06em}
.mini-brand-card b{font-weight:300}.mini-brand-card strong{font-weight:1000}.mini-brand-card em{display:block;position:absolute;right:16px;bottom:16px;width:76px;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));opacity:.9}
.sp-stage-note{position:absolute;display:flex;align-items:center;gap:12px;padding:12px 15px;background:#fff;color:#111820;border-radius:18px;box-shadow:0 18px 40px rgba(15,23,42,.16);font-size:11px;font-weight:1000;letter-spacing:.08em;z-index:3}
.sp-stage-note b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#fff;font-size:9px}
.sp-stage-note.note-1{left:18px;top:298px}.sp-stage-note.note-1 b{background:var(--sp-magenta)}
.sp-stage-note.note-2{right:20px;top:330px}.sp-stage-note.note-2 b{background:var(--sp-orange)}
.sp-stage-note.note-3{left:100px;bottom:22px}.sp-stage-note.note-3 b{background:var(--sp-cyan)}

.sp-quality-v8{padding:120px 0;background:linear-gradient(180deg,#f6f8fa 0%,#eef2f5 100%)}
.sp-quality-v8-head{display:grid;grid-template-columns:1fr .62fr;gap:60px;align-items:end;margin-bottom:36px}
.sp-quality-v8-head h2{font-size:clamp(50px,5.5vw,84px);line-height:.92;margin:14px 0 0;letter-spacing:-.06em}
.sp-quality-v8-head h2 em{font-style:normal;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange));-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-quality-v8-head p{margin:0;color:#667085;font-size:18px;line-height:1.75}
.sp-quality-v8-layout{display:grid;grid-template-columns:1fr 110px 1fr;gap:18px;align-items:center;position:relative}
.sp-quality-v8-before,.sp-quality-v8-after{position:relative}
.sp-qv8-tag{position:absolute;left:22px;top:22px;z-index:2;padding:9px 12px;border-radius:999px;font-size:9px;letter-spacing:.14em;font-weight:1000}
.sp-qv8-tag.bad{background:#311824;color:#ff94c2;border:1px solid #6c3652}.sp-qv8-tag.good{background:#11271e;color:#84eeb0;border:1px solid #285640}
.sp-qv8-rough,.sp-qv8-clean{min-height:440px;border-radius:28px;overflow:hidden;position:relative;box-shadow:0 24px 50px rgba(15,23,42,.08)}
.sp-qv8-rough{background:linear-gradient(160deg,#fff 0%,#f4f7fa 100%);border:1px solid #e5ebf0}
.sp-qv8-rough:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.04) 1px,transparent 1px);background-size:24px 24px}
.rough-box{position:absolute;left:26px;top:64px;padding:16px 18px;border:2px dashed rgba(20,27,35,.14);border-radius:18px;background:rgba(255,255,255,.75);z-index:2}
.rough-box span{display:block;font-size:12px;font-weight:800;color:#717b88}.rough-box b{display:block;font-size:11px;letter-spacing:.12em;color:#d12363;margin-top:6px}
.rough-logo,.clean-logo{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);width:220px;height:220px;border-radius:52px;display:grid;place-items:center;font-size:84px;font-weight:1000;color:#fff}
.rough-logo{background:linear-gradient(135deg,#d92779,#e58c35,#36adc1);filter:contrast(.7) saturate(.6);box-shadow:0 0 0 14px rgba(215,39,121,.06)}
.rough-logo:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.18) 0 4px,transparent 4px 10px),repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 4px,transparent 4px 10px);mix-blend-mode:overlay}
.sp-qv8-clean{background:linear-gradient(145deg,#0b1016 0%,#161e29 100%);border:1px solid rgba(255,255,255,.04)}
.sp-qv8-clean:before{content:"";position:absolute;left:-60px;bottom:-60px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,var(--sp-magenta) 0,transparent 65%);opacity:.2;filter:blur(20px)}
.clean-logo{background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));box-shadow:0 30px 55px rgba(0,0,0,.32)}
.curve-guide{position:absolute;left:7%;top:9%;width:86%;height:72%}
.curve-guide path,.curve-guide line{fill:none;stroke:rgba(255,255,255,.22);stroke-width:1.2}.curve-guide circle{fill:#fff;stroke:#0d1219;stroke-width:1.2}
.sp-qv8-specs{position:absolute;left:24px;right:24px;bottom:24px;display:flex;justify-content:space-between;gap:10px;align-items:end;color:#fff}.sp-qv8-specs span{font-size:10px;letter-spacing:.14em;color:#9cb0c6;font-weight:1000}.sp-qv8-specs b{font-size:10px;letter-spacing:.14em;color:#fff}
.sp-quality-v8-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.sp-qv8-arrow{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:#111820;color:#fff;font-size:28px;box-shadow:0 18px 34px rgba(15,23,42,.16)}
.sp-quality-v8-center span{text-align:center;font-size:9px;line-height:1.6;letter-spacing:.16em;font-weight:1000;color:#5f6a77}
.sp-quality-v8-checks{grid-column:1/-1;margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sp-quality-v8-checks article{display:flex;gap:16px;padding:22px 22px;background:#fff;border:1px solid #e5ebf0;border-radius:22px;box-shadow:0 16px 30px rgba(15,23,42,.05)}
.sp-quality-v8-checks b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange));font-size:11px;flex:0 0 auto}
.sp-quality-v8-checks h3{margin:2px 0 8px;font-size:20px;letter-spacing:-.03em}.sp-quality-v8-checks p{margin:0;color:#6a7684;line-height:1.65}

.sp-control-v8{padding:120px 0;background:linear-gradient(150deg,#091017 0%,#0e141d 65%,#111c28 100%);color:#fff;position:relative;overflow:hidden}
.sp-control-v8:before{content:"";position:absolute;right:-8%;top:-10%;width:36vw;height:36vw;border-radius:50%;background:radial-gradient(circle,rgba(0,188,212,.16),transparent 62%)}
.sp-control-v8:after{content:"";position:absolute;left:-12%;bottom:-18%;width:30vw;height:30vw;border-radius:50%;background:radial-gradient(circle,rgba(230,0,99,.14),transparent 62%)}
.sp-control-v8-grid{position:relative;z-index:1;display:grid;grid-template-columns:.7fr 1.3fr;gap:54px;align-items:center}
.sp-control-v8-copy h2{font-size:clamp(52px,5.8vw,84px);line-height:.92;letter-spacing:-.06em;margin:15px 0 22px}.sp-control-v8-copy h2 em{font-style:normal;background:linear-gradient(90deg,var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-control-v8-copy p{max-width:460px;color:#a8b5c4;font-size:18px;line-height:1.8;margin-bottom:26px}
.sp-control-v8-flow{position:relative;min-height:480px;padding:18px 0}
.flow-line{position:absolute;left:50%;top:0;bottom:0;width:6px;border-radius:999px;transform:translateX(-50%);background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan));box-shadow:0 0 0 12px rgba(255,255,255,.04)}
.flow-card{position:absolute;width:42%;padding:28px 26px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 22px 40px rgba(0,0,0,.18)}
.flow-card:before{content:"";position:absolute;top:34px;width:18px;height:18px;border-radius:50%;background:currentColor;box-shadow:0 0 0 7px rgba(255,255,255,.06)}
.flow-card span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.06);font-size:10px;font-weight:1000;letter-spacing:.12em;margin-bottom:12px}
.flow-card h3{font-size:28px;letter-spacing:-.04em;margin:0 0 10px}.flow-card p{margin:0;color:#aab7c5;line-height:1.7}
.flow-card.a{left:0;top:0;color:var(--sp-magenta)}.flow-card.a:before{right:-40px}
.flow-card.b{right:0;top:90px;color:var(--sp-orange)}.flow-card.b:before{left:-40px}
.flow-card.c{left:0;top:236px;color:var(--sp-green)}.flow-card.c:before{right:-40px}
.flow-card.d{right:0;top:332px;color:var(--sp-cyan)}.flow-card.d:before{left:-40px}
.flow-card h3,.flow-card p,.flow-card span{color:inherit}.flow-card span{color:#fff}

.sp-launch-v8{padding:120px 0;background:#fff;overflow:hidden}
.sp-launch-v8-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:50px;align-items:center}
.sp-launch-v8-copy h2{font-size:clamp(50px,5.8vw,84px);line-height:.92;letter-spacing:-.06em;margin:16px 0 24px}.sp-launch-v8-copy h2 em{font-style:normal;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-launch-v8-copy p{max-width:520px;color:#667085;font-size:18px;line-height:1.8}
.sp-launch-v8-tags{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 28px}.sp-launch-v8-tags span{padding:10px 13px;border-radius:999px;background:#f1f4f7;border:1px solid #e6ebef;font-size:10px;font-weight:1000;letter-spacing:.1em}
.sp-launch-v8-scene{position:relative;min-height:650px;border-radius:36px;background:linear-gradient(180deg,#f7f9fb 0%,#eef3f7 100%);border:1px solid #e5ebf0;box-shadow:0 30px 60px rgba(15,23,42,.08);overflow:hidden}
.sp-launch-v8-scene:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.03) 1px,transparent 1px);background-size:32px 32px}
.launch-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:180px;height:180px;border-radius:30px;background:#0c1219;color:#fff;display:grid;place-items:center;text-align:center;z-index:3;box-shadow:0 26px 50px rgba(15,23,42,.22)}
.launch-core b{font-size:28px;line-height:.9;letter-spacing:-.06em}.launch-swatches{position:absolute;top:22px;display:flex;gap:4px}.launch-swatches i{width:18px;height:6px;border-radius:999px}.launch-swatches i:nth-child(1){background:var(--sp-magenta)}.launch-swatches i:nth-child(2){background:var(--sp-orange)}.launch-swatches i:nth-child(3){background:#ffd43b}.launch-swatches i:nth-child(4){background:var(--sp-green)}.launch-swatches i:nth-child(5){background:var(--sp-cyan)}
.launch-card{position:absolute;background:#fff;border:1px solid #e5ebf0;border-radius:22px;box-shadow:0 22px 42px rgba(15,23,42,.12);padding:14px 16px;overflow:hidden}
.launch-card small{display:block;font-size:8px;letter-spacing:.14em;font-weight:1000;color:#8a96a3;margin-bottom:10px}
.launch-card.shop{left:28px;top:42px;width:280px;transform:rotate(-3deg)}
.launch-card.van{right:28px;top:54px;width:250px;transform:rotate(4deg)}
.launch-card.web{right:70px;bottom:44px;width:220px;transform:rotate(2deg)}
.launch-card.print{left:72px;bottom:52px;width:190px;transform:rotate(-8deg)}
.launch-card.social{left:50%;top:86px;transform:translateX(-50%) rotate(7deg);width:190px;z-index:2}
.shop-window{border-radius:16px;overflow:hidden;border:1px solid #d7dde4}.shop-fascia{height:42px;background:#0e141c;color:#fff;font-size:10px;font-weight:1000;display:flex;align-items:center;padding:0 14px}.shop-panes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;background:#fff}.shop-panes i{display:block;height:120px;background:linear-gradient(145deg,#96d1d7,#eefbfd);border-radius:0 0 10px 10px}
.launch-van{height:122px;background:#eef2f5;border-radius:14px;position:relative}.launch-van:before{content:"";position:absolute;left:18px;right:18px;top:28px;height:62px;border-radius:20px 24px 12px 12px;background:#161d27}.launch-van span{position:absolute;left:42px;top:52px;color:#fff;font-size:10px;font-weight:1000;letter-spacing:.08em;z-index:2}.launch-van i{position:absolute;bottom:14px;width:25px;height:25px;border-radius:50%;background:#111;border:5px solid #647280}.launch-van i:nth-of-type(1){left:50px}.launch-van i:nth-of-type(2){right:36px}
.launch-screen{height:146px;background:#101720;border-radius:14px;padding:12px}.launch-screen div{height:64px;border-radius:8px;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));margin-bottom:10px}.launch-screen span{display:block;height:7px;border-radius:999px;background:#e0e6eb;margin:8px 0}.launch-screen span:last-child{width:60%}
.launch-print{height:108px;border-radius:14px;background:#0f141b;color:#fff;padding:16px;position:relative;overflow:hidden}.launch-print:before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}.launch-print b{display:block;margin-top:18px}.launch-print span{font-size:8px;letter-spacing:.12em;color:#95a3b1}
.launch-phone{height:170px;border-radius:28px;background:#121923;padding:12px}.launch-phone div{height:76px;border-radius:14px;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));margin-bottom:12px}.launch-phone span{display:block;height:7px;border-radius:999px;background:#dde3e9;margin:10px 2px}.launch-phone span:last-child{width:56%}

@media(max-width:1100px){
  .sp-why-v8-grid,.sp-quality-v8-head,.sp-control-v8-grid,.sp-launch-v8-grid{grid-template-columns:1fr}
  .sp-why-v8-stage{min-height:560px}.sp-stage-board{min-height:560px}
  .sp-quality-v8-layout{grid-template-columns:1fr}.sp-quality-v8-center{padding:10px 0}.sp-quality-v8-checks{grid-template-columns:1fr}
  .sp-control-v8-flow{min-height:780px}.flow-line{left:24px;transform:none}.flow-card{width:calc(100% - 70px);left:70px !important;right:auto !important}.flow-card:before{left:-40px !important;right:auto !important}
  .flow-card.a{top:0}.flow-card.b{top:184px}.flow-card.c{top:368px}.flow-card.d{top:552px}
}
@media(max-width:700px){
  .sp-why-v8,.sp-quality-v8,.sp-control-v8,.sp-launch-v8{padding:86px 0}
  .sp-why-v8-copy h2,.sp-quality-v8-head h2,.sp-control-v8-copy h2,.sp-launch-v8-copy h2{font-size:46px}
  .sp-why-v8-stage,.sp-stage-board{min-height:500px}.sp-stage-panel.shop{width:230px;left:12px}.sp-stage-panel.van{width:210px;right:10px}.sp-stage-panel.card{width:180px;left:68px;bottom:26px}.sp-stage-note{transform:scale(.84);transform-origin:left top}.sp-stage-note.note-2{right:-8px}.sp-stage-note.note-3{left:42px}
  .sp-qv8-rough,.sp-qv8-clean{min-height:350px}.rough-logo,.clean-logo{width:160px;height:160px;font-size:62px}
  .sp-control-v8-flow{min-height:840px}.flow-card{width:calc(100% - 56px);left:56px !important;padding:22px}.flow-card h3{font-size:24px}
  .sp-launch-v8-scene{min-height:620px}.launch-core{width:140px;height:140px}.launch-core b{font-size:22px}.launch-card.shop{width:220px;left:10px;top:24px}.launch-card.van{width:190px;right:10px;top:56px}.launch-card.social{top:72px;width:150px}.launch-card.print{width:150px;left:18px;bottom:28px}.launch-card.web{width:170px;right:8px;bottom:22px}
}

/* ===== Vehicle Wraps V10 categorisation ===== */
.vehicle-entry{background:#fff}.vehicle-entry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.vehicle-entry-card{position:relative;display:block;padding:34px 30px 30px;border-radius:26px;min-height:260px;color:#10161e;overflow:hidden;border:1px solid #e6ebef;box-shadow:0 20px 45px rgba(15,23,42,.07);transition:.25s ease}.vehicle-entry-card:hover{transform:translateY(-5px);box-shadow:0 30px 55px rgba(15,23,42,.12)}.vehicle-entry-card:before{content:"";position:absolute;left:0;top:0;right:0;height:8px}.vehicle-entry-card.simple:before{background:var(--sp-cyan)}.vehicle-entry-card.impact:before{background:linear-gradient(90deg,var(--sp-orange),var(--sp-magenta))}.vehicle-entry-card.complete{background:#0d1219;color:#fff;border-color:#0d1219}.vehicle-entry-card.complete:before{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan))}.vehicle-entry-card small{font-size:11px;font-weight:1000;letter-spacing:.15em;color:#8995a2}.vehicle-entry-card.complete small{color:#8794a3}.vehicle-entry-card h3{font-size:32px;letter-spacing:-.04em;margin:34px 0 12px}.vehicle-entry-card p{font-size:16px;line-height:1.65;color:#687482;max-width:360px}.vehicle-entry-card.complete p{color:#a8b4c1}.vehicle-entry-card span{position:absolute;left:30px;right:30px;bottom:28px;font-size:10px;letter-spacing:.08em;font-weight:1000;color:#111820}.vehicle-entry-card.complete span{color:#fff}
.vehicle-types-section{position:relative;overflow:hidden}.vehicle-types-section:after{content:"VEHICLES";position:absolute;right:-2vw;bottom:-3vw;font-size:14vw;line-height:.8;font-weight:1000;letter-spacing:-.08em;color:rgba(15,23,42,.025);pointer-events:none}.vehicle-type-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.vehicle-type-card{position:relative;display:flex;flex-direction:column;min-height:230px;padding:24px;border-radius:22px;background:#fff;color:#111820;border:1px solid #e4e9ee;box-shadow:0 15px 30px rgba(15,23,42,.055);overflow:hidden;transition:.25s ease}.vehicle-type-card:hover{transform:translateY(-4px);box-shadow:0 24px 40px rgba(15,23,42,.1)}.vehicle-type-card:before{content:"";position:absolute;right:-28px;top:-28px;width:110px;height:110px;border-radius:50%;opacity:.12;background:currentColor}.vehicle-type-card b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#111820;color:#fff;font-size:10px;letter-spacing:.1em}.vehicle-type-card h3{font-size:27px;letter-spacing:-.035em;margin:36px 0 10px}.vehicle-type-card p{color:#6b7683;line-height:1.6;margin:0 0 20px}.vehicle-type-card span{margin-top:auto;font-size:10px;font-weight:1000;letter-spacing:.08em}.vehicle-type-card.c1{color:#0094d8}.vehicle-type-card.c2{color:#ff7a1a}.vehicle-type-card.c3{color:#f5b400}.vehicle-type-card.c4{color:#e60063}.vehicle-type-card.c5{color:#8d3fc5}.vehicle-type-card.c6{color:#47ad3a}.vehicle-type-card.c7{color:#0076c9}.vehicle-type-card.c8{color:#505b68}
.wrap-style-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.wrap-style-card{position:relative;min-height:230px;padding:26px;border-radius:22px;background:linear-gradient(180deg,#fff,#f7f9fb);border:1px solid #e5ebef;overflow:hidden}.wrap-style-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),#ffd43b,var(--sp-green),var(--sp-cyan));transform:scaleX(.26);transform-origin:left;transition:.25s ease}.wrap-style-card:hover:after{transform:scaleX(1)}.wrap-style-no{font-size:11px;font-weight:1000;letter-spacing:.15em;color:#8a96a3}.wrap-style-card h3{font-size:25px;letter-spacing:-.035em;margin:46px 0 12px}.wrap-style-card p{margin:0;color:#667280;line-height:1.65}
.vehicle-help{background:#eef2f5}.vehicle-help-grid{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center}.vehicle-help-grid h2{font-size:clamp(46px,5vw,72px);line-height:.94;letter-spacing:-.055em;margin:14px 0 22px}.vehicle-help-steps{display:grid;gap:12px}.vehicle-help-steps span{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:18px;background:#fff;border:1px solid #e3e8ed;font-weight:900}.vehicle-help-steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#0d1219;color:#fff;font-size:10px}.vehicle-help-steps span:nth-child(2) b{background:var(--sp-magenta)}.vehicle-help-steps span:nth-child(3) b{background:var(--sp-orange)}.vehicle-help-steps span:nth-child(4) b{background:var(--sp-cyan)}
.vehicle-prep{background:#fff}.prep-check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:38px}.prep-check-grid span{position:relative;padding:18px 18px 18px 46px;border:1px solid #e4e9ee;border-radius:16px;font-size:13px;font-weight:850;background:#fbfcfd}.prep-check-grid span:before{content:"✓";position:absolute;left:16px;top:15px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#11271e;color:#76df9f;font-size:11px;font-weight:1000}
.fleet-section{background:#0a0e14;color:#fff;position:relative;overflow:hidden}.fleet-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,188,212,.18),transparent 25%),radial-gradient(circle at 10% 85%,rgba(230,0,99,.14),transparent 30%)}.fleet-grid{position:relative;display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:center}.fleet-grid h2{font-size:clamp(52px,6vw,82px);line-height:.9;letter-spacing:-.06em;margin:14px 0 20px}.fleet-grid p{color:#a7b4c2;font-size:17px;line-height:1.75;max-width:500px;margin-bottom:26px}.fleet-visual{position:relative;min-height:400px}.fleet-unit{position:absolute;height:118px;border-radius:22px 30px 15px 15px;background:#fff;color:#0d1219;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:1000;letter-spacing:.1em;box-shadow:0 24px 50px rgba(0,0,0,.25);overflow:hidden}.fleet-unit:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:14px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));opacity:.9}.fleet-unit.one{left:3%;top:24px;width:280px;transform:rotate(-3deg)}.fleet-unit.two{right:7%;top:42px;width:240px;transform:rotate(4deg)}.fleet-unit.three{left:20%;bottom:36px;width:220px;transform:rotate(2deg)}.fleet-unit.four{right:2%;bottom:18px;width:300px;transform:rotate(-2deg)}.fleet-stripe{position:absolute;left:8%;right:4%;top:48%;height:5px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan));opacity:.35;border-radius:999px}
@media(max-width:1050px){.vehicle-entry-grid{grid-template-columns:1fr}.vehicle-type-grid,.wrap-style-grid{grid-template-columns:repeat(2,1fr)}.vehicle-help-grid,.fleet-grid{grid-template-columns:1fr}.prep-check-grid{grid-template-columns:repeat(2,1fr)}.fleet-visual{min-height:430px}}
@media(max-width:650px){.vehicle-type-grid,.wrap-style-grid,.prep-check-grid{grid-template-columns:1fr}.vehicle-type-card,.wrap-style-card{min-height:200px}.vehicle-help-grid h2{font-size:44px}.fleet-visual{min-height:520px}.fleet-unit.one{width:230px;left:0}.fleet-unit.two{width:190px;right:0;top:122px}.fleet-unit.three{width:180px;left:4%;bottom:110px}.fleet-unit.four{width:240px;right:0;bottom:0}}

/* ===== Vehicle Wrap Builder ===== */
.wrap-builder-section{background:linear-gradient(180deg,#f7f9fb 0%,#eef2f5 100%);padding-top:92px;padding-bottom:100px}
.wrap-builder-head{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;margin-bottom:28px}.wrap-builder-head h2{font-size:clamp(48px,5vw,76px);line-height:.95;letter-spacing:-.055em;margin:10px 0}.wrap-builder-summary-chip{background:#0d1219;color:#fff;border-radius:18px;padding:15px 18px;min-width:210px;box-shadow:0 16px 34px rgba(15,23,42,.14)}.wrap-builder-summary-chip span{display:block;font-size:8px;letter-spacing:.16em;color:#9eacba;font-weight:1000}.wrap-builder-summary-chip b{display:block;margin-top:4px;font-size:13px}
.wrap-builder{background:#fff;border:1px solid #e3e9ee;border-radius:30px;box-shadow:0 28px 60px rgba(15,23,42,.09);overflow:hidden}.builder-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:12px;padding:24px 30px;background:#0d1219;color:#fff}.builder-progress-step{appearance:none;border:0;background:transparent;color:#778494;display:flex;align-items:center;gap:9px;font:inherit;cursor:pointer;padding:0}.builder-progress-step span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid #394553;font-size:10px;font-weight:1000}.builder-progress-step small{font-size:9px;letter-spacing:.12em;font-weight:1000}.builder-progress-step.active,.builder-progress-step.done{color:#fff}.builder-progress-step.active span{border-color:transparent;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange))}.builder-progress-step.done span{background:#22303d;border-color:#354657}.builder-progress i{height:2px;background:#26313d;border-radius:999px}.builder-progress i.done{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}
.builder-slides{position:relative;min-height:565px}.builder-slide{display:none;padding:42px 34px 32px}.builder-slide.active{display:block;animation:spBuilderIn .28s ease both}@keyframes spBuilderIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}.builder-slide-copy{max-width:750px;margin-bottom:28px}.builder-slide-copy>small{font-size:9px;letter-spacing:.15em;font-weight:1000;color:#8a96a3}.builder-slide-copy h3{font-size:42px;letter-spacing:-.045em;margin:6px 0 9px}.builder-slide-copy p{margin:0;color:#687483;font-size:16px;line-height:1.7}
.builder-choice-grid{display:grid;gap:14px}.vehicle-grid{grid-template-columns:repeat(4,1fr)}.body-grid{grid-template-columns:repeat(4,1fr)}.wrap-grid{grid-template-columns:repeat(3,1fr)}.colour-grid{grid-template-columns:repeat(4,1fr)}.builder-choice,.builder-extra{appearance:none;text-align:left;background:#fff;border:1px solid #dfe6ec;border-radius:20px;padding:18px;cursor:pointer;transition:.2s ease;color:#111820;font:inherit;position:relative;overflow:hidden}.builder-choice:hover,.builder-extra:hover{transform:translateY(-2px);border-color:#bcc9d4;box-shadow:0 12px 26px rgba(15,23,42,.08)}.builder-choice.selected,.builder-extra.selected{border-color:#111820;box-shadow:0 0 0 2px #111820 inset,0 14px 28px rgba(15,23,42,.08)}.builder-choice.selected:after,.builder-extra.selected:after{content:"✓";position:absolute;right:12px;top:12px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#111820;color:#fff;font-size:11px;font-weight:1000}.builder-choice b,.builder-extra b{display:block;font-size:19px;letter-spacing:-.025em;margin-top:12px}.builder-choice small,.builder-extra small{display:block;margin-top:5px;color:#7a8794;font-size:11px;line-height:1.5}.choice-icon{display:flex;align-items:flex-end;height:76px;border-radius:14px;padding:12px;background:linear-gradient(145deg,#f2f5f7,#e5ebef);font-size:17px;font-weight:1000;letter-spacing:.08em;color:#151c24}.builder-choice:nth-child(5n+1) .choice-icon{border-top:5px solid var(--sp-magenta)}.builder-choice:nth-child(5n+2) .choice-icon{border-top:5px solid var(--sp-orange)}.builder-choice:nth-child(5n+3) .choice-icon{border-top:5px solid #f2c514}.builder-choice:nth-child(5n+4) .choice-icon{border-top:5px solid var(--sp-green)}.builder-choice:nth-child(5n+5) .choice-icon{border-top:5px solid var(--sp-cyan)}
.builder-choice.visual{padding:14px}.coverage-demo{height:120px;border-radius:15px;background:#f0f3f6;display:block;position:relative;overflow:hidden}.coverage-demo:before{content:"";position:absolute;left:16px;right:16px;top:28px;height:59px;background:#fff;border:2px solid #303a45;border-radius:18px 25px 12px 12px}.coverage-demo:after{content:"";position:absolute;left:31px;right:33px;top:43px;height:32px;border-radius:9px;background:#dbe3e9}.coverage-demo i{position:absolute;z-index:3}.coverage-demo i:first-child{left:38px;bottom:18px;width:23px;height:23px;background:#111;border:5px solid #71808d;border-radius:50%}.coverage-demo i:last-child{right:39px;bottom:18px;width:23px;height:23px;background:#111;border:5px solid #71808d;border-radius:50%}.coverage-demo.full:before{background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));border-color:transparent}.coverage-demo.partial:before{background:linear-gradient(90deg,var(--sp-magenta) 0 48%,#fff 48%)}.coverage-demo.half:before{background:linear-gradient(90deg,#fff 0 48%,var(--sp-orange) 48%)}.coverage-demo.spot:before{background:linear-gradient(135deg,#fff 0 60%,var(--sp-cyan) 60% 76%,#fff 76%)}.coverage-demo.vinyl:before{background:#fff}.coverage-demo.vinyl:after{background:transparent;border-bottom:5px solid #111;border-top:5px solid var(--sp-magenta);height:15px;top:51px}.coverage-demo.window:after{background:repeating-linear-gradient(90deg,#17212c 0 3px,#6d7884 3px 5px);opacity:.85}
.colour-choice{padding:14px}.colour-preview{height:140px;border-radius:15px;display:flex;overflow:hidden;border:1px solid #dde4e9}.colour-preview i{flex:1}.colour-choice.bw .colour-preview i:first-child{background:#0c1117}.colour-choice.bw .colour-preview i:last-child{background:#fff}.colour-choice.mono .colour-preview i:first-child{background:#121820}.colour-choice.mono .colour-preview i:last-child{background:var(--sp-magenta);flex:.28}.colour-choice.colour .colour-preview i:nth-child(1){background:var(--sp-magenta)}.colour-choice.colour .colour-preview i:nth-child(2){background:var(--sp-orange)}.colour-choice.colour .colour-preview i:nth-child(3){background:#ffd43b}.colour-choice.colour .colour-preview i:nth-child(4){background:var(--sp-green)}.colour-choice.colour .colour-preview i:nth-child(5){background:var(--sp-cyan)}.colour-choice.existing .colour-preview i{background:linear-gradient(135deg,#b8bec4,#f0f2f4,#8c949d)}
.builder-extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.builder-extra span{display:grid;place-items:center;height:76px;border-radius:14px;background:#10161e;color:#fff;font-size:10px;font-weight:1000;letter-spacing:.12em;position:relative;overflow:hidden}.builder-extra span:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:5px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-green),var(--sp-cyan))}.builder-final-summary{margin-top:24px;padding:22px 24px;border-radius:20px;background:#0d1219;color:#fff;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.builder-final-summary small{font-size:8px;letter-spacing:.15em;color:#8fa0b1;font-weight:1000}.builder-final-summary h4{font-size:24px;margin:4px 0 5px}.builder-final-summary p{margin:0;color:#aab6c3;line-height:1.6}
.builder-controls{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;padding:18px 28px;border-top:1px solid #e7edf1;background:#fbfcfd}.builder-back,.builder-next{appearance:none;border:0;border-radius:999px;padding:12px 18px;font:inherit;font-size:12px;font-weight:1000;cursor:pointer}.builder-back{background:#e9eef2;color:#26313d}.builder-next{background:#0d1219;color:#fff}.builder-back:disabled,.builder-next:disabled{opacity:.35;cursor:not-allowed}.builder-selection-live{text-align:center;color:#66727f;font-size:12px;font-weight:800}
@media(max-width:1000px){.wrap-builder-head{grid-template-columns:1fr}.wrap-builder-summary-chip{width:max-content}.vehicle-grid,.body-grid,.colour-grid{grid-template-columns:repeat(2,1fr)}.wrap-grid,.builder-extras-grid{grid-template-columns:repeat(2,1fr)}.builder-progress{overflow-x:auto;grid-template-columns:auto 36px auto 36px auto 36px auto 36px auto}.builder-progress-step small{display:none}}
@media(max-width:620px){.wrap-builder-section{padding-top:70px}.builder-slide{padding:28px 18px 22px}.builder-slide-copy h3{font-size:34px}.vehicle-grid,.body-grid,.wrap-grid,.colour-grid,.builder-extras-grid{grid-template-columns:1fr}.builder-controls{grid-template-columns:auto auto}.builder-selection-live{grid-column:1/-1;grid-row:1;text-align:left}.builder-final-summary{grid-template-columns:1fr}.builder-progress{padding:18px}.builder-progress-step span{width:30px;height:30px}}

/* One-way vision window selector */
.window-vision-config{margin:26px 0 4px;padding:24px 26px;border-radius:24px;background:linear-gradient(135deg,#0c1219,#182432);color:#fff;display:grid;grid-template-columns:1fr auto;gap:20px 28px;align-items:center;box-shadow:0 22px 45px rgba(15,23,42,.16);border:1px solid rgba(255,255,255,.08)}
.window-vision-config[hidden]{display:none!important}.window-vision-config.show{animation:windowReveal .25s ease both}
@keyframes windowReveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.window-vision-copy small{display:block;color:#57d6e7;font-size:9px;font-weight:1000;letter-spacing:.16em;margin-bottom:7px}.window-vision-copy h4{font-size:24px;margin:0 0 6px;letter-spacing:-.03em}.window-vision-copy p{margin:0;color:#a9b8c7;line-height:1.6;max-width:620px}
.window-count-control{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:8px;border-radius:18px}.window-count-control>button{width:46px;height:46px;border:0;border-radius:13px;background:#fff;color:#101720;font-size:24px;font-weight:900;cursor:pointer}.window-count-control>button:hover{transform:translateY(-1px)}
.window-count-control>div{min-width:86px;text-align:center}.window-count-control strong{display:block;font-size:26px;line-height:1}.window-count-control span{display:block;margin-top:4px;font-size:8px;font-weight:1000;letter-spacing:.15em;color:#9eafbf}
.window-quick-picks{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.window-quick-picks button{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#dbe5ee;border-radius:999px;padding:8px 13px;font-size:10px;font-weight:1000;cursor:pointer}.window-quick-picks button:hover,.window-quick-picks button.selected{background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange));border-color:transparent;color:#fff}
@media(max-width:720px){.window-vision-config{grid-template-columns:1fr}.window-count-control{justify-self:start}.window-quick-picks{grid-column:auto}}

/* ===== Vehicle wrap visual progressive configurator V13 ===== */
.visual-carousel-slides .builder-slide{padding-bottom:24px}
.visual-option-carousel{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;gap:18px;align-items:center;margin-top:22px}
.visual-carousel-arrow{appearance:none;border:0;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#0d1219;color:#fff;font-size:26px;cursor:pointer;box-shadow:0 16px 30px rgba(15,23,42,.16);transition:.2s ease}
.visual-carousel-arrow:hover{transform:translateY(-2px);background:#17212c}
.visual-option-stage{min-height:420px;border-radius:28px;background:linear-gradient(180deg,#f8fafc,#eef3f6);border:1px solid #e1e7ec;box-shadow:0 22px 45px rgba(15,23,42,.08);position:relative;overflow:hidden;touch-action:pan-y;outline:none}
.visual-option-stage:focus-visible{box-shadow:0 0 0 3px rgba(0,188,212,.28),0 22px 45px rgba(15,23,42,.08)}
.visual-option-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:34px 34px}
.visual-option-card{position:relative;min-height:420px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;padding:34px 38px;gap:34px}
.visual-option-copy{position:relative;z-index:3}.visual-option-copy small{display:block;font-size:10px;letter-spacing:.18em;font-weight:1000;color:#8793a0;margin-bottom:10px}.visual-option-copy h4{font-size:clamp(38px,4vw,62px);line-height:.95;letter-spacing:-.055em;margin:0 0 14px}.visual-option-copy p{font-size:16px;line-height:1.7;color:#6b7785;max-width:360px;margin:0}
.visual-carousel-meta{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-top:18px}
.visual-dots{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.visual-dot{appearance:none;border:0;width:9px;height:9px;border-radius:50%;background:#c9d2da;padding:0;cursor:pointer;transition:.2s}.visual-dot.active{width:30px;border-radius:999px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan))}
.visual-select-btn{appearance:none;border:0;border-radius:999px;background:#0d1219;color:#fff;padding:14px 20px;font:inherit;font-size:12px;font-weight:1000;letter-spacing:.04em;cursor:pointer;box-shadow:0 12px 28px rgba(15,23,42,.12)}.visual-select-btn:hover{background:#17212c}.visual-select-btn.extra-toggle.selected{background:var(--sp-magenta)}
.selected-extras-live{margin-top:14px;font-size:12px;color:#65717e;font-weight:800}

/* vehicle/body illustrations */
.vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{position:relative;z-index:2;min-height:330px;display:grid;place-items:center}
.vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{position:relative;width:min(100%,430px);height:220px;filter:drop-shadow(0 26px 20px rgba(15,23,42,.14))}
.vehicle-body,.wrap-body,.extra-body,.colour-vehicle:before{position:absolute;left:38px;right:38px;bottom:55px;height:92px;border-radius:34px 48px 22px 22px;background:linear-gradient(145deg,#ffffff,#dfe5ea);border:3px solid #1d2730;content:""}
.vehicle-cab{position:absolute;left:95px;right:82px;bottom:132px;height:58px;border-radius:45px 52px 0 0;background:linear-gradient(145deg,#f7f9fb,#dce3e8);border:3px solid #1d2730;border-bottom:0}
.vehicle-window,.wrap-window,.extra-window{position:absolute;left:118px;right:98px;bottom:139px;height:40px;border-radius:28px 34px 4px 4px;background:linear-gradient(145deg,#6ba9b5,#d5eff4);border:2px solid #1d2730}
.wheel{position:absolute;bottom:31px;width:54px;height:54px;border-radius:50%;background:#111;border:10px solid #687481;z-index:4}.w1{left:84px}.w2{right:82px}
.detail{position:absolute;z-index:3;background:#1d2730}.detail.d1{left:46px;bottom:76px;width:28px;height:6px;border-radius:999px}.detail.d2{right:48px;bottom:76px;width:28px;height:6px;border-radius:999px}
/* categorical body changes */
.vehicle-illustration.van .vehicle-body,.vehicle-illustration.van-swb .vehicle-body,.vehicle-illustration.van-lwb .vehicle-body,.vehicle-illustration.van-high .vehicle-body,.vehicle-illustration.people .vehicle-body{left:52px;right:42px;height:130px;border-radius:24px 40px 18px 18px}
.vehicle-illustration.van .vehicle-cab,.vehicle-illustration.van-swb .vehicle-cab,.vehicle-illustration.van-lwb .vehicle-cab,.vehicle-illustration.van-high .vehicle-cab,.vehicle-illustration.people .vehicle-cab{left:215px;right:44px;bottom:150px;height:54px;border-radius:28px 40px 0 0}
.vehicle-illustration.van .vehicle-window,.vehicle-illustration.van-swb .vehicle-window,.vehicle-illustration.van-lwb .vehicle-window,.vehicle-illustration.van-high .vehicle-window,.vehicle-illustration.people .vehicle-window{left:235px;right:62px;bottom:154px}
.vehicle-illustration.van-high .vehicle-body{height:154px}.vehicle-illustration.van-lwb .vehicle-body{left:22px}.vehicle-illustration.van-swb .vehicle-body{left:84px}
.vehicle-illustration.ute .vehicle-body,.vehicle-illustration.ute-single .vehicle-body,.vehicle-illustration.ute-dual .vehicle-body,.vehicle-illustration.ute-tray .vehicle-body,.vehicle-illustration.ute-canopy .vehicle-body{left:40px;right:35px;height:78px}.vehicle-illustration.ute .vehicle-cab,.vehicle-illustration.ute-dual .vehicle-cab{left:64px;right:220px;bottom:130px}.vehicle-illustration.ute-single .vehicle-cab{left:70px;right:270px;bottom:130px}.vehicle-illustration.ute-canopy .vehicle-body:after{content:"";position:absolute;right:16px;bottom:70px;width:150px;height:72px;border:3px solid #1d2730;border-bottom:0;background:#edf1f4;border-radius:18px 18px 0 0}
.vehicle-illustration.trailer .vehicle-cab,.vehicle-illustration.trailer-box .vehicle-cab,.vehicle-illustration.trailer-open .vehicle-cab,.vehicle-illustration.trailer-event .vehicle-cab,.vehicle-illustration.trailer-food .vehicle-cab{display:none}.vehicle-illustration.trailer .vehicle-body,.vehicle-illustration.trailer-box .vehicle-body,.vehicle-illustration.trailer-event .vehicle-body,.vehicle-illustration.trailer-food .vehicle-body{left:52px;right:52px;height:142px;border-radius:16px}.vehicle-illustration.trailer-open .vehicle-body{height:52px}.vehicle-illustration.trailer-food .vehicle-body:after,.vehicle-illustration.food-trailer .vehicle-body:after{content:"";position:absolute;right:34px;top:22px;width:132px;height:62px;border:3px solid #1d2730;background:#dff1f4;border-radius:8px}
.vehicle-illustration.food .vehicle-body,.vehicle-illustration.food-truck .vehicle-body,.vehicle-illustration.food-van .vehicle-body,.vehicle-illustration.coffee .vehicle-body{left:48px;right:40px;height:140px;border-radius:18px}.vehicle-illustration.food .vehicle-cab,.vehicle-illustration.food-truck .vehicle-cab,.vehicle-illustration.food-van .vehicle-cab,.vehicle-illustration.coffee .vehicle-cab{left:260px;right:42px;bottom:150px}.vehicle-illustration.food .vehicle-body:after,.vehicle-illustration.food-truck .vehicle-body:after,.vehicle-illustration.food-van .vehicle-body:after,.vehicle-illustration.coffee .vehicle-body:after{content:"";position:absolute;left:30px;top:28px;width:170px;height:72px;background:#dff2f5;border:3px solid #1d2730;border-radius:10px}
.vehicle-illustration.bike .vehicle-body,.vehicle-illustration.bike-sport .vehicle-body,.vehicle-illustration.bike-naked .vehicle-body,.vehicle-illustration.bike-cruiser .vehicle-body,.vehicle-illustration.bike-adv .vehicle-body{left:120px;right:115px;bottom:92px;height:54px;border-radius:50% 40% 30% 38%;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange))}.vehicle-illustration.bike .vehicle-cab,.vehicle-illustration.bike-sport .vehicle-cab,.vehicle-illustration.bike-naked .vehicle-cab,.vehicle-illustration.bike-cruiser .vehicle-cab,.vehicle-illustration.bike-adv .vehicle-cab,.vehicle-illustration.bike .vehicle-window,.vehicle-illustration.bike-sport .vehicle-window,.vehicle-illustration.bike-naked .vehicle-window,.vehicle-illustration.bike-cruiser .vehicle-window,.vehicle-illustration.bike-adv .vehicle-window{display:none}.vehicle-illustration.bike .wheel,.vehicle-illustration.bike-sport .wheel,.vehicle-illustration.bike-naked .wheel,.vehicle-illustration.bike-cruiser .wheel,.vehicle-illustration.bike-adv .wheel{width:72px;height:72px;bottom:38px;border-width:9px}.vehicle-illustration.bike .w1,.vehicle-illustration.bike-sport .w1,.vehicle-illustration.bike-naked .w1,.vehicle-illustration.bike-cruiser .w1,.vehicle-illustration.bike-adv .w1{left:54px}.vehicle-illustration.bike .w2,.vehicle-illustration.bike-sport .w2,.vehicle-illustration.bike-naked .w2,.vehicle-illustration.bike-cruiser .w2,.vehicle-illustration.bike-adv .w2{right:54px}
.vehicle-illustration.bus .vehicle-body,.vehicle-illustration.bus-mini .vehicle-body,.vehicle-illustration.bus-shuttle .vehicle-body,.vehicle-illustration.bus-coach .vehicle-body,.vehicle-illustration.bus-large .vehicle-body{left:28px;right:28px;height:145px;border-radius:22px 36px 18px 18px}.vehicle-illustration.bus .vehicle-cab,.vehicle-illustration.bus-mini .vehicle-cab,.vehicle-illustration.bus-shuttle .vehicle-cab,.vehicle-illustration.bus-coach .vehicle-cab,.vehicle-illustration.bus-large .vehicle-cab{display:none}.vehicle-illustration.bus .vehicle-window,.vehicle-illustration.bus-mini .vehicle-window,.vehicle-illustration.bus-shuttle .vehicle-window,.vehicle-illustration.bus-coach .vehicle-window,.vehicle-illustration.bus-large .vehicle-window{left:58px;right:58px;bottom:148px;height:54px;border-radius:12px}
.vehicle-illustration.fleet .vehicle-shape:after,.vehicle-illustration.fleet-same .vehicle-shape:after,.vehicle-illustration.fleet-vu .vehicle-shape:after,.vehicle-illustration.fleet-mix .vehicle-shape:after,.vehicle-illustration.fleet-custom .vehicle-shape:after{content:"";position:absolute;left:64px;right:12px;top:38px;height:94px;border-radius:26px;background:#fff;border:3px solid #1d2730;transform:translate(30px,-22px);opacity:.55}
/* car body variants */
.vehicle-illustration.suv .vehicle-body{height:110px}.vehicle-illustration.suv .vehicle-cab{bottom:145px;height:66px}.vehicle-illustration.hatch .vehicle-cab{left:110px;right:58px}.vehicle-illustration.coupe .vehicle-cab{left:125px;right:100px;height:48px}

/* wrap type */
.wrap-car .wrap-body{background:#fff}.wrap-car .wrap-window{bottom:141px}.wrap-illustration.full .wrap-body{background:linear-gradient(120deg,var(--sp-magenta),var(--sp-orange) 46%,var(--sp-cyan));border-color:transparent}.wrap-illustration.partial .wrap-body{background:linear-gradient(115deg,var(--sp-magenta) 0 47%,#fff 47%)}.wrap-illustration.half .wrap-body{background:linear-gradient(90deg,#fff 0 48%,var(--sp-orange) 48%)}.wrap-illustration.spot .wrap-body{background:linear-gradient(125deg,#fff 0 55%,var(--sp-cyan) 55% 72%,#fff 72%)}.wrap-illustration.vinyl .wrap-body:after{content:"YOUR BRAND";position:absolute;left:42px;top:35px;font-size:18px;font-weight:1000;letter-spacing:.04em}.wrap-illustration.vision .wrap-window{background:repeating-linear-gradient(90deg,#111923 0 4px,#667681 4px 7px);opacity:.9}
.coverage-key{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);width:180px;height:7px;border-radius:999px;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));opacity:.9}
/* colour */
.colour-vehicle:before{left:38px;right:38px;bottom:55px;height:92px;border-radius:34px 48px 22px 22px;background:#fff;border:3px solid #1d2730}.colour-vehicle:after{content:"";position:absolute;left:102px;right:92px;bottom:142px;height:50px;border-radius:34px 38px 2px 2px;background:#d7e9ed;border:3px solid #1d2730;border-bottom:0}.colour-illustration.bw .colour-vehicle:before{background:linear-gradient(120deg,#111 0 48%,#f7f7f7 48%)}.colour-illustration.accent .colour-vehicle:before{background:linear-gradient(120deg,#1c2228 0 68%,var(--sp-magenta) 68%)}.colour-illustration.colour .colour-vehicle:before{background:linear-gradient(115deg,var(--sp-magenta),var(--sp-orange),#ffd43b,var(--sp-green),var(--sp-cyan));border-color:transparent}.colour-illustration.existing .colour-vehicle:before{background:linear-gradient(135deg,#cfd5da,#f8fafb)}
.palette-samples{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;gap:7px}.palette-samples span{width:34px;height:10px;border-radius:999px;background:#111}.palette-samples span:nth-child(2){background:var(--sp-magenta)}.palette-samples span:nth-child(3){background:var(--sp-orange)}.palette-samples span:nth-child(4){background:var(--sp-green)}.palette-samples span:nth-child(5){background:var(--sp-cyan)}
/* extras */
.extra-mark{position:absolute;z-index:6;border:4px solid var(--sp-magenta);background:rgba(230,0,99,.18)}.extra-illustration.roof .extra-mark{left:112px;right:90px;bottom:180px;height:18px;border-radius:12px}.extra-illustration.bonnet .extra-mark{right:45px;bottom:86px;width:105px;height:42px;border-radius:16px}.extra-illustration.wheels .extra-mark{display:none}.extra-illustration.wheels .wheel{box-shadow:0 0 0 5px var(--sp-magenta)}.extra-illustration.mirrors .extra-mark{right:90px;bottom:130px;width:28px;height:20px;border-radius:50%}.extra-illustration.handles .extra-mark{left:205px;bottom:102px;width:42px;height:12px;border-radius:999px}.extra-illustration.edges .extra-mark{left:175px;bottom:68px;width:6px;height:72px;border-radius:999px}

@media(max-width:900px){.visual-option-card{grid-template-columns:1fr;padding:26px;min-height:500px}.vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{min-height:290px}.visual-option-copy{text-align:center}.visual-option-copy p{margin-left:auto;margin-right:auto}.visual-option-carousel{grid-template-columns:50px minmax(0,1fr) 50px;gap:10px}.visual-carousel-arrow{width:48px;height:48px}.visual-carousel-meta{grid-template-columns:1fr}.visual-select-btn{justify-self:start}}
@media(max-width:620px){.visual-option-carousel{grid-template-columns:42px minmax(0,1fr) 42px;gap:6px}.visual-carousel-arrow{width:40px;height:40px;font-size:20px}.visual-option-stage{min-height:470px}.visual-option-card{padding:20px 14px;min-height:470px}.vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{transform:scale(.78)}.visual-option-copy h4{font-size:36px}.visual-carousel-meta{margin-top:14px}.visual-select-btn{width:100%}.visual-dots{justify-content:center}}

/* ===== Vehicle configurator V14 motion + premium transitions ===== */
.visual-option-stage{isolation:isolate;perspective:1200px}
.visual-option-stage:after{content:"";position:absolute;inset:auto 12% 0;height:1px;background:linear-gradient(90deg,transparent,rgba(15,23,42,.16),transparent);z-index:0}
.visual-option-card{position:absolute;inset:0;min-height:100%;width:100%;will-change:transform,opacity,filter;transition:transform .52s cubic-bezier(.22,.9,.24,1),opacity .42s ease,filter .42s ease;z-index:2}
.visual-option-stage>.visual-option-card:only-child{position:relative;inset:auto}
.visual-option-card.slide-enter-right{transform:translate3d(62px,0,0) scale(.965) rotateY(-2.5deg);opacity:0;filter:blur(3px)}
.visual-option-card.slide-enter-left{transform:translate3d(-62px,0,0) scale(.965) rotateY(2.5deg);opacity:0;filter:blur(3px)}
.visual-option-card.slide-enter-right.slide-active,.visual-option-card.slide-enter-left.slide-active{transform:translate3d(0,0,0) scale(1) rotateY(0);opacity:1;filter:blur(0)}
.visual-option-card.slide-exit-left,.visual-option-card.slide-exit-right{position:absolute;inset:0;z-index:1}
.visual-option-card.slide-exit-left.slide-active{transform:translate3d(-72px,0,0) scale(.955) rotateY(2.5deg);opacity:0;filter:blur(3px)}
.visual-option-card.slide-exit-right.slide-active{transform:translate3d(72px,0,0) scale(.955) rotateY(-2.5deg);opacity:0;filter:blur(3px)}
.visual-option-stage.is-sliding{box-shadow:0 28px 58px rgba(15,23,42,.12)}
.visual-option-stage.is-sliding:before{animation:stageGridShift .52s cubic-bezier(.22,.9,.24,1)}
@keyframes stageGridShift{0%{transform:translateX(0);opacity:.85}50%{transform:translateX(-8px);opacity:.55}100%{transform:translateX(0);opacity:.85}}
.visual-carousel-arrow{position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.visual-carousel-arrow:after{content:"";position:absolute;inset:-2px;border-radius:50%;background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));opacity:0;z-index:-1;transition:.22s ease}
.visual-carousel-arrow:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 20px 36px rgba(15,23,42,.2)}
.visual-carousel-arrow:active{transform:translateY(0) scale(.95)}
.visual-dots{display:flex;align-items:center;gap:8px}
.visual-dot{width:9px;height:9px;border:0;border-radius:999px;background:#c9d1d8;padding:0;cursor:pointer;transition:width .3s cubic-bezier(.22,.9,.24,1),background .3s ease,transform .2s ease;overflow:hidden;position:relative}
.visual-dot span{position:absolute;inset:0;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));transform:scaleX(0);transform-origin:left;transition:transform .34s ease}
.visual-dot.active{width:34px;background:#d6dde3}.visual-dot.active span{transform:scaleX(1)}.visual-dot:hover{transform:scale(1.18)}
.visual-select-btn{position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.visual-select-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.22),rgba(255,255,255,0));transform:translateX(-130%);transition:transform .55s ease}
.visual-select-btn:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(15,23,42,.16)}.visual-select-btn:hover:before{transform:translateX(130%)}
.visual-option-copy h4,.visual-option-copy p,.visual-option-copy small{transition:transform .45s cubic-bezier(.22,.9,.24,1),opacity .35s ease}
.slide-enter-right .visual-option-copy h4,.slide-enter-right .visual-option-copy p,.slide-enter-right .visual-option-copy small{transform:translateX(24px);opacity:0}
.slide-enter-left .visual-option-copy h4,.slide-enter-left .visual-option-copy p,.slide-enter-left .visual-option-copy small{transform:translateX(-24px);opacity:0}
.slide-enter-right.slide-active .visual-option-copy h4,.slide-enter-right.slide-active .visual-option-copy p,.slide-enter-right.slide-active .visual-option-copy small,.slide-enter-left.slide-active .visual-option-copy h4,.slide-enter-left.slide-active .visual-option-copy p,.slide-enter-left.slide-active .visual-option-copy small{transform:none;opacity:1}
.vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{transition:transform .55s cubic-bezier(.22,.9,.24,1),filter .45s ease}
.slide-enter-right .vehicle-illustration,.slide-enter-right .wrap-illustration,.slide-enter-right .extra-illustration,.slide-enter-right .colour-illustration{transform:translateX(28px) scale(.96)}
.slide-enter-left .vehicle-illustration,.slide-enter-left .wrap-illustration,.slide-enter-left .extra-illustration,.slide-enter-left .colour-illustration{transform:translateX(-28px) scale(.96)}
.slide-enter-right.slide-active .vehicle-illustration,.slide-enter-right.slide-active .wrap-illustration,.slide-enter-right.slide-active .extra-illustration,.slide-enter-right.slide-active .colour-illustration,.slide-enter-left.slide-active .vehicle-illustration,.slide-enter-left.slide-active .wrap-illustration,.slide-enter-left.slide-active .extra-illustration,.slide-enter-left.slide-active .colour-illustration{transform:translateX(0) scale(1)}
.builder-slide.active{display:block;animation:none}
.builder-slide.step-enter-right{opacity:0;transform:translateX(34px) scale(.985)}
.builder-slide.step-enter-left{opacity:0;transform:translateX(-34px) scale(.985)}
.builder-slide.step-enter-active{opacity:1;transform:translateX(0) scale(1);transition:opacity .4s ease,transform .5s cubic-bezier(.22,.9,.24,1)}
.builder-progress-step span{transition:transform .28s ease,background .28s ease,color .28s ease,box-shadow .28s ease}
.builder-progress-step.active span{transform:scale(1.12);box-shadow:0 0 0 7px rgba(0,188,212,.1)}
.builder-progress>i{overflow:hidden;position:relative}.builder-progress>i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--sp-magenta),var(--sp-orange),var(--sp-cyan));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,.9,.24,1)}.builder-progress>i.done:after{transform:scaleX(1)}
@media (prefers-reduced-motion:reduce){.visual-option-card,.builder-slide,.visual-dot,.visual-carousel-arrow,.visual-select-btn,.vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{transition:none!important;animation:none!important}}

/* ===== V15: premium automotive illustration styling for configurator ===== */
.visual-option-stage{background:linear-gradient(180deg,#fbfcfd 0%,#f2f5f8 100%)}
.visual-option-stage:before{background-image:none}
.visual-option-stage:after{inset:auto 10% 34px;height:14px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(15,23,42,.16) 0%,rgba(15,23,42,.09) 35%,transparent 72%)}
.vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{min-height:340px}
.vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{width:min(100%,500px);height:245px;filter:drop-shadow(0 24px 18px rgba(15,23,42,.12))}
.vehicle-shape:before,.wrap-car:before,.extra-car:before,.colour-vehicle:before{box-shadow:inset 0 2px 10px rgba(255,255,255,.55), inset 0 -18px 24px rgba(18,34,72,.18), 0 12px 18px rgba(15,23,42,.08)}
.vehicle-body,.wrap-body,.extra-body,.colour-vehicle:before{
  left:42px;right:32px;bottom:52px;height:88px;
  border:2px solid #31445f;
  border-radius:48px 76px 22px 22px/34px 58px 18px 18px;
  background:linear-gradient(180deg,#edf8ff 0%,#9fd2ff 20%,#5a8fe2 53%,#4569b0 68%,#263f77 100%);
}
.vehicle-body:before,.wrap-body:before,.extra-body:before,.colour-vehicle:before{content:"";position:absolute;left:10px;right:10px;top:8px;height:26px;border-radius:40px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.12));opacity:.82}
.vehicle-body:after,.wrap-body:after,.extra-body:after{content:"";position:absolute;left:38px;right:70px;bottom:18px;height:8px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.55),rgba(255,255,255,0));opacity:.55}
.vehicle-cab{left:114px;right:74px;bottom:128px;height:62px;border:2px solid #31445f;border-bottom:0;border-radius:78px 90px 0 0;background:linear-gradient(180deg,#b9ddff 0%,#6396e3 52%,#345491 100%);box-shadow:inset 0 2px 10px rgba(255,255,255,.5)}
.vehicle-window,.wrap-window,.extra-window{left:140px;right:88px;bottom:136px;height:44px;border:2px solid #202b3a;border-radius:54px 62px 12px 12px;background:linear-gradient(180deg,#0f1623 0%,#2c3440 48%,#0a0f16 100%);box-shadow:inset 0 2px 8px rgba(255,255,255,.2)}
.vehicle-window:before,.wrap-window:before,.extra-window:before{content:"";position:absolute;left:12px;right:18px;top:4px;height:12px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.45),rgba(255,255,255,0))}
.wheel{bottom:26px;width:88px;height:88px;border:5px solid #1b1f26;background:radial-gradient(circle at center,#20242b 0 16%,#111 17% 45%,#737983 46% 48%,#101218 49% 74%,#d6d8dd 75% 78%,#090a0c 79% 100%);box-shadow:0 8px 16px rgba(0,0,0,.18);overflow:hidden}
.wheel:before{content:"";position:absolute;inset:16px;border-radius:50%;background:conic-gradient(from 0deg,#d2d7dd 0 8%,#1c1f24 8% 20%,#d2d7dd 20% 28%,#1c1f24 28% 40%,#d2d7dd 40% 48%,#1c1f24 48% 60%,#d2d7dd 60% 68%,#1c1f24 68% 80%,#d2d7dd 80% 88%,#1c1f24 88% 100%)}
.wheel:after{content:"";position:absolute;left:50%;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:50%;background:#232730;box-shadow:0 0 0 2px #8e949f}
.w1{left:58px}.w2{right:46px}
.detail{background:#233040;height:5px;border-radius:999px;box-shadow:0 0 8px rgba(255,255,255,.35)}
.detail.d1{left:38px;bottom:88px;width:34px}.detail.d2{right:36px;bottom:88px;width:40px;background:#87344c}

/* car variants */
.vehicle-illustration.sedan .vehicle-body,.vehicle-illustration.hatch .vehicle-body,.vehicle-illustration.suv .vehicle-body,.vehicle-illustration.coupe .vehicle-body{left:34px;right:26px}
.vehicle-illustration.coupe .vehicle-cab{left:136px;right:96px;height:58px;bottom:130px;border-radius:92px 112px 0 0}
.vehicle-illustration.coupe .vehicle-window{left:166px;right:108px;height:40px;border-radius:64px 88px 8px 8px}
.vehicle-illustration.hatch .vehicle-cab{left:118px;right:58px}.vehicle-illustration.hatch .vehicle-window{left:138px;right:72px}
.vehicle-illustration.suv .vehicle-body{height:98px;border-radius:36px 54px 18px 18px}.vehicle-illustration.suv .vehicle-cab{left:104px;right:62px;bottom:138px;height:64px}

/* vans */
.vehicle-illustration.van .vehicle-body,.vehicle-illustration.van-swb .vehicle-body,.vehicle-illustration.van-lwb .vehicle-body,.vehicle-illustration.van-high .vehicle-body,.vehicle-illustration.people .vehicle-body{left:34px;right:22px;height:126px;border-radius:26px 40px 20px 20px;background:linear-gradient(180deg,#f0f8ff 0%,#b7ddff 18%,#6296e1 52%,#4063a7 100%)}
.vehicle-illustration.van .vehicle-cab,.vehicle-illustration.van-swb .vehicle-cab,.vehicle-illustration.van-lwb .vehicle-cab,.vehicle-illustration.van-high .vehicle-cab,.vehicle-illustration.people .vehicle-cab{left:252px;right:24px;bottom:147px;height:54px;border-radius:36px 48px 0 0}
.vehicle-illustration.van .vehicle-window,.vehicle-illustration.van-swb .vehicle-window,.vehicle-illustration.van-lwb .vehicle-window,.vehicle-illustration.van-high .vehicle-window,.vehicle-illustration.people .vehicle-window{left:274px;right:42px;bottom:152px;height:34px;border-radius:22px 28px 4px 4px}
.vehicle-illustration.van-high .vehicle-body{height:152px}.vehicle-illustration.van-high .vehicle-cab{bottom:172px}.vehicle-illustration.van-high .vehicle-window{bottom:177px}
.vehicle-illustration.van-lwb .vehicle-body{left:14px}.vehicle-illustration.van-swb .vehicle-body{left:66px;right:42px}

/* utes */
.vehicle-illustration.ute .vehicle-body,.vehicle-illustration.ute-single .vehicle-body,.vehicle-illustration.ute-dual .vehicle-body,.vehicle-illustration.ute-tray .vehicle-body,.vehicle-illustration.ute-canopy .vehicle-body{left:34px;right:24px;height:78px;border-radius:36px 56px 18px 18px}
.vehicle-illustration.ute .vehicle-cab,.vehicle-illustration.ute-dual .vehicle-cab{left:78px;right:214px;bottom:128px}
.vehicle-illustration.ute-single .vehicle-cab{left:92px;right:260px;bottom:128px}.vehicle-illustration.ute-single .vehicle-window{left:114px;right:282px}
.vehicle-illustration.ute .vehicle-window,.vehicle-illustration.ute-dual .vehicle-window,.vehicle-illustration.ute-tray .vehicle-window,.vehicle-illustration.ute-canopy .vehicle-window{left:100px;right:228px;bottom:136px;height:38px}
.vehicle-illustration.ute-canopy .vehicle-body:after{right:18px;bottom:52px;width:156px;height:70px;border:2px solid #31445f;border-bottom:0;background:linear-gradient(180deg,#eaf7ff 0%,#8ebdf1 35%,#486ead 100%);border-radius:16px 20px 0 0;box-shadow:inset 0 2px 8px rgba(255,255,255,.35)}

/* trailers */
.vehicle-illustration.trailer .vehicle-body,.vehicle-illustration.trailer-box .vehicle-body,.vehicle-illustration.trailer-event .vehicle-body,.vehicle-illustration.trailer-food .vehicle-body{left:56px;right:44px;height:130px;border-radius:18px;background:linear-gradient(180deg,#f1f8ff 0%,#b5dafd 20%,#699ce4 56%,#3a5997 100%)}
.vehicle-illustration.trailer-open .vehicle-body{left:64px;right:54px;height:52px;border-radius:16px}
.vehicle-illustration.trailer-food .vehicle-body:after,.vehicle-illustration.food-trailer .vehicle-body:after{right:26px;top:22px;width:136px;height:60px;border:2px solid #31445f;background:linear-gradient(180deg,#e6f9ff,#aeddf5);border-radius:8px}
.vehicle-illustration.trailer .wheel,.vehicle-illustration.trailer-box .wheel,.vehicle-illustration.trailer-open .wheel,.vehicle-illustration.trailer-event .wheel,.vehicle-illustration.trailer-food .wheel{width:72px;height:72px;bottom:34px}.vehicle-illustration.trailer .w1,.vehicle-illustration.trailer-box .w1,.vehicle-illustration.trailer-open .w1,.vehicle-illustration.trailer-event .w1,.vehicle-illustration.trailer-food .w1{left:116px}.vehicle-illustration.trailer .w2,.vehicle-illustration.trailer-box .w2,.vehicle-illustration.trailer-open .w2,.vehicle-illustration.trailer-event .w2,.vehicle-illustration.trailer-food .w2{right:100px}

/* food truck / truck */
.vehicle-illustration.food .vehicle-body,.vehicle-illustration.food-truck .vehicle-body,.vehicle-illustration.food-van .vehicle-body,.vehicle-illustration.coffee .vehicle-body{left:34px;right:24px;height:136px;border-radius:18px;background:linear-gradient(180deg,#eef8ff 0%,#b4dcff 22%,#6599e3 55%,#3f60a2 100%)}
.vehicle-illustration.food .vehicle-cab,.vehicle-illustration.food-truck .vehicle-cab,.vehicle-illustration.food-van .vehicle-cab,.vehicle-illustration.coffee .vehicle-cab{left:282px;right:22px;bottom:146px;height:56px}
.vehicle-illustration.food .vehicle-window,.vehicle-illustration.food-truck .vehicle-window,.vehicle-illustration.food-van .vehicle-window,.vehicle-illustration.coffee .vehicle-window{left:302px;right:38px;bottom:152px;height:35px}
.vehicle-illustration.food .vehicle-body:after,.vehicle-illustration.food-truck .vehicle-body:after,.vehicle-illustration.food-van .vehicle-body:after,.vehicle-illustration.coffee .vehicle-body:after{left:28px;top:26px;width:174px;height:72px;border:2px solid #31445f;background:linear-gradient(180deg,#e7fbff,#bde5f6);border-radius:10px}

/* bike */
.vehicle-illustration.bike .vehicle-body,.vehicle-illustration.bike-sport .vehicle-body,.vehicle-illustration.bike-naked .vehicle-body,.vehicle-illustration.bike-cruiser .vehicle-body,.vehicle-illustration.bike-adv .vehicle-body{left:156px;right:146px;bottom:106px;height:50px;border-radius:50% 42% 38% 34%;background:linear-gradient(180deg,#d3ecff 0%,#6aa2ef 38%,#385693 100%);border:2px solid #31445f}
.vehicle-illustration.bike .wheel,.vehicle-illustration.bike-sport .wheel,.vehicle-illustration.bike-naked .wheel,.vehicle-illustration.bike-cruiser .wheel,.vehicle-illustration.bike-adv .wheel{width:78px;height:78px;bottom:42px}.vehicle-illustration.bike .w1,.vehicle-illustration.bike-sport .w1,.vehicle-illustration.bike-naked .w1,.vehicle-illustration.bike-cruiser .w1,.vehicle-illustration.bike-adv .w1{left:78px}.vehicle-illustration.bike .w2,.vehicle-illustration.bike-sport .w2,.vehicle-illustration.bike-naked .w2,.vehicle-illustration.bike-cruiser .w2,.vehicle-illustration.bike-adv .w2{right:72px}
.vehicle-illustration.bike .detail,.vehicle-illustration.bike-sport .detail,.vehicle-illustration.bike-naked .detail,.vehicle-illustration.bike-cruiser .detail,.vehicle-illustration.bike-adv .detail{display:block}.vehicle-illustration.bike .detail.d1,.vehicle-illustration.bike-sport .detail.d1,.vehicle-illustration.bike-naked .detail.d1,.vehicle-illustration.bike-cruiser .detail.d1,.vehicle-illustration.bike-adv .detail.d1{left:168px;bottom:136px;width:42px;height:4px}.vehicle-illustration.bike .detail.d2,.vehicle-illustration.bike-sport .detail.d2,.vehicle-illustration.bike-naked .detail.d2,.vehicle-illustration.bike-cruiser .detail.d2,.vehicle-illustration.bike-adv .detail.d2{right:150px;bottom:120px;width:18px;height:18px;border-radius:50%}

/* bus */
.vehicle-illustration.bus .vehicle-body,.vehicle-illustration.bus-mini .vehicle-body,.vehicle-illustration.bus-shuttle .vehicle-body,.vehicle-illustration.bus-coach .vehicle-body,.vehicle-illustration.bus-large .vehicle-body{left:16px;right:18px;height:142px;border-radius:26px 42px 18px 18px;background:linear-gradient(180deg,#f0f8ff 0%,#bbddff 20%,#6d9ce1 56%,#4868aa 100%)}
.vehicle-illustration.bus .vehicle-window,.vehicle-illustration.bus-mini .vehicle-window,.vehicle-illustration.bus-shuttle .vehicle-window,.vehicle-illustration.bus-coach .vehicle-window,.vehicle-illustration.bus-large .vehicle-window{left:46px;right:42px;bottom:152px;height:46px;border-radius:12px}
.vehicle-illustration.bus .wheel,.vehicle-illustration.bus-mini .wheel,.vehicle-illustration.bus-shuttle .wheel,.vehicle-illustration.bus-coach .wheel,.vehicle-illustration.bus-large .wheel{width:80px;height:80px;bottom:30px}
.vehicle-illustration.bus .w1,.vehicle-illustration.bus-mini .w1,.vehicle-illustration.bus-shuttle .w1,.vehicle-illustration.bus-coach .w1,.vehicle-illustration.bus-large .w1{left:68px}.vehicle-illustration.bus .w2,.vehicle-illustration.bus-mini .w2,.vehicle-illustration.bus-shuttle .w2,.vehicle-illustration.bus-coach .w2,.vehicle-illustration.bus-large .w2{right:54px}

/* fleet */
.vehicle-illustration.fleet .vehicle-shape:after,.vehicle-illustration.fleet-same .vehicle-shape:after,.vehicle-illustration.fleet-vu .vehicle-shape:after,.vehicle-illustration.fleet-mix .vehicle-shape:after,.vehicle-illustration.fleet-custom .vehicle-shape:after{left:94px;right:4px;top:48px;height:90px;border-radius:26px 36px 18px 18px;background:linear-gradient(180deg,rgba(240,248,255,.88),rgba(76,108,167,.52));border:2px solid rgba(49,68,95,.55);transform:translate(18px,-18px);opacity:.5}

/* wrap / colour / extras share the premium side profile */
.wrap-car .wrap-body,.extra-car .extra-body,.colour-vehicle:before{left:34px;right:26px;bottom:52px;height:88px;border-radius:48px 76px 22px 22px/34px 58px 18px 18px;border:2px solid #31445f;box-shadow:inset 0 2px 10px rgba(255,255,255,.55), inset 0 -18px 24px rgba(18,34,72,.14), 0 12px 18px rgba(15,23,42,.08)}
.wrap-car .wrap-window,.extra-car .extra-window{left:140px;right:88px;bottom:136px;height:44px;border-radius:54px 62px 12px 12px;border:2px solid #202b3a;background:linear-gradient(180deg,#0f1623 0%,#2c3440 48%,#0a0f16 100%)}
.wrap-car .wheel,.extra-car .wheel,.colour-vehicle .wheel{bottom:26px;width:88px;height:88px;border:5px solid #1b1f26}
.wrap-car .w1,.extra-car .w1{left:58px}.wrap-car .w2,.extra-car .w2{right:46px}
.wrap-illustration.full .wrap-body{background:linear-gradient(140deg,#d8f0ff 0%,#53a2ff 18%,#284ea7 42%,var(--sp-magenta) 52%,var(--sp-orange) 70%,var(--sp-cyan) 100%);border-color:transparent}
.wrap-illustration.partial .wrap-body{background:linear-gradient(115deg,#d9efff 0 26%,#4d84d4 26% 48%,#ffffff 48%)}
.wrap-illustration.half .wrap-body{background:linear-gradient(90deg,#f5fbff 0 48%,#4a74bf 48% 60%,var(--sp-orange) 60%)}
.wrap-illustration.spot .wrap-body{background:linear-gradient(125deg,#eef8ff 0 56%,#59b8e1 56% 74%,#f9fbfd 74%)}
.wrap-illustration.vinyl .wrap-body{background:linear-gradient(180deg,#f1f8ff 0%,#b7dcff 20%,#6699e3 55%,#425c9f 100%)}
.wrap-illustration.vinyl .wrap-body:after{content:"YOUR BRAND";left:46px;top:26px;font-size:20px;color:#17212c;background:none;height:auto;right:auto;bottom:auto;opacity:1}
.wrap-illustration.vision .wrap-body{background:linear-gradient(180deg,#eff8ff 0%,#b7dbff 18%,#6999df 55%,#4663a4 100%)}
.wrap-illustration.vision .wrap-window{background:repeating-linear-gradient(90deg,#111923 0 4px,#7a8792 4px 7px);opacity:.92}
.colour-vehicle:after{left:144px;right:88px;bottom:136px;height:44px;border-radius:54px 62px 12px 12px;border:2px solid #202b3a;background:linear-gradient(180deg,#0f1623 0%,#2c3440 48%,#0a0f16 100%)}
.colour-illustration.bw .colour-vehicle:before{background:linear-gradient(120deg,#10151c 0 52%,#eef2f7 52%)}
.colour-illustration.accent .colour-vehicle:before{background:linear-gradient(120deg,#1d242c 0 66%,var(--sp-magenta) 66% 82%,#f5f8fb 82%)}
.colour-illustration.colour .colour-vehicle:before{background:linear-gradient(135deg,#a4d3ff 0%,#3566c6 24%,var(--sp-magenta) 46%,var(--sp-orange) 66%,var(--sp-cyan) 100%);border-color:transparent}
.colour-illustration.existing .colour-vehicle:before{background:linear-gradient(180deg,#eef4f8 0%,#c2ccd7 30%,#7d8d9d 100%)}
.extra-mark{border-width:3px;box-shadow:0 0 0 4px rgba(230,0,99,.12)}

@media(max-width:620px){
  .vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{transform:scale(.74)}
}

/* ===== V16: push vehicle illustrations closer to premium sporty reference ===== */
.visual-option-stage{
  background:linear-gradient(180deg,#fafafa 0%,#f1f3f5 100%);
}
.visual-option-stage:after{
  inset:auto 12% 28px;
  height:18px;
  border-radius:999px;
  background:radial-gradient(ellipse at center,rgba(0,0,0,.18) 0%,rgba(0,0,0,.08) 36%,transparent 72%);
  filter:blur(1px);
}
.vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{
  width:min(100%,560px);
  height:250px;
  filter:drop-shadow(0 28px 18px rgba(15,23,42,.10));
}
.vehicle-body,.wrap-body,.extra-body,.colour-vehicle:before{
  left:28px;
  right:20px;
  bottom:50px;
  height:84px;
  border:2px solid #24344b;
  border-radius:52px 110px 26px 24px / 32px 72px 18px 18px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.78) 0 10%,rgba(255,255,255,0) 24%),
    linear-gradient(180deg,#d6ecff 0%,#82bdf7 16%,#4e88db 37%,#3058ac 60%,#213e7f 82%,#183061 100%);
}
.vehicle-body:before,.wrap-body:before,.extra-body:before{
  left:14px;right:16px;top:8px;height:18px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,.92),rgba(255,255,255,.12) 65%,rgba(255,255,255,0));
  opacity:.95;
}
.vehicle-body:after,.wrap-body:after,.extra-body:after{
  left:42px;right:92px;bottom:14px;height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,.38),rgba(255,255,255,0));
  opacity:.6;
}
.vehicle-cab{
  left:128px;
  right:74px;
  bottom:128px;
  height:58px;
  border:2px solid #24344b;
  border-bottom:0;
  border-radius:100px 120px 0 0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,0) 35%),
    linear-gradient(180deg,#b2d9ff 0%,#6ca7f1 45%,#3157a0 100%);
}
.vehicle-window,.wrap-window,.extra-window{
  left:154px;
  right:92px;
  bottom:136px;
  height:40px;
  border:2px solid #182330;
  border-radius:66px 88px 12px 12px;
  background:linear-gradient(180deg,#111821 0%,#343d48 42%,#0a0e15 100%);
}
.vehicle-window:before,.wrap-window:before,.extra-window:before{
  left:18px;right:22px;top:4px;height:10px;
  background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,0));
}
.wheel{
  bottom:24px;
  width:96px;height:96px;
  border:4px solid #14181e;
  background:radial-gradient(circle at center,#1c222b 0 16%,#0d0f13 17% 44%,#737882 45% 47%,#111317 48% 73%,#d9dde3 74% 77%,#07080a 78% 100%);
  box-shadow:0 10px 18px rgba(0,0,0,.22);
}
.wheel:before{
  inset:14px;
  background:conic-gradient(from 0deg,#d8dbe0 0 8%,#171a1f 8% 18%,#d8dbe0 18% 28%,#171a1f 28% 38%,#d8dbe0 38% 48%,#171a1f 48% 58%,#d8dbe0 58% 68%,#171a1f 68% 78%,#d8dbe0 78% 88%,#171a1f 88% 100%);
}
.wheel:after{
  width:14px;height:14px;background:#20252d;box-shadow:0 0 0 2px #8d95a1;
}
.w1{left:56px}.w2{right:42px}
.detail.d1{left:32px;bottom:86px;width:36px;height:5px;background:#f5f8fb;box-shadow:0 0 10px rgba(255,255,255,.55)}
.detail.d2{right:30px;bottom:84px;width:42px;height:5px;background:#9b3046;box-shadow:0 0 8px rgba(155,48,70,.45)}

/* make standard car / coupe look more like sleek performance side profile */
.vehicle-illustration.car .vehicle-body,
.vehicle-illustration.sedan .vehicle-body,
.vehicle-illustration.hatch .vehicle-body,
.vehicle-illustration.coupe .vehicle-body,
.wrap-car .wrap-body,
.extra-car .extra-body,
.colour-vehicle:before{
  left:22px;
  right:14px;
  bottom:50px;
  height:80px;
  border-radius:58px 122px 24px 22px / 34px 76px 16px 16px;
}
.vehicle-illustration.car .vehicle-cab,
.vehicle-illustration.sedan .vehicle-cab,
.vehicle-illustration.coupe .vehicle-cab,
.vehicle-illustration.hatch .vehicle-cab{
  left:138px;
  right:84px;
  bottom:126px;
  height:56px;
  border-radius:118px 136px 0 0;
}
.vehicle-illustration.car .vehicle-window,
.vehicle-illustration.sedan .vehicle-window,
.vehicle-illustration.coupe .vehicle-window,
.vehicle-illustration.hatch .vehicle-window,
.wrap-car .wrap-window,
.extra-car .extra-window{
  left:166px;
  right:102px;
  bottom:134px;
  height:38px;
  border-radius:72px 102px 10px 10px;
}
.vehicle-illustration.coupe .vehicle-cab{left:150px;right:102px;height:52px;border-radius:138px 160px 0 0}
.vehicle-illustration.coupe .vehicle-window{left:180px;right:122px;height:34px;border-radius:80px 116px 10px 10px}
.vehicle-illustration.hatch .vehicle-cab{left:130px;right:70px}
.vehicle-illustration.hatch .vehicle-window{left:158px;right:86px}
.vehicle-illustration.suv .vehicle-body{height:94px;border-radius:44px 78px 20px 18px}
.vehicle-illustration.suv .vehicle-cab{left:116px;right:68px;bottom:136px;height:60px}
.vehicle-illustration.suv .vehicle-window{left:144px;right:82px;bottom:144px;height:38px}

/* vans and buses retain premium render but keep utility shapes */
.vehicle-illustration.van .vehicle-body,.vehicle-illustration.van-swb .vehicle-body,.vehicle-illustration.van-lwb .vehicle-body,.vehicle-illustration.van-high .vehicle-body,.vehicle-illustration.people .vehicle-body{left:30px;right:18px}
.vehicle-illustration.bus .vehicle-body,.vehicle-illustration.bus-mini .vehicle-body,.vehicle-illustration.bus-shuttle .vehicle-body,.vehicle-illustration.bus-coach .vehicle-body,.vehicle-illustration.bus-large .vehicle-body{left:10px;right:12px}

/* wrap styles on premium body */
.wrap-illustration.full .wrap-body{background:linear-gradient(155deg,#ddf1ff 0%,#4f92e9 20%,#284ea5 36%,var(--sp-magenta) 52%,var(--sp-orange) 72%,var(--sp-cyan) 100%);border-color:transparent}
.wrap-illustration.partial .wrap-body{background:linear-gradient(115deg,#d8edff 0 26%,#467dd0 26% 48%,#ffffff 48%)}
.wrap-illustration.half .wrap-body{background:linear-gradient(90deg,#eef7ff 0 46%,#2c54a7 46% 58%,var(--sp-orange) 58%)}
.wrap-illustration.spot .wrap-body{background:linear-gradient(125deg,#eef7ff 0 58%,#58a8d8 58% 74%,#fbfcfd 74%)}
.wrap-illustration.vinyl .wrap-body{background:linear-gradient(180deg,#d6ecff 0%,#7db4f0 18%,#4f82d1 48%,#2a4f96 100%)}
.wrap-illustration.vision .wrap-body{background:linear-gradient(180deg,#d6ecff 0%,#7db4f0 18%,#4f82d1 48%,#2a4f96 100%)}
.wrap-illustration.vinyl .wrap-body:after{font-size:18px;left:52px;top:22px;color:#16202d;text-shadow:0 1px 0 rgba(255,255,255,.45)}
.coverage-key{width:220px;height:8px;opacity:.95;box-shadow:0 8px 16px rgba(0,0,0,.08)}

/* colour choices adopt same premium body */
.colour-illustration.bw .colour-vehicle:before{background:linear-gradient(122deg,#10161c 0 52%,#f0f2f6 52%)}
.colour-illustration.accent .colour-vehicle:before{background:linear-gradient(122deg,#18202a 0 68%,var(--sp-magenta) 68% 80%,#f2f6fb 80%)}
.colour-illustration.colour .colour-vehicle:before{background:linear-gradient(145deg,#d9efff 0%,#4e90e8 22%,#264aa2 38%,var(--sp-magenta) 52%,var(--sp-orange) 72%,var(--sp-cyan) 100%);border-color:transparent}
.colour-illustration.existing .colour-vehicle:before{background:linear-gradient(180deg,#eef3f7 0%,#c6d0db 28%,#7d8b9a 100%)}
.colour-vehicle:after{left:166px;right:102px;bottom:134px;height:38px;border-radius:72px 102px 10px 10px}

/* extras markers sit cleaner on updated vehicle */
.extra-illustration.roof .extra-mark{left:148px;right:118px;bottom:178px;height:14px}
.extra-illustration.bonnet .extra-mark{right:24px;bottom:82px;width:114px;height:38px}
.extra-illustration.mirrors .extra-mark{right:102px;bottom:128px;width:22px;height:18px}
.extra-illustration.handles .extra-mark{left:216px;bottom:96px;width:36px;height:10px}
.extra-illustration.edges .extra-mark{left:184px;bottom:66px;height:68px}

@media(max-width:900px){
  .vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{width:min(100%,520px)}
}
@media(max-width:620px){
  .vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{transform:scale(.7)}
  .visual-option-stage{min-height:500px}
}

/* ===== V17 approved realistic configurator layout ===== */
.visual-option-stage{
  min-height:520px;
  background:linear-gradient(180deg,#f8fafc 0%,#eef2f6 100%);
  border:1px solid #e2e8ef;
  border-radius:30px;
  box-shadow:0 24px 55px rgba(15,23,42,.09);
}
.visual-option-stage:before{display:none}
.visual-option-stage:after{
  content:"";
  position:absolute;
  left:8%;right:34%;bottom:44px;
  height:24px;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(15,23,42,.16),rgba(15,23,42,.04) 48%,transparent 75%);
  filter:blur(5px);
  z-index:0;
}
.visual-option-card{
  min-height:520px;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);
  gap:30px;
  padding:32px;
}
.visual-main-image{
  position:relative;
  min-width:0;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:24px;
}
.real-vehicle-visual{
  position:relative;
  width:100%;
  height:410px;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2;
}
.real-vehicle-visual img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  filter:drop-shadow(0 22px 16px rgba(15,23,42,.12));
  transition:transform .55s cubic-bezier(.22,.9,.24,1),filter .4s ease;
}
.real-vehicle-visual.vehicle img[src*="car.png"]{transform:scale(1.04)}
.real-vehicle-visual.vehicle img:not([src*="car.png"]){max-width:92%;max-height:82%;border-radius:18px;object-fit:cover;box-shadow:0 20px 45px rgba(15,23,42,.12)}
.visual-option-copy{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:rgba(255,255,255,.9);
  border:1px solid #e5eaf0;
  border-radius:24px;
  padding:30px 28px;
  box-shadow:0 18px 38px rgba(15,23,42,.07);
  backdrop-filter:blur(8px);
}
.visual-option-copy small{color:#778493;margin-bottom:14px}
.visual-option-copy h4{font-size:clamp(38px,3.7vw,58px);margin-bottom:12px}
.visual-option-copy p{font-size:16px;line-height:1.6;margin-bottom:20px;color:#6a7684}
.visual-option-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.visual-option-copy li{position:relative;padding-left:28px;color:#4f5d6b;font-size:14px;line-height:1.45;font-weight:700}
.visual-option-copy li:before{content:"✓";position:absolute;left:0;top:-1px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#087df0;color:#fff;font-size:11px;font-weight:1000}
.visual-carousel-arrow{
  width:58px;height:58px;
  border-radius:50%;
  background:#0d131b;
  color:#fff;
  box-shadow:0 16px 32px rgba(15,23,42,.18);
}
.visual-carousel-arrow.prev{margin-right:-10px}.visual-carousel-arrow.next{margin-left:-10px}
.visual-carousel-arrow:hover{transform:translateY(-2px) scale(1.04);background:#172231}
.visual-carousel-meta{grid-template-columns:1fr auto;gap:18px;align-items:center;margin-top:20px}
.vehicle-thumb-strip{
  display:flex !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  overflow-x:auto;
  padding:4px 2px 8px;
  scrollbar-width:thin;
}
.vehicle-thumb{
  appearance:none;
  border:1px solid #dfe6ed;
  background:#fff;
  border-radius:14px;
  min-width:104px;
  padding:8px 8px 7px;
  cursor:pointer;
  transition:.22s ease;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}
.vehicle-thumb img{width:88px;height:50px;object-fit:contain;display:block;margin:0 auto 5px;border-radius:8px}
.vehicle-thumb span{display:block;font-size:10px;font-weight:900;color:#5b6774;white-space:nowrap}
.vehicle-thumb:hover{transform:translateY(-2px);border-color:#b9c7d5}
.vehicle-thumb.active{border:2px solid #1684ff;box-shadow:0 0 0 3px rgba(22,132,255,.10),0 10px 22px rgba(15,23,42,.08)}
.vehicle-thumb.active span{color:#111820}
.visual-select-btn{
  padding:15px 24px;
  min-width:190px;
  background:linear-gradient(90deg,#087df0 0%,#315cff 38%,#e8178c 76%,#ff6531 100%);
  box-shadow:0 14px 30px rgba(232,23,140,.18);
}
.visual-select-btn:hover{background:linear-gradient(90deg,#087df0 0%,#315cff 38%,#e8178c 76%,#ff6531 100%);transform:translateY(-2px)}

/* image-based wrap / colour / extras treatments */
.real-wrap-overlay,.real-colour-overlay,.real-extra-overlay{position:absolute;inset:12% 8%;pointer-events:none;border-radius:26px;mix-blend-mode:multiply;opacity:.55}
.real-wrap-overlay.full{background:linear-gradient(135deg,var(--sp-magenta),var(--sp-orange) 48%,var(--sp-cyan));opacity:.48}
.real-wrap-overlay.partial{background:linear-gradient(110deg,var(--sp-magenta) 0 42%,transparent 42%);opacity:.44}
.real-wrap-overlay.half{background:linear-gradient(90deg,transparent 0 50%,var(--sp-orange) 50%);opacity:.44}
.real-wrap-overlay.spot{background:linear-gradient(125deg,transparent 0 52%,var(--sp-cyan) 52% 68%,transparent 68%);opacity:.5}
.real-wrap-overlay.vinyl{inset:auto 20% 34% 16%;height:50px;background:none;opacity:1}
.real-wrap-overlay.vinyl:after{content:"YOUR BRAND";display:block;color:#111820;font-weight:1000;font-size:24px;letter-spacing:.04em}
.real-wrap-overlay.vision{inset:22% 22% 42% 28%;background:repeating-linear-gradient(90deg,#121921 0 4px,#7d8790 4px 7px);opacity:.72}
.real-colour-overlay.bw{background:linear-gradient(115deg,rgba(0,0,0,.62) 0 50%,rgba(255,255,255,.4) 50%)}
.real-colour-overlay.accent{background:linear-gradient(115deg,rgba(17,23,31,.48) 0 67%,rgba(230,0,99,.64) 67% 80%,transparent 80%)}
.real-colour-overlay.colour{background:linear-gradient(135deg,rgba(230,0,99,.52),rgba(255,137,0,.52),rgba(0,188,212,.52))}
.real-colour-overlay.existing{display:none}
.real-extra-overlay{inset:auto;border:4px solid var(--sp-magenta);background:rgba(230,0,99,.14);opacity:1}
.real-extra-overlay.roof{left:26%;right:25%;top:20%;height:12%}
.real-extra-overlay.bonnet{right:10%;top:44%;width:19%;height:18%}
.real-extra-overlay.wheels{left:10%;right:8%;bottom:16%;height:22%;border-radius:999px;background:transparent}
.real-extra-overlay.mirrors{right:29%;top:39%;width:7%;height:8%;border-radius:50%}
.real-extra-overlay.handles{left:47%;top:49%;width:8%;height:4%;border-radius:999px}
.real-extra-overlay.edges{left:43%;top:39%;width:2%;height:30%;border-radius:999px}

@media(max-width:1050px){
  .visual-option-card{grid-template-columns:1fr;min-height:680px}
  .visual-main-image{min-height:360px}.real-vehicle-visual{height:350px}
  .visual-option-copy{min-height:auto}
}
@media(max-width:700px){
  .visual-option-stage{min-height:720px}
  .visual-option-card{min-height:720px;padding:18px 12px}
  .visual-main-image{min-height:300px}.real-vehicle-visual{height:290px}
  .visual-option-copy{padding:22px 18px}.visual-option-copy h4{font-size:38px}
  .vehicle-thumb{min-width:88px}.vehicle-thumb img{width:72px;height:42px}
  .visual-carousel-meta{grid-template-columns:1fr}.visual-select-btn{width:100%}
}

/* ===== V18: approved configurator composition ===== */
.wrap-builder-section{background:linear-gradient(180deg,#f7f9fb 0%,#fff 100%)}
.wrap-builder-head{display:none}
.wrap-builder{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.builder-progress{
  background:transparent;color:#697586;padding:6px 0 26px;
  grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto;
  gap:18px;
}
.builder-progress-step{color:#94a0ad;gap:12px}
.builder-progress-step span{
  width:46px;height:46px;border-radius:50%;border:1px solid #d7dfe7;background:#fff;color:#1d2631;
  box-shadow:0 8px 20px rgba(15,23,42,.04);font-size:14px
}
.builder-progress-step small{font-size:12px;letter-spacing:0;font-weight:800;text-transform:none}
.builder-progress-step.active,.builder-progress-step.done{color:#17212c}
.builder-progress-step.active span{
  background:#121922;color:#fff;border-color:#121922;
  box-shadow:0 0 0 4px #fff,0 0 0 7px rgba(230,0,99,.24),0 10px 24px rgba(15,23,42,.12)
}
.builder-progress-step.done span{background:#fff;color:#17212c;border-color:#bfc9d3}
.builder-progress i{height:1px;background:#d8e0e8}
.builder-progress i.done{background:linear-gradient(90deg,#087df0,var(--sp-magenta),var(--sp-orange))}
.builder-slides{min-height:0}
.builder-slide{padding:28px 0 12px}
.approved-step-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin:10px 0 26px}
.approved-step-heading small{display:none}
.approved-step-heading h3{font-size:clamp(42px,4.5vw,68px);line-height:.95;letter-spacing:-.055em;margin:0 0 10px;color:#142033}
.approved-step-heading p{margin:0;font-size:17px;color:#7b8794}
.approved-count{font-size:14px;font-weight:900;color:#7a8794;letter-spacing:.08em;padding-bottom:8px}
.approved-config-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:34px;align-items:start}
.approved-vehicle-column{min-width:0}
.approved-vehicle-stage-wrap{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;gap:12px;align-items:center}
.approved-vehicle-stage{
  min-height:420px!important;background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;overflow:hidden!important
}
.approved-vehicle-stage:after{left:10%!important;right:10%!important;bottom:35px!important;height:22px!important;filter:blur(7px)!important}
.approved-main-card{display:block!important;padding:0!important;min-height:420px!important;background:transparent!important}
.approved-main-card .visual-main-image{min-height:420px!important;border-radius:0!important}
.approved-main-card .real-vehicle-visual{height:410px!important}
.approved-main-card .real-vehicle-visual img{max-width:98%!important;max-height:94%!important;object-fit:contain!important;border-radius:0!important;box-shadow:none!important}
.approved-arrow{width:58px!important;height:58px!important;background:#fff!important;color:#111820!important;border:1px solid #e0e6ec!important;box-shadow:0 14px 30px rgba(15,23,42,.10)!important}
.approved-arrow.next{background:#111820!important;color:#fff!important;border-color:#111820!important}
.approved-arrow:hover{transform:translateY(-2px) scale(1.04)!important}
.approved-vehicle-info{
  background:#fff;border:1px solid #e3e9ef;border-radius:24px;padding:28px 26px;
  box-shadow:0 20px 46px rgba(15,23,42,.08);min-height:420px;display:flex;flex-direction:column
}
.approved-info-title{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px}
.approved-info-title>span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:1000;font-size:18px;background:linear-gradient(135deg,#086df3,#1f7ef7)}
.approved-info-title small{display:block;font-size:10px;letter-spacing:.08em;font-weight:1000;color:#1d2732;margin:3px 0 4px}
.approved-info-title h4{margin:0;font-size:30px;letter-spacing:-.04em;color:#657180;font-weight:800}
.approved-vehicle-info>p{font-size:15px;line-height:1.6;color:#6f7d8b;margin:0 0 20px}
.approved-vehicle-info ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:12px}
.approved-vehicle-info li{position:relative;padding-left:28px;font-size:14px;line-height:1.45;color:#5e6c7b;font-weight:700}
.approved-vehicle-info li:before{content:"✓";position:absolute;left:0;top:0;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#087df0;color:#fff;font-size:11px;font-weight:1000}
.approved-select{margin-top:auto;width:100%;min-height:58px;border-radius:16px!important;font-size:15px!important;background:linear-gradient(90deg,#087df0 0%,#315cff 35%,#e8178c 76%,#ff6531 100%)!important;display:flex;align-items:center;justify-content:center;gap:14px}
.approved-select span{font-size:22px;line-height:1}
.vehicle-thumb-strip{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px!important;overflow:visible!important;margin-top:14px;padding:0!important}
.vehicle-thumb{min-width:0!important;border-radius:12px!important;padding:8px 6px 7px!important;box-shadow:none!important;background:#fff!important}
.vehicle-thumb img{width:100%!important;height:54px!important;object-fit:contain!important;border-radius:8px!important}
.vehicle-thumb span{font-size:10px!important;font-weight:700!important;text-align:center!important;color:#687584!important}
.vehicle-thumb.active{border:2px solid #0b7bf1!important;box-shadow:0 0 0 2px rgba(11,123,241,.08)!important}
.approved-feature-strip{margin-top:38px;border-top:1px solid #e1e7ed;border-bottom:1px solid #e1e7ed;display:grid;grid-template-columns:repeat(4,1fr)}
.approved-feature-strip>div{display:grid;grid-template-columns:42px 1fr;column-gap:12px;row-gap:2px;align-items:center;padding:22px 20px;border-right:1px solid #e1e7ed}
.approved-feature-strip>div:last-child{border-right:0}
.approved-feature-strip span{grid-row:1/3;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eef3f8;color:#223141;font-weight:1000}
.approved-feature-strip b{font-size:13px;color:#263442}.approved-feature-strip small{font-size:11px;color:#8b96a2}
.builder-controls{margin-top:22px;border-top:0!important;background:transparent!important;padding-left:0!important;padding-right:0!important}

@media(max-width:1100px){
  .approved-config-grid{grid-template-columns:1fr}
  .approved-vehicle-info{min-height:auto}
  .approved-select{max-width:360px}
  .vehicle-thumb-strip{grid-template-columns:repeat(4,1fr)}
  .approved-feature-strip{grid-template-columns:repeat(2,1fr)}
  .approved-feature-strip>div:nth-child(2){border-right:0}.approved-feature-strip>div:nth-child(-n+2){border-bottom:1px solid #e1e7ed}
}
@media(max-width:700px){
  .builder-progress{grid-template-columns:auto 24px auto 24px auto 24px auto 24px auto;gap:8px;overflow-x:auto;padding-bottom:20px}
  .builder-progress-step small{display:none}.builder-progress-step span{width:38px;height:38px}
  .approved-step-heading{align-items:start}.approved-step-heading h3{font-size:44px}.approved-count{padding-top:8px}
  .approved-vehicle-stage-wrap{grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}
  .approved-arrow{width:42px!important;height:42px!important}
  .approved-vehicle-stage{min-height:300px!important}.approved-main-card{min-height:300px!important}.approved-main-card .visual-main-image{min-height:300px!important}.approved-main-card .real-vehicle-visual{height:290px!important}
  .vehicle-thumb-strip{grid-template-columns:repeat(4,1fr);gap:7px!important}.vehicle-thumb img{height:42px!important}.vehicle-thumb span{font-size:9px!important}
  .approved-feature-strip{grid-template-columns:1fr}.approved-feature-strip>div{border-right:0!important;border-bottom:1px solid #e1e7ed}.approved-feature-strip>div:last-child{border-bottom:0}
}

/* ===== V19 exact approved configurator composition ===== */
.wraps-hero{display:none!important}
.wrap-builder-section{padding:30px 0 54px!important;background:linear-gradient(180deg,#fff 0%,#f7f9fb 100%)!important}
.wrap-builder-section>.container{max-width:1640px!important}
.wrap-builder-head{display:none!important}
.wrap-builder{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.builder-progress{margin:0 0 38px!important;padding:0 4px 16px!important;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto!important;gap:16px!important;align-items:center!important;border-bottom:0!important}
.builder-progress-step{justify-self:start!important;display:flex!important;align-items:center!important;gap:14px!important}
.builder-progress-step span{width:48px!important;height:48px!important;font-size:16px!important}
.builder-progress-step small{font-size:17px!important;font-weight:700!important;color:#7e8b99!important}
.builder-progress-step.active small{color:#17212c!important}
.builder-progress>i{height:1px!important;background:#d8e0e8!important;min-width:60px!important}
.builder-slide{padding:0!important}
.approved-step-heading{margin:0 0 16px!important;padding:0 8px!important;align-items:end!important}
.approved-step-heading h3{font-size:clamp(48px,4.2vw,68px)!important;line-height:.96!important;margin:0 0 6px!important;color:#111b28!important}
.approved-step-heading p{font-size:18px!important;color:#85919f!important}
.approved-count{font-size:16px!important;color:#6f7c89!important;padding:0 6px 10px 0!important}
.approved-config-grid{grid-template-columns:minmax(0,1fr) 370px!important;gap:38px!important;align-items:stretch!important}
.approved-vehicle-column{display:flex!important;flex-direction:column!important;min-width:0!important}
.approved-vehicle-stage-wrap{grid-template-columns:66px minmax(0,1fr) 66px!important;gap:18px!important;align-items:center!important}
.approved-vehicle-stage{min-height:430px!important;height:430px!important;background:transparent!important;overflow:visible!important}
.approved-main-card{min-height:430px!important;height:430px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.approved-main-card .visual-main-image{min-height:430px!important;height:430px!important;display:grid!important;place-items:center!important;width:100%!important}
.approved-main-card .real-vehicle-visual{height:410px!important;width:100%!important;display:grid!important;place-items:center!important;position:relative!important}
.approved-main-card .real-vehicle-visual:after{content:"";position:absolute;left:12%;right:12%;bottom:22px;height:26px;border-radius:999px;background:radial-gradient(ellipse at center,rgba(15,23,42,.18) 0%,rgba(15,23,42,.09) 40%,transparent 72%);filter:blur(7px);z-index:0}
.approved-main-card .real-vehicle-visual img{position:relative!important;z-index:1!important;display:block!important;max-width:96%!important;max-height:365px!important;width:auto!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 18px 14px rgba(15,23,42,.12))!important}
.approved-arrow{width:62px!important;height:62px!important;border-radius:50%!important;font-size:30px!important;display:grid!important;place-items:center!important;padding:0!important}
.approved-arrow.prev{background:#fff!important;color:#111820!important;border:1px solid #e3e8ee!important;box-shadow:0 12px 26px rgba(15,23,42,.07)!important}
.approved-arrow.next{background:#111820!important;color:#fff!important;border:0!important;box-shadow:0 14px 30px rgba(15,23,42,.16)!important}
.vehicle-thumb-strip{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:12px!important;margin:18px 2px 0!important;padding:0!important}
.vehicle-thumb{display:grid!important;grid-template-rows:72px auto!important;align-items:center!important;min-width:0!important;padding:8px 8px 7px!important;border:1px solid #e3e8ee!important;border-radius:14px!important;background:#fff!important;cursor:pointer!important;transition:.2s ease!important;box-shadow:0 6px 16px rgba(15,23,42,.035)!important}
.vehicle-thumb img{width:100%!important;height:66px!important;object-fit:contain!important;border-radius:8px!important;background:transparent!important}
.vehicle-thumb span{font-size:11px!important;font-weight:700!important;color:#5f6d7a!important;line-height:1.2!important;margin-top:2px!important}
.vehicle-thumb.active{border:2px solid #087df0!important;box-shadow:0 0 0 3px rgba(8,125,240,.08),0 8px 18px rgba(15,23,42,.06)!important;transform:translateY(-1px)!important}
.approved-vehicle-info{border-radius:24px!important;padding:30px 28px!important;min-height:430px!important;height:100%!important;background:#fff!important;border:1px solid #e6ebf0!important;box-shadow:0 18px 40px rgba(15,23,42,.06)!important}
.approved-info-title{margin-bottom:26px!important}.approved-info-title>span{width:50px!important;height:50px!important;background:#0b7df0!important}
.approved-info-title small{font-size:12px!important;letter-spacing:0!important;color:#1c2733!important}.approved-info-title h4{font-size:32px!important;color:#677382!important;margin-top:2px!important}
.approved-vehicle-info>p{font-size:16px!important;line-height:1.6!important;color:#667483!important;margin-bottom:22px!important}
.approved-vehicle-info ul{gap:14px!important;margin-bottom:30px!important}.approved-vehicle-info li{font-size:14px!important;color:#647180!important;font-weight:600!important}
.approved-select{min-height:64px!important;border-radius:18px!important;font-size:17px!important;box-shadow:0 12px 24px rgba(230,23,140,.15)!important}
.approved-feature-strip{margin-top:34px!important;background:#fff!important;border:1px solid #e4e9ef!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 8px 20px rgba(15,23,42,.03)!important}
.approved-feature-strip>div{padding:18px 22px!important}.approved-feature-strip span{background:#f1f5f8!important;color:#52616f!important}.approved-feature-strip b{font-size:13px!important}.approved-feature-strip small{font-size:11px!important}
.builder-controls{display:none!important}
@media(max-width:1100px){.approved-config-grid{grid-template-columns:1fr!important}.approved-vehicle-info{min-height:auto!important}.vehicle-thumb-strip{grid-template-columns:repeat(4,1fr)!important}.approved-main-card .real-vehicle-visual img{max-height:330px!important}}
@media(max-width:700px){.wrap-builder-section{padding-top:20px!important}.builder-progress{overflow-x:auto!important;grid-template-columns:auto 24px auto 24px auto 24px auto 24px auto!important}.builder-progress-step small{display:none!important}.approved-step-heading h3{font-size:44px!important}.approved-config-grid{gap:22px!important}.approved-vehicle-stage-wrap{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:6px!important}.approved-vehicle-stage,.approved-main-card,.approved-main-card .visual-main-image{height:300px!important;min-height:300px!important}.approved-main-card .real-vehicle-visual{height:285px!important}.approved-main-card .real-vehicle-visual img{max-height:250px!important}.approved-arrow{width:42px!important;height:42px!important;font-size:22px!important}.vehicle-thumb-strip{grid-template-columns:repeat(4,1fr)!important}.vehicle-thumb{grid-template-rows:50px auto!important}.vehicle-thumb img{height:46px!important}.approved-feature-strip{grid-template-columns:1fr!important}}

/* V20: image-first selection interactions */
.approved-vehicle-stage,.visual-option-carousel .visual-option-stage{cursor:pointer}
.approved-vehicle-stage:hover,.visual-option-carousel .visual-option-stage:hover{box-shadow:0 26px 56px rgba(15,23,42,.13)}
.approved-vehicle-stage:focus-visible,.visual-option-carousel .visual-option-stage:focus-visible{outline:3px solid rgba(0,136,255,.22);outline-offset:3px}
.approved-click-hint,.image-select-hint{font-size:11px;font-weight:900;letter-spacing:.04em;color:#738090;display:flex;align-items:center;gap:7px}
.approved-click-hint:before,.image-select-hint:before{content:"↗";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eef4f8;color:#0d1219}
.approved-vehicle-info .approved-click-hint{margin-top:auto;padding-top:18px;border-top:1px solid #edf1f4}
.visual-carousel-meta{grid-template-columns:1fr auto}
.image-select-hint{justify-self:end}
.visual-option-stage.image-selected{animation:imageSelectPulse .42s cubic-bezier(.22,.9,.24,1)}
@keyframes imageSelectPulse{0%{transform:scale(1)}45%{transform:scale(.985);box-shadow:0 0 0 4px rgba(0,136,255,.12),0 24px 48px rgba(15,23,42,.12)}100%{transform:scale(1)}}
.approved-arrow{z-index:20;pointer-events:auto}
.approved-vehicle-stage-wrap{position:relative}
.approved-vehicle-stage{position:relative;z-index:2}
.approved-arrow.prev,.approved-arrow.next{position:relative;z-index:10}
@media(max-width:700px){.visual-carousel-meta{grid-template-columns:1fr}.image-select-hint{justify-self:start}}

/* ===== V21 compact configurator: fit the full interaction in one desktop view ===== */
@media (min-width:1101px){
  .wrap-builder-section{padding:10px 0 20px!important;min-height:auto!important}
  .wrap-builder-section>.container{max-width:1580px!important}
  .wrap-builder{border-radius:22px!important;box-shadow:0 14px 34px rgba(15,23,42,.06)!important}

  .builder-progress{margin:0 0 12px!important;padding:0 2px 8px!important;gap:10px!important}
  .builder-progress-step{gap:8px!important}
  .builder-progress-step span{width:34px!important;height:34px!important;font-size:12px!important}
  .builder-progress-step small{font-size:13px!important}
  .builder-progress-step.active span{transform:scale(1.04)!important;box-shadow:0 0 0 4px rgba(0,188,212,.08)!important}
  .builder-progress>i{min-width:42px!important}

  .builder-slides{padding:0!important}
  .approved-vehicle-step{padding:0 4px!important}
  .approved-step-heading{margin:0 0 6px!important;padding:0 4px!important;align-items:end!important}
  .approved-step-heading h3{font-size:38px!important;line-height:.98!important;margin:0 0 2px!important}
  .approved-step-heading p{font-size:14px!important;line-height:1.35!important}
  .approved-count{font-size:13px!important;padding:0 4px 3px 0!important}

  .approved-config-grid{grid-template-columns:minmax(0,1fr) 300px!important;gap:20px!important;align-items:stretch!important}
  .approved-vehicle-stage-wrap{grid-template-columns:48px minmax(0,1fr) 48px!important;gap:8px!important}
  .approved-vehicle-stage{min-height:285px!important;height:285px!important}
  .approved-main-card{min-height:285px!important;height:285px!important}
  .approved-main-card .visual-main-image{min-height:285px!important;height:285px!important}
  .approved-main-card .real-vehicle-visual{height:270px!important}
  .approved-main-card .real-vehicle-visual img{max-height:245px!important;max-width:94%!important}
  .approved-main-card .real-vehicle-visual:after{bottom:13px!important;height:16px!important;filter:blur(5px)!important}
  .approved-arrow{width:44px!important;height:44px!important;font-size:22px!important}

  .vehicle-thumb-strip{gap:7px!important;margin:7px 0 0!important}
  .vehicle-thumb{grid-template-rows:42px auto!important;padding:4px 5px!important;border-radius:10px!important;min-height:61px!important}
  .vehicle-thumb img{height:38px!important}
  .vehicle-thumb span{font-size:9px!important;margin-top:0!important}

  .approved-vehicle-info{padding:18px 18px!important;min-height:285px!important;border-radius:18px!important;display:flex!important;flex-direction:column!important}
  .approved-info-title{margin-bottom:10px!important;gap:10px!important}
  .approved-info-title>span{width:36px!important;height:36px!important;font-size:13px!important}
  .approved-info-title small{font-size:9px!important}
  .approved-info-title h4{font-size:23px!important;margin-top:0!important}
  .approved-vehicle-info>p{font-size:12px!important;line-height:1.45!important;margin-bottom:10px!important}
  .approved-vehicle-info ul{gap:7px!important;margin:0 0 10px!important}
  .approved-vehicle-info li{font-size:11px!important;line-height:1.35!important}
  .approved-click-hint{margin-top:auto!important;font-size:10px!important;padding-top:8px!important}

  .approved-feature-strip{margin-top:8px!important;border-radius:12px!important}
  .approved-feature-strip>div{grid-template-columns:28px 1fr!important;column-gap:7px!important;padding:7px 10px!important;min-height:50px!important}
  .approved-feature-strip span{width:28px!important;height:28px!important;font-size:11px!important}
  .approved-feature-strip b{font-size:10px!important;line-height:1.15!important}
  .approved-feature-strip small{font-size:8px!important;line-height:1.2!important}

  /* compact the remaining steps too */
  .builder-slide:not(.approved-vehicle-step){padding:12px 18px 14px!important}
  .builder-slide-copy{margin-bottom:8px!important}
  .builder-slide-copy small{font-size:8px!important}
  .builder-slide-copy h3{font-size:34px!important;margin:2px 0 4px!important}
  .builder-slide-copy p{font-size:13px!important;line-height:1.4!important}
  .visual-option-stage{min-height:300px!important}
  .visual-option-card{min-height:300px!important;padding:16px 24px!important;gap:18px!important}
  .vehicle-illustration,.wrap-illustration,.extra-illustration,.colour-illustration{min-height:240px!important}
  .vehicle-shape,.wrap-car,.extra-car,.colour-vehicle{transform:scale(.82)!important}
  .visual-option-copy h4{font-size:38px!important;margin-bottom:8px!important}
  .visual-option-copy p{font-size:13px!important;line-height:1.45!important}
  .visual-carousel-meta{margin-top:8px!important}
  .image-select-hint{font-size:10px!important}
  .window-vision-config{margin-top:8px!important;padding:14px 16px!important}
  .builder-final-summary{margin-top:10px!important;padding:14px 16px!important}
}


/* V22: normalise vehicle image scale so all vehicle types feel consistent */
.real-vehicle-visual img{transform:translateZ(0) scale(var(--vehicle-scale,1));transform-origin:center center;transition:transform .35s ease}
.vehicle-thumb{overflow:hidden!important}
.vehicle-thumb img{transform:scale(var(--vehicle-scale,1));transform-origin:center center;transition:transform .25s ease}
.vehicle-thumb.active img,.vehicle-thumb:hover img{transform:scale(calc(var(--vehicle-scale,1) * 1.02))}
.approved-main-card .real-vehicle-visual img{max-width:90%!important}
.approved-main-card .real-vehicle-visual img[src*="car.png"]{max-width:96%!important}

/* V23: keep vehicle scale consistent through ALL configurator stages */
/* Body, Wrap, Colour and Extras now use the same visual footprint as Vehicle. */
.builder-slide[data-step="2"] .visual-option-stage,
.builder-slide[data-step="3"] .visual-option-stage,
.builder-slide[data-step="4"] .visual-option-stage,
.builder-slide[data-step="5"] .visual-option-stage{
  min-height:285px!important;
  height:285px!important;
  background:transparent!important;
  overflow:hidden!important;
}
.builder-slide[data-step="2"] .visual-option-card,
.builder-slide[data-step="3"] .visual-option-card,
.builder-slide[data-step="4"] .visual-option-card,
.builder-slide[data-step="5"] .visual-option-card{
  min-height:285px!important;
  height:285px!important;
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:20px!important;
  padding:0!important;
}
.builder-slide[data-step="2"] .visual-main-image,
.builder-slide[data-step="3"] .visual-main-image,
.builder-slide[data-step="4"] .visual-main-image,
.builder-slide[data-step="5"] .visual-main-image{
  min-height:285px!important;
  height:285px!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  overflow:hidden!important;
}
.builder-slide[data-step="2"] .real-vehicle-visual,
.builder-slide[data-step="3"] .real-vehicle-visual,
.builder-slide[data-step="4"] .real-vehicle-visual,
.builder-slide[data-step="5"] .real-vehicle-visual{
  height:270px!important;
  width:100%!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  overflow:visible!important;
}
.builder-slide[data-step="2"] .real-vehicle-visual img,
.builder-slide[data-step="3"] .real-vehicle-visual img,
.builder-slide[data-step="4"] .real-vehicle-visual img,
.builder-slide[data-step="5"] .real-vehicle-visual img{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  max-width:90%!important;
  max-height:245px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 18px 14px rgba(15,23,42,.12))!important;
  transform:scale(var(--vehicle-scale,1))!important;
  transform-origin:center center!important;
}
.builder-slide[data-step="2"] .real-vehicle-visual:after,
.builder-slide[data-step="3"] .real-vehicle-visual:after,
.builder-slide[data-step="4"] .real-vehicle-visual:after,
.builder-slide[data-step="5"] .real-vehicle-visual:after{
  content:"";
  position:absolute;
  left:12%;right:12%;bottom:13px;
  height:16px;
  border-radius:999px;
  background:radial-gradient(ellipse at center,rgba(15,23,42,.18) 0%,rgba(15,23,42,.09) 40%,transparent 72%);
  filter:blur(5px);
  z-index:0;
}

/* Keep the selected vehicle visually locked when overlays are added. */
.builder-slide[data-step="3"] .real-wrap-overlay,
.builder-slide[data-step="4"] .real-colour-overlay,
.builder-slide[data-step="5"] .real-extra-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
}

/* Compact matching info panel for steps 2–5. */
.builder-slide[data-step="2"] .visual-option-copy,
.builder-slide[data-step="3"] .visual-option-copy,
.builder-slide[data-step="4"] .visual-option-copy,
.builder-slide[data-step="5"] .visual-option-copy{
  align-self:stretch!important;
  background:#fff!important;
  border:1px solid #e6ebf0!important;
  border-radius:18px!important;
  padding:18px!important;
  box-shadow:0 18px 40px rgba(15,23,42,.05)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.builder-slide[data-step="2"] .visual-option-copy h4,
.builder-slide[data-step="3"] .visual-option-copy h4,
.builder-slide[data-step="4"] .visual-option-copy h4,
.builder-slide[data-step="5"] .visual-option-copy h4{
  font-size:34px!important;
  margin:4px 0 10px!important;
}
.builder-slide[data-step="2"] .visual-option-copy p,
.builder-slide[data-step="3"] .visual-option-copy p,
.builder-slide[data-step="4"] .visual-option-copy p,
.builder-slide[data-step="5"] .visual-option-copy p{
  font-size:12px!important;
  line-height:1.45!important;
  margin:0 0 10px!important;
}
.builder-slide[data-step="2"] .visual-option-copy ul,
.builder-slide[data-step="3"] .visual-option-copy ul,
.builder-slide[data-step="4"] .visual-option-copy ul,
.builder-slide[data-step="5"] .visual-option-copy ul{
  margin:0!important;
  padding-left:18px!important;
  font-size:11px!important;
  line-height:1.4!important;
}

@media(max-width:1100px){
  .builder-slide[data-step="2"] .visual-option-card,
  .builder-slide[data-step="3"] .visual-option-card,
  .builder-slide[data-step="4"] .visual-option-card,
  .builder-slide[data-step="5"] .visual-option-card{grid-template-columns:1fr!important;height:auto!important;min-height:0!important}
  .builder-slide[data-step="2"] .visual-option-stage,
  .builder-slide[data-step="3"] .visual-option-stage,
  .builder-slide[data-step="4"] .visual-option-stage,
  .builder-slide[data-step="5"] .visual-option-stage{height:auto!important;min-height:0!important}
  .builder-slide[data-step="2"] .visual-main-image,
  .builder-slide[data-step="3"] .visual-main-image,
  .builder-slide[data-step="4"] .visual-main-image,
  .builder-slide[data-step="5"] .visual-main-image{height:300px!important;min-height:300px!important}
}
@media(max-width:700px){
  .builder-slide[data-step="2"] .visual-main-image,
  .builder-slide[data-step="3"] .visual-main-image,
  .builder-slide[data-step="4"] .visual-main-image,
  .builder-slide[data-step="5"] .visual-main-image{height:260px!important;min-height:260px!important}
  .builder-slide[data-step="2"] .real-vehicle-visual,
  .builder-slide[data-step="3"] .real-vehicle-visual,
  .builder-slide[data-step="4"] .real-vehicle-visual,
  .builder-slide[data-step="5"] .real-vehicle-visual{height:250px!important}
  .builder-slide[data-step="2"] .real-vehicle-visual img,
  .builder-slide[data-step="3"] .real-vehicle-visual img,
  .builder-slide[data-step="4"] .real-vehicle-visual img,
  .builder-slide[data-step="5"] .real-vehicle-visual img{max-height:220px!important}
}
