@font-face{font-family:'Archivo';src:url('/fonts/archivo.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Bricolage Grotesque';src:url('/fonts/bricolage-grotesque.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('/fonts/figtree.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('/fonts/instrument-serif.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('/fonts/jetbrains-mono.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
.b-money{--ink:#0E3B2E;--paper:#ECEFE8;--accent:#C49A3A;--line:#2C5A4A;--soft:#9FB3A8;--display:'Instrument Serif';--display-weight:400}
.b-careers{--ink:#14213D;--paper:#F2F4F8;--accent:#E85D2A;--line:#2A3A5E;--soft:#93A0B8;--display:'Bricolage Grotesque';--display-weight:800}
.b-wellness{--ink:#0F5257;--paper:#EEF4F2;--accent:#FF8A5B;--line:#2B6E70;--soft:#9CC2BE;--display:'Figtree';--display-weight:800}

:root{
  --bg:#F3F3EF;--text:#15181D;--muted:#5B6270;--rule:#D9DAD3;--link:#1E5E4A;
  --serif:'Instrument Serif',Georgia,serif;--sans:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Consolas,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root{--bg:#0F1114;--text:#E8E9E4;--muted:#9AA0A8;--rule:#262A30;--link:#8FCBB4;color-scheme:dark}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible{outline:2px solid var(--accent,var(--link));outline-offset:3px;border-radius:2px}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:720px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
.eyebrow{font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0}
h1,h2{text-wrap:balance}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;background:#fff;color:#000;padding:8px 12px;z-index:9}

/* Hub */
.hub-head{padding-block:72px 40px}
.hub-head .eyebrow{color:var(--muted)}
.hub-head h1{font:400 clamp(56px,11vw,96px)/.95 var(--serif);letter-spacing:-.02em;margin:16px 0 20px}
.hub-head .lede{font-size:19px;color:var(--muted);max-width:56ch;margin:0}
.band{display:block;text-decoration:none;background-color:var(--ink);color:var(--paper);position:relative;overflow:hidden;
  background-image:linear-gradient(color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px),
  linear-gradient(90deg,color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px);background-size:48px 48px}
.band-inner{display:grid;gap:10px;padding-block:44px 48px;position:relative}
.band .eyebrow{color:var(--accent)}
.band-title{font:var(--display-weight) clamp(34px,6.5vw,52px)/1.02 var(--display),var(--sans);letter-spacing:-.01em;max-width:14ch}
.band-tag{font-size:18px}
.band-pillars{color:var(--soft);font-size:15px}
.band-go{font:500 13px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-top:10px}
.band-glyph{position:absolute;right:max(20px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);
  font:var(--display-weight) clamp(90px,18vw,170px)/1 var(--display),var(--sans);color:transparent;
  -webkit-text-stroke:1.5px var(--accent);pointer-events:none;opacity:.9}
.band:hover .band-go,.band:focus-visible .band-go{text-decoration:underline;text-underline-offset:4px}
@media (max-width:560px){.band-glyph{opacity:.35}}

/* Brand pages */
body.brand{background-color:var(--ink);color:var(--paper);
  background-image:linear-gradient(color-mix(in srgb,var(--line) 45%,transparent) 1px,transparent 1px),
  linear-gradient(90deg,color-mix(in srgb,var(--line) 45%,transparent) 1px,transparent 1px);background-size:56px 56px;color-scheme:dark}
.ruler{height:16px;background:repeating-linear-gradient(90deg,var(--accent) 0 2px,transparent 2px 224px),
  repeating-linear-gradient(90deg,color-mix(in srgb,var(--soft) 70%,transparent) 0 1px,transparent 1px 28px);
  background-size:100% 16px,100% 8px;background-repeat:no-repeat}
.crumb{padding-top:24px;font:500 13px/1 var(--mono);letter-spacing:.08em}
.crumb a{color:var(--soft);text-decoration:none}.crumb a:hover{color:var(--paper)}
.hero{padding-block:36px 28px;display:grid;gap:16px}
.avatar{width:88px;height:88px;border-radius:50%;border:1px solid var(--line)}
.hero .eyebrow{color:var(--accent)}
.hero h1{font:var(--display-weight) clamp(42px,9vw,72px)/1 var(--display),var(--sans);letter-spacing:-.015em;margin:0;max-width:13ch}
.hero .lede{font-size:19px;color:color-mix(in srgb,var(--paper) 85%,var(--soft));max-width:52ch;margin:0}
.brand section{padding-block:28px;border-top:1px solid var(--line)}
.brand h2{font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 18px}
.links{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.links a{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:12px;padding:16px 18px;text-decoration:none;
  background:color-mix(in srgb,var(--ink) 80%,#000);border:1px solid var(--line);border-radius:10px;min-height:56px}
.links a:hover{border-color:var(--accent)}
.plat{font:600 16px/1.2 var(--sans)}
.handle{font:400 14px/1.2 var(--mono);color:var(--soft);overflow-wrap:anywhere}
.arrow{color:var(--accent);font-size:18px}
@media (max-width:460px){.links a{grid-template-columns:1fr auto}.handle{grid-column:1;grid-row:2}.arrow{grid-row:1/3;grid-column:2}}
.soon,.topics{margin:0;padding-left:1.2em;display:grid;gap:8px}
.soon li::marker,.topics li::marker{color:var(--accent)}
.note-muted{color:var(--soft);margin:0 0 14px}
.notice{margin:8px 0 0;padding:16px 18px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--ink) 75%,#000);
  font-size:15px;color:color-mix(in srgb,var(--paper) 85%,var(--soft))}

/* Shop */
.picks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pick{padding:18px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--ink) 80%,#000);display:grid;gap:6px}
.pick p{margin:0}
.pick-name{font:600 18px/1.3 var(--sans)}
.pick-note{color:color-mix(in srgb,var(--paper) 85%,var(--soft))}
.pick-meta{font:400 12px/1.4 var(--mono);color:var(--soft)}
.pick-go{color:var(--accent);font-weight:600;text-underline-offset:3px;margin-top:4px}

/* Legal pages */
.doc{padding-block:56px 40px}
.doc .eyebrow{color:var(--muted)}
.doc h1{font:400 clamp(40px,7vw,60px)/1 var(--serif);margin:14px 0 8px}
.doc .updated{color:var(--muted);margin:0 0 32px;font-size:15px}
.doc h2{font:600 20px/1.3 var(--sans);margin:36px 0 10px}
.doc p,.doc li{max-width:66ch}
.doc a{color:var(--link)}

/* Footer */
.foot{border-top:1px solid var(--rule);margin-top:24px;padding-block:28px 40px;font-size:14px;color:var(--muted)}
.brand .foot{border-color:var(--line);color:var(--soft)}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:10px}
.foot a{text-decoration:underline;text-underline-offset:3px}
.foot p{margin:4px 0}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
