/* Mobile layout: Figma 2758:41152 (390px). */
.mobile-only{display:none}
@media(max-width:900px){
  .mobile-only{display:initial}.desktop-only{display:none!important}
  html{scroll-padding-top:16px}body{background-size:13px 13px}
  .section{padding:56px 24px}.section-heading{margin-bottom:32px}.section-heading h2,.section-heading h2.display-heading{font-family:var(--body);font-size:28px;font-weight:700;line-height:1.45}
  .eyebrow{line-height:1.8;margin-bottom:12px}
  .header-inner{width:calc(100% - 40px);height:68px}.header-inner .brand{gap:8px}.header-inner .brand img:first-child{width:30px;height:32px}.header-inner .brand img:last-child{width:86px;height:24px}
  .menu-toggle{gap:5px}.menu-toggle span{height:2px}
  .hero-stage{height:623px;max-width:390px}
  .hero-copy{position:absolute;top:15px;left:24px;width:calc(100% - 48px);max-width:none;padding:0;margin:0}
  .hero h1{font-family:var(--body);font-size:23px;font-weight:700;line-height:1.45;letter-spacing:3px;white-space:nowrap}
  .hero h1 mark:before{bottom:0;height:14px}
  .hero-copy .store-links{margin-top:21px;gap:12px;height:42px}.hero-copy .store-links a:first-child img{width:113px;height:auto}.hero-copy .store-links a:last-child img{width:141px;height:auto}
  .hero-product{left:calc(50% - 98px);top:177px;width:196px;height:424.4px}.phone-image{border-radius:23px}
  .rating-app{left:calc(50% + 44px);top:200px;width:132px}.rating-google{left:calc(50% + 93.5px);top:287px;width:101.25px}
  .user-count{left:calc(50% - 194px);top:268px;width:143.775px}.rating-users{width:143.775px}.user-count>p{font-size:10px;line-height:14px;text-align:left;margin:-4px 0 0 18px;white-space:nowrap}
  .hero-parade.parade-active{position:absolute;top:448px;margin:0;height:250px}.parade-active .parade-inner{height:250px}.parade-unit{top:-12px;scale:.75;transform-origin:0 0}
  .hero-intro{padding:80px 24px 48px;min-height:0}.hero-intro h2{font-size:20px;line-height:1.45;gap:12px}.brand-intro{transform:none;margin:0;gap:9.935px;width:154px;height:39.742px;justify-content:center}.brand-intro img:first-child{width:37.258px;height:39.742px}.brand-intro img:last-child{width:106.806px;height:30.9px}.hero-intro>p{font-size:16px;line-height:1.8;margin:20px auto 0;max-width:342px}
  .problem{padding:56px 24px 0;height:auto}.problem .section-heading{margin-bottom:24px}.problem .eyebrow{margin-bottom:12px}.problem h2{font-family:var(--body);font-weight:700;font-size:27px;line-height:1.45}
  .problem-scene{width:100%;height:589.28px;gap:0}.bubble{font-size:15px;line-height:24px;width:calc(100% + 9px)!important;max-width:calc(100% + 9px);flex:none}.bubble>p{width:calc(100% - 48px)}.bubble p br{display:initial}.bubble-top{height:114.83px!important}.bubble-left{height:128.45px!important}.bubble-right{height:117px!important}.bubble-left>img{transform:scaleX(-1)}
  .problem-shiru{width:248px;height:248px;margin-top:-3px;flex:none}.problem-shadow{display:block;position:absolute;left:calc(50% - 63px);top:575px;width:126px;height:auto}.dotted-connector{height:68px;margin-top:24px}
  .features.section{padding:40px 24px 56px;min-height:0}.features-heading{font-family:var(--body);font-size:20px;font-weight:700;line-height:1.6;margin:0 0 32px}.features-heading br{display:initial}
  .comparison-viewport{overflow:visible;cursor:auto;padding:0;scroll-snap-type:none}.comparison-track{width:100%;padding:0;display:flex;flex-direction:column;gap:32px}.comparison-card{width:100%;max-width:none;padding:0;gap:0;min-height:0;scroll-snap-align:none}
  .comparison-half{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:0}
  .before-after{font-size:27px;line-height:1}
  .comparison-half>div:not(.comparison-media){max-width:none;padding:12px 24px}
  .comparison-half h3{font-size:20px;line-height:1.62;letter-spacing:0}
  .comparison-half>div>p{font-size:14px;line-height:27px}
  .comparison-picture{width:min(270px,calc(100% - 48px));height:auto;aspect-ratio:1;margin:12px 0;object-position:center}
  .comparison-arrow{
    display:grid;place-items:center;width:100%;height:28px;align-self:stretch;
    border:0;border-block:1px solid var(--ink);transform:none;font-size:0;
  }
  .comparison-arrow::before{content:">";font-size:27px;line-height:1;transform:rotate(90deg)}
  .carousel-dots{display:none}
  .how.section{padding:56px 0}
  .how .section-heading{margin-bottom:32px}
  .how .section-heading h2.display-heading{line-height:1.45}
  .how .eyebrow{margin-bottom:12px}
  .step{padding-inline:12px}
  .step-row{gap:6px}
  .step-number{width:48px;filter:drop-shadow(2px 2px 0 #0004)}
  .step-number span{font-size:18.5px}
  .step-copy{flex-direction:column;align-items:flex-start;gap:4px}
  .step-copy h3{flex:auto;font-size:19px;line-height:16.2px;white-space:normal}
  .step-copy p{font-size:15px;line-height:14.4px;max-width:216px}
  .step-art{width:72.5px}
  .voice.section{padding:56px 24px}.voice .section-heading{padding:0;margin-bottom:32px}.voice-carousel{overflow:visible;padding:0;cursor:auto}.voice-carousel .voice-grid{display:flex;flex-direction:column;width:100%;padding:0;gap:32px}.voice-carousel .voice-card{width:100%;flex:none;height:auto;min-height:0;padding:28px 24px;gap:20px}.voice-carousel .voice-card[aria-hidden=true]{display:none}.voice-carousel .voice-card h3{text-align:left;font-size:20px;line-height:30px}.voice-card h3 br{display:none}.voice-carousel .voice-card>p{font-size:15px;line-height:27px}
  .story-card{padding:20px}.story-profile{gap:24px}.story-photo{width:180px;height:225px}.admission{width:100%;font-size:13px;line-height:1.8}.profile-copy h3{font-size:25px;line-height:1.45;margin:20px 0}.profile-copy dl{gap:24px}.profile-copy dt{line-height:21.6px}.profile-copy dd{line-height:25.2px}.story-body{margin-top:24px;font-size:16px;line-height:28.8px}
  .values.section{padding:56px 24px 0;min-height:0}.values-copy>.eyebrow{margin-bottom:24px}.values-copy h2{font-size:28px;line-height:1.45;margin-bottom:24px}.values-copy h3{font-size:18px;line-height:1.45;margin-bottom:24px}.values-copy>p:last-child{font-size:16px;line-height:28.8px}.values-copy>p:last-child br{display:none}.values-shiru{width:calc(100% + 48px);height:263px;flex:none;overflow:hidden;aspect-ratio:auto;margin-top:32px;animation:none!important}.values-shiru>img{left:7.3%;top:2px;width:82.85%;height:auto;max-width:none}
  .faq-list{gap:32px}.faq-item{padding:20px;gap:16px}.faq-item h3,.faq-item p{gap:12px;align-items:flex-start;min-height:0}.faq-item h3{font-size:18px;line-height:32.4px}.faq-item p{font-size:15px;line-height:27px}.faq-item img{width:28px;height:35.37px}
  .download.section{padding:56px 24px 48px}.download .section-heading{margin-bottom:24px}.download .eyebrow{margin-bottom:24px;letter-spacing:0}.download .section-heading h2{font-size:28px}.download-lead{margin-top:24px;line-height:28.8px;font-size:16px}.download-main{gap:24px}.download-stores{width:100%}.qr-stores{gap:12px;justify-content:center}
  .qr-stores>a{min-width:0}
  .qr-stores>a:first-child{flex:0 1 145px}
  .qr-stores>a:last-child{flex:0 1 179px}
  .qr-stores>a>img:not(.qr){width:100%;height:auto}
  .download-stores>p{margin:24px auto 0;font-size:13px;line-height:23.4px;text-wrap:balance}
  .download-stores>p span{white-space:nowrap}
  .download-shiru{width:220px;height:176.125px}.download-shiru .character-figure{top:-31px;height:220px}
  .follow.section{padding:40px 24px;gap:20px}.follow h2{font-size:22px;line-height:1.45}.follow mark{background:none}.follow mark:before{display:block;left:19%;right:19%;height:12px;bottom:-13px}.social-large{gap:21.46px}.social-large .social-icon{width:60px;height:60px}.social-large .social-icon img{width:30px;height:30px}
  .footer{padding:32px 24px}.footer-top{flex-direction:column;gap:24px}.footer-top .brand{transform:none;width:145px;height:37.42px;gap:9.35px}.footer-top .brand img:first-child{width:35.08px;height:37.42px}.footer-top .brand img:last-child{width:100.56px;height:28.06px}.footer-contact{font-size:15px;line-height:27px}.footer-policy{font-size:12px;line-height:21.6px;gap:24px;margin-top:24px}.footer-bottom{margin-top:24px;color:#66615a}.footer-bottom small{font-size:12px;line-height:21.6px}
}
@media(max-width:374px){.hero h1{font-size:20px;letter-spacing:2px}.download .section-heading h2{font-size:25px}}

@media(max-width:900px){
 .values-copy>p:last-child br{display:initial}
 .faq-item h3{min-height:35.37px}.faq-item p{min-height:35.37px}
 .follow h2{text-box-trim:trim-both;text-box-edge:cap alphabetic}
}
@media(max-width:900px){
 .follow.section{position:relative;gap:32px;isolation:isolate}
 .follow:before,.follow:after{content:"";position:absolute;left:50%;transform:translateX(-50%);height:12px;background:#ffda1a;z-index:-1}
 .follow:before{top:49.17px;width:min(286px,calc(100% - 48px))}
 .follow:after{top:81.17px;width:210px}
 .follow mark:before{display:none}
 .social-large .social-icon{width:60.359px;height:60.359px}
 .social-large .social-icon img{width:30.18px;height:30.18px}
}

/* Manual, bidirectional infinite testimonial carousel on mobile too. */
@media(max-width:900px){
 .voice.section{padding-inline:0}
 .voice .section-heading{padding-inline:24px}
 .voice-carousel{overflow-x:auto;padding:0 0 4px;cursor:grab;touch-action:pan-x pan-y}
 .voice-carousel .voice-grid{flex-direction:row;width:max-content;gap:24px;padding-inline:24px;align-items:stretch}
 .voice-carousel .voice-card,.voice-carousel .voice-card[aria-hidden=true]{display:flex;width:calc(100vw - 48px);flex:0 0 calc(100vw - 48px);height:auto;min-height:0}
 .voice-carousel.dragging{cursor:grabbing}
}

@media(max-width:900px){
 .voice-carousel .voice-grid{gap:16px;padding-inline:48px}
 .voice-carousel .voice-card,.voice-carousel .voice-card[aria-hidden=true]{width:calc(100vw - 96px);flex-basis:calc(100vw - 96px)}
 .voice-dots{margin-top:24px}
}

@media(max-width:900px){
 .hero-intro{padding-top:73px}
 .hero-intro>.hero-date-note{width:100%;max-width:342px;font-size:10px;line-height:18px;margin:0 auto 20px;text-align:right;color:#707070}
}
/* Keep the bottom crop fixed while the character greets inside it. */
@media(max-width:900px){
 .values-shiru.shiru,.values-shiru.shiru.is-greeting{animation:none!important;transform:none!important;will-change:auto}
 .values-shiru.shiru.is-greeting>img.mobile-only{animation:shiru-greeting .75s ease-in-out 1;transform-origin:50% 85%}
 .motion-paused .values-shiru.shiru.is-greeting>img.mobile-only{animation:none;transform:none}
}
@media(prefers-reduced-motion:reduce){.values-shiru.shiru.is-greeting>img.mobile-only{animation:none!important}}
/* Extra headroom for the greeting, with the same resting position and bottom edge. */
@media(max-width:900px){
 .values-shiru{margin-top:-16px;height:311px}
 .values-shiru>img.mobile-only{top:50px}
}

@media(max-width:900px){
  .intro-lockup{gap:5.6px}
  .intro-reading{font-size:12.6px}
}


@media(max-width:900px){
  .comparison-track{padding-block-start:var(--fold-space,0px);overflow-anchor:none}
  .comparison-media{
    display:flex;justify-content:center;align-items:flex-start;
    max-height:calc(var(--media-height,294px) * (1 - var(--fold-progress,0)));
  }
  .comparison-half>.comparison-media{max-width:none}
  .comparison-media.is-folded{visibility:hidden}
  .comparison-card + .comparison-card{translate:var(--entry-offset,0px) 0}
}
