:root{
  --ink:#232839; --ink-2:#3a4155; --navy:#1c2233; --muted:#6d6a63;
  --paper:#faf6f0; --paper-2:#f2ebe0; --card:#fffdf9;
  --copper:#b6864f; --copper-dk:#8f5f2c; --copper-lt:#e7d3ba;
  --line:#e3d8c8; --line-2:#d3c4ae; --ok:#3f6a4d;
  --shadow-sm:0 8px 24px rgba(60,42,22,.08);
  --shadow:0 22px 60px rgba(45,32,18,.14);
  --max:1240px;
  --serif:"Fraunces",Georgia,serif; --sans:"Archivo",system-ui,sans-serif; --mono:"Spline Sans Mono",ui-monospace,monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans); color:var(--ink); background:var(--paper); line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");}
h1,h2,h3,h4{font-family:var(--serif); font-weight:600; line-height:1.06; color:var(--ink); letter-spacing:-.01em}
a{color:inherit; text-decoration:none}
img{max-width:100%; display:block}
.wrap{max-width:var(--max); margin:0 auto; padding:0 clamp(18px,4vw,40px)}
.mono{font-family:var(--mono); font-weight:500; letter-spacing:.04em}
.eyebrow{font-family:var(--mono); font-size:.74rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--copper-dk)}

