/* Design tokens and the parts every page shares. */
@font-face{font-family:"Young Serif";font-weight:400;font-style:normal;font-display:swap;src:url(/vendor/fonts/young-serif-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Rubik";font-weight:400;font-style:normal;font-display:swap;src:url(/vendor/fonts/rubik-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Rubik";font-weight:500;font-style:normal;font-display:swap;src:url(/vendor/fonts/rubik-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Rubik";font-weight:700;font-style:normal;font-display:swap;src:url(/vendor/fonts/rubik-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Rubik";font-weight:800;font-style:normal;font-display:swap;src:url(/vendor/fonts/rubik-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Courier Prime";font-weight:700;font-style:normal;font-display:swap;src:url(/vendor/fonts/courier-prime-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Patrick Hand";font-weight:400;font-style:normal;font-display:swap;src:url(/vendor/fonts/patrick-hand-latin-400-normal.woff2) format("woff2")}
:root{
  --night:#13233a;
  --night-deep:#0b1626;
  --brass:#c99a3e;
  --brass-light:#ecc976;
  --brass-dark:#7f5a1c;
  --lingon:#b7283e;
  --pointer:#e0304a;
  --ink:#2a1d14;
  --frost:#a9c6d6;
  --text:#f3eee6;
  --text-dim:#b9c3cf;
  --muted:#8e9db0;
  --ok:#7fc8a0;
  --radius-lg:22px;
  --radius-sm:10px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body{
  min-height:100vh;
  background:radial-gradient(120% 80% at 50% -10%, #20375a 0%, var(--night) 45%, var(--night-deep) 100%);
  background-color:var(--night-deep);
  color:var(--text);
  font-family:"Rubik",system-ui,sans-serif;
  font-size:17px;line-height:1.5;
  -webkit-tap-highlight-color:transparent;
  overflow-x:hidden;
}
#snow{position:fixed;inset:0;pointer-events:none;z-index:0}
.treeline{overflow:hidden;position:fixed;left:0;right:0;bottom:0;height:90px;z-index:0;pointer-events:none;opacity:.55}
.treeline svg{width:100%;height:100%;display:block}
.iconbtn{appearance:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:var(--text);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;flex:none}
.iconbtn svg{width:18px;height:18px}
a.iconbtn{text-decoration:none}
.btn{appearance:none;font:inherit;font-size:15px;font-weight:500;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:var(--text);border-radius:999px;padding:8px 14px;cursor:pointer}
.btn:active{transform:translateY(1px)}
.cta{appearance:none;border:0;font:inherit;font-weight:700;font-size:18px;padding:14px 26px;border-radius:14px;cursor:pointer;background:linear-gradient(180deg,var(--brass-light),var(--brass));color:var(--ink);box-shadow:inset 0 -3px 0 var(--brass-dark),0 10px 24px rgba(201,154,62,.3);min-width:220px}
.cta:active{transform:translateY(1px)}
a.cta{display:inline-block;text-decoration:none;text-align:center}
button:focus-visible,a:focus-visible{outline:3px solid var(--brass-light);outline-offset:2px}
