@font-face{font-family:Manrope;src:url('/fonts/manrope-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url('/fonts/instrument-serif-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url('/fonts/instrument-serif-latin-400-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{color-scheme:light;--paper:#f7f7f2;--ink:#202b28;--muted:#5d6862;--line:#d9dfd7;--accent:#245b49;font-family:Manrope,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}html{scroll-padding-top:24px}a{color:inherit;text-underline-offset:4px}::selection{color:white;background:var(--accent)}
.site-shell{width:min(100%,1440px);padding:28px 56px 22px;margin:auto}.masthead{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.brand{display:block;width:142px}.brand img{display:block;width:100%;height:auto;mix-blend-mode:multiply}nav{display:flex;gap:27px;font-size:12px;font-weight:600}nav a{text-decoration:none}nav a:hover{text-decoration:underline}
.opening{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,1fr);grid-template-areas:"intro form" "apps form";gap:30px 55px;padding:42px 0 36px;align-items:start}.introduction{grid-area:intro}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin:0 0 16px}h1{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(44px,4.7vw,66px);font-weight:400;line-height:1.02;letter-spacing:-1.7px;margin:0 0 19px}h1 em{color:var(--accent);font-weight:400}.intro{max-width:570px;font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 12px}.intro a{color:var(--ink);font-weight:650}.developer-link{display:inline-block;font-size:11px;color:var(--accent);font-weight:600}.developer-link span{margin-left:4px}
.signup-card{grid-area:form;background:#fff;border:1px solid #cbd5ca;border-radius:12px;padding:27px 26px;box-shadow:0 10px 30px #263a2e05}.card-label{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--accent);font-weight:650;margin:0 0 10px}.signup-card h2{font-family:"Instrument Serif",Georgia,serif;font-size:35px;line-height:1.1;font-weight:400;letter-spacing:-.6px;margin:0 0 12px}.signup-intro{font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 23px}label{display:block;font-size:12px;font-weight:650;margin:0 0 9px}input[type=email]{appearance:none;width:100%;min-height:50px;padding:13px;border:1px solid #9faea1;border-radius:5px;background:white;color:var(--ink);font:inherit;font-size:16px}input::placeholder{color:#7b877f}input[aria-invalid=true]{border-color:#ab3026}.field-hint{font-size:11px;color:var(--muted);line-height:1.65;margin:9px 0 16px}button,.play-link{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:50px;padding:13px 16px;border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:white;font:inherit;font-size:13px;font-weight:650;cursor:pointer;text-decoration:none}button:hover:not(:disabled),.play-link:hover{background:#194634}button:disabled{opacity:.5;cursor:default}button>span{font-size:20px;line-height:1}.consent{font-size:11px;color:var(--muted);line-height:1.7;margin:14px 0 0}.access-note{font-size:11px;line-height:1.7;color:var(--ink);margin:12px 0 0;padding-top:12px;border-top:1px solid #e8ece6}.signup-contact{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:20px;padding-top:17px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--accent)}.form-status{font-size:12px;line-height:1.6;margin:12px 0 0;color:var(--muted)}.form-status:empty{display:none}.form-status.error{color:#ab3026}.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #245b49;outline-offset:4px}
.apps-section{grid-area:apps;min-width:0}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 13px}.section-heading h2{font-size:13px;font-weight:650;margin:0}.section-heading>span{font-size:10px;color:var(--muted)}.app-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app-card{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff}.preview{position:relative;display:block;height:200px;overflow:hidden;background:#e8eddf}.preview img{display:block}.preview-board{display:grid;place-items:center;background:#dce9e1;padding:20px}.preview-board img{width:auto;height:auto;max-width:100%;max-height:176px;border-radius:9px;box-shadow:0 8px 16px #203a2920}.preview-chinese{background:#f0eadb}.preview-chinese img{width:86%;height:auto;margin:16px auto 0;border:1px solid #d7d0c2;border-radius:13px 13px 0 0;box-shadow:0 4px 20px #5e4c2e12}.preview-game img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}.preview:focus-visible{outline-offset:-4px}.app-copy{padding:17px 14px 18px}.app-category{font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted)}.app-copy h3{font-size:15px;line-height:1.4;letter-spacing:-.4px;margin:7px 0 8px;font-weight:650}.app-copy p{font-size:11px;line-height:1.7;color:var(--muted);margin:0 0 16px;min-height:56px}.app-copy>a{font-size:10px;line-height:1.7;color:var(--accent)}.app-copy>a span{white-space:nowrap}.preview-note{font-size:10px;line-height:1.7;color:var(--muted);margin:13px 0 0}
.about-section{display:grid;grid-template-columns:1.7fr 1fr;gap:55px;border-top:1px solid var(--line);padding:28px 0}.about-section .eyebrow{font-size:9px;margin-bottom:10px}.about-section h2{font-size:17px;letter-spacing:-.5px;font-weight:650;margin:0 0 9px}.about-section h2 span{font-size:13px;color:var(--muted);font-weight:400}.about-section p:not(.eyebrow){max-width:540px;font-size:12px;color:var(--muted);line-height:1.8;margin:0}.about-links{display:flex;flex-direction:column;align-items:start;gap:9px;font-size:11px;color:var(--accent);line-height:1.6}.page-footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:17px;font-size:10px;line-height:1.7;color:var(--muted)}
.success h3{font-size:20px;line-height:1.4;margin:5px 0 12px}.success p{font-size:13px;line-height:1.75;color:var(--muted)}.manage-link{display:inline-block;font-size:12px;color:var(--accent);line-height:1.7;margin:8px 0}.play-link{margin:10px 0}.manage-shell,.document-shell{max-width:860px}.preferences,.document{max-width:600px;margin:48px auto 70px}.preferences h1,.document h1{font-size:53px;letter-spacing:-1.3px}.preferences .intro{margin:20px 0}.preferences button{margin-top:18px}.manage-note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:24px}.document h2{font-size:17px;line-height:1.5;margin:30px 0 10px;letter-spacing:-.3px}.document p,.document li{font-size:14px;line-height:1.85;color:var(--muted)}.document ul{padding-left:21px}.document .effective{font-size:11px;margin:15px 0 26px}.document .contact-line{padding:18px 20px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink)}
@media(max-width:1100px){.site-shell{padding-left:32px;padding-right:32px}.opening{grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:28px 30px}.app-grid{gap:10px}.preview{height:170px}.app-copy{padding:14px 11px}.app-copy p{min-height:76px}.about-section{grid-template-columns:1.35fr 1fr;gap:30px}}
@media(max-width:800px){.site-shell{max-width:600px;padding:20px 24px}.masthead{padding-bottom:20px}.brand{width:122px}nav{font-size:11px;gap:17px}.opening{grid-template-columns:1fr;grid-template-areas:"intro" "form" "apps";gap:26px;padding-top:29px;padding-bottom:29px}h1{font-size:50px;letter-spacing:-1.3px}.eyebrow{font-size:9px;margin-bottom:14px}.intro{font-size:13px;line-height:1.7}.signup-card{padding:24px}.signup-card h2{font-size:31px}.signup-intro{margin-bottom:20px}.app-grid{grid-template-columns:1fr;gap:18px}.app-card{display:grid;grid-template-columns:40% minmax(0,1fr)}.preview{height:100%;min-height:220px}.preview-board{padding:15px}.preview-chinese img{margin-top:18px;width:90%}.app-copy{padding:19px 16px}.app-copy h3{font-size:17px}.app-copy p{font-size:12px;min-height:0;margin-bottom:16px}.app-category{font-size:9px}.app-copy>a{font-size:10px}.about-section{grid-template-columns:1fr;gap:22px}.page-footer{font-size:9px;gap:15px}.preferences,.document{margin:35px auto 50px}.preferences h1,.document h1{font-size:44px}.document p,.document li{font-size:13px}}
@media(max-width:360px){.site-shell{padding-left:19px;padding-right:19px}.brand{width:110px}nav{gap:12px;font-size:10px}h1{font-size:43px}.signup-card{padding:21px 18px}.app-card{grid-template-columns:38% minmax(0,1fr)}.app-copy{padding:17px 12px}.preview{min-height:230px}}

