/* ════════════════════════════════════════════════════════════════════
   HILLAND STOREFRONT — component styles (Shopify build reference)
   Built on design_tokens_v3.css. Every value inherits the locked tokens.
   D10 a11y: amber never fills small readable text; informational metadata
   on dark uses off-white (--text), pale (--text-faint) is decorative only.
   ════════════════════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--bg-light);color:var(--text-strong);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.55;}
img{max-width:100%;display:block;}
button{font-family:inherit;cursor:pointer;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4,.num{font-family:var(--font-display);}
.mono{font-family:var(--font-mono);}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

/* density scale — tweakable (compact trade ↔ spacious) */
:root{ --density:1; }
.app{ --pad-band: calc(var(--s9) * var(--density)); }

/* ── layout ── */
.wrap{max-width:var(--container);margin:0 auto;padding:0 var(--s5);}
.wrap-wide{max-width:1240px;margin:0 auto;padding:0 var(--s5);}
.band{padding:calc(var(--s8) * var(--density)) 0;}
.band--dark{background:var(--bg);color:var(--text);}
.band--light{background:var(--bg-light);color:var(--text-strong);}
.band--shade{background:var(--bg-shade);color:var(--text-strong);}
.seam{height:2px;background:var(--accent);width:100%;}

/* ── eyebrow / level-line ── */
.eyebrow-amber{display:inline-flex;align-items:center;gap:var(--s3);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--accent);}
.eyebrow-amber::before{content:"";height:2px;width:24px;background:var(--accent);border-radius:1px;}
.eyebrow-dark{display:inline-flex;align-items:center;gap:var(--s3);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-faint);}
.eyebrow-dark::before{content:"";height:2px;width:24px;background:var(--accent);border-radius:1px;}
.spec-tag{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:0.04em;font-size:0.78rem;}
.spec-tag::before{content:"// ";color:var(--accent);}
.spec-tag.on-dark{color:var(--text-faint);}

/* ── wordmark ── */
.wordmark{display:inline-flex;flex-direction:column;align-self:flex-start;}
.wordmark-text{font-family:var(--font-wordmark);font-weight:700;letter-spacing:0.06em;line-height:1;white-space:nowrap;text-indent:0.06em;font-size:1.2rem;color:var(--offwhite);}
.wm-h{color:var(--accent);}
.wm-light{color:var(--charcoal);}
.wordmark-rule{height:2px;background:var(--accent);width:100%;margin-top:0.3em;border-radius:1px;}

