:root{--color-bg: #0f1014;--color-bg-deep: #090a0d;--color-surface: rgba(255, 255, 255, .04);--color-text: #f4f5f7;--color-text-muted: #8e929d;--color-text-soft: #b8bcc7;--color-accent: #f47b38;--color-border: rgba(255, 255, 255, .08);--font-sans: "Geist", "Avenir Next", "SF Pro Display", sans-serif;--font-display: "Manrope", "Geist", "Avenir Next", "SF Pro Display", sans-serif;--max-width: 1000px}*,*:before,*:after{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:radial-gradient(circle at top,rgba(255,161,88,.13),transparent 34%),radial-gradient(circle at bottom,rgba(244,123,56,.08),transparent 30%),linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-deep) 100%);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.015) 50%,transparent 100%),repeating-linear-gradient(180deg,transparent 0,transparent 31px,rgba(255,255,255,.02) 32px);opacity:.3;pointer-events:none}.container{width:min(100%,var(--max-width));margin:0 auto;padding:0 2rem;min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;position:relative;z-index:1}a{color:var(--color-text-muted);text-decoration:none;transition:color .2s ease,opacity .2s ease,transform .2s ease}a:hover{color:var(--color-text)}nav{display:flex;justify-content:space-between;align-items:center;padding:1.15rem 0 .55rem;border-bottom:1px solid var(--color-border)}.logo{display:inline-flex;align-items:center;gap:.75rem;font-weight:600;font-size:1rem;line-height:1;color:var(--color-text)}.logo:hover{color:var(--color-text)}.logo-mark{width:2rem;height:2rem;background-image:url(/mascot-sprite.png);background-position:0 -.2rem;background-repeat:no-repeat;background-size:12rem 2rem;image-rendering:pixelated;flex:0 0 auto;display:block;animation:logo-idle 1s steps(6) infinite;transform:translateY(-4px)}.logo-label{display:inline-flex;align-items:center;min-height:2rem}@keyframes logo-idle{0%{background-position:0 -.2rem}to{background-position:-12rem -.2rem}}.nav-link{font-size:.95rem;font-weight:600}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1.45rem;padding:clamp(4.5rem,11vh,8rem) 0}@keyframes icon-enter{0%{opacity:0;transform:scale(.6) translateY(16px) rotate(-3deg)}to{opacity:1;transform:scale(1) translateY(0) rotate(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.app-icon{width:clamp(180px,24vw,220px);height:clamp(180px,24vw,220px);display:block;filter:drop-shadow(0 24px 48px rgba(0,0,0,.38));opacity:0;animation:icon-enter 1.1s cubic-bezier(.16,1,.3,1) .05s both}.hero-copy{display:grid;gap:1rem;justify-items:center}.hero h1{font-family:var(--font-display);font-size:clamp(3rem,6.4vw,4.5rem);font-weight:800;letter-spacing:-.04em;line-height:.95;opacity:0;animation:fade-up .8s cubic-bezier(.16,1,.3,1) .15s both}.tagline{font-size:clamp(1rem,1.65vw,1.2rem);color:var(--color-text-soft);line-height:1.55;max-width:38rem;text-wrap:balance;opacity:0;animation:fade-up .8s cubic-bezier(.16,1,.3,1) .25s both}.btn-wrap{position:relative;display:inline-block;opacity:0;animation:fade-up .8s cubic-bezier(.16,1,.3,1) .35s both}.btn{display:inline-flex;align-items:center;gap:.65rem;background:linear-gradient(180deg,#e8762e,#c55a1a);color:#fff;font-weight:700;font-size:1rem;padding:1rem 1.6rem;border-radius:1rem;border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 40px #f47b3842;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;white-space:nowrap;max-width:100%;position:relative;z-index:1}.apple-logo{flex-shrink:0}.btn:hover{color:#fff;transform:translateY(-2px);box-shadow:0 24px 48px #f47b3857;filter:brightness(1.05)}.sparkle{position:absolute;pointer-events:none;animation:sparkle-float linear forwards;opacity:0;z-index:0}@keyframes sparkle-float{0%{opacity:0;transform:translate(0) rotate(0) scale(0)}15%{opacity:1;transform:translate(calc(var(--drift) * .15),calc(var(--rise) * .15)) rotate(calc(var(--rot) * .15)) scale(1)}70%{opacity:.8}to{opacity:0;transform:translate(var(--drift),var(--rise)) rotate(var(--rot)) scale(.3)}}.badge{display:inline-flex;align-items:center;gap:.55rem;font-size:.9rem;color:var(--color-text-muted);flex-wrap:nowrap;opacity:0;animation:fade-up .8s cubic-bezier(.16,1,.3,1) .45s both;white-space:nowrap}.badge-label{display:inline-flex;align-items:center;font-size:.65rem;font-weight:800;letter-spacing:.08em;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:.18rem .45rem;color:var(--color-text-soft)}footer{padding:1.5rem 0 2rem}.footer-row{display:flex;align-items:center;justify-content:space-between;font-size:.92rem;color:var(--color-text-muted);flex-wrap:wrap;gap:1rem}.footer-links{display:flex;align-items:center;gap:1.35rem}.legal{width:min(100%,46rem);margin:0 auto;padding:4rem 0 5rem}.legal h1{font-size:clamp(2.5rem,5vw,3.4rem);font-weight:800;letter-spacing:-.06em;margin-bottom:.8rem}.legal .updated{font-size:.95rem;color:var(--color-text-muted);margin-bottom:2.5rem}.legal h2{font-size:1.15rem;font-weight:700;margin-top:2rem;margin-bottom:.65rem;letter-spacing:-.02em}.legal p{color:var(--color-text-soft);line-height:1.8;margin-bottom:1.05rem}@media(max-width:640px){.container{padding:0 1.25rem}nav{padding:1rem 0 .5rem}.hero h1{font-size:2.9rem}.tagline{font-size:.98rem}.hero{gap:1.25rem;padding:4rem 0 3rem}.btn{justify-content:center}.footer-row{gap:.75rem}}@media(max-width:420px){.badge{flex-wrap:wrap;justify-content:center;white-space:normal}}
