:root{--bg:#FAFAF7;--ink:#1B1F1D;--body:#3D4440;--muted:#5A625E;--rule:#DCDDD7;--forest:#1F2A25;--gold:#D9A441;--sand:#F0EFE9;--band-text:#F1F1EC;--band-muted:#C9CCC5;--band-rule:#4A5650;--serif:"Instrument Serif",Georgia,serif;--sans:Inter,system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--body);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1120px;margin:0 auto;padding-left:40px;padding-right:40px}
a{color:inherit}
h1,h2{font-family:var(--serif);font-weight:400;color:var(--ink);margin:0}
h1{font-size:clamp(46px,7vw,84px);line-height:1.04;letter-spacing:-.01em;max-width:900px;text-wrap:balance}
h2{font-size:clamp(34px,4vw,44px);line-height:1.1}
h3{font-size:19px;font-weight:600;color:var(--ink);margin:0 0 10px;line-height:1.4}
p{margin:0}
hr{border:0;border-top:1px solid var(--rule);margin:0}

.header{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding-top:28px;padding-bottom:28px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-family:var(--serif);font-size:26px;line-height:1.1}
nav{display:flex;flex-wrap:wrap;gap:28px;font-size:15px}
nav a{text-decoration:none;color:var(--body)}
nav a:hover{color:var(--ink);text-decoration:underline}

.hero{padding-top:112px;padding-bottom:112px}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}
.lead{font-size:clamp(18px,1.6vw,20px);line-height:1.55;color:var(--body);max-width:680px;margin-top:36px;text-wrap:pretty}
.lead.dark{color:var(--ink);margin-top:0;max-width:none}
.button{display:inline-block;margin-top:44px;padding:15px 26px;background:var(--ink);color:var(--bg);text-decoration:none;font-size:15px;font-weight:500;border-radius:2px;transition:opacity .2s}
.button:hover{opacity:.86}

.split{display:flex;flex-wrap:wrap;gap:48px;padding-top:104px;padding-bottom:104px}
.split>h2{flex:1 1 260px;max-width:260px}
.cards{flex:999 1 560px;min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:48px 56px}
.cards.three{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:40px}
.cards p{text-wrap:pretty}
.num{font-family:var(--serif);font-size:20px;color:var(--gold);margin-bottom:6px}

.band{background:var(--forest);color:var(--band-text);padding:112px 0}
.statement{font-family:var(--serif);font-size:clamp(32px,4.4vw,52px);line-height:1.18;max-width:900px;text-wrap:balance}
.stats{margin-top:72px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:40px}
.stats>div{border-top:1px solid var(--band-rule);padding-top:18px}
.stat{font-family:var(--serif);font-size:48px;line-height:1;color:var(--gold);margin-bottom:10px;font-variant-numeric:tabular-nums}
.markets{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.markets .stat{font-size:32px;line-height:1.1}
.stats p:not(.stat){font-size:15px;line-height:1.5;color:var(--band-muted)}

.about{display:flex;flex-wrap:wrap;gap:64px;align-items:flex-start;padding-top:112px;padding-bottom:112px}
.photo{flex:0 1 360px;aspect-ratio:4/5;background:#E6E6E0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;overflow:hidden}
.photo img{width:100%;height:100%;object-fit:cover;display:block}
.about-copy{flex:999 1 480px;min-width:0;display:flex;flex-direction:column;gap:20px}
.small{font-size:14px;color:var(--muted);margin-top:12px}

.contact{background:var(--sand);padding:112px 0}
.contact-row{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-end;justify-content:space-between}
.contact-row h2{flex:1 1 520px;max-width:640px;font-size:clamp(38px,5vw,60px);line-height:1.08;text-wrap:balance}
.contact-details{flex:0 1 320px;display:flex;flex-direction:column;gap:6px;font-size:18px;color:var(--ink)}
.contact-details a.plain{text-decoration:none}
.contact-details span{color:var(--muted)}

.footer{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;padding-top:32px;padding-bottom:48px;font-size:13px;color:var(--muted)}

@media (max-width:900px){
  .split>h2{flex-basis:100%;max-width:none}
  .about,.contact-row{flex-direction:column;align-items:flex-start}
  .photo{flex:none;width:100%;max-width:420px}
  .contact-details,.contact-row h2,.about-copy{flex:none}
  .about-copy{width:100%}
}
@media (max-width:560px){
  .wrap{padding-left:20px;padding-right:20px}
  .header{padding-top:20px;padding-bottom:20px}
  nav{gap:20px}
  .hero,.split,.about{padding-top:72px;padding-bottom:72px}
  .band,.contact{padding:72px 0}
  .cards{grid-template-columns:1fr;gap:36px}
  .stats{grid-template-columns:1fr 1fr;gap:32px 24px}
  .markets{grid-template-columns:1fr}
  .footer{flex-direction:column}
}
