/* CORPSBOUTIQUE / shared styles for inner pages (founder, privacy, terms) */
@font-face{font-family:"JetBrains Mono";src:url(/fonts/jbm-extralight.woff2) format("woff2");font-weight:200;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/jbm-light.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/jbm-regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/jbm-medium.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --core:#F26B0F;--flame:#E8430A;--blood:#B81204;--ember:#3A0502;
  --black:#000;--bone:#E7E6E2;--white:#fff;--ink:#000;
  --mute-d:rgba(255,255,255,.55);--hair-d:rgba(255,255,255,.14);
  --mute-l:rgba(0,0,0,.58);--hair-l:rgba(0,0,0,.14);
  --mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --gutter:clamp(20px,4vw,56px);--maxw:1440px;--micro:11px;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(80px + env(safe-area-inset-top,0px))}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--mono);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}
.micro{font-size:var(--micro);line-height:1.4;letter-spacing:.02em;color:var(--mute-d)}
.light .micro{color:var(--mute-l)}
.comment::before{content:"/* "}.comment::after{content:" */"}
h1,h2,h3{font-weight:300;margin:0;letter-spacing:-.01em}
p{margin:0}
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;font:500 13px/1 var(--mono);padding:13px 18px;border:1px solid currentColor;background:transparent;color:inherit;text-decoration:none;cursor:pointer}
.btn.solid{background:var(--white);color:var(--black);border-color:var(--white)}
.btn.solid:hover{background:transparent;color:var(--white)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--hair-d);padding-top:env(safe-area-inset-top,0px);margin-top:calc(-1 * env(safe-area-inset-top,0px))}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}
.wordmark{font-size:14px;font-weight:500;letter-spacing:.08em;text-decoration:none;white-space:nowrap}
.wordmark span{opacity:.6}
.nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}
.nav ul a{font-size:13px;text-decoration:none;opacity:.75}
.nav ul a:hover,.nav ul a[aria-current]{opacity:1}

/* orange page header */
.world{position:relative;overflow:hidden;color:var(--white);
  background:radial-gradient(ellipse 62% 70% at 68% 40%,#F57A12 0%,#F26B0F 18%,#EE560A 36%,#E8430A 48%,#D0300A 60%,#B81204 70%,#6A0B03 84%,#3A0502 93%,#120100 100%)}
.page-head{padding:clamp(72px,10vw,140px) 0 clamp(56px,8vw,96px)}
.page-head h1{font-size:clamp(44px,8vw,120px);line-height:.92;letter-spacing:-.035em;margin-top:18px}
.page-head .sub{margin-top:24px;font-size:clamp(15px,1.3vw,18px);max-width:56ch;opacity:.92}
.reg{position:absolute;width:14px;height:14px;pointer-events:none;opacity:.7}
.reg::before,.reg::after{content:"";position:absolute;background:currentColor}
.reg::before{left:6px;top:0;width:1px;height:14px}.reg::after{top:6px;left:0;height:1px;width:14px}
.reg.tl{top:16px;left:16px}.reg.tr{top:16px;right:16px}.reg.bl{bottom:16px;left:16px}.reg.br{bottom:16px;right:16px}

/* long-form documents */
.light{background:var(--bone);color:var(--ink)}
.doc{padding:clamp(56px,8vw,112px) 0}
.doc .grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.doc aside{grid-column:1 / span 3}
.doc aside nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:8px;font-size:12px}
.doc aside a{text-decoration:none;color:var(--mute-l)}
.doc aside a:hover{color:var(--ink)}
.doc article{grid-column:4 / span 8;max-width:72ch}
.doc h2{font-size:clamp(20px,2vw,26px);font-weight:400;margin:56px 0 16px;padding-top:20px;border-top:1px solid var(--hair-l)}
.doc h2:first-child{margin-top:0}
.doc h3{font-size:15px;font-weight:500;margin:28px 0 8px}
.doc p,.doc li{color:rgba(0,0,0,.78)}
.doc p + p{margin-top:14px}
.doc ul{margin:12px 0 0;padding-left:20px}
.doc li + li{margin-top:8px}
.doc table{width:100%;border-collapse:collapse;margin-top:16px;font-size:13px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid var(--hair-l)}
.doc th{font-weight:500;font-size:11px;color:var(--mute-l)}
.table-wrap{overflow-x:auto}
.note{margin-top:24px;padding:16px 18px;border:1px solid var(--hair-l);font-size:13px}

/* footer */
footer{padding:56px 0 28px;border-top:1px solid var(--hair-d);background:var(--black)}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end}
.foot-links{display:flex;gap:10px 24px;flex-wrap:wrap;font-size:13px}
.foot-links a{text-decoration:none;opacity:.75}.foot-links a:hover{opacity:1}
.foot .micro{margin-top:28px;display:block}

