/* SmooveOperator: Gold Standard. Security-printing black and foil. */
@font-face{font-family:"Bodoni Moda";src:url(/fonts/BodoniModa-opsz18-normal.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url(/fonts/BodoniModa-opsz18-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:"Manrope";src:url(/fonts/Manrope-normal.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/JetBrainsMono-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Yellowtail";src:url(/fonts/Yellowtail-normal.woff2) format("woff2");font-weight:400;font-display:swap}
/* Bodoni Moda files are pinned to optical size 18: its display sizes (24 and up) thin the "e" crossbar and W serifs below one pixel on screen, so "Wholesale" read as "Wholcsalc". */
/* metric-matched fallbacks keep the layout still while fonts load (measured against the opsz 18 files) */
@font-face{font-family:"Manrope Fallback";src:local("Arial"),local("Helvetica Neue"),local("Liberation Sans");size-adjust:102%;ascent-override:104%;descent-override:29%;line-gap-override:0%}
@font-face{font-family:"Bodoni Fallback";font-style:normal;src:local("Times New Roman"),local("Times"),local("Liberation Serif");size-adjust:116%;ascent-override:97%;descent-override:34.5%;line-gap-override:0%}
@font-face{font-family:"Bodoni Fallback";font-style:italic;src:local("Times New Roman Italic"),local("Times-Italic"),local("Liberation Serif Italic");size-adjust:108.5%;ascent-override:103.5%;descent-override:37%;line-gap-override:0%}
@font-face{font-family:"Script Fallback";src:local("Brush Script MT"),local("Segoe Script"),local("URW Chancery L");size-adjust:92%}

:root{
  --black:#050504; --panel:#0e0d0a; --panel-2:#15130e;
  --foil:#D9B24C; --foil-hi:#F6DE8D; --foil-lo:#8A6B22;
  --text:#EFE8D6; --muted:#A99F86; --rule:#2d2715; --rule-2:#3a321c;
  --ok:#9CC7A5; --err:#F3B4A8;
  --display:"Bodoni Moda","Bodoni Fallback",Didot,"Times New Roman",serif;
  --body:"Manrope","Manrope Fallback",Arial,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --script:"Yellowtail","Script Fallback",cursive;
  --ease:cubic-bezier(.4,0,.2,1); --expo:cubic-bezier(.16,1,.3,1); --t1:180ms; --t2:360ms; --t3:600ms;
  --gut:clamp(20px,4vw,56px); --maxw:1240px;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%;scrollbar-color:var(--foil-lo) var(--black)}
body{margin:0;background:var(--black);color:var(--text);font:400 17px/1.65 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--foil);color:var(--black)}
::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--black)}::-webkit-scrollbar-thumb{background:var(--rule-2);border:2px solid var(--black)}
img,svg,canvas{display:block;max-width:100%}
[hidden]{display:none !important}
a{color:var(--foil-hi);text-decoration-thickness:1px;text-underline-offset:.22em}
a:hover{color:var(--text)}
:focus-visible{outline:2px solid var(--foil-hi);outline-offset:4px}
input,select,textarea,button{font:inherit;color:inherit}
input,textarea,select{caret-color:var(--foil-hi);accent-color:var(--foil)}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
.wrap{width:min(var(--maxw),100% - var(--gut)*2);margin-inline:auto}
.narrow{max-width:760px}
.nowrap{white-space:nowrap}
.visually-hidden{position:absolute !important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--foil);color:var(--black);padding:10px 14px;font-weight:700}
.skip-link:focus{top:12px}
.skip-link:hover{color:var(--black)}
.hp{position:absolute;left:-9999px}
.foil-text{background:linear-gradient(100deg,var(--foil-lo) 0%,var(--foil) 22%,var(--foil-hi) 38%,var(--foil) 52%,var(--foil-lo) 72%,var(--foil) 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 9s var(--ease) infinite}
@keyframes sheen{0%,100%{background-position:0 0}50%{background-position:100% 0}}
.script{font-family:var(--script);font-weight:400;letter-spacing:0}

/* header */
.site-header{position:sticky;top:0;z-index:40;background:rgba(5,5,4,.88);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--rule)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}
.wordmark{font:400 34px/1 var(--script);background:linear-gradient(100deg,var(--foil-lo),var(--foil) 30%,var(--foil-hi) 50%,var(--foil) 70%,var(--foil-lo));-webkit-background-clip:text;background-clip:text;color:transparent;text-decoration:none;white-space:nowrap;padding-block:6px}
.wordmark:hover{filter:brightness(1.15)}
#site-nav{display:flex;align-items:center;gap:24px}
#site-nav a{font:600 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--muted);padding-block:8px;white-space:nowrap;transition:color var(--t1) var(--ease)}
#site-nav a:not(.nav-cta):hover,#site-nav a[aria-current="page"]:not(.nav-cta){color:var(--text)}
#site-nav a[aria-current="page"]:not(.nav-cta){box-shadow:inset 0 -1px 0 var(--foil)}
#site-nav .nav-cta{color:var(--black);background:var(--foil);padding:12px 16px;transition:background var(--t1) var(--ease),color var(--t1) var(--ease)}
#site-nav .nav-cta:hover{background:var(--foil-hi);color:var(--black)}
/* on the Fit Check page the CTA is where you already are: outlined, not a call to act */
#site-nav .nav-cta[aria-current="page"]{background:transparent;color:var(--foil-hi);box-shadow:inset 0 0 0 1px var(--foil)}
.menu-toggle{display:none;align-items:center;gap:10px;background:none;border:1px solid var(--foil-lo);padding:10px 14px;font:600 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.menu-lines{width:16px;height:9px;border-block:1.5px solid var(--foil);position:relative;transition:transform var(--t2) var(--ease)}
.menu-toggle[aria-expanded="true"] .menu-lines{transform:rotate(90deg)}
@media (max-width:1000px){
  .wordmark{font-size:30px}
  .js .menu-toggle{display:inline-flex}
  .js #site-nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--black);border-bottom:1px solid var(--rule);padding:8px var(--gut) 20px;clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path var(--t2) var(--ease),visibility 0s var(--t2)}
  .js #site-nav.is-open{clip-path:inset(0 0 0 0);visibility:visible;transition:clip-path var(--t2) var(--ease)}
  .js #site-nav a{padding:16px 0;border-bottom:1px solid var(--rule);font-size:14px}
  .js #site-nav .nav-cta{margin-top:14px;text-align:center;border:0;padding:16px}
  html:not(.js) .bar{flex-wrap:wrap;padding-block:10px}
  html:not(.js) #site-nav{flex-wrap:wrap;gap:12px 18px}
}

/* buttons */
.btn-row{display:flex;flex-wrap:wrap;gap:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font:700 14px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:18px 24px;border:1px solid var(--foil);cursor:pointer;transition:background var(--t1) var(--ease),color var(--t1) var(--ease),transform var(--t1) var(--ease)}
.btn .i-arrow{width:18px;height:18px;transition:transform var(--t2) var(--ease)}
.btn:hover .i-arrow{transform:translateX(4px)}
.btn:active{transform:translateY(1px)}
.btn-solid{background:var(--foil);color:var(--black)}
.btn-solid:hover{background:var(--foil-hi);color:var(--black)}
.btn-line{background:transparent;color:var(--foil)}
.btn-line:hover{background:rgba(217,178,76,.08);color:var(--foil-hi)}
.btn-text{border:0;padding:12px 0;color:var(--foil);background:none}
.btn-text:hover{color:var(--foil-hi)}
.btn[disabled]{opacity:.55;cursor:progress}

/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--rule);isolation:isolate}
.rosette{position:absolute;z-index:-1;right:-14vw;top:50%;width:min(940px,100vw);aspect-ratio:1;transform:translateY(-50%);pointer-events:none}
.hero-inner{padding-block:clamp(56px,7vw,96px) clamp(72px,9vw,120px)}
.hero h1{font:500 clamp(54px,7.8vw,112px)/.96 var(--display);letter-spacing:-.01em;margin:0;max-width:11ch}
.hero h1 .script{font-size:1.14em;line-height:.8;display:inline-block;padding-right:.08em}
.lede{max-width:52ch;color:var(--muted);font-size:clamp(17px,1.4vw,19px);margin:30px 0 36px}
.hero .lede{color:var(--text);max-width:36ch;font-size:clamp(18px,1.7vw,22px);line-height:1.5}
.seal{display:flex;align-items:center;gap:12px;margin:40px 0 0;font:500 15px/1.4 var(--body);color:var(--text)}
.seal-mark{width:34px;height:34px;flex:none;color:var(--foil)}
@media (max-width:760px){.rosette{top:-6%;right:-52vw;transform:none;width:150vw;opacity:.5}}

