@font-face{font-family:"Cormorant";src:url("fonts/cormorant.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Cormorant";src:url("fonts/cormorant-italic.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"InterN";src:url("fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}

:root{
  --noir:#141210;--ivory:#F5EFE4;--gold:#C8A96A;--espresso:#3B2A20;--cream:#EBE1CF;
  --serif:"Cormorant","Cormorant Garamond",Georgia,serif;
  --sans:"InterN","Inter",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--noir);color:var(--ivory);
  font-family:var(--sans);font-weight:300;font-size:16px;line-height:1.65;
  letter-spacing:.01em;-webkit-font-smoothing:antialiased;
  min-height:100vh;display:flex;flex-direction:column;align-items:center;
}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;z-index:9;background:var(--ivory);color:var(--noir);padding:8px 12px}
.site-header{padding:28px 24px 4px;text-align:center}
.mono{width:56px;height:56px;display:block;margin:0 auto}
main{width:100%;max-width:560px;padding:12px 24px 64px;text-align:center}
.eyebrow{
  font-family:var(--sans);font-weight:500;font-size:11px;letter-spacing:.36em;
  text-transform:uppercase;color:var(--gold);margin:24px 0 0;
}
.wm{
  font-family:var(--serif);font-weight:500;font-size:clamp(40px,11vw,64px);
  letter-spacing:.28em;padding-left:.28em;line-height:1;margin:20px 0 0;color:var(--ivory);
}
.wm .dot{color:var(--gold)}
.tag{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--gold);margin:16px 0 0}
.hed{font-family:var(--serif);font-weight:400;font-style:italic;font-size:clamp(28px,7vw,40px);line-height:1.15;margin:28px 0 0}
.lead{margin:18px 0 0;color:var(--cream);font-size:15.5px}
form,.thanks{margin:36px 0 0;text-align:left}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.field-label{
  display:block;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;margin-bottom:8px;
}
input[type=email]{
  width:100%;min-height:52px;padding:0 16px;border:1px solid rgba(245,239,228,.28);
  background:transparent;color:var(--ivory);font:400 16px/1 var(--sans);
  border-radius:0;
}
input[type=email]::placeholder{color:rgba(245,239,228,.4)}
input[type=email]:focus{outline:1px solid var(--gold);outline-offset:2px;border-color:var(--gold)}
.pref{border:0;padding:0;margin:22px 0 0}
.pref legend{font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;margin-bottom:10px}
.pref .opt{letter-spacing:.08em;text-transform:none;font-weight:300;opacity:.7}
.pref-row{display:flex;gap:8px;flex-wrap:wrap}
.chip{
  flex:1;min-width:88px;min-height:44px;display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(245,239,228,.28);font-size:14px;cursor:pointer;padding:8px 10px;
}
.chip input{appearance:none;position:absolute;opacity:0;pointer-events:none}
.chip:has(input:checked){border-color:var(--gold);color:var(--gold)}
.chip:has(input:focus-visible){outline:1px solid var(--gold);outline-offset:2px}
button[type=submit]{
  width:100%;min-height:52px;margin-top:24px;border:1px solid var(--ivory);
  background:var(--ivory);color:var(--noir);
  font:500 11px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;
  cursor:pointer;transition:background .2s,color .2s;
}
button[type=submit]:hover{background:var(--gold);border-color:var(--gold);color:var(--noir)}
button[type=submit]:disabled{opacity:.55;cursor:wait}
button[type=submit]:focus-visible{outline:1px solid var(--gold);outline-offset:3px}
.status{min-height:1.4em;margin:14px 0 0;font-size:14px;color:#E8B4B4}
.status.ok{color:var(--gold)}
.thanks{text-align:center;padding:8px 0 0}
.thanks-hed{font-family:var(--serif);font-style:italic;font-size:32px;margin:0 0 12px}
.privacy-note{margin:28px 0 0;font-size:12px;line-height:1.6;color:rgba(245,239,228,.72);text-align:center}
.privacy-note a{color:var(--ivory);text-decoration:underline;text-underline-offset:2px}
.handle{letter-spacing:.04em}
footer{padding:12px 24px 28px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,239,228,.45);text-align:center}
.privacy{width:100%;max-width:560px;padding:48px 24px 80px;border-top:1px solid rgba(245,239,228,.12);font-size:14px;color:rgba(245,239,228,.8)}
.privacy h2{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--ivory);margin:0 0 16px}
:focus-visible{outline:1px solid var(--gold);outline-offset:3px}
@media (min-width:800px){
  .site-header{padding-top:36px}
  main{padding-top:20px}
  .lead{font-size:16px}
}
