/* BinCompare — "Field Guide" design system (see .claude/skills/bincompare-design).
   Industrial spec-sheet made light & scannable. One stylesheet, every city inherits it. */
/* Self-hosted Oswald (variable, weights 500–700, latin) — no third-party font request. File lives at the
   domain root /fonts/ (written by build-root.js); glyphs outside latin fall back to the --din stack. */
@font-face{font-family:'Oswald';font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/oswald-latin.woff2) format('woff2');}
:root{
  --paper:#F8F6F1; --surf:#FFFFFF; --ink:#1B1E23; --mut:#6F757D; --line:#E9E4D8; --line2:#F0ECE1;
  --hi:#F5C518; --hi-d:#3A2C00; --steel:#2F6096; --steel-bg:#EAF1F8; --go:#1F9257; --go-bg:#E9F6EE;
  --warn:#C4443F; --dark:#191C21;
  /* legacy badge tokens kept so existing badge classes still read well */
  --gold:#8a5d00; --gold-bg:#FFF3D6; --gd:#0f7a4a; --gd-bg:#E7F5EC; --vol:#2F6096; --vol-bg:#EAF1F8;
  --din:"Oswald","Bahnschrift","DIN Alternate","Arial Narrow",system-ui,sans-serif;
  --sans:system-ui,-apple-system,"Segoe UI Variable Text","Segoe UI",Roboto,sans-serif;
  --mono:"Cascadia Mono",ui-monospace,"SF Mono","Segoe UI Mono",Consolas,monospace;
  --shadow-sm:0 1px 2px rgba(27,30,35,.05),0 2px 8px rgba(27,30,35,.05);
  --shadow-md:0 8px 22px rgba(27,30,35,.08);
  --shadow-lg:0 18px 44px rgba(27,30,35,.14);
  --r:13px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.5;font-size:15.5px;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:var(--din);color:var(--ink);line-height:1.05;font-weight:700;letter-spacing:-.005em;}
a{color:var(--steel);text-decoration:none;}
img{max-width:100%;}
.container{max-width:1080px;margin:0 auto;padding:0 26px;}
:focus-visible{outline:2px solid var(--steel);outline-offset:2px;}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:700;font-size:15px;
     border:none;border-radius:9px;padding:12px 20px;cursor:pointer;transition:.15s;min-height:46px;white-space:nowrap;text-decoration:none;}
.btn-cta{background:var(--hi);color:var(--hi-d);box-shadow:0 1px 2px rgba(180,140,10,.35);}
.btn-cta:hover{background:#ffd21f;color:var(--hi-d);transform:translateY(-1px);box-shadow:0 6px 16px rgba(245,197,24,.35);}
.btn-outline{background:var(--surf);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line);}
.btn-outline:hover{box-shadow:inset 0 0 0 1.5px var(--ink);transform:translateY(-1px);}
.btn-dark{background:var(--dark);color:#fff;}
.btn-dark:hover{background:#2a2e35;transform:translateY(-1px);}
.btn-ghost-light{background:var(--surf);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line);}
.btn-ghost-light:hover{box-shadow:inset 0 0 0 1.5px var(--ink);}
.btn-sm{padding:9px 15px;font-size:14px;min-height:40px;}
.btn-block{width:100%;}

/* Header (light + 3px hi-vis bar) */
header{background:var(--surf);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60;}
header::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;background:var(--hi);}
.nav{display:flex;align-items:center;gap:12px;padding:14px 26px;max-width:1080px;margin:0 auto;}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--din);font-weight:700;font-size:23px;color:var(--ink);letter-spacing:.005em;}
.logo .mark{width:32px;height:32px;border-radius:8px;background:var(--dark);color:var(--hi);display:grid;place-items:center;font-size:17px;}
.mark .mk{width:60%;height:60%;display:block;}
.switch{display:inline-flex;align-items:center;gap:6px;background:var(--surf);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:13.5px;font-weight:600;cursor:pointer;position:relative;}
.switch:hover{border-color:var(--ink);}
.switch svg{width:14px;height:14px;}
.switch .menu{position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow-lg);padding:7px;min-width:210px;display:none;z-index:70;}
.switch:hover .menu,.switch:focus-within .menu{display:block;}
.switch .menu a{display:block;padding:9px 12px;border-radius:7px;font-size:14px;font-weight:600;color:var(--ink);}
.switch .menu a:hover{background:var(--paper);}
.switch .menu span.soon{display:block;padding:9px 12px;font-size:14px;font-weight:600;color:var(--mut);cursor:default;}
.switch .menu span.soon small,.switch .menu a small{color:var(--mut);font-weight:500;}
.nav .sp{flex:1;}

