:root { --ink:#121211; --paper:#f5f2eb; --cream:#ebe5d8; --muted:#716d64; --orange:#d84d35; --gold:#e2a446; --line:rgba(18,18,17,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px, calc(100% - 48px)); margin:0 auto; }
.site-header { background:var(--ink); color:#fff; position:sticky; top:0; z-index:20; }
nav { height:76px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:0; font-family:Georgia, serif; font-size:22px; letter-spacing:-.03em; }
.brand-mark { display:none; }
.nav-links { display:flex; align-items:center; gap:26px; color:rgba(255,255,255,.74); font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color:#fff; }
.nav-cta { color:#fff !important; border:1px solid rgba(255,255,255,.58); padding:10px 13px; }
.page-hero { background:var(--ink); color:#fff; padding:76px 0 64px; border-bottom:5px solid var(--orange); }
.eyebrow { color:var(--orange); font-size:11px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.page-hero h1 { max-width:820px; margin:18px 0 16px; font-family:Georgia, serif; font-size:clamp(46px, 7vw, 86px); font-weight:400; letter-spacing:-.065em; line-height:.96; }
.page-hero p { max-width:620px; margin:0; color:rgba(255,255,255,.68); font-family:Georgia, serif; font-size:21px; line-height:1.4; }
.research-jumps { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.research-jumps a { border:1px solid rgba(255,255,255,.32); padding:9px 11px; color:rgba(255,255,255,.78); font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.research-jumps a:hover { border-color:#fff; color:#fff; }
.section { padding:80px 0; border-bottom:1px solid var(--line); }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:28px; }
.section-heading h2 { margin:7px 0 0; font-family:Georgia, serif; font-size:clamp(34px, 4vw, 54px); font-weight:400; letter-spacing:-.05em; }
.section-heading p { max-width:390px; margin:0; color:var(--muted); line-height:1.55; }
.tracker { border-top:2px solid var(--ink); }
.tracker-row { display:grid; grid-template-columns:125px minmax(210px,1.25fr) minmax(180px,.9fr) minmax(180px,.9fr) auto; gap:24px; align-items:start; padding:27px 0; border-bottom:1px solid var(--line); }
.tracker-date { color:var(--orange); font-size:11px; font-weight:800; letter-spacing:.1em; line-height:1.45; text-transform:uppercase; }
.tracker-row h3, .brief h3, .profile h3 { margin:0 0 8px; font-family:Georgia,serif; font-size:24px; font-weight:400; letter-spacing:-.035em; }
.tracker-row p, .brief p, .profile p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }
.tracker-label { color:var(--ink) !important; font-size:11px !important; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.source { align-self:center; color:var(--orange); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.source:hover { text-decoration:underline; }
.brief-grid, .profiles { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.brief, .profile { padding:28px; background:#fffdf8; border:1px solid var(--line); min-height:256px; display:flex; flex-direction:column; align-items:flex-start; }
.brief .eyebrow, .profile .eyebrow { margin-bottom:22px; font-size:10px; }
.brief .source, .profile .source { margin-top:auto; padding-top:22px; }
.method { margin-top:36px; padding:26px 28px; background:var(--cream); display:grid; grid-template-columns:155px 1fr; gap:24px; }
.method h3 { margin:0; font-size:11px; letter-spacing:.11em; text-transform:uppercase; }
.method p { margin:0; color:var(--muted); line-height:1.6; font-size:14px; }
.method .source { grid-column:2; align-self:end; margin-top:4px; }
.feature-brief { background:var(--cream); }
.feature-brief-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:56px; align-items:start; }
.feature-brief h2 { max-width:700px; margin:10px 0 18px; font-family:Georgia,serif; font-size:clamp(36px,4.6vw,64px); font-weight:400; letter-spacing:-.06em; line-height:.96; }
.feature-brief > .shell > div > p { max-width:720px; margin:0 0 24px; color:var(--muted); font-size:17px; line-height:1.55; }
.light-cta { display:inline-block; border-color:var(--ink); color:var(--ink) !important; }
.feature-brief aside { padding:25px; border-top:2px solid var(--ink); background:#fffdf8; }
.feature-brief aside b { display:block; margin-bottom:11px; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.feature-brief aside p { margin:0 0 21px; color:var(--muted); font-family:Georgia,serif; font-size:20px; line-height:1.25; }
.feature-brief aside small { display:block; color:var(--muted); font-size:11px; line-height:1.45; }
.tool-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:42px; align-items:start; }
.tool-copy h2 { margin:9px 0 17px; font-family:Georgia,serif; font-size:clamp(36px,4.5vw,58px); font-weight:400; letter-spacing:-.055em; line-height:.96; }
.tool-copy p { max-width:420px; color:var(--muted); font-size:16px; line-height:1.55; }
.readiness-form { padding:30px; border:1px solid var(--line); background:#fffdf8; }
.readiness-field { display:block; padding:18px 0; border-bottom:1px solid var(--line); }
.readiness-field:last-of-type { border-bottom:0; }
.readiness-field span { display:block; margin-bottom:8px; font-family:Georgia,serif; font-size:20px; letter-spacing:-.025em; }
.readiness-field small { display:block; margin-bottom:12px; color:var(--muted); line-height:1.45; }
.choices { display:flex; flex-wrap:wrap; gap:8px; }
.choice { position:relative; }
.choice input { position:absolute; opacity:0; pointer-events:none; }
.choice label { display:block; padding:8px 10px; border:1px solid var(--line); color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.04em; cursor:pointer; }
.choice input:checked + label { border-color:var(--ink); background:var(--ink); color:#fff; }
.choice input:focus-visible + label { outline:3px solid rgba(216,77,53,.35); outline-offset:2px; }
.tool-button { margin-top:22px; height:47px; padding:0 18px; border:0; background:var(--orange); color:#fff; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.tool-result .tool-button { display:inline-flex; align-items:center; margin-top:18px; text-decoration:none; }
.tool-result { display:none; margin-top:22px; padding:22px; border-left:4px solid var(--gold); background:var(--cream); }
.tool-result.show { display:block; }
.tool-result h3 { margin:0 0 9px; font-family:Georgia,serif; font-size:29px; font-weight:400; letter-spacing:-.04em; }
.tool-result p { margin:0; color:var(--muted); line-height:1.55; }
.article { padding:84px 0; }
.article-grid { display:grid; grid-template-columns:minmax(0,760px) 230px; gap:70px; align-items:start; }
.article-copy { font-family:Georgia,serif; font-size:20px; line-height:1.58; }
.article-copy .lede { margin:0 0 34px; color:var(--muted); font-size:26px; line-height:1.4; }
.article-copy h2 { margin:48px 0 12px; font-size:35px; font-weight:400; letter-spacing:-.045em; line-height:1; }
.article-copy p { margin:0 0 22px; }
.article-copy a { color:var(--orange); text-decoration:underline; text-underline-offset:3px; }
.article-aside { position:sticky; top:102px; padding:22px; border-top:2px solid var(--ink); background:var(--cream); }
.article-aside b { font-size:10px; letter-spacing:.12em; text-transform:uppercase; }.article-aside p { margin:11px 0 0; color:var(--muted); font-size:13px; line-height:1.55; }
.sample-room { background:#fffdf8; }
.sample-room-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:32px; }
.sample-card { padding:26px; border:1px solid var(--line); background:var(--paper); }
.sample-card h3 { margin:8px 0 12px; font-family:Georgia,serif; font-size:31px; font-weight:400; letter-spacing:-.045em; }.sample-card p { margin:0; color:var(--muted); line-height:1.55; }
.sample-list { margin:16px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }.sample-list li { padding:12px 0; border-bottom:1px solid var(--line); font-size:13px; }.sample-list b { display:inline-block; min-width:100px; color:var(--orange); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.about-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:70px; }
.about-copy { font-family:Georgia, serif; font-size:clamp(25px,3vw,39px); line-height:1.16; letter-spacing:-.045em; }
.principles { border-top:2px solid var(--ink); }
.principle { padding:21px 0; border-bottom:1px solid var(--line); }
.principle b { display:block; margin-bottom:6px; font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.principle p { margin:0; color:var(--muted); line-height:1.5; }
.newsletter { padding:68px 0; background:#d84d35; color:#fff; }
.newsletter-grid { display:grid; grid-template-columns:1fr .9fr; gap:55px; align-items:end; }
.newsletter h2 { margin:10px 0 0; max-width:520px; font-family:Georgia,serif; font-size:clamp(38px,5vw,65px); font-weight:400; letter-spacing:-.055em; line-height:.97; }
.newsletter p { margin:0 0 19px; color:rgba(255,255,255,.8); line-height:1.5; }
.signup { display:flex; gap:10px; }
.signup input { width:100%; min-width:0; height:52px; padding:0 15px; border:1px solid rgba(255,255,255,.45); border-radius:0; background:transparent; color:#fff; font:inherit; }
.signup input::placeholder { color:rgba(255,255,255,.65); }
.signup button { height:52px; padding:0 17px; border:0; background:var(--ink); color:#fff; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; white-space:nowrap; }
.form-note { margin-top:11px !important; font-size:12px; color:rgba(255,255,255,.7) !important; }
.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; }
footer { padding:25px 0; background:var(--ink); color:rgba(255,255,255,.64); font-size:12px; }
.footer-inner { display:flex; gap:18px; justify-content:space-between; align-items:center; }
.footer-inner strong { color:#fff; font-family:Georgia,serif; font-size:17px; font-weight:400; }
@media (max-width:760px) { .shell { width:min(100% - 32px, 1180px); } nav { height:64px; gap:12px; } .brand { font-size:18px; } .nav-links { gap:8px; font-size:8px; } .nav-cta { padding:7px 8px; } .page-hero { padding:59px 0 52px; } .page-hero p { font-size:18px; } .research-jumps { margin-top:24px; gap:8px; } .research-jumps a { padding:8px 9px; font-size:9px; } .section,.article { padding:56px 0; } .section-heading { display:block; } .section-heading p { margin-top:14px; } .tracker-row { grid-template-columns:1fr; gap:8px; padding:23px 0; } .tracker-row h3 { font-size:23px; } .source { margin-top:8px; } .brief-grid,.profiles,.about-grid,.newsletter-grid,.feature-brief-grid,.tool-grid,.article-grid,.sample-room-grid { grid-template-columns:1fr; gap:14px; } .brief,.profile { min-height:225px; } .method { grid-template-columns:1fr; gap:10px; padding:22px; } .method .source { grid-column:1; } .newsletter { padding:54px 0; } .signup { display:block; } .signup button { width:100%; margin-top:10px; } .footer-inner { align-items:flex-start; flex-direction:column; gap:7px; } .article-aside { position:static; } }
