/* Founding CSM job description. Confident-warm. [data-theme] forces mode. */
:root{
  color-scheme:light dark;
  --bg:light-dark(#FFFFFF,#0A080D);
  --card:light-dark(#FFFFFF,#141119);
  --ink:light-dark(#17131F,#EBE7F0);
  --muted:light-dark(#655F73,#9A93A6);
  --line:light-dark(#EAE6F2,#241F2C);
  --accent:light-dark(#6D28D9,#A78BFA);
  --tint:light-dark(#F3EFFC,rgba(167,139,250,.12));
  --step:light-dark(#DDD6FE,#3B3163);
  --sans:system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,monospace;
}
:root[data-theme="light"]{color-scheme:only light}
:root[data-theme="dark"]{color-scheme:only dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15.5px;line-height:1.65;-webkit-font-smoothing:antialiased;text-wrap:pretty}
.wrap{max-width:660px;margin:0 auto;padding:52px 26px 76px}
.kicker{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}
h1{font-size:clamp(26px,3.6vw,32px);font-weight:670;letter-spacing:-.028em;line-height:1.15;margin:0 0 16px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.chip{display:inline-block;font-size:12px;font-weight:650;letter-spacing:.02em;padding:5px 11px;border-radius:999px;background:var(--tint);color:var(--accent)}
.comp{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;background:var(--tint);border:1px solid var(--accent);border-radius:12px;padding:14px 18px;margin:0 0 8px}
.comp b{font-size:20px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.comp span{font-size:13.5px;color:var(--muted)}
h2{font-size:19px;font-weight:660;letter-spacing:-.018em;margin:40px 0 14px}
p{margin:0 0 16px}
ul{margin:0;padding:0;list-style:none;display:grid;gap:14px}
li{position:relative;padding-left:20px}
li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--accent)}
li b{font-weight:650}
li b+br{display:none}
.notneed{margin-top:20px;padding:18px 20px;border:1px dashed var(--line);border-radius:12px}
.notneed h3{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.notneed ul{gap:10px}
.notneed li::before{background:transparent;border:1px solid var(--muted);top:8px}
.notneed li{font-size:14.5px;color:var(--muted)}
.mile{display:grid;gap:14px}
.mc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.mc b{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.mc p{margin:0;font-size:16px;line-height:1.5}
.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:8px}
.stepper::before{content:"";position:absolute;top:15px;left:12%;right:12%;height:2px;background:var(--step)}
.stp{text-align:center;position:relative;padding:0 8px}
.stp .dot{width:32px;height:32px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);color:var(--accent);display:grid;place-content:center;margin:0 auto 12px;font-size:13px;font-weight:700;position:relative;z-index:1}
.stp b{display:block;font-size:14.5px;font-weight:650;letter-spacing:-.01em;margin-bottom:4px;line-height:1.3}
.stp span{font-size:12.5px;color:var(--muted)}
.cta{margin-top:44px;background:var(--tint);border-radius:14px;padding:26px 28px}
.cta h2{margin:0 0 10px;font-size:19px}
.cta p{margin:0 0 12px;font-size:15px}
.cta .mail{font-family:var(--mono);font-size:15px;font-weight:650;color:var(--accent)}
.cta small{display:block;margin-top:12px;font-size:13px;color:var(--muted)}
@media (max-width:640px){
  .wrap{padding:32px 18px 52px}
  .stepper{grid-template-columns:1fr;gap:20px}
  .stepper::before{display:none}
  .stp{text-align:left;display:grid;grid-template-columns:32px minmax(0,1fr);gap:14px;padding:0}
  .stp .dot{margin:0}
}
@media print{
  @page{margin:14mm}
  :root{color-scheme:only light}
  body{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:10pt}
  .wrap{padding:0;max-width:none}
  .mc,.cta,.stepper{break-inside:avoid}
}