/* ════ HEADER / NAV ════ */
.hdr{position:sticky;top:0;z-index:60;background:var(--charcoal);border-bottom:1px solid transparent;transition:border-color var(--dur) var(--ease);}
.hdr.scrolled{background:rgba(42,39,36,0.9);backdrop-filter:blur(12px);border-bottom-color:var(--border);}
.hdr-top{display:flex;align-items:center;gap:var(--s5);padding:0.85rem var(--s5);max-width:1240px;margin:0 auto;}
.hdr-brand{flex-shrink:0;}
.hdr-brand .wordmark-text{font-size:1.44rem;}
.hdr-nav{display:flex;align-items:center;gap:var(--s6);list-style:none;margin-left:var(--s4);}
.hdr-nav a{font-size:0.92rem;font-weight:600;color:var(--text-faint);position:relative;padding:6px 0;white-space:nowrap;transition:color var(--dur) var(--ease);}
.hdr-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--accent);transition:right var(--dur-slow) var(--ease);}
.hdr-nav a:hover,.hdr-nav a.active{color:var(--text);}
.hdr-nav a.active::after,.hdr-nav a:hover::after{right:0;}
.hdr-actions{display:flex;align-items:center;gap:var(--s3);margin-left:auto;}
.hdr-search{display:flex;align-items:center;gap:var(--s3);background:var(--charcoal-raised);border:1px solid var(--edge-dark);border-radius:var(--r-pill);padding:0.5rem 0.9rem;min-width:230px;color:var(--text-faint);transition:border-color var(--dur) var(--ease);}
.hdr-search:focus-within{border-color:var(--accent);}
.hdr-search input{background:transparent;border:none;outline:none;color:var(--text);font-size:0.86rem;width:100%;}
.hdr-search input::placeholder{color:var(--text-faint);}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--edge-dark);background:transparent;border-radius:var(--r-sm);color:var(--text-faint);position:relative;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.icon-btn:hover{color:var(--text);border-color:var(--text-faint);}
.icon-btn .badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:var(--r-pill);background:var(--accent);color:var(--offwhite);font-size:0.64rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;}
.hdr-cta{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.84rem;font-weight:700;letter-spacing:0.02em;background:var(--accent);color:var(--offwhite);padding:0.62rem 1.05rem;border-radius:var(--r-pill);white-space:nowrap;border:none;transition:background var(--dur) var(--ease);}
.hdr-cta:hover{background:var(--accent-hover);}
/* utility sub-bar (pillar nav) */
.hdr-sub{background:var(--charcoal-raised);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.hdr-sub-in{display:flex;align-items:center;gap:var(--s2);max-width:1240px;margin:0 auto;padding:0.5rem var(--s5);overflow-x:auto;}
.hdr-sub a{display:inline-flex;align-items:center;gap:7px;font-size:0.78rem;font-weight:600;color:var(--text-faint);padding:0.35rem 0.7rem;border-radius:var(--r-pill);white-space:nowrap;transition:color var(--dur) var(--ease),background var(--dur) var(--ease);}
.hdr-sub a:hover{color:var(--text);background:rgba(255,255,255,0.04);}
.hdr-sub a .dot{width:8px;height:8px;border-radius:50%;background:var(--edge,var(--accent));flex-shrink:0;}
.hamburger{display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:8px;}
.hamburger span{display:block;width:24px;height:2px;background:var(--accent);border-radius:1px;}

/* announcement bar */
.announce{background:var(--charcoal-raised);border-bottom:1px solid var(--border);font-size:0.82rem;color:var(--text);}
.announce-in{display:flex;align-items:center;gap:var(--s4);max-width:1240px;margin:0 auto;padding:0.55rem var(--s5);}
.announce-in .lead{height:2px;width:18px;background:var(--accent);flex-shrink:0;}
.announce-in p{flex:1;line-height:1.4;color:var(--text-faint);}
.announce-in p b{color:var(--text);font-weight:600;}
.announce-x{flex-shrink:0;background:none;border:none;color:var(--text-faint);font-size:1.15rem;line-height:1;padding:2px 4px;border-radius:var(--r-sm);transition:color var(--dur) var(--ease);}
.announce-x:hover{color:var(--text);}

/* ════ BUTTONS ════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;font-weight:700;font-size:0.95rem;letter-spacing:0.01em;border-radius:var(--r-sm);border:1px solid transparent;padding:0.85rem 1.4rem;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease);line-height:1;}
.btn-lg{padding:1.05rem 1.6rem;font-size:1rem;}
.btn-block{width:100%;}
.btn-primary{background:var(--accent);color:var(--offwhite);}
.btn-primary:hover{background:var(--accent-hover);}
.btn-dark{background:var(--charcoal);color:var(--offwhite);}
.btn-dark:hover{background:#3a3530;}
.btn-ghost{background:transparent;border-color:var(--border-light);color:var(--text-strong);}
.btn-ghost:hover{border-color:var(--accent);}
.btn-ghost-dark{background:transparent;border-color:var(--edge-dark);color:var(--text);}
.btn-ghost-dark:hover{border-color:var(--accent);}
.btn-disabled,.btn:disabled{background:var(--offwhite-line);color:var(--text-faint);cursor:not-allowed;border-color:transparent;}

/* ════ PILLS / BADGES ════ */
.pill{display:inline-flex;align-items:center;gap:0.45rem;background:var(--charcoal);color:var(--offwhite);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:var(--ls-pill);text-transform:uppercase;padding:0.42rem 0.9rem;border-radius:var(--r-pill);white-space:nowrap;}
.pill--on-dark{background:transparent;color:var(--text-faint);border:1px solid var(--edge-dark);}
.pill-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0;}
.badge-stock{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.78rem;font-weight:600;}
.badge-stock .led{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.badge-stock.in .led{background:var(--success,#2D6A4F);}
.badge-stock.low .led{background:var(--warning,#B98A00);}
.badge-stock.out .led{background:var(--error,#B5372A);}
.badge-stock.in{color:#2D6A4F;}
.badge-stock.low{color:#8a6700;}
.badge-stock.out{color:#B5372A;}
.tag-mono{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);border:1px solid var(--border-light);border-radius:var(--r-sm);padding:0.25rem 0.5rem;letter-spacing:0.02em;}

/* ════ FINISH SWATCH (the competitive weapon) ════ */
.finish-badge{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.74rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-strong);padding:0.4rem 0.8rem 0.4rem 0.5rem;border-radius:var(--r-pill);background:#fff;border:1px solid var(--border-light);}
.finish-badge .chip{width:18px;height:18px;border-radius:5px;flex-shrink:0;border:1px solid rgba(0,0,0,0.12);}
.finish-badge.on-dark{background:var(--charcoal-raised);color:var(--text);border-color:var(--edge-dark);}
/* swatch selector — three skins, tweakable: band / chip / pill */
.swatches{display:flex;flex-wrap:wrap;gap:var(--s3);}
.swatch{position:relative;border:1.5px solid var(--border-light);background:#fff;border-radius:var(--r-md);cursor:pointer;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);text-align:left;}
.swatch:hover{border-color:var(--text-faint);}
.swatch.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);}
.swatch.unavail{opacity:0.4;cursor:not-allowed;}
.swatch.unavail::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 47%,var(--text-faint) 48%,var(--text-faint) 52%,transparent 53%);}
/* skin: band (default) — colour band on top, label below */
.sw-band{width:128px;}
.sw-band .band-c{height:38px;border-radius:calc(var(--r-md) - 2px) calc(var(--r-md) - 2px) 0 0;border-bottom:1px solid rgba(0,0,0,0.08);}
.sw-band .lab{padding:0.5rem 0.6rem;}
.sw-band .lab .n{font-size:0.82rem;font-weight:700;color:var(--text-strong);display:block;}
.sw-band .lab .d{font-size:0.68rem;color:var(--text-muted);margin-top:2px;display:block;line-height:1.3;}
/* skin: chip — square colour + inline label */
.sw-chip{display:flex;align-items:center;gap:0.55rem;padding:0.5rem 0.85rem 0.5rem 0.5rem;}
.sw-chip .c{width:30px;height:30px;border-radius:6px;border:1px solid rgba(0,0,0,0.1);flex-shrink:0;}
.sw-chip .n{font-size:0.84rem;font-weight:700;color:var(--text-strong);}
/* skin: pill — compact */
.sw-pill{display:inline-flex;align-items:center;gap:0.45rem;padding:0.4rem 0.85rem 0.4rem 0.45rem;border-radius:var(--r-pill);}
.sw-pill .c{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,0.1);}
.sw-pill .n{font-size:0.8rem;font-weight:700;color:var(--text-strong);}

/* size / option selector */
.opts{display:flex;flex-wrap:wrap;gap:var(--s2);}
.opt{border:1.5px solid var(--border-light);background:#fff;border-radius:var(--r-sm);padding:0.55rem 0.9rem;font-size:0.86rem;font-weight:600;color:var(--text-strong);font-family:var(--font-mono);transition:border-color var(--dur) var(--ease);}
.opt:hover{border-color:var(--text-faint);}
.opt.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);}
.opt.unavail{opacity:0.4;text-decoration:line-through;cursor:not-allowed;}

/* qty stepper */
.qty{display:inline-flex;align-items:stretch;border:1.5px solid var(--border-light);border-radius:var(--r-sm);overflow:hidden;}
.qty button{width:44px;background:#fff;border:none;color:var(--text-strong);font-size:1.2rem;line-height:1;transition:background var(--dur) var(--ease);}
.qty button:hover{background:var(--offwhite-shade);}
.qty input{width:56px;text-align:center;border:none;border-left:1px solid var(--border-light);border-right:1px solid var(--border-light);font-family:var(--font-mono);font-size:0.95rem;font-weight:600;color:var(--text-strong);outline:none;}

/* ════ PRICE BLOCK (number as hero) ════ */
.price-block{display:flex;flex-direction:column;gap:0.2rem;}
.price-row{display:flex;align-items:baseline;gap:0.6rem;flex-wrap:wrap;}
.price-now{font-family:var(--font-display);font-weight:800;font-size:clamp(2.2rem,5vw,2.7rem);letter-spacing:-0.03em;line-height:0.95;color:var(--text-strong);}
.price-gst{font-family:var(--font-mono);font-size:0.78rem;color:var(--text-muted);}
.price-unit{font-family:var(--font-mono);font-size:0.82rem;color:var(--text-muted);}
.price-unit b{color:var(--text-strong);font-weight:700;}
.price-trade{display:inline-flex;align-items:baseline;gap:0.4rem;font-family:var(--font-mono);font-size:0.82rem;color:var(--text-muted);}
.price-trade .tn{color:var(--accent-hover);font-weight:700;font-size:0.95rem;}
/* price-block treatment variants (tweakable) */
.price-block.treat-stacked .price-now{font-size:clamp(2.6rem,6vw,3.4rem);}
.price-block.treat-inline .price-row{align-items:baseline;}
.price-block.treat-ledger{border-left:3px solid var(--accent);padding-left:var(--s4);}

/* ════ SPEC PILLS ROW ════ */
.spec-pills{display:flex;flex-wrap:wrap;gap:var(--s2);}
.spec-pill{display:inline-flex;flex-direction:column;border:1px solid var(--border-light);border-radius:var(--r-sm);padding:0.5rem 0.8rem;background:#fff;min-width:84px;}
.spec-pill .k{font-size:0.6rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);}
.spec-pill .v{font-family:var(--font-mono);font-size:0.95rem;font-weight:600;color:var(--text-strong);margin-top:2px;}
.spec-pill.amber .v{color:var(--accent-hover);font-family:var(--font-display);font-weight:800;font-size:1.15rem;}

/* ════ CARDS / PLP ════ */
.plp-head{padding:var(--s4) 0 var(--s5);}
.plp-layout{display:grid;grid-template-columns:248px 1fr;gap:var(--s6);align-items:start;}
.filters{position:sticky;top:120px;border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;padding:var(--s5);}
.filters h4{font-size:0.7rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--s3);}
.filter-group{padding-bottom:var(--s4);margin-bottom:var(--s4);border-bottom:1px solid var(--border-light);}
.filter-group:last-child{border:none;margin:0;padding:0;}
.fopt{display:flex;align-items:center;gap:0.6rem;padding:0.35rem 0;font-size:0.88rem;color:var(--text-strong);cursor:pointer;}
.fopt input{display:none;}
.fopt .box{width:18px;height:18px;border:1.5px solid var(--border-light);border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);}
.fopt input:checked + .box{background:var(--accent);border-color:var(--accent);}
.fopt input:checked + .box::after{content:"✓";color:#fff;font-size:0.7rem;font-weight:800;}
.fopt .fc{width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,0.12);flex-shrink:0;}
.fopt .cnt{margin-left:auto;font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);}
.plp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5);flex-wrap:wrap;}
.plp-count{font-family:var(--font-mono);font-size:0.82rem;color:var(--text-muted);}
.plp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);}

.pcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border-light);border-left:3px solid var(--edge,var(--accent));border-radius:var(--r-md);overflow:hidden;transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);cursor:pointer;}
.pcard:hover{box-shadow:var(--shadow-2);border-color:var(--accent);}
.pcard-media{aspect-ratio:4/3;position:relative;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pcard-media .ph{font-family:var(--font-mono);font-size:0.6rem;color:var(--text-muted);letter-spacing:0.03em;padding:0.3rem 0.6rem;background:rgba(245,242,238,0.9);border:1px solid var(--border-light);border-radius:var(--r-pill);text-align:center;max-width:85%;}
.pcard-media .finish-strip{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--edge,var(--accent));z-index:2;}
.pcard-img{position:absolute;inset:6%;width:88%;height:88%;object-fit:contain;display:block;}
.pcard-img--box{inset:0;width:100%;height:100%;}
.pcard-img--up10{transform:scale(1.10);}
.pcard-img--up5{transform:scale(1.05);}
.pillar-img{inset:0;width:100%;height:100%;}
.pcard-fbadge{position:absolute;top:8px;left:14px;z-index:3;}
.pcard-body{padding:var(--s4);display:flex;flex-direction:column;gap:0.4rem;flex:1;}
.pcard .pchip{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;font-size:var(--fs-label);font-weight:700;letter-spacing:var(--ls-pill);text-transform:uppercase;color:var(--text-strong);background:var(--bg-shade);padding:0.35rem 0.7rem;border-radius:var(--r-pill);}
.pcard .pchip .d{width:7px;height:7px;border-radius:50%;background:var(--edge,var(--accent));}
.pcard h3{font-size:1.02rem;font-weight:700;color:var(--text-strong);line-height:1.25;}
.pcard .sku{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);}
.pcard-foot{margin-top:auto;padding-top:var(--s3);display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s3);}
.pcard .cp{font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--text-strong);letter-spacing:-0.02em;}
.pcard .cp small{font-family:var(--font-mono);font-size:0.66rem;font-weight:400;color:var(--text-muted);display:block;letter-spacing:0;}
.pcard .cfinish{display:flex;gap:4px;}
.pcard .cfinish .c{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,0.12);}