/* path band: who handles each step reads first; only our step carries foil */
.band{border-bottom:1px solid var(--rule);padding-block:56px 52px}
.band-title{font:500 clamp(28px,3vw,40px)/1.1 var(--display);letter-spacing:-.01em;color:var(--text);margin:0 0 36px;max-width:24ch}
.path{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--foil-lo)}
.path-3{grid-template-columns:repeat(3,1fr)}
.stop{position:relative;padding:30px 26px 34px;border-right:1px solid var(--rule)}
.stop::before{content:"";position:absolute;top:-5px;left:-5px;width:9px;height:9px;background:var(--black);border:1px solid var(--foil-lo);transform:rotate(45deg)}
.stop.is-ours::before{background:var(--foil);border-color:var(--foil)}
.stop:first-child{padding-left:0}.stop:first-child::before{left:0}.stop:last-child{border-right:0}
.stop-n{display:block;font:italic 400 44px/1 var(--display);color:var(--muted);margin-bottom:12px}
.stop.is-ours .stop-n{color:var(--foil)}
.stop h3{font:500 28px/1.1 var(--display);margin:0 0 6px}
.stop-by{margin:0 0 12px;font:500 15px/1.4 var(--body);color:var(--muted)}
.stop-by b{font-weight:700;color:var(--text)}
.stop p:last-child{margin:0;color:var(--muted);font-size:15.5px;line-height:1.55}
.band-note{margin:30px 0 0;color:var(--muted);font-size:15px;max-width:65ch}
@media (max-width:900px){.path,.path-3{grid-template-columns:1fr 1fr}.stop{padding-left:0;padding-right:20px}.stop:nth-child(2n){border-right:0;padding-left:20px}.stop:nth-child(-n+2){border-bottom:1px solid var(--rule)}.path-3 .stop:nth-child(3){border-bottom:0}}
@media (max-width:560px){.path,.path-3{grid-template-columns:1fr}.stop,.stop:nth-child(2n){border-right:0;padding:26px 0;border-bottom:1px solid var(--rule)}.stop::before,.stop:first-child::before{left:0}.stop:last-child{border-bottom:0}}

