@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-vietnamese-wght-normal.0h_qcmzvudf58.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-ext-wght-normal.0i4j_a8lim1a-.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/bricolage-grotesque-latin-wght-normal.300rpl789hft0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--night:#150d24;--dusk:#2a1c42;--mist:#a99cc0;--cream:#f6f1e7;--lamp:#ffc940;--lamp-soft:#ffd971;--pink:#ff5fa8;--teal:#35d6c6;--line:#ffffff24;--display:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--cream);background:var(--night);-webkit-font-smoothing:antialiased;margin:0;font:17px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;font-weight:700;line-height:1.08}h1{letter-spacing:-.01em;font-size:clamp(2.5rem,6.4vw,4.6rem)}h2{font-size:clamp(1.8rem,3.6vw,2.6rem)}a{color:var(--lamp)}figure{margin:0}svg,video,canvas{display:block}.brand{color:var(--cream);font:600 1.15rem var(--display);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.brand svg{width:24px;height:24px;fill:var(--lamp)}.brand-pom{fill:var(--teal)}em{color:var(--lamp);font-style:normal}.lede{color:#d9d0e6;max-width:34em;margin:12px 0 0;font-size:1.1rem}.note{color:var(--mist);margin:8px 0 0;font-size:.86rem}.error{color:#ffb4c9;margin:10px 0 0;font-size:.93rem}.quote{font:500 1.4rem var(--display);overflow-wrap:anywhere;margin:10px 0 14px}.btn{min-height:46px;color:var(--night);background:var(--lamp);font:600 1.02rem var(--display);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;padding:0 20px;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.btn:hover{background:var(--lamp-soft);transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.ghost{color:var(--cream);background:#ffffff1a}.btn.ghost:hover{background:#ffffff2e}.btn.wide{width:100%;margin-top:14px}.btn.big{min-height:56px;padding:0 32px;font-size:1.15rem}.link{color:var(--lamp);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:0;font-size:.93rem;text-decoration:underline;display:inline-block}:is(a,button,input,summary):focus-visible{outline-offset:2px;outline:3px solid #fff}.panel{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#150d24b8;border-radius:22px;padding:18px}.panel h3{margin:0;font-size:1.4rem}.tail{color:var(--lamp);font:600 1.02rem var(--display);margin:8px 0 0}label{font-weight:600}.field{margin-top:8px;position:relative}.field input{border:1px solid var(--line);width:100%;height:52px;color:var(--cream);font:inherit;background:#ffffff14;border-radius:14px;padding:0 50px 0 16px}.field input::placeholder{color:var(--mist)}.count{color:var(--mist);font-size:.85rem;position:absolute;top:15px;right:14px}.chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chips button{border:1px solid var(--line);color:#d9d0e6;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:5px 12px;font-size:.86rem}.chips button:hover{background:#ffffff1a}.share code{overflow-wrap:anywhere;background:#ffffff14;border-radius:10px;padding:10px 12px;font-size:.86rem;display:block}.row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.hero{background:radial-gradient(90% 60% at 50% 100%,#ff5fa838,#0000 70%),radial-gradient(70% 50% at 100% 0,#35d6c61f,#0000 70%);justify-items:center;gap:30px;padding:18px 20px 8px;display:grid;position:relative;overflow:hidden}.hero-copy{width:100%}.hero-copy h1{letter-spacing:-.02em;margin-top:28px;font-size:clamp(2.5rem,11.5vw,3.4rem);font-weight:800}.hero-copy h1 span{color:var(--lamp);display:block}.hero-copy .btn.big{width:100%;margin-top:22px}.hero-copy .link{width:fit-content;margin:14px auto 0;display:block}.phone{aspect-ratio:9/16;border:6px solid #33254d;border-radius:30px;width:min(270px,74vw);position:relative;overflow:hidden;box-shadow:0 24px 70px #ff5fa838;container-type:inline-size}.phone-art{width:100%;height:100%}.phone .overlay{font-size:6cqw}.phone:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0c0716e6);position:absolute;inset:62% 0 0}@media (min-width:900px){.hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:56px;min-height:min(100svh,860px);padding:40px max(48px,50vw - 560px)}.hero-copy>.brand{position:absolute;top:32px;left:max(48px,50vw - 560px)}.hero-copy h1{margin-top:0;font-size:clamp(3.6rem,6vw,5.6rem)}.hero-copy .btn.big{width:auto;margin-top:28px}.hero-copy .link{margin:0 0 0 20px;display:inline-block}.phone{width:min(360px,44svh)}}.section{width:min(1040px,100%);margin:0 auto;padding:72px 20px 0}.steps{counter-reset:step;gap:14px;margin:26px 0 0;padding:0;list-style:none;display:grid}.steps li{border:1px solid var(--line);counter-increment:step;background:#ffffff0a;border-radius:16px;padding:18px}.steps li:before{content:counter(step);color:var(--teal);font:800 1.6rem var(--display)}.steps h3{margin:4px 0 0;font-size:1.2rem}.steps p{color:#d9d0e6;margin:6px 0 0;font-size:.97rem}.subjects{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;display:grid}.subjects svg{aspect-ratio:9/16;border-radius:14px;width:100%}.subjects figcaption{color:var(--mist);text-align:center;margin-top:8px;font-size:.9rem}.subjects strong{color:var(--cream)}.free{gap:20px;display:grid}.section .btn.big{margin-top:22px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq h2{margin-bottom:14px}.faq summary{font:500 1.14rem var(--display);cursor:pointer}.faq details p{color:#d9d0e6;margin:8px 0 0}.footer{width:min(1040px,100%);color:var(--mist);margin:0 auto;padding:56px 20px 36px;font-size:.86rem}.footer nav{flex-wrap:wrap;gap:18px;display:flex}.footer a{color:#d9d0e6}.footer p{margin:12px 0 0}.page{width:min(1000px,100%);min-height:70svh;margin:0 auto;padding:24px 20px 0}.page.narrow{width:min(640px,100%)}.page h1{margin-top:30px;font-size:clamp(2.2rem,6vw,3.2rem)}.make{gap:26px;margin-top:26px;display:grid}.frame-col{width:min(320px,100%);margin:0 auto}.frame{aspect-ratio:9/16;border:1px solid var(--line);background:var(--dusk);border-radius:20px;position:relative;overflow:hidden}.frame.empty{border:2px dashed var(--mist)}.frame canvas{touch-action:none;cursor:grab;width:100%;height:100%}.frame.empty canvas{visibility:hidden}.pick{text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:20px;display:flex;position:absolute;inset:0}.pick strong{color:var(--lamp);font:600 1.25rem var(--display)}.pick span{color:var(--mist);font-size:.86rem;font-weight:400}input[type=file]{opacity:0;width:1px;height:1px;position:absolute}.crop-tools{margin-top:12px}.crop-tools>label:first-child{align-items:center;gap:10px;font-size:.93rem;display:flex}.crop-tools input[type=range]{accent-color:var(--lamp);flex:1}.check{cursor:pointer;gap:10px;margin-top:22px;font-size:.97rem;font-weight:400;display:flex}.check input{width:20px;height:20px;accent-color:var(--lamp);flex:none;margin-top:3px}.summary{border:1px solid var(--line);background:#ffffff0f;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:16px;display:flex}.summary strong{font:500 1.08rem var(--display);display:block}.summary span{color:var(--mist);font-size:.88rem}.summary b{font:600 1.5rem var(--display)}.bar{background:#ffffff1f;border-radius:999px;height:12px;margin-top:24px;overflow:hidden}.bar span{border-radius:inherit;background:var(--lamp);height:100%;transition:width .6s;display:block}.result{aspect-ratio:9/16;border-radius:20px;width:min(300px,100%);margin:22px auto;position:relative;overflow:hidden}.result svg,.result video{object-fit:cover;width:100%;height:100%}.result:after{content:"";pointer-events:none;background:linear-gradient(#0000,#150d24e0);position:absolute;inset:60% 0 0}.overlay em,.stage-line em{display:block}.overlay{z-index:1;font:700 1.2rem/1.15 var(--display);text-align:center;text-shadow:0 2px 10px #0009;overflow-wrap:anywhere;pointer-events:none;margin:0;position:absolute;inset:auto 12px 14px}.dev-tag{color:var(--night);background:#ffd98a;border-radius:999px;margin:0;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-block}.legal h2{margin-top:30px;font-size:1.35rem}.legal p,.legal li{color:#d9d0e6}.legal ul{padding-left:1.3em}@media (min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}.free{grid-template-columns:1fr 1fr;align-items:center;gap:40px}.make{grid-template-columns:320px 1fr;align-items:start;gap:48px}.frame-col{margin:0}}.stage{background:var(--night);grid-template-rows:minmax(0,1fr) auto;height:100svh;display:grid;position:relative;overflow:hidden}.stage-media{object-fit:contain;width:100%;height:100%;min-height:0}.stage-copy{text-align:center;justify-items:center;gap:12px;padding:16px 20px 24px;display:grid}.stage-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.stage-line{font:700 clamp(1.5rem, 6.4vw, 2.4rem)/1.12 var(--display);text-shadow:0 2px 14px #0000008c;overflow-wrap:anywhere;margin:0}.sound{z-index:2;color:var(--cream);font:inherit;cursor:pointer;background:#00000073;border:0;border-radius:999px;padding:8px 14px;font-size:.86rem;position:absolute;top:16px;right:16px}.lr-lit{animation:1.8s ease-in-out infinite pulse}.lr-beam{transform-box:fill-box;transform-origin:50% 100%;animation:7s ease-in-out infinite alternate sweep}.lr-beam-b{animation-duration:9s;animation-direction:alternate-reverse}.lr-confetti rect{animation:6s linear infinite drift}.lr-spill{animation:1.8s ease-in-out infinite pulse}.lr-glow{animation:6.5s linear infinite flicker}@keyframes pulse{50%{opacity:.25}}@keyframes sweep{0%{transform:rotate(-14deg)}to{transform:rotate(14deg)}}@keyframes drift{to{transform:translateY(460px)}}@keyframes flicker{0%,90%,94%,to{opacity:1}92%{opacity:.55}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}.lr-confetti{display:none}}