/* ════ PDP ════ */
.breadcrumb{display:flex;align-items:center;gap:0.5rem;font-size:0.78rem;color:var(--text-muted);padding:var(--s4) 0;flex-wrap:wrap;}
.breadcrumb a:hover{color:var(--accent-hover);text-decoration:underline;text-decoration-color:var(--accent);}
.breadcrumb .sep{color:var(--accent);}
.pdp{display:grid;grid-template-columns:1.15fr 1fr;gap:var(--s7);align-items:start;padding-bottom:var(--s8);}
/* media column — bounded sticky: sticks WITHIN its grid track, respects flow,
   never overlaps the buy column or footer (solves the "image covers content" bug) */
.pdp-media{position:sticky;top:96px;align-self:start;}
.pdp-hero{aspect-ratio:4/3;border-radius:var(--r-lg);overflow:hidden;position:relative;border:1px solid var(--border-light);background:#fff;display:flex;align-items:center;justify-content:center;}
.pdp-hero .finish-frame{position:absolute;left:0;right:0;bottom:0;height:8px;background:var(--edge,var(--accent));}
.pdp-hero .ph{font-family:var(--font-mono);font-size:0.74rem;color:var(--text-muted);letter-spacing:0.03em;text-align:center;padding:0.4rem 0.8rem;background:rgba(245,242,238,0.9);border:1px solid var(--border-light);border-radius:var(--r-pill);}
.pdp-hero .hero-cap{position:absolute;left:var(--s4);top:var(--s4);font-family:var(--font-mono);font-size:0.66rem;color:var(--text-muted);background:rgba(255,255,255,0.85);border:1px solid var(--border-light);padding:0.25rem 0.55rem;border-radius:var(--r-sm);z-index:2;}
.pdp-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;padding:0;box-sizing:border-box;}
.pdp-hero-img--sec-sm{transform:scale(0.9);}
.pdp-thumbs{display:flex;gap:var(--s2);margin-top:var(--s3);}
.pdp-thumb{width:72px;aspect-ratio:1;border-radius:var(--r-sm);border:1.5px solid var(--border-light);background:#fff;position:relative;overflow:hidden;cursor:pointer;padding:0;}
.pdp-thumb img{width:100%;height:100%;object-fit:contain;display:block;padding:4px;box-sizing:border-box;}
.pdp-thumb.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);}
.pdp-thumb .fs{position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--edge,var(--accent));}
.pdp-thumb .tl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:0.5rem;color:var(--text-muted);}

.pdp-buy{display:flex;flex-direction:column;gap:var(--s4);min-width:0;}
.pdp-title{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;line-height:1.12;letter-spacing:-0.015em;color:var(--text-strong);}
.pdp-sku{font-family:var(--font-mono);font-size:0.8rem;color:var(--text-muted);}
.field-label{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--s2);display:flex;align-items:center;gap:0.5rem;}
.field-label .sel-val{color:var(--text-strong);font-family:var(--font-mono);letter-spacing:0;text-transform:none;font-weight:600;}
.finish-desc{font-size:0.84rem;color:var(--text-muted);margin-top:var(--s2);line-height:1.45;}
.buy-divider{height:1px;background:var(--border-light);margin:var(--s2) 0;}
.cart-row{display:flex;gap:var(--s3);align-items:stretch;}
.cart-row .btn{flex:1;}
.dispatch{display:flex;align-items:center;gap:var(--s4);flex-wrap:wrap;font-size:0.84rem;color:var(--text-muted);}
.dispatch .d-item{display:inline-flex;align-items:center;gap:0.45rem;}
.dispatch svg{flex-shrink:0;color:var(--accent);}

/* trade block — engine-agnostic Net-30 (holds under Plus native B2B or app) */
.trade-block{background:var(--charcoal);color:var(--text);border-radius:var(--r-md);padding:var(--s5);}
.trade-block .th{display:flex;align-items:center;gap:var(--s3);}
.trade-block .net30{font-size:0.66rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:var(--r-pill);padding:0.3rem 0.7rem;}
.trade-block .tt{font-size:0.95rem;font-weight:700;color:var(--text);}
.trade-block p{font-size:0.84rem;color:var(--text-faint);line-height:1.5;margin-top:var(--s3);}
.trade-block .tprice{display:flex;align-items:baseline;gap:0.5rem;margin-top:var(--s3);}
.trade-block .tprice .n{font-family:var(--font-display);font-weight:800;font-size:1.4rem;color:var(--accent);letter-spacing:-0.02em;}
.trade-block .tprice .l{font-family:var(--font-mono);font-size:0.74rem;color:var(--text-faint);}
.trade-block .btn{margin-top:var(--s4);}

/* compliance badges */
.compliance{display:flex;flex-wrap:wrap;gap:var(--s2);}
.comp-badge{display:inline-flex;align-items:center;gap:0.5rem;border:1px solid var(--border-light);border-radius:var(--r-sm);padding:0.5rem 0.75rem;background:#fff;font-size:0.78rem;font-weight:600;color:var(--text-strong);}
.comp-badge .ci{width:22px;height:22px;border-radius:5px;background:var(--charcoal);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0.62rem;font-weight:800;}
.comp-badge.dl{cursor:pointer;color:var(--text-strong);}
.comp-badge.dl:hover{border-color:var(--accent);}
.comp-badge.dl .ci{background:var(--accent);color:#fff;}

/* gun compatibility */
.gun-compat{border:1px solid var(--border-light);border-radius:var(--r-md);padding:var(--s5);background:var(--offwhite-shade);}
.gun-compat h4{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--s3);}
.gun-list{display:flex;flex-wrap:wrap;gap:var(--s2);}
.gun{font-family:var(--font-mono);font-size:0.8rem;color:var(--text-strong);background:#fff;border:1px solid var(--border-light);border-radius:var(--r-sm);padding:0.4rem 0.7rem;}
.gun.lead{border-color:var(--accent);color:var(--accent-hover);font-weight:700;}

/* proof strip */
.proof{background:var(--charcoal);color:var(--text);}
.proof-in{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s6);max-width:var(--container);margin:0 auto;padding:var(--s7) var(--s5);}
.proof-item{text-align:center;}
.proof-item .n{font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,4vw,2.8rem);color:var(--accent);letter-spacing:-0.02em;line-height:1;}
.proof-item .t{font-size:0.86rem;color:var(--text-faint);margin-top:var(--s3);line-height:1.4;}
.proof-rule{height:2px;background:var(--accent);width:40px;margin:var(--s2) auto 0;}

/* spec tabs */
.tabs{border-bottom:1px solid var(--border-light);display:flex;gap:var(--s5);}
.tab{padding:var(--s4) 0;font-size:0.92rem;font-weight:700;color:var(--text-muted);position:relative;background:none;border:none;}
.tab.active{color:var(--text-strong);}
.tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);}
.tab-panel{padding:var(--s6) 0;}
.spec-table{width:100%;border-collapse:collapse;max-width:680px;}
.spec-table td{padding:0.7rem 0;border-bottom:1px solid var(--border-light);font-size:0.92rem;vertical-align:top;}
.spec-table td:first-child{color:var(--text-muted);width:42%;}
.spec-table td:last-child{color:var(--text-strong);font-family:var(--font-mono);font-weight:500;}