/* sections */
.section{padding-block:clamp(88px,10vw,128px)}
.section-tight{padding-block:clamp(56px,7vw,96px)}
h2{font:500 clamp(40px,4.8vw,70px)/1.02 var(--display);letter-spacing:-.015em;margin:0}
h1 em,h2 em{font-style:italic}
/* gold marks one claim per page, nothing else */
em.claim{color:var(--foil)}
.stack em{display:block}
.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,72px);align-items:start}
.split-head{position:sticky;top:110px}
.intro{color:var(--muted);max-width:42ch;margin:22px 0 18px}
.head-row .intro{margin:22px 0 0;max-width:52ch}
@media (max-width:900px){.split{grid-template-columns:1fr}.split-head{position:static}}

/* the instrument: four rules engraved as one note */
.instrument-head{text-align:center;max-width:860px;margin:0 auto clamp(40px,5vw,64px)}
.instrument-head .intro{margin:22px auto 0;max-width:48ch}
.note{--band:18px;position:relative;background:var(--panel);padding:clamp(58px,6vw,80px) clamp(40px,5.5vw,84px) clamp(54px,5.5vw,74px)}
.note::before{content:"";position:absolute;inset:34px;border:1px solid var(--rule);pointer-events:none}
.note-frame{position:absolute;inset:0;pointer-events:none}
.edge{position:absolute;overflow:hidden}
.edge i{position:absolute;inset:0;display:block}
.edge-t,.edge-b{left:0;right:0;height:var(--band)}.edge-t{top:0}.edge-b{bottom:0}
.edge-l,.edge-r{top:0;bottom:0;width:var(--band)}.edge-l{left:0}.edge-r{right:0}
.edge-t i,.edge-b i{background:url(/assets/band-h.svg) 0 0/72px var(--band) round no-repeat}
.edge-l i,.edge-r i{background:url(/assets/band-v.svg) 0 0/var(--band) 72px no-repeat round}
.corner{position:absolute;width:36px;height:36px;background:url(/assets/corner.svg) 0 0/36px 36px}
.corner-tl{left:-9px;top:-9px}.corner-tr{right:-9px;top:-9px}.corner-br{right:-9px;bottom:-9px}.corner-bl{left:-9px;bottom:-9px}
.micro{position:absolute;left:40px;right:40px;top:22px;height:8px;margin:0;background:url(/assets/microprint.svg) 0 0/420px 8px repeat-x;opacity:.9}
.micro-b{top:auto;bottom:22px}
.note-body{display:grid;grid-template-columns:1.4fr .9fr;grid-template-rows:auto 1fr;grid-template-areas:"rules head" "rules dials";gap:0 clamp(28px,4.5vw,64px);align-items:start}
.clauses{grid-area:rules}.sample-head{grid-area:head}.sample{grid-area:dials}
.lbl-short{display:none}
.clauses{list-style:none;margin:0;padding:0}
.clause{display:grid;grid-template-columns:84px 1fr;gap:14px;padding-block:24px;border-bottom:1px solid var(--rule);transition:opacity var(--t2) var(--ease)}
.clause:first-child{padding-top:0}.clause:last-child{border-bottom:0;padding-bottom:0}
.clause>div{position:relative}
.clause-n{font:italic 500 22px/1.25 var(--display);color:var(--foil);white-space:nowrap}
.clause h3{font:500 clamp(22px,2.2vw,27px)/1.15 var(--display);margin:0 0 8px}
.clause p{margin:0;color:var(--muted);font-size:16px}
.clause code{display:inline-block;margin-top:12px;font:500 13px/1.4 var(--mono);color:var(--foil-hi);border:1px solid var(--rule-2);padding:7px 10px}
.verdict,.sample,.sample-head,.note-result{display:none}
.js .verdict{display:block;margin-top:14px !important;padding-left:14px;border-left:1px solid var(--foil);font:500 15px/1.45 var(--body);color:var(--text) !important}
.verdict b{font-weight:700;color:var(--foil-hi);font-variant-numeric:tabular-nums lining-nums}
.verdict .calc{font:500 14px/1.45 var(--mono)}
.stamp{display:none;position:absolute;right:0;bottom:-10px;border:4px double var(--foil-hi);color:var(--foil-hi);background:rgba(14,13,10,.82);font:500 15px/1 var(--mono);letter-spacing:.24em;text-transform:uppercase;padding:9px 10px 8px 14px;transform:rotate(-7deg);pointer-events:none}
.note.is-skipped .stamp{display:block;animation:stamp 320ms var(--expo) both}
@keyframes stamp{from{opacity:0;transform:rotate(-7deg) scale(1.7)}to{opacity:1;transform:rotate(-7deg) scale(1)}}
.note.is-skipped .clause:not([data-rule="1"]){opacity:.3}
.js .sample-head,.js .sample{display:block;border-left:1px solid var(--rule);padding-left:clamp(24px,3vw,40px)}
.js .sample{position:sticky;top:104px}
.sample-head h3{font:500 26px/1.15 var(--display);margin:0 0 6px}
.sample-note{margin:0;color:var(--muted);font-size:14.5px}
.switch{display:flex;gap:14px;align-items:center;cursor:pointer;margin:26px 0 6px;font-size:15.5px;line-height:1.35}
.switch input{position:absolute;opacity:0;width:1px;height:1px}
.switch-track{flex:none;position:relative;width:46px;height:24px;border:1px solid var(--foil-lo);transition:border-color var(--t2) var(--ease)}
.switch-track::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--muted);transition:transform var(--t2) var(--expo),background var(--t2) var(--ease)}
.switch input:checked+.switch-track{border-color:var(--foil)}
.switch input:checked+.switch-track::after{transform:translateX(22px);background:var(--foil-hi)}
.switch input:focus-visible+.switch-track{outline:2px solid var(--foil-hi);outline-offset:3px}
.dial label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:22px;font:600 14.5px/1.35 var(--body);color:var(--text)}
.dial output{font:500 15px/1 var(--mono);color:var(--foil-hi);font-variant-numeric:tabular-nums}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:32px;background:transparent;cursor:pointer;margin:0}
input[type=range]::-webkit-slider-runnable-track{height:1px;background:linear-gradient(90deg,var(--foil) var(--p,30%),var(--rule-2) var(--p,30%))}
input[type=range]::-moz-range-track{height:1px;background:var(--rule-2)}
input[type=range]::-moz-range-progress{height:1px;background:var(--foil)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:24px;margin-top:-12px;background:var(--black);border:1.5px solid var(--foil-hi);transition:transform var(--t1) var(--ease)}
input[type=range]::-moz-range-thumb{width:8px;height:22px;border-radius:0;background:var(--black);border:1.5px solid var(--foil-hi)}
input[type=range]:active::-webkit-slider-thumb{transform:scaleY(1.2)}
input[type=range]:focus-visible{outline-offset:2px}
.note-foot{display:flex;align-items:center;gap:clamp(20px,3vw,36px);margin-top:clamp(32px,4vw,44px);padding-top:clamp(24px,3vw,32px);border-top:1px solid var(--foil-lo);transition:opacity var(--t2) var(--ease)}
.js .note-result{display:block;margin:0}
.js .note-static{display:none}
.note-static{margin:0;color:var(--muted);max-width:52ch}
#note-result-text{display:block;font:500 clamp(26px,3vw,40px)/1.15 var(--display);color:var(--text)}
.res-skip,.note.is-skipped .res-go{display:none}.note.is-skipped .res-skip{display:inline}
#note-result-text b{font-weight:500;color:var(--foil-hi);font-variant-numeric:lining-nums tabular-nums}
/* latent seal: foil-shadow engraving at rest; a highlight crosses its lines as the note scrolls past */
.latent{position:relative;flex:none;width:clamp(104px,11vw,136px);aspect-ratio:1;view-timeline:--seal block}
.latent-svg{width:100%;height:100%}
.latent-ring{font:600 8px var(--body);letter-spacing:.1em;fill:var(--muted)}
.latent-mono{font:40px var(--script);fill:var(--foil)}
.glint{position:absolute;inset:0;overflow:hidden;pointer-events:none;-webkit-mask:url(/assets/seal-mask.svg) 0 0/100% 100% no-repeat;mask:url(/assets/seal-mask.svg) 0 0/100% 100% no-repeat}
.glint i{position:absolute;top:-20%;bottom:-20%;left:-60%;width:220%;background:linear-gradient(105deg,transparent 42%,rgba(246,222,141,.95) 50%,transparent 58%);transform:translateX(-60%)}
@media (max-width:980px){
  .note-body{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"head" "dials" "rules"}
  .js .sample-head{border-left:0;padding:0 0 4px}.sample-head h3{font-size:22px}.sample-note{font-size:13.5px}
  /* pinned while the rules scroll beneath: one compact strip, about a sixth of a phone screen */
  .js .sample{top:69px;z-index:2;background:var(--panel);border-left:0;border-bottom:1px solid var(--foil-lo);padding:10px 0 8px;margin-bottom:22px}
  .lbl-long{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.lbl-short{display:inline}
  .switch{margin:0;font-size:14.5px;white-space:nowrap}
  .dials{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
  .dial label{margin-top:8px;font-size:13.5px;white-space:nowrap}
}
@media (max-width:620px){
  .note{--band:12px;padding:44px 32px 42px}
  .note::before{inset:24px}
  .edge-t i,.edge-b i{background-size:48px var(--band)}.edge-l i,.edge-r i{background-size:var(--band) 48px}
  .corner{width:26px;height:26px;background-size:26px 26px}
  .corner-tl{left:-7px;top:-7px}.corner-tr{right:-7px;top:-7px}.corner-br{right:-7px;bottom:-7px}.corner-bl{left:-7px;bottom:-7px}
  .micro{left:28px;right:28px;top:14px}.micro-b{top:auto;bottom:14px}
  .clause{grid-template-columns:1fr;gap:2px}
  .stamp{position:relative;right:auto;bottom:auto;margin-top:14px;width:max-content}
  .clause code{font-size:12px;padding:6px 8px}
  .note-foot{flex-direction:column;align-items:flex-start}
}

/* perforated sheet: separated like stamps, never boxed */
.perf{list-style:none;margin:clamp(32px,4vw,52px) 0 0;padding:0 0 6px;display:grid;grid-template-columns:repeat(2,1fr);background:radial-gradient(circle at 3px 3px,rgba(138,107,34,.75) 1.5px,transparent 2px) 0 100%/9px 6px repeat-x}
.perf-3{grid-template-columns:repeat(6,1fr)}
.perf-3 li{grid-column:span 2}.perf-3 li:nth-child(n+4){grid-column:span 3}
.perf li{position:relative;padding:34px clamp(20px,3.4vw,44px) 38px 0}
.perf li::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:radial-gradient(circle at 3px 3px,rgba(138,107,34,.75) 1.5px,transparent 2px) 0 0/9px 6px repeat-x}
.perf-2 li:nth-child(2n),.perf-3 li:not(:nth-child(3n+1)){padding-left:clamp(20px,3.4vw,44px)}
.perf-2 li:nth-child(2n)::after,.perf-3 li:not(:nth-child(3n+1))::after{content:"";position:absolute;top:6px;bottom:0;left:-3px;width:6px;background:radial-gradient(circle at 3px 3px,rgba(138,107,34,.75) 1.5px,transparent 2px) 0 0/6px 9px repeat-y}
.perf h3{font:500 26px/1.15 var(--display);margin:0 0 10px}
.perf p{margin:0;color:var(--muted);max-width:44ch}
@media (max-width:900px){.perf-3{grid-template-columns:1fr}.perf-3 li,.perf-3 li:nth-child(n+4){grid-column:auto;padding:28px 0 30px}.perf-3 li::after{content:none !important}}
@media (max-width:640px){.perf{grid-template-columns:1fr}.perf li,.perf-2 li:nth-child(2n){padding:28px 0 30px}.perf li::after{content:none !important}}

/* ledger (suppliers) */
.ledger{list-style:none;margin:0;padding:0;border-top:1px solid var(--foil-lo)}
.ledger li{display:grid;grid-template-columns:1fr 1.4fr;gap:28px;padding:24px 0;border-bottom:1px solid var(--rule)}
.ledger h3{font:500 24px/1.2 var(--display);margin:0}
.ledger p{margin:0;color:var(--muted)}
@media (max-width:700px){.ledger li{grid-template-columns:1fr;gap:6px}}

/* paperwork: the real profile, stacked like a file */
.papers{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(40px,7vw,96px);align-items:center}
.papers .intro{max-width:50ch}
.papers-actions{display:grid;margin-top:28px;max-width:460px}
.doc-link{display:flex;gap:16px;align-items:center;text-decoration:none;color:var(--text);border-top:1px solid var(--rule-2);padding:18px 0}
.papers-actions .doc-link:last-child{border-bottom:1px solid var(--rule-2)}
.doc-link:hover{color:var(--text)}
.doc-link:hover strong{color:var(--foil-hi)}
.doc-link .i-arrow{width:22px;height:22px;color:var(--foil);flex:none;transition:transform var(--t2) var(--ease)}
.doc-link:hover .i-arrow{transform:translateX(4px)}
.doc-link strong{display:block;font:500 20px/1.2 var(--display);transition:color var(--t1) var(--ease)}
.doc-link small{display:block;color:var(--muted);font-size:13.5px;margin-top:2px}
.papers-doc{position:relative;justify-self:center;width:min(100%,440px);transform:rotate(-2deg);isolation:isolate}
.papers-doc::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--panel-2);border:1px solid var(--rule-2);transform:rotate(4.5deg) translate(10px,6px)}
.papers-doc img{width:100%;height:auto;border:1px solid var(--foil-lo);box-shadow:0 28px 48px -18px rgba(0,0,0,.9)}
@media (max-width:860px){.papers{grid-template-columns:1fr}.papers-doc{width:min(84%,380px)}}

