/* Mobile reading and touch layout, shared by all three homepages. */
@media(max-width:760px){
 html{scroll-padding-top:20px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{font-size:16px;line-height:1.7}
 header{position:static;top:auto;padding:8px 5%;gap:6px}
 header .brand .academy-logo{width:88px;height:56px}
 .languages a{min-width:40px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px;padding:8px}
 .menu{min-width:44px;min-height:44px;margin:0;font-size:24px}
 header .login{display:none}
 nav.open{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;max-height:65vh;overflow-y:auto;margin:0;padding:8px 0;width:100%}
 nav>a{font-size:15px;min-height:44px;display:flex;align-items:center;padding:8px 0}
 nav .mobile-login{display:flex;grid-column:1/-1;color:var(--teal);border-top:1px solid var(--line);margin-top:4px}
 .announcement{font-size:12px;line-height:1.6;padding:8px 18px}.announcement a{display:inline-block;padding:3px 0}
 .hero{min-height:0}.hero-copy{padding:32px 6% 24px;min-width:0}
 .hero h1{font-size:clamp(30px,8.8vw,44px);letter-spacing:-1.2px;line-height:1.27;overflow-wrap:break-word}
 .hero-copy>p{font-size:16px;line-height:1.8;margin-top:22px}.hero-copy>p br{display:none}
 .eyebrow{font-size:11px;line-height:1.6;letter-spacing:1px}.hero-note{font-size:13px;line-height:1.7;margin-top:26px;padding-top:18px}
 .actions{width:100%;display:grid;gap:12px;margin-top:26px}.button,.text-button{font-size:16px;line-height:1.5;min-height:52px;padding:14px 20px;white-space:normal;text-align:center}
 .hero-photo{height:430px;margin:10px 5% 24px;border-radius:90px 0 0}
 .photo-label{font-size:13px;max-width:calc(100% - 30px);right:15px;top:18px;padding:12px 14px;line-height:1.5}
 .photo-card{padding:20px;left:14px;right:14px;bottom:14px}.photo-card>span{font-size:10px;line-height:1.6}.photo-card>a{font-size:14px;min-height:48px}
 .values{font-size:13px;line-height:1.6;gap:16px;padding:22px 6%}
 .section{padding:48px 6%}.section-top{margin-bottom:26px}.section-top>p{font-size:16px;line-height:1.8;margin-top:20px}.section-top>p br{display:none}
 h2{font-size:clamp(28px,7.8vw,36px);letter-spacing:-1px;overflow-wrap:break-word}
 .catalog-tools{display:flex;flex-direction:column;gap:20px}.tabs{gap:8px}.tabs button,.schedule-tabs button{font-size:14px;min-height:48px;padding:11px 14px}
 .search{width:100%;border:1px solid #9aafad;border-radius:12px;padding:8px 14px;min-height:52px}.search input{width:100%;min-width:0;font-size:16px;min-height:36px}
 .course-grid,.article-grid,.social-layout{min-width:0}.course-body{padding:22px}.course h3{font-size:25px;line-height:1.4}.course-body>p{font-size:16px;line-height:1.75}.course-kicker,.course-art .tag{font-size:12px}.meta{font-size:13px;flex-wrap:wrap;gap:8px 16px}
 .course-foot{flex-wrap:wrap;gap:16px}.course-foot b{font-size:17px}.course-foot small{font-size:13px}.course-foot a{min-height:48px;font-size:15px}
 .catalog-bottom{font-size:16px;line-height:1.7;display:flex;flex-direction:column;gap:12px}.catalog-bottom .text-button{margin:0}
 .free-inner p,.about p,.community-grid p,.consult p,details p{font-size:16px;line-height:1.8}.free-band{padding:40px 6%}.free-inner{gap:24px}
 .schedule-row{grid-template-columns:70px minmax(0,1fr);gap:12px}.schedule-row h3{font-size:21px;line-height:1.4}.schedule-row p{font-size:15px;line-height:1.7}.schedule-date{font-size:13px;overflow-wrap:anywhere}.schedule-row>span{font-size:14px}.schedule-row>a{font-size:15px;min-height:48px}
 .article-body{padding:22px}.article-meta{font-size:12px;flex-wrap:wrap;gap:6px 12px}.article-card h3{font-size:25px;line-height:1.45}.article-card p{font-size:16px;line-height:1.75}.article-card .button{font-size:16px;min-height:50px}.article-language,.language-note,.almanac-note{font-size:13px;line-height:1.7}
 .article-visual.portrait{height:auto;aspect-ratio:3/4}.article-visual.portrait img{object-fit:contain}.article-card:hover .article-visual img{transform:none}
 .community-grid b{font-size:15px;min-height:48px}.community-grid span{font-size:12px}summary{font-size:17px;line-height:1.6;min-height:48px;padding:8px 24px 8px 0}
 .social-directory{grid-template-columns:1fr;padding:8px 20px}.social-profile{min-height:72px;gap:14px}.social-profile b{font-size:16px}.social-profile small{font-size:12px}.social-contact{font-size:15px;gap:4px}.social-contact a{min-height:44px;display:flex;align-items:center}
 .social-hub .section-top>p{font-size:16px;max-width:none}.social-tabs button{font-size:14px;min-height:48px}.social-refresh,.social-language{font-size:13px;line-height:1.6}.social-card{padding:20px}.social-card-top{font-size:12px;flex-wrap:wrap}.platform-badge{font-size:13px}.social-card>p{font-size:16px;line-height:1.75}.social-card>.text-button{font-size:15px;min-height:48px}
 .footer-links{gap:24px}.footer-links a{font-size:15px;min-height:44px}.footer-social-links a{font-size:14px;min-height:48px}.footer-bottom{font-size:13px;line-height:1.7}
 dialog{width:calc(100% - 24px);max-width:540px;max-height:calc(100dvh - 32px);overflow-y:auto;padding:32px 22px;overscroll-behavior:contain}dialog h2{font-size:28px;padding-right:22px}dialog p,.quiz-options button{font-size:16px;line-height:1.7}.quiz-options button{min-height:56px}.close{min-width:44px;min-height:44px}
 img,iframe{max-width:100%}.hero-copy,.section-top>div,.about>div,.free-inner>div{min-width:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
