/* assayrecord.ai. Same family as riftveil.ai and humanfrontier.ai: a dark band on top, a gold rule, a gold call to action.
   Assay Record's own colours: ink and brass on paper. */
:root{--ink:#1C1B19;--band:#211D17;--band2:#2B261E;--paper:#F6F4EF;--white:#FFFFFF;--mut:#4A4740;--qui:#6E6A60;--rule:#DDD8CC;
--brass:#9C7A2E;--brassd:#7A5C1E;--gold:#D9A441;--goldh:#E6B65A;--onband:#EDE8DC;--onband2:#B9B2A2;
--serif:"Instrument Serif",Georgia,serif;--sans:"IBM Plex Sans","Helvetica Neue",sans-serif;--mono:"IBM Plex Mono",Menlo,monospace}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
a{color:inherit}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;color:#000;padding:8px 12px;z-index:20}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
/* ---- band ---- */
.band{background:var(--band);color:var(--onband);border-bottom:4px solid var(--gold)}
.topnav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;flex-wrap:wrap;border-bottom:1px solid #3A342A}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--onband)}
.brand .name{font-family:var(--serif);font-size:24px;line-height:1}
.brand .tag{font-family:var(--mono);font-size:10.5px;color:var(--gold);border:1px solid #6B5A33;padding:2px 7px}
.topnav ul{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0;flex-wrap:wrap;font-size:14.5px}
.topnav ul a{text-decoration:none;color:var(--onband)}
.topnav ul a:hover,.topnav ul a[aria-current]{color:var(--gold)}
.topnav .sep{width:1px;height:18px;background:#4A4336}
.topnav .family{color:var(--onband2)!important}
.topnav .lang{font-family:var(--mono);font-size:12.5px;border:1px solid #4A4336;padding:3px 8px}
.btn{display:inline-block;padding:12px 20px;font-weight:600;font-size:15px;text-decoration:none;border:1px solid transparent;line-height:1.2}
.btn.gold{background:var(--gold);color:var(--ink)}.btn.gold:hover{background:var(--goldh)}
.btn.line{border-color:var(--onband);color:var(--onband)}.btn.line:hover{border-color:var(--gold);color:var(--gold)}
.btn.dark{background:var(--ink);color:var(--paper)}.btn.dark:hover{background:#000}
.btn.ghost{border-color:var(--ink);color:var(--ink)}.btn.ghost:hover{color:var(--brassd);border-color:var(--brassd)}
.topnav .btn{padding:9px 16px;font-size:14px}
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:center;padding:72px 0 80px}
.hero .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--gold);text-transform:uppercase}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.6vw,68px);line-height:1.03;margin:18px 0 20px;letter-spacing:-.3px;color:#FBF8F1}
.hero .lede{font-size:18.5px;line-height:1.65;color:var(--onband2);max-width:560px;margin:0 0 28px}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap}
.hero .byline{font-size:13px;color:var(--onband2);margin-top:22px}
.hero .card{color:var(--ink);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.pagehead{padding:56px 0 60px}
.pagehead .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--gold);text-transform:uppercase}
.pagehead h1{font-family:var(--serif);font-weight:400;font-size:clamp(38px,5vw,60px);line-height:1.05;margin:14px 0 14px;color:#FBF8F1}
.pagehead p{color:var(--onband2);max-width:720px;font-size:17.5px;margin:0}
.pagehead .meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-family:var(--mono);font-size:12.5px;color:var(--onband2)}
.pagehead .meta b{color:var(--onband);font-weight:500}
/* ---- home sections (approved design, inline styles) ---- */
.home > div{max-width:1440px;margin:0 auto}
.home a{text-decoration:none}
svg.diagram{width:100%;height:auto;max-width:1200px;display:block}
.dwrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.planned{display:inline-block;font-family:var(--mono);font-size:11px;color:var(--brassd);border:1px dashed var(--brass);padding:1px 7px}
/* ---- documents ---- */
.docgrid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding:48px 0 96px}
.toc{position:sticky;top:20px;align-self:start;font-size:14px;border-left:2px solid var(--rule);padding-left:16px}
.toc strong{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--qui);margin-bottom:8px}
.toc ol{list-style:none;margin:0;padding:0}
.toc li{margin:6px 0}
.toc a{text-decoration:none;color:var(--mut)}.toc a:hover{color:var(--brassd)}
.toc .sub{padding-left:12px;font-size:13px}
.doc{max-width:860px;min-width:0}
.doc h2{font-family:var(--serif);font-weight:400;font-size:36px;line-height:1.1;margin:56px 0 16px;padding-top:28px;border-top:1px solid var(--ink)}
.doc h2:first-child{margin-top:0}
.doc h2 .num{font-family:var(--mono);font-size:14px;color:var(--brassd);vertical-align:middle;margin-right:12px}
.doc h3{font-family:var(--sans);font-size:19px;font-weight:600;margin:32px 0 10px}
.doc p,.doc ul,.doc ol{margin:0 0 14px}
.doc li{margin:5px 0}
.doc a{color:var(--brassd);text-underline-offset:3px}
.doc table{border-collapse:collapse;width:100%;font-size:14.5px;margin:0 0 18px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-bottom:1px solid var(--rule)}
.doc th{font-size:11.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--qui);font-weight:600;border-bottom:1px solid var(--ink)}
.tablewrap{overflow-x:auto;margin:0 0 18px}
.doc pre{background:#15130F;color:#EDE8DC;border-radius:2px;padding:16px 18px;overflow-x:auto;font-family:var(--mono);font-size:13px;line-height:1.55;margin:0 0 18px}
.doc code{font-family:var(--mono);font-size:.9em;background:#EDE8DC;padding:1px 5px;overflow-wrap:anywhere}
.doc pre code{background:none;padding:0;font-size:inherit;color:inherit}
.note{border-left:3px solid var(--brass);background:var(--white);padding:12px 16px;margin:0 0 20px;font-size:15px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 28px}
.cards a{display:block;background:var(--white);border:1px solid var(--ink);padding:20px 22px;text-decoration:none;color:var(--ink)}
.cards a:hover{border-color:var(--brassd)}
.cards b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;margin-bottom:6px}
.cards span{font-size:14px;color:var(--mut)}
/* ---- footer ---- */
footer.foot{background:var(--band);color:var(--onband2);border-top:4px solid var(--gold);padding:48px 0 28px;font-size:14px}
.fcols{display:grid;grid-template-columns:1.3fr 1fr 1.4fr;gap:40px}
.foot h4{font-family:var(--mono);font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);margin:0 0 12px;font-weight:500}
.foot ul{list-style:none;margin:0;padding:0}.foot li{margin:6px 0}
.foot a{color:var(--onband);text-decoration:none}.foot a:hover{color:var(--gold)}
.foot .fam span{display:block;font-size:12.5px;color:var(--onband2)}
.foot .bottom{border-top:1px solid #3A342A;margin-top:36px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12.5px}
/* ---- responsive ---- */
@media (max-width:1280px){.home [style*="120px"]{padding-left:40px!important;padding-right:40px!important}}
@media (max-width:1000px){
  .hero,.docgrid{grid-template-columns:minmax(0,1fr);gap:40px}
  .toc{position:static;border-left:0;border-top:1px solid var(--rule);padding:16px 0 0}
  .cards,.fcols{grid-template-columns:minmax(0,1fr)}
  .home [style*="repeat(2, minmax(0, 1fr))"],.home [style*="repeat(3, minmax(0, 1fr))"],.home [style*="repeat(4, minmax(0, 1fr))"],.home [style*="repeat(12, minmax(0, 1fr))"],.home [style*="280px minmax(0, 1fr) 200px"]{grid-template-columns:minmax(0,1fr)!important}
  .home [style*="justify-self: end"]{justify-self:start!important}
  .home [style*="grid-column"]{grid-column:auto!important}
  .home [style*="justify-content: space-between; align-items: flex-end"],.home [style*="justify-content: space-between; align-items: center; gap: 48px"]{flex-direction:column!important;align-items:flex-start!important}
  .home [style*="border-right: 1px solid"]{border-right:0!important}
  .home [style*="padding: 32px 36px"],.home [style*="padding: 32px 0 32px 36px"],.home [style*="padding: 32px 36px 32px 0"]{padding:24px 0!important;border-top:1px solid var(--rule)}
  .home [style*="font-size: 52px"],.home [style*="font-size: 56px"]{font-size:38px!important}
  .home [style*="font-size: 48px"]{font-size:34px!important}
  .home [style*="padding: 88px"]{padding-top:56px!important;padding-bottom:56px!important}
  svg.diagram{min-width:860px}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .topnav ul{gap:14px;font-size:14px}
  .topnav .sep{display:none}
  .hero{padding:44px 0 52px}
  .home [style*="120px"],.home [style*="padding: 72px 120px"]{padding-left:16px!important;padding-right:16px!important}
  .home [style*="font-size: 52px"],.home [style*="font-size: 56px"],.home [style*="font-size: 48px"]{font-size:30px!important}
  .home [style*="font-size: 40px"]{font-size:32px!important}
  .home [style*="display: flex; gap: 14px"]{flex-wrap:wrap}
  .home [style*="white-space: pre"]{overflow-x:auto;font-size:12px!important}
  .home [style*="grid-template-columns: 48px"]{grid-template-columns:36px minmax(0,1fr)!important}
  .doc h2{font-size:30px}
}
