:root { --cream:#f3eadc; --paper:#fffdf8; --ink:#24221f; --sage:#75816b; --blue:#7594a7; --line:rgba(36,34,31,.18); --font-sans:"DM Sans",Arial,sans-serif; --font-serif:"Instrument Serif",Georgia,serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:var(--font-sans), sans-serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.nav { height:82px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.wordmark { font-size:14px; font-weight:800; letter-spacing:.08em; }
.wordmark span { color:var(--sage); }
.nav-link { font-size:13px; border-bottom:1px solid; padding-bottom:3px; }
.hero { min-height:700px; display:grid; grid-template-columns:1.08fr .92fr; gap:76px; align-items:center; padding-block:64px 72px; }
.eyebrow { margin:0 0 18px; font-size:11px; font-weight:800; letter-spacing:.15em; color:#5c6653; }
h1,h2,p { margin-top:0; }
h1 { max-width:690px; margin-bottom:24px; font-size:clamp(52px,7vw,94px); line-height:.89; letter-spacing:-.055em; font-weight:600; }
h1 em { font-family:var(--font-serif), serif; font-weight:400; color:#678196; }
.lede { max-width:610px; font-size:19px; line-height:1.55; color:#4b4944; }
.scorecard { display:grid; grid-template-columns:auto 1fr auto; align-items:end; gap:18px; margin:38px 0 34px; }
.scorecard div:last-child { text-align:right; }
.scorecard span { display:block; margin-bottom:7px; font-size:9px; letter-spacing:.13em; font-weight:800; color:#6a6964; }
.scorecard strong { font-size:30px; letter-spacing:-.04em; }
.score-line { padding-bottom:8px; }
.score-line i { display:block; height:1px; background:var(--ink); position:relative; }
.score-line i:after { content:""; position:absolute; right:0; top:-3px; width:7px; height:7px; border-radius:50%; background:var(--blue); }
.form-kicker { font-size:14px; font-weight:700; margin-bottom:12px; }
.form-button { display:inline-flex; min-height:54px; align-items:center; justify-content:space-between; gap:34px; padding:0 22px; border:1px solid var(--ink); background:var(--ink); color:white; font-size:13px; font-weight:750; transition:background .18s ease,transform .18s ease; }
.form-button:hover { background:#4f5d48; transform:translateY(-1px); }
.form-button.dark { background:#182126; border-color:#182126; }
.form-button.dark:hover { background:#334850; }
.signup { display:grid; grid-template-columns:1fr auto; max-width:610px; }
.signup input { min-width:0; height:54px; border:1px solid var(--ink); border-right:0; background:var(--paper); padding:0 18px; font:inherit; font-size:15px; outline:none; }
.signup input:focus { box-shadow:inset 0 0 0 2px var(--blue); }
.signup button { height:54px; border:1px solid var(--ink); background:var(--ink); color:white; padding:0 22px; font:inherit; font-size:13px; font-weight:750; cursor:pointer; }
.signup button:hover { background:#4f5d48; }
.signup button:disabled { opacity:.6; cursor:wait; }
.form-message { grid-column:1/-1; color:#8c3e31; font-size:13px; margin:10px 0 0; }
.fine-print { margin:10px 0 0; color:#77736b; font-size:11px; }
.hero-image { position:relative; height:590px; margin:0; background:#d8d2c8; overflow:hidden; box-shadow:18px 18px 0 rgba(117,129,107,.2); }
.hero-image img { width:100%; height:100%; object-fit:cover; object-position:55% center; filter:saturate(.88) contrast(.97); }
.hero-image figcaption { position:absolute; left:16px; right:16px; bottom:16px; background:rgba(255,253,248,.91); backdrop-filter:blur(7px); padding:15px 17px; font-size:12px; }
.hero-image figcaption span { font-weight:800; letter-spacing:.1em; margin-right:12px; }
.ticker { overflow:hidden; padding:15px 0; background:var(--ink); color:#f7f0e5; font-size:11px; font-weight:800; letter-spacing:.13em; white-space:nowrap; text-align:center; }
.ticker span { color:#9db08e; margin:0 22px; }
.report { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; padding-block:130px; align-items:start; }
h2 { margin-bottom:18px; font-size:clamp(38px,5vw,62px); line-height:1; letter-spacing:-.045em; font-weight:600; }
.report-heading>p:last-child { max-width:480px; font-size:17px; line-height:1.6; color:#5d5953; }
.report-card { background:var(--paper); border:1px solid var(--ink); box-shadow:12px 12px 0 var(--blue); }
.report-card-top { display:flex; justify-content:space-between; padding:14px 18px; background:var(--ink); color:#fff; font-size:9px; font-weight:800; letter-spacing:.13em; }
.report-card ol { list-style:none; padding:8px 24px; margin:0; }
.report-card li { display:grid; grid-template-columns:42px 1fr; gap:12px; align-items:center; min-height:72px; border-bottom:1px solid var(--line); font-size:15px; }
.report-card li:last-child { border:0; }
.report-card li span { font-family:var(--font-serif),serif; font-size:25px; color:#75816b; }
.rules { border-top:1px solid var(--line); display:grid; grid-template-columns:.7fr 1.3fr; gap:90px; padding-block:110px 130px; }
.rule-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; border-top:1px solid var(--ink); }
.rule-grid article { padding:26px 26px 30px 0; border-bottom:1px solid var(--line); }
.rule-grid article:nth-child(even) { padding-left:26px; border-left:1px solid var(--line); }
.rule-grid strong { font-size:15px; }
.rule-grid p { margin:9px 0 0; font-size:14px; line-height:1.55; color:#615d57; }
.disclosure { display:grid; grid-template-columns:.7fr 1.3fr; gap:90px; background:#dce4d6; padding:68px; margin-bottom:130px; }
.disclosure h2 { font-size:clamp(34px,4vw,52px); }
.disclosure>div p { max-width:720px; font-size:16px; line-height:1.65; margin-bottom:0; }
.closing { background:#7894a6; color:#182126; padding:100px 0; }
.closing-inner { display:grid; grid-template-columns:1fr .8fr; gap:80px; align-items:end; }
.closing .eyebrow { color:#253942; }
.closing h2 { margin:0; }
.closing .signup input { border-color:#182126; }
.closing .fine-print { color:#263c46; }
footer { min-height:100px; display:flex; align-items:center; justify-content:space-between; font-size:12px; }
footer p { margin:0; }
footer div { display:flex; gap:22px; }
footer a:hover { text-decoration:underline; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.simple-page { min-height:100vh; display:grid; place-items:center; padding:32px; background:var(--cream); }
.simple-page>div { width:min(720px,100%); }
.simple-page h1,.legal h1 { font-size:clamp(56px,10vw,104px); }
.simple-page>div>p:not(.eyebrow),.legal>p { max-width:680px; font-size:18px; line-height:1.65; color:#57534d; }
.simple-button { display:inline-block; margin:22px 18px 0 0; padding:16px 20px; background:var(--ink); color:white; font-weight:700; font-size:14px; }
.text-link { display:inline-block; margin-top:22px; border-bottom:1px solid; font-size:14px; }
.legal { padding-block:70px; }
.legal .wordmark { display:inline-block; margin-bottom:100px; }
.legal h1 { margin-bottom:38px; }

@media (max-width:850px) {
  .shell { width:min(100% - 30px, 680px); }
  .nav { height:68px; }
  .hero { grid-template-columns:1fr; gap:46px; padding-block:48px 72px; }
  h1 { font-size:clamp(52px,15vw,78px); }
  .hero-image { height:min(122vw,620px); order:-1; box-shadow:10px 10px 0 rgba(117,129,107,.2); }
  .report,.rules,.disclosure,.closing-inner { grid-template-columns:1fr; gap:42px; }
  .report { padding-block:90px; }
  .rules { padding-block:80px 100px; }
  .disclosure { padding:40px 28px; margin-bottom:90px; }
  .closing { padding:78px 0; }
}
@media (max-width:540px) {
  .wordmark span { display:none; }
  .signup { grid-template-columns:1fr; gap:8px; }
  .signup input { border-right:1px solid var(--ink); }
  .scorecard { gap:10px; }
  .scorecard strong { font-size:24px; }
  .ticker { text-align:left; }
  .rule-grid { grid-template-columns:1fr; }
  .rule-grid article:nth-child(even) { padding-left:0; border-left:0; }
  footer { padding-block:30px; align-items:flex-start; gap:22px; flex-direction:column; }
}