/* CTA band */
.cta-band{background:var(--panel);border-top:1px solid var(--foil-lo);padding-block:clamp(72px,9vw,112px)}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,72px);align-items:end}
.cta-grid p{color:var(--muted);margin:0 0 26px;max-width:46ch}
@media (max-width:860px){.cta-grid{grid-template-columns:1fr}}

/* page heroes: tight, with a still quarter of the rosette */
.page-hero{position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--rule);padding-block:clamp(40px,5vw,72px)}
.rosette-still{top:50%;right:-240px;width:600px;opacity:.6}
.page-hero h1{font:500 clamp(44px,5.6vw,80px)/1 var(--display);letter-spacing:-.015em;margin:0;max-width:22ch}
.page-hero .lede{margin:22px 0 0}
.page-hero .btn-row{margin-top:30px}
@media (max-width:760px){.rosette-still{top:50%;right:-330px;width:520px;transform:translateY(-50%);opacity:.35}}
.utility{padding-block:56px 96px}

/* FAQ: every answer open, two columns */
.faq h2{margin-bottom:clamp(28px,4vw,44px)}
.qa{margin:0;columns:2 340px;column-gap:clamp(32px,6vw,80px)}
.qa div{break-inside:avoid;padding:22px 0 24px;border-top:1px solid var(--rule)}
.qa dt{font:500 22px/1.3 var(--display);margin:0 0 8px}
.qa dd{margin:0;color:var(--muted)}

