/* ============================================================
   AURORA — bright modern car-marketplace theme (Mamba engine)
   white · indigo→violet gradient · Sora + Inter · soft glass
   ============================================================ */
:root{
  --bg:#FFFFFF; --bg-2:#F4F5FB; --ink:#111220; --ink-2:#585C72; --line:#E7E8F2;
  --ind:#2563EB; --vio:#06B6D4; --grad:linear-gradient(120deg,#2563EB,#06B6D4);
  --accent:#2563EB; --amber:#2563EB; --muted:#585C72;
  --ff-disp:"Sora",system-ui,sans-serif; --ff-body:"Inter",system-ui,sans-serif; --ff-mono:"Inter",monospace;
  --r:16px; --r-lg:26px; --radius:12px; --radius-lg:20px; --shadow:0 18px 44px rgba(30,25,90,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--ff-body);line-height:1.62;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}
.container{max-width:1240px;margin:0 auto;padding:0 30px}
.muted{color:var(--ink-2)}.mono{font-family:var(--ff-body)}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}.reveal.in,.no-js .reveal{opacity:1;transform:none}
h1,h2,h3,h4,h5{font-family:var(--ff-disp);margin:0;line-height:1.1;letter-spacing:-.02em}
.h2{font-size:2.6rem;font-weight:700}.h3{font-size:1.8rem;font-weight:600}.display{font-family:var(--ff-disp);font-weight:800}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  background:linear-gradient(120deg,var(--ind),var(--vio));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:1.12rem;color:var(--ink-2)}
.gtext{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem;color:var(--ind)}
.link-arrow:hover{gap:12px}.link-arrow .ar,.link-arrow svg{width:15px;height:15px}
.section{padding:88px 0}.section--tight{padding:60px 0}.section.paper{background:var(--bg-2)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:24px;flex-wrap:wrap}
.sec-head h2,.sec-head .h2{font-family:var(--ff-disp);font-weight:700;font-size:2.6rem}
.sec-head p{color:var(--ink-2);width:100%;margin:6px 0 0;max-width:58ch}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--grad);color:#fff;border:0;
  font-family:var(--ff-body);font-weight:600;font-size:.95rem;padding:14px 28px;border-radius:40px;cursor:pointer;box-shadow:0 10px 24px rgba(37,99,235,.32);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(37,99,235,.4)}
