  :root{
    color-scheme:light;
    --ink:#17140f; --ink-2:#2a2622; --text:#1f1c18; --text-2:#5d5a55; --text-3:#8a8680;
    --bg:#f3f2ef; --paper:#ffffff; --alu:#e6e7e8; --line:#dedcd7;
    --gold:#b8862a; --gold-2:#e2b24a; --yellow:#ffd93b;
    --green:#2f7a4f; --green-soft:#e2f1e8; --red:#b93d12; --red-soft:#fbe7df; --amber:#9a6a0c; --amber-soft:#fbf1d8;
    --blue:#2d5f8a; --blue-soft:#e3edf6;
    --display:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;
    --body:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;
    --mbar-h:0px; --hdr:74px;
  }
  *{box-sizing:border-box}
  [hidden]{display:none!important}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--bg);color:var(--text);font:17px/1.55 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit}
  img{max-width:100%;display:block}
  button{font:inherit;color:inherit}
  .wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
  @media (max-width:520px){.wrap{padding-inline:16px}}
  h1,h2,h3{font-family:var(--display);text-transform:uppercase;margin:0;line-height:.95;letter-spacing:.005em;text-wrap:balance}
  h1{font-size:clamp(2.6rem,6vw,4.2rem);font-weight:900}
  h2{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:900}
  h3{font-size:1.6rem;font-weight:800}
  /* heading levels follow the outline (H1 > H2 > H3); these classes keep the old look on a relevelled heading */
  .h3{font-size:1.6rem;font-weight:800}
  .h4{font:bold 1em/1.3 var(--body);text-transform:none;letter-spacing:0}
  .eyebrow{font:700 .78rem/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
  .lede{color:var(--text-2);font-size:1.1rem;max-width:58ch;margin:14px 0 0}
  .muted{color:var(--text-3)}
  .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  [id]{scroll-margin-top:96px}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font:800 1.05rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:15px 24px;border-radius:6px;border:2px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .15s,background .2s}
  .btn:hover{transform:translateY(-2px)}
  .btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
  .btn:focus-visible,.chip:focus-visible,.pick:focus-visible,.opt:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--gold-2);outline-offset:2px}
  .btn-gold{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--ink)}
  .btn-dark{background:var(--ink);color:#fff}
  .btn-line{border-color:var(--ink);color:var(--ink);background:transparent}
  .btn-line-light{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}
  .btn.sm{padding:10px 14px;font-size:.92rem}
  .btn.xs{padding:7px 10px;font-size:.82rem;border-width:1.5px}
  .btn svg{width:1.05em;height:1.05em;flex:none}
  .link{background:none;border:0;padding:0;color:var(--gold);font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

  /* utility bar */
  .ubar{background:#0f0d0a;color:#b9b2a7;font-size:.86rem}
  .ubar .wrap{display:flex;gap:8px 22px;align-items:center;justify-content:center;flex-wrap:wrap;padding-block:7px}
  .ubar a{text-decoration:none;color:#fff;font-weight:700}
  .ubar span{display:inline-flex;align-items:center;gap:6px}
  .ubar svg{width:14px;height:14px;color:var(--gold-2)}
  @media (max-width:700px){.ubar .u-addr,.ubar .u-hours{display:none}}

  /* header */
  header.site{position:sticky;top:0;z-index:40;background:var(--ink);border-bottom:3px solid var(--gold)}
  .nav{display:flex;align-items:center;gap:18px;height:var(--hdr)}
  .nav .logo{flex:none}
  .nav .logo img{height:48px;width:auto}
  .nav-links{display:flex;gap:6px;margin-left:6px}
  .menu{position:relative}
  .menu>button,.menu>a{background:none;border:0;color:#d9d3c8;font-weight:600;font-size:.95rem;display:inline-flex;align-items:center;gap:5px;cursor:pointer;padding:10px 10px;text-decoration:none;border-radius:6px;white-space:nowrap}
  .menu>button:hover,.menu.open>button,.menu>button[aria-current="true"],.menu>a[aria-current="true"]{color:#fff;background:#24201b}
  .nav-about{color:var(--gold-2)!important;font-weight:700}
  .menu>button svg{width:12px;height:12px;transition:transform .15s}
  .menu.open>button svg{transform:rotate(180deg)}
  .dd{position:absolute;top:calc(100% + 6px);left:0;min-width:250px;background:var(--paper);border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.28);padding:8px;display:none;z-index:5}
  .dd::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
  .menu.open .dd{display:block}
  @media (hover:hover) and (min-width:1061px){.menu:hover .dd{display:block}.menu:hover>button svg{transform:rotate(180deg)}}
  .dd a{display:block;padding:10px 12px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:700;font-size:.95rem}
  .dd a small{display:block;color:var(--text-3);font-weight:400;font-size:.82rem}
  .dd a:hover,.dd a:focus-visible{background:var(--bg)}
  .hsearch{position:relative;flex:1;max-width:260px;margin-left:auto}
  .hsearch input{width:100%;background:#24201b;border:1px solid #4a443c;color:#fff;border-radius:999px;padding:9px 14px 9px 36px;font-size:.92rem}
  .hsearch input::placeholder{color:#a9a298}
  .hsearch input:focus{outline:none;border-color:var(--gold-2);background:#2c2720}
  .hsearch svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#a9a298;pointer-events:none}
  .nav-right{display:flex;align-items:center;gap:10px;flex:none}
  .nav-right .btn{padding:10px 14px;font-size:.92rem}
  .uchip{display:inline-flex;align-items:center;gap:8px;background:#24201b;border:1px solid #4a443c;color:#fff;border-radius:999px;padding:4px 12px 4px 4px;cursor:pointer;font-size:.86rem;font-weight:600}
  .uchip .av{width:30px;height:30px;font-size:.8rem}
  .uchip small{display:block;color:#a9a298;font-size:.72rem;font-weight:600;line-height:1}
  .uchip span{line-height:1.15;text-align:left}
  .menu .dd.right{left:auto;right:0}
  .av{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--ink);font:900 1rem/1 var(--display);letter-spacing:.04em}
  .av.dark{background:var(--ink);color:var(--yellow)}
  .av-img{object-fit:cover;object-position:50% 30%;border:2px solid var(--gold-2);background:#fff8e8}
  .burger{display:none;background:none;border:1px solid #4a443c;color:#fff;border-radius:8px;width:44px;height:44px;place-items:center;cursor:pointer}
  .burger svg{width:22px;height:22px}
  @media (max-width:1240px){.hsearch{max-width:180px}.nav-links{gap:0}.menu>button,.menu>a{padding:10px 7px;font-size:.9rem}}
  @media (max-width:1060px){.nav-links,.hsearch{display:none}.burger{display:inline-grid}.nav-right{margin-left:auto}}
  @media (max-width:560px){.nav .logo img{height:40px}.nav-right .acct-slot{display:none}.nav-right .btn-tessa svg{display:none}.nav-right .btn-tessa{padding:10px 11px;font-size:.88rem}.nav{gap:10px}}

  /* drawer */
  .drawer-bg{position:fixed;inset:0;background:rgba(15,13,10,.55);z-index:80}
  .drawer{position:fixed;top:0;right:0;bottom:0;width:min(360px,100%);background:var(--paper);z-index:81;overflow-y:auto;padding:18px 18px 40px;box-shadow:-20px 0 50px rgba(0,0,0,.25)}
  .drawer .dhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
  .drawer .dh{font:800 .78rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:22px 0 6px}
  .drawer a{display:block;padding:11px 4px;border-bottom:1px solid var(--line);text-decoration:none;font-weight:700}
  .drawer .dsearch input{padding-left:14px}
  .xbtn{background:var(--bg);border:0;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;cursor:pointer}
  .xbtn svg{width:18px;height:18px}

  /* forms */
  label{display:block;font-size:.82rem;font-weight:700;color:var(--text-2);margin-bottom:6px}
  input,select,textarea{width:100%;font:inherit;font-size:1rem;color:var(--text);background:#faf9f7;border:1px solid var(--line);border-radius:8px;padding:12px 13px}
  input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);background:#fff}
  input.bad,select.bad{border-color:var(--red)!important}
  textarea{min-height:90px;resize:vertical}
  input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--gold)}
  input[type=range]{padding:0;accent-color:var(--gold);background:none;border:0}

  /* hero */
  .hero{background:var(--paper);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
  .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(180deg,transparent,#efeeeb);pointer-events:none}
  .hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;padding-block:52px 44px;position:relative;z-index:1}
  .hero h1,.hero .hero-tag{font-family:var(--display);text-transform:uppercase;margin:0;line-height:.95;letter-spacing:.005em;text-wrap:balance;font-size:clamp(3.4rem,8vw,6.2rem);font-weight:900;color:var(--ink)}
  .hero h1 span,.hero .hero-tag span{display:block;background:linear-gradient(180deg,var(--gold-2) 10%,var(--gold) 70%,#8a6118);-webkit-background-clip:text;background-clip:text;color:transparent}
  .hero .lede{font-size:1.18rem}
  .hero-ask{display:flex;align-items:center;gap:8px;margin-top:26px;background:var(--paper);border:2px solid var(--ink);border-radius:12px;padding:6px 6px 6px 10px;box-shadow:0 12px 30px rgba(23,20,15,.1);max-width:560px}
  .hero-ask input{border:0;background:transparent;padding:10px 4px;font-size:1.05rem;min-width:0}
  .hero-ask input:focus{background:transparent}
  .hero-ask .btn{padding:12px 16px}
  .hero-try{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;font-size:.86rem;color:var(--text-3);align-items:center}
  .hero-try button{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:.84rem;cursor:pointer;color:var(--text-2)}
  .hero-try button:hover{border-color:var(--gold)}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
  .trustrow{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:.92rem;color:var(--text-2)}
  .trustrow span{display:inline-flex;align-items:center;gap:7px}
  .trustrow svg{width:18px;height:18px;color:var(--green)}
  .hero-art{position:relative;display:grid;place-items:center}
  .hero-art img{width:100%;max-width:560px;mix-blend-mode:multiply}
  .stock-badge{position:absolute;bottom:2%;right:4%;background:var(--ink);color:#fff;border-radius:10px;padding:12px 14px;text-align:left;box-shadow:0 10px 30px rgba(0,0,0,.18);text-decoration:none}
  .stock-badge b{display:block;font:900 2.2rem/1 var(--display);color:var(--yellow)}
  .stock-badge span{font-size:.8rem;color:#d9d3c8;letter-spacing:.06em;text-transform:uppercase}
  @media (max-width:900px){.hero-grid{grid-template-columns:1fr;padding-top:34px}.hero-art{order:-1;padding-bottom:56px}.stock-badge{bottom:0;right:auto;left:0;display:flex;align-items:center;gap:10px;padding:8px 12px}.stock-badge b{font-size:1.6rem}}
  @media (max-width:520px){.hero-ask .btn span{display:none}}

  /* stats band */
  .stats{background:var(--ink);color:#fff;border-bottom:3px solid var(--gold)}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
  .stat{padding:24px 20px;border-left:1px solid #332e27;display:block;text-align:left;background:none;border-top:0;border-right:0;border-bottom:0;color:#fff;text-decoration:none}
  .stat:first-child{border-left:0}
  .stat b{display:block;font:900 2.4rem/1 var(--display);color:var(--yellow)}
  .stat span{display:block;margin-top:6px;color:#cfc9bf;font-size:.95rem}
  button.stat{cursor:pointer;position:relative}
  button.stat:hover{background:#221f1b}
  button.stat em{font-style:normal;color:var(--gold-2);font-weight:700;font-size:.82rem;display:inline-flex;gap:4px;margin-top:6px}
  .live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#47c27a;box-shadow:0 0 0 0 rgba(71,194,122,.6);animation:pulse 2s infinite;vertical-align:middle;margin-left:6px}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(71,194,122,.55)}70%{box-shadow:0 0 0 9px rgba(71,194,122,0)}100%{box-shadow:0 0 0 0 rgba(71,194,122,0)}}
  @media (max-width:900px){.stats-grid{grid-template-columns:1fr 1fr}.stat:nth-child(3){border-left:0}.stat:nth-child(n+3){border-top:1px solid #332e27}}

  section{padding-block:84px}
  @media (max-width:700px){section{padding-block:60px}}
  .sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:34px}
  .page-head{background:var(--paper);border-bottom:1px solid var(--line);padding-block:44px 34px}
  .crumbs{font-size:.88rem;color:var(--text-3);margin-bottom:14px}
  .crumbs a{color:var(--text-2);text-decoration:none}
  .crumbs a:hover{color:var(--gold)}

  /* demo tour */
  .tour{background:var(--paper);border-bottom:1px solid var(--line)}
  .tour-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
  .tour-col{border:1px solid var(--line);border-radius:16px;padding:22px;background:var(--bg)}
  .tour-col.dark{background:var(--ink);border-color:var(--ink);color:#fff}
  .tour-col h3{font-size:1.7rem;margin:6px 0 4px}
  .tour-col>p{margin:0 0 16px;color:var(--text-2);font-size:.98rem}
  .tour-col.dark>p{color:#cfc9bf}
  .tour-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .pcard{background:var(--paper);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;text-align:left}
  .pcard .ph{display:flex;gap:10px;align-items:center}
  .pcard .ph b{display:block;font-weight:700;line-height:1.15}
  .pcard .ph small{display:block;color:var(--text-3);font-size:.82rem}
  .pcard p{margin:0;font-size:.9rem;color:var(--text-2)}
  .pcard ul{margin:0;padding-left:18px;font-size:.86rem;color:var(--text-2)}
  .pcard .btn{margin-top:auto}
  .pcard.on{box-shadow:0 0 0 2px var(--gold)}
  @media (max-width:900px){.tour-grid{grid-template-columns:1fr}}
  @media (max-width:520px){.tour-cards{grid-template-columns:1fr}}

  /* shop by category */
  .cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
  .cat{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .15s,border-color .15s}
  .cat:hover{transform:translateY(-3px);border-color:var(--gold)}
  .cat .ph{background:#fff;aspect-ratio:420/224;border-bottom:1px solid var(--line)}
  .cat .ph img{width:100%;height:100%;object-fit:contain}
  .cat .cb{padding:16px 18px 18px}
  .cat b{font:900 1.6rem/1 var(--display);text-transform:uppercase}
  .cat p{margin:6px 0 10px;color:var(--text-2);font-size:.92rem}
  .cat .cnt{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}
  @media (max-width:980px){.cat-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:480px){.cat-grid{grid-template-columns:1fr}}

  /* on the lot (original cards) */
  .lot{background:var(--bg)}
  .lot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .unit{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
  .unit-photo{position:relative;background:#fff;aspect-ratio:420/224;display:grid;place-items:center;border-bottom:1px solid var(--line)}
  .unit-photo img{width:100%;height:100%;object-fit:contain}
  .status{position:absolute;top:12px;left:12px;font:700 .72rem/1 var(--body);letter-spacing:.1em;text-transform:uppercase;padding:7px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}
  .status::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
  .status.in{background:var(--green-soft);color:var(--green)}
  .status.last{background:var(--red-soft);color:var(--red)}
  .qty{position:absolute;top:10px;right:12px;background:var(--ink);color:#fff;border-radius:8px;padding:6px 10px;text-align:center}
  .qty b{display:block;font:900 1.6rem/1 var(--display);color:var(--yellow)}
  .qty span{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#d9d3c8}
  .unit-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
  .unit-body .line{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
  .unit-body p{margin:0;color:var(--text-2);font-size:.98rem}
  .feat{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px;padding:0}
  .feat li{list-style:none;font-size:.8rem;background:var(--alu);border-radius:999px;padding:5px 10px}
  .cta-note{font-weight:700;font-size:.92rem;color:var(--ink)}
  .unit .btns{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:auto}
  .unit .btns .btn{padding:13px 14px;font-size:.95rem}
  @media (max-width:980px){.lot-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:640px){.lot-grid{grid-template-columns:1fr}}

  /* inventory cards */
  .tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  @media (max-width:980px){.tgrid{grid-template-columns:1fr 1fr}}
  @media (max-width:640px){.tgrid{grid-template-columns:1fr}}
  .tcard{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s}
  .tcard:hover{border-color:#cbbf9f;box-shadow:0 14px 34px rgba(23,20,15,.08)}
  .tcard.sold{opacity:.6}
  .tc-photo{position:relative;display:block;background:#fff;aspect-ratio:420/224;border-bottom:1px solid var(--line)}
  .tc-photo img{width:100%;height:100%;object-fit:contain}
  .stag{position:absolute;left:10px;bottom:10px;font:700 .72rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;background:var(--green-soft);color:var(--green)}
  .stag::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
  .stag.order{background:var(--blue-soft);color:var(--blue)}
  .stag.hold{background:var(--amber-soft);color:var(--amber)}
  .stag.sold{background:var(--red-soft);color:var(--red)}
  .heart{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.95);display:grid;place-items:center;cursor:pointer;color:var(--text-3);z-index:2;transition:transform .15s}
  .heart:hover{transform:scale(1.08);color:var(--red)}
  .heart svg{width:20px;height:20px}
  .heart[aria-pressed="true"]{color:var(--red);border-color:#f0c4b4}
  .heart[aria-pressed="true"] svg{fill:currentColor}
  .heart.inline{position:static;flex:none}
  .tc-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
  .tc-body em{font-style:normal;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
  .tc-body h3,.tc-body .h3{font-size:1.55rem}
  .tc-body h3 a,.tc-body .h3 a{text-decoration:none}
  .specs3{list-style:none;padding:0;margin:2px 0 0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden}
  .specs3 li{padding:8px 10px;border-left:1px solid var(--line)}
  .specs3 li:first-child{border-left:0}
  .specs3 b{display:block;font-weight:700;font-size:.95rem;line-height:1.2}
  .specs3 span{display:block;font-size:.72rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}
  .tc-foot{display:grid;gap:12px;margin-top:auto;padding-top:4px}
  .tc-acts{display:flex;gap:8px;flex-wrap:wrap}
  .tc-acts .btn{flex:1}
  /* list price, Timeless discount, Your price, estimated payment */
  .pricing{display:grid;gap:3px}
  .pricing .list{font:800 1.25rem/1.1 var(--display);color:var(--text-2);text-decoration:line-through;text-decoration-thickness:2px;letter-spacing:.01em}
  .pricing .plabel{font:700 .74rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-top:6px}
  .pricing .price{margin-top:2px}
  .pricing .est{font:600 .85rem/1.3 var(--body);color:var(--text-2)}
  .pay-note{font-size:.78rem;line-height:1.45;color:var(--text-3);margin:16px 0 0;max-width:76ch}
  .unit-body .pricing{margin:4px 0 2px}
  .price{font:900 1.9rem/1 var(--display);color:var(--ink)}
  .price small{display:block;font:600 .8rem/1.3 var(--body);color:var(--text-3);margin-top:4px}
  .cmp{display:flex;align-items:center;gap:7px;font-size:.84rem;font-weight:600;color:var(--text-2);margin:0;cursor:pointer;border-top:1px solid var(--line);padding-top:10px}
  .badges{display:flex;flex-wrap:wrap;gap:6px}
  .badge{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700;padding:5px 9px;border-radius:999px;background:var(--alu);color:var(--text)}
  .badge svg{width:13px;height:13px;flex:none}
  .badge{white-space:nowrap}
  .badge.ok{background:var(--green-soft);color:var(--green)}
  .badge.warn{background:var(--amber-soft);color:var(--amber)}
  .badge.bad{background:var(--red-soft);color:var(--red)}
  .badge.info{background:var(--blue-soft);color:var(--blue)}

  .toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:22px}
  .toolbar .tb-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
  .toolbar input{max-width:240px;padding:10px 12px}
  .toolbar select{width:auto;padding:10px 12px}
  .rcount{font-size:.92rem;color:var(--text-3);margin:-8px 0 16px}
  .empty{border:2px dashed var(--line);border-radius:14px;padding:36px 20px;text-align:center;color:var(--text-2);background:var(--paper)}
  .empty b,.empty h1{display:block;font:800 1.5rem/1 var(--display);text-transform:uppercase;color:var(--ink);margin-bottom:8px}

  /* chips (lineup filter) */
  .chips{display:flex;flex-wrap:wrap;gap:8px}
  .chip{font:600 .92rem/1 var(--body);padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--text);cursor:pointer}
  .chip[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
  .chip small{opacity:.65;margin-left:4px}

  /* matcher */
  .matcher{background:var(--ink);color:#fff}
  .matcher .lede{color:#cfc9bf}
  .matcher h2{color:#fff}
  .match-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:start}
  .picks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
  .pick{border:1px solid #4a443c;background:#221f1b;color:#fff;border-radius:10px;padding:14px;text-align:left;cursor:pointer;font:600 1rem/1.25 var(--body)}
  .pick small{display:block;color:#a9a298;font-weight:400;font-size:.82rem;margin-top:4px}
  .pick[aria-pressed="true"]{border-color:var(--gold-2);background:#2c2720;box-shadow:inset 0 0 0 1px var(--gold-2)}
  .match-card{background:var(--paper);color:var(--text);border-radius:14px;overflow:hidden}
  .match-card .photo{background:#fff;aspect-ratio:420/224;border-bottom:1px solid var(--line)}
  .match-card .photo img{width:100%;height:100%;object-fit:contain}
  .match-card .body{padding:24px;display:grid;gap:10px}
  .match-card h3{font-size:2rem}
  .match-card p{margin:0;color:var(--text-2)}
  .match-card .ask{border-top:1px solid var(--line);padding-top:14px;margin-top:4px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
  .match-card .ask span{font-size:.9rem;color:var(--text-3)}
  .match-card .ask .btns{display:flex;gap:8px;flex-wrap:wrap}
  @media (max-width:900px){.match-grid{grid-template-columns:1fr}}
  @media (max-width:420px){.picks{grid-template-columns:1fr}}

  /* lineup */
  .line-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
  .model{color:var(--text);background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .15s,border-color .15s;cursor:pointer;text-align:left;padding:0}
  .model:hover{transform:translateY(-3px);border-color:var(--gold)}
  .model .ph{position:relative;background:#fff;aspect-ratio:420/224;width:100%}
  .model .mtag{position:absolute;top:10px;left:10px;background:var(--ink);color:#fff}
  .model .mtag::before{background:var(--blue)}
  .model .ph img{width:100%;height:100%;object-fit:contain}
  .model .mb{padding:14px 16px 16px;display:grid;gap:4px}
  .model .mb b{font:800 1.3rem/1 var(--display);text-transform:uppercase}
  .model .mb span{font-size:.85rem;color:var(--text-2)}
  .model .mb em{font-style:normal;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
  .model[hidden]{display:none}
  @media (max-width:980px){.line-grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:480px){.line-grid{grid-template-columns:1fr}}

  /* advisor promo */
  .meet{background:radial-gradient(1200px 500px at 85% 0%,#2c2720 0,transparent 60%),var(--ink);color:#fff;position:relative;overflow:hidden}
  .meet-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .meet h2{color:#fff}
  .meet h2 span{color:var(--yellow)}
  .meet .lede{color:#cfc9bf}
  .caps{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
  .caps li{display:flex;gap:12px;align-items:flex-start;color:#e8e3da}
  .caps svg{flex:none;width:22px;height:22px;color:var(--gold-2);margin-top:2px}
  .caps b{color:#fff}
  .meet .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
  .democ{background:#f7f6f3;color:var(--text);border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.45);overflow:hidden;max-width:520px;justify-self:end;width:100%}
  .democ .dh{background:var(--ink-2);color:#fff;display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:3px solid var(--gold)}
  .democ .dh b{font-weight:700}
  .democ .dh small{display:block;color:#a9a298;font-size:.78rem}
  .democ .dlog{padding:16px;min-height:350px;display:flex;flex-direction:column;gap:10px}
  .democ .dinput{border-top:1px solid var(--line);padding:10px 14px;display:flex;gap:8px;align-items:center;background:#fff;font-size:.95rem;color:var(--text-3);min-height:52px}
  .democ .dinput .cur{display:inline-block;width:2px;height:1.1em;background:var(--gold);animation:blink 1s steps(1) infinite;vertical-align:middle}
  .democ .dinput .typed{color:var(--text)}
  @keyframes blink{50%{opacity:0}}
  @media (max-width:900px){.meet-grid{grid-template-columns:1fr}.democ{justify-self:stretch;max-width:none}}

  /* why */
  .why{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
  .why-item{padding:26px 24px;border-left:1px solid var(--line)}
  .why-item:first-child{border-left:0}
  .why-item svg{width:30px;height:30px;color:var(--gold);margin-bottom:12px}
  .why-item b{display:block;font:800 1.35rem/1.05 var(--display);text-transform:uppercase;margin-bottom:6px}
  .why-item p{margin:0;color:var(--text-2);font-size:.95rem}
  @media (max-width:900px){.why-grid{grid-template-columns:1fr 1fr}.why-item:nth-child(3){border-left:0}.why-item:nth-child(n+3){border-top:1px solid var(--line)}}
  @media (max-width:520px){.why-grid{grid-template-columns:1fr}.why-item{border-left:0;border-top:1px solid var(--line)}.why-item:first-child{border-top:0}}

  /* testimonials */
  .tq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .tq{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px;margin:0;display:flex;flex-direction:column;gap:14px}
  .tq .stars{color:var(--gold-2);letter-spacing:2px}
  .tq blockquote{margin:0;font-size:1.05rem;color:var(--text)}
  .tq figcaption{margin-top:auto;font-size:.9rem;color:var(--text-3)}
  .tq figcaption b{color:var(--text);display:block}
  @media (max-width:900px){.tq-grid{grid-template-columns:1fr}}

  /* quote / visit */
  .quote-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
  .visit{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:18px}
  .visit li{display:flex;gap:14px}
  .visit svg{flex:none;width:22px;height:22px;color:var(--gold);margin-top:3px}
  .visit small{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}
  .visit b{font-weight:700}
  .mapcard{margin-top:24px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:
    linear-gradient(90deg,transparent 48%,#e9e3d3 48% 52%,transparent 52%),
    linear-gradient(0deg,transparent 60%,#efe9da 60% 63%,transparent 63%),
    linear-gradient(35deg,transparent 46%,#e3dccb 46% 49%,transparent 49%),#f4f1e8;height:170px;position:relative}
  .mapcard .pin{position:absolute;left:50%;top:44%;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center}
  .mapcard .pin span{background:var(--ink);color:#fff;font-size:.78rem;font-weight:700;padding:6px 10px;border-radius:8px;white-space:nowrap}
  .mapcard .pin svg{width:30px;height:30px;color:var(--red);margin-top:-2px}
  .mapcard .btn{position:absolute;right:12px;bottom:12px}
  form.q{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 14px 40px rgba(23,20,15,.06)}
  .fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .full{grid-column:1/-1}
  .form-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}
  .form-foot p{margin:0;color:var(--text-3);font-size:.85rem;max-width:36ch}
  .done{text-align:center;padding:36px 10px}
  .done svg{width:60px;height:60px;color:var(--green);margin:0 auto 14px}
  .done h3{font-size:2rem;margin-bottom:8px}
  .done p{color:var(--text-2);margin:0 auto;max-width:44ch}
  @media (max-width:900px){.quote-grid{grid-template-columns:1fr}}
  @media (max-width:560px){.fields{grid-template-columns:1fr}form.q{padding:20px}}

  /* CTA band */
  .ctaband{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--ink);padding-block:44px}
  .ctaband .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
  .ctaband h2{font-size:clamp(2rem,4.4vw,3rem)}
  .ctaband p{margin:8px 0 0;font-weight:600}
  .ctaband .btns{display:flex;gap:10px;flex-wrap:wrap}

  /* detail */
  .detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:start}
  .detail-grid>.dside+div{grid-column:1;grid-row:1}
  .detail-grid>.block{grid-column:1/-1} /* the Similar trailers / Other models strip runs full width underneath */
  .detail-grid>.dside{grid-column:2;grid-row:1} /* the aside comes first in the source so the H1 leads the page; it still shows on the right */
  .dphoto{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;aspect-ratio:420/250;display:grid;place-items:center}
  .dphoto img{width:100%;height:100%;object-fit:contain}
  .dside{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px;display:grid;gap:14px;position:sticky;top:calc(var(--hdr) + 160px)} /* sticks below the Made in the USA shield at the top right */
  .dside h1{font-size:clamp(2.2rem,4vw,3rem)}
  .dprice{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:14px}
  .dprice .price{font-size:2.6rem}
  .dprice .pricing .list{font-size:1.5rem}
  .dprice .pay{text-align:right;font-size:.88rem;color:var(--text-2)}
  .dprice .pay b{display:block;font:800 1.5rem/1 var(--display);color:var(--ink)}
  .dbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .dbtns .btn{padding:13px 10px;font-size:.92rem;white-space:normal;text-align:center}
  .spec-table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:.98rem}
  .spec-table th,.spec-table td{padding:11px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
  .spec-table th{width:42%;color:var(--text-2);font-weight:600;background:#faf9f7}
  .spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:0}
  .flist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}
  .flist li{display:flex;gap:8px;align-items:flex-start}
  .flist svg{flex:none;width:18px;height:18px;color:var(--green);margin-top:4px}
  .block{margin-top:36px}
  .block h3,.block .h3{margin-bottom:14px}
  @media (max-width:900px){.detail-grid{grid-template-columns:1fr}.detail-grid>div,.detail-grid>.dside{grid-column:1;grid-row:auto}.detail-grid>.dside{order:2}.detail-grid>.block{order:3}.dside{position:static}.flist{grid-template-columns:1fr}}

  /* finder */
  .finder{max-width:860px;margin:0 auto}
  .fsteps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:26px}
  .fsteps span{height:6px;border-radius:99px;background:var(--line)}
  .fsteps span.on{background:var(--gold)}
  .fcard{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:28px}
  .fcard h3,.fcard .h3{font-size:2rem;margin-bottom:6px}
  .fcard>p{margin:0 0 20px;color:var(--text-2)}
  .opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
  .opt{border:1px solid var(--line);background:#faf9f7;border-radius:10px;padding:14px;text-align:left;cursor:pointer;font:600 1rem/1.25 var(--body)}
  .opt small{display:block;color:var(--text-3);font-weight:400;font-size:.84rem;margin-top:4px}
  .opt:hover{border-color:var(--gold)}
  .opt[aria-pressed="true"]{border-color:var(--gold);background:#fff8e8;box-shadow:inset 0 0 0 1px var(--gold)}
  .fnav{display:flex;justify-content:space-between;gap:10px;margin-top:24px;flex-wrap:wrap}
  .wread{font:900 3.2rem/1 var(--display);color:var(--ink);margin:6px 0 10px}
  .wread small{font:600 1rem var(--body);color:var(--text-3)}
  .results{display:grid;gap:14px;margin-top:20px}
  .res{display:grid;grid-template-columns:220px 1fr auto;gap:18px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px}
  .res.top{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
  .res img{width:100%;aspect-ratio:420/224;object-fit:contain;background:#fff;border-radius:8px}
  .res h4,.res .rk-title{margin:0;font:900 1.5rem/1 var(--display);text-transform:uppercase;letter-spacing:.005em}
  .res p{margin:6px 0 8px;color:var(--text-2);font-size:.94rem}
  .res .rk{font:900 .8rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
  .res .ra{display:grid;gap:8px;justify-items:end;text-align:right}
  @media (max-width:760px){.res{grid-template-columns:1fr}.res .ra{justify-items:start;text-align:left}}

  /* compare */
  .cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
  .cmp-table{border-collapse:collapse;width:100%;min-width:640px}
  .cmp-table th,.cmp-table td{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.96rem}
  .cmp-table thead td{vertical-align:bottom}
  .cmp-table th{color:var(--text-2);font-weight:600;background:#faf9f7;width:180px;position:sticky;left:0}
  .cmp-table td.best{background:var(--green-soft);font-weight:700;color:var(--green)}
  .cmp-head img{width:100%;max-width:220px;aspect-ratio:420/224;object-fit:contain;background:#fff;border-radius:8px;border:1px solid var(--line)}
  .cmp-head b{display:block;font:900 1.3rem/1 var(--display);text-transform:uppercase;margin:8px 0 4px}
  .cmp-tray{position:fixed;left:16px;bottom:calc(var(--mbar-h) + 16px);z-index:45;background:var(--ink);color:#fff;border-radius:999px;padding:8px 8px 8px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 30px rgba(0,0,0,.3);font-size:.9rem;font-weight:600}
  .cmp-tray .btn{padding:8px 12px;font-size:.85rem}

  /* accessories: picture cards, and the request box that sticks beside them */
  .acc-grid{display:grid;grid-template-columns:1fr 330px;gap:26px;align-items:start}
  .acc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
  .acc{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
  .acc-pic{aspect-ratio:4/3;background:var(--alu);display:grid;place-items:center;overflow:hidden}
  .acc-pic img{width:100%;height:100%;object-fit:cover;display:block}
  .acc-ico{width:64px;height:64px;color:var(--gold);opacity:.85}
  .acc-ico svg{width:100%;height:100%}
  .acc-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
  .acc em{font-style:normal;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
  .acc b{font-weight:700;line-height:1.25}
  .acc small{color:var(--text-3);font-size:.8rem}
  .acc .pp{display:flex;justify-content:space-between;align-items:center;margin-top:auto;gap:8px;padding-top:6px}
  .acc .pp strong{font:900 1.4rem/1 var(--display)}
  .request{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;position:sticky;top:calc(var(--hdr) + 160px)} /* below the shield */
  .request h3,.request .h3{font-size:1.5rem;margin-bottom:12px}
  .citem{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.92rem}
  .qtyc{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden}
  .qtyc button{background:var(--bg);border:0;width:28px;height:28px;cursor:pointer;font-weight:700}
  .qtyc span{min-width:28px;text-align:center;font-weight:700}
  .ctotal{display:flex;justify-content:space-between;font-weight:700;margin:14px 0}
  @media (max-width:900px){.acc-grid{grid-template-columns:1fr}.request{position:static}}

  /* generic panels */
  .grid2{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  @media (max-width:900px){.grid2,.grid3{grid-template-columns:1fr}}
  .panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:24px}
  .panel h3,.panel .h3{margin-bottom:12px}
  .svc{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:18px}
  .svc b{display:block;font:800 1.3rem/1.05 var(--display);text-transform:uppercase}
  .svc span{display:block;font-weight:700;color:var(--gold);font-size:.9rem;margin:4px 0 6px}
  .svc p{margin:0;color:var(--text-2);font-size:.94rem}
  .ttable{width:100%;border-collapse:collapse;font-size:.95rem}
  .ttable th,.ttable td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
  .ttable th{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:700}
  .docs{list-style:none;padding:0;margin:0;display:grid;gap:8px}
  .docs button{width:100%;display:flex;justify-content:space-between;align-items:center;background:#faf9f7;border:1px solid var(--line);border-radius:10px;padding:12px 14px;cursor:pointer;font-weight:600;text-align:left}
  .docs button:hover{border-color:var(--gold)}
  .docs small{color:var(--text-3);font-weight:400}

  /* financing */
  .calc-out{background:var(--ink);color:#fff;border-radius:14px;padding:24px;display:grid;gap:12px}
  .calc-out .big{font:900 3.6rem/1 var(--display);color:var(--yellow)}
  .calc-out .row{display:flex;justify-content:space-between;border-top:1px solid #332e27;padding-top:10px;color:#cfc9bf;font-size:.95rem}
  .calc-out .row b{color:#fff}
  .range-row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-3)}
  .termset{display:flex;gap:6px;flex-wrap:wrap}

  /* account */
  .acct-head{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
  .acct-head .av{width:64px;height:64px;font-size:1.5rem}
  .acct-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
  .asec{margin-top:34px}
  .asec>h3,.asec>.h3{display:flex;align-items:center;gap:10px;margin-bottom:14px}
  .asec>h3 small,.asec>.h3 small{font:700 .8rem/1 var(--body);background:var(--alu);border-radius:99px;padding:4px 9px;color:var(--text-2)}
  .rows{display:grid;gap:10px}
  .ritem{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
  .ritem img{width:96px;aspect-ratio:420/224;object-fit:contain;background:#fff;border-radius:6px;border:1px solid var(--line)}
  .ritem b{display:block;line-height:1.2}
  .ritem small{display:block;color:var(--text-3);font-size:.85rem}
  .ritem .ra{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
  .ritem details{grid-column:1/-1}
  .ritem summary{cursor:pointer;font-weight:700;font-size:.88rem;color:var(--gold)}
  @media (max-width:600px){.ritem{grid-template-columns:1fr}.ritem img{width:120px}.ritem .ra{align-items:flex-start;flex-direction:row;flex-wrap:wrap}}
  .pill{display:inline-flex;align-items:center;gap:6px;font:700 .74rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;padding:6px 9px;border-radius:999px;background:var(--alu);color:var(--text-2);white-space:nowrap}
  .pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
  .pill.green{background:var(--green-soft);color:var(--green)}
  .pill.amber{background:var(--amber-soft);color:var(--amber)}
  .pill.red{background:var(--red-soft);color:var(--red)}
  .pill.blue{background:var(--blue-soft);color:var(--blue)}
  .qitems{width:100%;border-collapse:collapse;font-size:.92rem;margin-top:8px}
  .qitems td{padding:6px 0;border-bottom:1px dashed var(--line)}
  .qitems td:last-child{text-align:right;white-space:nowrap}
  .qitems tr.tot td{border-bottom:0;font-weight:800;font-size:1.05rem;padding-top:10px}
  .qitems tr.sub td{color:var(--text-2)}
  .note{font-size:.82rem;color:var(--text-3);margin:8px 0 0}

  /* admin */
  .admin-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
  .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
  .kpi{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px;border-top:4px solid var(--gold)}
  .kpi b{display:block;font:900 2.8rem/1 var(--display);color:var(--ink)}
  .kpi span{display:block;font-weight:700;margin-top:4px}
  .kpi small{display:block;color:var(--text-3);font-size:.84rem;margin-top:2px}
  @media (max-width:900px){.kpis{grid-template-columns:1fr 1fr}}
  .admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;margin-top:22px;align-items:start}
  @media (max-width:1100px){.admin-grid{grid-template-columns:1fr}}
  .tabs{display:flex;flex-wrap:wrap;gap:2px;border-bottom:2px solid var(--line);margin-bottom:16px}
  .tabs button{background:none;border:0;padding:10px 11px;font-weight:700;color:var(--text-2);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap}
  .tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--gold)}
  .tabs button small{font-weight:700;background:var(--alu);border-radius:99px;padding:2px 7px;margin-left:4px;font-size:.75rem}
  .tscroll{overflow-x:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px}
  .atable{width:100%;border-collapse:collapse;font-size:.93rem;min-width:720px}
  .atable th,.atable td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
  .atable th{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);background:#faf9f7}
  .atable td:first-child{white-space:nowrap}
  .atable td small{display:block;color:var(--text-3);font-size:.8rem}
  .atable input,.atable select{padding:7px 9px;font-size:.92rem;width:auto}
  .atable input[type=number]{width:110px}
  .atable tr.sold td{color:var(--text-3)}
  .atable tr.flash td{animation:flash 2s ease}
  @keyframes flash{0%,40%{background:#fff3cf}100%{background:transparent}}
  .atools{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px;align-items:center}
  .kanban-wrap{overflow-x:auto;padding-bottom:6px}
  .kanban{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;min-width:880px}
  .kcol{background:#ebe9e4;border-radius:12px;padding:10px;min-height:260px;transition:background .15s,box-shadow .15s}
  .kcol.over{background:#fff3cf;box-shadow:inset 0 0 0 2px var(--gold-2)}
  .kcol h4{margin:2px 4px 10px;font:800 .8rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);display:flex;justify-content:space-between}
  .lead{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px;cursor:grab;font-size:.88rem;display:grid;gap:4px}
  .lead.dragging{opacity:.4}
  .lead b{font-size:.95rem}
  .lead small{color:var(--text-3)}
  .lead select{padding:5px 7px;font-size:.82rem;margin-top:4px}
  .atessa{background:var(--ink);color:#fff;border-radius:14px;overflow:hidden;position:sticky;top:calc(var(--hdr) + 16px);display:flex;flex-direction:column;max-height:calc(100vh - var(--hdr) - 40px)}
  .atessa .ah{padding:14px 16px;border-bottom:3px solid var(--gold);display:flex;gap:10px;align-items:center}
  .atessa .ah small{display:block;color:#a9a298;font-size:.8rem}
  .atessa .alog{padding:14px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:220px;flex:1}
  .atessa form{display:flex;gap:6px;padding:10px;border-top:1px solid #332e27}
  .atessa input{background:#24201b;border-color:#4a443c;color:#fff;padding:10px 12px;font-size:.95rem}
  .atessa .achips{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 10px}
  .atessa .achips button{background:#24201b;border:1px solid #4a443c;color:#e8e3da;border-radius:999px;padding:5px 10px;font-size:.8rem;cursor:pointer;text-align:left}
  .atessa .achips button:hover{border-color:var(--gold-2)}
  @media (max-width:1100px){.atessa{position:static;max-height:none}}
  .confirm{background:#fff;color:var(--text);border-radius:12px;padding:12px;border:2px solid var(--gold-2);font-size:.9rem}
  .confirm .ch{font:800 .74rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
  .confirm ul{margin:0 0 8px;padding-left:18px}
  .confirm .cb{display:flex;gap:6px;margin-top:8px}
  .confirm .yes{font-size:.78rem;color:var(--text-3)}
  .confirm.done{border-color:var(--green)}
  .confirm.cancel{border-color:var(--line);opacity:.7}
  .spin{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}
  .locked{max-width:760px;margin:0 auto;text-align:center}

  /* chat */
  /* Andy the mascot, bottom right: the cartoon waves, the speech bubble says Ask Andy, the whole thing is one button */
  .tz-fab{position:fixed;right:10px;bottom:calc(var(--mbar-h) + 4px);z-index:58;display:flex;align-items:flex-end;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--ink);filter:drop-shadow(0 12px 22px rgba(0,0,0,.32))}
  /* three drawings crossfade in a 12-second loop: wave, look at you, read the clipboard, look at you */
  .tz-fab .andy{position:relative;display:block;width:160px;height:160px;transform-origin:50% 100%;animation:andy-float 4.5s ease-in-out infinite}
  .tz-fab .andy img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;animation:12s linear infinite}
  .tz-fab .andy .f1{opacity:1;animation-name:andy-f1}
  .tz-fab .andy .f2{animation-name:andy-f2}
  .tz-fab .andy .f3{animation-name:andy-f3}
  @keyframes andy-f1{0%,27%{opacity:1}31%,96%{opacity:0}100%{opacity:1}}
  @keyframes andy-f2{0%,27%{opacity:0}31%,52%{opacity:1}56%,77%{opacity:0}81%,96%{opacity:1}100%{opacity:0}}
  @keyframes andy-f3{0%,52%{opacity:0}56%,77%{opacity:1}81%,100%{opacity:0}}
  .tz-fab .bubble{position:relative;background:#fff;border:2px solid var(--gold);border-radius:16px;padding:8px 14px;font-weight:800;font-size:1.05rem;line-height:1.1;white-space:nowrap;text-align:left;margin:0 -4px 104px 0;animation:andy-float 4.5s ease-in-out infinite;animation-delay:.2s}
  .tz-fab .bubble small{display:block;color:var(--text-3);font-weight:600;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px}
  .tz-fab .bubble::before{content:"";position:absolute;right:-12px;bottom:12px;border:6px solid transparent;border-left:7px solid var(--gold)}
  .tz-fab .bubble::after{content:"";position:absolute;right:-8px;bottom:13px;border:5px solid transparent;border-left:6px solid #fff}
  .tz-fab:hover .andy,.tz-fab:focus-visible .andy{animation:andy-wave .7s ease-in-out}
  .tz-fab:hover .bubble{background:#fff8e8}
  @keyframes andy-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
  @keyframes andy-wave{0%,100%{transform:rotate(0)}25%{transform:rotate(-5deg) translateY(-4px)}60%{transform:rotate(4deg) translateY(-4px)}}
  @media (max-width:600px){.tz-fab{right:6px}.tz-fab .andy{width:104px;height:104px}.tz-fab .bubble{padding:6px 10px;font-size:.9rem;margin-bottom:64px}.tz-fab .bubble small{font-size:.62rem}}
  @media (prefers-reduced-motion:reduce){.tz-fab .andy,.tz-fab .andy img,.tz-fab .bubble{animation:none}.tz-fab .andy .f1{opacity:1}}
  .tz-panel{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(440px,100%);background:#f7f6f3;box-shadow:-20px 0 60px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden;transform:translateX(105%);visibility:hidden;transition:transform .32s ease,visibility .32s}
  .tz-panel.open{transform:none;visibility:visible}
  body.chat-open .tz-fab{display:none}
  .tz-note{margin:0;padding:10px 16px;background:#fff8e8;border-bottom:1px solid #eadfc2;font-size:.84rem;line-height:1.45;color:var(--text-2)}
  .tz-q{margin:12px 16px 0;padding:10px 14px;border-radius:12px;background:var(--ink);color:#fff;font-size:.92rem;align-self:flex-end;max-width:88%}
  .tz-q small{display:block;margin-top:4px;color:#cfc9bf;font-size:.75rem}
  .tz-frame{flex:1;min-height:0;margin-top:8px;background:#fff}
  .tz-frame iframe{display:block;width:100%;height:100%;border:0}
  .tz-head{background:var(--ink);color:#fff;padding:12px 12px 12px 14px;display:flex;align-items:center;gap:10px;border-bottom:3px solid var(--gold)}
  .tz-head b{display:block;font-weight:700}
  .tz-head small{display:block;color:#a9a298;font-size:.78rem}
  .tz-head .sp{flex:1}
  .tz-head button{background:#24201b;border:1px solid #4a443c;color:#fff;border-radius:8px;height:34px;min-width:34px;display:grid;place-items:center;cursor:pointer;font-size:.8rem;font-weight:700;padding:0 8px}
  .tz-head button svg{width:16px;height:16px}
  .tz-head #tzClose{height:44px;min-width:44px}
  .tz-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
  .msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:.95rem;line-height:1.45;animation:pop .2s ease}
  .msg p{margin:0 0 6px}.msg p:last-child{margin:0}
  .msg.me{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:4px}
  .msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
  .msg.bot.wide{max-width:96%}
  .msg .badges{margin:6px 0}
  .msg a{color:var(--gold);font-weight:700}
  .msg.sys{align-self:center;background:none;font-size:.8rem;color:var(--text-3);padding:2px}
  @keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .typing{display:inline-flex;gap:4px;padding:12px 14px}
  .typing i{width:7px;height:7px;border-radius:50%;background:var(--text-3);animation:bounce 1.2s infinite}
  .typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
  @keyframes bounce{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}
  .tz-chips{display:flex;gap:6px;flex-wrap:wrap;padding:0 12px 8px}
  .tz-chip{background:#fff;border:1px solid var(--gold);color:var(--ink);border-radius:999px;padding:7px 12px;font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:none}
  .tz-chip:hover{background:#fff8e8}
  .tz-form{display:flex;gap:6px;padding:10px;border-top:1px solid var(--line);background:#fff}
  .tz-form input{padding:11px 12px;font-size:1rem}
  .tz-form .btn{padding:10px 14px}
  .tz-foot{font-size:.78rem;color:var(--text-3);padding:8px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:#fff}
  .tz-foot a{color:var(--gold)}
  /* spec-sheet list: a small picture always, a big one on hover (desktop) */
  .specs-list li a{display:inline-flex;align-items:center;gap:12px;max-width:100%}
  .specs-list li a>span{display:block}
  .specs-list li a>span small{display:block}
  .spec-thumb{width:64px;height:44px;object-fit:cover;border-radius:6px;flex:none;background:var(--alu)}
  .spec-preview{position:fixed;z-index:70;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.35);pointer-events:none;opacity:0;transform:scale(.97);transition:opacity .15s,transform .15s}
  .spec-preview.on{opacity:1;transform:none}
  .spec-preview img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
  .spec-preview b{display:block;padding:10px 14px;font-weight:700;color:var(--ink)}
  @media (hover:none){.spec-preview{display:none}}
  /* Made in the USA shield (Matt, Oct 24), top right under the header on every page. The picture is Josh's sticker
     artwork with the Timpte logo set into its white panel: tools/usa_badge.py makes site/img/usa-badge.webp. */
  .usa{position:fixed;right:14px;top:calc(var(--hdr) + 10px);z-index:57;display:block;width:118px;text-decoration:none;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35));transition:transform .2s}
  .usa:hover,.usa:focus-visible{transform:scale(1.04)}
  .usa img{display:block;width:100%;height:auto}
  body.chat-open .usa{display:none}
  @media (max-width:600px){.usa{right:8px;top:calc(var(--hdr) + 6px);width:78px}}
  /* chat-or-voice chooser */
  .tz-panel [hidden]{display:none!important}
  .tz-head .tz-seg{display:flex;gap:2px;background:#24201b;border:1px solid #4a443c;border-radius:999px;padding:3px}
  .tz-head .tz-seg button{border:0;background:none;color:#cfc9bf;border-radius:999px;height:28px;min-width:0;padding:0 12px;font-size:.78rem}
  .tz-head .tz-seg button[aria-pressed="true"]{background:var(--gold);color:var(--ink)}
  .tz-choose{padding:22px 16px;display:grid;gap:10px}
  .tz-choose-h{margin:0 0 4px;font:800 1.4rem/1.1 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--ink)}
  .tz-choice{display:flex;align-items:center;gap:14px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;color:var(--text);font:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
  .tz-choice:hover,.tz-choice:focus-visible{border-color:var(--gold);box-shadow:0 10px 28px rgba(0,0,0,.1);transform:translateY(-1px)}
  .tz-choice i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--ink);color:var(--gold-2);flex:none}
  .tz-choice i svg{width:22px;height:22px}
  .tz-choice b{display:block;font-size:1rem}
  .tz-choice small{display:block;color:var(--text-2);font-size:.84rem;line-height:1.35;margin-top:2px}
  .tz-choose-note{margin:6px 0 0;font-size:.8rem;color:var(--text-3)}
  .tz-voice{flex:1;padding:28px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
  .tz-voice-box{width:104px;height:104px;display:grid;place-items:center}
  /* Stammer draws a blue phone button we can't restyle directly; the filter shifts its blue to our gold, and it's scaled up a little */
  .tz-voice-box iframe{display:block;width:104px;height:104px;border:0;transform:scale(1.3);filter:hue-rotate(178deg) saturate(.9)}
  .tz-voice b{font:800 1.3rem/1.1 var(--display);text-transform:uppercase;color:var(--ink)}
  .tz-voice p{margin:0;color:var(--text-2);font-size:.92rem;max-width:30ch}
  .mcard{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;background:#faf9f7;border:1px solid var(--line);border-radius:10px;padding:8px;margin-top:8px;text-decoration:none;color:var(--text)}
  .mcard img{width:100%;aspect-ratio:420/224;object-fit:contain;background:#fff;border-radius:6px}
  .mcard b{display:block;font:800 1.05rem/1.05 var(--display);text-transform:uppercase}
  .mcard small{display:block;color:var(--text-3);font-size:.8rem}
  .mcard strong{font-size:.92rem}
  .mcard span.go{color:var(--gold);font-weight:700;font-size:.82rem}
  @media (max-width:900px){
    .tz-panel{width:100%;bottom:var(--mbar-h)}
    body.chat-open{overflow:hidden}

    .tz-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;scrollbar-width:none}
    .tz-chip{flex:none}
  }

  /* modal + toast */
  .modal-bg{position:fixed;inset:0;background:rgba(15,13,10,.6);z-index:90;display:grid;place-items:center;padding:16px;animation:fade .15s}
  @keyframes fade{from{opacity:0}}
  .modal{background:var(--paper);border-radius:16px;width:min(560px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:24px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.4)}
  .modal.wide{width:min(900px,100%)}
  .modal h3{font-size:2rem;margin:0 40px 6px 0}
  .modal>.xbtn{position:absolute;top:14px;right:14px}
  .modal .sub{color:var(--text-2);margin:0 0 18px}
  .addon{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:.95rem;margin:0;font-weight:600;color:var(--text)}
  .addon span{flex:1}
  .toasts{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--mbar-h) + 90px);z-index:95;display:grid;gap:8px;width:min(440px,calc(100% - 32px))}
  .toast{background:var(--ink);color:#fff;border-left:4px solid var(--gold-2);padding:12px 16px;border-radius:10px;box-shadow:0 14px 40px rgba(0,0,0,.3);font-size:.95rem;animation:pop .2s ease}
  .toast a{color:var(--yellow);font-weight:700}

  footer{background:var(--ink);color:#b9b2a7;padding-block:48px 30px}
  .fgrid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
  .fgrid img{height:54px;width:auto}
  .fgrid .fh{color:#fff;font:800 .8rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;margin:6px 0 12px}
  .fgrid a{display:block;text-decoration:none;color:#cfc9bf;padding:4px 0;font-size:.95rem}
  .fgrid a:hover{color:#fff}
  .fgrid p{margin:12px 0 0;font-size:.92rem}
  .fbot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #332e27;margin-top:30px;padding-top:18px;font-size:.85rem}
  .fbot button{background:none;border:0;color:var(--gold-2);font-weight:700;cursor:pointer;text-decoration:underline;padding:0;font-size:.85rem}
  @media (max-width:900px){.fgrid{grid-template-columns:1fr 1fr}footer{padding-bottom:calc(var(--mbar-h) + 30px)}}
  @media (max-width:520px){.fgrid{grid-template-columns:1fr}}

  .mbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(23,20,15,.96);border-top:2px solid var(--gold)}
  .mbar .btn{flex:1;padding:14px 8px;font-size:.98rem;letter-spacing:.05em}
  .mbar .btn svg{width:1.1em;height:1.1em}
  @media (max-width:900px){.mbar{display:flex}}
  @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important;scroll-behavior:auto!important}.tz-panel{transition:none}}

  /* v3: video, galleries, Timpte branding */
  .hero-video{width:100%;max-width:560px;border-radius:14px;display:block;box-shadow:0 18px 50px rgba(0,0,0,.18);background:#ddd}
  .vid{margin:0;display:grid;gap:8px}
  .vid video{width:100%;border-radius:12px;background:#111;display:block;aspect-ratio:16/9}
  .vid figcaption{font-size:.85rem;color:var(--text-3)}
  .gallery{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
  .photo-note{margin:10px 0 0}
  .sold-banner{background:var(--ink);color:#fff;border-left:4px solid var(--gold);border-radius:10px;padding:14px 18px;margin-bottom:18px;font-weight:700}
  .sold-banner a{color:var(--gold-2)}
  .gallery img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;border:1px solid var(--line);display:block;transition:transform .15s}
  .gallery a:hover img{transform:translateY(-2px)}
  @media (max-width:560px){.gallery{grid-template-columns:repeat(2,1fr)}}
  .why-timpte{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .why-grid2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
  .brandrow{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:22px}
  .brandrow img{height:48px;width:auto}
  @media (max-width:900px){.why-grid2{grid-template-columns:1fr}}
  .tbadge{display:inline-flex;align-items:center;gap:14px;margin-top:18px;text-decoration:none;color:#cfc9bf;font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
  .tbadge:hover{color:#fff}
  .tbadge img{height:30px;width:auto}
  @media (prefers-reduced-motion:reduce){.hero-video{display:none}.hero-art::before{content:"";display:block;width:100%;max-width:560px;aspect-ratio:16/9;border-radius:14px;background:url(/video/hero-loop.webp) center/cover}}

  /* ===== v3 flair pass ===== */
  /* full-screen video hero */
  .hero-full{position:relative;min-height:min(86vh,820px);display:grid;align-items:center;background:#0e0c0a;color:#fff;border:0;overflow:hidden}
  .hero-full::after{display:none}
  .hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
  .hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,10,.5) 0%,rgba(14,12,10,.12) 35%,rgba(14,12,10,.5) 100%)}
  .hero-inner{position:relative;z-index:1;padding-block:72px 96px;display:grid;gap:16px;max-width:1180px}
  .hero-full .eyebrow{color:var(--gold-2)}
  .hero-full h1,.hero-full .hero-tag{color:#fff;font-size:clamp(3.2rem,8.5vw,7rem);text-shadow:0 4px 30px rgba(0,0,0,.4);max-width:12ch}
  .hero-full h1.hero-h1{font:600 clamp(1.2rem,2vw,1.45rem)/1.3 var(--body);text-transform:none;letter-spacing:0;max-width:34ch;text-shadow:0 2px 12px rgba(0,0,0,.5);color:#fff}
  .hero-full .lede{color:#e8e3da;max-width:52ch;font-size:1.15rem;text-shadow:0 2px 12px rgba(0,0,0,.5)}
  .hero-full .hero-ask{background:rgba(255,255,255,.96);border-color:transparent;max-width:600px;margin-top:8px}
  .hero-full .hero-ask input{color:var(--text)}
  .hero-full .hero-try{color:#cfc9bf}
  .hero-full .hero-try button{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:#fff;backdrop-filter:blur(6px)}
  .hero-full .btn-line{border-color:rgba(255,255,255,.6);color:#fff}
  .hero-full .trustrow{color:#d9d3c8}
  .hero-full .trustrow svg{color:var(--gold-2)}
  .hero-full .stock-badge{position:absolute;right:max(20px,calc((100% - 1180px)/2 + 20px));bottom:56px;z-index:2}
  @media (min-width:901px){.hero-full .hero-inner{padding-right:270px}}  /* keeps the text and the trust row clear of the "ready today" badge */
  .hero-scroll{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);color:#cfc9bf;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:.8}
  .hero-scroll i{width:1px;height:28px;background:var(--gold-2);display:block;animation:drop 1.6s ease-in-out infinite}
  @keyframes drop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
  @media (max-width:900px){.hero-full{min-height:0}.hero-inner{padding-block:56px 72px}.hero-full .stock-badge{position:static;display:inline-flex;align-items:center;gap:10px;padding:8px 12px;justify-self:start}.hero-full .stock-badge b{font-size:1.6rem}}

  /* the exclusive-dealer band */
  .excl{background:var(--paper);border-bottom:3px solid var(--gold);padding-block:56px}
  .excl-grid{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
  .excl-logo{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 30px;display:grid;place-items:center;gap:10px}
  .excl-logo img{width:220px;height:auto}
  .excl-logo span{font:700 .7rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}
  .excl h2{font-size:clamp(2.4rem,5.2vw,4.2rem);line-height:.95}
  .excl h2 em{font-style:normal;color:var(--gold)}
  .excl .lede{margin-top:12px}
  .excl .pin{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-weight:700;color:var(--ink)}
  .excl .pin svg{width:20px;height:20px;color:var(--red)}
  .excl .confirm-note{margin-top:14px;font-size:.78rem;color:var(--text-3);border-left:3px solid var(--gold-2);padding-left:10px}
  @media (max-width:760px){.excl-grid{grid-template-columns:1fr}.excl-logo{justify-self:start}}

  /* photographic category tiles */
  .cat-grid{grid-template-columns:repeat(6,1fr);gap:12px}
  .cat{aspect-ratio:4/3;background:var(--ink);border:0;border-radius:16px;grid-column:span 2;color:#fff;justify-content:flex-end}
  .cat:nth-child(4),.cat:nth-child(5){grid-column:span 3;aspect-ratio:16/8}
  .cat .ph{position:absolute;inset:0;background:none;border:0;aspect-ratio:auto}
  .cat .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
  .cat:hover .ph img{transform:scale(1.05)}
  .cat .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,10,.05) 30%,rgba(14,12,10,.85) 100%)}
  .cat .cb{position:relative;padding:22px}
  .cat .cb b{color:#fff;font-size:clamp(1.6rem,2.6vw,2.2rem)}
  .cat p{color:#d9d3c8}
  .cat .cnt{color:var(--gold-2)}
  .cat .series{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);border-radius:8px;padding:6px 10px;font:800 .66rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:#1a1a1a}
  /* narrow screens: the card grows with its text (a fixed 4:3 box was shorter than four lines of blurb) and keeps a photo band on top */
  @media (max-width:980px){.cat-grid{grid-template-columns:1fr 1fr}.cat,.cat:nth-child(4),.cat:nth-child(5){grid-column:span 1;aspect-ratio:auto;min-height:250px}.cat .cb{padding:100px 18px 18px}.cat .cb b{font-size:1.5rem}}
  @media (max-width:480px){.cat-grid{grid-template-columns:1fr}}

  /* photo backdrops that the page scrolls over */
  .bgsec{position:relative;background-size:cover;background-position:center;color:#fff;isolation:isolate}
  .bgsec::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,10,.86),rgba(14,12,10,.72));z-index:-1}
  @media (min-width:901px) and (prefers-reduced-motion:no-preference){.bgsec{background-attachment:fixed}}
  .meet.bgsec{background-image:url(/img/bg-showroom.webp)}
  .quote-bg{background-image:url(/img/bg-gooseneck.webp)}
  .quote-bg .lede,.quote-bg .visit small{color:#cfc9bf}
  .quote-bg .visit b,.quote-bg .visit a{color:#fff}
  .quote-bg .mapcard{border-color:rgba(255,255,255,.2)}
  .lineup-bg{background-image:url(/img/bg-lineup.webp)}
  .lineup-bg h2,.lineup-bg .eyebrow{color:#fff}
  .lineup-bg .lede{color:#d9d3c8}
  .lineup-bg .chip{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:#fff}
  .lineup-bg .chip[aria-pressed="true"]{background:var(--gold-2);color:var(--ink);border-color:var(--gold-2)}

  /* model page: video first, big gallery, lightbox */
  .vid.dbig video{border-radius:14px;aspect-ratio:16/9;background:#000}
  .gallery{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}
  .gallery img{aspect-ratio:16/10;border-radius:10px;cursor:zoom-in}
  .lightbox{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100vw;height:100vh}
  .lightbox::backdrop{background:rgba(10,9,7,.94)}
  .lightbox img{max-width:min(96vw,1600px);max-height:88vh;display:block;margin:auto;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
  .lightbox .lb-wrap{position:fixed;inset:0;display:grid;place-items:center}
  .lightbox button{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.4);color:#fff;font-size:1.6rem;cursor:pointer}
  .lightbox .lb-prev{left:18px}.lightbox .lb-next{right:18px}
  .lightbox .lb-x{top:18px;right:18px;transform:none}
  .lightbox .lb-cap{position:fixed;left:0;right:0;bottom:18px;text-align:center;color:#cfc9bf;font-size:.9rem}

  /* motion: reveal on scroll, counting numbers */
  @media (prefers-reduced-motion:no-preference){
    .rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
    .rv.in{opacity:1;transform:none}
    .rv-d1{transition-delay:.1s}.rv-d2{transition-delay:.2s}.rv-d3{transition-delay:.3s}
  }
  .stats .stat b{font-variant-numeric:tabular-nums}

  .callp{font-size:1.35rem;letter-spacing:.02em}
  /* phones (kept last so it wins over the footer rules above): breadcrumb and footer links get 44px of tap height */
  @media (max-width:900px){.crumbs a{display:inline-block;padding:12px 2px;margin:-12px 0}.fgrid a{padding:12px 0}.fbot a{display:inline-block;padding:12px 0}}
