:root{color-scheme:light;--brand:#ef0c1f;--ink:#1c1c22;--muted:#6b6b76}
*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid currentColor;outline-offset:5px}.skip-link{position:absolute;left:16px;top:-100px;background:#fff;padding:10px;z-index:2}.skip-link:focus{top:16px}.hero{flex:1;min-height:60vh;display:grid;place-items:center;background:var(--brand);padding:48px 24px}.wordmark{margin:0;color:white;font-size:clamp(50px,9vw,108px);line-height:1.15;letter-spacing:-.055em;font-weight:850;text-align:center}footer{background:#0d0d0f;color:#d6d6de;padding:48px 32px}.footer-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}footer h2{margin:0 0 16px;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:2px}footer p{font-size:15px;margin:8px 0;max-width:32ch}footer a{color:#d6d6de}.footer-brand{display:inline-block;margin-bottom:12px;color:white;font-size:27px;font-weight:800;letter-spacing:-1px}.footer-inner>div:first-child p{color:#9a9aa6}.site-header{background:var(--brand);padding:18px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.site-header .brand{font-size:26px;font-weight:800;color:#fff;letter-spacing:-1px}.site-header nav{display:flex;gap:24px;font-size:14px}.site-header a{color:white}.wrap{width:100%;max-width:768px;margin-inline:auto;padding-inline:24px}.policy-heading{padding-top:48px}.policy-heading h1{margin:0 0 10px;font-size:42px;letter-spacing:-1px;line-height:1.2}.subtle{color:var(--muted);font-size:14px}.draft-note{font-size:14px;padding:12px 16px;background:#fff4db;border-left:3px solid #946814}.policy-body{padding-block:8px 48px}.policy-body h2{font-size:24px;line-height:1.3;margin:36px 0 12px}.policy-body h3{font-size:18px;margin:24px 0 8px}.policy-body p{margin:12px 0}.policy-body ul{padding-left:24px}.policy-body li{margin:8px 0}.policy-body a{overflow-wrap:anywhere}.button{display:inline-block;padding:10px 0}.site-footer{font-size:14px}.site-footer a{margin-left:24px}
@media(max-width:720px){.footer-inner{grid-template-columns:1fr;gap:28px}footer{padding:36px 24px}.hero{min-height:56vh}.site-header{padding:16px 24px}.policy-heading{padding-top:32px}.policy-heading h1{font-size:34px}.policy-body h2{font-size:22px}}

/* Homepage layout follows the supplied Loom Games reference. */
.hero{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px}.wordmark{font-size:inherit;line-height:0;letter-spacing:normal}.hero-logo{display:block;width:min(380px,70vw);height:auto}.hero-buttons{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:40px}.store-badge{display:inline-flex}.badge-apple,.badge-google{height:54px;width:auto}.li-badge{display:inline-flex;align-items:center;gap:11px;height:54px;padding:0 17px;background:#000;border:1px solid #a6a6a6;border-radius:13px;color:#fff}.li-badge svg{width:28px;height:28px}.li-text{display:flex;flex-direction:column;line-height:1.15;text-align:left}.li-top{font-size:11px;letter-spacing:.02em}.li-bottom{font-size:21px;font-weight:600;letter-spacing:-.01em}footer{padding:clamp(40px,6vw,64px) clamp(20px,5vw,48px)}.footer-brand{margin:0 0 16px;font-size:inherit;line-height:0;letter-spacing:normal}.footer-brand img{display:block;height:auto}.footer-inner{gap:40px}footer h2{font-weight:600;letter-spacing:.12em}.footer-inner>div:first-child p{max-width:32ch}footer p{font-size:15.2px}@media(max-width:720px){.hero{min-height:400px}.hero-buttons{gap:12px}.badge-apple,.badge-google,.li-badge{height:48px}.li-badge{padding-inline:13px}.li-bottom{font-size:19px}}

.site-header .brand img{display:block;height:auto}

.hero-buttons[hidden]{display:none}

/* Responsive layout and accessible navigation. */
:root { --gutter: clamp(16px, 4vw, 48px); }
img { max-width: 100%; height: auto; }
main, .footer-inner > div { min-width: 0; }
.hero {
  min-height: clamp(260px, 55svh, 520px);
  padding: 32px var(--gutter);
}
.wordmark { width: min(380px, 70vw); max-width: 100%; }
.hero-logo { width: 100%; }
.site-header {
  width: 100%;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding: 12px max(var(--gutter), env(safe-area-inset-right)) 12px max(var(--gutter), env(safe-area-inset-left));
}
.site-header .brand { flex: 0 0 auto; }
.site-header nav { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.site-header nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: 44px;
  min-height: 44px;
  padding: 4px 8px;
  white-space: nowrap;
}
footer {
  padding: 40px max(var(--gutter), env(safe-area-inset-right)) max(40px, env(safe-area-inset-bottom)) max(var(--gutter), env(safe-area-inset-left));
}
.footer-inner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
.footer-inner p { margin: 0; overflow-wrap: anywhere; }
.footer-inner h2 { margin-bottom: 8px; }
.footer-inner a:not(.footer-brand), .site-footer a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.footer-brand { margin-bottom: 16px; }
.wrap { padding-inline: max(20px, env(safe-area-inset-left)) max(20px, env(safe-area-inset-right)); }
.policy-heading { padding-top: clamp(28px, 5vw, 48px); }
.policy-heading h1 { font-size: clamp(32px, 4.5vw, 42px); overflow-wrap: anywhere; }
.policy-body h2, .policy-body h3 { overflow-wrap: anywhere; }
.site-footer { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; }
.site-footer a { margin-left: 0; }
a:active { opacity: .8; }
@media (max-width: 359px) {
  .site-header .brand img { width: 100px; }
  .site-header nav { gap: 0; }
}
@media (min-width: 600px) and (max-width: 959px) {
  .footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-inner > div:first-child { grid-column: 1 / -1; }
}
@media (min-width: 960px) {
  .footer-inner { grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr)); gap: 40px; }
  footer { padding-block: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