/* profile sheet */
.sheet{background:var(--panel);border:1px solid var(--foil-lo);outline:1px solid var(--rule);outline-offset:-10px;padding:clamp(28px,4vw,52px)}
.sheet-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--foil-lo);padding-bottom:16px}
.sheet-meta{font:500 14px/1.3 var(--body);color:var(--muted)}
.facts{margin:0;display:grid;grid-template-columns:1fr 1fr}
.facts div{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule)}
.facts div:nth-child(odd){padding-right:24px}
.facts dt{font:600 11.5px/1.5 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--foil)}
.facts dd{margin:0}
.sheet h2{font:500 26px/1.2 var(--display);margin:30px 0 12px}
.sheet-cols{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.mini-rules,.mini-list{margin:0;padding-left:20px;color:var(--muted);font-size:15.5px}
.mini-rules li,.mini-list li{margin:8px 0}
.mini-rules strong{color:var(--text);font-weight:600}
.dir3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dir3 b{font:600 15px/1.2 var(--body);color:var(--foil)}
.dir3 p{margin:8px 0 0;color:var(--muted);font-size:15px}
.sheet-foot{margin:30px 0 0;padding:14px max(0px,calc(100% - 75ch)) 0 0;border-top:1px solid var(--rule);font-size:13px;color:var(--muted)}
@media (max-width:860px){.facts,.sheet-cols,.dir3{grid-template-columns:1fr}.facts div:nth-child(odd){padding-right:0}}
@media (max-width:520px){.facts div{grid-template-columns:1fr;gap:2px}}

/* contact / Fit Check */
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,80px);align-items:start}
.contact-aside h2{font-size:clamp(32px,3.4vw,46px)}
.contact-aside h3{font:500 24px/1.2 var(--display);color:var(--text);margin:34px 0 6px}
.contact-aside p{color:var(--muted)}
.form-panel{background:var(--panel);border:1px solid var(--rule);padding:clamp(24px,4vw,44px)}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}.contact-aside{order:2}}
.fit{display:grid;gap:8px}
.fit-progress{display:none;list-style:none;margin:0 0 20px;padding:0;grid-template-columns:repeat(3,1fr);gap:8px;counter-reset:s;scroll-margin-top:96px}
.js .fit-progress{display:grid}
.fit-progress li{counter-increment:s;font:600 11.5px/1.3 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:12px;border-top:2px solid var(--rule-2);transition:border-color var(--t2) var(--ease),color var(--t2) var(--ease)}
.fit-progress li::before{content:counter(s,lower-roman) ". ";font:italic 500 15px/1 var(--display);color:var(--muted);text-transform:none;letter-spacing:0}
.fit-progress li.is-done,.fit-progress li.is-current{border-color:var(--foil);color:var(--text)}
.fit-progress li.is-current::before,.fit-progress li.is-done::before{color:var(--foil)}
.fit-step{border:0;margin:0 0 20px;padding:0;min-width:0;scroll-margin-top:96px}
.js .fit:not(.is-ready) .fit-step:not([data-step="1"]),.js .fit:not(.is-ready) [data-submit]{display:none}
.js .fit-step.is-entering{animation:stepIn var(--t2) var(--expo)}
@keyframes stepIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.step-title{font:500 26px/1.2 var(--display);padding:0;margin:0 0 8px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
@media (max-width:620px){.row2{grid-template-columns:1fr}}
.field{display:grid;gap:4px;margin-top:18px}
.field label,.field-set legend{font:600 14.5px/1.4 var(--body);letter-spacing:.01em;color:var(--text)}
.opt{font-weight:500;color:var(--muted)}
.field input,.field select,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--foil-lo);padding:10px 0;border-radius:0;color:var(--text);transition:border-color var(--t1) var(--ease)}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--foil) 50%),linear-gradient(135deg,var(--foil) 50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}
.field select option{background:var(--panel);color:var(--text)}
/* ruled like a ledger page: each line of the message sits on its own rule */
.field textarea{resize:vertical;min-height:134px;padding:0;margin-top:6px;line-height:33px;background:repeating-linear-gradient(transparent 0 32px,var(--rule-2) 32px 33px);background-attachment:local}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--foil-hi)}
.field input::placeholder{color:#6f6752}
.field [aria-invalid="true"]{border-color:var(--err)}
.help{font-size:13.5px;color:var(--muted);margin:6px 0 0}
.if-other{display:none;margin:0 0 4px;color:var(--text)}
.fit.is-other .if-other{display:block}
.err-msg{font-size:13.5px;color:var(--err);margin:4px 0 0}
.field-set{border:0;padding:0;margin:22px 0 0;min-width:0}
.field-set legend{padding:0;margin-bottom:10px}
.choices{display:flex;flex-wrap:wrap;gap:8px}
.choice{position:relative;cursor:pointer}
.choice input{position:absolute;opacity:0;inset:0;cursor:pointer}
.choice span{display:inline-block;border:1px solid var(--foil-lo);padding:11px 14px;font-size:15px;transition:border-color var(--t1) var(--ease),background var(--t1) var(--ease),color var(--t1) var(--ease)}
.choice:hover span{border-color:var(--foil)}
.choice input:checked+span{border-color:var(--foil-hi);background:rgba(217,178,76,.12);color:var(--foil-hi)}
.choice input:focus-visible+span{outline:2px solid var(--foil-hi);outline-offset:2px}
.fit-set-invalid .choice span{border-color:var(--err)}
.fit-nav{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:8px}
.fit-nav [data-next]{display:none}
.js .fit-nav [data-next]{display:inline-flex}
.fit-nav [data-next],.fit-nav [data-submit]{margin-left:auto}
@media (max-width:620px){.fit-nav{flex-direction:column-reverse;align-items:stretch}.fit-nav .btn{width:100%;margin-left:0 !important}}
.fit-assure{margin:14px 0 0;font-size:14.5px;color:var(--muted)}
.fit-status{margin:10px 0 0;font-size:15px;min-height:1.5em}
.fit-status:focus{outline:none}
.fit-status[data-state="success"]{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);min-height:0}
.fit-status[data-state="error"]{color:var(--err)}
.fit.is-sent .fit-step,.fit.is-sent .fit-nav,.fit.is-sent .fit-progress,.fit.is-sent .fit-assure{display:none}
.fit-done h3{font:500 32px/1.1 var(--display);margin:0 0 10px}
.fit-done p{color:var(--muted);margin:0}
.fit-done p b{color:var(--text);font-weight:600;overflow-wrap:anywhere}
.fit-done .seal-mark{width:56px;height:56px;margin-bottom:18px}
.fit-done .seal-mark path{stroke-dasharray:30;stroke-dashoffset:30;animation:tick var(--t3) var(--ease) .15s forwards}
@keyframes tick{to{stroke-dashoffset:0}}

