:root{
  --paper:#f3f6f9;
  --white:#ffffff;
  --ink:#172033;
  --muted:#5f6a79;
  --line:#d7dee7;
  --cool:#e9eef4;
  --navy:#123f83;
  --navy-deep:#0d2f63;
  --royal:#2348d7;
  --green:#18a86b;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.62;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.shell{width:min(var(--max),calc(100% - 48px));margin:0 auto}
header{position:sticky;top:0;z-index:30;background:rgba(243,246,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{height:70px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand{font-size:21px;font-weight:800;letter-spacing:-.035em;color:var(--navy)}
.navlinks{display:flex;gap:22px;align-items:center;font-size:14px;color:#354154}
.navlinks a{padding:7px 0;position:relative}
.navlinks a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--navy);transition:.18s}
.navlinks a:hover::after,.navlinks a.active::after{right:0}
.navlinks .rate{color:var(--royal);font-weight:700}
.menu{display:none;border:0;background:none;color:var(--navy);font:inherit;font-weight:700;cursor:pointer}
.kicker,.meta{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:750;color:var(--royal)}
h1,h2,h3{color:var(--navy);font-weight:760}
h1{font-size:clamp(38px,4.5vw,58px);line-height:1;letter-spacing:-.05em;margin:0 0 20px}
h2{font-size:clamp(25px,2.8vw,35px);line-height:1.09;letter-spacing:-.04em;margin:0 0 16px}
h3{font-size:20px;line-height:1.24;margin:0 0 10px;letter-spacing:-.02em}
p{margin-top:0}
.hero{background:var(--white);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;min-height:610px}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:72px 70px 62px 0}
.hero h1{font-size:clamp(48px,5.3vw,70px);line-height:.93;margin-top:14px}
.role{font-size:19px;line-height:1.48;max-width:650px;margin:0 0 22px;color:#263247}
.role a{color:var(--navy);border-bottom:1px solid rgba(18,63,131,.35)}
.statement{font-size:16px;color:var(--muted);max-width:600px;margin:0}
.actions{display:flex;gap:23px;margin-top:30px;font-size:14px;font-weight:700}
.outline{padding:11px 16px;border:1px solid var(--royal);color:var(--royal)}
.under{border-bottom:1px solid var(--navy);padding-bottom:2px;color:var(--navy)}
.signal{display:flex;align-items:center;gap:8px;margin-top:34px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#687486}
.dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(24,168,107,.28);animation:pulse 2.5s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(24,168,107,0)}100%{box-shadow:0 0 0 0 rgba(24,168,107,0)}}
.portrait{background:var(--cool);display:flex;align-items:center;justify-content:center;padding:34px 30px 28px;overflow:hidden}
.portrait img{width:86%;max-width:490px;height:auto;display:block;object-fit:contain}
.section{padding:72px 0;border-bottom:1px solid var(--line)}
.white{background:var(--white)}
.internal{padding:66px 0 48px;background:var(--white);border-bottom:1px solid var(--line)}
.internal p{font-size:17px;color:#344055;max-width:820px;margin:0}
.research-intro .kicker{margin-bottom:14px}
.split{display:grid;grid-template-columns:.82fr 1.18fr;gap:76px}
.copy{font-size:16.5px;line-height:1.72;color:#303b4b;max-width:790px}
.copy p{margin:0 0 18px}
.pull{font-size:clamp(24px,2.7vw,33px);line-height:1.22;letter-spacing:-.035em;color:var(--navy);margin:27px 0 0}
.story{padding:58px 0;border-bottom:1px solid var(--line)}
.story:nth-child(even){background:var(--white)}
.story-grid{display:grid;grid-template-columns:160px 1fr;gap:58px}
.year{font-size:42px;line-height:.92;letter-spacing:-.05em;color:#b4c0cf;font-weight:800}
.story p,.research-piece p,.work-piece p,.book-piece p{font-size:16px;line-height:1.7;color:var(--muted);max-width:850px;margin:0 0 14px}
.focus{font-size:18px!important;color:#26364d!important}
.research-piece,.work-piece,.book-piece{padding:58px 0;border-bottom:1px solid var(--line)}
.research-piece:nth-child(even),.work-piece:nth-child(even),.book-piece:nth-child(even){background:var(--white)}
.editorial-grid{display:grid;grid-template-columns:175px 1fr;gap:58px}
.piece-meta{font-size:12px;color:var(--muted);line-height:1.5}
.journal,.roleline{font-size:13px!important;color:#344055!important;margin-top:15px!important}
.roleline{font-weight:700}
.research-piece.foundation{background:var(--white);color:var(--ink);border-bottom:1px solid var(--line)}
.foundation .meta,.foundation .piece-meta{color:var(--royal);font-weight:750}
.foundation h2{color:var(--navy)}
.foundation p{color:#303b4b}
.foundation p strong{color:var(--navy);font-weight:760}
.book-feature{display:grid;grid-template-columns:.9fr 1.1fr;border-top:1px solid var(--navy);border-bottom:1px solid var(--navy)}
.cover{background:var(--navy);color:#fff;min-height:370px;padding:36px;display:flex;flex-direction:column;justify-content:space-between}
.cover h2{color:#fff;font-size:clamp(29px,3.4vw,39px);max-width:470px}
.booktext{padding:42px 0 42px 46px;display:flex;flex-direction:column;justify-content:center}
.booktext p{font-size:16px;color:var(--muted);line-height:1.7;max-width:610px;margin:0}
.book-year{font-size:30px;color:#b4c0cf;font-weight:780;letter-spacing:-.04em}
.contact{min-height:calc(100vh - 70px);background:var(--navy-deep);color:#fff;display:flex;align-items:center}
.contact .shell{padding:80px 0}
.contact h1{color:#fff;max-width:760px}
.contact p{font-size:17px;color:rgba(255,255,255,.74);max-width:620px}
.email{margin-top:34px;padding-top:21px;border-top:1px solid rgba(255,255,255,.34)}
.email a{font-size:20px;border-bottom:1px solid rgba(255,255,255,.75)}
footer{background:var(--paper);color:#6d7888;padding:0 0 27px;font-size:11px;letter-spacing:.11em;text-transform:uppercase}
footer .shell{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){
  .navlinks{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:20px 24px 26px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}
  .navlinks.open{display:flex}.menu{display:block}
  .hero-grid,.split,.story-grid,.editorial-grid,.book-feature{grid-template-columns:1fr}
  .hero-copy{padding:56px 0 42px}.portrait{min-height:450px;padding:28px 24px 24px}.portrait img{width:78%;max-width:420px}
  .story-grid,.editorial-grid{gap:28px}.booktext{padding:36px 0}.year{font-size:38px}
}
@media(max-width:600px){
  .shell{width:calc(100% - 30px)}.nav{height:64px}.navlinks{top:64px}
  .hero h1{font-size:46px}.hero-copy{padding:46px 0 38px}.portrait{min-height:350px;padding:20px 14px 18px}.portrait img{width:86%}
  .section,.story,.research-piece,.work-piece,.book-piece{padding:54px 0}.internal{padding:54px 0 44px}.actions{gap:14px;flex-wrap:wrap}.cover{min-height:330px;padding:27px}footer .shell{display:block}
}

.footer-legal a{color:#5f6a79;text-decoration:none}.footer-legal a:hover{color:#123f83}
@media(max-width:900px){footer .shell{flex-wrap:wrap}.footer-legal{order:3;width:100%}}