/* founder section */
.founder{background:var(--bg-shade);}
.founder-in{max-width:var(--measure);margin:0 auto;padding:var(--s8) var(--s5);text-align:center;}
.founder-mono{width:64px;height:64px;border-radius:50%;border:2px solid var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--accent);margin:0 auto var(--s5);}
.founder-photo{display:block;width:76px;height:76px;margin:0 auto var(--s5);border:2px solid var(--accent);border-radius:50%;box-sizing:border-box;overflow:hidden;font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--accent);text-align:center;line-height:72px;}
.founder-q{font-size:clamp(1.2rem,2.6vw,1.6rem);font-weight:700;line-height:1.4;color:var(--text-strong);letter-spacing:-0.01em;}
.founder-by{font-family:var(--font-mono);font-size:0.8rem;color:var(--text-muted);margin-top:var(--s5);}
.founder-by b{color:var(--text-strong);}

/* mobile sticky buy bar — slim, never covers content (body padding clears it) */
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--charcoal);border-top:1px solid var(--border);display:none;align-items:center;gap:var(--s4);padding:0.7rem var(--s5);}
.buybar .bp{flex:1;min-width:0;}
.buybar .bp .n{font-family:var(--font-display);font-weight:800;font-size:1.3rem;color:var(--text);letter-spacing:-0.02em;line-height:1;}
.buybar .bp .l{font-family:var(--font-mono);font-size:0.66rem;color:var(--text-faint);}
.buybar .btn{flex-shrink:0;}

/* ════ CART DRAWER ════ */
.drawer-back{position:fixed;inset:0;background:rgba(20,18,16,0.55);z-index:80;opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease);}
.drawer-back.open{opacity:1;pointer-events:auto;}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(92vw,440px);background:var(--offwhite);z-index:81;display:flex;flex-direction:column;transform:translateX(100%);transition:transform var(--dur-slow) var(--ease);box-shadow:var(--shadow-2);}
.cart-drawer.open{transform:translateX(0);}
.cart-hd{display:flex;align-items:center;justify-content:space-between;padding:var(--s5);border-bottom:1px solid var(--border-light);background:var(--charcoal);color:var(--text);}
.cart-hd h3{font-size:1.05rem;font-weight:700;}
.cart-hd .x{background:none;border:none;color:var(--text-faint);font-size:1.5rem;line-height:1;}
.cart-hd .x:hover{color:var(--text);}
.cart-mode{display:flex;padding:var(--s3) var(--s5);gap:var(--s2);background:var(--charcoal-raised);border-bottom:1px solid var(--border);}
.cart-mode button{flex:1;font-size:0.78rem;font-weight:700;padding:0.5rem;border-radius:var(--r-sm);border:1px solid var(--edge-dark);background:transparent;color:var(--text-faint);transition:all var(--dur) var(--ease);}
.cart-mode button.on{background:var(--accent);border-color:var(--accent);color:#fff;}
.cart-items{flex:1;overflow-y:auto;padding:var(--s4) var(--s5);}
.citem{display:flex;gap:var(--s3);padding:var(--s4) 0;border-bottom:1px solid var(--border-light);}
.citem-media{width:64px;height:64px;border-radius:var(--r-sm);border:1px solid var(--border-light);background:#fff;position:relative;flex-shrink:0;overflow:hidden;}
.citem-media .ci-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:5px;box-sizing:border-box;}
.citem-media .fs{position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--edge,var(--accent));z-index:1;}
.citem-body{flex:1;min-width:0;}
.citem-body h4{font-size:0.86rem;font-weight:700;color:var(--text-strong);line-height:1.25;}
.citem-body .meta{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);margin-top:2px;}
.citem-foot{display:flex;align-items:center;justify-content:space-between;margin-top:var(--s3);}
.citem .cp{font-family:var(--font-display);font-weight:800;font-size:1rem;color:var(--text-strong);}
.citem .rm{background:none;border:none;font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);text-decoration:underline;text-decoration-color:var(--accent);}
.qty-sm{display:inline-flex;align-items:stretch;border:1px solid var(--border-light);border-radius:var(--r-sm);overflow:hidden;}
.qty-sm button{width:30px;background:#fff;border:none;font-size:1rem;color:var(--text-strong);}
.qty-sm span{width:38px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:0.82rem;border-left:1px solid var(--border-light);border-right:1px solid var(--border-light);}
.cart-ft{border-top:1px solid var(--border-light);padding:var(--s5);background:#fff;}
.cart-sub{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--s2);}
.cart-sub .l{font-size:0.92rem;color:var(--text-muted);}
.cart-sub .v{font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--text-strong);letter-spacing:-0.02em;}
.cart-note{font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);margin-bottom:var(--s4);}
.cart-gstline{display:flex;align-items:baseline;justify-content:space-between;font-size:0.85rem;color:var(--text-muted);margin-bottom:var(--s2);}
.cart-totalline{display:flex;align-items:baseline;justify-content:space-between;font-weight:700;color:var(--text-strong);padding-top:var(--s2);margin-bottom:var(--s3);border-top:1px solid var(--border-light);}
.cart-totalline span:last-child{font-family:var(--font-display);font-weight:800;font-size:1.2rem;letter-spacing:-0.02em;}
.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--s7);gap:var(--s4);color:var(--text-muted);}
.cart-empty .ic{width:56px;height:56px;border-radius:50%;border:2px solid var(--border-light);display:flex;align-items:center;justify-content:center;color:var(--text-faint);}

