@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,400&family=DM+Sans:wght@300;400;500&display=swap');

:root{
  --ink:#211e1b;
  --paper:#fbfaf7;
  --white:#fff;
  --line:#e2ded8;
  --muted:#8a837c;
  --muted-2:#746e68;
  --blue:#315873;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* header + nav, shared on every page */
.top{height:145px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);background:#fff}
.brand{text-align:center}
.brand strong{display:block;margin-left:.32em;font-size:22px;font-weight:400;letter-spacing:.32em}
.brand span{display:block;margin-top:9px;font-size:7px;letter-spacing:.3em;color:var(--muted)}

.mainnav{display:flex;align-items:center;justify-content:center;gap:46px;height:64px;border-bottom:1px solid var(--line);background:#fff}
.mainnav a{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2);padding:4px 0;border-bottom:1px solid transparent}
.mainnav a:hover{color:var(--ink)}
.mainnav a.active{color:var(--ink);border-bottom-color:var(--ink)}

/* shared section scaffolding */
.section-label,.eyebrow{color:var(--muted);font-size:9px;letter-spacing:.22em;text-transform:uppercase}
.wrap{width:min(1180px,calc(100% - 64px));margin:0 auto}

h1,h2,h3{font-family:'DM Sans',Arial,sans-serif;font-weight:300;letter-spacing:-.02em;margin:0;color:var(--ink)}
h1{font-size:clamp(46px,5.4vw,74px);line-height:.98}
h2{font-size:clamp(30px,3.2vw,42px);line-height:1.04}
p{font-size:14px;line-height:1.85;color:var(--muted-2);margin:0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:46px;padding:0 26px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:10px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.btn:hover{background:var(--ink);color:#fff}
.btn-fill{background:var(--ink);color:#fff}
.btn-fill:hover{background:#000}
.text-link{font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:2px}

/* simple footer, shared */
.simple-footer{border-top:1px solid var(--line);padding:54px 0 28px}
.simple-footer .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.simple-footer .f-brand strong{font-size:16px;letter-spacing:.1em}
.simple-footer .f-nav{display:flex;gap:28px}
.simple-footer .f-nav a{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.simple-footer .f-nav a:hover{color:var(--ink)}
.simple-footer .f-bottom{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

@media(max-width:820px){
  .mainnav{gap:26px;height:56px}
  .mainnav a{font-size:9px}
}
@media(max-width:650px){
  .top{height:120px}
  .brand strong{font-size:19px}
  .mainnav{gap:16px}
  .mainnav a{font-size:8px;letter-spacing:.14em}
  .simple-footer .wrap{flex-direction:column;align-items:flex-start}
}
