:root { --forest:#0c2826; --forest-2:#153d39; --mint:#b9e2d0; --cream:#f4f0e7; --paper:#fbfaf6; --ink:#17201f; --muted:#69716e; --line:#d9d8d0; --orange:#df6e3d; --max:1180px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.6; }
a { color:inherit; }
.site-header { width:min(var(--max),calc(100% - 48px)); min-height:88px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; font-size:1.22rem; font-weight:780; letter-spacing:-.035em; }
.brand img { width:38px; height:38px; }
.site-header nav { display:flex; align-items:center; gap:30px; }
.site-header nav a { color:#515a57; font-size:.9rem; font-weight:650; text-decoration:none; }
.site-header nav a:hover { color:var(--forest); }
.site-header .nav-contact { padding:10px 18px; border:1px solid #bdc2bc; border-radius:999px; color:var(--ink); }
.hero { width:min(var(--max),calc(100% - 48px)); min-height:660px; margin:12px auto 0; padding:78px 72px; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:70px; overflow:hidden; border-radius:4px 4px 90px 4px; background:var(--forest); color:#fff; }
.eyebrow { margin:0 0 20px; color:#2e7067; font-size:.73rem; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }
.hero .eyebrow { color:var(--mint); }
.hero h1 { margin:0; max-width:760px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(3.8rem,7vw,7rem); font-weight:500; line-height:.93; letter-spacing:-.06em; }
.hero h1 em { color:var(--mint); font-weight:500; }
.hero-lede { max-width:620px; margin:32px 0; color:#c9d7d3; font-size:1.15rem; }
.text-link { display:inline-flex; gap:12px; align-items:center; color:#fff; font-weight:750; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.35); padding-bottom:5px; }
.signal { position:relative; aspect-ratio:1; display:grid; place-items:center; }
.signal span { position:absolute; border:1px solid rgba(185,226,208,.28); border-radius:50%; }
.signal span:nth-child(1) { inset:2%; }.signal span:nth-child(2) { inset:12%; }.signal span:nth-child(3) { inset:23%; }.signal span:nth-child(4) { inset:34%; }.signal span:nth-child(5) { inset:44%; }
.signal .signal-mark { position:relative; z-index:2; width:84px; height:84px; display:block; }
.manifesto,.portfolio,.company-card,.contact { width:min(var(--max),calc(100% - 48px)); margin:150px auto 0; }
.statement { max-width:1050px; margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.5rem,5vw,5.1rem); line-height:1.08; letter-spacing:-.045em; }
.principles { margin-top:72px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.principles article { padding:32px 38px 20px 0; border-right:1px solid var(--line); }
.principles article + article { padding-left:38px; }
.principles article:last-child { border-right:0; }
.principles span,.venture-index { color:var(--orange); font-size:.72rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.principles h2 { margin:14px 0 10px; font-size:1.28rem; letter-spacing:-.025em; }
.principles p { margin:0; color:var(--muted); }
.section-heading { display:grid; grid-template-columns:.55fr 1.45fr; gap:80px; align-items:start; }
.section-heading h2,.company-card h2,.contact h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.7rem,5vw,5.2rem); font-weight:500; line-height:1.02; letter-spacing:-.05em; }
.venture { margin-top:36px; padding:52px; display:grid; grid-template-columns:.55fr 1.45fr; gap:80px; border-radius:3px 3px 55px 3px; }
.venture-radiarch { margin-top:64px; background:#e7e3f7; }
.venture-s144 { background:#e8e3d9; }
.venture-body h3 { margin:0; font-size:clamp(2.4rem,5vw,4.8rem); line-height:1; letter-spacing:-.06em; }
.venture-body > p { max-width:700px; margin:24px 0; color:#505754; font-size:1.08rem; }
.venture ul { margin:0 0 32px; padding:0; display:flex; flex-wrap:wrap; gap:10px; list-style:none; }
.venture li { padding:7px 12px; border:1px solid rgba(23,32,31,.2); border-radius:999px; font-size:.78rem; font-weight:650; }
.venture a { font-weight:800; text-decoration:none; border-bottom:1px solid currentColor; }
.company-card { padding:72px; display:grid; grid-template-columns:1fr 1fr; gap:100px; background:var(--cream); border-top:5px solid var(--orange); }
.company-copy { padding-top:35px; color:#555e5a; font-size:1.05rem; }
.company-copy > p { margin-top:0; }
dl { margin:38px 0 0; }
dl div { padding:13px 0; display:grid; grid-template-columns:110px 1fr; border-top:1px solid #ceccc3; }
dt { color:#777d79; font-size:.77rem; font-weight:750; text-transform:uppercase; letter-spacing:.08em; }
dd { margin:0; color:var(--ink); font-weight:650; }
.contact { padding:80px 72px; background:var(--orange); color:#241811; }
.contact .eyebrow { color:#582a16; }
.contact h2 { max-width:850px; }
.contact > a { display:inline-block; margin-top:38px; font-size:1.08rem; font-weight:800; text-decoration:none; border-bottom:2px solid currentColor; }
footer { width:min(var(--max),calc(100% - 48px)); margin:80px auto 0; padding:36px 0 48px; display:grid; grid-template-columns:1fr auto; gap:22px; border-top:1px solid var(--line); color:var(--muted); }
.footer-brand { display:flex; flex-direction:column; }.footer-brand strong { color:var(--ink); }.footer-links { display:flex; gap:24px; }.footer-links a { font-size:.9rem; font-weight:650; text-decoration:none; } footer > small { grid-column:1/-1; }
.legal-page { width:min(780px,calc(100% - 48px)); margin:100px auto 140px; }.legal-page h1,.not-found h1 { margin:0; font-family:Georgia,serif; font-size:clamp(3rem,6vw,5.5rem); font-weight:500; line-height:1; letter-spacing:-.05em; }.legal-page h2 { margin:48px 0 10px; font-size:1.3rem; }.legal-page p { color:#59615e; }.legal-updated { margin:20px 0 48px; font-size:.9rem; }.legal-page a { color:var(--forest-2); font-weight:750; }.not-found { min-height:100vh; padding:30px; display:grid; place-content:center; text-align:center; }.not-found .brand { justify-content:center; margin-bottom:35px; }.not-found p:not(.eyebrow) { color:var(--muted); }.not-found a:last-child { justify-self:center; margin-top:16px; font-weight:800; }
@media (max-width:900px) { .hero { grid-template-columns:1fr; }.signal { width:min(430px,100%); margin:auto; }.principles { grid-template-columns:1fr; }.principles article,.principles article + article { padding:28px 0; border-right:0; border-bottom:1px solid var(--line); }.principles h2 { margin:18px 0 8px; }.section-heading,.venture,.company-card { grid-template-columns:1fr; gap:32px; }.company-card { padding:52px 40px; }.company-copy { padding-top:0; } }
@media (max-width:640px) { .site-header,.hero,.manifesto,.portfolio,.company-card,.contact,footer { width:calc(100% - 30px); }.site-header { min-height:72px; }.site-header nav a:not(.nav-contact) { display:none; }.hero { min-height:auto; padding:50px 25px; border-radius:3px 3px 48px 3px; }.hero h1 { font-size:clamp(3.4rem,17vw,5.1rem); }.signal { margin-top:20px; }.manifesto,.portfolio,.company-card,.contact { margin-top:100px; }.venture { padding:35px 25px; border-radius:3px 3px 38px 3px; }.company-card,.contact { padding:44px 25px; } footer { grid-template-columns:1fr; }.footer-links { flex-wrap:wrap; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
