:root{
  --paper:#F6F4EE;
  --paper-2:#EFEBE0;
  --ink:#0E0F12;
  --ink-2:#2A2C31;
  --mute:#6F7079;
  --rule:#D6D3C7;
  --rule-2:#C0BCAE;
  --blue:#1E4FFF;
  --blue-ink:#0C2AA8;
  --blue-wash:#E8EDFF;
  --mint:#D7E6CF;
  --mint-ink:#1B3A26;
  --amber-wash:#FBF2D8;
  --amber-rule:#E8C766;
  --amber-ink:#6E4F0F;
  --rose-ink:#A23434;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11"}
body{overflow-x:hidden;line-height:1.55}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}

.display{font-family:'Fraunces',Georgia,serif;font-weight:300;letter-spacing:-0.025em;line-height:0.98}
.ui{font-family:'Inter Tight',sans-serif;letter-spacing:-0.02em;font-weight:500;line-height:1.05}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--mute)}

.container{max-width:780px;margin:0 auto;padding:0 28px}

/* nav */
header.nav{position:sticky;top:0;z-index:50;background:rgba(246,244,238,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--rule)}
header.nav .row{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
header.nav .brand{display:flex;align-items:center}
header.nav .brand img{height:28px;width:auto;display:block}
header.nav .back{font-size:13px;color:var(--mute);transition:color .15s}
header.nav .back:hover{color:var(--ink)}

/* hero */
.hero{padding:72px 0 36px}
.hero .kicker{display:block;margin-bottom:18px}
.hero h1{font-family:'Fraunces',Georgia,serif;font-weight:300;letter-spacing:-0.028em;line-height:1;font-size:clamp(40px,6.5vw,68px);margin:0 0 18px}
.hero .meta{font-size:14px;color:var(--mute)}

/* draft callout */
.callout{margin:32px 0;padding:18px 20px;border:1px solid var(--amber-rule);background:var(--amber-wash);border-radius:6px;color:var(--amber-ink);font-size:14.5px;line-height:1.55}
.callout strong{color:var(--amber-ink);font-weight:600}

/* article */
article{padding:24px 0 80px}
article section{padding:36px 0;border-top:1px solid var(--rule)}
article section:first-child{border-top:none;padding-top:8px}
article h2{font-family:'Fraunces',Georgia,serif;font-weight:300;letter-spacing:-0.02em;font-size:30px;line-height:1.1;margin:0 0 18px;color:var(--ink)}
article h3{font-family:'Inter Tight',sans-serif;font-weight:600;letter-spacing:-0.01em;font-size:16px;line-height:1.3;margin:24px 0 10px;color:var(--ink)}
article p{font-size:16px;color:var(--ink-2);margin:0 0 14px;line-height:1.65}
article a.link{color:var(--blue-ink);border-bottom:1px solid rgba(30,79,255,.35);transition:border-color .15s}
article a.link:hover{border-color:var(--blue-ink)}
article ul{list-style:none;padding:0;margin:14px 0}
article ul li{position:relative;padding-left:22px;margin:8px 0;font-size:16px;color:var(--ink-2);line-height:1.6}
article ul li::before{content:"";position:absolute;left:6px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--ink-2)}
article ul.muted li::before{background:var(--mute)}
article ul.danger li::before{background:var(--rose-ink)}
article strong{font-weight:600;color:var(--ink)}
article .num{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;letter-spacing:0.08em;color:var(--mute);text-transform:uppercase;display:inline-block;margin-bottom:8px}

/* contact box */
.contact-box{margin:18px 0;padding:18px 22px;border:1px solid var(--rule);background:var(--paper-2);border-radius:6px}
.contact-box a{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:14px;color:var(--blue-ink);font-weight:500;letter-spacing:0.02em}

/* definitions */
dl.defs{margin:14px 0;padding:0}
dl.defs > div{padding:14px 0;border-top:1px dashed var(--rule)}
dl.defs > div:first-child{border-top:none}
dl.defs dt{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:14px;color:var(--ink);margin-bottom:4px}
dl.defs dd{margin:0;font-size:15.5px;color:var(--ink-2);line-height:1.6}

/* tables */
.table-wrap{margin:18px 0;overflow-x:auto;border:1px solid var(--rule);border-radius:6px;background:var(--paper)}
table.legal{width:100%;border-collapse:collapse;font-size:14.5px}
table.legal thead th{text-align:left;background:var(--paper-2);padding:12px 14px;font-family:'Inter Tight',sans-serif;font-weight:600;color:var(--ink);font-size:13px;letter-spacing:-0.005em;border-bottom:1px solid var(--rule)}
table.legal tbody td{padding:12px 14px;color:var(--ink-2);vertical-align:top;border-bottom:1px solid var(--rule)}
table.legal tbody tr:last-child td{border-bottom:none}
table.legal tbody td:first-child{font-weight:500;color:var(--ink)}

/* highlight box */
.highlight{margin:18px 0;padding:18px 22px;border:1px solid var(--mint);background:var(--mint);border-radius:6px;color:var(--mint-ink)}
.highlight strong{display:block;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:14px;margin-bottom:4px;color:var(--mint-ink)}
.highlight p{margin:0;color:var(--mint-ink);font-size:14.5px}

/* footer */
footer.site{border-top:1px solid var(--rule);padding:36px 0 60px;margin-top:60px;background:var(--paper-2)}
footer.site .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
footer.site .copyright{font-size:13px;color:var(--mute)}
footer.site nav{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px}
footer.site nav a{color:var(--ink-2);transition:color .15s}
footer.site nav a:hover{color:var(--blue-ink)}
footer.site nav a[aria-current="page"]{color:var(--blue-ink);font-weight:500}

@media (max-width:560px){
  .hero{padding:48px 0 24px}
  article section{padding:28px 0}
  article h2{font-size:24px}
  footer.site .row{flex-direction:column;align-items:flex-start}
}