/* legal */
.legal h2{font:500 28px/1.2 var(--display);margin:40px 0 10px}
.legal p{color:var(--muted);max-width:66ch}

/* footer */
.site-footer{border-top:1px solid var(--rule);padding-block:44px 52px}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:20px 48px;align-items:start}
.footer-grid p{color:var(--muted);margin:10px 0 0;font-size:15px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:0 26px}
.site-footer nav a{display:inline-block;padding-block:12px;color:var(--muted);text-decoration:none;font-size:14.5px}
.site-footer nav a:hover{color:var(--text)}
.fine{grid-column:1/-1;border-top:1px solid var(--rule);padding:20px max(0px,calc(100% - 75ch)) 0 0;font-size:13px !important}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr}.site-footer nav{gap:0 22px}}

/* the one authored moment: the note's frame engraves itself clockwise, then the rules print in.
   Content is visible by default; site.js arms this only for a note that starts below the fold. */
@media (prefers-reduced-motion:no-preference){
  .note.is-armed .edge i{transition:transform 900ms var(--expo)}
  .note.is-armed .corner{transition:opacity 500ms var(--expo),transform 700ms var(--expo)}
  .note.is-armed .micro{transition:opacity 600ms var(--ease)}
  .note.is-armed .clause,.note.is-armed .sample-head,.note.is-armed .sample,.note.is-armed .note-foot{transition:opacity 650ms var(--expo),filter 650ms var(--expo)}
  .note.is-armed:not(.is-in) .edge-t i{transform:translateX(-100%)}
  .note.is-armed:not(.is-in) .edge-r i{transform:translateY(-100%)}
  .note.is-armed:not(.is-in) .edge-b i{transform:translateX(100%)}
  .note.is-armed:not(.is-in) .edge-l i{transform:translateY(100%)}
  .note.is-armed:not(.is-in) .corner{opacity:0;transform:scale(.4)}
  .note.is-armed:not(.is-in) .micro{opacity:0}
  .note.is-armed:not(.is-in) :is(.clause,.sample-head,.sample,.note-foot){opacity:0;filter:blur(6px)}
  .note.is-in .edge-r i{transition-delay:110ms}.note.is-in .edge-b i{transition-delay:220ms}.note.is-in .edge-l i{transition-delay:330ms}
  .note.is-in .corner{transition-delay:520ms}.note.is-in .micro{transition-delay:560ms}
  .note.is-in .clause:nth-child(1){transition-delay:600ms}.note.is-in .clause:nth-child(2){transition-delay:710ms}.note.is-in .clause:nth-child(3){transition-delay:820ms}.note.is-in .clause:nth-child(4){transition-delay:930ms}
  .note.is-in .sample-head,.note.is-in .sample{transition-delay:1040ms}.note.is-in .note-foot{transition-delay:1120ms}
  @supports (animation-timeline:view()){
    .glint i{animation:glint linear both;animation-timeline:--seal;animation-range:cover 20% cover 80%}
  }
}
@keyframes glint{from{transform:translateX(-60%)}to{transform:translateX(60%)}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .foil-text{animation:none}
  .glint{display:none}
}

