:root { --ink:#13271f; --muted:#617068; --paper:#fbfaf5; --line:#d8ded6; --lime:#d6f56f; --green:#176b4a; --coral:#ff795a; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif; }
.shell { width:min(1120px, calc(100% - 48px)); margin:0 auto; }
.topbar { height:88px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:10px; font-weight:800; color:var(--ink); text-decoration:none; letter-spacing:-.4px; }.brand span { display:grid; place-items:center; width:32px; height:32px; background:var(--ink); color:var(--lime); border-radius:8px; font:500 12px ui-monospace,SFMono-Regular,Menlo,monospace; }
.text-link { color:var(--ink); font-size:14px; font-weight:700; text-decoration:none; }.text-link span { margin-left:6px; }
.hero { padding:86px 0 92px; border-bottom:1px solid var(--line); }.eyebrow,.kicker { color:var(--green); font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }.pulse { width:8px; height:8px; border-radius:99px; background:var(--coral); display:inline-block; margin-right:8px; }
h1 { max-width:900px; margin:24px 0; font-size:clamp(46px,7.2vw,88px); line-height:.98; letter-spacing:-.075em; font-weight:800; } h1 em { color:var(--green); font-style:normal; }
.hero-copy { max-width:620px; margin:0; color:var(--muted); font-size:18px; line-height:1.7; }.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:36px; }.button { border:0; border-radius:8px; display:inline-flex; gap:18px; align-items:center; justify-content:center; padding:15px 20px; font:700 14px Manrope,sans-serif; cursor:pointer; text-decoration:none; }.button-primary { color:var(--ink); background:var(--lime); box-shadow:inset 0 0 0 1px rgba(19,39,31,.15); }.button-primary:hover { background:#c8ee53; }.button:disabled { opacity:.55; cursor:wait; }.microcopy { color:var(--muted); font-size:12px; }
.signal-grid { margin-top:86px; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:12px; overflow:hidden; }.signal-grid article { display:flex; gap:14px; align-items:center; padding:21px; border-right:1px solid var(--line); }.signal-grid article:last-child { border:0; }.signal-grid strong { color:var(--coral); font:500 13px ui-monospace,SFMono-Regular,Menlo,monospace; }.signal-grid span { font-size:13px; font-weight:700; line-height:1.35; }
.problem-section { padding:104px 0; display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }.section-intro h2,.form-heading h2 { margin:14px 0 0; font-size:clamp(30px,4vw,48px); line-height:1.05; letter-spacing:-.06em; }.problem-list { border-top:1px solid var(--line); }.problem-list article { display:flex; gap:20px; padding:24px 0; border-bottom:1px solid var(--line); }.index { color:var(--green); font:500 13px ui-monospace,SFMono-Regular,Menlo,monospace; padding-top:4px; }.problem-list h3 { font-size:17px; margin:0 0 7px; letter-spacing:-.03em; }.problem-list p { color:var(--muted); margin:0; line-height:1.55; font-size:14px; }
.diagnostic-section { margin-bottom:86px; padding:64px; background:var(--ink); color:white; border-radius:16px; }.form-heading { max-width:670px; }.form-heading .kicker { color:var(--lime); }.form-heading p { color:#b7c5bd; font-size:15px; line-height:1.6; }.field-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin:38px 0 22px; } label { font-size:12px; font-weight:700; color:#c8d5ce; } input,select { display:block; appearance:none; outline:none; width:100%; margin-top:8px; padding:14px; background:#f9fbf8; color:var(--ink); border:1px solid transparent; border-radius:7px; font:500 14px Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif; } input:focus,select:focus { border-color:var(--lime); }.consent { display:flex; gap:10px; max-width:700px; align-items:flex-start; color:#c8d5ce; line-height:1.45; font-size:12px; margin:0 0 23px; }.consent input { accent-color:var(--lime); width:16px; height:16px; margin:0; flex:none; }.form-message { min-height:22px; font-size:13px; margin:15px 0 0; color:#c8d5ce; }.form-message.success { color:var(--lime); }.form-message.error { color:#ff9c87; }
footer { display:flex; justify-content:space-between; padding:0 0 42px; color:var(--muted); font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace; }
@media (max-width:700px) { .shell { width:min(100% - 32px,1120px); }.topbar { height:68px; }.hero { padding:52px 0 60px; }.signal-grid,.problem-section { grid-template-columns:1fr; }.signal-grid article { border-right:0; border-bottom:1px solid var(--line); }.signal-grid article:last-child { border-bottom:0; }.problem-section { gap:40px; padding:70px 0; }.diagnostic-section { width:100%; border-radius:0; padding:42px 16px; margin-bottom:52px; }.field-grid { grid-template-columns:1fr; }.hero-copy { font-size:16px; } footer { padding-bottom:28px; } }
