/* ============================================================
 * A2Zengines4sale — Global Stylesheet (design-system v2)
 * House tokens: brand #E25C1E · cream #F7F2E9 · ink #1F1F1F
 * Font: Inter (Google Fonts) · radius: card 6 / panel 16 / pill 999
 * ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800&display=swap');
:root{
  --brand:#E25C1E;--brand-d:#c44e16;--brand-soft:#fdeee4;
  --green:#2e7d32;--green-d:#1b5e20;--gold:#F5A623;
  --ink:#1F1F1F;--ink-2:#33302b;--gray:#6b5b4a;--gray-2:#9c8f7d;
  --cream:#F7F2E9;--cream-d:#efe6d6;--white:#ffffff;--line:#e8e0d2;
  --blue:#1a73e8;
  --radius-card:6px;--radius-panel:16px;--radius-pill:999px;
  --shadow:0 6px 18px rgba(31,31,31,.08);--shadow-lg:0 14px 34px rgba(31,31,31,.14);
  --container:1120px;--gutter:16px;
  --fs-h1:clamp(28px,3.4vw,40px);--fs-h2:clamp(20px,2.4vw,27px);--fs-h3:18px;
  --fs-body:16px;--fs-sm:14px;--fs-mini:12.5px;
  --lh:1.55;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;font-size:var(--fs-body);line-height:var(--lh);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
h1{font-size:var(--fs-h1);line-height:1.15;font-weight:800;letter-spacing:-.01em;margin:0 0 10px}
h2{font-size:var(--fs-h2);line-height:1.22;font-weight:800;margin:0 0 10px}
h3{font-size:var(--fs-h3);line-height:1.3;font-weight:700;margin:0 0 8px}
p{margin:0 0 10px}
.wrap{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
.answer{font-size:15.5px;color:#3d372f;max-width:880px}
.mini{font-size:var(--fs-mini);color:var(--gray)}
section{padding:34px 0}
@media(max-width:640px){section{padding:24px 0}}
.btn{display:inline-block;padding:13px 24px;border-radius:var(--radius-pill);background:var(--brand);color:#fff!important;text-decoration:none!important;font-weight:800;font-size:15px;border:none;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--brand-d)}
.btn-sm{padding:9px 18px;font-size:14px}
.btn-ghost{background:transparent;border:2px solid var(--brand);color:var(--brand)!important}
.btn-ghost:hover{background:var(--brand-soft)}
.badge{display:inline-block;font-size:11px;font-weight:800;border-radius:var(--radius-pill);padding:3px 10px}
/* --- freight banner --- */
.freight-banner{position:sticky;top:0;z-index:60;background:var(--brand);color:#fff;font-weight:700;font-size:13.5px;padding:10px 16px;text-align:center}
.freight-banner a{color:#fff;text-decoration:underline}
.fb-phone{display:none}@media(min-width:768px){.fb-phone{display:inline}}
/* --- header / nav --- */
.site-head{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.head-inner{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px;position:relative}
.lockup-img img{height:38px;display:block}
.main-nav{display:flex;align-items:center;gap:4px;flex:1}
.main-nav>a,.nav-dd-btn{padding:9px 13px;border-radius:8px;color:var(--ink);font-weight:600;font-size:14.5px;text-decoration:none!important}
.main-nav>a:hover,.nav-dd-btn:hover{background:var(--cream);color:var(--brand)}
.nav-dd{position:relative}
.nav-dd-btn{background:none;border:none;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:4px}
.nav-dd-btn::after{content:'▾';font-size:11px;color:var(--gray)}
.nav-dd-menu{display:none;position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-lg);padding:8px;z-index:80;grid-template-columns:1fr 1fr;gap:2px}
.nav-dd:hover .nav-dd-menu,.nav-dd.open .nav-dd-menu{display:grid}
.nav-dd-menu a{padding:8px 10px;border-radius:6px;color:var(--ink);font-size:13.5px;font-weight:600;text-decoration:none!important;white-space:nowrap}
.nav-dd-menu a:hover{background:var(--cream);color:var(--brand)}
.head-cta{margin-left:auto}
.head-cta .btn{white-space:nowrap}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px}
.hamburger span{display:block;width:24px;height:3px;background:var(--ink);border-radius:2px;margin:5px 0}
@media(max-width:960px){
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);flex-direction:column;align-items:stretch;padding:10px;gap:2px}
  .main-nav.open{display:flex}
  .nav-dd-menu{position:static;box-shadow:none;border:none;grid-template-columns:1fr;padding:4px 0 4px 12px}
  .nav-dd:hover .nav-dd-menu{display:none}.nav-dd.open .nav-dd-menu{display:grid}
  .hamburger{display:block}
  .head-cta{display:none}
}
/* --- hero --- */
.hero{background:linear-gradient(135deg,#fff,#fdf6ef);border-bottom:1px solid var(--line);padding:38px 0 28px}
.hero.hero-bg{position:relative;overflow:hidden;background:var(--ink);border-bottom:none}
.hero-bg .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:block}
.hero-bg .hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(31,31,31,.78),rgba(31,31,31,.45) 55%,rgba(31,31,31,.28));z-index:1}
.hero-bg .wrap{position:relative;z-index:2;padding-top:48px;padding-bottom:48px}
.hero-bg h1{color:#fff}
.hero-bg .answer{color:#f2ece0;max-width:760px}
.hero-bg .eyebrow{color:var(--gold)}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--gray);margin-bottom:6px}
.hero-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:7fr 5fr}}
.hero-img{width:100%;border-radius:var(--radius-panel);display:block;box-shadow:var(--shadow);background:linear-gradient(135deg,var(--brand-soft),#fff);min-height:280px;object-fit:cover}
.hero-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
/* --- search widget --- */
.searchbar{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr auto;gap:8px;background:#fff;padding:12px;border-radius:var(--radius-panel);box-shadow:var(--shadow-lg);margin-top:14px;border:1px solid var(--line)}
.searchbar select,.searchbar input{padding:10px;border:2px solid var(--line);border-radius:9px;font-size:14px;background:#fff;color:var(--ink);font-family:inherit}
.searchbar select:focus,.searchbar input:focus{outline:none;border-color:var(--brand)}
@media(max-width:900px){.searchbar{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.searchbar{grid-template-columns:1fr}}
/* --- trust / feature icons (stroke-only, no blobs) --- */
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}
@media(max-width:760px){.trust-strip{grid-template-columns:1fr}}
.trust-strip .ts{display:flex;gap:12px;align-items:center;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:14px;font-size:13.5px;font-weight:600}
.trust-strip .ts svg{width:30px;height:30px;flex:0 0 auto;stroke:var(--brand);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.trust-strip .ts small{display:block;font-weight:400;color:var(--gray);font-size:12px}
.feat-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
@media(max-width:640px){.feat-icons{grid-template-columns:1fr}}
.feat-icons .fi{background:rgba(255,255,255,.96);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:14px;text-align:center;font-size:12.5px;font-weight:600}
.feat-icons .fi svg{width:28px;height:28px;stroke:var(--brand);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px}
.trust-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}
@media(min-width:900px){.trust-tiles{grid-template-columns:repeat(4,1fr)}}
.ttile{background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:14px;font-size:13px}
.ttile b{display:block;margin-bottom:4px}
.ttile svg{width:24px;height:24px;stroke:var(--brand);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px}
/* --- code cards grid --- */
.code-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:1024px){.code-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.code-grid{grid-template-columns:1fr}}
.code-card{position:relative;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:16px;border:2px solid transparent;transition:transform .15s,border-color .15s;display:block;text-decoration:none!important;color:var(--ink)}
.code-card:hover{border-color:var(--brand);transform:scale(1.03)}
.code-card .cc-badge{position:absolute;top:8px;right:8px;font-size:10px;font-weight:700;padding:3px 7px;border-radius:999px;color:#fff}
.code-card .cc-code{font-size:18px;font-weight:800;color:var(--ink)}
.code-card .cc-fit{font-size:13px;color:var(--gray);margin:2px 0 8px}
.code-card .cc-used{font-size:16px;font-weight:800;color:var(--brand)}
.code-card .cc-recon{font-size:14px;font-weight:700;color:var(--ink);margin-top:2px}
.code-card .cc-market{font-size:13px;color:var(--gray-2);text-decoration:line-through;margin-top:4px}
.code-card .cc-view{font-size:13px;font-weight:700;color:var(--brand);margin-top:6px}
/* --- makes grid --- */
.mk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
@media(max-width:1100px){.mk-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:860px){.mk-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:560px){.mk-grid{grid-template-columns:repeat(2,1fr)}}
.mk-card{position:relative;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:16px 10px;text-align:center;text-decoration:none!important;color:var(--ink);border:2px solid transparent;transition:transform .15s,border-color .15s;display:flex;flex-direction:column;align-items:center;gap:6px}
.mk-card:hover{border-color:var(--brand);transform:scale(1.03)}
.mk-badge{position:absolute;top:8px;right:8px;font-size:9.5px;font-weight:700;padding:3px 6px;border-radius:999px;color:#fff}
.mk-in{background:var(--green)}.mk-quote{background:var(--blue)}
.mk-logo{height:70px;width:auto;max-width:110px;object-fit:contain;filter:grayscale(1);opacity:.85;transition:.2s}
.mk-card:hover .mk-logo{filter:grayscale(0);opacity:1}
.mk-logo-fallback{width:70px;height:70px;border-radius:8px;background:var(--brand-soft);color:var(--brand);font-size:28px;font-weight:800;display:flex;align-items:center;justify-content:center}
.mk-name{font-size:13px;font-weight:600}
.mk-divider{font-size:14px;color:var(--gray);margin:22px 0 10px;text-align:center}
.mk-cats{grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto}
.cat-solid svg{width:30px;height:30px;stroke:var(--brand);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* --- listings cards --- */
.listing{display:flex;gap:14px;align-items:center;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:12px;margin-bottom:10px;border:1px solid var(--line)}
.listing img{width:104px;height:70px;object-fit:cover;border-radius:6px;flex:0 0 auto;background:var(--brand-soft)}
.listing .t{font-weight:700;font-size:14px}
.listing .m{font-size:12px;color:var(--gray);margin-top:2px}
.listing .price-col{text-align:right;margin-left:auto;flex:0 0 auto}
.rep-label{font-size:10px;color:var(--gray-2);font-style:italic;display:block;margin-top:2px}
/* --- grid + cards --- */
.grid{display:grid;gap:12px}.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.g2,.g3{grid-template-columns:1fr}}
.card{background:#fff;border-radius:var(--radius-panel);box-shadow:var(--shadow);padding:18px}
/* --- tables --- */
table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow);font-size:14.5px;border:1px solid var(--line)}
th,td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--line)}
th{background:var(--ink);color:#fff;font-size:13px}
tr:last-child td{border-bottom:none}
.price{font-weight:800;color:var(--brand);font-size:16px}
.save{color:var(--green);font-weight:700;font-size:13px}
/* --- FAQ --- */
details{background:#fff;border-radius:10px;box-shadow:var(--shadow);padding:0 16px;margin-bottom:10px;border:1px solid var(--line)}
details summary{cursor:pointer;font-weight:700;padding:13px 0;list-style:none}
details summary::before{content:'+ ';color:var(--brand);font-weight:800}
details[open] summary::before{content:'- '}
details p{padding:0 0 14px;color:#3d372f;font-size:14.5px}
/* --- CTA band --- */
.cta-band{background:linear-gradient(135deg,var(--brand),var(--brand-d));color:#fff;border-radius:var(--radius-panel);padding:18px 20px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:22px 0;box-shadow:var(--shadow)}
.cta-band strong{font-size:16.5px}
.cta-band a{background:#fff;color:var(--brand-d)!important;font-weight:800;padding:10px 18px;border-radius:999px;text-decoration:none;font-size:14.5px}
.ink-band{background:var(--ink);color:#fff;border-radius:var(--radius-panel);padding:26px;text-align:center;margin:22px 0}
.ink-band h2{color:#fff}
.ink-band .sub{color:var(--cream);font-size:14px;margin:4px 0 14px}
.ink-band .btn{background:var(--brand)}
.ink-band .ghost{background:transparent;border:2px solid var(--cream);color:#fff!important;margin-left:8px}
/* --- rail --- */
.rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.rail .mcard{flex:0 0 200px;scroll-snap-align:start;background:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow);padding:14px;text-align:center;text-decoration:none!important;color:var(--ink);border:2px solid transparent;transition:.15s}
.rail .mcard:hover{border-color:var(--brand)}
.mcard .thumb{width:64px;height:64px;border-radius:8px;margin:0 auto 8px;background:var(--brand-soft);color:var(--brand);font-weight:800;font-size:24px;display:flex;align-items:center;justify-content:center}
.mcard .mn{font-size:15px;font-weight:700}
.mcard .mc{font-size:12px;color:var(--gray)}
.mcard .mp{font-size:14px;font-weight:800;color:var(--brand)}
/* --- rel links --- */
.rel a{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;margin:4px 4px 0 0;text-decoration:none!important;font-size:13.5px;font-weight:600;color:var(--ink)}
.rel a:hover{border-color:var(--brand);color:var(--brand)}
.toc a{display:inline-block;margin:3px 6px 3px 0;font-size:13px}
.why li{margin:6px 0;font-size:14.5px}
/* --- mobile callbar --- */
.callbar{display:none}
@media(max-width:767px){
  .callbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -4px 14px rgba(0,0,0,.12)}
  .callbar .cb-call{flex:2;text-align:center;padding:13px;border-radius:999px;background:var(--brand);color:#fff;font-weight:800;font-size:14.5px;text-decoration:none}
  .callbar .cb-ghost{flex:1;text-align:center;padding:13px;border-radius:999px;background:#fff;border:2px solid var(--brand);color:var(--brand);font-weight:800;font-size:14px;text-decoration:none}
}
.phone-svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2;vertical-align:-3px;margin-right:6px}
/* --- footer --- */
.site-foot{background:var(--ink);color:#d8d2c6;margin-top:40px;padding:42px 0 0;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:26px;padding-bottom:30px}
@media(max-width:960px){.foot-grid{grid-template-columns:1fr 1fr;gap:22px}}
@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}
.site-foot a{color:#ffd9c4;text-decoration:none}
.site-foot a:hover{text-decoration:underline}
.foot-col b{display:block;color:#fff;font-size:14px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}
.foot-col a{display:block;padding:3px 0;font-size:13.5px}
.foot-brand img{height:34px;margin-bottom:10px}
.foot-brand p{font-size:13px;color:#b7ae9e;margin-bottom:8px}
.foot-legal{border-top:1px solid rgba(255,255,255,.14);padding:16px 0 22px;font-size:12.5px;color:#a49a88;display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between}
.foot-legal a{color:#cbbfa9}
/* --- misc --- */
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.chip-row span{background:#fff;box-shadow:var(--shadow);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}
/* R13 GP FORM STYLING */
input[type="checkbox"]{width:16px!important;height:16px!important;accent-color:#E25C1E;margin:0 8px 0 0!important;vertical-align:middle;cursor:pointer}
.cta{width:100%;padding:15px 20px;font-size:16.5px;font-weight:800;background:#E25C1E;color:#fff;border:none;border-radius:12px;cursor:pointer;transition:background .15s}
.cta:hover{background:#c94e17}
.banner{background:linear-gradient(90deg,#E25C1E,#c94e17)!important;color:#fff!important}

/* ============================================================
   A2Zengines4sale — ROUND-8 SKIN LAYER (v1.0)
   Loads AFTER style.css — Phase-1 look on existing classes.
   1) Typography 700/600 · 2) Spacing+ · 3) Card hover lift
   4) Hero consistency dark treatment · 5) Brand tokens #E25C1E
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --brand: #E25C1E; --brandd: #c44e16; --brandsoft: #fdeee4;
  --cream: #F7F2E9; --ink: #1F1F1F;
  --r8-shadow: 0 6px 18px rgba(31,31,31,.08);
  --r8-shadow-lg: 0 14px 34px rgba(31,31,31,.14);
  --r8-radius: 14px;
}

html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, -apple-system, sans-serif; background: #FAF7F1; }
h1, h2, h3 { font-family: 'Inter', system-ui, sans-serif; }
h1 { font-weight: 700; letter-spacing: -0.02em; line-height: 1.12; }
h2 { font-weight: 700; letter-spacing: -0.015em; }
h3 { font-weight: 600; }
p, li, td, th, a, span, div { font-family: 'Inter', system-ui, sans-serif; }

/* ---- Spacing: sections breathe ---- */
section { padding-top: 44px; padding-bottom: 44px; }
.wrap { max-width: 1180px; }
.answer { line-height: 1.65; }

/* ---- Header/nav polish ---- */
.site-head { background: rgba(255,255,255,.96); backdrop-filter: blur(8px); border-bottom: 1px solid rgba(31,31,31,.08); box-shadow: 0 1px 0 rgba(31,31,31,.04); }
.site-head .btn, .head-cta .btn { border-radius: 999px; font-weight: 700; }

/* ---- Hero consistency: dark treatment on ALL page types ---- */
.hero { background: linear-gradient(120deg, #1F1F1F 0%, #2b2320 55%, #3a2a20 100%); position: relative; overflow: hidden; }
.hero:not(.hero-bg) { background-attachment: scroll; }
.hero:not(.hero-bg)::before { content: ''; position: absolute; inset: 0; background: radial-gradient(1000px 400px at 85% 10%, rgba(226,92,30,.14), transparent 60%); pointer-events: none; }
.hero:not(.hero-bg) h1, .hero:not(.hero-bg) .answer, .hero:not(.hero-bg) .eyebrow { color: #fff; position: relative; }
.hero:not(.hero-bg) .eyebrow { color: #fdeee4; background: rgba(226,92,30,.85); display: inline-block; padding: 5px 12px; border-radius: 999px; font-weight: 700; letter-spacing: .04em; }
.hero-bg { background: #1F1F1F; }
.hero-bg .hero-overlay { background: linear-gradient(100deg, rgba(31,31,31,.92) 0%, rgba(31,31,31,.72) 45%, rgba(31,31,31,.38) 100%); }
.hero .eyebrow { display: inline-block; padding: 5px 12px; border-radius: 999px; font-weight: 700; letter-spacing: .04em; }
.hero h1 { text-shadow: 0 2px 14px rgba(0,0,0,.35); }
.hero .answer { opacity: .94; }

/* ---- Buttons ---- */
.btn { border-radius: 999px; font-weight: 700; letter-spacing: .01em; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; box-shadow: 0 4px 14px rgba(226,92,30,.28); }
.btn:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(226,92,30,.36); }
.btn-ghost { box-shadow: none; }
.btn-ghost:hover { background: var(--brandsoft); }

/* ---- Cards: radius, shadow, hover lift ---- */
.card, .code-card, .mk-card, .mcard, .listing, .ttile { border-radius: var(--r8-radius); box-shadow: var(--r8-shadow); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.code-card, .mk-card { border: 2px solid transparent; background: #fff; }
.code-card:hover, .mk-card:hover, .card:hover, .ttile:hover { transform: translateY(-4px); box-shadow: var(--r8-shadow-lg); border-color: rgba(226,92,30,.55); }
.mcard:hover { transform: translateY(-3px); box-shadow: var(--r8-shadow-lg); }
.listing { border: 1px solid rgba(31,31,31,.07); }
.listing img { border-radius: 10px; }
.code-card .cc-badge, .mk-badge { border-radius: 999px; font-weight: 700; }
.cc-code { font-weight: 800; letter-spacing: -.01em; }
.cc-view { color: var(--brand); font-weight: 700; }

/* ---- CTA bands ---- */
.cta-band { border-radius: 18px; box-shadow: var(--r8-shadow-lg); background: linear-gradient(100deg, var(--brand) 0%, var(--brandd) 100%); }
.cta-band a { border-radius: 999px; font-weight: 800; }
.ink-band { border-radius: 18px; background: linear-gradient(120deg, var(--ink) 0%, #2b2320 100%); }
.ink-band .btn { border-radius: 999px; }

/* ---- Tables ---- */
table { border-radius: var(--r8-radius); overflow: hidden; box-shadow: var(--r8-shadow); }
th { background: var(--ink); font-weight: 600; }

/* ---- Footer ---- */
.site-foot { background: linear-gradient(180deg, var(--ink) 0%, #191919 100%); }
.foot-col a { transition: color .15s ease; }

/* ---- Details/FAQ ---- */
details { border-radius: 12px; box-shadow: var(--r8-shadow); border: 1px solid rgba(31,31,31,.06); background: #fff; }
details summary { font-weight: 600; }

/* ---- Trust strip / tiles ---- */
.trust-strip .ts, .ttile { background: #fff; }
.ttile b { color: var(--brand); }

/* ---- Callbar (sticky mobile) ---- */
.callbar { background: rgba(255,255,255,.98); backdrop-filter: blur(8px); border-top: 1px solid rgba(31,31,31,.08); }
.callbar .cb-call, .callbar .cb-ghost { border-radius: 999px; font-weight: 800; }

/* ---- Chips ---- */
.chip-row span { border-radius: 999px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.3); }

/* ---- Focus ---- */
:focus-visible { outline: 3px solid rgba(226,92,30,.5); outline-offset: 2px; }

/* ---- R8 nav dropdown modal (injected by nav-dropdown.js) ---- */
.r8-dd { position: relative; display: inline-block; }
.r8-dd-btn { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 13.5px; color: var(--ink); text-decoration: none; cursor: pointer; background: none; border: 0; padding: 6px 8px; border-radius: 8px; font-family: 'Inter', system-ui, sans-serif; }
.r8-dd-btn:hover { background: var(--brandsoft); color: var(--brand); }
.r8-dd-btn .caret { font-size: 9px; transition: transform .18s ease; display: inline-block; }
.r8-dd.open .r8-dd-btn .caret { transform: rotate(180deg); }
.r8-dd-panel { position: fixed; top: 58px; left: 50%; transform: translateX(-50%) translateY(-6px); width: min(680px, 94vw); max-height: min(70vh, 560px); overflow-y: auto; background: #fff; border: 1px solid rgba(31,31,31,.1); border-radius: 18px; box-shadow: 0 24px 60px rgba(31,31,31,.25); padding: 18px; opacity: 0; visibility: hidden; transition: opacity .18s ease, transform .18s ease, visibility .18s; z-index: 9999; }
.r8-dd.open .r8-dd-panel { opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); }
.r8-dd-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.r8-dd-head b { font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: #6b6b6b; }
.r8-dd-close { background: none; border: 0; font-size: 18px; cursor: pointer; color: #888; padding: 4px 8px; border-radius: 8px; }
.r8-dd-close:hover { background: var(--brandsoft); color: var(--brand); }
.r8-dd-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 6px; }
.r8-dd-grid a { display: flex; align-items: center; justify-content: space-between; padding: 9px 12px; border-radius: 10px; font-size: 13.5px; font-weight: 600; color: var(--ink); text-decoration: none; border: 1px solid transparent; }
.r8-dd-grid a:hover { background: var(--brandsoft); color: var(--brand); border-color: rgba(226,92,30,.25); }
.r8-dd-grid a .n { font-size: 11px; color: #999; font-weight: 500; }
.r8-dd-foot { margin-top: 12px; padding-top: 10px; border-top: 1px solid rgba(31,31,31,.08); display: flex; justify-content: space-between; align-items: center; font-size: 12.5px; color: #777; }
.r8-dd-foot a { color: var(--brand); font-weight: 700; text-decoration: none; }
.r8-scrim { position: fixed; inset: 0; background: rgba(31,31,31,.35); z-index: 9998; opacity: 0; visibility: hidden; transition: opacity .18s ease, visibility .18s; }
.r8-scrim.show { opacity: 1; visibility: visible; }
@media (max-width: 720px) {
  .r8-dd-panel { top: 54px; width: 96vw; }
  .r8-dd-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .btn, .code-card, .mk-card, .card, .mcard, .ttile { transition: none; }
  .r8-dd-panel, .r8-scrim { transition: none; }
}

/* r11 master additions */
.r8-head,.r8-hero,.r8-foot,.r8-sticky,.r8-band{box-sizing:border-box}
.r8-hero h1,.r8-hero p,.r8-hero div{margin:0}
.r8-band{margin:0}
.r8-md-h2{font-size:22px;font-weight:700;margin:26px 0 10px}
.r8-md-h3{font-size:17px;font-weight:600;margin:20px 0 8px}
.r8-md-p{font-size:14.5px;line-height:1.7;color:#3d3d3d;margin:8px 0}
.r8-md-ul{margin:8px 0 12px 22px;list-style:disc}
.r8-md-ul li{font-size:14.5px;line-height:1.65;color:#3d3d3d;margin:4px 0}
.r8-md-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}
.r8-md-table th{background:var(--ink);color:#fff;text-align:left;padding:8px 12px}
.r8-md-table td{border-bottom:1px solid #eee;padding:8px 12px}
.snap-x{scroll-snap-type:x mandatory}
.snap-start{scroll-snap-align:start}
.snap-mandatory{scroll-snap-type:x mandatory}

.swiper{overflow:hidden;position:relative;padding:4px 4px 34px}
.swiper-wrapper{align-items:stretch}
.swiper-slide{height:auto;display:flex}
.swiper-slide>*{width:100%}
.sw-btn{position:absolute;top:42%;width:38px;height:38px;border-radius:9999px;background:#fff;border:2px solid #eee;box-shadow:0 4px 14px rgba(0,0,0,.10);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;color:var(--ink);transition:all .15s}
.sw-btn:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.sw-btn svg{width:16px;height:16px}
.sw-prev{left:-6px}.sw-next{right:-6px}
.sw-dots{position:absolute;bottom:6px;left:0;right:0;text-align:center;z-index:5}
.sw-dots .dot{display:inline-block;width:7px;height:7px;border-radius:9999px;background:#ddd;margin:0 3px;transition:all .2s}
.sw-dots .dot.on{background:var(--brand);width:18px}
/* infographic tiles */
.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.tile{background:#fff;border-radius:16px;padding:22px 16px;text-align:center;border:1px solid #f0e9dd;box-shadow:var(--card);position:relative;overflow:hidden}
.tile:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--brand),var(--amber))}
.tile .t-ico{width:46px;height:46px;margin:0 auto 10px;border-radius:12px;background:linear-gradient(135deg,#fff3e8,#ffe7d1);display:flex;align-items:center;justify-content:center;color:var(--brand);font-size:20px}
.tile .t-num{font-size:30px;font-weight:900;color:var(--ink);line-height:1}
.tile .t-lbl{font-size:12px;font-weight:700;color:#6b6b6b;margin-top:6px;letter-spacing:.4px;text-transform:uppercase}
.tile .t-sub{font-size:11px;color:#9a9a9a;margin-top:2px}
/* comparison */
.cmp-wrap{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--card);border:1px solid #f0e9dd}
.cmp-table{width:100%;border-collapse:collapse;font-size:14px}
.cmp-table th{background:var(--ink);color:#fff;padding:13px 14px;text-align:left;font-size:12.5px;letter-spacing:.5px;text-transform:uppercase}
.cmp-table td{padding:12px 14px;border-top:1px solid #f3ede2;vertical-align:top}
.cmp-table tr:nth-child(even) td{background:#fbf8f2}
.cmp-yes{color:#15803d;font-weight:800}
.cmp-no{color:#b91c1c;font-weight:800}
.cmp-best{background:linear-gradient(180deg,#fff7ee,#fff)!important;box-shadow:inset 0 0 0 2px var(--brand)}
/* process timeline */
.proc{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}
.proc:before{content:"";position:absolute;top:26px;left:7%;right:7%;height:3px;background:repeating-linear-gradient(90deg,var(--brand) 0 10px,transparent 10px 18px);opacity:.35}
.proc-step{position:relative;background:#fff;border-radius:14px;padding:18px 12px 14px;text-align:center;border:1px solid #f0e9dd;box-shadow:var(--card)}
.proc-num{width:34px;height:34px;margin:0 auto 8px;border-radius:9999px;background:var(--brand);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:15px;position:relative;z-index:2;box-shadow:0 0 0 4px #fff}
.proc-step .p-t{font-size:13.5px;font-weight:800;color:var(--ink)}
.proc-step .p-d{font-size:11.5px;color:#777;margin-top:4px;line-height:1.45}
/* visible breadcrumb */
.crumbs{font-size:12.5px;color:#8a8a8a;padding:10px 0 0}
.crumbs a{color:#8a8a8a;text-decoration:none}
.crumbs a:hover{color:var(--brand)}
.crumbs .sep{margin:0 6px;color:#c9c2b5}
.crumbs .cur{color:var(--ink);font-weight:700}
/* engine code cards on model pages */
.ec-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ec-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #f0e9dd;box-shadow:var(--card);transition:transform .15s,box-shadow .15s;display:block;text-decoration:none}
.ec-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.ec-img{height:130px;background:linear-gradient(135deg,#f6efe3,#fff);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.ec-img img{width:100%;height:100%;object-fit:cover}
.ec-badge{position:absolute;top:8px;left:8px;background:var(--ink);color:#fff;font-size:11px;font-weight:800;padding:3px 9px;border-radius:9999px;letter-spacing:.4px}
.ec-body{padding:14px 15px 16px}
.ec-code{font-size:17px;font-weight:900;color:var(--ink)}
.ec-size{font-size:12px;color:#8a8a8a;margin-top:2px}
.ec-price{font-size:18px;font-weight:900;color:var(--brand);margin-top:8px}
.ec-mkt{font-size:11.5px;color:#9a9a9a}
.ec-cta{margin-top:10px;font-size:12.5px;font-weight:800;color:var(--brand);display:flex;align-items:center;gap:6px}
/* trust strip */
.trust-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}
.trust-strip .ts{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #f0e9dd;border-radius:12px;padding:10px 12px;font-size:12.5px;font-weight:700;color:var(--ink)}
.trust-strip .ts i{color:var(--brand);font-size:15px}
/* R16 fix: third comparison column header readable + consistent with table format */
.cmp-table th.cmp-best{background:var(--ink)!important;color:#fff;box-shadow:inset 0 -3px 0 0 var(--brand)}

/* R18: get-price page design upgrade (form/CTA/header/trust) */
.gp-banner{display:flex;align-items:center;justify-content:center;gap:10px;max-width:880px;margin:18px auto 0;background:var(--ink);color:#fff;border-radius:12px;padding:12px 18px;font-size:13.5px;font-weight:700;box-shadow:var(--card)}
.gp-banner .gp-dot{width:9px;height:9px;border-radius:9999px;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.2);flex-shrink:0}
.main{max-width:860px;margin:0 auto;padding:26px 16px 40px}
.main h1{font-size:30px;font-weight:800;letter-spacing:-.3px;margin:0 0 6px}
.main .lead{color:#6b6b6b;font-size:14.5px;margin:0 0 22px;max-width:640px}
.main h2{font-size:21px;font-weight:800;margin:26px 0 12px}
#pf{background:#fff;border:1px solid #f0e9dd;border-radius:18px;box-shadow:var(--card);padding:22px 20px 24px}
#pf .row,#pf .row2{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:0 0 14px}
#pf label{display:block;font-size:12.5px;font-weight:700;color:var(--ink);margin:0 0 6px}
#pf input,#pf select{width:100%;padding:12px 13px;border:2px solid #e7e0d2;border-radius:10px;font-size:14px;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;font-family:inherit;color:var(--ink)}
#pf input:focus,#pf select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(226,92,30,.15)}
#pf select:disabled{background:#faf7f1;color:#9a938a;border-color:#eee5d8;cursor:not-allowed}
#pf input::placeholder{color:#b9b2a6}
#pf .cta{display:block;width:100%;margin-top:8px;background:var(--brand);color:#fff;font-weight:800;font-size:16px;padding:15px 20px;border:none;border-radius:12px;cursor:pointer;transition:background .15s,transform .1s;box-shadow:0 8px 20px rgba(226,92,30,.28)}
#pf .cta:hover{background:var(--brandd)}
#pf .cta:active{transform:translateY(1px)}
.gp-consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:#5f5950;margin:4px 0 2px;font-weight:400;line-height:1.5}
.gp-consent input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand);flex-shrink:0}
.trust{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px 0 6px}
.trust span{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #f0e9dd;border-radius:10px;padding:9px 13px;font-size:12.5px;font-weight:700;color:var(--ink);box-shadow:0 2px 8px rgba(31,31,31,.05)}
.trust span i{color:var(--brand);font-size:14px}
.gp-reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:10px 0 8px}
.gp-stars{color:#f59e0b;font-size:13px;letter-spacing:2px;margin-bottom:6px}
.bottombar{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;background:var(--ink);color:#fff;padding:14px 16px;font-size:12.5px;font-weight:700}
.bottombar span{display:inline-flex;align-items:center;gap:7px;opacity:.95}

/* R21: BOFU find-your-part widget + get-price popup v2 (variable pricing) */
.bofu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 10px;border:2px solid #e7e0d2;border-radius:12px;background:#faf7f1;color:var(--ink);font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;transition:all .15s;font-family:inherit}
.bofu-toggle i{font-size:14px}
.bofu-toggle:hover{border-color:var(--brand);color:var(--brand)}
.bofu-toggle.bofu-on{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 16px rgba(226,92,30,.3)}
.bofu-decode{padding:13px 16px;border:2px solid var(--brand);border-radius:10px;background:#fff;color:var(--brand);font-weight:800;font-size:13.5px;cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap}
.bofu-decode:hover{background:var(--brand);color:#fff}
.bofu-getprice{display:block;width:100%;background:var(--brand);color:#fff;font-weight:800;font-size:15px;padding:13px 18px;border:none;border-radius:12px;cursor:pointer;transition:background .15s,transform .1s;box-shadow:0 6px 16px rgba(226,92,30,.26);font-family:inherit;letter-spacing:.3px}
.bofu-getprice:hover{background:var(--brandd);transform:translateY(-1px)}
.bofu-getprice:active{transform:translateY(1px)}
.bofu-modal{position:fixed;inset:0;background:rgba(15,15,15,.66);z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px;font-family:inherit}
.bofu-modal[hidden]{display:none}
.bofu-box{background:#fff;border-radius:20px;max-width:560px;width:100%;padding:28px 26px 24px;position:relative;box-shadow:0 24px 64px rgba(0,0,0,.32)}
.bofu-x{position:absolute;top:12px;right:16px;background:none;border:none;font-size:26px;line-height:1;color:#9a938a;cursor:pointer;font-family:inherit}
.bofu-x:hover{color:var(--ink)}
.bofu-head{font-size:22px;font-weight:800;color:var(--ink);margin:0 0 2px;letter-spacing:-.2px}
.bofu-fit{font-size:13.5px;color:#6b6b6b;margin:0 0 6px}
.bofu-codesel{width:100%;padding:10px 12px;border:2px solid #e7e0d2;border-radius:10px;font-size:13.5px;background:#fff;margin-bottom:4px;font-family:inherit}
.bofu-lbl{font-size:10.5px;font-weight:800;color:var(--brand);text-transform:uppercase;letter-spacing:1.2px;margin:14px 0 7px}
.bofu-pills{display:flex;flex-wrap:wrap;gap:8px}
.bofu-pill{padding:10px 16px;border:2px solid #e7e0d2;border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;transition:all .15s;font-family:inherit}
.bofu-pill:hover{border-color:var(--brand)}
.bofu-pill-on{background:var(--brand);border-color:var(--brand);color:#fff}
.bofu-pricebox{background:#faf7f1;border:1px solid #f0e9dd;border-radius:16px;padding:18px;margin:16px 0 4px;text-align:center}
.bofu-price{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.bofu-big{font-size:42px;font-weight:900;color:var(--ink);letter-spacing:-.5px}
.bofu-mkt{text-decoration:line-through;color:#9a938a;font-size:16px;font-weight:600}
.bofu-save{background:#15803d;color:#fff;font-size:13.5px;font-weight:800;padding:6px 14px;border-radius:999px;letter-spacing:.3px}
.bofu-sub{font-size:12px;font-weight:800;color:var(--brand);text-transform:uppercase;letter-spacing:1.2px;margin-top:6px}
.bofu-size{font-size:13px;color:#6b6b6b;margin-top:5px}
.bofu-callbtn{display:inline-flex;align-items:center;gap:9px;background:#fff;border:2px solid var(--ink);color:var(--ink);border-radius:999px;padding:10px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:all .15s}
.bofu-callbtn:hover{background:var(--ink);color:#fff}
.bofu-callbtn b{font-weight:800}
.bofu-callbtn i{font-size:13px}
.bofu-trust{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;background:var(--brandsoft);border:1px solid #f0e9dd;border-radius:14px;padding:13px 12px;margin:16px 0 2px}
.bofu-trust span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:800;color:var(--ink)}
.bofu-trust span i{color:var(--brand);font-size:13px}
.bofu-note{font-size:11.5px;color:#8a8a8a;text-align:center;margin-top:10px}
@media (max-width:640px){.bofu-box{padding:22px 16px 18px}.bofu-big{font-size:32px}.bofu-modal{padding:10px}}
/* R20: widget trust badges */
.bofu-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.bofu-badge{display:flex;align-items:center;gap:11px;background:#faf7f1;border:1px solid #f0e9dd;border-radius:12px;padding:12px 13px}
.bofu-badge i{color:var(--brand);font-size:17px;width:20px;text-align:center;flex-shrink:0}
.bofu-badge span{font-size:12px;color:#6b6b6b;line-height:1.35}
.bofu-badge b{display:block;font-size:13px;color:var(--ink)}