/* ════ FORMS ════ */
.form-grid{display:grid;gap:var(--s4);}
.form-grid.fg2{grid-template-columns:1fr;}
@media (max-width:600px){
  .form-grid.fg2 > *{grid-column:auto!important;}
}
@media (min-width:601px){
  .form-grid.fg2{grid-template-columns:1fr 1fr;}
}
.field{display:flex;flex-direction:column;gap:0.4rem;}
.field label{font-size:0.78rem;font-weight:700;letter-spacing:0.04em;color:var(--text-strong);}
.field label .req{color:var(--accent-hover);}
.field input,.field select,.field textarea{font-family:var(--font-body);font-size:0.92rem;padding:0.7rem 0.85rem;border:1.5px solid var(--border-light);border-radius:var(--r-sm);background:#fff;color:var(--text-strong);outline:none;transition:border-color var(--dur) var(--ease);}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);}
.field .hint{font-size:0.74rem;color:var(--text-muted);}
.field.err input{border-color:var(--error,#B5372A);}
.field .errmsg{font-size:0.74rem;color:var(--error,#B5372A);font-weight:600;}
.field.ok input{border-color:var(--success,#2D6A4F);}

/* ════ ACCOUNT ════ */
.acct-layout{display:grid;grid-template-columns:230px 1fr;gap:var(--s6);align-items:start;}
.acct-nav{border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;overflow:hidden;}
.acct-nav a{display:flex;align-items:center;gap:0.6rem;padding:0.85rem var(--s4);font-size:0.88rem;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border-light);transition:background var(--dur) var(--ease),color var(--dur) var(--ease);}
.acct-nav a:last-child{border:none;}
.acct-nav a.active{background:var(--offwhite-shade);color:var(--text-strong);border-left:3px solid var(--accent);}
.acct-nav a:hover{color:var(--text-strong);}
.acct-card{border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;padding:var(--s5);}
.acct-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);}
.acct-stat{border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;padding:var(--s5);}
.acct-stat .n{font-family:var(--font-display);font-weight:800;font-size:1.8rem;color:var(--text-strong);letter-spacing:-0.02em;}
.acct-stat .n .am{color:var(--accent-hover);}
.acct-stat .t{font-size:0.78rem;color:var(--text-muted);margin-top:0.3rem;}
.order-row{display:grid;grid-template-columns:1fr auto auto auto;gap:var(--s4);align-items:center;padding:var(--s4);border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;margin-bottom:var(--s3);}
.order-row .onum{font-family:var(--font-mono);font-size:0.82rem;color:var(--text-strong);font-weight:600;white-space:nowrap;}
.order-row .oleft{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);min-width:0;}
.oinfo{min-width:0;}
.order-thumbs{display:flex;align-items:center;flex-shrink:0;}
.order-thumbs .ot{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--border-light);background:#fff;overflow:hidden;position:relative;margin-left:-9px;box-shadow:0 1px 2px rgba(0,0,0,0.06);}
.order-thumbs .ot:first-child{margin-left:0;}
.order-thumbs .ot img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:3px;box-sizing:border-box;}
.order-thumbs .ot.more{display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:0.66rem;font-weight:700;color:var(--text-muted);background:var(--offwhite-shade);}
.order-row .ometa{font-size:0.76rem;color:var(--text-muted);margin-top:2px;}
.order-row .ostatus{font-size:0.72rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:0.3rem 0.6rem;border-radius:var(--r-pill);}
.ostatus.delivered{background:rgba(45,106,79,0.12);color:#2D6A4F;}
.ostatus.transit{background:rgba(185,138,0,0.14);color:#8a6700;}
.ostatus.processing{background:var(--offwhite-shade);color:var(--text-muted);}

/* ════ LIVE TRACKING PANEL ════ */
.order-row.expanded{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent;}
.track-panel{border:1px solid var(--border-light);border-top:none;border-radius:0 0 var(--r-md) var(--r-md);background:var(--offwhite-shade);padding:var(--s5);margin-bottom:var(--s3);}
.track-head{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s5);}
.track-head .live{display:inline-flex;align-items:center;gap:0.45rem;font-size:0.68rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:#8a6700;background:rgba(185,138,0,0.14);padding:0.3rem 0.6rem;border-radius:var(--r-pill);}
.track-head .live .blip{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 rgba(201,98,42,0.5);animation:trackBlip 1.8s ease-out infinite;}
@keyframes trackBlip{0%{box-shadow:0 0 0 0 rgba(201,98,42,0.45);}70%{box-shadow:0 0 0 7px rgba(201,98,42,0);}100%{box-shadow:0 0 0 0 rgba(201,98,42,0);}}
@media (prefers-reduced-motion:reduce){.track-head .live .blip{animation:none;}}
.track-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:var(--s6);}
.track-steps{position:relative;}
.tstep{display:grid;grid-template-columns:22px 1fr;column-gap:var(--s3);}
.tstep .rail{display:flex;flex-direction:column;align-items:center;}
.tstep .pip{width:13px;height:13px;border-radius:50%;background:#fff;border:2px solid var(--border-light);margin-top:3px;flex-shrink:0;}
.tstep .line{flex:1;width:2px;background:var(--border-light);min-height:14px;margin:2px 0;}
.tstep:last-child .line{display:none;}
.tstep.done .pip{background:#2D6A4F;border-color:#2D6A4F;}
.tstep.done .line{background:#2D6A4F;}
.tstep.active .pip{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px rgba(201,98,42,0.16);}
.tstep .body{padding-bottom:var(--s4);min-width:0;}
.tstep:last-child .body{padding-bottom:0;}
.tstep .lbl{font-size:0.86rem;font-weight:700;color:var(--text-strong);}
.tstep.active .lbl{color:var(--accent-hover);}
.tstep.pending .lbl{color:var(--text-faint);font-weight:600;}
.tstep .ts{font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);margin-top:2px;}
.track-side{display:flex;flex-direction:column;gap:var(--s4);}
.track-eta{border:1px solid rgba(201,98,42,0.35);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:#fff;padding:var(--s4);}
.track-eta .k{font-size:0.68rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--text-faint);}
.track-eta .v{font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:var(--text-strong);letter-spacing:-0.01em;margin-top:2px;}
.track-kv .k{font-size:0.68rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:3px;}
.track-kv .v{font-size:0.84rem;color:var(--text-strong);font-weight:600;line-height:1.5;}
.track-kv .v.mono{font-family:var(--font-mono);font-size:0.8rem;letter-spacing:0.02em;}
.track-kv .v .addr-co{font-weight:700;}
@media (max-width:720px){.track-grid{grid-template-columns:1fr;gap:var(--s5);}}

/* reorder line */
.reorder-item{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0;border-bottom:1px solid var(--border-light);}
.reorder-item .ri-media{width:48px;height:48px;border-radius:var(--r-sm);border:1px solid var(--border-light);background:#fff;position:relative;flex-shrink:0;overflow:hidden;}
.reorder-item .ri-media .ri-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:4px;box-sizing:border-box;}
.reorder-item .ri-media .fs{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--edge,var(--accent));z-index:1;}
.reorder-item .ri-body{flex:1;min-width:0;}
.reorder-item .ri-body h4{font-size:0.86rem;font-weight:700;color:var(--text-strong);}
.reorder-item .ri-body .m{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);}

/* ════ TOAST ════ */
.toast-wrap{position:fixed;left:50%;bottom:var(--s6);transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;gap:var(--s2);align-items:center;pointer-events:none;}
.toast{display:flex;align-items:center;gap:var(--s3);background:var(--charcoal);color:var(--text);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-sm);padding:0.8rem 1.1rem;box-shadow:var(--shadow-dark);font-size:0.88rem;font-weight:600;opacity:0;transform:translateY(10px);transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);}
.toast.show{opacity:1;transform:translateY(0);}
.toast .ti{color:var(--accent);font-weight:800;}

/* ════ FOOTER ════ */
.ft{background:var(--charcoal);color:var(--text-faint);border-top:1px solid var(--border);padding:var(--s8) 0 var(--s6);}
.ft-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.1fr;gap:var(--s6);}
.ft h4{font-size:var(--fs-label);font-weight:700;letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-faint);margin-bottom:var(--s4);}
.ft-statement{font-size:0.88rem;color:var(--text-faint);line-height:1.6;max-width:32ch;margin-top:var(--s4);}
.ft-tag{font-size:var(--fs-label);font-weight:700;letter-spacing:var(--ls-tagline);text-transform:uppercase;color:var(--text-faint);margin:var(--s4) 0;}
.ft-links{display:flex;flex-direction:column;gap:var(--s3);}
.ft-links a{color:var(--text-faint);font-size:0.9rem;transition:color var(--dur) var(--ease);}
.ft-links a:hover{color:var(--accent);}
.ft-stds{display:flex;flex-direction:column;gap:0.5rem;align-items:flex-start;}
.ft-stds .pill{font-size:0.6rem;}
.ft-base{border-top:1px solid var(--border);margin-top:var(--s7);padding-top:var(--s5);font-family:var(--font-mono);font-size:0.74rem;color:var(--text-faint);line-height:1.9;letter-spacing:0.02em;}
.ft-base .sep{margin:0 0.5em;opacity:0.4;}

/* ════ CONTENT (Guides · Comparisons · Price Index) ════ */
.content-hero{background:var(--charcoal);color:var(--text);}
.content-hero-in{max-width:var(--container);margin:0 auto;padding:var(--s8) var(--s5) var(--s7);}
.content-kind{display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--font-mono);font-size:0.72rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text);background:var(--charcoal-raised);border:1px solid var(--edge-dark);border-radius:var(--r-pill);padding:0.35rem 0.8rem;}
.content-kind .d{width:7px;height:7px;border-radius:50%;background:var(--accent);}
.content-hero h1{font-size:clamp(1.9rem,4vw,3rem);font-weight:800;line-height:1.08;letter-spacing:-0.02em;margin-top:var(--s5);max-width:24ch;}
.content-hero .standfirst{font-size:1.12rem;color:var(--text-faint);line-height:1.65;max-width:62ch;margin-top:var(--s4);}
.content-meta{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);margin-top:var(--s6);font-family:var(--font-mono);font-size:0.76rem;color:var(--text);}
.content-meta .am{color:var(--accent);}
.content-meta span{display:inline-flex;align-items:center;gap:0.4rem;}