/* buttons */
.btn{display:inline-flex; align-items:center; gap:.55em; font-family:var(--sans); font-weight:600; font-size:.98rem; padding:.85em 1.5em; border-radius:2px; border:1.5px solid transparent; cursor:pointer; transition:.25s; white-space:nowrap}
.btn svg{width:1em;height:1em;transition:transform .25s}
.btn:hover svg{transform:translateX(3px)}
.btn-copper{background:var(--copper); color:#fff; box-shadow:0 8px 22px rgba(143,95,44,.25)}
.btn-copper:hover{background:var(--copper-dk)}
.btn-navy{background:var(--navy); color:var(--paper)} .btn-navy:hover{background:#0f1420}
.btn-ghost{border-color:var(--line-2); color:var(--ink); background:transparent}
.btn-ghost:hover{border-color:var(--ink); background:var(--ink); color:var(--paper)}
.btn-light{background:#fff; color:var(--ink); border-color:#fff}
.btn-light:hover{background:transparent; color:#fff; border-color:#fff}

/* utility bar */
.util{background:var(--navy); color:#d8cebc; font-family:var(--mono); font-size:.72rem; letter-spacing:.05em}
.util .wrap{display:flex; gap:22px; align-items:center; justify-content:center; flex-wrap:wrap; padding-top:8px; padding-bottom:8px}
.util b{color:var(--copper-lt); font-weight:600}
.util .dot{width:4px;height:4px;border-radius:50%;background:var(--copper);opacity:.7}
@media(max-width:720px){ .util .wrap span:nth-child(n+5){display:none} }

/* header */
header.site{position:sticky; top:0; z-index:60; background:rgba(250,246,240,.88); backdrop-filter:blur(14px); border-bottom:1px solid transparent; transition:.3s}
header.site.scrolled{border-color:var(--line); box-shadow:0 6px 24px rgba(45,32,18,.06)}
.hd{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px 0; transition:padding .3s}
header.scrolled .hd{padding:8px 0}
.brand img{height:38px; width:auto}
nav.main{display:flex; gap:26px; align-items:center; margin-left:auto; margin-right:8px}
nav.main a{font-size:.94rem; font-weight:500; color:var(--ink-2); position:relative; padding:4px 0}
nav.main a::after{content:""; position:absolute; left:0; bottom:0; height:1.5px; width:0; background:var(--copper); transition:width .25s}
nav.main a:hover,nav.main a.active{color:var(--ink)} nav.main a:hover::after,nav.main a.active::after{width:100%}
.hd-cta{display:flex; gap:10px; align-items:center}
.menu-btn{display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px}
.menu-btn span{width:24px;height:2px;background:var(--ink);transition:.3s}

/* page hero (inner pages) */
.page-hero{position:relative; background:var(--navy); color:#fff; padding:clamp(56px,8vw,104px) 0 clamp(44px,6vw,68px); overflow:hidden}
.page-hero::after{content:""; position:absolute; inset:0; background:radial-gradient(120% 90% at 85% -10%, rgba(182,134,79,.28), transparent 60%); pointer-events:none}
.page-hero .wrap{position:relative; z-index:1}
.crumb{font-family:var(--mono); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:#a99f8c; margin-bottom:16px}
.crumb a:hover{color:var(--copper-lt)}
.page-hero .eyebrow{color:var(--copper-lt)}
.page-hero h1{color:#fff; font-size:clamp(2.3rem,4.6vw,3.6rem); margin-top:14px}
.page-hero .lead{color:#d9d0c2; font-size:clamp(1.05rem,1.4vw,1.2rem); margin-top:20px}
.page-hero .h-actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:28px}

/* generic section */
section{padding:clamp(52px,7vw,96px) 0}
.sec-head{margin-bottom:clamp(28px,4vw,48px)}
.sec-head h2{font-size:clamp(1.9rem,3.4vw,2.9rem)}
.sec-head .no{font-family:var(--mono); font-size:.72rem; letter-spacing:.16em; color:var(--copper-dk); display:block; margin-bottom:14px}
.sec-head p{color:var(--ink-2); margin-top:18px; font-size:1.05rem}
/* .row keeps a title + action button side-by-side (e.g. "All articles") */
.sec-head.row{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap}
.sec-head.row p{margin-top:0}
.soft{background:var(--paper-2)}
.dark{background:var(--navy); color:var(--paper)}
.dark h2,.dark h3{color:#fff} .dark .sec-head p{color:#cfc7b8} .dark .eyebrow{color:var(--copper-lt)}

/* prose / article body */
.prose{max-width:66ch}
.prose.wide{max-width:80ch}
.prose h2{font-size:clamp(1.5rem,2.6vw,2rem); margin:38px 0 14px}
.prose h3{font-size:1.25rem; margin:28px 0 10px}
.prose p{margin:0 0 16px; color:var(--ink-2)}
.prose ul,.prose ol{margin:0 0 18px 1.1em; color:var(--ink-2)}
.prose li{margin-bottom:8px}
.prose strong{color:var(--ink)}
.prose a{color:var(--copper-dk); text-decoration:underline; text-underline-offset:3px}
.prose .lead{font-size:1.2rem; color:var(--ink); margin-bottom:24px}
.legal{counter-reset:cl}
.legal .item{padding:20px 0; border-top:1px solid var(--line)}
.legal .item h3{margin:0 0 8px; font-size:1.12rem; display:flex; gap:12px; align-items:baseline}
.legal .item h3 .n{font-family:var(--mono); font-size:.8rem; color:var(--copper-dk)}
.legal .item p{margin:0; font-size:.96rem}

/* pills (brands) */
.pills{display:flex; flex-wrap:wrap; gap:10px}
.pill{font-family:var(--mono); font-size:.8rem; letter-spacing:.02em; padding:8px 14px; border:1px solid var(--line-2); border-radius:100px; background:var(--card); color:var(--ink-2)}

/* feature grid (cards w/ icon) */
.fgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.fcard{background:var(--card); border:1px solid var(--line); border-radius:6px; padding:26px 24px}
.fcard .n{font-family:var(--mono); font-size:.7rem; letter-spacing:.12em; color:var(--copper-dk); text-transform:uppercase}
.fcard h3{font-size:1.2rem; margin:8px 0 8px}
.fcard p{font-size:.92rem; color:var(--ink-2)}

/* two column (about) */
.tcol{display:grid; grid-template-columns:1.3fr .7fr; gap:clamp(28px,4vw,56px); align-items:start}
.biocard{background:var(--navy); color:#fff; border-radius:8px; padding:clamp(26px,3vw,38px); position:sticky; top:96px}
.biocard .k{font-family:var(--mono); font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--copper-lt)}
.biocard h3{color:#fff; font-size:1.6rem; margin:8px 0 4px}
.biocard .role{font-family:var(--mono); font-size:.78rem; color:#cfc7b8; margin-bottom:16px}
.biocard ul{list-style:none; display:flex; flex-direction:column; gap:10px}
.biocard li{display:flex; gap:10px; font-size:.92rem; color:#e3dbcd}
.biocard li b{color:var(--copper-lt); font-weight:600}

/* categories */
.cats{display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line); border-radius:4px; overflow:hidden}
.cat{background:var(--card); padding:26px 24px; transition:.3s; display:flex; flex-direction:column; gap:6px; min-height:150px}
.cat:hover{background:var(--navy); color:var(--paper)}
.cat:hover h3{color:#fff}
.cat:hover .cat-n,.cat:hover p{color:#cfc7b8}
.cat .cat-n{font-family:var(--mono); font-size:.68rem; letter-spacing:.12em; color:var(--copper-dk)}
.cat h3{font-size:1.24rem; margin-top:4px}
.cat p{font-size:.86rem; color:var(--muted)}

/* process steps */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(16px,2vw,26px)}
.step{position:relative; padding-top:22px; border-top:2px solid var(--copper-lt)}
.step .n{font-family:var(--mono); font-size:1.7rem; color:var(--copper); font-weight:600; line-height:1}
.step h3{font-size:1.15rem; margin:14px 0 8px}
.step p{font-size:.9rem; color:var(--ink-2)}
.dark .step p{color:#cdc6b7}

/* posts / blog */
.posts{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px)}
.post{border:1px solid var(--line); border-radius:6px; padding:26px 24px; background:var(--card); transition:.3s; display:flex; flex-direction:column; gap:12px}
.post:hover{border-color:var(--copper-lt); box-shadow:var(--shadow-sm); transform:translateY(-4px)}
.post .tag{font-family:var(--mono); font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; color:var(--copper-dk)}
.post h3{font-size:1.18rem; line-height:1.25}
.post p{font-size:.92rem; color:var(--ink-2); flex:1}
.post .go{margin-top:auto; font-weight:600; font-size:.9rem; color:var(--copper-dk)}

/* auction gallery */
.gal{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(14px,1.8vw,22px)}
.lot{background:var(--card); border:1px solid var(--line); border-radius:4px; overflow:hidden; transition:.3s; display:flex; flex-direction:column}
.lot:hover{transform:translateY(-6px); box-shadow:var(--shadow); border-color:var(--copper-lt)}
.lot .ph{aspect-ratio:16/10; overflow:hidden; background:#fff; display:flex; align-items:center; justify-content:center; border-bottom:1px solid var(--line)}
.lot .ph img{width:100%;height:100%;object-fit:contain}
.lot .in{padding:16px 18px 20px; display:flex; flex-direction:column; gap:8px; flex:1}
.lot .date{font-family:var(--mono); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--copper-dk)}
.lot h3{font-size:1.06rem; line-height:1.2; font-weight:600}
.lot .loc{font-size:.8rem; color:var(--muted); margin-top:auto; padding-top:6px}

/* contact */
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,4vw,56px); align-items:start}
.cinfo{display:flex; flex-direction:column; gap:22px}
.cinfo .row{display:flex; gap:16px; align-items:flex-start; padding-bottom:22px; border-bottom:1px solid var(--line)}
.cinfo .row .ic{width:44px;height:44px;flex:none;border-radius:10px;background:var(--paper-2);display:flex;align-items:center;justify-content:center}
.cinfo .row .ic svg{width:20px;height:20px;stroke:var(--copper-dk);fill:none;stroke-width:1.8}
.cinfo .row .k{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.cinfo .row .v{font-size:1.05rem;font-weight:500;color:var(--ink)}
.cinfo .row .v a:hover{color:var(--copper-dk)}
.form{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:clamp(24px,3vw,36px); box-shadow:var(--shadow-sm)}
.form .field{margin-bottom:16px}
.form label{display:block; font-family:var(--mono); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-2); margin-bottom:7px}
.form input,.form select,.form textarea{width:100%; padding:12px 14px; border:1px solid var(--line-2); border-radius:3px; background:#fff; font-family:var(--sans); font-size:.98rem; color:var(--ink); transition:.2s}
.form input:focus,.form select:focus,.form textarea:focus{outline:none; border-color:var(--copper); box-shadow:0 0 0 4px rgba(182,134,79,.14)}
.form textarea{min-height:130px; resize:vertical}
.form .row2{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.form .note{font-size:.8rem; color:var(--muted); margin-top:10px}

/* cta band */
.cta{display:grid; grid-template-columns:1fr 1fr; gap:2px; border-radius:4px; overflow:hidden; border:1px solid var(--line-2)}
.cta > div{padding:clamp(30px,4vw,52px)}
.cta .sell{background:var(--copper); color:#fff}
.cta .bid{background:var(--navy); color:#fff}
.cta h2{color:#fff; font-size:clamp(1.5rem,2.6vw,2.1rem)}
.cta p{margin:12px 0 24px; opacity:.9}

/* footer */
footer.site{background:var(--navy); color:#cbc2b2; padding:clamp(48px,6vw,80px) 0 30px}
.foot{display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:36px}
footer.site img{height:30px; margin-bottom:18px; filter:brightness(0) invert(1); opacity:.94}
footer.site h4{font-family:var(--mono); font-weight:600; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-lt); margin-bottom:16px}
footer.site a{color:#cbc2b2; font-size:.92rem; line-height:2}
footer.site a:hover{color:#fff}
.foot p{font-size:.9rem; line-height:1.7; max-width:30em}
.foot-links{display:flex;flex-direction:column}
.social{display:flex; gap:12px; margin-top:22px}
.social a{width:40px; height:40px; border-radius:50%; border:1px solid rgba(255,255,255,.22); display:flex; align-items:center; justify-content:center; color:#cbc2b2; transition:.25s}
.social a:hover{background:var(--copper); border-color:var(--copper); color:#fff}
.social svg{width:18px; height:18px; fill:currentColor}
.foot-bottom{margin-top:44px; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-family:var(--mono); font-size:.72rem; letter-spacing:.04em; color:#8f887b}

/* reveal */
.js [data-rev]{opacity:0; transform:translateY(26px); transition:opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1)}
.js [data-rev].in{opacity:1; transform:none}
@media (prefers-reduced-motion: reduce){ .js [data-rev]{opacity:1;transform:none;transition:none} }

@media(max-width:960px){
  nav.main{display:none} .menu-btn{display:flex}
  .gal,.posts,.cats,.fgrid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .tcol{grid-template-columns:1fr} .biocard{position:static}
  .contact-grid{grid-template-columns:1fr}
  .foot{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .cta,.form .row2{grid-template-columns:1fr}
  .gal,.posts,.cats,.fgrid,.foot{grid-template-columns:1fr}
  .hd-cta .btn-ghost{display:none}
}
/* mobile menu */
nav.mob{position:fixed; inset:0 0 0 auto; width:min(320px,84vw); background:var(--paper); z-index:70; transform:translateX(100%); transition:.35s; padding:80px 30px 30px; display:flex; flex-direction:column; gap:6px; box-shadow:var(--shadow)}
nav.mob.open{transform:none}
nav.mob a{font-family:var(--serif); font-size:1.3rem; padding:12px 0; border-bottom:1px solid var(--line)}
.mob-close{position:absolute; top:22px; right:24px; background:none;border:0;font-size:1.8rem;cursor:pointer;color:var(--ink)}
.scrim{position:fixed;inset:0;background:rgba(28,34,51,.4);z-index:65;opacity:0;visibility:hidden;transition:.3s}
.scrim.open{opacity:1;visibility:visible}

/* homepage-only bits (hero-b, split cards, marquee) */
.hero-b{position:relative; height:clamp(440px,46vw,600px); display:flex; align-items:center; overflow:hidden; color:#fff; isolation:isolate}
.hero-slides{position:absolute; inset:0; z-index:0; background:var(--navy)}
.hero-slides img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center}
.hero-b-ov{position:absolute; inset:0; z-index:1; background:linear-gradient(100deg,rgba(16,21,33,.95) 0%,rgba(16,21,33,.8) 42%,rgba(16,21,33,.4) 100%)}
.hero-b-in{position:relative; z-index:2; max-width:640px; padding-block:clamp(22px,3vw,40px)}
.hero-b-in .eyebrow{color:var(--copper-lt)}
.hero-b-in h1{color:#fff; font-size:clamp(2.6rem,5.6vw,4.35rem); margin-top:18px}
.hero-b-in h1 em{color:var(--copper-lt); font-style:italic}
.hero-b-in .lead{color:#e8e2d7; max-width:34em; font-size:clamp(1.05rem,1.5vw,1.22rem); margin-top:22px}
.hero-actions{display:flex; gap:14px; margin-top:30px; flex-wrap:wrap}
.hero-b-trust{display:flex; gap:16px; flex-wrap:wrap; margin-top:30px}
.hero-b-trust span{font-family:var(--mono); font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:#cfc7b8; display:flex; align-items:center; gap:8px}
.hero-b-trust b{color:var(--copper-lt)}
.hero-b-strip{position:absolute; left:0; right:0; bottom:0; z-index:2; background:rgba(12,17,28,.74); backdrop-filter:blur(8px); border-top:1px solid rgba(231,211,186,.22); transition:background .25s}
.hero-b-strip:hover{background:rgba(12,17,28,.86)}
.hero-b-strip .wrap{display:flex; align-items:center; gap:16px; padding-top:15px; padding-bottom:15px; flex-wrap:wrap}
.hero-b-strip .tag{font-family:var(--mono); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-lt); display:flex; align-items:center; gap:9px}
.hero-b-strip strong{font-family:var(--serif); font-weight:600; font-size:1.05rem; color:#fff}
.hero-b-strip .meta{font-family:var(--mono); font-size:.75rem; color:#c9c2b4}
.hero-b-strip .go{margin-left:auto; color:#fff; font-weight:600}
.pulse{width:7px;height:7px;border-radius:50%;background:#e0894e;box-shadow:0 0 0 0 rgba(224,137,78,.7);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(224,137,78,0)}100%{box-shadow:0 0 0 0 rgba(224,137,78,0)}}
@media(max-width:820px){ .hero-b-strip .go{margin-left:0} .hero-b{height:auto; padding-bottom:76px} }
.split{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:8px}
.card2{position:relative; padding:clamp(30px,3.4vw,48px); border-radius:8px; overflow:hidden; color:#fff; display:flex; flex-direction:column; transition:transform .3s, box-shadow .3s}
.card2.sell{background:linear-gradient(150deg,#c3945c 0%,#a06e37 55%,#8a5a2a 100%)}
.card2.bid{background:linear-gradient(150deg,#333c52 0%,#232a3c 55%,#161c2a 100%)}
.card2:hover{transform:translateY(-6px); box-shadow:var(--shadow)}
.card2 .glyph{position:absolute; right:-18px; bottom:-24px; z-index:0; opacity:.1}
.card2 .glyph svg{width:190px; height:190px; stroke:#fff; fill:none; stroke-width:1.2}
.card2 > *{position:relative; z-index:1}
.card2 .ic{width:54px; height:54px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.16); margin-bottom:24px}
.card2 .ic svg{width:27px; height:27px; stroke:#fff; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round}
.card2 .tag{font-family:var(--mono); font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.82); margin-bottom:12px}
.card2 h3{color:#fff; font-size:clamp(1.7rem,2.7vw,2.35rem); line-height:1.04; margin-bottom:14px; letter-spacing:-.015em}
.card2 p{color:rgba(255,255,255,.9); margin-bottom:28px; max-width:26em; flex:1; line-height:1.55}
.card2 .cta{align-self:flex-start; display:inline-flex; align-items:center; gap:.55em; font-weight:700; font-size:1rem; padding:.85em 1.6em; border-radius:2px; background:#fff; transition:.25s}
.card2.sell .cta{color:#8a5a2a} .card2.bid .cta{color:#1c2233}
.card2 .cta svg{width:1em; height:1em; transition:transform .25s}
.card2:hover .cta svg{transform:translateX(4px)}
@media(max-width:700px){ .split{grid-template-columns:1fr} }
.marquee{background:var(--navy); color:var(--paper); overflow:hidden; padding:16px 0; border-block:1px solid rgba(231,211,186,.14)}
.marquee-track{display:flex; width:max-content; animation:scrollx 34s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{font-family:var(--serif); font-style:italic; font-weight:500; font-size:clamp(1.15rem,2vw,1.55rem); color:#efe7d8; display:inline-flex; align-items:center; white-space:nowrap}
.marquee-track span::after{content:"—"; color:var(--copper); margin:0 clamp(20px,3vw,40px); font-style:normal}
@keyframes scrollx{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}

/* blog cards with images */
.bgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px)}
.bcard{border:1px solid var(--line); border-radius:6px; overflow:hidden; background:var(--card); display:flex; flex-direction:column; transition:.3s}
.bcard:hover{border-color:var(--copper-lt); box-shadow:var(--shadow-sm); transform:translateY(-5px)}
.bcard .thumb{aspect-ratio:16/10; overflow:hidden; background:var(--paper-2)}
.bcard .thumb img{width:100%;height:100%;object-fit:cover; transition:transform .5s}
.bcard:hover .thumb img{transform:scale(1.05)}
.bcard .b{padding:20px 22px 24px; display:flex; flex-direction:column; gap:10px; flex:1}
.bcard .tag{font-family:var(--mono); font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; color:var(--copper-dk)}
.bcard h3{font-size:1.14rem; line-height:1.25}
.bcard p{font-size:.9rem; color:var(--ink-2); flex:1}
.bcard .go{margin-top:auto; font-weight:600; font-size:.9rem; color:var(--copper-dk)}

/* document layout with sticky table-of-contents */
.doc{display:grid; grid-template-columns:230px 1fr; gap:clamp(28px,4vw,64px); align-items:start}
.toc{position:sticky; top:96px; max-height:calc(100vh - 120px); overflow:auto}
.toc .k{font-family:var(--mono); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-dk); margin-bottom:14px}
.toc a{display:block; padding:6px 0 6px 14px; font-size:.85rem; color:var(--ink-2); border-left:2px solid var(--line); margin-left:-2px; line-height:1.3}
.toc a:hover{color:var(--ink); border-color:var(--copper)}
.doc .prose{max-width:76ch}
@media(max-width:900px){ .doc{grid-template-columns:1fr} .toc{display:none} }

/* two-column intro with callout */
.intro2{display:grid; grid-template-columns:1.5fr 1fr; gap:clamp(28px,4vw,56px); align-items:start}
.intro2 .prose{max-width:none}
.callout{background:var(--navy); color:#fff; border-radius:8px; padding:clamp(24px,3vw,34px)}
.callout .k{font-family:var(--mono); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-lt); margin-bottom:16px}
.callout ul{list-style:none; display:flex; flex-direction:column; gap:13px}
.callout li{display:flex; gap:11px; font-size:.94rem; color:#e3dbcd; align-items:flex-start}
.callout li svg{width:18px;height:18px;flex:none;stroke:var(--copper-lt);fill:none;stroke-width:2.2;margin-top:2px}
@media(max-width:820px){ .intro2{grid-template-columns:1fr} }

/* blog article layout */
.article{display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:clamp(30px,4vw,60px); align-items:start}
.article .lead-img{border-radius:8px; overflow:hidden; margin-bottom:30px; border:1px solid var(--line); background:var(--paper-2)}
.article .lead-img img{width:100%; max-height:460px; object-fit:cover}
.article .prose{max-width:none}
.prose hr{border:0; border-top:1px solid var(--line); margin:30px 0}
.prose h2:first-child,.prose h3:first-child{margin-top:0}
.aside{position:sticky; top:96px; display:flex; flex-direction:column; gap:18px}
.aside .box{border:1px solid var(--line); border-radius:8px; padding:22px 22px 24px; background:var(--card)}
.aside .box.nv{background:var(--navy); color:#fff; border-color:transparent}
.aside .box .k{font-family:var(--mono); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-dk); margin-bottom:12px}
.aside .box.nv .k{color:var(--copper-lt)}
.aside .box.nv h4{color:#fff; font-size:1.15rem; margin-bottom:8px; font-family:var(--serif)}
.aside .box.nv p{font-size:.9rem; color:#d7cfc0; margin-bottom:16px}
.aside .rel a{display:block; padding:11px 0; border-top:1px solid var(--line); font-size:.9rem; color:var(--ink-2); line-height:1.3}
.aside .rel a:first-of-type{border-top:0; padding-top:0}
.aside .rel a:hover{color:var(--copper-dk)}
@media(max-width:900px){ .article{grid-template-columns:1fr} .aside{position:static} }

/* FAQ accordions */
.faq-cols{display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,4vw,60px); align-items:start}
.faq-col .k{font-family:var(--mono); font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--copper-dk); margin-bottom:6px; display:block}
.faq-col h2{font-size:clamp(1.6rem,2.6vw,2.1rem); margin-bottom:14px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-of-type{border-top:1px solid var(--line)}
.faq summary{list-style:none; cursor:pointer; padding:18px 38px 18px 0; position:relative; font-family:var(--serif); font-size:1.08rem; font-weight:600; color:var(--ink); line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+"; position:absolute; right:4px; top:15px; font-size:1.5rem; line-height:1; color:var(--copper-dk); transition:transform .25s; font-family:var(--sans)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details .a{padding:0 38px 20px 0; color:var(--ink-2); margin:0; font-size:.96rem; line-height:1.6}
.faq details .a a{color:var(--copper-dk); text-decoration:underline; text-underline-offset:2px}
@media(max-width:820px){ .faq-cols{grid-template-columns:1fr; gap:clamp(30px,6vw,44px)} }

/* ---- Contact Form 7 shim (inherits .form styling) ---- */
.form .wpcf7-form-control-wrap{display:block;width:100%}
.form .wpcf7 input[type=submit],.form input.btn{width:100%;justify-content:center;cursor:pointer;border:0}
.form .wpcf7-not-valid-tip{color:#b32222;font-size:.8rem;margin-top:5px;text-transform:none;letter-spacing:0;font-family:var(--sans)}
.form .wpcf7-response-output{margin:14px 0 0;padding:12px 14px;border-radius:3px;font-size:.9rem}
.form .wpcf7-spinner{margin:0 auto;display:block}
span.wpcf7-list-item{margin:0}

/* ---- HiBid live embed section ---- */
.hibid-embed{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-sm)}
.hibid-embed iframe{width:100%;min-height:640px;border:0;display:block}
.hibid-embed > *{max-width:100%}
