/* Mobile composition. Desktop layout stays in landing.css. */
.mobile-subject-label{display:none}
.tour-mechanics details{border-top:1px solid var(--line);padding-top:18px}
.tour-mechanics summary{font-size:18px;line-height:1.3;font-weight:700;list-style:none;cursor:pointer}
.tour-mechanics summary::-webkit-details-marker{display:none}
@media(min-width:701px){.tour-mechanics details:not([open])>p{display:block}.tour-mechanics summary{pointer-events:none}}
@media(max-width:700px){
html{scroll-padding-top:16px}body{font-size:16px;line-height:1.55}.wrap{width:calc(100% - 40px)}
section,.recognition,.tour,.lesson-proof,.case-study,.mentor,.memory,.subjects,.price{padding-block:48px}
h2,.recognition-title h2,.case-heading h2,.mentor-intro h2,.memory-copy h2,.price-intro h2,.finish h2,.lesson-proof-heading h2{font-size:clamp(32px,8.7vw,39px);line-height:1.08;letter-spacing:-.035em;text-wrap:pretty}
.section-head{margin-bottom:24px}.section-head>p,.mentor-intro>p,.case-heading>p{font-size:16px;line-height:1.55;margin-top:18px}.section-head p br,.mentor-intro p br{display:none}
header{height:68px}.brand{font-size:25px}.login{padding:10px 14px}.mobile-nav summary{font-size:14px}.mobile-nav nav{right:-77px}
.hero{padding:18px 0 40px;gap:10px}.hero h1{font-size:clamp(38px,10.4vw,45px);line-height:1.04}.hero-copy>.lead{font-size:18px;line-height:1.5;margin-top:20px}.hero-copy>.lead br{display:none}.hero-copy>p:not(.lead){font-size:14px;line-height:1.55;margin-top:14px}.hero .actions{margin-top:20px;gap:6px}.hero .textlink{font-size:14px;justify-self:center}.hero-trial{text-align:center;font-size:12px}.button{min-height:52px;font-size:15px}
.phone-stage{height:330px;padding-top:25px;margin-top:20px}.phone{width:165px;height:305px;border-radius:29px;border-width:4px}.island{width:62px;height:17px;top:9px}.phone-copy{bottom:15px;left:12px;right:12px}.phone-copy h2{font-size:21px}.phone-copy p{display:none}.phone-watch{font-size:8px;min-height:32px;padding:6px;margin-top:10px}.hero-thought{font-size:21px;width:150px;left:0;top:3px;transform:rotate(-9deg);text-align:left}.hero-paper{font-size:20px;padding:12px 15px;bottom:-5px;right:0;max-width:220px}.phone-stage .phone{margin-left:30px}
.recognition-title .lead{font-size:17px;margin-top:18px}.recognition{gap:20px}.recognition-scene{height:335px}.recognition-scene>img{height:290px;width:205px}.recognition-scene .thought-cloud{font-size:22px;padding:14px 19px;top:0;right:0}.recognition-lines{max-width:225px;bottom:0}.recognition-lines p{padding:10px 12px;margin-top:8px}.recognition-lines strong{font-size:14px}.recognition-lines span{font-size:12px}
.tour-steps{gap:0;margin-bottom:24px}.tour-steps button{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 3px;min-height:50px}.tour-steps button strong{display:none}.tour-steps button>span{font-size:14px;line-height:1}.tour-steps button small{font-size:14px;font-weight:650;margin:0}.tour-stage{gap:22px}.tour-panel{padding:0;min-height:0}.tour-panel h3{font-size:25px;line-height:1.15}.tour-panel>p{font-size:16px;line-height:1.55;margin-top:14px}.tour-student-man{display:none}.tour-result{margin-top:16px;padding-top:14px}.tour-result strong{font-size:15px}.app-window{box-shadow:0 10px 22px #16171916}.window-bar{font-size:11px;padding:2px 10px}.window-bar button{font-size:12px}.tour-mechanics{gap:0;margin-top:24px}.tour-mechanics details{padding:0;border-top:1px solid #c9ccc5}.tour-mechanics summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;min-height:54px;font-size:16px}.tour-mechanics summary:after{content:'+';font-size:23px;font-weight:400}.tour-mechanics details[open] summary:after{content:'−'}.tour-mechanics p{margin:0 0 20px;font-size:15px}.tour-handoff{margin-top:24px;padding-top:20px;border-top:1px solid #c9ccc5}.tour-handoff .handnote{display:none}.tour-handoff p{margin:0;font-size:15px}
.lesson-proof-heading{margin-bottom:24px}.lesson-proof-heading>p{font-size:16px;margin-top:18px}.lesson-proof-heading>p br{display:none}.lesson-proof-grid{gap:26px}.lesson-margin{font-size:25px;max-width:225px;margin-top:20px}.lesson-signature{width:70px;height:100px;right:3px;bottom:0}.graph-notebook{transform:none;padding:22px 18px}.graph-task h3{font-size:23px}.graph-controls button{font-size:12px;line-height:1.3}.graph-caption{font-size:14px;min-height:0}
.study-moment{gap:20px;padding-block:35px}.study-photo{transform:none}.study-photo img{height:180px}.study-caption h2{font-size:30px}.study-caption h2 br{display:none}.understanding{font-size:31px;margin-bottom:12px}.study-caption>p:not(.understanding){margin-top:12px}.study-caption>p br{display:none}
.case-choices button{padding:14px 0;min-height:60px}.case-choices span{font-size:15px;max-width:210px}.case-choices small{font-size:11px}.case-workspace{padding:0;gap:20px}.exam-sheet{transform:none;padding:23px 20px}.exam-sheet h3{font-size:21px}.equation{font-size:36px;margin-left:0}.equals-zero{font-size:34px}.student-work{font-size:28px;min-height:145px}.student-work .ink-reveal{font-size:25px;max-width:100%}.work-eraser{width:55px;height:48px;left:calc(100% + 5px);top:-8px}.sheet-footer strong{font-size:24px}.next-practice{padding-top:55px}.practice-bridge{left:5px;top:0}.practice-bridge .handnote{font-size:24px}.practice-bridge svg{height:40px;width:45px}.practice-ticket{transform:none;padding:23px 20px}.practice-ticket h3{font-size:27px}.practice-ticket>p,.practice-return{font-size:15px}.practice-app-link{font-size:14px;margin-left:0}.case-bottom .handnote{font-size:25px;margin-top:20px}
.mentor-app{gap:24px;padding-block:0 24px}.physics-task h3{font-size:24px}.app-path{margin-bottom:16px}.mentor-equation{margin-top:20px}.mentor-equation .fraction{font-size:32px}.mentor-doubt{margin-top:24px}.mentor-doubt p{font-size:15px;margin-top:16px}.mentor-context{margin-top:20px}.mentor-listen{margin-top:12px;gap:15px}.mentor-listen img{width:60px;height:80px}.mentor-listen .handnote{font-size:25px}.mentor-panel{padding-top:24px}.message{font-size:15px;line-height:1.55;padding:14px;margin-right:12px}.message.student{margin-left:20px}.formula-message{font-size:25px}.mentor-bottom{gap:16px;margin-top:24px}.mentor-bottom strong{font-size:15px}
.memory-copy p{font-size:16px}.memory-copy .lead{font-size:19px}.memory-scene{padding-top:150px}.memory-scene>img.memory-finger{height:205px;width:145px;right:12px;top:-20px}.memory-paper{transform:none;padding:23px 20px}.memory-switch button{font-size:12px}.memory-paper p{font-size:15px;min-height:0}
.mobile-subject-label{display:block;font-size:13px;font-weight:600;margin-bottom:24px}.mobile-subject-label select{display:block;width:100%;margin-top:8px;min-height:54px;padding:12px 38px 12px 14px;border:1px solid #b9bcb6;border-radius:8px;background:#fff;color:#191919;font:600 16px Onest,sans-serif}.subject-tabs{display:none}.subject-choice-row{margin-bottom:18px}.exam-picker{gap:8px}.exam-picker button{flex:1;font-size:15px}.subject-art{min-height:230px}.subject-art>div{left:20px;bottom:20px}.subject-art h3{font-size:29px}.subject-detail{gap:22px}.subject-content>h3{font-size:26px}.subject-content>p,.subject-content li{font-size:15px}.subject-content .subject-access{font-size:13px}
.price{gap:26px}.price-intro{position:relative}.price-intro .lead{font-size:22px;margin-top:22px}.price-intro>p{font-size:16px}.price-intro>img{display:none}.price-sheet{transform:none;padding:28px 22px}.price-number>strong{font-size:72px}.price-number>span{font-size:15px}.price-sheet li{display:block;padding:14px 0}.price-sheet li strong{font-size:15px;max-width:none}.price-sheet li span{display:block;text-align:left;max-width:none;font-size:13px;margin-top:5px}.price-sheet .tape{width:70px;height:22px;top:-11px}.faq{padding-top:12px;padding-bottom:48px}.faq .section-head>p{padding-right:80px;min-height:75px;font-size:15px}.faq-key{width:70px;height:75px}.faq summary{font-size:16px;gap:18px}.faq details{padding:17px 0}.faq details p{font-size:15px}
.finish{padding-top:45px}.finish>.wrap{gap:0}.finish p{font-size:16px;line-height:1.55}.finish .button{width:100%;margin:24px 0}.finish-plane{display:none}.finish-person{height:280px;margin-top:30px}.finish-person .thought-cloud{font-size:22px;top:0;right:0;max-width:170px;padding:14px 18px}.finish-person>img{width:88%;object-position:left bottom}.site-footer{padding:32px 0}.site-footer>.wrap{gap:24px}.site-footer .links{gap:0 18px;justify-content:flex-start}.site-footer .links a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}.footer-legal{font-size:12px}.payment-marks{justify-content:flex-start;gap:14px}
#screen-dialog{width:calc(100vw - 24px);max-width:none;overflow:auto}#large-screen{width:800px;max-width:none}.dialog-bar{position:sticky;left:0;top:0;z-index:1;background:#191a1b;min-width:calc(100vw - 24px)}
}
/* Mobile narrative: product first, cause and next step together. */
.mobile-case-link,.mobile-price-trial,.mechanic-essential,.mobile-tour-more{display:none}
.case-full>summary,.faq-more>summary{display:none}
.case-full{min-width:0}.faq-more{padding:0!important;border:0!important}
@media(min-width:701px){.case-full{display:contents}.case-full>.exam-sheet{display:block}.faq-more>details{display:block}}
@media(max-width:700px){
.hero{position:relative;padding-bottom:30px}.hero-copy>p:not(.lead){display:none}.hero-copy>.lead{max-width:32ch}.phone-stage{height:245px;padding-top:0;margin-top:12px}.phone{height:225px;width:137px;border-radius:23px;transform:rotate(9deg)}.phone-copy h2{font-size:18px}.phone-copy{left:10px;right:10px;bottom:13px}.phone-watch{display:none}.hero-thought{top:28px;width:120px;font-size:21px}.hero-paper{right:0;bottom:0;font-size:20px;max-width:190px;padding:10px 12px}.phone-stage .phone{margin-left:0}.recognition{display:none}
.tour .section-head>p{margin-top:14px}.tour .section-head h2{font-size:32px}.tour .section-head{margin-bottom:18px}.tour-panel>p,.tour-result{display:none}.tour-panel h3{font-size:24px}.tour-stage{gap:16px}.tour-steps{margin-bottom:20px}.product-collage .screen-viewport{height:255px;aspect-ratio:auto!important}.screen-viewport img{width:165%;max-width:none;transform:translate(-2%,-17%)}.screen-viewport[data-screen=homework] img{transform:translate(-2%,-20%)}.screen-viewport[data-screen=practice] img{transform:translate(-2%,-25%)}
.tour-mechanics{margin-top:22px;gap:18px}.tour-mechanics>article{border:0;padding:0}.tour-mechanics>article>h4{padding:0;min-height:0;font-size:16px;pointer-events:none}.tour-mechanics>article>h4:after{display:none}.tour-mechanics>article>.mechanic-essential{display:block;margin:7px 0 0;font-size:15px;line-height:1.5}.tour-mechanics .mechanic-full{display:none!important}.tour-mechanics .mobile-tour-more{display:block;border-top:1px solid #c9ccc5}.mobile-tour-more summary{font-size:14px}.mobile-tour-more p{font-size:15px;margin-bottom:16px}.tour-handoff{display:none}
#study-moment{display:none}.lesson-proof .lesson-margin,.lesson-signature{display:none}.lesson-proof-grid{gap:24px}.lesson-proof-heading h2{font-size:32px}.lesson-proof-heading>p{font-size:15px}.lesson-credit{margin-top:12px}.graph-task h3{font-size:21px}.graph-notebook{padding:20px 16px}.graph-notebook svg{max-height:235px}.graph-caption{font-size:13px}
.case-heading>p{font-size:15px;margin-top:14px}.case-choices{margin-bottom:22px}.case-choices button{min-height:50px;padding:12px 0}.case-choices small{display:none}.case-choices span{max-width:none}.mobile-case-link{display:grid;grid-template-columns:1fr;gap:6px;background:#fffdf5;color:#263951;padding:21px 20px;margin:0 0 16px}.mobile-case-link>span{font-size:12px;color:#58616c}.mobile-case-link strong{font-size:20px;line-height:1.3;letter-spacing:-.02em}.mobile-case-link .mobile-case-arrow{font-size:25px;color:#c73528;line-height:1;margin:5px 0}.mobile-case-link strong:last-child{color:#a33025}.case-workspace{gap:20px}.case-full{width:100%;order:2}.case-full>summary{display:flex;align-items:center;justify-content:space-between;min-height:48px;font-size:14px;list-style:none;cursor:pointer;border-block:1px solid #444}.case-full>summary:after{content:'+';font-size:22px}.case-full[open]>summary:after{content:'−'}.case-full>.exam-sheet{margin-top:20px}.case-full:not([open])>.exam-sheet{display:none}.next-practice{padding:0;order:1}.practice-bridge,.ticket-label,.practice-ticket>h3,.practice-ticket>p,.practice-return,.practice-app-link{display:none}.practice-ticket{padding:20px}.micro-task{margin:0;padding:0;border:0}.micro-task>span{font-size:15px}.micro-task strong{font-size:32px}.case-bottom{margin-top:22px;padding-top:18px}.case-bottom .handnote{display:none}.case-bottom>p{font-size:14px}
.mentor-intro{gap:0;margin-bottom:20px}.mentor-intro>p{font-size:15px;margin-top:14px}.mentor-app{display:flex;flex-direction:column;gap:0;border:0;padding:0}.mentor-panel{order:0;padding:0;border:0}.physics-task{order:1;margin-top:20px}.physics-task>.app-path,.physics-task>h3,.mentor-equation,.mentor-doubt,.mentor-listen{display:none}.mentor-context{margin:0;padding:16px 0;border-block:1px solid #333d40}.mentor-context span{display:none}.mentor-context strong{font-size:14px;margin:0}.mentor-header{padding-bottom:14px}.mentor-bottom{display:none}.mentor-thread{gap:10px}.message{font-size:15px}.formula-message{font-size:24px}.mentor-more{margin-top:14px}
.memory-copy p:not(.lead){font-size:15px}.memory-copy p:last-child{display:none}.memory-scene{padding-top:90px}.memory-scene>img.memory-finger{height:150px;width:110px;top:-35px;right:8px}.memory-paper{position:relative}.memory-copy .lead{margin-top:16px}.memory-paper p{font-size:14px}
.subject-art{min-height:190px}.subject-content>h3,.subject-content>p:not(.subject-access){display:none}.subject-content{display:flex;flex-direction:column}.subject-content>.button{order:-2;margin-top:0}.subject-content>.subject-access{order:-1;margin:12px 0 4px}.subject-topics-title{margin-top:16px}.subject-content ul{margin-bottom:0}.subject-detail{gap:18px}
.price-intro>.lead,.price-intro>p:not(.lead){display:none}.price{gap:24px}.price-intro h2{font-size:32px}.price-sheet{display:flex;flex-direction:column}.price-number{order:0}.mobile-price-trial{display:block;order:1;font-size:14px;margin:18px 0 14px;line-height:1.4}.price-sheet>.button{order:2}.price-sheet>ul{order:3;margin:22px 0 0}.price-sheet li{padding:12px 0}.price-sheet li span{font-size:13px}.price-sheet li strong{font-size:14px}
.faq .section-head>p{display:none}.faq .section-head{margin-bottom:20px}.faq-more>summary{display:flex;font-size:15px;min-height:52px;align-items:center;margin-top:8px;color:#a33025}.faq-more:not([open])>details{display:none}.faq-more>details{border-bottom:1px solid var(--line)}.faq-more>summary::-webkit-details-marker,.case-full>summary::-webkit-details-marker{display:none}.finish h2{font-size:32px}.finish p{font-size:15px}.finish-person{height:215px;margin-top:10px}.finish-person .thought-cloud{font-size:21px;max-width:160px}
}

@media(max-width:700px){.tour-mechanics>article>h4{margin:0}.phone-copy{display:none}.screen-viewport img{width:145%;transform:translate(-2%,-17%)}.screen-viewport[data-screen=homework] img{transform:translate(-2%,-18%)}.screen-viewport[data-screen=practice] img{transform:translate(-2%,-22%)}}
@media(max-width:700px){.product-collage .screen-viewport[data-screen=lesson]{height:auto;aspect-ratio:1.49!important}}
/* Hero frame reserved for a full-size vertical video, with unobstructed artwork. */
@media(max-width:700px){
 .hero .phone-stage{display:flex;flex-direction:column;align-items:center;gap:20px;height:auto;padding:0;margin-top:30px;isolation:isolate}
 .hero .hero-thought{position:static;transform:none;width:auto;max-width:100%;text-align:center;font-size:25px;line-height:1.1}
 .hero .hero-thought br{display:none}
 .hero .phone-stage .phone{width:min(280px,calc(100% - 16px));height:auto;aspect-ratio:9/16;flex:none;margin:0;transform:none;border:3px solid #797a76;border-radius:31px;box-shadow:8px 18px 35px #0005}
 .hero .phone>img,.hero .phone>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% center}
 .hero .phone:after{display:none}
 .hero .phone .island{width:78px;height:21px;top:11px}
 .hero .hero-paper{position:static;max-width:100%;width:280px;margin:3px 0 8px;padding:15px 19px;transform:rotate(-3deg);font-size:24px;line-height:1.15;text-align:center}
}
/* Larger desktop hero artwork. */
@media(min-width:1101px){
 .hero{grid-template-columns:1.12fr 1fr;gap:44px;padding-bottom:70px}
 .hero .phone-stage{height:730px;padding-top:65px;padding-bottom:45px}
 .hero .phone{width:340px;height:620px;border-radius:44px;transform:rotate(6deg)}
 .hero .hero-thought{top:0;font-size:30px;width:300px}
 .hero .hero-paper{bottom:-12px;right:0;font-size:26px;padding:18px 24px}
 .hero .phone-copy{left:25px;right:25px;bottom:30px}
 .hero .phone-copy h2{font-size:37px}
 .hero .phone-copy p{font-size:14px}
 .hero .phone-watch{font-size:12px;min-height:48px}
}
@media(min-width:701px) and (max-width:1100px){
 .hero .phone-stage{height:610px;padding-top:65px;padding-bottom:35px}
 .hero .phone{width:270px;height:510px;transform:rotate(5deg)}
 .hero .hero-paper{bottom:-15px;right:0}
}
@media(min-width:1101px){.hero .hero-thought{top:-22px}.hero-copy{align-self:start;padding-top:45px}}

/* Consistent tall phone proportions and a separate handwritten aside. */
.hero .hero-copy>.hero-thought{position:static;inset:auto;display:block;transform:rotate(-5deg);width:280px;max-width:100%;margin:45px 0 0;text-align:left;font-size:29px}
@media(min-width:1101px){.hero .phone-stage{height:830px;padding:15px 0 55px}.hero .phone{width:350px;height:auto;aspect-ratio:9/19.5;flex:none}.hero .phone>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .hero-paper{bottom:-5px}}
@media(min-width:701px) and (max-width:1100px){.hero .phone-stage{height:670px;padding:15px 0 50px}.hero .phone{width:270px;height:auto;aspect-ratio:9/19.5;flex:none}.hero .phone>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .hero-copy>.hero-thought{width:230px;font-size:25px;margin-top:35px}}
@media(max-width:700px){.hero .phone-stage .phone{aspect-ratio:9/19.5}.hero .hero-copy>.hero-thought{width:auto;text-align:center;margin:24px 0 0;transform:none;font-size:25px}.hero .phone-stage{margin-top:20px}}

/* The frame follows the film: no letterboxing or crop. */
.hero .phone-stage .phone.phone-video{aspect-ratio:auto;height:auto;background:#080909}
.hero .phone.phone-video:after{display:none}
.hero .phone.phone-video>video{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:transparent}
.hero .phone-stage:has(.phone-video) .hero-paper{pointer-events:none}
.hero-video-play{position:absolute;inset:0;z-index:4;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}
.hero-video-play:focus-visible{outline:3px solid #f5e6a8;outline-offset:-6px}
@media(min-width:1101px){.hero .phone-stage:has(.phone-video){height:710px;padding-bottom:55px}.hero .phone-stage:has(.phone-video) .hero-paper{bottom:-10px}}
@media(min-width:701px) and (max-width:1100px){.hero .phone-stage:has(.phone-video){height:560px;padding-bottom:40px}.hero .phone-stage:has(.phone-video) .hero-paper{bottom:-10px}}

/* iPhone silhouette: titanium edge, inset display and camera island. */
.hero .phone-stage .phone.phone-video{aspect-ratio:9/19.5;height:auto;border:5px solid #868782;border-radius:48px;box-shadow:0 0 0 1px #d4d4cb, inset 0 0 0 3px #131414,14px 24px 45px #0006;overflow:hidden}
.hero .phone.phone-video>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;aspect-ratio:auto}
.phone-camera{position:absolute;z-index:5;top:15px;left:50%;transform:translateX(-50%);width:95px;height:27px;border-radius:30px;background:#050505;pointer-events:none;box-shadow:0 1px 1px #ffffff19}
.phone-camera:after{content:"";position:absolute;width:8px;height:8px;right:12px;top:9px;border-radius:50%;background:#112031;box-shadow:inset 0 0 3px #030303}
.hero-play-icon{display:grid;place-items:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:#faf9f6ed;color:#c73528;box-shadow:0 4px 26px #0004}
.hero-play-icon svg{width:34px;height:34px;fill:currentColor}
.hero-video-play.has-started .hero-play-icon{display:none}
@media(min-width:1101px){.hero .phone-stage:has(.phone-video){height:830px}}
@media(min-width:701px) and (max-width:1100px){.hero .phone-stage:has(.phone-video){height:670px}}
@media(max-width:700px){.hero .phone-stage .phone.phone-video{border-width:4px;border-radius:39px}.phone-camera{width:80px;height:24px;top:12px}.phone-camera:after{top:8px}.hero-play-icon{width:68px;height:68px}}

.analytics-notice{position:fixed;z-index:1000;bottom:16px;left:16px;right:16px;max-width:720px;margin:auto;background:#fff;color:#191919;padding:18px 22px;border:1px solid #ddd;border-radius:14px;box-shadow:0 8px 35px #0002;display:flex;align-items:center;gap:20px;font:13px/1.45 Arial,sans-serif}.analytics-notice p{margin:0}.analytics-notice a{text-decoration:underline}.analytics-notice>div{display:flex;gap:8px}.analytics-notice button{min-height:44px;padding:10px 13px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;font-weight:600}.analytics-notice button[data-consent=accepted]{background:#c73528;color:#fff;border-color:#c73528}@media(max-width:700px){.analytics-notice{display:block;padding:16px;bottom:10px;left:10px;right:10px}.analytics-notice>div{margin-top:12px}.analytics-notice button{flex:1}}
