:root:has(.landing){--bg:#fff8ec;--bg-alt:#fbeed5;--surface:#fff;--text:#1c2447;--text-soft:#45507a;--accent:#f2b632;--accent-strong:#e59f12;--accent-text:#1c2447;--border:#ead9b8;--screen:#141a33;--shadow:#1c244724;--focus:#2855d8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--bg)}@media (prefers-color-scheme:dark){:root:has(.landing){--bg:#141a33;--bg-alt:#1b2344;--surface:#222b52;--text:#fff3dc;--text-soft:#c9cde6;--accent:#f5c451;--accent-strong:#f8d27a;--accent-text:#141a33;--border:#36416f;--screen:#0b0f22;--shadow:#0006;--focus:#8fb0ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.landing{--gutter:1rem;--radius:1.25rem;background:var(--bg);min-height:100vh;color:var(--text);padding-bottom:5.5rem;font-family:ui-rounded,SF Pro Rounded,Nunito,Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:1rem;line-height:1.6;overflow-x:clip}.landing :focus-visible{outline:3px solid var(--focus);outline-offset:3px}.landing h1,.landing h2,.landing h3{text-wrap:balance;line-height:1.2}.landing h2{margin:0 0 .75rem;font-size:clamp(1.7rem,5vw,2.4rem)}.landing h3{margin:.9rem 0 .25rem;font-size:1.2rem}.landing p{margin:0 0 1rem}.landing a{color:inherit}.site-bar{z-index:5;padding:.6rem var(--gutter);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.5rem;min-height:44px;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{width:1.75rem;height:1.75rem;image-rendering:pixelated;background:url(/favicon.svg) 50%/contain no-repeat}.cta{border:2px solid var(--text);background:var(--accent);min-height:52px;box-shadow:0 4px 0 var(--text);color:var(--accent-text);touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1.6rem;font-size:1.1rem;font-weight:800;text-decoration:none;transition:transform .14s cubic-bezier(.34,1.56,.64,1),box-shadow .14s,background-color .14s;display:inline-flex}.landing .cta{color:var(--accent-text)}.cta:hover{background:var(--accent-strong);box-shadow:0 6px 0 var(--text);transform:translateY(-2px)scale(1.03)}.cta:active{box-shadow:0 1px 0 var(--text);transform:translateY(3px)scale(.98)}.cta.small{min-height:44px;box-shadow:0 3px 0 var(--text);padding:.4rem 1.1rem;font-size:1rem}.cta-row{flex-wrap:wrap;gap:1rem .9rem;margin:1.5rem 0 1rem;display:flex}.header-cta{display:none}.hero{max-width:72rem;padding:2rem var(--gutter) 3rem;gap:2rem;margin:0 auto;display:grid}.hero h1{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(2.3rem,8.5vw,4rem)}.lede{color:var(--text-soft);font-size:1.2rem}.screen{border-radius:var(--radius);background:var(--screen);box-shadow:0 0 0 3px var(--accent), 0 18px 40px var(--shadow);padding:.6rem;position:relative}.hero-screen{align-self:center;transform:rotate(-1.2deg)}.clip{border-radius:calc(var(--radius) - .5rem);background:#0b0f22;position:relative;overflow:hidden}.clip-video{object-fit:cover;width:100%;height:100%;display:block}.clip-toggle{cursor:pointer;background:#141a33b8;border:2px solid #fff8ec;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;bottom:.5rem;right:.5rem}.clip-icon.play{border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:14px solid #fff8ec;width:0;height:0;margin-left:4px}.clip-icon.pause{border-left:5px solid #fff8ec;border-right:5px solid #fff8ec;width:14px;height:16px}.section{max-width:72rem;padding:3rem var(--gutter);margin:0 auto}.section-lede{max-width:40rem;color:var(--text-soft);font-size:1.15rem}.steps{gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.step-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:1.4rem}.step-card p{color:var(--text-soft);margin:0}.step-number{background:var(--accent);width:2.75rem;height:2.75rem;color:var(--accent-text);clip-path:polygon(25% 0,75% 0,75% 12.5%,87.5% 12.5%,87.5% 25%,100% 25%,100% 75%,87.5% 75%,87.5% 87.5%,75% 87.5%,75% 100%,25% 100%,25% 87.5%,12.5% 87.5%,12.5% 75%,0 75%,0 25%,12.5% 25%,12.5% 12.5%,25% 12.5%);place-items:center;font-size:1.3rem;font-weight:900;display:grid}.inside{max-width:none;padding-inline:max(var(--gutter), calc((100% - 72rem) / 2 + var(--gutter)));background:var(--bg-alt)}.game-grid{gap:2rem 1.5rem;margin-top:1.5rem;padding:0;list-style:none;display:grid}.game-card p{color:var(--text-soft);margin:0}.message-moment{align-items:center;gap:2rem;display:grid}.message-copy p{color:var(--text-soft);font-size:1.15rem}.message-screen{max-width:34rem;transform:rotate(1deg)}.price-card{border:3px solid var(--text);border-radius:var(--radius);background:var(--surface);max-width:36rem;box-shadow:0 8px 0 var(--accent);text-align:center;margin:0 auto;padding:2rem 1.5rem}.price{margin:.5rem 0 1.25rem}.price-amount{letter-spacing:-.02em;font-size:3rem;font-weight:900}.price-note{color:var(--text-soft);font-weight:600;display:block}.includes{text-align:left;gap:.6rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.includes li{padding-left:2rem;position:relative}.includes li:before{content:"";background:var(--accent);clip-path:polygon(0 20%,20% 20%,20% 0,40% 0,40% 20%,60% 20%,60% 0,80% 0,80% 20%,100% 20%,100% 60%,80% 60%,80% 80%,60% 80%,60% 100%,40% 100%,40% 80%,20% 80%,20% 60%,0 60%);width:1.1rem;height:1rem;position:absolute;top:.35em;left:0}.delivery{font-weight:700}.faq-list{gap:.75rem;max-width:48rem;display:grid}.faq-item{border:1px solid var(--border);background:var(--surface);border-radius:1rem}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:52px;padding:.75rem 1.2rem;font-size:1.1rem;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--text-soft);flex:none;font-size:1.6rem;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-item p{color:var(--text-soft);margin:0;padding:0 1.2rem 1rem}.site-footer{max-width:72rem;padding:2rem var(--gutter);border-top:1px solid var(--border);color:var(--text-soft);margin:2rem auto 0}.footer-links{flex-wrap:wrap;gap:.25rem 1.5rem;margin:0;padding:0;list-style:none;display:flex}.footer-links a{min-height:44px;color:var(--text);align-items:center;font-weight:600;display:inline-flex}.sticky-cta{z-index:6;padding:.75rem var(--gutter) calc(.9rem + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--bg) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0}.sticky-cta .cta{width:100%}.info-page{max-width:44rem;padding:2rem var(--gutter) 3rem;margin:0 auto}.info-page h1{font-size:clamp(2rem,6vw,2.8rem)}.info-page h2{margin-top:2rem;font-size:1.4rem}@media (width>=40rem){.landing{--gutter:2rem}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=48rem){.landing{padding-bottom:0}.sticky-cta{display:none}.header-cta{display:inline-flex}.steps{grid-template-columns:repeat(3,minmax(0,1fr))}.section{padding-top:4.5rem;padding-bottom:4.5rem}}@media (width>=64rem){.hero{grid-template-columns:1fr 1.1fr;align-items:center;padding-top:4rem;padding-bottom:5rem}.game-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.game-card{grid-column:span 2}.game-card:nth-child(4){grid-column:2/span 2}.message-moment{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){.cta,.cta:hover,.cta:active{transition:none;transform:none}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation:linear both rise;animation-timeline:view();animation-range:entry entry 35%}}}@keyframes rise{0%{opacity:0;transform:translateY(1.5rem)}}:root{--ink:#1f1b2e;--muted:#5b5670;--paper:#fbf8f2;--card:#fff;--line:#d9d3c7;--accent:#5b3fd1;--accent-ink:#fff;--gold:#ffcc73;--danger:#b3261e;--focus:#1a73e8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--paper);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{background:var(--paper);margin:0}button,input,textarea{font:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{max-width:40rem;margin:0 auto;padding:1rem 1rem 3rem}.site-header h1{margin:0;font-size:1.5rem}.site-header p{color:var(--muted);margin:0 0 1rem}.progress-count{color:var(--muted);margin:0 0 .5rem;font-weight:600}.progress{gap:.25rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.progress li{border-top:6px solid var(--line);color:var(--muted);flex:1;padding-top:.5rem;font-size:.8rem}.progress li.done{border-color:var(--accent)}.progress li.current{border-color:var(--accent);color:var(--ink);font-weight:700}@media (width<=30rem){.progress-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.step-heading{margin:0 0 .5rem;font-size:1.6rem;line-height:1.25}.step-heading:focus{outline:none}.field-label{margin:1rem 0 .25rem;font-weight:600;display:block}.text-input{border:2px solid var(--line);background:var(--card);width:100%;min-height:3rem;color:var(--ink);border-radius:.6rem;padding:.6rem .8rem}.text-input:focus{border-color:var(--accent)}.message-input{resize:vertical}.field-hint{color:var(--muted);margin:.4rem 0 0}.field-error{color:var(--danger);margin:.75rem 0 0;font-weight:600}.status{margin:.75rem 0 0;font-weight:600}.hint{color:var(--muted);margin:0 0 .75rem}.title-preview{color:var(--gold);text-align:center;background:#16122a;border-radius:1rem;margin-top:1.5rem;padding:1.25rem}.title-preview-label{color:#c9c3e0;font-size:.9rem;display:block}.title-preview-name{overflow-wrap:anywhere;font-size:1.8rem;font-weight:800;display:block}.button{border:2px solid var(--accent);background:var(--accent);min-width:48px;min-height:48px;color:var(--accent-ink);cursor:pointer;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.button.secondary{background:var(--card);color:var(--accent)}.button.danger{border-color:var(--danger);background:var(--card);color:var(--danger)}.button.small{min-width:44px;min-height:44px;padding:.25rem .9rem}.button:disabled{opacity:.45;cursor:not-allowed}.add-photos{margin-top:1rem}.add-photos:has(+.visually-hidden:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.tips{border-left:5px solid var(--gold);background:var(--card);border-radius:.5rem;margin:1rem 0 0;padding:.75rem 1rem}.tips h3{margin:0 0 .25rem;font-size:1rem}.tips ul{margin:0;padding-left:1.2rem}.photo-list{margin:1rem 0 0;padding:0;list-style:none}.photo-row{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:.75rem 0;display:flex}.photo-actions{flex-wrap:wrap;gap:.5rem;display:flex}.face-button{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0}.face{background:#2a2540;border-radius:50%;flex:none;display:block;position:relative;overflow:hidden}.face img{transform-origin:0 0;-webkit-user-select:none;user-select:none;max-width:none;position:absolute;top:0;left:0}.face:after{content:"";box-shadow:inset 0 0 0 4px var(--gold);border-radius:50%;position:absolute;inset:0}.review-block{background:var(--card);border-radius:1rem;margin-top:1.25rem;padding:1rem}.review-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.review-header h3{overflow-wrap:anywhere;margin:0;font-size:1.15rem}.review-message{white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 0}.face-grid{flex-wrap:wrap;gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.form-nav{justify-content:space-between;gap:1rem;margin-top:2rem;display:flex}.form-nav .primary{margin-left:auto}.dialog-backdrop{z-index:10;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialog{background:var(--card);border-radius:1rem;width:100%;max-width:32rem;max-height:100%;padding:1rem;overflow-y:auto}.dialog h2{margin:0 0 .25rem}.cropper-frame{aspect-ratio:1;background:#16122a;border-radius:.75rem;width:100%;max-height:60vh;position:relative;overflow:hidden}.zoom-controls,.dialog-actions{justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}.dialog-actions{justify-content:flex-end}.checkout-form{margin:1rem 0}
