@font-face {
  font-family: "Geist";
  src: url("assets/geist-400.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Geist";
  src: url("assets/geist-500.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Handjet";
  src: url("assets/handjet-700-cyrillic.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Handjet";
  src: url("assets/handjet-700-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;
  --purple: #6344cc;
  --ink: #1e1e1e;
  --muted: #898989;
}
* { box-sizing: border-box; }
html, body { margin: 0; background: #fff; }
body { color: var(--ink); font-family: "Geist", sans-serif; -webkit-font-smoothing: antialiased; }
.page { display: flex; flex-direction: column; width: 100%; max-width: 440px; min-height: 100vh; min-height: 100svh; margin-inline: auto; }
.header { display: flex; flex: none; align-items: center; justify-content: center; padding: 20px 16px; padding-top: max(20px, env(safe-area-inset-top)); }
.brand { display: flex; align-items: center; justify-content: center; gap: 5.055px; }
.brand img { display: block; }
.brand-wordmark { display: block; width: 120.578px; height: 19.7984px; mask-image: url("assets/logo-mask.svg"); mask-size: 121.131px 19.8px; mask-repeat: no-repeat; }
.content { display: flex; flex: 1; flex-direction: column; justify-content: flex-end; align-items: stretch; gap: 28px; padding: 16px; padding-bottom: max(16px, env(safe-area-inset-bottom)); }
.hero { display: flex; flex-direction: column; gap: 12px; }
.helper { position: relative; flex: none; width: 70px; height: 70px; overflow: hidden; }
.helper img { position: absolute; top: -26%; left: -26%; width: 152%; height: 152%; }
.copy { display: flex; flex-direction: column; gap: 12px; }
h1, h2, p { margin: 0; overflow-wrap: break-word; }
h1 { color: var(--purple); font-family: "Handjet", sans-serif; font-size: 44px; font-weight: 700; font-variation-settings: "ELGR" 1, "ELSH" 2; line-height: 1; }
.description { color: var(--muted); font-size: 18px; font-weight: 400; line-height: 1.2; letter-spacing: -.36px; }
.notice { display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 9px; background: rgb(99 68 204 / 10%); }
.notice h2 { max-inline-size: 360px; font-size: 18px; font-weight: 500; line-height: 1; letter-spacing: -.36px; }
.notice p { color: var(--muted); font-size: 16px; font-weight: 400; line-height: 1.2; letter-spacing: -.32px; }
.button { display: flex; align-items: center; justify-content: center; padding: 16px 0; border-radius: 9px; background: var(--ink); color: #fff; font-size: 18px; font-weight: 500; line-height: 1; letter-spacing: -.36px; text-align: center; text-decoration: none; }
.button:focus-visible { outline: 3px solid var(--purple); outline-offset: 3px; }
@media (hover: hover) { .button:hover { background: #383838; } }