/* Enrollment landing page */
.landing {
  --paper: #fffdf9;
  --ink: #232b35;
  --accent: #a83d24;
  --muted: #565e65;
  background: var(--paper);
}
.landing .site-shell {
  width: min(100%, 1240px);
  max-width: none;
  padding: 22px clamp(20px, 5vw, 68px);
}
.landing .masthead { padding-bottom: 18px; }
.landing .brand { width: 114px; }
.landing nav { font-size: 14px; }
.hero {
  padding: clamp(54px, 6.4vw, 86px) 0;
  text-align: center;
  background: radial-gradient(ellipse at center, #fff0dd 0%, transparent 69%);
}
.hero-kicker {
  display: inline-block;
  margin: 0 0 18px;
  font-size: 13px;
  font-weight: 700;
  color: #85422c;
}
.hero h1 {
  margin: 0;
  font-family: Manrope, sans-serif;
  font-size: clamp(42px, 6.2vw, 76px);
  font-weight: 750;
  letter-spacing: -.064em;
  line-height: 1.08;
  text-wrap: balance;
}
.hero-intro {
  max-width: 510px;
  margin: 20px auto 30px;
  color: var(--muted);
  font-size: clamp(16px, 1.6vw, 19px);
  line-height: 1.6;
  text-wrap: pretty;
}
.hero form, .hero .success { max-width: 494px; margin: auto; }
.hero label { text-align: left; font-size: 13px; }
.signup-row { display: flex; gap: 8px; }
.signup-row input { min-width: 0; border-color: #b8b7b1; border-radius: 9px; }
.signup-row button {
  width: auto;
  flex-shrink: 0;
  border-radius: 9px;
  justify-content: center;
  padding: 14px 24px;
  font-size: 15px;
}
.signup-row button:hover:not(:disabled) { background: #89321f; }
.hero .consent { font-size: 12px; margin-top: 14px; }
.landing .apps-section { border-top: 1px solid var(--line); padding: 32px 0; }
.landing .section-heading { margin-bottom: 20px; }
.landing .section-heading h2 { font-size: 25px; letter-spacing: -.045em; }
.landing .section-heading > span { font-size: 12px; }
.landing .app-grid { gap: 20px; }
.landing .app-card { border-radius: 14px; }
.landing .app-copy { padding: 18px 20px; }
.landing .app-copy h3 { font-size: 20px; }
.landing .app-copy p { min-height: 0; font-size: 14px; }
.landing .app-copy > a, .landing .preview-note { font-size: 12px; }
.landing .preview-chinese img { max-width: 240px; }
@media (max-width: 800px) {
  .landing .app-card { grid-template-columns: minmax(90px, 32%) 1fr; }
  .landing .preview { min-height: 160px; }
  .landing .preview img { position: absolute; }
  .landing .preview-board img { max-width: 82%; }
  .landing .preview-chinese img { left: 5%; }
}
@media (max-width: 520px) {
  .hero { padding: 44px 0 40px; }
  .hero h1 { max-width: 350px; margin-inline: auto; }
  .hero-intro { margin: 16px auto 24px; }
  .signup-row { flex-direction: column; }
  .landing .app-copy { padding: 15px; }
  .landing .section-heading h2 { font-size: 22px; }
}
