/* ==========================================================================
   BA Liquidation theme - main stylesheet
   Navy "Brand Flagship" design system, full multi-page site.
   ========================================================================== */
:root{
  --navy:#003B80; --navy-700:#002C60; --navy-900:#001C3D;
  --accent:#A84E08; --accent-600:#8F4206;
  --ink:#16202B; --body:#3A4653; --muted:#505C6A; --faint:#616E80;
  --line:#E3E8EF; --line-2:#EEF2F7;
  --bg:#FFFFFF; --bg-2:#F5F7FA; --bg-3:#EDF1F6;
  --good:#1E7A54; --good-bg:#E6F4EC; --sale:#C0392B; --sale-bg:#FBECEA;
  --star:#E8A020;
  --radius:14px; --radius-sm:10px;
  --shadow-sm:0 1px 2px rgba(16,32,55,.06),0 2px 6px rgba(16,32,55,.05);
  --shadow:0 4px 14px rgba(16,32,55,.08),0 12px 30px rgba(16,32,55,.06);
  --wrap:1200px;
  --sans:"Plus Jakarta Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --body-font:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --header-h:80px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--body);font-family:var(--body-font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;max-width:100%}
.wrap{max-width:var(--wrap)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4,h5{font-family:var(--sans);color:var(--ink);line-height:1.15;margin:0;font-weight:700;letter-spacing:-.01em;text-wrap:balance}
a{color:var(--navy);text-decoration:none}
a:hover{text-decoration:underline}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:600;font-size:15px;padding:13px 24px;border-radius:12px;border:1.5px solid transparent;cursor:pointer;transition:.15s;text-decoration:none;line-height:1.15;text-align:center}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:var(--navy-700);text-decoration:none;color:#fff}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-600);text-decoration:none;color:#fff}
.btn-ghost{background:#fff;color:var(--navy);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--navy);text-decoration:none}
.btn-wa{background:#128C7E;color:#fff;border-color:#128C7E}
.btn-wa:hover{filter:brightness(1.05);color:#fff;text-decoration:none}
.btn-lg{font-size:16px;padding:15px 30px}
.btn-block{width:100%}

/* ---------- utility bar ---------- */
.ubar{background:var(--navy-900);color:#cfe0f5;font-size:12px}
.ubar .wrap{display:flex;align-items:center;gap:18px;height:30px;justify-content:center;flex-wrap:wrap;overflow:hidden}
.ubar b{color:#fff;font-weight:600}
.ubar a{color:#fff}
.ubar-rev{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none}
.ubar-rev:hover{text-decoration:none;opacity:.92}
.ubar-rev .ubar-stars{color:#FFC53D;letter-spacing:1.5px;font-size:13px;line-height:1}
.ubar-rev b{color:#fff;font-weight:700}
.ubar-rev .ubar-rev-c{opacity:.75}
/* sell-only notice strip (sitewide) */
.sellbar{background:#FBF3EC;border-bottom:1px solid #F0DDC9;color:#7A3A06;font-size:13px}
.sellbar .wrap{display:flex;align-items:center;justify-content:center;gap:9px;min-height:34px;padding-top:6px;padding-bottom:6px;text-align:center;line-height:1.35}
.sellbar svg{flex:none;width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.9}
.sellbar b{font-weight:700;color:#5E2D04}
@media(max-width:560px){.sellbar{font-size:12px}.sellbar .wrap{gap:7px}}
/* Used vs scratch & dent comparison table */
.cmp-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff}
.cmp{width:100%;border-collapse:collapse;min-width:640px;font-size:14.5px}
.cmp th,.cmp td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line-2);vertical-align:top;line-height:1.4}
.cmp thead th{font-family:var(--sans);font-weight:700;color:var(--ink);border-bottom:2px solid var(--line);font-size:15px}
.cmp thead th span{font-weight:600;color:var(--accent);font-size:12px}
.cmp td.cmp-h{font-family:var(--sans);font-weight:700;color:var(--ink);white-space:nowrap}
.cmp td{color:var(--muted)}
.cmp .cmp-best{background:var(--good-bg);color:var(--ink)}
.cmp tbody .cmp-best{font-weight:600}
.cmp thead .cmp-best{background:var(--good-bg);border-radius:8px 8px 0 0}
.cmp tr:last-child td{border-bottom:0}
/* HTML site map page */
.smap{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:28px 32px}
.smap-col h2{font-family:var(--sans);font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.smap-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.smap-col a{color:var(--body);font-size:15px}
.smap-col a:hover{color:var(--navy)}

/* ---------- header / desktop nav ---------- */
.site-header{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line)}
.hdr{display:flex;align-items:center;gap:18px;height:var(--header-h)}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:800;color:var(--navy);font-size:20px;letter-spacing:-.02em;flex:none}
.brand:hover{text-decoration:none}
.brand .logo{width:40px;height:40px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:15px;font-weight:800}
.brand small{display:block;font-family:var(--body-font);font-weight:500;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:1px}
.logo-mark{height:44px;width:auto;display:block}
.brand .logo-full{height:64px;width:auto;display:block}
.brand-text{display:inline-flex;flex-direction:column;justify-content:center}
.logo-chip{background:#fff;border-radius:9px;padding:5px 8px;display:inline-grid;place-items:center}
.logo-chip .logo-mark{height:30px}
.hdr-search{flex:1;max-width:460px;display:flex;align-items:center;gap:8px;background:var(--bg-2);border:1.5px solid var(--line);border-radius:999px;padding:0 8px 0 16px;height:44px}
.hdr-search input{border:0;background:none;flex:1;font:inherit;font-size:14px;color:var(--ink);outline:none}
.hdr-search:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,59,128,.15)}
.hdr-search button{border:0;background:var(--navy);color:#fff;width:34px;height:34px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.hdr-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.hdr-tel{display:flex;align-items:center;gap:8px;color:var(--navy);font-family:var(--sans);font-weight:700;font-size:15px;white-space:nowrap;padding:0 6px}
.hdr-tel small{display:block;font-family:var(--body-font);font-weight:500;font-size:11px;color:var(--muted)}
.iconbtn{width:44px;height:44px;border-radius:10px;border:0;background:none;color:var(--ink);display:grid;place-items:center;cursor:pointer;position:relative}
.iconbtn:hover{background:var(--bg-2)}
.iconbtn svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}
.cart-count{position:absolute;top:5px;right:5px;background:var(--sale);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:9px;display:grid;place-items:center;padding:0 3px}
/* header brand tagline (next to logo) */
.brand-tag{display:inline-flex;flex-direction:column;justify-content:center;line-height:1.1;margin-left:2px;padding-left:12px;border-left:1px solid var(--line)}
.brand-tag-1{font-family:var(--sans);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.brand-tag-2{font-family:var(--body-font);font-weight:500;font-size:11.5px;color:var(--muted);margin-top:2px}
@media(max-width:860px){.brand-tag{display:none}}
/* about page: who we are */
.about-intro{display:grid;grid-template-columns:300px 1fr;gap:34px;align-items:start}
.about-photo{margin:0}
.about-photo img{border-radius:var(--radius);box-shadow:var(--shadow-sm);width:100%;height:auto}
.about-photo figcaption{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.4}
.about-intro-text h2{font-size:clamp(20px,2.6vw,26px);margin-bottom:10px}
@media(max-width:720px){.about-intro{grid-template-columns:1fr;gap:20px}.about-photo{max-width:360px}}
/* footer social links */
.foot-social{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px}
.foot-social a{color:#fff;font-size:13px;text-decoration:none;opacity:.9}
.foot-social a:hover{opacity:1;text-decoration:underline}

/* primary nav bar (desktop) */
.navbar{background:var(--navy);display:block}
.navbar .wrap{display:flex;align-items:stretch;justify-content:center;gap:2px}
.navbar a{color:#e7eefb;font-family:var(--sans);font-weight:600;font-size:14.5px;padding:13px 16px;display:flex;align-items:center;gap:6px;position:relative}
.navbar a:hover{color:#fff;background:var(--navy-700);text-decoration:none}
.navbar a.clearance{color:#ffd9a8}
.navbar .has-mega{position:static}
.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:24px 0;display:none;z-index:70}
.navbar .has-mega:hover .mega,.navbar .has-mega:focus-within .mega,.mega:hover{display:block}
.mega .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 30px}
.mega h5{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 6px}
.mega a{color:var(--body);font-weight:500;font-size:14px;padding:6px 0;background:none}
.mega a:hover{color:var(--navy);background:none}

/* Prominent Shop button in the nav */
.navbar a.shop-btn{background:var(--accent);color:#fff;font-weight:800;letter-spacing:.01em;margin-right:6px}
.navbar a.shop-btn:hover{background:#8f3f06;color:#fff}
.navbar a.shop-btn svg{stroke:#fff}

/* Compact hover dropdowns (Categories, Top Brands, Resources) */
.navbar .has-dd{position:relative}
.navbar .has-dd>a .ddchev{transition:transform .18s}
.navbar .has-dd:hover>a .ddchev,.navbar .has-dd:focus-within>a .ddchev{transform:rotate(180deg)}
.dd{position:absolute;left:0;top:100%;min-width:210px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:8px;display:none;z-index:70;border-radius:0 0 12px 12px}
.navbar .has-dd:hover .dd,.navbar .has-dd:focus-within .dd{display:block}
.dd a{display:block;color:var(--body);font-weight:500;font-size:14px;padding:9px 12px;background:none;border-radius:8px;white-space:nowrap}
.dd a:hover{color:var(--navy);background:var(--bg-2)}
.dd.dd-grid{display:none;min-width:440px;grid-template-columns:1fr 1fr;gap:2px}
.navbar .has-dd:hover .dd.dd-grid,.navbar .has-dd:focus-within .dd.dd-grid{display:grid}

.menu-toggle{display:none}

/* ---------- mobile drawer ---------- */
.scrim{position:fixed;inset:0;background:rgba(8,20,38,.5);opacity:0;visibility:hidden;transition:.25s;z-index:80}
.scrim.on{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;left:0;bottom:0;width:min(88vw,360px);background:#fff;transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:90;display:flex;flex-direction:column;overflow-y:auto}
.drawer.on{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--navy);color:#fff;position:sticky;top:0}
.drawer-head .brand{color:#fff}
.drawer-head .brand .logo{background:#fff;color:var(--navy)}
.drawer-body{padding:8px 0 24px}
.drawer-links{list-style:none;margin:0;padding:0}
.drawer-links>li{border-bottom:1px solid var(--line-2)}
.drawer-links>li>a{display:flex;align-items:center;gap:12px;padding:14px 18px;color:var(--ink);font-family:var(--sans);font-weight:600;font-size:15.5px}
.drawer-links .tag{margin-left:auto;background:var(--sale-bg);color:var(--sale);font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px}
.acc>button{width:100%;display:flex;align-items:center;gap:12px;padding:14px 18px;background:none;border:0;font-family:var(--sans);font-weight:600;font-size:15.5px;color:var(--ink);cursor:pointer;text-align:left}
.acc>button .chev{margin-left:auto;transition:.2s;color:var(--muted)}
.acc.open>button .chev{transform:rotate(90deg)}
.acc .panel{max-height:0;overflow:hidden;transition:max-height .28s ease}
.acc.open .panel{max-height:600px}
.acc .panel a{display:block;padding:10px 18px 10px 46px;color:var(--body);font-size:14.5px}
.drawer-cta{padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.drawer-foot{padding:6px 18px 20px;color:var(--muted);font-size:13px}

/* hamburger icon morph */
.burger{width:22px;height:16px;position:relative;display:inline-block}
.burger .bar{position:absolute;left:0;width:100%;height:2px;background:currentColor;border-radius:2px;transition:.27s ease}
.burger .bar:nth-child(1){top:0}
.burger .bar:nth-child(2){top:7px}
.burger .bar:nth-child(3){top:14px}
[aria-expanded="true"] .burger .bar:nth-child(1){top:7px;transform:rotate(45deg)}
[aria-expanded="true"] .burger .bar:nth-child(2){opacity:0}
[aria-expanded="true"] .burger .bar:nth-child(3){top:7px;transform:rotate(-45deg)}

/* ---------- breadcrumbs ---------- */
.crumbs{font-size:13px;color:var(--muted);padding:14px 0}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--navy)}
.crumbs .sep{margin:0 8px;color:var(--faint)}
.crumbs [aria-current]{color:var(--ink);font-weight:500}

/* ---------- page header ---------- */
.page-head{background:var(--bg-2);border-bottom:1px solid var(--line)}
.page-head .wrap{padding:26px 20px 30px}
.page-head h1{font-size:clamp(26px,4vw,40px);font-weight:800}
.page-head .lede{color:var(--muted);max-width:70ch;margin-top:10px;font-size:17px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:10px}

/* ---------- generic content ---------- */
.section{padding:52px 0}
.section-sm{padding:36px 0}
.section h2{font-size:clamp(22px,3vw,30px);font-weight:800}
.section .kicker{color:var(--muted);max-width:66ch;margin-top:10px}
.prose{max-width:72ch}
.prose h2{margin:36px 0 0;font-size:24px}
.prose h3{margin:28px 0 0;font-size:19px}
.prose p{margin:14px 0}
.prose ul{margin:14px 0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.prose ul li{position:relative;padding-left:26px}
.prose ul li::before{content:"";position:absolute;left:4px;top:9px;width:7px;height:7px;border-radius:2px;background:var(--accent)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.section-head .link{font-family:var(--sans);font-weight:600;color:var(--navy);font-size:14px;white-space:nowrap}

/* ---------- hero ---------- */
.hero{background:linear-gradient(180deg,var(--bg-2),#fff)}
/* Use vertical-only padding here so the .wrap horizontal padding is preserved
   (a shorthand padding would zero out the side spacing and hug the edges). */
.hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:center;padding-top:46px;padding-bottom:40px}
.hero .badge{display:inline-flex;align-items:center;gap:8px;background:var(--sale-bg);color:var(--sale);font-family:var(--sans);font-weight:700;font-size:12.5px;padding:6px 13px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.hero h1{font-size:clamp(30px,4.6vw,50px);font-weight:800;margin:16px 0 0}
.hero p{color:var(--muted);font-size:18px;margin:16px 0 0;max-width:52ch}
.hero .cta-row{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.hero-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;position:relative}
.hero-card .pimg{aspect-ratio:4/3;background:var(--bg-2);border-radius:var(--radius-sm);display:grid;place-items:center;overflow:hidden}
.hero-card .pimg img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.hero-card .save{position:absolute;top:28px;left:28px;background:var(--sale);color:#fff;font-family:var(--sans);font-weight:700;font-size:13px;padding:5px 11px;border-radius:8px}

/* ---------- trust strip ---------- */
.trust{background:var(--navy);color:#dce8f8}
.trust .wrap{display:flex;flex-wrap:wrap;gap:8px 30px;justify-content:center;padding:14px 20px;font-size:14px}
.trust .i{display:flex;align-items:center;gap:9px}
.trust b{color:#fff;font-weight:600}
/* Scrolling ticker variant (homepage trust bar). */
.trust-scroll{overflow:hidden}
.trust-marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.trust-track{display:flex;width:max-content;animation:trust-scroll 34s linear infinite}
.trust-scroll:hover .trust-track{animation-play-state:paused}
.trust-group{display:flex;align-items:center;gap:9px 40px;padding:14px 40px 14px 0;font-size:14px;white-space:nowrap;flex:none}
.trust-group .i{white-space:nowrap;flex:none}
.trust .stars{color:#ffc53d;letter-spacing:1px;font-size:13px}
@keyframes trust-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.trust-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.trust-group[aria-hidden=true]{display:none}}

/* ---------- category tiles ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.cat-tile{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 14px;text-align:center;transition:.15s;display:block}
.cat-tile:hover{border-color:var(--navy);box-shadow:var(--shadow-sm);text-decoration:none;transform:translateY(-2px)}
.cat-tile .ic{width:56px;height:56px;margin:0 auto 10px;border-radius:14px;background:var(--bg-2);display:grid;place-items:center;color:var(--navy)}
.cat-tile .ic svg{width:30px;height:30px;stroke:currentColor;fill:none;stroke-width:1.6}
.cat-tile .n{font-family:var(--sans);font-weight:700;color:var(--ink);font-size:14.5px}
.cat-tile .c{font-size:12.5px;color:var(--muted);margin-top:2px}

/* ---------- product cards / grid (detailed horizontal tiles) ---------- */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;align-items:stretch}
.pcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:172px 1fr;transition:box-shadow .15s,border-color .15s}
.pcard:hover{box-shadow:var(--shadow);border-color:var(--line-2)}
.pcard a{text-decoration:none;color:inherit}
.pcard-media{position:relative;display:flex;align-items:stretch;justify-content:center;background:#fff;border-right:1px solid var(--line-2);padding:5px}
.pcard .imgw{width:100%;height:100%;min-height:210px;position:relative}
.pcard .imgw img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pcard-cond{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.pcard-cond::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:6px;vertical-align:middle}
.pcard .sold{position:absolute;inset:0;background:rgba(255,255,255,.7);display:grid;place-items:center;z-index:3}
.pcard .sold span{background:var(--ink);color:#fff;font-family:var(--sans);font-weight:700;font-size:12px;padding:6px 14px;border-radius:999px}
.pcard-body{display:flex;flex-direction:column;padding:14px 16px;min-width:0}
.pcard-info{flex:1 1 auto;min-width:0}
.pcard .brand{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent)}
.pcard .name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--sans);font-weight:700;color:var(--ink);font-size:13.5px;line-height:1.32;margin:3px 0 0}
.pcard .name:hover{color:var(--navy)}
.pcard .model{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.pcard .oneof{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;font-weight:700;color:var(--sale);margin-top:6px}
.oneof-dot{width:7px;height:7px;border-radius:50%;background:var(--sale);flex:0 0 auto}
.pcard-buy{margin-top:12px}
.pcard .price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.pcard .now{font-family:var(--sans);font-weight:800;color:var(--ink);font-size:19px;font-variant-numeric:tabular-nums}
.pcard .was{color:var(--muted);text-decoration:line-through;font-size:12.5px}
.pcard .save{display:inline-block;margin-top:6px;background:#e7f6ec;color:#1a7a3d;font-family:var(--sans);font-weight:700;font-size:11.5px;padding:3px 8px;border-radius:6px}
.pcard-actions{margin-top:11px}
.pcard-actions .btn{width:100%;font-size:13px;padding:9px 14px}
.pcard-compare{display:inline-flex;align-items:center;margin-top:9px;font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.01em;color:var(--muted);background:none;border:0;padding:2px 0;cursor:pointer;transition:color .15s}
.pcard-compare:hover{color:var(--navy)}
.pcard-compare.is-on{color:var(--navy)}
.btn-sm{font-size:14px;padding:9px 18px}
.btn.is-added{background:#1a7a3d;border-color:#1a7a3d;color:#fff}
/* Single-column variant (explicit list view). */
.pgrid.list{grid-template-columns:1fr}
.stars{display:inline-flex;gap:1px;color:var(--star)}
.stars svg{width:14px;height:14px;fill:currentColor}

/* ---------- filters bar ---------- */
.shopbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;margin-bottom:22px}
.shopbar-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chip-sel{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font:inherit;font-size:14px;color:var(--ink);cursor:pointer;text-align:center;text-decoration:none}
/* Only real <select> filters get the dropdown chevron + extra room for it.
   Link/label chips (brand pills, etc.) reuse .chip-sel without the arrow. */
select.chip-sel{padding-left:30px;padding-right:30px;text-align-last:center;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23334' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 11px center}
a.chip-sel:hover{border-color:var(--navy);text-decoration:none}
.chip-sel:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,59,128,.12)}
.chip-clear{border:0;background:none;color:var(--navy);font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:9px 6px}
.chip-clear:hover{color:var(--accent)}
.chip-check{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 15px;user-select:none;white-space:nowrap}
.chip-check input{width:16px;height:16px;accent-color:var(--navy);cursor:pointer;margin:0}
.chip-check:hover{border-color:var(--navy)}
.shopbar .count{color:var(--muted);font-size:14px;font-weight:600;margin-left:auto}
.inv .noresults{text-align:center;color:var(--muted);padding:40px 0}
.linklike{border:0;background:none;color:var(--navy);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;padding:0}

/* ---------- Best Buy-style inventory browser (filter sidebar + grid) ---------- */
.inv-filter-toggle{display:none}
.inv-layout{display:grid;grid-template-columns:238px 1fr;gap:30px;align-items:start}
.inv-side{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 18px 12px}
.inv-side-head{display:flex;align-items:center;justify-content:space-between;padding:14px 0 10px;border-bottom:1px solid var(--line)}
.inv-side-head span{font-family:var(--sans);font-weight:800;font-size:15px;color:var(--ink)}
.inv-clear{border:0;background:none;color:var(--navy);font:inherit;font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:0}
.inv-clear:hover{color:var(--accent)}
.fgroup{padding:14px 0;border-bottom:1px solid var(--line-2)}
.fgroup:last-child{border-bottom:0}
.fgroup h4{font-family:var(--sans);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 9px}
.fscroll{max-height:230px;overflow:auto;margin-right:-6px;padding-right:6px}
.fopt{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:14px;color:var(--ink);cursor:pointer;line-height:1.3}
.fopt input{width:16px;height:16px;accent-color:var(--navy);cursor:pointer;margin:0;flex:none}
.fopt span:first-of-type{flex:1}
.fopt .fct{color:var(--muted);font-size:12.5px;font-variant-numeric:tabular-nums}
.fopt:hover{color:var(--navy)}
.inv-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.inv-bar .count{font-family:var(--sans);font-weight:800;font-size:16px;color:var(--ink)}
.inv-sort{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);font-weight:600;white-space:nowrap}
.inv-bar-right{display:flex;align-items:center;gap:14px}
.inv-view{display:inline-flex;border:1.5px solid var(--line);border-radius:10px;overflow:hidden}
.inv-view-btn{border:0;background:#fff;color:var(--muted);width:38px;height:36px;display:grid;place-items:center;cursor:pointer;transition:.12s}
.inv-view-btn+.inv-view-btn{border-left:1.5px solid var(--line)}
.inv-view-btn:hover{color:var(--navy)}
.inv-view-btn.is-on{background:var(--navy);color:#fff}
/* List view: single column of the same detailed tile, with a larger image. */
.pgrid.list{grid-template-columns:1fr;gap:16px}
.pgrid.list .pcard{grid-template-columns:200px 1fr}
.pgrid.list .now{font-size:21px}
@media(max-width:900px){
  .inv-layout{grid-template-columns:1fr;gap:0}
  .inv-filter-toggle{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:10px 18px;font:inherit;font-weight:700;font-size:14px;color:var(--ink);cursor:pointer;margin-bottom:14px}
  .inv-filter-toggle:hover{border-color:var(--navy)}
  .inv-side{display:none;margin-bottom:18px}
  .inv-side.open{display:block}
}
.layout-2{display:grid;grid-template-columns:250px 1fr;gap:32px;align-items:start}
.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;align-items:start}
.facets{position:sticky;top:calc(var(--header-h) + 12px)}
.facet{border-bottom:1px solid var(--line);padding:14px 0}
.facet h4{font-size:14px;font-family:var(--sans);margin-bottom:10px}
.facet label{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--body);padding:5px 0;cursor:pointer}
.facet input{accent-color:var(--navy)}

/* ---------- single product ---------- */
.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:26px 0 10px}
.pdp-gallery .main{aspect-ratio:1/1;background:#fff;border:1px solid var(--line);border-radius:var(--radius);display:grid;place-items:center;padding:24px;overflow:hidden}
.pdp-gallery .main img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pdp-gallery .thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.pdp-gallery .thumbs img{width:66px;height:66px;object-fit:contain;border:1px solid var(--line);border-radius:9px;padding:5px;background:#fff;cursor:pointer}
.pdp-top{margin:8px 0 20px}
.pdp-top .brandline{font-family:var(--sans);font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:12.5px}
.pdp-top h1{font-size:clamp(23px,3vw,32px);font-weight:800;line-height:1.18;margin:6px 0 0}
.pdp .metaline{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13.5px;margin:6px 0 16px}
.pdp .pricebox{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin:16px 0}
.pdp .pricebox .now{font-family:var(--sans);font-weight:800;font-size:34px;color:var(--ink);font-variant-numeric:tabular-nums}
.pdp .pricebox .was{color:var(--muted);text-decoration:line-through;font-size:18px;margin-left:10px}
.pdp .pricebox .save{display:inline-block;background:var(--sale);color:#fff;font-family:var(--sans);font-weight:700;font-size:13px;padding:4px 11px;border-radius:8px;margin-left:10px}
.cond-note{background:var(--good-bg);border:1px solid #bfe3cd;border-radius:var(--radius-sm);padding:14px 16px;margin:16px 0;font-size:14.5px}
.cond-note .h{font-family:var(--sans);font-weight:700;color:var(--good);display:flex;align-items:center;gap:8px;margin-bottom:4px}
.cond-note-strong{border-width:2px;border-color:var(--good);box-shadow:0 1px 3px rgba(30,122,84,.12)}
.cond-note-strong .h{font-size:16px;margin-bottom:8px}
.cond-badge{display:inline-flex;align-items:center;gap:8px;margin:10px 0 4px;padding:7px 14px;border-radius:999px;background:var(--accent);color:#fff;font-family:var(--sans);font-weight:700;font-size:14px;letter-spacing:.01em}
.cond-badge strong{font-weight:800}
.cond-badge-dot{width:8px;height:8px;border-radius:50%;background:#fff;flex:none;opacity:.9}
.specs{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0}
.specs th,.specs td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line-2)}
.specs th{width:40%;color:var(--muted);font-weight:500}

/* ---------- testimonials ---------- */
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.tcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:12px}
.tcard .stars{margin-bottom:2px}
.tcard p{font-size:15px;color:var(--ink);margin:0;line-height:1.6}
.tcard .who{display:flex;align-items:center;gap:11px;margin-top:auto}
.tcard .av{width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:var(--sans);font-weight:700}
.tcard .who b{font-family:var(--sans);font-size:14.5px;color:var(--ink);display:block}
.tcard .who small{color:var(--muted);font-size:12.5px}
.tcard .av.av-img{background:none;overflow:hidden;padding:0}
.tcard .av-img img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
/* Google review summary header on the reviews page */
.rev-hero{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}
.rev-score{font-family:var(--sans);font-weight:800;font-size:44px;line-height:1;color:var(--ink)}
.rev-hero-meta{display:flex;flex-direction:column;gap:4px}
.rev-hero-meta .stars svg{width:20px;height:20px;fill:var(--star)}
.rev-hero-meta small{color:var(--muted);font-size:13.5px}
.rev-gbtn{margin-left:auto}
@media (max-width:560px){.rev-gbtn{margin-left:0;width:100%;text-align:center}}

/* ---------- FAQ ---------- */
.faq-list{max-width:820px;margin:0 auto}
.qa{border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:12px;overflow:hidden;background:#fff}
.qa>button{width:100%;display:flex;align-items:center;gap:14px;padding:18px 20px;background:none;border:0;font-family:var(--sans);font-weight:600;font-size:16px;color:var(--ink);cursor:pointer;text-align:left}
.qa>button .pm{margin-left:auto;flex:none;width:24px;height:24px;position:relative;transition:.2s}
.qa>button .pm::before,.qa>button .pm::after{content:"";position:absolute;background:var(--navy);border-radius:2px}
.qa>button .pm::before{top:11px;left:3px;right:3px;height:2px}
.qa>button .pm::after{left:11px;top:3px;bottom:3px;width:2px;transition:.2s}
.qa.open>button .pm::after{transform:scaleY(0)}
.qa .a{max-height:0;overflow:hidden;transition:max-height .28s ease}
.qa.open .a{max-height:800px}
.qa .a-in{padding:0 20px 20px;color:var(--body);font-size:15px}

/* ---------- feature cards / value ---------- */
.vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.vcard .ic{width:46px;height:46px;border-radius:12px;background:var(--bg-2);color:var(--navy);display:grid;place-items:center;margin-bottom:12px}
.vcard .ic svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}
.vcard h3,.vcard h4{font-size:16px;margin-bottom:6px}
.vcard p{font-size:14px;color:var(--muted);margin:0}

/* ---------- CTA band ---------- */
.cta-band{background:var(--navy);color:#fff;border-radius:var(--radius);padding:40px;text-align:center}
.cta-band h2{color:#fff;font-size:28px}
.cta-band p{color:#c9dbf3;max-width:52ch;margin:12px auto 22px}

/* ---------- footer ---------- */
.seo-longform{background:var(--bg-2);border-top:1px solid var(--line)}
.seo-longform .wrap{max-width:940px}
.seo-longform h2{font-size:22px;margin:0 0 6px}
.seo-longform p{color:var(--muted);font-size:15px;line-height:1.75;margin:12px 0 0}
.seo-longform p a{color:var(--navy);text-decoration:underline;text-underline-offset:2px}
.seo-longform p a:hover{color:var(--accent)}
.seo-links{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.seo-links-col h3{font-family:var(--sans);font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);margin:0 0 11px}
.seo-links-col ul{list-style:none;margin:0;padding:0}
.seo-links-col li{margin:0 0 8px}
.seo-links-col a{color:var(--navy);font-size:14px;text-decoration:none}
.seo-links-col a:hover{color:var(--accent);text-decoration:underline}
@media(max-width:640px){.seo-links{grid-template-columns:1fr 1fr;gap:18px}}
@media(max-width:400px){.seo-links{grid-template-columns:1fr}}
.site-footer{background:var(--navy-900);color:#afc2dd;margin-top:60px;font-size:14px}
.site-footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding:46px 0 30px}
.site-footer h3,.site-footer h5{color:#fff;font-family:var(--sans);font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.site-footer a{color:#afc2dd;display:block;padding:5px 0}
.site-footer a:hover{color:#fff}
.site-footer .brand{color:#fff}
.site-footer .brand .footer-logo{height:58px;width:auto;display:block}
.site-footer .brand .logo{background:#fff;color:var(--navy)}
.site-footer .bottom{border-top:1px solid rgba(255,255,255,.12);padding:16px 0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#8ba4c6;font-size:13px}
.site-footer .bottom .credit a{display:inline;color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.site-footer .bottom .credit a:hover{color:var(--accent)}

/* ---------- forms ---------- */
.field{margin-bottom:16px}
.field label{display:block;font-family:var(--sans);font-weight:600;font-size:14px;color:var(--ink);margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit;font-size:15px;color:var(--ink);background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy);outline:2px solid rgba(0,59,128,.12)}
.field .req{color:var(--sale)}
/* ---------- Contact page ---------- */
.contact-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:26px;align-items:start}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:28px 26px}
.contact-card h2{font-size:22px;margin:0 0 4px}
.contact-sub{color:var(--muted);font-size:14.5px;line-height:1.5;margin:0 0 20px}
.contact-info-card{background:var(--bg-2)}
.contact-info-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.contact-info-list li{display:flex;gap:13px;align-items:flex-start}
.contact-info-list .ic{flex:none;width:40px;height:40px;border-radius:11px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--navy)}
.contact-info-list .ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-info-list b{display:block;font-family:var(--sans);font-size:13px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:3px;font-weight:700}
.contact-info-list a,.contact-info-list span>br+*{color:var(--body)}
.contact-info-list li>span{font-size:15px;color:var(--ink);line-height:1.5}
.contact-info-list a{color:var(--navy)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formok{margin:14px 0 0;font-size:14px;line-height:1.5}
.formok.is-ok{background:var(--good-bg);color:var(--good);padding:12px 14px;border-radius:10px}
.formok.is-err{background:var(--sale-bg);color:var(--sale);padding:12px 14px;border-radius:10px}
.contact-alt{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
.contact-map{margin-top:26px;border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* ---------- product sticky mobile bar ---------- */
.pdp-sticky{display:none}
@media(max-width:800px){
  .pdp-sticky{display:block;position:fixed;left:0;right:0;bottom:0;z-index:75;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 20px rgba(16,32,55,.12);padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
  .pdp-sticky-in{display:flex;align-items:center;gap:12px}
  .pdp-sticky-info{display:flex;flex-direction:column;min-width:0;flex:1}
  .pdp-sticky .s-name{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pdp-sticky .s-price{font-family:var(--sans);font-weight:800;color:var(--ink);font-size:17px}
  .pdp-sticky .s-price small{color:var(--sale);font-size:12px;font-weight:700}
  .pdp-sticky .btn{flex:none;padding:12px 20px}
  /* keep the floating launchers clear of the sticky bar, ON PRODUCT PAGES ONLY
     (the sticky bar exists only there). Scoping this stops the chat button from
     being pushed up into the WhatsApp button on every other mobile page. */
  body.ba-view-product #baChatBtn{bottom:84px !important}
  body.ba-view-product .ba-wa-btn{bottom:158px}
  body.ba-view-product .totop{bottom:224px}
  /* bottom clearance so the sticky bar never covers the last content/footer */
  body.ba-view-product{padding-bottom:72px}
}

/* ---------- to-top ---------- */
.totop{position:fixed;right:20px;bottom:176px;width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff;border:0;display:none;place-items:center;cursor:pointer;box-shadow:var(--shadow);z-index:55}
/* ---------- WhatsApp float (right side, clearly above the chat bubble) ---------- */
.ba-wa-btn{position:fixed;right:20px;bottom:106px;width:56px;height:56px;border-radius:50%;background:#128C7E;color:#fff;display:grid;place-items:center;box-shadow:var(--shadow);z-index:69;transition:transform .15s,filter .15s;text-decoration:none}
.ba-wa-btn:hover{transform:translateY(-2px);filter:brightness(1.05);color:#fff}
.ba-wa-btn svg{display:block}
@media (max-width:520px){.ba-wa-btn{width:52px;height:52px;right:20px;bottom:104px}.totop{bottom:170px}}
.totop.on{display:grid}
.totop svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .hero-in{grid-template-columns:1fr;gap:24px}
  .pdp{grid-template-columns:1fr;gap:24px}
  .layout-2{grid-template-columns:1fr}
  .facets{position:static}
  .site-footer .cols{grid-template-columns:1fr 1fr;gap:26px}
}
@media(max-width:800px){
  .navbar{display:none}
  .menu-toggle{display:grid}
  .hdr-search{display:none}
  .hdr-tel small{display:none}
  .mega{display:none!important}
}
@media(max-width:620px){
  /* Keep the header on one line: show the phone as a tap-to-call icon only,
     and the real logo mark on its own (it already reads "BA"). */
  .hdr{gap:10px}
  .hdr-tel{padding:0}
  .hdr-tel span{display:none}
  .brand-text{display:none}
  .logo-mark{height:38px}
  .brand .logo-full{height:52px}
}
@media(max-width:560px){
  .wrap{padding:0 26px}                 /* more room from the edges */
  .ubar{font-size:11.5px}
  .ubar .wrap{height:auto;min-height:0;padding-top:6px;padding-bottom:6px;gap:6px 14px;overflow:visible;line-height:1.35}
  .hero-in{padding-top:44px;padding-bottom:34px}
  .hero h1{font-size:clamp(27px,7.5vw,34px)}
  .hero .cta-row{margin-top:22px}
  .hero .cta-row .btn{flex:1}
  .section{padding:40px 0}
  .cta-band{padding:28px 22px}
  .pdp .pricebox .now{font-size:28px}
  /* One detailed horizontal tile per row on phones (image left, details right). */
  .pgrid,.pgrid.list{grid-template-columns:1fr;gap:12px}
  .pcard,.pgrid.list .pcard{grid-template-columns:158px 1fr}
  .pcard-media{padding:10px}
  .pcard-body{padding:12px 13px}
  .pcard .name{font-size:13px}
  .pcard .now,.pgrid.list .now{font-size:18px}
  .pcard .model{font-size:11.5px}
  /* Filters: a real grid of equal-size bubbles (not a wrapping flex row). */
  .shopbar{padding:14px;flex-direction:column;align-items:stretch;gap:11px}
  .shopbar .count{width:auto;margin:0;order:-1}
  .shopbar-filters{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .shopbar-filters .chip-sel{width:100%;padding:11px 26px;font-size:14px}
  .chip-check{grid-column:1 / -1;width:100%;justify-content:center}
  .chip-clear{grid-column:1 / -1;width:100%;text-align:center;padding:6px 0 2px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}

/* ==========================================================================
   Internal-link "Explore more" block (v3.39) - dense interlinking across
   category, brand, city, and guide pages for local SEO.
   ========================================================================== */
.ba-interlink{margin-top:40px;padding:28px 0 4px;border-top:1px solid var(--line)}
.ba-interlink-h{font-size:20px;color:var(--ink);margin:0 0 18px}
.ba-interlink-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 28px}
.ba-interlink-col h3{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.ba-interlink-col ul{list-style:none;margin:0;padding:0}
.ba-interlink-col li{margin:0 0 7px;line-height:1.35}
.ba-interlink-col a{color:var(--body);font-size:14px;text-decoration:none;border-bottom:1px solid transparent;transition:.15s}
.ba-interlink-col a:hover{color:var(--navy);border-bottom-color:var(--navy)}
@media(max-width:860px){.ba-interlink-cols{grid-template-columns:repeat(2,1fr)}}
@media(max-width:460px){.ba-interlink-cols{grid-template-columns:1fr}}

/* ---------- persistent mobile header search (v3.41) ---------- */
/* Hidden on desktop (the inline .hdr-search is used there); shown as an always
   visible full-width bar in the sticky header on phones and small tablets. */
.hdr-msearch-row{display:none}
.hdr-msearch{display:flex;align-items:center;gap:8px;height:44px;background:var(--bg-2);border:1.5px solid var(--line);border-radius:12px;padding:0 6px 0 12px}
.hdr-msearch svg{width:18px;height:18px;color:var(--muted);flex:0 0 auto}
.hdr-msearch input{flex:1;min-width:0;border:0;background:none;font:inherit;font-size:16px;color:var(--ink);outline:none}
.hdr-msearch button{flex:0 0 auto;border:0;background:var(--navy);color:#fff;width:36px;height:36px;border-radius:9px;display:grid;place-items:center;cursor:pointer}
.hdr-msearch:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,59,128,.14)}
@media(max-width:800px){
  .hdr-msearch-row{display:block;padding:8px 26px 10px;background:#fff;border-top:1px solid var(--line-2)}
}

/* ==== Services: extended warranty + installation ========================== */
.ew-grid{display:grid;grid-template-columns:340px 1fr;gap:38px;align-items:start}
.ew-offer{background:var(--navy);color:#fff;border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow);position:sticky;top:calc(var(--header-h) + 16px)}
.ew-offer h2,.ew-offer h3,.ew-offer h4{color:#fff}
.ew-badge{display:inline-block;background:var(--accent);color:#fff;font-family:var(--sans);font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.ew-price{display:flex;align-items:flex-start;gap:2px;margin:14px 0 2px;font-family:var(--sans);line-height:1;color:#fff}
.ew-price .cur{font-size:1.7rem;font-weight:700;margin-top:8px}
.ew-price .amt{font-size:4rem;font-weight:800;letter-spacing:-.03em}
.ew-price-sub{color:rgba(255,255,255,.82);margin:0 0 18px;font-size:.98rem}
.ew-ticks{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:11px}
.ew-ticks li{position:relative;padding-left:28px;color:rgba(255,255,255,.92);font-size:.95rem;line-height:1.45}
.ew-ticks li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.16);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:12px}
.ew-copy h2{margin:0 0 12px}
.ew-copy h2:not(:first-child){margin-top:34px}
.ew-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:6px 0 4px}
.ew-col{border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;background:var(--bg)}
.ew-col.is-featured{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy) inset}
.ew-col h3{font-size:1.06rem;margin:0 0 12px}
.ew-col ul{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:9px}
.ew-col li{position:relative;padding-left:22px;font-size:.94rem;color:var(--body);line-height:1.4}
.ew-col li::before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.ew-col a{font-family:var(--sans);font-weight:600;font-size:.9rem}

/* Flat-rate price table (installation) */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}
.price-table{width:100%;border-collapse:collapse;min-width:560px;font-size:.97rem}
.price-table thead th{background:var(--bg-2);text-align:left;font-family:var(--sans);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:13px 18px;border-bottom:1px solid var(--line)}
.price-table tbody tr+tr th,.price-table tbody tr+tr td{border-top:1px solid var(--line-2)}
.price-table th[scope=row]{text-align:left;font-family:var(--sans);font-weight:700;color:var(--ink);padding:14px 18px;white-space:nowrap}
.price-table .price-cell{font-family:var(--sans);font-weight:800;color:var(--navy);font-size:1.15rem;padding:14px 18px;white-space:nowrap}
.price-table .note-cell{color:var(--muted);padding:14px 18px;line-height:1.45}
.price-table tbody tr:hover{background:var(--bg-2)}

@media(max-width:860px){
  .ew-grid{grid-template-columns:1fr;gap:26px}
  .ew-offer{position:static;order:-1}
}
@media(max-width:600px){
  .ew-compare{grid-template-columns:1fr}
  .ew-price .amt{font-size:3.2rem}
}

/* ==== Add-on services: product page + cart (global) ====================== */
.pdp-addons{margin:18px 0 4px}
.pdp-addons-h{display:block;font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.addon-list{display:flex;flex-direction:column;gap:10px}
.addon-opt{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--bg);transition:border-color .15s,background .15s;overflow:hidden}
.addon-opt:has(.addon-cb:checked){border-color:var(--navy);background:#F3F7FC}
.addon-hit{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:13px;padding:14px 16px;cursor:pointer}
.addon-hit input{position:absolute;opacity:0;width:0;height:0}
.addon-check{width:24px;height:24px;border:2px solid #C9D3E0;border-radius:7px;background:#fff;position:relative;transition:.15s;flex:none}
.addon-cb:checked + .addon-check{background:var(--navy);border-color:var(--navy)}
.addon-cb:checked + .addon-check::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.addon-cb:focus-visible + .addon-check{box-shadow:0 0 0 3px rgba(0,59,128,.28)}
.addon-main{min-width:0;display:flex;flex-direction:column;gap:2px}
.addon-label{font-family:var(--sans);font-weight:700;color:var(--ink);font-size:15.5px;line-height:1.25}
.addon-sub{color:var(--muted);font-size:13px;line-height:1.35}
.addon-price{font-family:var(--sans);font-weight:800;color:var(--navy);font-size:16px;white-space:nowrap;font-variant-numeric:tabular-nums}
.addon-link{display:block;padding:0 16px 12px 53px;margin-top:-4px;font-family:var(--sans);font-size:13px;font-weight:600;color:var(--navy)}
.addon-link:hover{text-decoration:underline}

/* Cart line add-ons reuse the same look, a touch tighter */
.cart-addons{margin-top:12px;border-top:1px dashed var(--line);padding-top:12px;display:flex;flex-direction:column;gap:8px}
.cart-addons-h{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cart-addon{border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);transition:border-color .15s,background .15s;overflow:hidden}
.cart-addon:has(.cart-addon-cb:checked){border-color:var(--navy);background:#F3F7FC}
.cart-addon-hit{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:11px;padding:11px 13px;cursor:pointer}
.cart-addon-hit input{position:absolute;opacity:0;width:0;height:0}
.cart-addon-check{width:22px;height:22px;border:2px solid #C9D3E0;border-radius:6px;background:#fff;position:relative;transition:.15s;flex:none}
.cart-addon-cb:checked + .cart-addon-check{background:var(--navy);border-color:var(--navy)}
.cart-addon-cb:checked + .cart-addon-check::after{content:"";position:absolute;left:6px;top:2px;width:6px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.cart-addon-cb:focus-visible + .cart-addon-check{box-shadow:0 0 0 3px rgba(0,59,128,.28)}
.cart-addon-txt{min-width:0;display:flex;flex-direction:column;gap:1px}
.cart-addon-label{font-family:var(--sans);font-weight:700;color:var(--ink);font-size:14.5px}
.cart-addon-sub{color:var(--muted);font-size:12px;line-height:1.3}
.cart-addon-price{font-family:var(--sans);font-weight:800;color:var(--navy);font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}
.cart-addon .addon-link{padding:0 13px 10px 46px}

/* Cart summary total row + checkout/order add-on tags */
.cart-summary-total{border-top:1px solid var(--line);margin-top:4px;padding-top:12px}
.cart-summary-total .cart-summary-val{font-size:24px}
.cart-summary-row + .cart-summary-row{margin-top:8px}
/* Checkout summary: each add-on as its own clean line under the item */
.co-line-group{display:flex;flex-direction:column}
.co-addon-line{display:flex;align-items:baseline;gap:10px;padding:7px 0 7px 64px;margin-top:7px;border-top:1px solid var(--line-2);font-size:13px}
.co-addon-line:first-of-type{margin-top:9px}
.co-addon-name{color:var(--muted);flex:1;min-width:0}
.co-addon-name::before{content:"+ ";color:var(--faint)}
.co-addon-amt{font-family:var(--sans);font-weight:600;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.co-addon-remove{flex:none;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:var(--bg-3);color:var(--muted);font-size:14px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.15s}
.co-addon-remove:hover{background:var(--sale-bg);color:var(--sale)}
.co-addon-remove:focus-visible{outline:2px solid var(--navy);outline-offset:1px}
.order-line-addon{display:block;font-size:12.5px;color:var(--navy);margin-top:2px}
.order-line-addon b{font-weight:700}

/* Compact condition note on the product page (replaces the old boxed callout) */
.cond-line{font-size:13.5px;line-height:1.55;color:var(--muted);margin:14px 0 2px;padding-left:12px;border-left:3px solid var(--line)}
.cond-line strong{color:var(--ink)}

/* ---------- bundles / packages (storefront) ---------- */
.pcard-bundle{position:absolute;top:8px;left:8px;background:#003B80;color:#fff;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:6px;z-index:2}
.ba-bundle-tag{display:inline-flex;align-items:center;gap:6px;background:#eef4fb;color:#003B80;border:1px solid #cfe0f2;font-weight:700;font-size:13px;padding:6px 12px;border-radius:999px;margin:0 0 10px}
.ba-bundle-included{margin:18px 0;border:1px solid #e4e9f0;border-radius:12px;padding:16px 18px;background:#fafbfd}
.ba-bundle-included h2{margin:0 0 12px;font-size:17px}
.ba-binc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ba-binc-item{display:flex;align-items:center;gap:12px}
.ba-binc-img{width:52px;height:52px;flex:0 0 52px;border:1px solid #e4e9f0;border-radius:8px;overflow:hidden;background:#fff}
.ba-binc-img img{width:100%;height:100%;object-fit:contain;display:block}
.ba-binc-name{flex:1;font-weight:600;color:#16202b}
.ba-binc-price{color:#5a6675;font-weight:600}
.ba-binc-note{margin:12px 0 0;font-size:13px;color:#5a6675}

/* bundle "what's included" — per-product blocks with specs (v4.4.3) */
.ba-bundle-included .ba-binc-item{display:block;border:1px solid #e4e9f0;border-radius:10px;background:#fff;padding:14px 16px;margin:0 0 12px}
.ba-binc-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.ba-binc-head .ba-binc-name{font-weight:700;font-size:15.5px;color:#16202b}
.ba-binc-model{font-size:12.5px;color:#5a6675}
.ba-binc-cond{font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#003B80;background:#eaf1fb;border:1px solid #d4e2f5;border-radius:20px;padding:2px 10px}
.ba-binc-desc{margin:4px 0 10px;font-size:13.5px;line-height:1.55;color:#3a4653}
.ba-binc-specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 18px}
.ba-binc-spec{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:3px 0;border-bottom:1px dotted #e4e9f0}
.ba-binc-spec span:first-child{color:#5a6675}
.ba-binc-spec span:last-child{color:#16202b;font-weight:600;text-align:right}
/* Bundle side-by-side spec comparison (product page + builder preview) */
.bspx-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 4px}
.bspx{width:100%;border-collapse:collapse;font-size:14px;min-width:420px}
.bspx thead th{background:#003B80;color:#fff;text-align:left;padding:10px 12px;vertical-align:top;border:1px solid #002d63}
.bspx thead th.bspx-corner{background:#16202b;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.bspx .bspx-make{display:block;font-weight:800;font-size:13.5px;line-height:1.2}
.bspx .bspx-type{display:block;font-weight:500;font-size:11.5px;opacity:.88;margin-top:2px;text-transform:uppercase;letter-spacing:.04em}
.bspx tbody th{text-align:left;font-weight:700;color:#16202b;background:#f4f7fb;padding:8px 12px;border:1px solid #e4e9f0;white-space:nowrap}
.bspx tbody td{padding:8px 12px;border:1px solid #e4e9f0;color:#3a4653;vertical-align:top}
.bspx tbody tr:nth-child(even) td{background:#fafcff}
.bspx .bspx-na{color:#aab6c4}
/* Editable variant used in the listing builder */
.bspx-edit tbody td{padding:5px 6px}
.bspx-edit .bspx-labcell{background:#f4f7fb;padding:5px 6px}
.bspx-edit tbody tr:nth-child(even) td{background:#fff}
.bspx-edit input{width:100%;box-sizing:border-box;border:1px solid #d4dde8;border-radius:6px;padding:6px 8px;font:inherit;font-size:13.5px;color:#16202b;background:#fff}
.bspx-edit input:focus{outline:none;border-color:#003B80;box-shadow:0 0 0 2px rgba(0,59,128,.12)}
.bspx-edit .bspx-label{font-weight:700}
.bspx-edit .bspx-rmcell{width:36px;text-align:center;border:1px solid #e4e9f0}
.bspx-edit thead .bspx-rmcell{border:1px solid #002d63;background:#003B80}
.bspx-edit .bspx-x{border:none;background:transparent;color:#b04a4a;font-size:18px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:6px}
.bspx-edit .bspx-x:hover{background:#fbeaea}
.bspx-edit .bspx-foot{padding:8px 10px;border:1px solid #e4e9f0;background:#fafcff;text-align:left}
