@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');

:root { --ink:#17211f; --muted:#6e7976; --paper:#f5f4ef; --mint:#cfe8d9; --green:#225d4c; --line:#dce1db; --orange:#e97d4e; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans',sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1160px, calc(100% - 56px)); margin-inline:auto; }
.site-header { width:min(1240px, calc(100% - 56px)); margin:0 auto; height:92px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:inline-flex; align-items:center; gap:11px; font-weight:700; letter-spacing:-.02em; }
.brand-mark { width:29px; height:29px; display:grid; place-items:center; background:var(--ink); color:var(--mint); border-radius:50%; font-family:Georgia,serif; font-size:17px; font-weight:400; }
nav { display:flex; gap:30px; align-items:center; color:#52605b; font-size:13px; }
nav a:hover,.footer-links a:hover,.text-link:hover { color:var(--green); }
.nav-contact { border:1px solid #b7c2bb; padding:8px 15px; border-radius:30px; color:var(--ink); }
.hero { min-height:580px; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding:55px 0 85px; }
.eyebrow { color:var(--green); font:500 10px/1.2 'DM Mono',monospace; letter-spacing:.12em; text-transform:uppercase; margin:0 0 23px; }
.eyebrow span { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--orange); margin:0 9px 1px 0; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:clamp(54px, 6.2vw, 84px); letter-spacing:-.065em; line-height:.98; font-weight:500; margin-bottom:28px; }
h1 em,h2 em { font-family:'Playfair Display',Georgia,serif; font-weight:500; }
.hero-text { color:var(--muted); max-width:450px; font-size:16px; line-height:1.7; }
.hero-actions { display:flex; align-items:center; gap:28px; margin-top:35px; }
.button { display:inline-flex; align-items:center; gap:18px; border-radius:30px; padding:13px 19px; font-size:13px; }
.button-primary { color:#fff; background:var(--green); }
.button-primary span { font-size:17px; }
.text-link { font-size:13px; color:var(--green); }.text-link span { margin-left:8px; font-size:17px; }
.signal-card { background:var(--mint); height:390px; border-radius:4px; position:relative; overflow:hidden; padding:25px; }
.card-topline { display:flex; justify-content:space-between; color:var(--green); font:500 9px 'DM Mono',monospace; letter-spacing:.1em; }.live-dot { color:var(--orange); }
.signal-orbit { position:absolute; border:1px solid rgba(34,93,76,.28); border-radius:50%; left:50%; top:49%; transform:translate(-50%,-50%) rotate(-28deg); }
.orbit-one { width:310px; height:180px; }.orbit-two { width:190px; height:310px; transform:translate(-50%,-50%) rotate(40deg); }
.signal-center { position:absolute; left:50%; top:49%; transform:translate(-50%,-50%); width:90px; height:90px; background:var(--green); border-radius:50%; color:var(--mint); display:flex; align-items:center; justify-content:center; gap:5px; }.signal-center span { font:32px Georgia,serif; }.signal-center small { font:8px/1.1 'DM Mono',monospace; letter-spacing:.04em; }
.signal-label { position:absolute; display:flex; gap:8px; color:var(--green); font-size:10px; line-height:1.15; }.signal-label b { font:10px 'DM Mono',monospace; color:var(--orange); }.label-one { left:26px; top:132px; }.label-two { right:26px; top:180px; }.label-three { left:87px; bottom:69px; }.signal-footer { position:absolute; bottom:23px; left:25px; right:25px; border-top:1px solid rgba(34,93,76,.25); padding-top:11px; display:flex; justify-content:space-between; color:var(--green); font-size:11px; }.signal-footer strong { font-weight:600; }
.ticker { border-top:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; }.ticker-inner { width:min(1160px, calc(100% - 56px)); margin:auto; min-height:66px; display:flex; align-items:center; justify-content:space-between; color:#71817a; font:500 10px 'DM Mono',monospace; letter-spacing:.12em; white-space:nowrap; }.ticker i { color:var(--orange); font-style:normal; font-size:16px; }
.section { display:grid; grid-template-columns:1.05fr .95fr; gap:110px; padding-top:130px; padding-bottom:120px; }.section h2,.evidence-note h2,.contact-panel h2 { font-size:clamp(36px,4vw,57px); line-height:1.05; letter-spacing:-.055em; font-weight:500; margin:0; }.section-body { align-self:end; max-width:420px; color:var(--muted); font-size:15px; }.section-body p+p { margin-top:20px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; padding-bottom:125px; }.feature-card { min-height:352px; padding:28px; border:1px solid var(--line); background:#f8f7f2; position:relative; display:flex; flex-direction:column; }.feature-card.feature-dark { background:var(--green); color:#fff; border-color:var(--green); }.feature-number { color:var(--orange); font:10px 'DM Mono',monospace; }.feature-icon { margin-top:24px; color:var(--green); font-size:44px; line-height:1; }.feature-dark .feature-icon { color:var(--mint); }.icon-radar { font-size:54px; }.feature-card h3 { font-size:20px; letter-spacing:-.035em; margin:20px 0 10px; }.feature-card p { color:var(--muted); font-size:13px; line-height:1.6; max-width:250px; margin-bottom:auto; }.feature-dark p { color:#c9d9d1; }.feature-card a { color:var(--green); font-size:12px; margin-top:20px; }.feature-dark a { color:var(--mint); }.feature-card a span { margin-left:7px; }
.evidence-note { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:85px 0; display:grid; grid-template-columns:150px 1fr; gap:70px; align-items:start; }.evidence-badge { width:68px; height:68px; border-radius:50%; display:grid; place-items:center; background:var(--orange); color:#fff; font:500 13px 'DM Mono',monospace; }.evidence-note h2 { margin-bottom:20px; }.evidence-note p:last-child { max-width:650px; color:var(--muted); font-size:14px; }
.contact-panel { display:flex; align-items:end; justify-content:space-between; padding:130px 0 140px; }.contact-email { color:var(--green); font-size:15px; border-bottom:1px solid var(--green); padding-bottom:8px; }.contact-email span { margin-left:30px; font-size:20px; }
.site-footer { border-top:1px solid var(--line); padding:28px 0 45px; display:grid; grid-template-columns:1.5fr 1fr .7fr; gap:30px; color:var(--muted); font-size:11px; }.site-footer .brand { color:var(--ink); font-size:14px; }.site-footer p { max-width:240px; margin:13px 0 0; line-height:1.5; }.footer-links { display:flex; flex-direction:column; gap:5px; }.copyright { text-align:right; line-height:1.6; }
.legal { max-width:760px; padding:90px 0 130px; }.legal h1 { font-size:clamp(50px,6vw,75px); margin-bottom:14px; }.legal-updated { font:11px 'DM Mono',monospace; color:var(--muted); margin-bottom:62px; }.legal h2 { font-size:22px; letter-spacing:-.03em; margin:42px 0 10px; }.legal p { color:#596663; font-size:15px; line-height:1.8; }.legal a { color:var(--green); text-decoration:underline; text-underline-offset:3px; }
.content-page { padding:90px 0 125px; }.content-hero { max-width:720px; padding-bottom:95px; }.content-hero h1 { font-size:clamp(50px,6vw,78px); margin-bottom:25px; }.content-hero > p:not(.eyebrow) { max-width:600px; color:var(--muted); font-size:16px; line-height:1.75; }.status-chip { display:inline-block; margin-top:22px; padding:7px 11px; border:1px solid #b7cfc1; border-radius:3px; color:var(--green); font:500 10px 'DM Mono',monospace; letter-spacing:.08em; }.content-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.content-card { min-height:360px; border-top:2px solid var(--green); padding:28px; background:#f8f7f2; }.content-card h2 { font-size:25px; letter-spacing:-.04em; margin:31px 0 13px; }.content-card p,.content-card li,.content-callout p,.about-columns p { color:var(--muted); font-size:14px; line-height:1.7; }.content-card ul { padding-left:18px; margin-top:23px; }.content-card li+li { margin-top:7px; }.content-callout { margin-top:110px; padding:75px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.content-callout h2 { font-size:clamp(35px,4vw,55px); line-height:1.06; letter-spacing:-.055em; font-weight:500; margin-bottom:22px; }.content-callout p:last-child { max-width:620px; }.method-steps { border-top:1px solid var(--line); }.method-step { display:grid; grid-template-columns:150px 1fr; gap:70px; padding:32px 0; border-bottom:1px solid var(--line); }.step-number { color:var(--orange); font:500 12px 'DM Mono',monospace; }.method-step h2,.about-columns h2 { font-size:27px; letter-spacing:-.045em; margin:0 0 8px; }.method-step p { max-width:600px; margin:0; color:var(--muted); font-size:15px; line-height:1.7; }.about-columns { display:grid; grid-template-columns:1fr 1fr; gap:100px; border-top:1px solid var(--line); padding-top:45px; }.about-columns h2 { margin-bottom:18px; }.about-columns p+p { margin-top:17px; }.contact-strip { margin-top:100px; display:flex; align-items:end; justify-content:space-between; padding:65px 0 0; border-top:1px solid var(--line); }.contact-strip h2 { font-size:clamp(35px,4vw,52px); line-height:1.06; letter-spacing:-.055em; font-weight:500; margin:0; }
@media (max-width:760px) { .shell,.site-header,.ticker-inner { width:calc(100% - 36px); }.site-header { height:76px; }.site-header nav { gap:12px; font-size:11px; }.site-header nav a:nth-child(-n+4) { display:none; }.nav-contact { padding:6px 10px; }.hero { grid-template-columns:1fr; gap:45px; padding-top:52px; }.signal-card { height:320px; }.section { grid-template-columns:1fr; gap:35px; padding:90px 0; }.feature-grid { grid-template-columns:1fr; padding-bottom:90px; }.feature-card { min-height:290px; }.evidence-note { grid-template-columns:1fr; gap:28px; padding:65px 0; }.contact-panel { display:block; padding:90px 0; }.contact-email { display:inline-block; margin-top:36px; }.site-footer { grid-template-columns:1fr 1fr; }.copyright { text-align:left; grid-column:1/-1; }.footer-links { text-align:right; }.legal { padding:65px 0 90px; }.content-page { padding:65px 0 90px; }.content-hero { padding-bottom:65px; }.content-grid { grid-template-columns:1fr; }.content-card { min-height:0; }.method-step { grid-template-columns:55px 1fr; gap:18px; }.about-columns { grid-template-columns:1fr; gap:42px; }.contact-strip { display:block; margin-top:70px; }.contact-strip .contact-email { margin-top:34px; } }
