@font-face{font-family:"Baloo 2";font-weight:800;font-display:swap;src:url(../fonts/baloo-2-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Baloo 2";font-weight:800;font-display:swap;src:url(../fonts/baloo-2-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Figtree;font-weight:500;font-display:swap;src:url(../fonts/figtree-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Figtree;font-weight:500;font-display:swap;src:url(../fonts/figtree-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Figtree;font-weight:700;font-display:swap;src:url(../fonts/figtree-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Figtree;font-weight:700;font-display:swap;src:url(../fonts/figtree-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
	--lilac:#D9B8FF;--lilac-2:#C9A6FA;--pale:#F6F0FF;--ink:#2A0A5E;--ink-soft:#4A3380;
	--pink:#FF2D78;--violet:#6A1BE0;--sun:#FFC83D;--paper:#FFFFFF;--line:#E3D6F7;
	--display:"Baloo 2",system-ui,sans-serif;--body:Figtree,system-ui,-apple-system,"Segoe UI",sans-serif;
	--radius:16px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:500 17px/1.5 var(--body);overflow-x:hidden}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.04;margin:0;text-wrap:balance}
h2{font-size:clamp(32px,6vw,48px)}
h3{font-size:24px;line-height:1.15}
p{margin:0}
a{color:inherit}
svg{display:block;width:100%;height:auto}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:4px}
section[id]{scroll-margin-top:84px}
.wrap{width:min(1180px,100%);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap--narrow{width:min(760px,100%)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:30}
.skip:focus{left:8px}

/* Header */
.top{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 1px 0 var(--line)}
.top__bar{display:flex;align-items:center;gap:16px;min-height:64px}
.top__logo{display:block;width:128px;margin-right:auto;padding-block:8px}
.top__cta{display:none;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;white-space:nowrap}
.top__cta:hover{background:var(--violet)}
.top__nav{display:none;gap:24px;font-weight:700}
.top__nav a{text-decoration:none;padding:10px 2px}
.top__nav a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.lang{position:relative;font-weight:700}
.lang summary{list-style:none;cursor:pointer;min-width:52px;min-height:44px;display:flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:999px;padding-inline:12px}
.lang summary::-webkit-details-marker{display:none}
.lang ul{position:absolute;right:0;top:calc(100% + 8px);margin:0;padding:6px;list-style:none;min-width:170px;background:#fff;border:2px solid var(--ink);border-radius:12px}
.lang a{display:block;padding:10px 12px;border-radius:8px;text-decoration:none}
.lang a:hover{background:var(--pale)}
.lang a[aria-current]{background:var(--lilac)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:700;font-size:18px;text-decoration:none;text-align:center}
.btn--dark{background:var(--ink);color:#fff}
.btn--dark:hover{background:var(--violet)}
.btn--pink{background:var(--pink);color:var(--ink)}
.btn--line{border:2px solid var(--ink)}
.btn.is-off{width:100%}
.textlink{font-weight:700;text-underline-offset:4px;text-decoration-thickness:2px;padding-block:12px}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--lilac);padding-block:24px 56px;isolation:isolate}
.rays{position:absolute;z-index:-1;left:50%;top:600px;width:260vmax;height:260vmax;margin:-130vmax 0 0 -130vmax;background:repeating-conic-gradient(var(--lilac-2) 0 11.25deg,var(--lilac) 0 22.5deg);animation:spin 80s linear infinite}
.hero__grid{display:grid;gap:32px}
.hero__copy{min-width:0}
h1{font-size:clamp(44px,11.5vw,76px);line-height:1}
.lead{margin-top:16px;font-size:19px;max-width:34em}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:24px}
.proof{margin-top:20px;font-weight:700;max-width:32em}
.hero__stage{position:relative;justify-self:center;width:min(100%,420px);display:flex;justify-content:center;padding-block:16px}
.confetti{position:absolute;inset:-6% -18%;pointer-events:none}
.confetti svg{width:100%;height:100%}
.phone{position:relative;margin:0;width:min(66vw,270px);aspect-ratio:9/19;background:#17102b;border-radius:46px;padding:9px;color:var(--ink);transform:rotate(2.5deg);box-shadow:0 0 0 2px #4a4560 inset,0 24px 50px -18px #2a0a5e99}
.phone::before,.phone::after,.phone__side{content:"";position:absolute;background:#2d2640;border-radius:2px;width:3px}
.phone::before{left:-3px;top:17%;height:6%}
.phone::after{left:-3px;top:27%;height:11%}
.phone__side{right:-3px;top:24%;height:14%}
.phone__screen{position:relative;display:flex;flex-direction:column;align-items:center;height:100%;background:var(--lilac);border-radius:38px;padding:38px 12px 14px;overflow:hidden}
.phone__island{position:absolute;top:9px;left:50%;width:34%;height:22px;margin-left:-17%;border-radius:999px;background:#0d0818}
.phone__logo{align-self:center;width:46%;height:auto;display:block}
.phone__label{margin-top:auto;font-weight:700}
.avatar{width:104px;height:104px;margin-top:4px;border-radius:50%;background:var(--pink);border:6px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;animation:pop 4s ease-in-out infinite}
.phone__yay{font:800 52px/1 var(--display);margin-top:8px;color:var(--ink)}
.phone__name{font:800 23px/1.1 var(--display)}
.phone__panel{margin-top:auto;align-self:stretch;background:#fff;border-radius:10px;padding:8px 10px;font-size:14px;line-height:1.3;display:flex;flex-direction:column}
.wy-yay{animation:hop 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}
.wy-a{animation:floatA 4.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.wy-b{animation:floatB 3.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}

/* Why */
.why{padding-block:64px;background:var(--ink);color:#fff}
.why .section-lead{font-size:19px}
.why__list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:10px}
.why__list li{background:var(--lilac);color:var(--ink);border-radius:var(--radius);padding:16px 18px;font:800 23px/1.15 var(--display)}
.why__list li:nth-child(odd){transform:rotate(-1deg)}
.why__list li:nth-child(even){transform:rotate(.8deg)}
.why__list li:nth-child(4){background:var(--pink)}
.why__stop{margin-top:28px;font:800 clamp(24px,5vw,34px)/1.15 var(--display);max-width:26em;text-wrap:balance}

/* Sample result */
.sample{padding-block:64px;background:var(--paper)}
.sample__grid{display:grid;gap:32px}
.sample p+p{margin-top:12px}
.sample h2+p{margin-top:16px}
.record{background:#fff;border:2px solid var(--ink);border-radius:var(--radius);padding:20px}
.record__head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.tag{background:var(--lilac);border-radius:999px;padding:3px 12px;font-weight:700;font-size:15px}
.record__id{font-weight:700;font-variant-numeric:tabular-nums}
.record__winner{margin-top:16px;font:800 34px/1.1 var(--display);overflow-wrap:anywhere}
.record__winner span{display:block;font:700 15px/1.4 var(--body)}
.record dl{margin:16px 0 0}
.record dl div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px;padding-block:10px;border-top:1px solid var(--line)}
.record dt{color:var(--ink-soft)}
.record dd{margin:0;font-weight:700}
.record__note{margin-top:8px;padding-top:12px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:15px}

/* Steps */
.steps{padding-block:64px;background:var(--pale)}
.steps ol{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:16px}
.steps li{background:#fff;border-radius:var(--radius);padding:20px}
.steps__n{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--pink);font:800 26px/1 var(--display);margin-bottom:12px}
.steps li:nth-child(2){transform:rotate(-1deg)}
.steps li p{margin-top:6px}

/* Sources */
.sources{padding-block:64px}
.section-lead{margin-top:12px;max-width:38em}
.sources ul{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px}
.sources li{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:2px solid var(--line);border-radius:12px}
.sources li.is-near{border-color:var(--ink)}
.sources li span{color:var(--ink-soft);font-size:16px}
.sources__note{margin-top:16px;max-width:42em;color:var(--ink-soft)}

/* Pricing */
.pricing{padding-block:64px;background:var(--pale)}
.plans{display:grid;gap:16px;margin-top:32px;align-items:stretch}
.plan{position:relative;background:#fff;border:2px solid var(--line);border-radius:var(--radius);padding:24px 20px;display:flex;flex-direction:column;gap:8px}
.plan--main{border:3px solid var(--pink)}
.plan__badge{align-self:flex-start;background:var(--ink);color:#fff;border-radius:999px;padding:4px 14px;font-weight:700;font-size:15px}
.plan__price{font:800 42px/1.1 var(--display)}
.plan__price small{font:700 16px/1.3 var(--body)}
.plan__limit{font-weight:700;margin-bottom:12px}
.plan .btn{margin-top:auto}
.pricing__note{margin-top:16px;color:var(--ink-soft)}

/* FAQ */
.faq{padding-block:64px}
.faq h2{margin-bottom:20px}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:700;font-size:19px;padding-block:16px;min-height:44px}
.faq details p{padding-bottom:16px}

/* Footer */
.foot{background:var(--ink);color:#fff;padding-block:40px}
.foot__grid{display:grid;gap:8px}
.foot__logo{display:block;width:140px;margin-bottom:8px;color:var(--lilac)}
.foot__legal{color:var(--lilac)}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes hop{0%,62%,100%{transform:translateY(0) rotate(0)}72%{transform:translateY(-14px) rotate(-3deg)}84%{transform:translateY(3px) rotate(1deg)}}
@keyframes pop{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.08)}}
@keyframes floatA{0%,100%{transform:translateY(-5px)}50%{transform:translateY(7px)}}
@keyframes floatB{0%,100%{transform:translateY(6px)}50%{transform:translateY(-6px)}}

@media (min-width:720px){
	.steps ol{grid-template-columns:repeat(3,minmax(0,1fr))}
	.sources ul{grid-template-columns:repeat(3,minmax(0,1fr))}
	.plans{grid-template-columns:repeat(3,minmax(0,1fr))}
	.plan--main{order:2}
	.plan:nth-child(2){order:1}
	.plan:nth-child(3){order:3}
}
@media (min-width:960px){
	.wrap{padding-inline:32px}
	.top__nav{display:flex}
	.top__cta{display:inline-flex}
	.why__list{grid-template-columns:repeat(2,minmax(0,1fr))}
	.top__logo{width:152px}
	.hero{padding-block:56px 80px}
	.hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:48px}
	.rays{left:72%;top:50%}
	.phone{width:300px}
	.sample__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
}
@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.rays,.avatar,.wy-yay,.wy-a,.wy-b{animation:none}
}