/* print: the profile page prints as a clean one-page sheet */
@media print{
  @page{size:letter;margin:.5in}
  body{background:#fff;color:#111;font-size:11pt}
  .site-header,.site-footer,.skip-link,.profile-hero,.cta-band{display:none !important}
  .section{padding:0}
  .sheet{background:#fff;border:1px solid #8A6B22;outline:0;padding:24px}
  .wordmark{color:#8A6B22}
  .facts dt,.dir3 b{color:#8A6B22}
  .facts dd,.mini-rules strong{color:#111}
  .mini-rules,.mini-list,.dir3 p,.sheet-foot,.sheet-meta{color:#333}
  .facts div,.sheet-foot{border-color:#ddd}
  .sheet h2{margin:16px 0 6px;font-size:15pt}
  *{animation:none !important}
  body{font-size:10pt;line-height:1.45}
  .facts{grid-template-columns:1fr 1fr !important}
  .facts div{grid-template-columns:120px 1fr !important;padding:8px 0}
  .facts div:nth-child(odd){padding-right:18px !important}
  .sheet-cols{grid-template-columns:1fr 1fr !important;gap:24px}
  .dir3{grid-template-columns:repeat(3,1fr) !important;gap:16px}
  .mini-rules,.mini-list,.dir3 p{font-size:9.5pt}
  .sheet-head .wordmark{font-size:26pt}
}
