:root{ --bg:#fff; --ink:#111; --soft:#555; --pencil:#8a8a8a; --rule:#111; --blue:#CFE3F7; --navy:#1B3A5C; --sky:#EAF2FB }
*{box-sizing:border-box} html,body{margin:0}
body{ background:var(--bg); color:var(--ink); font-family:Inter,system-ui,-apple-system,sans-serif; font-size:17px; line-height:1.55 }
h1,h2,h3,.logo,.btn{ font-family:"Archivo Narrow","Helvetica Neue Condensed","Arial Narrow",sans-serif; font-weight:700 }
.wrap{ max-width:1180px; margin:0 auto }
.nav{ display:flex; align-items:center; justify-content:space-between; padding:22px 40px; border-bottom:1.5px solid var(--rule); gap:16px; flex-wrap:wrap }
.nav a{ color:inherit; text-decoration:none } .logo{ font-size:26px } .mark{ height:40px; width:auto; display:block }
.nav ul{ list-style:none; display:flex; gap:26px; margin:0; padding:0; align-items:center; font-size:16px; font-weight:500 }
.nav a[aria-current="page"]{ text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:1.5px }
.btn{ display:inline-block; background:var(--blue); color:var(--navy); padding:11px 20px; font-size:17px; text-decoration:none; border:0 }
.btn:hover{ background:var(--navy); color:#fff }
.btn.ghost{ background:transparent; border:1.5px solid var(--ink); color:var(--ink) } .btn.ghost:hover{ background:var(--ink); color:#fff }
section{ padding:56px 40px; border-bottom:1.5px solid var(--rule) }
.hero{ display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:center; padding:64px 40px; border-bottom:1.5px solid var(--rule) }
h1{ font-size:clamp(44px,6vw,76px); line-height:.95; margin:0 0 18px; letter-spacing:-.01em }
h2{ font-size:38px; line-height:1; margin:0 0 20px } h3{ font-size:22px; margin:0 0 6px }
p{ max-width:62ch; margin:0 0 14px } .full p{ max-width:none } .lede{ font-size:21px; color:var(--soft) } .k{ color:var(--pencil); font-size:14px }
a{ color:inherit }
.credit{ font-size:12px; color:var(--pencil); margin:8px 0 0; text-align:right } .credit a{ color:inherit }
.ctas{ display:flex; gap:12px; flex-wrap:wrap; margin-top:26px }
.photo{ display:block; width:100%; aspect-ratio:4/5; object-fit:cover; background:var(--sky); border:1.5px solid var(--rule) }
.photo.wide{ aspect-ratio:16/9 } .photo.sq{ aspect-ratio:1 } .photo.cover{ aspect-ratio:auto; height:auto; object-fit:contain; background:#fff; border:0 }
.three{ display:grid; grid-template-columns:repeat(3,1fr); gap:32px } .two{ display:grid; grid-template-columns:1fr 1fr; gap:32px }
.list{ list-style:none; margin:0; padding:0 } .list li{ padding:14px 0; border-bottom:1px solid #ddd; display:grid; grid-template-columns:150px 1fr; gap:16px } .list li:last-child{ border-bottom:0 }
.list a{ text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px }
.logos{ display:flex; gap:28px; flex-wrap:wrap; align-items:center; font-family:"Archivo Narrow","Arial Narrow",sans-serif; font-weight:700; font-size:20px; color:var(--soft); letter-spacing:.02em }
.press{ display:grid; grid-template-columns:200px 1fr; gap:28px; align-items:start; padding:26px 0; border-bottom:1px solid #ddd } .press:last-child{ border-bottom:0 }
.press h3{ font-size:26px; line-height:1.1 } .press a{ text-decoration:none } .press a:hover{ text-decoration:underline }
.split{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start }
.topic{ padding:22px 0; border-top:1.5px solid var(--rule) } .topic:last-child{ border-bottom:1.5px solid var(--rule) }
.video{ aspect-ratio:16/9; width:100%; border:0; display:block; background:var(--sky) }
footer{ padding:40px; display:grid; grid-template-columns:1.8fr .8fr .8fr 1.5fr; gap:28px; font-size:15px }
footer h4{ margin:0 0 8px; font-size:13px; text-transform:uppercase; letter-spacing:.08em; color:var(--pencil) } footer a{ display:block; text-decoration:none; padding:2px 0 } footer a:hover{ text-decoration:underline }
.disc{ grid-column:1/-1; font-size:11px; color:var(--pencil); border-top:1px solid #ddd; padding-top:14px; max-width:none }
@media (max-width:820px){ .hero,.split,.two,.three{ grid-template-columns:1fr } footer{ grid-template-columns:1fr } .nav ul{ gap:14px; font-size:14px } section,.hero,.nav,footer{ padding-left:20px; padding-right:20px } .list li,.press{ grid-template-columns:1fr } }