.btn svg,.btn .ar{width:16px;height:16px}
.btn--ghost{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn--ghost:hover{border-color:var(--ind);color:var(--ind);box-shadow:none}
.btn--sm{padding:11px 20px;font-size:.85rem}.btn--block{width:100%;justify-content:center}

/* ---------- Glass header ---------- */
.au-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.78);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.au-nav{display:flex;align-items:center;justify-content:space-between;height:74px;gap:20px}
.au-brand{display:flex;align-items:center;gap:11px;font-family:var(--ff-disp);font-weight:800;font-size:1.35rem}
.au-brand .au-mark{width:40px;height:40px;background:var(--grad);color:#fff;display:grid;place-items:center;border-radius:12px;font-weight:800;font-size:1.2rem;box-shadow:0 8px 18px rgba(37,99,235,.35)}
.au-brand img{height:42px;width:auto}
.au-links{display:flex;align-items:center;gap:30px}
.au-links a{font-size:.94rem;font-weight:500;color:var(--ink-2)}.au-links a:hover,.au-links a.active{color:var(--ink)}
.au-nav__r{display:flex;align-items:center;gap:14px}
.au-phone{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:.9rem;color:var(--ink)}.au-phone svg{width:16px;height:16px;color:var(--ind)}
.au-cta{background:var(--grad);color:#fff;border-radius:40px;padding:11px 22px;font-weight:600;font-size:.9rem;box-shadow:0 8px 20px rgba(37,99,235,.32)}
.au-cta:hover{transform:translateY(-1px)}
.au-burger{display:none;background:none;border:0;color:var(--ink);cursor:pointer;padding:6px}.au-burger svg{width:26px;height:26px}

/* ---------- Drawer ---------- */
.drawer{position:fixed;inset:0;z-index:200;visibility:hidden;pointer-events:none}
.drawer.open{visibility:visible;pointer-events:auto}
.drawer__scrim{position:absolute;inset:0;background:rgba(17,18,32,.4);opacity:0;transition:.3s}.drawer.open .drawer__scrim{opacity:1}
.drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(88vw,340px);background:#fff;transform:translateX(100%);transition:transform .35s cubic-bezier(.6,0,.2,1);padding:26px;display:flex;flex-direction:column}
.drawer.open .drawer__panel{transform:none}
.drawer__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.drawer__close{background:none;border:0;font-size:1.9rem;color:var(--ink);cursor:pointer;line-height:1}
.drawer__links{list-style:none;margin:0;padding:0}
.drawer__links a{display:block;font-family:var(--ff-disp);font-weight:600;font-size:1.4rem;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.drawer__links a:hover,.drawer__links a.active{color:var(--ind)}
.drawer__foot{margin-top:auto;padding-top:18px;color:var(--ink-2)}.drawer__foot .mono{display:block;font-family:var(--ff-disp);font-weight:700;font-size:1.3rem;color:var(--ink);margin-top:4px}

/* ---------- HERO with search panel ---------- */
.hero{position:relative;padding:70px 0 60px;overflow:hidden;background:
  radial-gradient(60% 70% at 15% 10%,rgba(37,99,235,.14),transparent 60%),
  radial-gradient(55% 65% at 90% 20%,rgba(6,182,212,.14),transparent 60%),var(--bg)}
.hero__inner{max-width:820px}
.hero__title,.hero h1{font-family:var(--ff-disp);font-weight:800;font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.03;letter-spacing:-.03em;margin:18px 0 0}
.hero__title em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero__sub{color:var(--ink-2);font-size:1.15rem;max-width:52ch;margin:20px 0 0}
.au-search{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:14px;display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;align-items:center}
.au-search__field{display:flex;flex-direction:column;padding:6px 12px;border-right:1px solid var(--line)}
.au-search__field:nth-child(3){border-right:0}
.au-search__field label{font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin-bottom:2px}
.au-search__field input,.au-search__field select{border:0;background:none;font-family:var(--ff-body);font-size:.95rem;color:var(--ink);outline:none;padding:0;width:100%}
.au-search button{height:100%;min-height:52px}
.hero__stats{display:flex;gap:34px;margin-top:26px;flex-wrap:wrap}
.hero__stats>div b,.hero__stats .stat__num{font-family:var(--ff-disp);font-weight:800;font-size:1.7rem;display:block;line-height:1}
.hero__stats>div span,.hero__stats .stat__label{font-size:.78rem;color:var(--ink-2)}
.hero__media,.frame,.hero__badge{display:none}

/* ---------- Cards ---------- */
.grid-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 20px rgba(30,25,90,.05);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.card__media{display:block;position:relative;aspect-ratio:16/11;overflow:hidden;background:linear-gradient(135deg,#bcd3f5,#c3ecf2)}
.card__media img{width:100%;height:100%;object-fit:cover}
.card__status{position:absolute;top:12px;left:12px;background:var(--grad);color:#fff;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 12px;border-radius:20px}
.card__status.is-sold{background:var(--ink)}
.card__count{position:absolute;right:12px;bottom:12px;background:rgba(17,18,32,.72);color:#fff;font-size:.68rem;padding:4px 10px;border-radius:20px;display:inline-flex;gap:5px;align-items:center}.card__count svg{width:13px;height:13px}
.card__body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.card__title{font-family:var(--ff-disp);font-weight:700;font-size:1.25rem;margin:0 0 12px;line-height:1.2}
.card__specs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-2);border-radius:20px;padding:5px 12px;font-size:.74rem;color:var(--ink-2)}
.chip svg{width:13px;height:13px;color:var(--ind)}
.card__foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.price{font-family:var(--ff-disp);font-weight:800;font-size:1.4rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.price small{display:none}.price.is-call{font-size:1rem;color:var(--ink-2);-webkit-text-fill-color:var(--ink-2)}
.card__foot .link-arrow{width:40px;height:40px;border-radius:50%;background:var(--bg-2);color:var(--ind);display:grid;place-items:center;font-size:0}
.card__foot .link-arrow svg{width:16px;height:16px}
.card:hover .card__foot .link-arrow{background:var(--grad);color:#fff}

/* ---------- Services / steps ---------- */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:6px;box-shadow:0 6px 18px rgba(30,25,90,.05)}
.cat:hover{border-color:var(--ind)}.cat__icon{width:30px;height:30px;color:var(--ind)}
.cat__name{font-family:var(--ff-disp);font-weight:600;font-size:1.3rem}.cat__count{font-size:.78rem;color:var(--ink-2)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.step__n{font-family:var(--ff-disp);font-weight:800;font-size:2rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.step h4{font-family:var(--ff-disp);font-weight:600;font-size:1.3rem;margin:6px 0 8px}.step p{color:var(--ink-2);font-size:.92rem}
.brands{display:flex;flex-wrap:wrap;gap:10px}.brands span{background:#fff;border:1px solid var(--line);border-radius:30px;padding:9px 18px;font-weight:600}
.flex-between{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cta-band{background:var(--grad);color:#fff;border-radius:var(--r-lg);padding:52px;box-shadow:var(--shadow)}
.cta-band .row{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cta-band .eyebrow{-webkit-text-fill-color:rgba(255,255,255,.85);color:#fff}.cta-band .h2{color:#fff}.cta-band .btn{background:#fff;color:var(--ind)}

/* ---------- Why us / team ---------- */
.whyus{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.why{background:var(--bg-2);border-radius:var(--r);padding:26px}
.why__ic{width:34px;height:34px;color:var(--ind);margin-bottom:14px}
.why h4{font-family:var(--ff-disp);font-weight:600;font-size:1.3rem;margin:0 0 8px}.why p{color:var(--ink-2);font-size:.92rem;margin:0}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.team__ph{aspect-ratio:1/1;overflow:hidden;border-radius:var(--r-lg);background:linear-gradient(135deg,#bcd3f5,#c3ecf2)}
.team__ph img{width:100%;height:100%;object-fit:cover}
.team figcaption{margin-top:12px;font-family:var(--ff-disp);font-weight:600;font-size:1.15rem;text-align:center}

/* ---------- Reviews ---------- */
.reviews-strip{background:var(--bg-2);padding:80px 0}
.reviews-strip__head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px;gap:20px;flex-wrap:wrap}
.reviews-strip__head h2{font-family:var(--ff-disp);font-weight:700;font-size:2.4rem}
.reviews-badge{display:flex;align-items:baseline;gap:8px;background:#fff;border-radius:40px;padding:12px 22px;box-shadow:0 6px 18px rgba(30,25,90,.06)}
.reviews-badge b{font-family:var(--ff-disp);font-weight:800;font-size:1.5rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.reviews-badge span{font-size:.74rem;color:var(--ink-2)}
.reviews-track{display:flex;gap:22px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding-bottom:8px}.reviews-track::-webkit-scrollbar{display:none}
.review{flex:0 0 370px;max-width:86vw;scroll-snap-align:start;background:#fff;border-radius:var(--r-lg);padding:30px;box-shadow:0 8px 24px rgba(30,25,90,.06)}
.review__stars{color:var(--vio);letter-spacing:2px;margin-bottom:14px}
.review blockquote{font-size:1.05rem;line-height:1.55;margin:0 0 20px;color:var(--ink)}
.review figcaption{font-family:var(--ff-disp);font-weight:600;font-size:1rem}.review figcaption span{font-family:var(--ff-body);font-weight:400;color:var(--ink-2);margin-left:8px;font-size:.85rem}
.reviews-ctrl{display:flex;gap:10px;margin-top:24px}
.reviews-ctrl button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.3rem;cursor:pointer}
.reviews-ctrl button:hover{background:var(--grad);color:#fff;border-color:transparent}

/* ---------- Inventory filters ---------- */
.detail__head{margin-bottom:24px}
.breadcrumb{font-size:.8rem;color:var(--ink-2);margin-bottom:14px}.breadcrumb a:hover{color:var(--ind)}
.inv-filters{margin:0 0 4px}
.inv-search{position:relative;margin-bottom:12px}
.inv-search>svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--ink-2)}
.inv-search input{width:100%;background:var(--bg-2);border:1px solid var(--line);border-radius:40px;color:var(--ink);padding:15px 18px 15px 48px;font-size:.95rem;font-family:var(--ff-body)}
.inv-search input:focus{outline:none;border-color:var(--ind)}
.inv-search input[type=search],.inv-search input{padding-left:48px}
.inv-pills{display:flex;flex-wrap:wrap;gap:8px}
.inv-pills .pill{width:auto;appearance:none;-webkit-appearance:none;background:#fff;border:1px solid var(--line);border-radius:30px;color:var(--ink);font-family:var(--ff-body);font-weight:500;font-size:.86rem;padding:11px 34px 11px 18px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:13px}
.inv-pills .pill--accent{background:var(--grad);border-color:transparent;color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:13px}
.inv-pills .pill--clear{background-image:none;padding:11px 18px;color:var(--ink-2)}
.inv-count{margin:18px 0 22px;color:var(--ink-2);font-size:.88rem}.inv-count b{font-family:var(--ff-disp);font-weight:700;font-size:1.2rem;color:var(--ink);margin-right:4px}

/* ---------- LOT ---------- */
.detail__head{margin-top:26px}
.detail__title{font-family:var(--ff-disp);font-weight:800;font-size:2.6rem;line-height:1.05;margin:0}
.detail__price-row{display:flex;align-items:center;gap:16px;margin:10px 0 24px}
.detail__price{font-family:var(--ff-disp);font-weight:800;font-size:2.4rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.detail{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start;padding:0 0 70px}
.detail__left,.detail__right{min-width:0}
.d-gallery .gallery__main{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:var(--r-lg);background:linear-gradient(135deg,#bcd3f5,#c3ecf2)}
.d-gallery .gallery__main img{width:100%;height:100%;object-fit:cover}
.gallery__nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:#fff;color:var(--ink);border:0;display:grid;place-items:center;font-size:1.3rem;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.15)}
.gallery__nav.prev{left:14px}.gallery__nav.next{right:14px}.gallery__nav:hover{background:var(--grad);color:#fff}
.gallery__idx{position:absolute;right:14px;bottom:14px;background:rgba(17,18,32,.72);color:#fff;font-size:.72rem;padding:5px 12px;border-radius:20px}
.gallery__thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.gallery__thumbs button{border:0;padding:0;background:none;cursor:pointer;width:88px;height:62px;overflow:hidden;border-radius:12px}.gallery__thumbs img{width:100%;height:100%;object-fit:cover}.gallery__thumbs button.active{outline:2px solid var(--ind);outline-offset:2px}
.spec-grid,.d-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.spec-grid>div,.d-specs>div,.spec-row{background:var(--bg-2);border-radius:12px;padding:14px 16px;display:flex;justify-content:space-between}
.spec-grid .k,.d-specs .k,.spec-row .k{color:var(--ink-2)}.spec-row .ic{display:none}
.spec-grid .v,.d-specs .v,.spec-row .v{font-family:var(--ff-disp);font-weight:600;font-size:1.05rem}
.d-actions{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.d-actions .btn{justify-content:center}
.btn.bt-msg,.d-cta.bt-msg{background:var(--grad);color:#fff}
.btn.bt-call,.d-cta.bt-call{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn-carfax{display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin-bottom:18px;background:#0b0b0c}
.btn-carfax .cfx-text{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.btn-carfax .cfx-logo svg{height:20px;width:auto}
.trust-badges,.d-guarantee{display:none}
.d-ship,.d-shipping,.ship-est{background:var(--bg-2);border-radius:var(--r);padding:22px;margin-top:4px}
.ship__title,.d-shipping h3{font-family:var(--ff-disp);font-weight:600;font-size:1.4rem;display:flex;align-items:center;gap:8px;margin:4px 0}.ship__title svg{color:var(--ind);width:20px;height:20px}
.ship__sub{color:var(--ink-2);font-size:.86rem;margin-bottom:12px}.ship__form{display:flex;gap:10px}.ship__form input{flex:1}
.d-desc{margin-top:36px;padding-top:26px;border-top:1px solid var(--line);max-width:760px}.d-desc .prose p{margin:0 0 14px;color:var(--ink-2)}

/* ---------- Forms ---------- */
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],textarea,select{
  width:100%;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:14px 16px;color:var(--ink);font-size:.92rem;font-family:var(--ff-body)}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--ind)}textarea{resize:vertical;min-height:120px;border-radius:16px}
label{font-size:.78rem;font-weight:600;color:var(--ink-2);display:block;margin-bottom:6px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.info-list{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.info-list li{display:flex;gap:16px;background:var(--bg-2);border-radius:16px;padding:18px}
.info-list .ico{flex:none;width:46px;height:46px;border-radius:12px;background:#fff;display:grid;place-items:center;color:var(--ind);box-shadow:0 4px 12px rgba(30,25,90,.06)}.info-list .ico svg{width:20px;height:20px}
.info-list .k{font-family:var(--ff-disp);font-weight:600;font-size:1.25rem;margin-bottom:2px}.info-list .v{color:var(--ink-2)}
.offer-card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow)}
.offer-card h3{font-family:var(--ff-disp);font-weight:700;font-size:1.7rem;margin:0 0 6px}.offer-card .sub,.sub{color:var(--ink-2);font-size:.9rem}.offer-card .sub{margin-bottom:20px}
.form-row{margin-bottom:12px}.form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.alert{padding:12px 16px;border:1px solid var(--line);border-radius:12px;margin-bottom:12px;font-size:.9rem;background:var(--bg-2)}.alert-error{border-color:#e0a3b0;color:#c04a63;background:#fdf0f3}
.empty{text-align:center;padding:70px 20px;background:var(--bg-2);border-radius:var(--r-lg)}.empty svg{width:38px;height:38px;color:var(--ind);margin-bottom:14px}
.pager{display:flex;gap:8px;justify-content:center;margin-top:50px}.pager a{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-family:var(--ff-disp);font-weight:600}.pager a.is-active{background:var(--grad);color:#fff;border-color:transparent}.pager a.is-disabled{opacity:.4;pointer-events:none}

/* ---------- Footer ---------- */
.site-footer{background:#0E0F1A;color:#B9BCD0;padding:64px 0 36px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:40px}
.footer-brand{display:flex;align-items:center;gap:11px;font-family:var(--ff-disp);font-weight:800;font-size:1.9rem;color:#fff}
.footer-brand .mark{width:40px;height:40px;background:var(--grad);border-radius:12px;color:#fff;display:grid;place-items:center;font-weight:800}
.footer-about{margin-top:14px;max-width:34ch;color:#8A8DA6;font-size:.9rem}
.site-footer h5{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.footer-links{list-style:none;margin:0;padding:0}.footer-links li{padding:5px 0}.footer-links a{font-size:.9rem;color:#B9BCD0}.footer-links a:hover{color:#fff}
.social{display:flex;gap:10px;margin-top:18px}.social a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center}.social svg{width:16px;height:16px}
.footer-bottom{margin-top:52px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:.78rem;color:#8A8DA6;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.footer-legal a{margin-left:14px}
.float-call{position:fixed;right:24px;bottom:22px;z-index:40;width:58px;height:58px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(37,99,235,.5)}.float-call svg{width:26px;height:26px}
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(10,10,18,.92);display:none;align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox img{max-width:88vw;max-height:84vh;border-radius:var(--r)}
.lightbox__close,.lightbox__nav{position:absolute;background:none;border:0;color:#fff;font-size:2.4rem;cursor:pointer}.lightbox__close{top:24px;right:30px}.lightbox__nav.prev{left:24px;top:50%}.lightbox__nav.next{right:24px;top:50%}

@media(max-width:1000px){
  .au-links,.au-phone{display:none}.au-burger{display:inline-flex}
  .au-search{grid-template-columns:1fr 1fr;gap:8px}.au-search__field{border-right:0}.au-search button{grid-column:1/-1}
  .grid-cards{grid-template-columns:repeat(2,1fr)}.cats,.whyus,.steps,.team-grid{grid-template-columns:repeat(2,1fr)}
  .detail{grid-template-columns:1fr;gap:28px}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){.au-search{grid-template-columns:1fr}.grid-cards,.cats,.whyus,.steps,.team-grid,.form-row.two{grid-template-columns:1fr}.hero__title{font-size:2.4rem}.sec-head h2{font-size:2rem}}

/* CTA band: readable body text on the gradient background */
.cta-band p,.cta-band .muted,.cta-band .lead{color:rgba(255,255,255,.92)}

/* ============================================================
   Car/lot-page components — inspection, modals, ask form,
   guarantee, mobile action bar, scroll gallery.
   Theme-adaptive via token fallbacks (works on every template).
   Added 2026-09-05.
   ============================================================ */
.d-insp,.insp,.buy-modal,.insp-modal,.ask-card,.guarantee-mini,.lot-bar,.buy-file,.gallery__thumbs{
  --_ink:var(--ink,var(--fg,#14171f));
  --_mut:var(--ink-2,var(--muted,var(--mut,#6b7280)));
  --_line:var(--line,var(--panel2,rgba(127,127,127,.22)));
  --_surface:var(--panel,var(--bg,#ffffff));
  --_surface2:var(--bg-2,var(--panel2,rgba(127,127,127,.08)));
  --_accent:var(--accent,#2563eb);
  --_ok:#16a34a;--_okbg:rgba(22,163,74,.13);
  --_warn:#d97706;--_warnbg:rgba(217,119,6,.15);
  --_bad:#dc2626;--_badbg:rgba(220,38,38,.14);
}

/* ---- Inspection card (right column) ---- */
.insp{border:1px solid var(--_line);border-radius:var(--radius-lg,14px);padding:18px;margin-top:18px;background:var(--_surface)}
.insp__head{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--_ink);margin-bottom:12px}
.insp__head svg{width:20px;height:20px;color:var(--_accent);flex:0 0 auto}
.insp__score{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.insp__num{font-size:2.4rem;font-weight:800;line-height:1;color:var(--_ink);display:flex;align-items:baseline;gap:2px}
.insp__num small{font-size:.85rem;font-weight:600;color:var(--_mut)}
.insp__num.is-ok{color:var(--_ok)}.insp__num.is-warn{color:var(--_warn)}.insp__num.is-bad{color:var(--_bad)}
.insp__cond{font-weight:700;color:var(--_ink)}
.insp__sub{font-size:.82rem;color:var(--_mut)}
.insp__cats{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.insp__row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;font-size:.9rem}
.insp__cn{color:var(--_ink)}
.insp__ct{color:var(--_mut);font-variant-numeric:tabular-nums;font-size:.82rem}
.insp-pill{justify-self:end;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:20px;white-space:nowrap}
.insp-pill.is-ok{color:var(--_ok);background:var(--_okbg)}.insp-pill.is-warn{color:var(--_warn);background:var(--_warnbg)}.insp-pill.is-bad{color:var(--_bad);background:var(--_badbg)}
.insp__btn{width:100%;margin-top:2px;border:1px solid var(--_line);background:var(--_surface2);color:var(--_ink);font-weight:600;font-size:.88rem;padding:11px 14px;border-radius:var(--radius,10px);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.insp__btn:hover{border-color:var(--_accent);color:var(--_accent)}
.insp__btn .ar{width:15px;height:15px}

/* ---- Shared modal shell (buy + inspection) ---- */
.buy-modal,.insp-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}
.buy-modal.open,.insp-modal.open{display:flex}
.buy-modal__scrim,.insp-modal__scrim{position:absolute;inset:0;background:rgba(8,10,18,.62);backdrop-filter:blur(2px)}
.buy-modal__card,.insp-modal__card{position:relative;z-index:1;width:100%;max-width:460px;max-height:88vh;overflow-y:auto;background:var(--_surface);color:var(--_ink);border:1px solid var(--_line);border-radius:var(--radius-lg,16px);padding:26px 24px;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.insp-modal__card{max-width:560px}
.buy-modal__close,.insp-modal__close{position:absolute;top:12px;right:14px;width:34px;height:34px;border:0;background:var(--_surface2);color:var(--_ink);border-radius:50%;font-size:1.4rem;line-height:1;cursor:pointer}
.buy-modal__close:hover,.insp-modal__close:hover{color:var(--_accent)}
.buy-modal__title{margin:2px 0 4px;color:var(--_ink)}
.buy-modal .sub,.insp-modal .sub{color:var(--_mut);font-size:.9rem;margin:0 0 16px}
.buy-modal h3,.insp-modal h3{color:var(--_ink)}
.buy-modal .form-row,.buy-modal .form-row.two{margin-bottom:12px}
.buy-modal .form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.buy-modal input,.buy-modal textarea{width:100%}

/* ---- Inspection report rows (modal body) ---- */
.insp-rep{display:flex;flex-direction:column;gap:16px}
.insp-rep__cat{border-top:1px solid var(--_line);padding-top:12px}
.insp-rep__cn{font-weight:700;color:var(--_ink);margin-bottom:8px;font-size:.95rem}
.insp-rep__r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 0;font-size:.88rem}
.insp-rep__n{color:var(--_ink)}
.insp-rep__n em{display:block;font-style:normal;color:var(--_mut);font-size:.78rem}
.insp-badge{flex:0 0 auto;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:20px}
.insp-badge.is-ok{color:var(--_ok);background:var(--_okbg)}.insp-badge.is-warn{color:var(--_warn);background:var(--_warnbg)}.insp-badge.is-bad{color:var(--_bad);background:var(--_badbg)}

/* ---- Buy modal file input + success ---- */
.buy-file{display:flex;flex-direction:column;gap:6px;border:1px dashed var(--_line);border-radius:var(--radius,10px);padding:12px 14px;cursor:pointer}
.buy-file__label{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.86rem;color:var(--_ink)}
.buy-file__label svg{width:18px;height:18px;color:var(--_accent)}
.buy-file input[type=file]{font-size:.82rem;color:var(--_mut)}
.buy-file__name{font-size:.78rem;color:var(--_mut)}
.form-note{font-size:.76rem;color:var(--_mut);text-align:center;margin:10px 0 0}
.form-ok{display:none;text-align:center;padding:10px 0}
.form-ok .ico{width:54px;height:54px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:var(--_okbg);color:var(--_ok)}
.form-ok .ico svg{width:26px;height:26px}
.field-err{border-color:var(--_bad)!important;box-shadow:0 0 0 2px var(--_badbg)}

/* ---- Ask-about-this-car card ---- */
.ask-card{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:start;border:1px solid var(--_line);border-radius:var(--radius-lg,16px);padding:28px;background:var(--_surface)}
.ask-card__intro .muted{color:var(--_mut)}
.ask-ok{text-align:center;padding:16px 0}
.ask-ok .ico{width:54px;height:54px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:var(--_okbg);color:var(--_ok)}
.ask-ok .ico svg{width:26px;height:26px}
@media(max-width:760px){.ask-card{grid-template-columns:1fr;gap:18px;padding:20px}}

/* ---- Money-back guarantee mini block ---- */
.guarantee-mini{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--_line);border-radius:var(--radius-lg,14px);padding:16px 18px;margin-top:18px;background:var(--_surface2)}
.guarantee-mini__ico{flex:0 0 auto;color:var(--_accent)}
.guarantee-mini__ico svg{width:26px;height:26px}
.guarantee-mini__title{margin:0 0 4px;font-size:.98rem;color:var(--_ink)}
.guarantee-mini__sub{margin:0 0 6px;font-size:.84rem;color:var(--_mut)}
.guarantee-mini__link{font-size:.84rem;font-weight:600;color:var(--_accent);display:inline-flex;align-items:center;gap:5px;text-decoration:none}
.guarantee-mini__link svg{width:14px;height:14px}

/* ---- Mobile sticky action bar ---- */
.lot-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:8px;padding:10px 12px;background:var(--_surface);border-top:1px solid var(--_line);box-shadow:0 -8px 24px rgba(0,0,0,.14)}
.lot-bar .btn{flex:1;white-space:nowrap}
@media(max-width:760px){.lot-bar{display:flex}body{padding-bottom:74px}}

/* ---- Gallery thumbnails: horizontal scroll strip (many photos) ---- */
.gallery__thumbs{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding-bottom:6px;scrollbar-width:thin}
.gallery__thumbs button{flex:0 0 auto;scroll-snap-align:start}
.gallery__thumbs::-webkit-scrollbar{height:7px}
.gallery__thumbs::-webkit-scrollbar-thumb{background:var(--_line);border-radius:10px}

/* header CTA one line */
.au-cta{white-space:nowrap}
.au-nav__r{flex-wrap:nowrap}

/* lift floating call above sticky lot-bar on lot page */
@media(max-width:760px){body:has(.lot-bar) .float-call{bottom:88px}}

/* Phone field with +1 prefix (JS-enhanced) */
.phone-wrap{display:flex;align-items:stretch;width:100%}
.phone-pre{display:flex;align-items:center;padding:0 12px;font-weight:600;font-size:.9rem;line-height:1;white-space:nowrap;flex:0 0 auto;color:var(--ink-2,var(--mut,var(--muted,#6b7280)));background:var(--bg-2,var(--panel2,var(--panel,rgba(127,127,127,.10))));border:1px solid var(--line,var(--panel2,rgba(127,127,127,.28)));border-right:0;border-radius:var(--radius,10px) 0 0 var(--radius,10px)}
.phone-wrap>input{flex:1 1 auto;min-width:0;border-radius:0 var(--radius,10px) var(--radius,10px) 0!important;border-left:0!important}
/* ---- FAQ accordion + contact map + shipping result (added 2026-09-05) ---- */
.faq{max-width:820px;margin:0 auto;border-top:1px solid var(--line,var(--panel2,rgba(127,127,127,.22)))}
.faq__item{border-bottom:1px solid var(--line,var(--panel2,rgba(127,127,127,.22)))}
.faq__q{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:20px 46px 20px 0;position:relative;font-family:inherit;font-weight:600;font-size:1.05rem;line-height:1.4;color:var(--ink,var(--fg,inherit))}
.faq__q::after{content:"+";position:absolute;right:6px;top:18px;font-size:1.5rem;font-weight:400;line-height:1;color:var(--accent,#2563eb);transition:transform .3s}
.faq__item.open .faq__q::after{content:"\2212"}
.faq__a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq__a p{margin:0;padding:0 0 22px;color:var(--ink-2,var(--muted,var(--mut,#6b7280)));line-height:1.62}
.map-frame{position:relative;overflow:hidden;border-radius:var(--radius-lg,12px);border:1px solid var(--line,var(--panel2,rgba(127,127,127,.22)))}
.map-frame iframe{width:100%;height:320px;border:0;display:block}
.ship__result{margin-top:12px;padding:12px 14px;border-radius:var(--radius,8px);background:var(--bg-2,var(--panel2,rgba(127,127,127,.08)));font-size:.9rem;color:var(--ink,var(--fg,inherit))}
/* ---- Spec grid: one-per-row on mobile so long values (VIN) fit (added 2026-09-05) ---- */
@media(max-width:620px){
  .spec-grid,.d-specs{grid-template-columns:1fr!important}
  .spec-grid>div,.d-specs>div,.spec-row{border-right:0!important}
  .spec-grid .k,.d-specs .k{flex:0 0 auto;white-space:nowrap}
  .spec-grid .v,.d-specs .v{text-align:right;overflow-wrap:anywhere;word-break:break-word;min-width:0;padding-left:10px}
}
/* ---- Sticky-bar buttons centered + iOS-green floating call (added 2026-09-05) ---- */
.lot-bar .btn,.offer-bar .btn,.offer-bar__btn{justify-content:center;text-align:center}
.float-call{background:#34C759!important;color:#fff!important;border-radius:50%!important;box-shadow:0 12px 30px rgba(52,199,89,.5)!important}
.float-call svg{color:#fff!important}

/* sticky Call button = iOS green (added 2026-09-05) */
.lot-bar .bt-call,.offer-bar .bt-call,.offer-bar__btn.bt-call{background:#34C759!important;color:#fff!important;border-color:#34C759!important}

/* shipping calculator widget (added 2026-09-05) */
.ship{border:1px solid var(--line,var(--panel2,rgba(127,127,127,.22)));border-radius:var(--radius-lg,14px);padding:22px 24px;background:var(--panel,var(--bg-2,var(--bg,#fff)))}
.ship__price{font-size:1.7rem;font-weight:800;line-height:1.1;color:var(--accent,inherit)}
.ship__meta{font-size:.85rem;margin-top:4px;color:var(--ink-2,var(--muted,var(--mut,#6b7280)))}
.ship__result.is-err{background:rgba(220,38,38,.1);color:#dc2626}

/* ================= DANDZ LOT — marketplace showcase ================= */
.al-lot{padding:26px 0 60px}
.al-crumb{font-size:.82rem;color:var(--ink-2);margin-bottom:20px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.al-crumb a:hover{color:var(--accent)}.al-crumb i{opacity:.5;font-style:normal}
.al-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
.al-title{font-family:var(--ff-disp);font-weight:800;font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.08;letter-spacing:-.02em;margin:8px 0 0}
.al-sold{background:var(--ink);color:#fff;border-radius:40px;padding:6px 16px;font-weight:700;font-size:.8rem;flex:0 0 auto}
.al-stage{margin-bottom:34px}
.al-main{position:relative;aspect-ratio:16/10;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,#bcd3f5,#c3ecf2)}
.al-main img{width:100%;height:100%;object-fit:cover}
.al-pricepill{position:absolute;left:20px;bottom:20px;background:rgba(17,18,32,.82);color:#fff;padding:12px 22px;border-radius:40px;font-family:var(--ff-disp);font-weight:800;font-size:1.7rem;line-height:1.05;backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.al-pricepill span{display:block;font-size:.62rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;opacity:.8;margin-top:2px}
.al-main .gallery__nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);border:0;display:grid;place-items:center;font-size:1.3rem;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.15)}
.al-main .gallery__nav.prev{left:16px}.al-main .gallery__nav.next{right:16px}
.al-main .gallery__nav:hover{background:var(--grad);color:#fff}
.al-main .gallery__idx{position:absolute;right:16px;top:16px;background:rgba(17,18,32,.7);color:#fff;font-size:.74rem;padding:5px 12px;border-radius:20px}
.al-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
.al-thumbs button{flex:0 0 auto;width:98px;height:66px;border:0;padding:0;border-radius:14px;overflow:hidden;cursor:pointer;opacity:.55;transition:opacity .2s}
.al-thumbs button.active,.al-thumbs button:hover{opacity:1;outline:2px solid var(--accent);outline-offset:2px}
.al-thumbs img{width:100%;height:100%;object-fit:cover}
.al-grid{display:grid;grid-template-columns:1fr 360px;gap:34px;align-items:start}
.al-content{min-width:0;display:flex;flex-direction:column;gap:30px}
.al-h{font-family:var(--ff-disp);font-weight:700;font-size:1.3rem;margin:0 0 16px}
.al-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.al-chip{background:var(--bg-2);border:1px solid var(--line);border-radius:16px;padding:13px 16px}
.al-chip .k{display:block;font-size:.72rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.al-chip .v{font-family:var(--ff-disp);font-weight:600;font-size:1.02rem;overflow-wrap:anywhere}
.al-insp__top{display:flex;align-items:center;gap:22px;margin-bottom:18px}
.al-ring{width:110px;height:110px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--accent) calc(var(--v,0)*1%),var(--line) 0)}
.al-ring.is-warn{background:conic-gradient(#f59e0b calc(var(--v,0)*1%),var(--line) 0)}
.al-ring.is-bad{background:conic-gradient(#ef4444 calc(var(--v,0)*1%),var(--line) 0)}
.al-ring::before{content:"";position:absolute;inset:9px;background:#fff;border-radius:50%}
.al-ring span{position:relative;font-family:var(--ff-disp);font-weight:800;font-size:2rem;color:var(--ink)}
.al-insp__cond{font-family:var(--ff-disp);font-weight:700;font-size:1.1rem}
.al-insp__lead p{margin:6px 0 0;font-size:.92rem}
.al-insp__cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.al-icat{display:flex;align-items:center;gap:10px;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:11px 14px;font-size:.88rem}
.al-icat__dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;background:#16a34a}
.al-icat.is-warn .al-icat__dot{background:#d97706}.al-icat.is-bad .al-icat__dot{background:#dc2626}
.al-icat__n{font-weight:600}.al-icat__l{margin-left:auto;color:var(--ink-2);font-size:.78rem;white-space:nowrap}
.al-insp__more{margin-top:16px}
.al-buy{position:sticky;top:92px}
.al-card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:24px}
.al-card__price{font-family:var(--ff-disp);font-weight:800;font-size:2.2rem;line-height:1}
.al-card__sub{color:var(--ink-2);font-size:.84rem;margin:6px 0 18px}
.al-carfax{display:flex;align-items:center;gap:12px;margin-top:14px;padding:11px 14px;border:1px solid var(--line);border-radius:14px;background:#04121e}
.al-carfax .cfx-logo svg{height:20px;width:auto}.al-carfax span:last-child{color:#fff;font-size:.8rem;font-weight:600}
.al-ship{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.al-ship__h{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;margin-bottom:10px}.al-ship__h svg{width:18px;height:18px;color:var(--accent)}
.al-ship__form{display:flex;gap:8px}.al-ship__form input{flex:1;min-width:0}
.al-guar{display:flex;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.al-guar__ico{color:var(--accent);flex:0 0 auto}.al-guar__ico svg{width:26px;height:26px}
.al-guar strong{display:block;font-size:.92rem;margin-bottom:4px}
.al-related{margin-top:56px}
@media(max-width:920px){
  .al-grid{grid-template-columns:1fr}
  .al-buy{position:static;order:-1}
}
@media(max-width:560px){
  .al-main{aspect-ratio:3/2;border-radius:18px}
  .al-pricepill{left:12px;bottom:12px;font-size:1.4rem;padding:10px 16px}
  .al-title{font-size:1.35rem}
  .al-thumbs button{width:78px;height:56px}
  .al-insp__top{flex-direction:column;align-items:flex-start;gap:14px}
}

/* Dandz lot fixes: full-cover main photo + card sub */
.al-main img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center}
.al-main{aspect-ratio:16/9}
.al-card__sub--top{margin-top:0;font-weight:600;color:var(--ink)}

/* fix: photo counter must not stretch vertically */
.al-main .gallery__idx{bottom:auto}

/* Dandz inspection: styled pill button */
.al-insp__more{margin-top:18px;display:inline-flex;align-items:center;gap:8px;background:var(--grad);color:#fff!important;border:0;border-radius:40px;padding:12px 24px;font-weight:600;font-size:.9rem;cursor:pointer;box-shadow:0 8px 20px rgba(37,99,235,.28);transition:transform .2s}
.al-insp__more:hover{transform:translateY(-2px);gap:11px}
.al-insp__more .ar,.al-insp__more svg{width:15px;height:15px}

/* ---------- hero: dealership photo as a full-bleed background ---------- */
.hero--shot{padding:104px 0 74px;min-height:min(78vh,660px);display:flex;align-items:center}
.hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
/* light scrim so the dark headline keeps its contrast over the photo */
.hero__bg::after{content:"";position:absolute;inset:0;background:
  linear-gradient(96deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.93) 34%,rgba(255,255,255,.68) 62%,rgba(255,255,255,.34) 100%),
  linear-gradient(180deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,.62) 100%)}
.hero--shot .container{position:relative;z-index:2;width:100%}
.hero--shot .hero__inner{max-width:1180px}
.hero--shot .hero__copy{max-width:60ch}
.hero__split{display:block}
.hero__copy{min-width:0}
@media(max-width:900px){
  .hero--shot{padding:70px 0 56px;min-height:0}
  .hero__bg img{object-position:center 45%}
  .hero__bg::after{background:
    linear-gradient(180deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.9) 55%,rgba(255,255,255,.82) 100%)}
}

/* ---------- desktop nav now carries the full menu: keep it on one line ---------- */
.au-links{white-space:nowrap}
@media(max-width:1240px){
  .au-links{gap:20px}
  .au-links a{font-size:.88rem}
}
@media(max-width:1100px){
  .au-links{gap:15px}
  .au-links a{font-size:.83rem}
  .au-nav{gap:12px}
}

/* ---------- mobile drawer must scroll on short phones ----------
   The panel is 100% tall with a fixed padding, so on a small screen the
   last nav items and the footer fell outside with no way to reach them. */
.drawer__panel{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.drawer__links{flex:0 0 auto}
.drawer__head{flex:0 0 auto}
@media(max-height:780px){
  .drawer__panel{padding:18px 22px 24px}
  .drawer__head{margin-bottom:14px}
  .drawer__links a{font-size:1.15rem;padding:10px 0}
  .drawer__foot{margin-top:16px}
}
@media(max-height:620px){
  .drawer__panel{padding:14px 20px 20px}
  .drawer__links a{font-size:1rem;padding:8px 0}
}

/* ---------- narrow phones: footer columns caused a horizontal scrollbar ---------- */
.footer-grid>*{min-width:0}
.footer-links a{overflow-wrap:anywhere}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr;gap:26px}
}

/* ---------- Happy Customers photo gallery (was unstyled: one photo per row) ---------- */
.masonry{columns:3;column-gap:18px}
.masonry__item{break-inside:avoid;margin:0 0 18px;overflow:hidden;
  border:1px solid var(--line,rgba(128,128,128,.22));
  border-radius:var(--radius-lg,8px);
  background:var(--bg-2,rgba(128,128,128,.06))}
.masonry__item img{display:block;width:100%;height:auto}
.load-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.load-card{margin:0;overflow:hidden;aspect-ratio:4/3;
  border:1px solid var(--line,rgba(128,128,128,.22));
  border-radius:var(--radius-lg,8px);
  background:var(--bg-2,rgba(128,128,128,.06))}
.load-card img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:960px){.masonry{columns:2}}
@media(max-width:620px){.masonry{columns:1}}

/* ---------- phones: fit two cars across instead of one ----------
   The listing grids collapsed to a single column under ~600px, so a phone
   showed one huge card per screen. Two columns fit far more above the fold;
   the card internals are scaled down to stay legible at ~170px wide. */
@media(max-width:640px){
  .grid-cards{grid-template-columns:repeat(2,1fr);gap:12px}
  .cats,.whyus{grid-template-columns:repeat(2,1fr);gap:12px}

  .card__body{padding:12px 12px 14px}
  .card__title{font-size:.95rem;line-height:1.25;margin:0 0 8px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .card__specs{gap:5px;margin-bottom:10px}
  .card__specs .chip{font-size:.62rem;padding:3px 7px;gap:4px}
  .card__specs .chip svg{width:11px;height:11px}
  .card__foot{padding-top:10px;gap:6px}
  .card__foot .price{font-size:1.05rem}
  .card__foot .price small{font-size:.58rem}
  .card__foot .link-arrow{font-size:.7rem}
  .card__status,.card__count{font-size:.58rem;padding:3px 8px}
  .card__type{font-size:.58rem}
}
@media(max-width:400px){
  .grid-cards{gap:10px}
  .card__body{padding:10px 10px 12px}
  .card__title{font-size:.86rem}
  .card__foot{flex-direction:column;align-items:flex-start;gap:4px}
  .card__foot .price{font-size:.98rem}
  .card__foot .link-arrow{font-size:.66rem}
}

/* ---------- phones: show the hero photo's full width ----------
   The full-bleed hero cropped a 3:2 photo down to ~39% of its width. On mobile
   the photo becomes a 16:10 band in normal flow above the copy. */
@media(max-width:760px){
  .hero--shot{min-height:0;display:block;padding:0 0 40px}
  .hero--shot .hero__bg{position:relative;inset:auto;width:100%;height:auto}
  .hero--shot .hero__bg img{aspect-ratio:16/10;height:auto;object-position:center}
  .hero--shot .hero__bg::after{background:
    linear-gradient(180deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.04) 55%,rgba(255,255,255,.9) 100%)}
  .hero--shot .container{position:relative;z-index:2;padding-top:22px}
}

/* ---------- phones: inline grid-template-columns was squeezing these ----------
   guarantee/about/shipping set `style="grid-template-columns:…"` straight on
   the element, which outranks any media query — so the cards stayed 2-3 across
   on a phone. !important is the only way to win against an inline style. */
@media(max-width:760px){
  .steps,.form-grid{grid-template-columns:1fr !important;gap:14px}
}

/* ---------- happy-customer strip: equal cells, whole photo visible ----------
   The shots are a mix of portrait and landscape. Cells stay square so the row
   lines up, and the image is absolutely positioned inside so `contain` really
   fits it — an earlier attempt centred it with place-items, which let the image
   grow past the cell and get clipped top and bottom. */
.team-grid{display:grid !important;grid-template-columns:repeat(4,1fr);column-gap:20px;row-gap:20px;columns:auto}
.team{margin:0;display:block;width:auto;break-inside:auto}
.team__ph{position:relative;display:block;aspect-ratio:1/1;height:auto;overflow:hidden;background:var(--bg-2,#eef2f8);place-items:normal}
.team__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.team__ph{border-radius:var(--r-lg)}
@media(max-width:1000px){.team-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.team-grid{grid-template-columns:repeat(2,1fr);column-gap:12px;row-gap:12px}}

/* ---------- happy-customer strip: justified row ----------
   The photos are a mix of portrait and landscape. Each figure carries its own
   ratio as --ar, so flex-grow and flex-basis both scale with it: every photo in
   a row lands on the same height and the row ends flush with the container.
   Nothing is cropped and nothing is letterboxed. */
.team-grid{--h:210px;display:flex !important;flex-wrap:wrap;gap:18px;columns:auto;grid-template-columns:none;align-items:flex-start}
.team{margin:0;width:auto;min-width:0;break-inside:auto;flex:var(--ar,1.33) 1 calc(var(--ar,1.33) * var(--h))}
.team__ph{aspect-ratio:auto;height:auto;display:block;place-items:normal;overflow:hidden;background:transparent}
.team__ph img{width:100%;height:auto;object-fit:contain;display:block}
@media(max-width:760px){
  .team-grid{display:block !important;columns:2;column-gap:12px}
  .team{display:inline-block;width:100%;margin:0 0 12px;break-inside:avoid;flex:none}
}

/* hold the row's height before the lazy photos land */
.team-grid .team__ph img{aspect-ratio:var(--ar,1.33)}

/* ---------- home hero: keep the photo inside the screen ----------
   With aspect-ratio on a stretched grid item the browser sizes the WIDTH from
   the row height, which made the photo ~20px wider than the viewport and gave
   the page a sideways scroll. Pinning the width lets the ratio drive the
   height, which is what the 16:10 rule was for.
   (hero photo was wider than the phone screen) */
@media(max-width:760px){
  body[data-page="home"] .hero__img{width:100%;max-width:100%;align-self:start}
}

/* utility used by faq.php's closing block; it was missing here, so the block
   rendered left-aligned (faq's closing block asks for this) */
.text-center{text-align:center}

/* ---------- lot bar: floating dock ----------
   Lifted off the bottom edge and rounded, so it reads as a card rather than a
   band welded to the screen. */
.lot-bar.lb-dz{left:12px;right:12px;bottom:12px;gap:8px;padding:8px;align-items:center;
  border:1px solid var(--line,rgba(0,0,0,.10));border-radius:16px;
  box-shadow:0 12px 30px -10px rgba(15,23,42,.35)}
.lot-bar.lb-dz .lb-dz__msg{flex:1;border-radius:12px;height:46px;font-size:.9rem}
.lot-bar.lb-dz .lb-dz__call{flex:0 0 46px;width:46px;height:46px;padding:0;border-radius:12px;
  display:grid;place-items:center}
.lot-bar.lb-dz .lb-dz__call svg{width:19px;height:19px}
@media(max-width:760px){body{padding-bottom:86px}}

/* ---------- happy-customer strip: last-row filler ----------
   The figures grow to justify each row, which is right until the final row
   holds one or two photos: they then stretch to the full container width and
   tower over the rows above. An invisible flex item with an enormous grow
   factor soaks up that leftover space instead. */
.team-grid::after{content:"";flex:1000000 1 0;min-width:0;height:0;margin:0;padding:0}
@media(max-width:760px){.team-grid::after{content:none}}

/* ---------- delivery page: transport photo beside the lead ----------
   Aurora is a light theme, so the shot cannot go behind the copy. It sits in a
   card next to it on desktop and above it on phones. */
.ship-hero__wrap{display:grid;gap:36px;align-items:center}
@media(min-width:980px){
  .ship-hero__wrap.has-photo{grid-template-columns:1.02fr .98fr}
  .ship-hero__wrap.has-photo > div:first-child{padding-right:8px}
}
.ship-hero__card{margin:0;border-radius:18px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 18px 44px rgba(17,18,32,.10)}
.ship-hero__card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
@media(max-width:979px){
  .ship-hero__wrap.has-photo > div:first-child{padding:52px 0 12px}
  .ship-hero__card{margin-bottom:44px}
}