@media (max-width:900px){
  .nav ul{display:none}
  .doc aside{display:none}
  .doc article{grid-column:1 / -1}
}
@media (max-width:420px){
  .wordmark{font-size:12px}
  .nav .btn{padding:11px 12px}
}
@media (max-width:380px){
  .nav .wrap{gap:12px}
  .wordmark{font-size:11px;letter-spacing:.06em}
  .nav .btn{font-size:11px;padding:10px 10px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* founder page */
.founder{padding:clamp(56px,8vw,112px) 0}
.founder .grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.portrait{grid-column:1 / span 4;position:sticky;top:96px}
.portrait .frame{aspect-ratio:4/5;background:radial-gradient(ellipse 80% 70% at 60% 35%,#F26B0F,#B81204 60%,#3A0502);position:relative;overflow:hidden;display:grid;place-items:center}
.portrait .frame img{width:100%;height:100%;object-fit:cover}
.portrait .frame .mono{font-size:clamp(48px,6vw,88px);font-weight:200;letter-spacing:-.04em;color:#fff}
.portrait .frame.has-photo .mono{display:none}
.portrait dl{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;margin:20px 0 0;font-size:13px}
.portrait dt{color:var(--mute-l);font-size:11px;padding-top:2px}
.portrait dd{margin:0}
.bio{grid-column:6 / span 7;max-width:64ch}
.bio .lede{font-size:clamp(17px,1.5vw,21px);line-height:1.55}
.bio h2{font-size:clamp(22px,2.2vw,30px);font-weight:300;margin:56px 0 18px;padding-top:20px;border-top:1px solid var(--hair-l)}
.bio p + p{margin-top:16px}
.bio p{color:rgba(0,0,0,.8)}
.bio .sign{margin-top:28px;font-weight:500}
.creds{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair-l)}
.creds li{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--hair-l);font-size:14px}
.creds li span:first-child{color:var(--mute-l);font-size:11px;padding-top:3px}
.cta-row{margin-top:40px;display:flex;gap:12px;flex-wrap:wrap}
.light .btn.solid{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.light .btn.solid:hover{background:transparent;color:var(--ink)}
@media (max-width:900px){
  .portrait{grid-column:1 / -1;position:static;max-width:420px}
  .bio{grid-column:1 / -1}
  .creds li{grid-template-columns:1fr;gap:4px}
}

/* ---------- floating nav for phones and small tablets ---------- */
.mnav{display:none}
@media (max-width:900px), (hover:none) and (pointer:coarse){
  .nav ul{display:none}
  .mnav{position:fixed;z-index:60;left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);
    display:flex;gap:2px;padding:4px;max-width:calc(100vw - 24px);
    background:rgba(0,0,0,.84);border:1px solid rgba(255,255,255,.18);
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    transition:transform .25s ease,opacity .25s ease}
  .mnav a{color:#fff;text-decoration:none;font:500 12px/1 var(--mono);padding:12px 10px;opacity:.72;white-space:nowrap;-webkit-tap-highlight-color:transparent}
  .mnav a.on,.mnav a[aria-current]{opacity:1;background:#fff;color:#000}
  .mnav.hide{transform:translate(-50%,calc(100% + 28px));opacity:0;pointer-events:none}
  footer{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px)) !important}
}
@media (max-width:400px){ .mnav{max-width:calc(100vw - 16px)} .mnav a{padding:12px 7px;font-size:11px;letter-spacing:-.01em} }
@media (max-width:350px){ .mnav a{padding:12px 6px;font-size:10.5px} }
