:root{--ink:#0e1726;--body:#334155;--muted:#5b6778;--paper:#ffffff;--soft:#f4f2ee;--line:#e3e0da;--gold:#b7742a;--goldl:#e0a458;--navy:#0e1726}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.65 "Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;color:var(--body);background:var(--paper)}
h1,h2,h3{color:var(--ink);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Noto Serif",serif;font-weight:600;letter-spacing:-.01em}
a{color:var(--gold)}a:hover{color:var(--ink)}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
.top{background:var(--navy);color:#fff}
.bar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:16px;flex-wrap:wrap}
.mark{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.mark b{font:600 15px/1 system-ui,sans-serif;letter-spacing:.32em;text-transform:uppercase}
.mark small{display:block;color:#9aa6b8;font:12px/1.4 system-ui,sans-serif;letter-spacing:.06em;margin-top:4px}
nav a{color:#cfd6e0;text-decoration:none;font-size:15px;margin-left:26px;padding-bottom:4px;border-bottom:2px solid transparent}
nav a:first-child{margin-left:0}nav a:hover{color:#fff}nav a[aria-current]{color:#fff;border-color:var(--goldl)}
.hero{padding:88px 0 104px}.hero.short{padding:64px 0 72px}
.eyebrow{font:600 12.5px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--goldl);margin:0 0 22px}
.hero h1{color:#fff;font-size:clamp(36px,5.6vw,62px);line-height:1.08;margin:0 0 26px;max-width:820px}
.hero p.lede{color:#c7d0dc;font-size:clamp(17px,2vw,20px);max-width:680px;margin:0 0 34px}
.btn{display:inline-block;background:var(--goldl);color:var(--navy);font-weight:650;text-decoration:none;padding:14px 24px;border-radius:4px;font-size:16px}
.btn:hover{background:#fff;color:var(--navy)}
.btn.ghost{background:transparent;color:#fff;border:1px solid #4a5870;margin-left:12px}.btn.ghost:hover{border-color:#fff}
section{padding:88px 0}section.soft{background:var(--soft)}
.kicker{font:600 12.5px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
h2{font-size:clamp(28px,3.6vw,40px);line-height:1.15;margin:0 0 18px}
.intro{max-width:700px;font-size:18px;margin:0 0 48px}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.svc{padding:34px 30px 8px 0}.svc+.svc{padding-left:30px;border-left:1px solid var(--line)}
.svc .n{font:600 13px/1 system-ui,sans-serif;color:var(--gold);letter-spacing:.14em}
.svc h3{font-size:23px;line-height:1.25;margin:14px 0 12px}.svc p{margin:0 0 14px}
.svc ul{margin:0;padding:0;list-style:none;font-size:15px;color:var(--muted)}.svc li{padding:6px 0;border-top:1px dashed var(--line)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.stat strong{display:block;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:38px;line-height:1;color:var(--ink);margin-bottom:12px}
.stat span{font-size:15px;color:var(--muted)}
.split{display:grid;grid-template-columns:300px 1fr;gap:64px;align-items:start}
.split img{width:100%;height:auto;border-radius:4px;filter:saturate(.9)}
.cta{background:var(--navy);color:#c7d0dc;text-align:left}.cta h2{color:#fff}.cta p{max-width:620px;margin:0 0 30px;font-size:18px}
footer{background:#0a111c;color:#8794a8;font-size:14px;padding:30px 0}footer a{color:#cfd6e0}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.timeline{list-style:none;margin:0;padding:0}
.role{display:grid;grid-template-columns:220px 1fr;gap:40px;padding:40px 0;border-top:1px solid var(--line)}
.role .when{font:600 14px/1.5 system-ui,sans-serif;color:var(--gold);letter-spacing:.04em}.role .where{font-size:14px;color:var(--muted);margin-top:6px}
.role h3{font-size:24px;margin:0 0 4px;line-height:1.25}.role .org{font-weight:600;color:var(--ink);margin:0 0 6px}.role .note{font-size:15px;color:var(--muted);font-style:italic;margin:0 0 10px}
.role ul{margin:12px 0 0;padding-left:20px}.role li{margin:6px 0}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.patents{list-style:none;padding:0;margin:0}.patents li{padding:14px 0;border-top:1px solid var(--line)}.patents b{color:var(--ink);font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:20px;margin-right:12px}
.contact-list{list-style:none;padding:0;margin:0;max-width:640px}.contact-list li{padding:26px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:baseline}
.contact-list .label{font:600 12.5px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.contact-list a{font-size:21px;font-family:"Iowan Old Style",Palatino,Georgia,serif;color:var(--ink);text-decoration-color:var(--goldl);text-underline-offset:5px}
@media(max-width:860px){.services,.stats,.cols{grid-template-columns:1fr 1fr}.services{grid-template-columns:1fr}.svc,.svc+.svc{padding:30px 0 10px;border-left:0}.svc+.svc{border-top:1px solid var(--line)}.split{grid-template-columns:1fr;gap:32px}.split img{max-width:240px}.role{grid-template-columns:1fr;gap:10px}}
@media(max-width:560px){body{font-size:16px}.wrap{padding:0 20px}.stats,.cols{grid-template-columns:1fr}nav a{margin-left:18px}.hero{padding:56px 0 68px}section{padding:60px 0}.btn.ghost{margin:12px 0 0}.contact-list li{grid-template-columns:1fr;gap:8px}}
