@font-face{
  font-family:"Cinzel";
  src:url("fonts/cinzel-latin.woff2") format("woff2");
  font-weight:400 600; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Cormorant";
  src:url("fonts/cormorant-latin.woff2") format("woff2");
  font-weight:300 500; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"Satoshi";
  src:url("Satoshi-Variable.ttf") format("truetype-variations");
  font-weight:300 800; font-style:normal; font-display:swap;
}

:root{
  --bg:#F7F3EE;
  --ink:#1A1714;
  --ink-soft:#6B6259;
  --gold:#8F6733;
  --gold-light:#B08A55;
  --rule:rgba(26,23,20,.12);
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"Satoshi","Segoe UI",system-ui,sans-serif;
  font-size:17px;
  line-height:1.65;
  font-weight:400;
}

.wrap{max-width:64ch;margin:0 auto;padding:clamp(28px,6vw,72px) clamp(20px,5vw,32px) 96px;}

.mast{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  padding-bottom:18px;margin-bottom:clamp(32px,6vw,56px);
  border-bottom:1px solid var(--rule);
}
.mast a.brand{
  font-family:"Cinzel",Georgia,serif;
  font-size:15px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink);text-decoration:none;
}
.mast nav{display:flex;gap:20px;}
.mast nav a{
  font-size:13.5px;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;
  border-bottom:1px solid transparent;padding-bottom:2px;
}
.mast nav a:hover,.mast nav a[aria-current]{color:var(--gold);border-bottom-color:var(--gold-light);}

h1{
  font-family:"Cormorant",Georgia,serif;
  font-weight:400;
  font-size:clamp(34px,6vw,52px);
  line-height:1.08;
  letter-spacing:-.01em;
  margin:0 0 8px;
}
.lede{color:var(--ink-soft);font-size:16px;margin:0 0 clamp(28px,5vw,44px);}

h2{
  font-family:"Cinzel",Georgia,serif;
  font-size:13px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--gold);
  margin:44px 0 10px;
}
h3{font-size:16px;font-weight:600;margin:26px 0 6px;letter-spacing:.005em;}
p{margin:0 0 14px;}
a{color:var(--gold);text-decoration-color:var(--gold-light);text-underline-offset:3px;}
ul{margin:0 0 14px;padding-left:20px;}
li{margin-bottom:6px;}
address{font-style:normal;margin:0 0 14px;}

.todo{
  display:inline-block;
  background:rgba(143,103,51,.10);
  border:1px dashed var(--gold-light);
  color:var(--gold);
  font-size:14px;
  padding:2px 9px;border-radius:2px;
  font-weight:500;
}
.note{
  border-left:2px solid var(--gold-light);
  padding:2px 0 2px 16px;
  color:var(--ink-soft);
  font-size:15px;
  margin:0 0 14px;
}

footer{
  margin-top:72px;padding-top:20px;border-top:1px solid var(--rule);
  font-size:13.5px;color:var(--ink-soft);
  display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between;
}
footer a{color:var(--ink-soft);}

@media (prefers-color-scheme: dark){
  :root{
    --bg:#141210;--ink:#EFE9E1;--ink-soft:#9C9287;
    --gold:#C99C5E;--gold-light:#8C6C3E;--rule:rgba(239,233,225,.14);
  }
}
