:root{--blue:#0D3B66;--blue-d:#092b4c;--cream:#F5EFE0;--cream-d:#EAE1CB;--olive:#7a8450;--gold:#b89b5e;--ink:#17222e}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter','Helvetica Neue',Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.65;font-size:17px;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Cormorant Garamond','EB Garamond',Georgia,serif;font-weight:600;line-height:1.12;color:var(--blue)}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 32px}
.narrow{max-width:760px}
/* nav */
header.nav{background:var(--blue);color:var(--cream);position:relative;z-index:5}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:78px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.brand img{height:50px;width:auto}
.brand span{font-family:'Cormorant Garamond',serif;font-size:27px;letter-spacing:.18em;font-weight:600;text-transform:uppercase}
nav ul{display:flex;gap:34px;list-style:none;align-items:center}
nav a{text-decoration:none;font-size:14px;letter-spacing:.12em;text-transform:uppercase;opacity:.85;padding-bottom:4px;border-bottom:1px solid transparent}
nav a:hover,nav a.active{opacity:1;border-color:var(--gold)}
nav a.btn-s{border:1px solid var(--gold);padding:9px 18px;border-radius:2px;opacity:1}
/* hero */
.hero{background:radial-gradient(circle at 78% 40%,#17507f 0,var(--blue) 55%,var(--blue-d) 100%);color:var(--cream);padding:96px 0 110px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.eyebrow{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:22px;font-weight:500}
.hero h1{color:var(--cream);font-size:76px;letter-spacing:.01em;margin-bottom:10px}
.hero .phon{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:24px;color:var(--gold);margin-bottom:28px}
.hero blockquote{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1.35;font-weight:500;border-left:2px solid var(--gold);padding-left:26px;margin-bottom:34px;color:#fbf6e9}
.hero p.lead{opacity:.88;max-width:520px;margin-bottom:36px}
.hero .art{display:flex;justify-content:center}
.hero .art img{width:100%;max-width:380px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.35))}
.btn{display:inline-block;background:var(--cream);color:var(--blue);padding:15px 30px;text-decoration:none;font-size:14px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;border-radius:2px;transition:.2s}
.btn:hover{background:#fff}
.btn.ghost{background:transparent;color:var(--cream);border:1px solid var(--gold);margin-left:14px}
.btn.dark{background:var(--blue);color:var(--cream)}
.col-bg{position:absolute;right:-60px;bottom:-40px;opacity:.05;width:420px}
/* sections */
section{padding:92px 0}
.title{text-align:center;margin-bottom:56px}
.title h2{font-size:46px}
.sprig{display:block;margin:18px auto 0;width:150px;height:28px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.card{background:#fbf8ef;border:1px solid var(--cream-d);padding:40px 34px;border-radius:3px;position:relative;transition:.25s;box-shadow:0 1px 0 rgba(13,59,102,.04)}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -20px rgba(13,59,102,.4)}
.card .ic{width:54px;height:54px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.card .ic svg{width:28px;height:28px;stroke:var(--cream);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:30px;margin-bottom:12px}
.card p{font-size:16px;color:#3a4a5a}
.story{background:var(--blue);color:var(--cream)}
.story .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.story h2{color:var(--cream);font-size:50px;margin-bottom:24px}
.story p{opacity:.9;margin-bottom:18px}
.story .years{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(184,155,94,.6)}
.story .years div{padding:26px 18px 0 0}
.story .years b{display:block;font-family:'Cormorant Garamond',serif;font-size:44px;color:var(--gold);font-weight:600;line-height:1}
.story .years span{font-size:14px;opacity:.85;display:block;margin-top:8px;line-height:1.5}
.link{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px;font-size:14px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.cta{text-align:center;background:linear-gradient(var(--cream),var(--cream-d))}
.cta h2{font-size:48px;margin-bottom:16px}
.cta p{max-width:600px;margin:0 auto 32px;color:#3a4a5a}
.ph{display:block;margin-top:18px;font-size:13px;color:#6b7785}
.ph em{background:rgba(184,155,94,.25);padding:2px 8px;border-radius:2px;font-style:normal}
footer{background:var(--blue-d);color:var(--cream);padding:48px 0 36px;font-size:14px}
footer .wrap{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;flex-wrap:wrap}
footer .fl{display:flex;align-items:center;gap:14px}
footer .fl img{height:44px}
footer small{opacity:.7;display:block;margin-top:4px}
.mock{width:100%;text-align:center;border-top:1px solid rgba(245,239,224,.14);padding-top:22px;margin-top:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.5}
/* about */
.page-hero{background:var(--blue);color:var(--cream);padding:90px 0 80px;text-align:center}
.page-hero h1{color:var(--cream);font-size:68px;margin-bottom:18px}
.page-hero p{max-width:680px;margin:0 auto;opacity:.88;font-size:19px}
.def{background:var(--cream-d);padding:70px 0;text-align:center}
.def blockquote{font-family:'Cormorant Garamond',serif;font-size:36px;line-height:1.35;color:var(--blue);font-weight:500;max-width:880px;margin:0 auto}
.def cite{display:block;margin-top:18px;font-style:normal;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#7b6a3c}
.timeline{position:relative;max-width:820px;margin:0 auto}
.timeline:before{content:'';position:absolute;left:92px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--gold),var(--blue))}
.tl{display:grid;grid-template-columns:92px 1fr;gap:0;margin-bottom:54px;position:relative}
.tl:last-child{margin-bottom:0}
.tl .yr{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:600;color:var(--blue);line-height:1}
.tl:before{content:'';position:absolute;left:86px;top:10px;width:14px;height:14px;border-radius:50%;background:var(--cream);border:3px solid var(--blue)}
.tl .body{padding-left:48px}
.tl h3{font-size:30px;margin-bottom:10px}
.tl p{color:#34475a}
.paper{background:#fbf8ef;border:1px solid var(--cream-d);border-left:4px solid var(--gold);padding:22px 26px;margin-top:20px;border-radius:2px;font-size:15px}
.paper b{line-height:1.3;font-family:'Cormorant Garamond',serif;font-size:21px;color:var(--blue);display:block;margin-bottom:4px}
.fw{background:var(--blue);color:var(--cream);text-align:center}
.fw h2{color:var(--cream);font-size:44px;margin-bottom:22px}
.fw p{max-width:700px;margin:0 auto 14px;opacity:.9;font-size:19px}
.led{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:900px;margin:0 auto}
.led .card{text-align:left}
@media(max-width:900px){
 body{font-size:16px}
 .wrap{padding:0 22px}
 header.nav .wrap{height:auto;padding:14px 22px;flex-direction:column;gap:12px}
 nav ul{gap:18px;flex-wrap:wrap;justify-content:center}
 .brand img{height:40px}.brand span{font-size:22px}
 .hero{padding:56px 0 64px}.hero .wrap,.story .wrap{grid-template-columns:1fr;gap:36px}
 .hero h1{font-size:52px}.hero blockquote{font-size:24px}
 .hero .art{order:-1}.hero .art img{max-width:220px}
 .btn.ghost{margin-left:0;margin-top:12px}
 section{padding:60px 0}.title h2,.story h2,.cta h2,.fw h2{font-size:36px}
 .cards,.led{grid-template-columns:1fr}
 .story .years{grid-template-columns:1fr 1fr 1fr}.story .years b{font-size:34px}
 .page-hero h1{font-size:46px}.def blockquote{font-size:26px}
 .timeline:before{left:6px}.tl{grid-template-columns:1fr}.tl:before{left:0}.tl .body{padding-left:34px}.tl .yr{padding-left:34px;margin-bottom:8px;font-size:34px}
 footer .wrap{flex-direction:column}
}
