@font-face{font-family:"Newsreader";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/newsreader-italic-latin.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/dm-sans-latin.woff2) format("woff2")}

:root{
  --bg:#f3efe5;
  --ink:#1f231d;
  --body:#3b3e37;
  --muted:#6c6e66;
  --line:#dcd7cb;
  --field:#faf8f2;
  --field-line:#ddd8cc;
  --accent:#243a2c;
  --accent-hover:#1a2c20;
  --error:#9a3412;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--body);font-family:var(--serif);font-size:1.1875rem;line-height:1.62;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
.page{max-width:44rem;margin:0 auto;padding:2.5rem 1.25rem 3rem}
.brand{margin-bottom:2.75rem;font-size:1.375rem;line-height:1;color:var(--ink)}
.brand a{text-decoration:none}
h1{margin:0 0 .9rem;font-weight:400;font-size:clamp(2rem,1.3rem + 2.8vw,2.5rem);line-height:1.12;letter-spacing:-.018em;color:var(--ink);text-wrap:pretty}
h1 em{font-style:italic;letter-spacing:-.025em}
.lede{margin:0 0 1.15rem;color:var(--ink);font-size:1.25rem}
p{margin:0 0 1rem}
.prose h2{margin:2rem 0 .5rem;font-weight:400;font-size:1.4rem;color:var(--ink)}
.prose ul{padding-left:1.2rem;margin:0 0 1rem}

.waitlist{margin-top:2.5rem}
.eyebrow{display:block;margin-bottom:.8rem;font-family:var(--sans);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.row{display:flex;gap:.6rem}
.waitlist input[type=email]{flex:1;min-width:0;height:3rem;padding:0 1.15rem;border:1px solid var(--field-line);border-radius:999px;background:var(--field);
  color:var(--ink);font:400 1rem/1 var(--sans);appearance:none}
.waitlist input[type=email]::placeholder{color:#8d8e86}
.waitlist input[type=email]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(36,58,44,.14)}
.waitlist input[aria-invalid=true]{border-color:var(--error)}
.waitlist button{flex:none;height:3rem;padding:0 1.5rem;border:0;border-radius:999px;background:var(--accent);color:#fff;font:500 1rem/1 var(--sans);cursor:pointer;
  transition:background-color .15s ease}
.waitlist button:hover{background:var(--accent-hover)}
.waitlist button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.waitlist button[disabled]{opacity:.65;cursor:progress}
.status{min-height:1.5rem;margin:.75rem 0 0 .25rem;font-family:var(--sans);font-size:.9375rem;line-height:1.5;color:var(--body)}
.status.is-error{color:var(--error)}
.waitlist.is-done .row{display:none}
.waitlist.is-done .status{margin-left:0;font-family:var(--serif);font-size:1.1875rem;color:var(--ink)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.foot{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;margin-top:3.5rem;padding-top:1.25rem;border-top:1px solid var(--line);
  font-family:var(--sans);font-size:.875rem;color:var(--muted)}
.foot span{margin-right:auto}
.foot a,.foot .phc-link{text-decoration:none;color:inherit;opacity:1}
.foot a:hover,.foot .phc-link:hover{text-decoration:underline}
/* ph-consent.js puts its "Cookie settings" link in the footer inside a styled div; line it up with "Privacy" */
.foot>div{margin-top:0!important;font-size:inherit!important}
.foot .phc-link{font-size:inherit}

@media (max-width:30rem){
  body{font-size:1.125rem}
  .page{padding-top:1.75rem}
  .brand{margin-bottom:2rem}
  .row{flex-direction:column}
  .waitlist input[type=email]{flex:none;width:100%}
  .waitlist button{width:100%}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
