:root{
--ink:#35343a;
--muted:#6b6870;
--cream:#fcfaf4;
--mint:#dceee3;
--green:#365d4d;
--line:#dce3d8;
--font:'M PLUS Rounded 1c',sans-serif}
*{
box-sizing:border-box}
html{
scroll-behavior:smooth;
scroll-padding-top:88px}
body{
margin:0;
color:var(--ink);
background:var(--cream);
font-family:var(--font);
font-size:15px;
line-height:1.95;
-webkit-font-smoothing:antialiased}
a{
color:inherit;
text-decoration:none}
button{
font:inherit;
color:inherit;
cursor:pointer}
img{
max-width:100%;
height:auto;
display:block}
h1,h2,p,figure{
margin:0}
h1,h2{
font-weight:800;
letter-spacing:.015em;
line-height:1.55}
h2{
font-size:28px}
p+p{
margin-top:18px}
button,a,summary{
-webkit-tap-highlight-color:transparent;
touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{
outline:3px solid #cb647f;
outline-offset:5px}
.skip-link{
position:fixed;
left:20px;
top:-100px;
z-index:100;
background:white;
padding:10px 20px}
.skip-link:focus{
top:10px}
.section-wrap{
max-width:1160px;
margin:0 auto;
padding-left:24px;
padding-right:24px}
.site-header{
position:sticky;
top:0;
z-index:20;
background:rgba(252,250,244,.94);
backdrop-filter:blur(12px);
border-bottom:1px solid rgba(54,93,77,.08)}
.header-inner{
height:76px;
max-width:1240px;
margin:auto;
padding:0 22px;
display:flex;
align-items:center;
justify-content:space-between;
gap:12px}
.brand{
display:inline-flex;
align-items:center;
gap:9px;
line-height:1;
font-family:'Plus Jakarta Sans',sans-serif;
font-size:28px;
font-weight:800;
letter-spacing:-1px}
.brand img{
width:38px;
height:38px;
border-radius:11px}
.brand-ja{
display:block;
font:700 9px var(--font);
letter-spacing:3px;
text-align:center;
margin-top:5px}
.site-header nav{
display:none;
gap:30px;
font-size:13px;
font-weight:700}
.header-download{
display:flex;
align-items:center;
gap:10px;
border:1px solid var(--green);
border-radius:30px;
padding:9px 16px;
font-weight:700;
font-size:12px;
line-height:1.8}
.header-download:hover{
background:var(--mint)}
.hero{
position:relative;
overflow:hidden;
background:radial-gradient(ellipse at 50% 64%,#ecf3e4 0,transparent 60%),var(--cream)}
.hero-inner{
max-width:1200px;
margin:auto;
padding:38px 24px 0}
.hero-copy{
text-align:center;
position:relative;
z-index:2}
.eyebrow{
font-size:11px;
font-weight:800;
letter-spacing:.12em;
color:var(--ink);
margin-bottom:14px}
.tiny-star{
color:#c9829b;
margin-right:7px;
font-size:17px}
.hero h1{
font-size:36px;
line-height:1.5;
letter-spacing:.015em}
.hero h1>span{
position:relative;
z-index:0;
white-space:nowrap}
.hero h1>span:after{
content:'';
height:12px;
background:#efc8d3;
position:absolute;
bottom:5px;
left:-4px;
right:-4px;
border-radius:10px;
z-index:-1;
transform:rotate(-2deg)}
.hero-lead{
font-size:13px;
line-height:1.95;
margin-top:20px}
.hero-facts{
display:flex;
justify-content:center;
align-items:baseline;
gap:16px;
flex-wrap:wrap;
margin-top:19px;
font-size:11px;
font-weight:700}
.hero-facts>span{
line-height:1.8}
.hero-facts>span+span{
border-left:1px solid #d9d4d8;
padding-left:16px}
.hero-facts b{
font-family:'Plus Jakarta Sans',sans-serif;
font-size:16px}
.tax{
font-size:9px}
.primary-button{
display:flex;
justify-content:center;
align-items:center;
gap:25px;
border-radius:40px;
background:var(--green);
color:white;
min-height:54px;
padding:11px 24px;
font-size:14px;
font-weight:700;
box-shadow:0 5px 0 #213f32;
transition:transform .2s,box-shadow .2s}
.primary-button:hover{
transform:translateY(-2px);
box-shadow:0 7px 0 #213f32}
.primary-button span{
font-size:22px;
line-height:1}
.hero-cta{
display:none}
.hero-platform{
font-size:10px;
margin-top:12px;
color:var(--muted)}
.hero-visual{
position:relative;
max-width:500px;
margin:22px auto 0;
padding:30px 0 22px}
.orbit{
position:absolute;
left:50%;
top:11%;
width:360px;
height:360px;
transform:translateX(-50%);
border-radius:50%;
background:#e6eddb;
border:1px dashed #b6c7aa}
.doodle{
position:absolute;
font-size:52px;
font-weight:400;
color:#dfb8c2;
z-index:3;
line-height:1}
.star-one{
left:0;
top:4%;
transform:rotate(14deg)}
.star-two{
right:0;
bottom:19%;
color:#8cab91;
font-size:48px}
.bubble{
position:absolute;
z-index:5;
font-size:13px;
font-weight:800;
line-height:1.5;
background:white;
border:1px solid #d8e0d0;
box-shadow:0 4px 0 rgba(67,89,61,.06);
border-radius:15px;
padding:9px 16px;
pointer-events:none}
.bubble span{
display:block;
font-size:9px;
font-weight:500;
letter-spacing:.08em}
.bubble-top{
right:1%;
top:0;
transform:rotate(6deg)}
.bubble-bottom{
bottom:65px;
left:-3%;
transform:rotate(-7deg);
font-size:10px;
background:#fcf1d5;
border-color:#e6dab9}
.carousel{
position:relative;
touch-action:pan-y}
.carousel-track{
position:relative;
height:364px}
.hero-slide{
position:absolute;
inset:0;
margin:auto;
width:166px;
opacity:0;
transform:scale(.75);
transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .6s;
pointer-events:none}
.hero-slide.is-current{
opacity:1;
transform:translateX(0) scale(1);
z-index:3}
.hero-slide.is-prev{
opacity:.64;
transform:translateX(-139px) rotate(-9deg) scale(.81);
z-index:1}
.hero-slide.is-next{
opacity:.64;
transform:translateX(139px) rotate(9deg) scale(.81);
z-index:1}
.phone{
padding:5px;
border:1px solid #d0d9c9;
border-radius:22px;
background:#fff;
box-shadow:0 18px 25px rgba(64,82,53,.12)}
.phone img{
border-radius:17px;
width:100%}
.carousel-bottom{
position:relative;
z-index:4;
text-align:center;
margin-top:13px}
#slide-caption{
font-size:11px;
font-weight:700;
min-height:22px}
.carousel-controls{
display:flex;
align-items:center;
justify-content:center;
gap:5px;
margin-top:5px}
.carousel-arrow,.carousel-pause{
border:0;
background:transparent;
width:40px;
height:40px;
border-radius:50%;
font-size:16px}
.carousel-arrow:hover,.carousel-pause:hover{
background:#e0eadb}
.carousel-pause{
font-size:12px;
width:32px}
.carousel-dots{
display:flex}
.carousel-dots button{
height:40px;
width:25px;
border:0;
background:transparent;
position:relative}
.carousel-dots button:after{
content:'';
position:absolute;
left:9px;
top:17px;
width:7px;
height:7px;
background:#b9c8b3;
border-radius:50%;
transition:background .3s}
.carousel-dots button[aria-pressed=true]:after{
background:var(--green);
width:15px;
left:5px;
border-radius:6px}
.hero-foot{
display:flex;
justify-content:center;
align-items:center;
gap:11px;
padding:0 16px 27px;
font-size:10px;
letter-spacing:.06em}
.hero-foot>span{
font-size:19px}
.download-section{
padding-top:12px;
padding-bottom:52px}
.download-panel{
border:1px solid var(--line);
border-radius:28px;
background:white;
padding:30px 20px;
box-shadow:0 8px 0 #edf0e7}
.download-copy{
text-align:center}
.download-copy h2{
font-size:25px}
.download-copy>p:not(.eyebrow):not(.small-note){
font-size:13px;
margin-top:14px}
.download-copy strong{
font-size:20px;
font-weight:800}
.download-copy>p>span{
font-size:10px}
.small-note{
font-size:10px;
line-height:1.85;
color:var(--muted);
margin-top:14px}
.store-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
margin-top:24px}
.store-item{
text-align:center}
.store-button{
display:flex;
align-items:center;
justify-content:center;
gap:7px;
background:#26382f;
color:white;
border:1px solid #26382f;
border-radius:12px;
padding:11px 8px;
min-height:62px;
line-height:1.1;
transition:background .2s}
.store-button:hover{
background:#456452}
.store-button small{
display:block;
font-size:8px;
text-align:left;
letter-spacing:.04em;
margin-bottom:5px}
.store-button b{
font-family:'Plus Jakarta Sans',sans-serif;
display:block;
font-size:14px;
white-space:nowrap;
font-weight:700}
.store-button>span:last-child{
font-size:12px;
margin-left:auto}
.store-symbol{
font-family:Arial,sans-serif;
font-size:23px;
line-height:1}
.qr{
width:120px;
height:120px;
max-width:100%;
margin:13px auto 0;
object-fit:contain;
background:white;
border-radius:6px}
.qr-label{
font-size:9px;
color:var(--muted);
margin-top:2px}
.intro{
text-align:center;
padding-top:30px;
padding-bottom:42px}
.intro h2{
font-size:27px}
.section-lead{
margin-top:20px;
font-size:12px;
line-height:2}
.feature{
padding-top:28px;
padding-bottom:66px;
display:grid;
gap:32px;
--accent:#f1cdd9;
--art:#f6e6e9}
.mint{
--accent:#c7dfcf;
--art:#e3efe8}
.peach{
--accent:#edd5ae;
--art:#f6ecdb}
.feature-art{
height:410px;
border-radius:28px;
position:relative;
display:flex;
align-items:center;
justify-content:center;
isolation:isolate;
overflow:hidden;
background:var(--art)}
.feature-art:before{
content:'';
position:absolute;
width:290px;
height:290px;
border:1px solid rgba(255,255,255,.9);
border-radius:50%;
z-index:-1;
box-shadow:0 0 0 25px rgba(255,255,255,.25)}
.art-tag{
position:absolute;
left:22px;
top:24px;
font-family:'Plus Jakarta Sans',sans-serif;
font-size:8px;
font-weight:800;
letter-spacing:.17em;
writing-mode:vertical-rl}
.art-spark{
position:absolute;
right:22px;
top:20px;
font-size:45px;
color:#fff}
.feature-phone{
width:160px;
transform:rotate(-5deg);
padding:5px;
background:#fff;
border-radius:21px;
box-shadow:9px 16px 0 rgba(48,71,62,.06),0 15px 25px rgba(48,71,62,.08)}
.feature-phone img{
border-radius:16px;
width:100%}
.mint .feature-phone{
transform:rotate(5deg)}
.art-bubble{
position:absolute;
right:12px;
bottom:27px;
border-radius:16px;
background:white;
padding:13px 17px;
font-size:11px;
font-weight:700;
line-height:1.8;
transform:rotate(4deg);
box-shadow:0 4px 0 rgba(48,71,62,.07)}
.feature-number{
font-family:'Plus Jakarta Sans',var(--font);
font-size:15px;
font-weight:800;
display:flex;
align-items:center;
gap:12px;
margin-bottom:19px;
letter-spacing:.03em}
.feature-number>span{
font:700 11px var(--font);
border-left:1px solid #a9b6aa;
padding-left:12px}
.feature-copy h2{
font-size:26px;
line-height:1.65}
.feature-copy>p:not(.feature-number){
font-size:13px;
line-height:2.05;
margin-top:19px}
.feature-copy>.small-note{
font-size:10px!important}
.underline{
background:linear-gradient(transparent 67%,var(--accent) 67%,var(--accent) 91%,transparent 91%);
box-decoration-break:clone;
-webkit-box-decoration-break:clone}
.price-section{
background:#e9f0e6;
border-radius:42px 42px 0 0;
margin:5px 0 32px}
.price-inner{
padding-top:50px;
padding-bottom:50px;
display:grid;
gap:35px}
.price-copy h2{
font-size:26px}
.price-copy>p:not(.feature-number){
font-size:13px;
line-height:2.15;
margin-top:20px}
.creator-note{
display:inline-block;
font-size:10px;
margin-top:20px;
padding-bottom:4px;
border-bottom:1px solid #afc2ac}
.price-card{
background:var(--cream);
border:1px solid #bccbb9;
border-radius:25px;
padding:28px 25px;
text-align:center;
box-shadow:7px 7px 0 #dce6d6}
.price-card-top{
font-size:11px;
font-weight:700;
letter-spacing:.05em}
.price-amount{
display:flex;
justify-content:center;
align-items:baseline;
gap:8px;
margin-top:10px;
font-size:14px}
.price-amount strong{
font-family:'Plus Jakarta Sans',sans-serif;
font-size:68px;
line-height:1.4;
font-weight:800;
letter-spacing:-3px}
.price-tax{
font-size:10px;
color:var(--muted);
margin-top:0}
.price-rule{
height:1px;
background:#d8dfd2;
margin:22px 0}
.price-card ul{
text-align:left;
list-style:none;
margin:0 auto 26px;
padding:0;
width:max-content;
max-width:100%;
font-size:12px;
line-height:2.5}
.price-card li:before{
content:'✓';
margin-right:9px;
color:var(--green);
font-weight:800}
.price-card>.small-note{
margin-top:17px}
.lesson-steps{
display:flex;
gap:4px;
list-style:none;
padding:0;
margin:24px 0;
justify-content:space-between}
.lesson-steps li{
flex:1;
text-align:center;
background:#edf2e8;
border:1px solid #d5e1d3;
border-radius:10px;
padding:8px 2px;
min-width:0}
.lesson-steps b{
display:block;
font-family:'Plus Jakarta Sans',sans-serif;
font-size:13px;
font-weight:800}
.lesson-steps span{
display:block;
font-size:9px;
font-weight:700;
white-space:nowrap}
.feature-chip{
display:inline-block;
font-size:10px;
font-weight:700;
border:1px solid #dbcbae;
background:#f8f0e2;
padding:7px 13px;
border-radius:25px;
margin-top:22px}
.faq-section{
text-align:center;
padding-top:18px;
padding-bottom:65px}
.faq-list{
margin-top:30px;
text-align:left;
border-top:1px solid var(--line)}
details{
border-bottom:1px solid var(--line)}
summary{
display:flex;
align-items:center;
gap:12px;
padding:20px 0;
list-style:none;
font-size:12px;
font-weight:700;
cursor:pointer;
line-height:1.7}
summary::-webkit-details-marker{
display:none}
summary>span:first-child{
font-family:'Plus Jakarta Sans',sans-serif;
font-size:16px;
color:#bc718c;
font-weight:800}
.faq-toggle{
margin-left:auto;
font-size:22px;
transition:transform .2s;
flex-shrink:0}
details[open] .faq-toggle{
transform:rotate(45deg)}
.faq-answer{
font-size:12px;
line-height:2;
padding:0 30px 23px;
color:var(--muted)}
.faq-answer a{
text-decoration:underline;
text-underline-offset:3px}
.final-section{
background:#f3e3e7;
border-radius:55px 55px 0 0;
text-align:center;
overflow:hidden}
.final-inner{
position:relative;
padding-top:55px;
padding-bottom:50px}
.final-star{
position:absolute;
font-size:80px;
line-height:1;
color:#e6bdca;
top:17px;
left:-10px;
transform:rotate(-10deg)}
.final-inner>h2{
position:relative;
font-size:28px}
.final-inner>p:not(.eyebrow):not(.small-note){
font-size:13px;
margin-top:18px}
.final-inner .store-grid{
max-width:430px;
margin:28px auto 0}
.final-inner .qr{
width:108px;
height:108px}
.final-inner>.small-note{
margin-top:20px;
color:#685a60}
.site-footer{
padding-top:38px;
padding-bottom:30px}
.footer-top{
display:flex;
gap:24px;
align-items:center}
.footer-top>p{
font-size:9px;
line-height:1.85}
.site-footer nav{
display:flex;
flex-wrap:wrap;
gap:10px 18px;
margin-top:29px;
font-size:10px}
.site-footer nav a:hover{
text-decoration:underline}
.copyright{
font-family:'Plus Jakarta Sans',sans-serif;
font-size:9px;
color:var(--muted);
margin-top:25px}

@media(min-width:600px){
.section-wrap{
padding-left:40px;
padding-right:40px}
.hero h1{
font-size:46px}
.hero-lead{
font-size:15px}
.mobile-break{
display:none}
.hero-visual{
max-width:550px}
.carousel-track{
height:440px}
.hero-slide{
width:199px}
.hero-slide.is-prev{
transform:translateX(-171px) rotate(-9deg) scale(.82)}
.hero-slide.is-next{
transform:translateX(171px) rotate(9deg) scale(.82)}
.orbit{
width:440px;
height:440px}
.bubble-bottom{
left:0}
.download-panel{
padding:40px}
.store-grid{
max-width:500px;
margin:25px auto 0;
gap:22px}
.store-button{
padding:12px 16px;
gap:12px}
.store-button b{
font-size:19px}
.store-button small{
font-size:10px}
.qr{
width:144px;
height:144px}
.qr-label{
font-size:10px}
.intro h2{
font-size:34px}
.section-lead{
font-size:14px}
.feature{
grid-template-columns:1fr 1fr;
align-items:center;
gap:35px;
padding-top:48px;
padding-bottom:60px}
.feature-copy h2{
font-size:25px}
.feature-art{
height:450px}
.feature-phone{
width:175px}
.price-inner{
grid-template-columns:1fr 1fr;
align-items:center;
gap:40px}
.price-copy h2{
font-size:25px}
.price-card{
padding:30px 20px}
.faq-list{
max-width:760px;
margin:40px auto 0}
.faq-section{
padding-top:40px;
padding-bottom:85px}
.faq-section h2{
font-size:34px}
summary{
font-size:14px;
padding:26px 0}
.faq-answer{
font-size:14px}
.final-inner h2{
font-size:36px}
.final-inner .qr{
width:128px;
height:128px}
.final-star{
left:15%;
top:35px}
.footer-top{
justify-content:space-between}
.footer-top>p{
font-size:11px}
.site-footer nav{
font-size:11px}
}

@media(min-width:1000px){
.header-inner{
height:88px;
padding:0 40px}
.site-header nav{
display:flex}
.header-download{
font-size:13px;
padding:10px 23px}
.hero-inner{
display:grid;
grid-template-columns:1fr 1.1fr;
align-items:center;
gap:35px;
padding:65px 50px 55px}
.hero-copy{
text-align:left}
.hero h1{
font-size:50px;
line-height:1.55}
.hero .eyebrow{
font-size:13px}
.hero-lead{
font-size:15px;
margin-top:25px;
line-height:2.1}
.hero-facts{
justify-content:flex-start;
font-size:12px;
gap:18px;
margin-top:25px}
.hero-facts>span+span{
padding-left:18px}
.hero-cta{
display:flex;
max-width:310px;
margin-top:28px}
.hero-platform{
margin-left:66px}
.hero-visual{
width:100%;
margin:0;
padding-top:35px;
max-width:none}
.carousel-track{
height:467px}
.hero-slide{
width:214px}
.hero-slide.is-prev{
transform:translateX(-175px) rotate(-9deg) scale(.81)}
.hero-slide.is-next{
transform:translateX(175px) rotate(9deg) scale(.81)}
.orbit{
top:7%;
width:480px;
height:480px}
.bubble-top{
right:1%;
top:-10px;
font-size:16px}
.bubble-top span{
font-size:10px}
.bubble-bottom{
bottom:50px;
left:-4%;
font-size:12px}
.star-one{
left:0;
top:3%}
.star-two{
right:-1%;
bottom:16%}
.hero-foot{
font-size:11px;
padding-bottom:36px}
.download-section{
padding-top:15px;
padding-bottom:70px}
.download-panel{
display:grid;
grid-template-columns:1fr 1.12fr;
align-items:center;
gap:45px;
padding:45px 55px;
border-radius:35px}
.download-copy{
text-align:left}
.download-copy h2{
font-size:30px}
.download-copy>p:not(.eyebrow):not(.small-note){
font-size:15px}
.download-copy strong{
font-size:25px}
.small-note{
font-size:11px}
.download-panel .store-grid{
margin:0}
.intro{
padding-top:36px;
padding-bottom:45px}
.intro h2{
font-size:36px}
.feature{
gap:85px;
padding-top:45px;
padding-bottom:90px}
.feature-art{
height:545px;
border-radius:35px}
.feature-phone{
width:209px}
.art-tag{
left:29px;
top:38px;
font-size:10px}
.art-spark{
right:37px;
top:34px;
font-size:58px}
.art-bubble{
right:28px;
bottom:52px;
font-size:14px;
padding:15px 23px}
.feature-number{
font-size:19px;
gap:17px;
margin-bottom:25px}
.feature-number>span{
font-size:13px;
padding-left:17px}
.feature-copy h2{
font-size:33px}
.feature-copy>p:not(.feature-number){
font-size:15px;
margin-top:25px}
.feature-copy>.small-note{
font-size:11px!important}
.price-section{
border-radius:70px 70px 0 0;
margin:10px 0 40px}
.price-inner{
gap:90px;
padding-top:70px;
padding-bottom:70px}
.price-copy h2{
font-size:32px}
.price-copy>p:not(.feature-number){
font-size:14px}
.price-card{
max-width:390px;
margin-left:auto;
width:100%;
padding:35px}
.price-amount strong{
font-size:88px}
.price-card-top{
font-size:13px}
.price-card ul{
font-size:13px}
.feature-lesson .feature-art{
order:2}
.lesson-steps{
gap:7px;
margin:29px 0}
.lesson-steps li{
padding:12px 5px}
.lesson-steps b{
font-size:15px}
.lesson-steps span{
font-size:10px}
.feature-chip{
font-size:12px;
padding:8px 18px}
.faq-section{
padding-top:10px;
padding-bottom:100px}
.final-section{
border-radius:90px 90px 0 0}
.final-inner{
padding-top:70px;
padding-bottom:65px}
.final-inner h2{
font-size:40px}
.final-inner>p:not(.eyebrow):not(.small-note){
font-size:15px}
.final-star{
left:18%;
top:50px;
font-size:110px}
.site-footer{
padding-top:45px;
padding-bottom:40px}
.site-footer nav{
gap:24px}
}

@media(max-width:359px){
.header-inner{
padding:0 14px}
.header-download{
padding:8px 12px;
font-size:11px}
.hero-inner{
padding-left:18px;
padding-right:18px}
.hero h1{
font-size:32px}
.section-wrap{
padding-left:18px;
padding-right:18px}
.download-panel{
padding:28px 14px}
.store-grid{
gap:8px}
.store-button{
gap:5px;
padding:10px 6px}
.store-button b{
font-size:12px}
.store-symbol{
font-size:20px}
.hero-slide.is-prev{
transform:translateX(-121px) rotate(-9deg) scale(.8)}
.hero-slide.is-next{
transform:translateX(121px) rotate(9deg) scale(.8)}
.feature-copy h2{
font-size:24px}
.bubble-bottom{
left:0;
font-size:9px}
}

.platform-icon{
width:22px;
height:27px;
flex-shrink:0}
.store-button small{
font-size:9px}
.bubble-bottom{
bottom:94px}
.hero-slide{
height:100%}
.carousel-pause:disabled{
opacity:.5;
cursor:default}

@media(min-width:600px){
.store-button small{
font-size:10px}
.bubble-bottom{
bottom:100px}
}

@media(min-width:1000px){
.bubble-bottom{
bottom:100px;
left:-4%}
}

/* Readable body text and supporting labels across mobile and desktop. */
.hero-lead,.section-lead,.feature-copy>p:not(.feature-number),.price-copy>p:not(.feature-number),.final-inner>p:not(.eyebrow):not(.small-note){font-size:16px}
.download-copy>p:not(.eyebrow):not(.small-note),.faq-answer,summary{font-size:15px}
.hero-facts{font-size:14px}
.hero-facts b{font-size:20px}
.hero-platform,.hero-foot,.footer-top>p{font-size:14px!important}
.small-note,.feature-copy>.small-note,.price-tax{font-size:12px!important}
.hero .eyebrow,.intro .eyebrow{font-size:15px}
.site-header nav{font-size:16px}
.feature-number{font-size:20px;align-items:baseline}
.feature-number>span{font-size:16px;line-height:1.8}
.site-footer nav{font-size:14px}
.download-copy>p>span,.tax,.qr-label,.copyright{font-size:11px}
.price-card ul{font-size:14px}
.price-card-top,#slide-caption{font-size:13px}
.art-bubble,.bubble-bottom{font-size:12px}
.bubble span{font-size:11px}
.lesson-steps span{font-size:11px}
.feature-chip{font-size:12px}
.brand .brand-wordmark{width:130px;height:auto;border-radius:0}
.hero-platform{margin-left:0}
.store-button small{font-size:11px}
.store-button b{font-size:16px}
@media(max-width:599px){
.hero-facts{flex-direction:column;align-items:center;gap:5px}
.hero-facts>span+span{border-left:0;padding-left:0}
.footer-top{flex-direction:column;align-items:flex-start;gap:16px}
.store-button .platform-icon,.store-button>span:last-child{display:none}
.store-button small{text-align:center}
.store-button{padding:12px 6px}
.lesson-steps{gap:3px}
}
@media(min-width:1000px){
.brand .brand-wordmark{width:150px}
.hero .eyebrow,.intro .eyebrow{font-size:16px}
.hero-facts{font-size:16px}
.hero-platform,.hero-foot,.footer-top>p{font-size:15px!important}
.feature-number{font-size:22px}
.feature-number>span{font-size:18px}
.site-footer nav{font-size:15px}
.hero-lead,.section-lead,.feature-copy>p:not(.feature-number),.price-copy>p:not(.feature-number),.final-inner>p:not(.eyebrow):not(.small-note){font-size:17px}
.download-copy>p:not(.eyebrow):not(.small-note),.faq-answer{font-size:16px}
.price-card ul{font-size:15px}
.store-button b{font-size:19px}
.art-bubble{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
html{
scroll-behavior:auto}
*,*:before,*:after{
transition:none!important;
animation:none!important}
}