/* inline SKU embed — the commerce-adjacency block (also used by UI guide) */
.sku-embed{border:1px solid var(--border-light);border-left:3px solid var(--edge,var(--accent));border-radius:var(--r-md);background:#fff;padding:var(--s4);margin:var(--s5) 0;display:grid;grid-template-columns:auto 1fr auto;gap:var(--s4);align-items:center;}
.sku-embed .se-media{width:84px;height:84px;border-radius:var(--r-sm);border:1px solid var(--border-light);background:var(--offwhite-shade);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.sku-embed .se-media .fs{position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--edge,var(--accent));}
.sku-embed .se-media .ph{font-family:var(--font-mono);font-size:0.5rem;color:var(--text-muted);text-align:center;padding:0 4px;}
.sku-embed .se-media .se-img{width:100%;height:100%;object-fit:cover;display:block;}
.sku-embed .se-body{min-width:0;}
.sku-embed .se-rec{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.64rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent-hover);margin-bottom:0.3rem;}
.sku-embed .se-body h4{font-size:1.05rem;font-weight:700;color:var(--text-strong);line-height:1.25;}
.sku-embed .se-body .se-meta{font-family:var(--font-mono);font-size:0.74rem;color:var(--text-muted);margin-top:3px;}
.sku-embed .se-buy{display:flex;flex-direction:column;align-items:flex-end;gap:0.4rem;text-align:right;}
.sku-embed .se-buy .p{font-family:var(--font-display);font-weight:800;font-size:1.4rem;color:var(--text-strong);letter-spacing:-0.02em;line-height:1;}
.sku-embed .se-buy .live{display:inline-flex;align-items:center;gap:0.35rem;font-family:var(--font-mono);font-size:0.6rem;color:var(--text-muted);letter-spacing:0.04em;}
.sku-embed .se-buy .live .led{width:6px;height:6px;border-radius:50%;background:var(--success,#2D6A4F);}

/* comparison ranked entries */
.cmp-entry{border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;overflow:hidden;margin-top:var(--s5);}
.cmp-entry-hd{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border-light);background:var(--offwhite-shade);}
.cmp-rank{font-family:var(--font-display);font-weight:800;font-size:1.6rem;color:var(--accent);min-width:2.2rem;line-height:1;}
.cmp-entry-hd .ce-t{flex:1;min-width:0;}
.cmp-entry-hd .ce-t h3{font-size:1.15rem;font-weight:800;color:var(--text-strong);line-height:1.2;}
.cmp-entry-hd .ce-t .verdict{font-size:0.84rem;color:var(--text-muted);margin-top:2px;}
.cmp-award{font-size:0.64rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-strong);border:1px solid var(--accent);border-radius:var(--r-pill);padding:0.3rem 0.7rem;white-space:nowrap;}
.cmp-entry-body{padding:var(--s5);}
.cmp-entry-body > p{font-size:0.98rem;line-height:1.6;color:var(--text-muted);margin:0 0 var(--s4);max-width:none;}
.cmp-prosrow{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin-bottom:var(--s4);}
.cmp-prosrow .col h5{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:var(--s2);color:var(--text-strong);}
.cmp-prosrow ul{list-style:none;padding:0;margin:0;}
.cmp-prosrow li{font-size:0.88rem;line-height:1.45;color:var(--text-muted);padding-left:1.2rem;position:relative;margin-bottom:0.4rem;}
.cmp-prosrow .pro li::before{content:"+";position:absolute;left:0;color:var(--f-hdg);font-weight:800;}
.cmp-prosrow .con li::before{content:"\2212";position:absolute;left:0;color:var(--accent);font-weight:800;}

/* price index table */
.pindex-wrap{overflow-x:auto;border:1px solid var(--border-light);border-radius:var(--r-md);margin-top:var(--s5);}
.pindex{width:100%;border-collapse:collapse;min-width:680px;font-size:0.92rem;}
.pindex thead th{background:var(--charcoal);color:var(--text);text-align:left;padding:0.85rem 1rem;font-size:0.78rem;font-weight:700;letter-spacing:0.02em;white-space:nowrap;}
.pindex thead th.num{text-align:right;}
.pindex td{padding:0.8rem 1rem;border-bottom:1px solid var(--border-light);vertical-align:middle;}
.pindex tbody tr:nth-child(even) td{background:var(--offwhite-shade);}
.pindex tbody tr:hover td{background:rgba(201,98,42,0.05);cursor:pointer;}
.pindex .pi-prod{font-weight:700;color:var(--text-strong);}
.pindex .pi-sku{font-family:var(--font-mono);font-size:0.72rem;color:var(--text-muted);margin-top:2px;}
.pindex .pi-finish{display:inline-flex;align-items:center;gap:0.45rem;font-size:0.84rem;color:var(--text-strong);}
.pindex .pi-finish .c{width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,0.12);flex-shrink:0;}
.pindex td.num{text-align:right;font-family:var(--font-mono);font-weight:600;color:var(--text-strong);white-space:nowrap;}
.pindex td.unit{text-align:right;font-family:var(--font-display);font-weight:800;color:var(--text-strong);letter-spacing:-0.01em;white-space:nowrap;}
.pindex .pi-trend{display:inline-flex;align-items:center;gap:0.3rem;font-family:var(--font-mono);font-size:0.76rem;font-weight:600;}
.pindex .pi-trend.flat{color:var(--text-muted);}
.pindex .pi-trend.down{color:#2D6A4F;}
.pindex .pi-trend.up{color:#B5372A;}
.pindex-note{display:flex;align-items:center;gap:var(--s3);margin-top:var(--s4);font-family:var(--font-mono);font-size:0.76rem;color:var(--text-muted);}
.pindex-note .led{width:7px;height:7px;border-radius:50%;background:var(--success,#2D6A4F);flex-shrink:0;}

/* content index cards (listing) */
.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-top:var(--s6);}
.ccard{display:flex;flex-direction:column;border:1px solid var(--border-light);border-radius:var(--r-md);background:#fff;overflow:hidden;cursor:pointer;transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.ccard:hover{box-shadow:var(--shadow-2);border-color:var(--accent);}
.ccard .cc-top{aspect-ratio:16/9;background:var(--charcoal);position:relative;display:flex;align-items:flex-end;padding:var(--s4);overflow:hidden;}
.ccard .cc-top .cc-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.ccard .cc-top .k{position:relative;z-index:1;}
.ccard .cc-top .k{font-family:var(--font-mono);font-size:0.66rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--text);}
.ccard .cc-top .k .am{color:var(--accent);}
.ccard .cc-top .seam{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);}
.ccard .cc-body{padding:var(--s4);flex:1;display:flex;flex-direction:column;}
.ccard h3{font-size:1.08rem;font-weight:700;color:var(--text-strong);line-height:1.25;}
.ccard p{font-size:0.88rem;color:var(--text-muted);line-height:1.5;margin-top:var(--s2);flex:1;}
.ccard .cc-read{font-size:0.8rem;font-weight:700;color:var(--text-strong);margin-top:var(--s3);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px;}

@media (max-width:860px){
  .content-grid{grid-template-columns:1fr 1fr;}
  .sku-embed{grid-template-columns:auto minmax(0,1fr);}
  .sku-embed .se-buy{grid-column:2;align-items:center;text-align:left;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:var(--s2) var(--s3);width:100%;min-width:0;}
}
@media (max-width:560px){
  .content-grid{grid-template-columns:1fr;}
  .cmp-prosrow{grid-template-columns:1fr;}
}

/* ════ home hero (responsive) ════ */
.home-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--s8);align-items:center;}
.home-hero-cta{display:flex;gap:var(--s3);margin-top:var(--s7);}
.home-hero-media{aspect-ratio:1;}
@media (max-width:860px){
  .home-hero-grid{grid-template-columns:1fr;gap:var(--s6);}
  .home-hero-media{aspect-ratio:1;}
  .home-hero-cta .btn{flex:1;min-width:0;padding-left:0.6rem;padding-right:0.6rem;}
}

/* ════ SKELETON ════ */
@keyframes shimmer{0%{background-position:-400px 0;}100%{background-position:400px 0;}}
.skeleton{background:linear-gradient(90deg,var(--offwhite-shade) 25%,var(--offwhite-line) 50%,var(--offwhite-shade) 75%);background-size:800px 100%;animation:shimmer 1.4s infinite linear;border-radius:var(--r-sm);}

/* ════ RESPONSIVE ════ */
@media (max-width:1080px){
  .hdr-search{min-width:160px;}
  .plp-grid{grid-template-columns:repeat(2,1fr);}
  .ft-grid{grid-template-columns:1fr 1fr 1fr;}
}
@media (max-width:860px){
  .hdr-nav,.hdr-search{display:none;}
  .hamburger{display:flex;}
  .pdp{grid-template-columns:1fr;gap:var(--s5);}
  .pdp-media{position:static;}
  .plp-layout{grid-template-columns:1fr;}
  .filters{position:static;}
  .acct-layout{grid-template-columns:1fr;}
  .buybar{display:flex;}
  .has-buybar{padding-bottom:84px;}
  .proof-in{grid-template-columns:1fr;gap:var(--s5);text-align:center;}
}
@media (max-width:560px){
  .plp-grid{grid-template-columns:1fr;}
  .ft-grid{grid-template-columns:1fr;}
  .proof-in{grid-template-columns:1fr;}
  .order-row{grid-template-columns:1fr;gap:var(--s2);}
  .acct-stat-grid{grid-template-columns:1fr;}
}

