/* Touch-first navigation; desktop composition remains independent. */
.mobile-action-bar,.mobile-scan-navigation,.phone-open-mobile,.mobile-explore-hint,.mobile-image-close{display:none}.back-arrow{transform:rotate(180deg)}
@media(max-width:720px){
 :root{scroll-padding-top:90px;scroll-padding-bottom:110px}
 body{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}
 .nav-shell{height:64px;padding:8px 10px 8px 16px;gap:8px}.site-header{top:max(10px,env(safe-area-inset-top,0px));width:calc(100% - 24px)}
 .nav-cta{display:none!important}.menu-toggle{width:48px;height:48px}.nav-right{gap:3px}#language{min-width:48px;min-height:48px;font-size:13px}
 .brand{font-size:16px}.brand img{width:28px;height:28px}.hero{padding-top:120px}
 .hero-copy h1{font-size:clamp(39px,10.4vw,64px)}.hero-description{font-size:16px;line-height:1.55;max-width:340px}.hero-demo-note{font-size:11px;line-height:1.5}.hero-discover{min-height:50px;font-size:14px;padding:14px 20px}.hero-intro{max-width:380px}
 .hero-micro-card{display:none}.scene-status{font-size:13px}.food-photo-label{font-size:14px;min-height:57px}.hero-wipi-chip strong{font-size:14px}.hero-wipi-chip small{font-size:12px}.hero-wipi-chip>span{padding:10px 8px}.macro-glass .glass-caption{font-size:10px}.macro-glass .micro-label{font-size:11px}
 .moment-dock{width:100%;max-width:390px;border-radius:20px;gap:4px;padding:5px}.moment-dock button{flex:1;min-height:48px;padding:12px 7px;font-size:12px;justify-content:center;border-radius:15px}.moment-dock b{font-size:10px}
 .hero-bottom{padding-bottom:26px}.eyebrow,.hero-copy .eyebrow,.scan-copy .eyebrow{font-size:11px}.section-heading p:last-child,.section-description,.scan-copy .section-description{font-size:16px;line-height:1.6}
 .mobile-action-bar{position:fixed;bottom:0;left:0;right:0;z-index:105;display:flex;gap:10px;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:#f9f8f4ed;backdrop-filter:blur(20px);border-top:1px solid #e5e0eb;box-shadow:0 -5px 25px #30213b06}
 .mobile-explore-menu{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;flex:.85;border:1px solid #ddd6e6;border-radius:17px;background:white;font-size:14px;font-weight:600}.mobile-explore-menu .icon{width:19px}.mobile-start{min-height:50px;flex:1.15;border-radius:17px;font-size:14px;padding:12px;background:#26222f;box-shadow:none}
 body.modal-open .mobile-action-bar,body.mobile-cta-in-view .mobile-action-bar{display:none}
 .mobile-nav{position:fixed;top:auto;left:0;right:0;bottom:calc(94px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 200px);overflow:auto;margin:0;padding:18px;background:#fcfbf9;border:1px solid #eee8f2;border-radius:24px;box-shadow:0 0 0 100vmax #17121f35,0 15px 55px #22112e25;backdrop-filter:none}
 .site-header:has(.mobile-nav:not([hidden])){top:auto;bottom:0;transform:translateX(-50%)}.site-header:has(.mobile-nav:not([hidden])) .nav-shell{position:fixed;bottom:calc(100dvh - 84px - env(safe-area-inset-top,0px));left:0;right:0}
 .mobile-menu-title{font-size:14px;font-weight:650;color:#4d3a65;margin:0 8px 9px}.mobile-nav a{min-height:50px;padding:14px 12px;font-size:16px}.mobile-menu-close{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px;margin-top:8px;background:#eee8f5;border-radius:13px;color:#594473;font-size:14px}
 .scan-grid{display:flex;flex-direction:column;gap:20px}.scan-copy{display:contents}.scan-copy>.eyebrow{order:0;margin:0;justify-content:center}.scan-copy>h2{order:1;text-align:center;margin:0}.scan-copy>.section-description{order:2;text-align:center;margin:0}.scan-stage{order:3;margin:0 auto;height:590px;touch-action:pan-y pinch-zoom}.scan-controls{order:4;width:100%;gap:6px}.scan-copy>.micro-text{order:5;font-size:12px;line-height:1.6;color:#766b81;margin:0;text-align:left;max-width:none}.scan-step{min-height:82px;padding:11px 7px}.scan-step strong{font-size:12px;line-height:1.4}.scan-step>b{font-size:11px}
 .scan-phone{width:235px;margin-top:-35px}.scan-pop{display:none}.scan-stage-label{font-size:10px}.scan-next,.scan-counter{display:none}.scan-laser{width:195px;left:calc(50% - 97px)}
 .mobile-scan-navigation{display:flex;position:absolute;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px}.mobile-scan-navigation button{height:48px;min-width:48px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #cfc1e0;border-radius:15px;background:#faf8fd;padding:12px 16px;font-size:14px}.mobile-scan-navigation button:last-child{background:#292232;color:white;border-color:#292232}.mobile-scan-position{font-size:14px;color:#715a88;font-variant-numeric:tabular-nums}
 .mobile-explore-hint{display:block;text-align:center;font-size:12px;color:#756985;margin:-10px 0 20px;line-height:1.5}.explore-display{touch-action:pan-y pinch-zoom;height:550px}.explore-phone{width:224px}.phone-open-mobile{display:block;position:absolute;inset:0;z-index:5;background:transparent;border:0;border-radius:30px;touch-action:pan-y pinch-zoom}.expand-screen{width:48px;height:48px;right:12px;top:5px}.display-caption{font-size:11px;line-height:1.4;padding:0 20px}.explore-tabs{gap:6px;padding:6px}.explore-tab{min-height:76px;padding:13px 7px}.explore-tab strong{font-size:12px}.explore-tab>.icon:first-child{width:21px;height:21px}
 .wipi-topics{gap:7px}.wipi-topics button{min-height:48px;padding:12px 10px;font-size:12px}.wipi-copy>p:not(.eyebrow){font-size:16px}.interaction-label{font-size:11px;line-height:1.6}.wipi-message{font-size:16px}.wipi-message small{font-size:11px}.wipi-touch-label{font-size:13px}
 .educator-connect{grid-template-columns:1fr;gap:10px;max-width:360px;margin-top:35px}.educator-connect:before{display:none}.connect-side{min-height:116px;gap:7px;padding:18px}.connect-side strong{font-size:17px}.connect-side>span:last-child{font-size:13px;line-height:1.6}.connect-side>img,.educator-avatar{width:38px;height:38px}.connect-qr{height:100px;width:100%;gap:9px}.connect-qr>.icon{width:28px;height:28px;padding:9px}.connect-qr span{font-size:13px;max-width:none}.connection-detail>p{font-size:14px}.connection-extra strong{font-size:17px}.connection-extra p{font-size:15px}.educator-bottom{font-size:13px;gap:12px}.educator-bottom a{min-height:48px;padding:10px 18px;border:1px solid #dad0e6;border-radius:14px}.educator-bottom span{line-height:1.6}
 .faqs summary{min-height:48px;font-size:16px;gap:16px}.faqs details{padding:14px 0}.faqs details p{font-size:15px}.footer-links{gap:5px 16px;font-size:13px}.footer-links a{min-height:44px;display:flex;align-items:center}.footer-bottom small{font-size:11px}.motion-toggle{min-height:48px;min-width:105px;font-size:12px}.footer-top>span{font-size:12px;max-width:135px}.start-card>small{font-size:12px;line-height:1.6}.start-card>.btn{min-height:50px;font-size:14px}.store-line{font-size:13px}
 dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px));overscroll-behavior:contain}.dialog-close,.screen-dialog .dialog-close{width:48px;height:48px;min-width:48px;min-height:48px}.download-dialog{padding:35px 24px}.download-dialog>p{font-size:16px}.download-dialog .dialog-note{font-size:13px}.platform-pending span{font-size:13px}.download-dialog .inline-link{min-height:48px;font-size:14px}.download-dialog>img{margin-bottom:24px}
 .screen-dialog{padding:10px;width:calc(100% - 20px);max-width:500px}.screen-dialog .dialog-close{margin-bottom:-48px;right:0;top:0}.mobile-image-close{display:flex;position:sticky;bottom:0;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:13px 16px;border:1px solid #ddd2e9;border-radius:13px;background:#fbf9fe;color:#4b365f;font-size:15px;margin-top:10px;box-shadow:0 -5px 20px #21112d0c}
 @media(hover:none){.hero-wipi-chip:hover,.wipi-touch:hover{transform:none}.hero-wipi-chip:hover img{transform:none}.explore-display:hover .explore-phone{transform:none}}
}
@media(max-width:359px){.hero-description{font-size:15px}.brand{font-size:15px}.hero-copy h1{font-size:39px}.moment-dock button{font-size:11px}.scan-step strong{font-size:11px}.scan-phone{width:218px}.scan-stage{height:550px}.wipi-topics button{font-size:11px;padding:10px 8px}.mobile-start,.mobile-explore-menu{font-size:13px}.explore-tab strong{font-size:11px}}
@media(max-width:720px) and (max-height:520px){.mobile-nav{max-height:calc(100dvh - 110px);bottom:80px}.mobile-menu-title{display:none}.mobile-nav a{min-height:44px;padding:10px}.mobile-action-bar{padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}}