/* Hero — light & airy */
.hero{background:linear-gradient(180deg,#FFFDF8,var(--paper));border-bottom:1px solid var(--line);}
.hero-in{padding:42px 0 34px;}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel);display:flex;align-items:center;gap:8px;}
.eyebrow::before{content:"";width:20px;height:2px;background:var(--hi);}
.hero h1{color:var(--ink);font-size:clamp(31px,4.7vw,50px);line-height:1.16;max-width:16ch;margin:14px 0 12px;text-wrap:balance;}
/* highlighter-underline: sits behind only the lower part of the text, so it can never overlap the line above */
.hero h1 .hl{background:linear-gradient(transparent 60%,var(--hi) 60%);color:var(--ink);padding:0 2px;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
.hero .sub{font-size:17px;color:#565c64;max-width:46ch;margin:0 0 22px;line-height:1.5;}
.hero-cta{display:flex;gap:11px;flex-wrap:wrap;align-items:center;}
.stats{display:flex;gap:18px;margin-top:22px;flex-wrap:wrap;}
.stats div{}
.stats b{font-family:var(--din);font-weight:700;font-size:22px;color:var(--ink);display:block;line-height:1;font-variant-numeric:tabular-nums;}
.stats small{font-size:12.5px;color:var(--mut);}

/* Interactive size selector */
.sizer{background:var(--surf);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow-md);}
.sizer .slabel{font-weight:700;font-size:14px;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.sizer .slabel .tip{font-family:var(--mono);font-size:10.5px;color:var(--steel);font-weight:400;letter-spacing:.04em;}
.segbar{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:14px 0 16px;}
.seg{font-family:var(--din);font-weight:700;font-size:20px;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:9px;padding:10px 4px 8px;cursor:pointer;transition:.14s;text-align:center;line-height:1;}
.seg small{display:block;font-family:var(--sans);font-size:10px;color:var(--mut);font-weight:600;margin-top:3px;}
.seg:hover{border-color:var(--ink);}
.seg.on{background:var(--hi);border-color:var(--hi);color:var(--hi-d);}
.seg.on small{color:#6b5200;}
.viz{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:2px;}
.viz .stage{width:130px;height:86px;display:flex;align-items:flex-end;justify-content:center;}
.viz .dzbob{display:inline-flex;animation:dumpbob 3.2s ease-in-out infinite;}
.viz .dz{transform-origin:50% 100%;transition:transform .45s cubic-bezier(.34,1.3,.5,1);}
@keyframes dumpbob{0%,100%{transform:translateY(0) rotate(-1.5deg);}50%{transform:translateY(-7px) rotate(1.5deg);}}
.viz .spec-row{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--line2);font-size:13.5px;}
.viz .spec-row:last-child{border-bottom:none;}
.viz .spec-row .k{color:var(--mut);font-size:12.5px;}
.viz .spec-row .v{color:var(--ink);font-weight:600;text-align:right;}
.viz .spec-row .v.p{color:var(--go);font-family:var(--din);font-size:16px;}
.sizer .go{margin-top:15px;width:100%;text-align:center;}

/* Filter/sort bar */
.filterwrap{margin-top:26px;}
.filters{background:var(--surf);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:15px 17px;}
.filtertop{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:13px;}
.count{font-family:var(--din);font-weight:700;font-size:17px;color:var(--ink);}
.count b{color:var(--ink);}
.sortsel{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--mut);}
.sortsel select{font-family:inherit;font-size:14px;font-weight:600;padding:9px 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;min-height:40px;}
.fields{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;}
.field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:150px;}
.field label{font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;}
.field input,.field select{font-family:inherit;font-size:15px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);min-height:44px;}
.field input:focus,.field select:focus{outline:2px solid var(--steel);outline-offset:-1px;border-color:var(--steel);}
.toggles{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;user-select:none;transition:.12s;min-height:40px;}
.pill input{display:none;}
.pill:hover{border-color:var(--ink);}
.pill.on{background:var(--hi);border-color:var(--hi);color:var(--hi-d);}
.chips-applied{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.chips-applied:empty{display:none;}
.fchip{display:inline-flex;align-items:center;gap:7px;background:var(--steel-bg);color:var(--steel);border-radius:7px;padding:6px 11px;font-size:12.5px;font-weight:600;}
.fchip b{cursor:pointer;opacity:.6;font-weight:700;}
.fchip.clear{background:transparent;color:var(--mut);cursor:pointer;}

/* Results */
.section{padding:34px 0 60px;}
.resbar{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px;}
.resbar h2{font-size:27px;}
.resbar .sortnote{font-size:13px;color:var(--mut);}
.grid{display:flex;flex-direction:column;gap:12px;}
/* pagination (8 per page) — used on the homepage results grid and every city page */
.pager{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;margin:28px 0 6px;}
.pager .pg{min-width:40px;height:40px;padding:0 12px;border-radius:9px;border:1.5px solid var(--line);background:var(--surf);color:var(--ink);font-family:var(--din);font-weight:700;font-size:14.5px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.pager .pg:hover:not(:disabled):not(.on){border-color:var(--ink);}
.pager .pg.on{background:var(--dark);color:#fff;border-color:var(--dark);cursor:default;}
.pager .pg.nav{font-size:19px;padding:0 11px;}
.pager .pg:disabled{opacity:.4;cursor:default;}
.pager .gap{min-width:22px;text-align:center;color:var(--mut);}

/* Comparison card (row) */
.card{display:grid;grid-template-columns:38px 1fr auto auto;gap:20px;align-items:center;background:var(--surf);
      border:1px solid var(--line);border-radius:var(--r);padding:18px 22px;transition:.15s;cursor:pointer;text-decoration:none;color:var(--ink);position:relative;}
.card:hover{border-color:#cfc9ba;box-shadow:var(--shadow-md);transform:translateY(-1px);}
.card.top{border-color:var(--hi);box-shadow:0 0 0 1px var(--hi),0 10px 26px rgba(245,197,24,.16);background:linear-gradient(180deg,#FFFDF3,#fff);}
.rank{font-family:var(--din);font-size:20px;color:#c8c2b3;text-align:center;font-variant-numeric:tabular-nums;}
.card.top .rank{color:var(--hi);}
.co{min-width:0;}
.co .cotop{display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.co .nm{font-family:var(--din);font-weight:700;font-size:20px;color:var(--ink);letter-spacing:-.005em;}
.card:hover .co .nm{color:var(--steel);}
.ptag{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:var(--hi);color:var(--hi-d);padding:3px 9px;border-radius:5px;}
.co .rev{display:flex;align-items:center;gap:7px;margin:5px 0 9px;font-size:13.5px;color:var(--mut);flex-wrap:wrap;}
.co .rev .gG{width:15px;height:15px;flex:none;}
.co .rev b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums;}
.co .rev .rstar{display:inline-flex;align-items:center;gap:3px;color:var(--go);font-weight:700;}
.co .rev .rstar .r5{color:var(--mut);font-weight:500;font-size:12px;}
.tags{display:flex;gap:7px;flex-wrap:wrap;}
.tags .t{font-size:12px;padding:3px 10px;border-radius:6px;background:var(--paper);color:#5a6069;font-weight:600;}
.tags .t.hot{background:var(--go-bg);color:var(--go);}
.tags .t.blu{background:var(--steel-bg);color:var(--steel);}
.price{text-align:right;min-width:96px;}
.price .amt{font-family:var(--din);font-size:26px;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1;}
.price .from{font-size:11px;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;}
.price.none .amt{font-size:14px;color:var(--warn);font-family:var(--sans);font-weight:700;}
.price.none .from{color:var(--warn);opacity:.75;}
.act{display:flex;}
.empty{text-align:center;padding:56px 20px;color:var(--mut);background:#fff;border:1px dashed var(--line);border-radius:var(--r);}

/* legacy badge + review classes (company pages, listing hero) */
.badges{display:flex;gap:6px;flex-wrap:wrap;}
.badge{font-family:var(--din);font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 10px;border-radius:6px;display:inline-flex;align-items:center;gap:4px;width:max-content;}
.badge.gold{background:var(--gold-bg);color:var(--gold);}
.badge.gd{background:var(--gd-bg);color:var(--gd);}
.badge.vol{background:var(--vol-bg);color:var(--vol);}
.rating{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--mut);flex-wrap:wrap;}
.rating .gG{width:17px;height:17px;flex:none;}
.rating b{font-weight:700;color:var(--ink);font-size:15.5px;}
.rstar{display:inline-flex;align-items:center;gap:4px;color:var(--go);font-size:15px;line-height:1;font-weight:700;}
.rstar b{color:var(--ink);font-weight:800;font-size:15px;}
.rstar .r5{color:var(--mut);font-weight:600;font-size:12.5px;}
.verified{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--go);width:max-content;}
.verified svg{width:14px;height:14px;}
/* self-serve backlink badge (collapsed; for company owners — customers ignore it) */
.badgebox{margin:26px 0 6px;border:1px solid var(--line);border-radius:11px;background:var(--surf);}
.badgebox summary{cursor:pointer;padding:14px 16px;font-weight:700;font-size:14px;color:var(--steel);list-style:none;}
.badgebox summary::-webkit-details-marker{display:none;}
.badgebox summary::marker{content:"";}
.badgebox[open] summary{border-bottom:1px solid var(--line);}
.badgebody{padding:4px 16px 16px;}
.badgebody p{font-size:13.5px;color:var(--mut);margin:12px 0 10px;}
.embedcode{width:100%;height:74px;font-family:var(--mono);font-size:11.5px;line-height:1.5;border:1px solid var(--line);border-radius:8px;padding:9px 11px;color:var(--ink);background:var(--paper);resize:none;}
.chips{display:flex;gap:6px;flex-wrap:wrap;}
.chip{background:var(--paper);color:#5a6069;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:6px;}
.chip.green{background:var(--go-bg);color:var(--go);}

/* "Why" bento */
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.bt{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow-sm);}
.bt.lg{grid-column:span 2;background:linear-gradient(160deg,#fff,#FFFCF2);}
.bt .ic{width:44px;height:44px;border-radius:10px;background:var(--paper);color:var(--steel);display:grid;place-items:center;margin-bottom:13px;}
.bt .ic svg{width:23px;height:23px;}
.bt h4{font-family:var(--din);font-size:18px;margin-bottom:5px;}
.bt p{font-size:13.5px;color:var(--mut);}

/* Dark CTA band */
.ctaband{margin:28px 0;background:var(--dark);border-radius:14px;padding:30px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;border-left:5px solid var(--hi);}
.ctaband h3{font-family:var(--din);font-size:26px;color:#fff;margin:0;}
.ctaband p{margin:6px 0 0;font-size:14px;color:#b9c0cc;max-width:46ch;}

/* Modal + form */
.overlay{position:fixed;inset:0;background:rgba(25,28,33,.6);display:none;align-items:flex-start;justify-content:center;padding:36px 16px;z-index:100;overflow-y:auto;backdrop-filter:blur(2px);}
.overlay.open{display:flex;}
.modal{background:#fff;border-radius:16px;max-width:580px;width:100%;padding:28px;position:relative;box-shadow:var(--shadow-lg);}
.modal h2{font-family:var(--din);font-size:26px;}
.close{position:absolute;top:16px;right:16px;background:var(--paper);border:none;width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;color:var(--mut);line-height:1;}
.close:hover{background:#ece7db;}
.spec{width:100%;border-collapse:collapse;margin-top:16px;}
.spec th{text-align:left;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);padding:9px 10px 9px 0;border-bottom:2px solid var(--ink);}
.spec td{padding:10px 10px 10px 0;border-bottom:1px solid var(--line);font-size:14.5px;vertical-align:top;}
.spec td:first-child{color:var(--mut);font-weight:600;width:150px;}
.steps{display:flex;gap:8px;margin:6px 0 18px;}
.steps .s{flex:1;height:6px;border-radius:99px;background:var(--line);}
.steps .s.active{background:var(--hi);}
.steplabel{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.form-field{margin-bottom:14px;}
.form-field.full{grid-column:1/-1;}
.form-field label{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:6px;}
.form-field .hint{font-weight:500;color:var(--mut);font-size:12px;}
.form-field input,.form-field select,.form-field textarea{width:100%;font-family:inherit;font-size:16px;padding:12px 13px;border:1px solid var(--line);border-radius:9px;color:var(--ink);min-height:48px;}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--steel);outline-offset:-1px;border-color:var(--steel);}
.form-field .err{display:none;color:var(--warn);font-size:12.5px;font-weight:600;margin-top:5px;}
.form-field.invalid input{border-color:var(--warn);}
.form-field.invalid .err{display:block;}
.reassure{display:flex;align-items:center;gap:9px;background:var(--go-bg);color:var(--go);border-radius:9px;padding:11px 13px;font-size:13px;font-weight:600;margin:4px 0 14px;}
.formtrust{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--mut);margin-top:12px;justify-content:center;}
.formtrust span{display:flex;align-items:center;gap:5px;}
.success{text-align:center;padding:18px 0;}
.success .check{width:70px;height:70px;border-radius:50%;background:var(--go-bg);color:var(--go);display:grid;place-items:center;font-size:38px;margin:0 auto 16px;}

/* Sticky mobile CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:55;background:#fff;border-top:1px solid var(--line);
            padding:12px 16px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px rgba(27,30,35,.08);display:none;}

/* Footer (light) */
footer{border-top:1px solid var(--line);background:var(--surf);margin-top:40px;}
.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:26px;padding:40px 0 28px;font-size:13.5px;color:var(--mut);}
.foot h5{font-family:var(--mono);color:var(--ink);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;}
.foot a{color:var(--mut);display:block;margin-bottom:8px;}
.foot a:hover{color:var(--ink);}
.foot span.soon{display:block;margin-bottom:8px;opacity:.6;cursor:default;}
.foot .brand{font-family:var(--din);font-weight:700;color:var(--ink);font-size:19px;display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.foot .brand .mark{width:30px;height:30px;border-radius:8px;background:var(--dark);color:var(--hi);display:grid;place-items:center;}
.foot .disc{font-size:12.5px;line-height:1.6;max-width:330px;}
.copy{border-top:1px solid var(--line);}
.copy .container{padding:16px 26px;font-size:12.5px;color:var(--mut);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;}

/* Listing (company/city/guide) detail pages */
.crumb{font-size:13px;color:var(--mut);padding:18px 0 0;}
.crumb a{color:var(--mut);}
.crumb a:hover{color:var(--steel);}
.listing-hero{padding:14px 0 26px;}
.listing-hero h1{font-size:clamp(28px,4vw,40px);}
.listing-main > h2{font-size:23px;margin:42px 0 14px;}
.listing-grid{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start;padding-bottom:60px;}
.lead-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-md);padding:22px;position:sticky;top:88px;}
.lead-card h3{font-family:var(--din);font-size:21px;margin-bottom:6px;}
.prose{color:#3c4149;font-size:16px;line-height:1.7;max-width:68ch;}
.prose p{margin:0 0 14px;}
.prose h2{font-family:var(--din);font-size:23px;margin:32px 0 12px;color:var(--ink);}
.prose ul,.prose ol{margin:0 0 14px;padding-left:22px;}
.prose li{margin-bottom:7px;}
.callbox{display:flex;gap:10px;align-items:center;background:var(--go-bg);border:1px solid #cdead9;border-radius:11px;padding:14px 16px;margin:18px 0;font-size:14.5px;color:#245c40;}
.faq dt{font-family:var(--din);font-weight:700;font-size:17px;color:var(--ink);margin-top:16px;}
.faq dd{margin:5px 0 0;color:#3c4149;}
.related{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:14px;}
.related a{display:block;background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;font-weight:600;color:var(--ink);font-size:14px;}
.related a:hover{border-color:var(--steel);color:var(--steel);}
.bigprice{font-family:var(--din);font-size:30px;font-weight:700;color:var(--go);}

@media(max-width:880px){
  .hero-grid{grid-template-columns:1fr;gap:24px;}
  .bento{grid-template-columns:repeat(2,1fr);}
  .listing-grid{grid-template-columns:1fr;}
  .lead-card{position:static;}
  .foot{grid-template-columns:1fr 1fr;}
  .ctaband{flex-direction:column;align-items:flex-start;}
}
@media(max-width:720px){
  .form-row{grid-template-columns:1fr;}
  .card{grid-template-columns:30px 1fr;gap:10px 14px;}
  .card .price{grid-column:2;text-align:left;}
  .card .act{grid-column:2;}
  .sticky-cta{display:block;}
  body{padding-bottom:78px;}
  .hero-cta .btn{flex:1;}
  .sortsel{margin-left:0;width:100%;}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;}}