/* ════ LAUNCH-DATA ADDITIONS (launch portfolio) ════ */
/* price source badge + indicative caveat */
.price-srcbadge{display:inline-flex;align-items:center;gap:0.3rem;font-family:var(--font-mono);font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#2D6A4F;background:rgba(45,106,79,0.1);border:1px solid rgba(45,106,79,0.3);border-radius:var(--r-pill);padding:0.2rem 0.55rem;align-self:center;}
.price-srcbadge svg{width:11px;height:11px;}
.price-indicative{display:block;margin-top:0.5rem;font-family:var(--font-mono);font-size:0.74rem;color:var(--warning,#8a6700);letter-spacing:0.02em;}
.cart-indicative{font-family:var(--font-mono);font-size:0.72rem;color:var(--warning,#8a6700);padding:0 var(--s5);margin:0 0 var(--s2);}

/* trust pills (per-SKU, verbatim AS standards) */
.trust-pills{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2);}
.trust-pill{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.76rem;font-weight:600;color:var(--text-strong);background:var(--offwhite-shade,#f3efe9);border:1px solid var(--border-light);border-radius:var(--r-pill);padding:0.32rem 0.7rem;}
.trust-pill .tp-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;}

/* non-structural notice (Pillar 5 exception) */
.nonstruct-note{margin-top:var(--s3);border-left:3px solid var(--warning,#B98A00);background:rgba(185,138,0,0.08);padding:0.7rem 0.9rem;font-size:0.84rem;line-height:1.5;color:var(--text-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;}
.nonstruct-note b{color:#8a6700;}
.pill--warn{background:#8a6700;}
.pill--warn .pill-dot{background:#fff;}

/* product card: non-structural tag */
.pcard-nonstruct{position:absolute;top:10px;right:10px;z-index:2;font-size:0.66rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#8a6700;background:rgba(255,255,255,0.92);border:1px solid rgba(185,138,0,0.4);border-radius:var(--r-pill);padding:0.2rem 0.55rem;}
.pcard-foot .cp small{display:block;font-family:var(--font-mono);font-size:0.66rem;font-weight:500;color:var(--text-muted);letter-spacing:0.02em;margin-top:2px;text-transform:none;}

/* ════ BRAND/VOICE UPDATE 2026-06 ════ */
/* Factory-direct pill — subtly distinguished: hollow amber ring dot (credentials claim, not AS compliance) */
.trust-pill--source{background:#fff;border-style:dashed;border-color:rgba(201,98,42,0.55);}
.trust-pill--source .tp-dot{background:transparent;border:1.5px solid var(--accent);width:8px;height:8px;}
.pill--source .pill-dot{background:transparent;border:1.5px solid var(--accent);width:7px;height:7px;box-sizing:border-box;}

/* PDP value-prop reinforcement line */
.pdp-wedge{display:flex;align-items:flex-start;gap:0.55rem;font-size:0.92rem;font-weight:600;color:var(--text-strong);line-height:1.45;margin-top:var(--s2);}
.pdp-wedge::before{content:"";flex-shrink:0;width:3px;align-self:stretch;background:var(--accent);border-radius:2px;}

/* PLP Tier-1 wedge banner */
.plp-wedge-banner{background:var(--charcoal);color:var(--text);border-radius:var(--r-md);padding:var(--s5) var(--s6);margin-bottom:var(--s6);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s5);border-left:4px solid var(--accent);}
.plp-wedge-banner .pwb-main h2{font-family:var(--font-display);font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:800;letter-spacing:-0.015em;line-height:1.15;color:var(--text);}
.plp-wedge-banner .pwb-main p{font-size:0.95rem;color:var(--text-faint);margin-top:0.35rem;}
.plp-wedge-banner .pwb-pills{margin-top:0;max-width:46ch;}
.plp-wedge-banner .trust-pill{background:rgba(255,255,255,0.04);border-color:var(--edge-dark);color:var(--text-faint);}
.plp-wedge-banner .trust-pill--source{background:transparent;border-color:rgba(201,98,42,0.6);color:var(--text);}

/* storefront home founder card (compact) */
.home-founder{display:grid;grid-template-columns:auto 1fr;gap:var(--s6);align-items:center;}
.home-founder-photo{width:120px;height:120px;flex-shrink:0;}
.home-founder-photo .founder-photo{width:120px;height:120px;margin:0;}
.home-founder-by{font-family:var(--font-mono);font-size:0.78rem;color:var(--text-muted);margin-top:var(--s4);}
.home-founder-link{display:inline-block;margin-top:var(--s3);font-weight:700;font-size:0.9rem;color:var(--text-strong);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px;}
@media (max-width:600px){.home-founder{grid-template-columns:1fr;}.home-founder-photo{width:88px;height:88px;}.home-founder-photo .founder-photo{width:88px;height:88px;}}

/* footer 'built by builders' line */
.ft-line{font-size:0.82rem;font-weight:700;color:var(--text-faint);margin-top:var(--s3);letter-spacing:0.01em;}

/* cart Tier-3 promo bar */
.cart-promo{display:flex;align-items:center;gap:0.5rem;padding:0.7rem var(--s5);background:var(--offwhite-shade);border-bottom:1px solid var(--border-light);font-size:0.8rem;font-weight:600;color:var(--text-strong);}
.cart-promo svg{color:var(--accent);flex-shrink:0;}

/* ════════════════════════════════════════════════════════════════════
   PERSONA-REFRESH MODULES (Section C) — locked system; amber = marker only
   ════════════════════════════════════════════════════════════════════ */

/* shared pillar chip (Skin A, charcoal-on-light, constant pillar dot) */
.jobcard-chip{display:inline-flex;align-items:center;gap:0.5rem;align-self:flex-start;background:var(--charcoal);color:var(--offwhite);font-size:0.64rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:0.38rem 0.78rem;border-radius:var(--r-pill);}
.jobcard-chip .d{width:6px;height:6px;border-radius:50%;background:var(--edge,var(--accent));flex-shrink:0;}

/* C1 · whole-job band (home) */
.jobband-head{display:flex;flex-direction:column;gap:var(--s3);margin-bottom:var(--s6);max-width:62ch;}
.jobband-head h2{font-size:var(--fs-h2);font-weight:800;letter-spacing:-0.015em;color:var(--text-strong);}
.jobband-head p{font-size:var(--fs-body);color:var(--text-muted);line-height:1.6;}
.jobgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);}
.jobcard{position:relative;display:flex;flex-direction:column;gap:var(--s3);background:#fff;border:1px solid var(--border-light);border-radius:var(--r-lg);padding:var(--s5) var(--s5) calc(var(--s5) + 3px);overflow:hidden;}
.jobcard-blurb{font-size:0.85rem;color:var(--text-muted);line-height:1.5;}
.jobcard-list{list-style:none;display:flex;flex-direction:column;gap:0.3rem;margin:var(--s2) 0;}
.jobcard-list li{display:flex;align-items:center;gap:0.6rem;padding:0.4rem;border-radius:var(--r-sm);cursor:pointer;transition:background 0.18s ease;}
.jobcard-list li:hover{background:var(--offwhite-shade);}
.jc-thumb{width:34px;height:34px;flex-shrink:0;border-radius:var(--r-sm);background:#fff;border:1px solid var(--border-light);border-left:3px solid var(--edge,var(--accent));overflow:hidden;display:flex;align-items:center;justify-content:center;}
.jc-thumb img{width:100%;height:100%;object-fit:contain;}
.jc-name{flex:1;font-size:0.8rem;font-weight:600;color:var(--text-strong);line-height:1.25;}
.jc-meta{font-family:var(--font-mono);font-size:0.66rem;color:var(--text-muted);flex-shrink:0;}
.jobcard-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);margin-top:auto;padding-top:var(--s3);}
.jobcard-n{font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--text-strong);letter-spacing:-0.02em;line-height:1;}
.jobcard-n small{font-family:var(--font-body);font-weight:600;font-size:0.66rem;color:var(--text-muted);margin-left:0.35rem;}
.jobcard-rule{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);}

/* C1 · compact job strip (PLP entry) */
.jobstrip{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;background:#fff;border:1px solid var(--border-light);border-radius:var(--r-md);padding:var(--s4) var(--s5);margin-bottom:var(--s6);}
.jobstrip-lead{display:flex;align-items:center;gap:0.7rem;font-size:0.9rem;color:var(--text-muted);}
.jobstrip-lead b{color:var(--text-strong);}
.js-rule{width:22px;height:2px;background:var(--accent);border-radius:1px;flex-shrink:0;}
.jobstrip-btns{display:flex;gap:var(--s2);flex-wrap:wrap;}
.jobstrip-btn{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.82rem;font-weight:700;color:var(--text-strong);background:var(--offwhite-shade);border:1px solid var(--border-light);border-radius:var(--r-pill);padding:0.45rem 0.9rem;cursor:pointer;transition:border-color 0.18s ease;}
.jobstrip-btn:hover{border-color:var(--accent);}
.jobstrip-btn .d{width:7px;height:7px;border-radius:50%;background:var(--edge,var(--accent));}
.js-n{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);}

/* C1 · PDP whole-job prompt */
.jobprompt{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s6);align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:var(--r-lg);padding:var(--s6);overflow:hidden;}
.jobprompt::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--edge,var(--accent));}
.jobprompt-main h3{font-size:var(--fs-h3);font-weight:800;color:var(--text-strong);margin:var(--s3) 0 var(--s2);}
.jobprompt-main p{font-size:0.9rem;color:var(--text-muted);line-height:1.55;}
.jobprompt-items{display:flex;flex-direction:column;gap:var(--s2);}
.jp-item{display:flex;align-items:center;gap:0.7rem;background:var(--offwhite-shade);border:1px solid transparent;border-radius:var(--r-sm);padding:0.5rem 0.7rem;cursor:pointer;text-align:left;}
.jp-item:hover{border-color:var(--border-light);}
.jp-item.is-current{background:#fff;border-color:var(--edge,var(--accent));}
.jp-name{flex:1;font-size:0.82rem;font-weight:600;color:var(--text-strong);}
.jp-tag{font-family:var(--font-mono);font-size:0.6rem;color:var(--text-muted);margin-left:0.4rem;text-transform:uppercase;letter-spacing:0.06em;}
.jobprompt-add{margin-top:var(--s2);}

/* C2 · free-delivery progress (number-as-hero; amber only in the fill) */
.freeship{margin-bottom:var(--s4);}
.freeship--compact{margin:var(--s4) 0 0;}
.freeship-line{font-size:0.84rem;color:var(--text-muted);margin-bottom:0.45rem;}
.freeship--compact .freeship-line{font-size:0.8rem;}
.freeship-line b{color:var(--text-strong);}
.fs-num{font-family:var(--font-display);font-weight:800;font-size:1.05rem;color:var(--text-strong);letter-spacing:-0.01em;}
.freeship-track{height:7px;background:var(--offwhite-shade);border-radius:999px;overflow:hidden;}
.freeship-fill{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width 0.45s cubic-bezier(0.22,1,0.36,1);}
.freeship.is-done .freeship-fill{background:linear-gradient(90deg,var(--accent),var(--accent-hover));}

/* C3 · PDP ratings / reviews zone */
.reviews-zone{padding:var(--s8) 0;}
.rz-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s5);flex-wrap:wrap;margin-bottom:var(--s5);}
.rz-head h2{font-size:var(--fs-h3);font-weight:800;color:var(--text-strong);}
.rz-score{display:flex;flex-direction:column;align-items:flex-end;gap:0.2rem;}
.rz-num{font-family:var(--font-display);font-size:2.6rem;font-weight:800;color:var(--text-strong);line-height:1;letter-spacing:-0.02em;}
.rz-stars{color:var(--border-light);letter-spacing:0.18em;font-size:1rem;}
.rz-count{font-family:var(--font-mono);font-size:0.7rem;color:var(--text-muted);}
.rz-empty{display:flex;gap:var(--s4);align-items:stretch;background:#fff;border:1px solid var(--border-light);border-radius:var(--r-md);padding:var(--s5);max-width:66ch;}
.rz-rule{width:3px;background:var(--accent);border-radius:2px;flex-shrink:0;}
.rz-empty p{font-size:0.9rem;color:var(--text-muted);line-height:1.55;}
.rz-empty b{color:var(--text-strong);}

/* C4 · social-proof strip (designed-empty) */
.socialproof{padding:var(--s7) 0;}
.sp-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5);}
.sp-soon{font-family:var(--font-mono);font-size:0.64rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-light);padding:0.3rem 0.6rem;border-radius:var(--r-pill);}
.sp-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--s4);}
.sp-slot{aspect-ratio:5/2;border:1px dashed var(--border-light);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#fbf9f6,#fbf9f6 9px,#f4f1ec 9px,#f4f1ec 18px);}
.sp-ph{font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.04em;color:var(--text-muted);text-transform:uppercase;}
.sp-note{font-size:0.8rem;color:var(--text-muted);margin-top:var(--s4);max-width:66ch;line-height:1.5;}

/* C4 · referral card (account) */
.refer-card{display:flex;gap:var(--s5);align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:var(--s4);}
.refer-main{max-width:48ch;}
.refer-main h3{font-size:1.05rem;font-weight:700;color:var(--text-strong);margin:var(--s3) 0 var(--s2);}
.refer-main p{font-size:0.86rem;color:var(--text-muted);line-height:1.5;}
.refer-code{flex-shrink:0;}
.rc-label{display:block;font-family:var(--font-mono);font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:0.4rem;}
.rc-row{display:flex;gap:var(--s2);align-items:stretch;}
.rc-val{display:flex;align-items:center;font-family:var(--font-mono);font-weight:700;font-size:0.95rem;color:var(--text-strong);background:var(--offwhite-shade);border:1px dashed var(--border-light);border-radius:var(--r-sm);padding:0 var(--s4);letter-spacing:0.05em;}

/* C5 · by-the-carton / bulk-quote path */
.bulkquote{margin-top:var(--s2);border:1px solid var(--border-light);border-radius:var(--r-md);padding:var(--s4) var(--s5);background:#fff;}
.bq-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;}
.bq-copy{display:flex;flex-direction:column;gap:0.15rem;}
.bq-k{font-size:0.9rem;font-weight:700;color:var(--text-strong);}
.bq-d{font-size:0.8rem;color:var(--text-muted);}
.bq-open{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:var(--s4);align-items:flex-start;}
.bq-open p{font-size:0.85rem;color:var(--text-muted);line-height:1.55;}
.bulkquote .mono{font-family:var(--font-mono);color:var(--text-strong);font-size:0.8rem;}

/* C5 · framing-pillar "more sizes coming" slot */
.moresizes{display:flex;flex-direction:column;gap:var(--s3);justify-content:center;align-items:flex-start;text-align:left;border:1px dashed var(--border-light);border-radius:var(--r-lg);background:repeating-linear-gradient(135deg,#fbf9f6,#fbf9f6 11px,#f4f1ec 11px,#f4f1ec 22px);padding:var(--s5);cursor:pointer;min-height:170px;transition:border-color 0.18s ease;}
.moresizes:hover{border-color:var(--accent);}
.ms-rule{width:34px;height:2px;background:var(--accent);border-radius:1px;}
.ms-k{font-size:1.02rem;font-weight:800;color:var(--text-strong);line-height:1.2;}
.ms-d{font-size:0.84rem;color:var(--text-muted);line-height:1.5;}
.ms-cta{font-size:0.82rem;font-weight:700;color:var(--text-strong);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px;margin-top:auto;}

/* C6 · finish-filter wayfinding note */
.filter-note{font-size:0.74rem;color:var(--text-muted);line-height:1.45;margin:-2px 0 var(--s3);}

@media (max-width:860px){
  .jobgrid{grid-template-columns:1fr;}
  .jobprompt{grid-template-columns:1fr;}
  .sp-grid{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:560px){
  .sp-grid{grid-template-columns:repeat(2,1fr);}
  .refer-card{align-items:flex-start;}
  .rc-row{width:100%;}
  .rc-val{flex:1;}
}
