/* The desktop layout is intentionally 80% of its original visual size.
   Phones keep native-size text and touch targets. */
@media (min-width: 900px) {
  body { zoom: .8; }
}
.landing-page .self-study-options b del{display:block;color:#8c766b;font-size:13px;font-weight:400}
.trainer-page .trainer-repeat{padding-block:58px;column-gap:60px;align-items:center}
.trainer-page .trainer-repeat>div{max-width:520px;justify-self:center}
.trainer-page .trainer-repeat>div>h2{font-size:clamp(35px,4vw,52px);line-height:1.05}
.trainer-page .trainer-repeat>div>p{font-size:17px;line-height:1.75;margin-block:24px;max-width:480px}
.trainer-repeat .progress-preview{max-width:430px;padding:21px;transform:none}
.trainer-repeat .progress-preview-heading{margin-block:18px 16px}
.trainer-repeat .progress-preview-heading h3{font-size:21px}
.trainer-repeat .preview-columns{height:112px}
@media(max-width:620px){.trainer-page .trainer-repeat{padding-block:36px;gap:28px}.trainer-page .trainer-repeat>div>h2{font-size:35px}.trainer-page .trainer-repeat>div>p{font-size:15px}.trainer-repeat .progress-preview{padding:18px}}

.mobile-menu-toggle{display:none}
@media(max-width:800px){
 .site-header .header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:15px 18px}
 .site-header .brand{margin-right:auto;font-size:31px}
 .site-header .login-button{width:44px;height:44px;min-height:44px;padding:9px;justify-content:center;margin:0;border-radius:50%}
 .site-header .login-button span{display:none}
 .site-header .mobile-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:none;width:44px;height:44px;border:1px solid #ffffff35;border-radius:13px;background:#ffffff12;color:#fffaf5;padding:10px;cursor:pointer}
 .mobile-menu-toggle span{height:2px;width:20px;background:currentColor;border-radius:2px;transition:transform .18s ease,opacity .18s ease}
 .mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}
 .mobile-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
 .site-header .top-nav{display:none!important;order:5;flex:0 0 100%;width:100%;margin:0;padding-top:12px;border-top:1px solid #ffffff25}
 .site-header .top-nav.is-open{display:grid!important;grid-template-columns:1fr;gap:4px}
 .site-header .top-nav a{display:block;width:100%;padding:13px 12px;text-align:left;font-size:15px;border-radius:11px}
 .site-header .top-nav a.active{background:#ffffff16;color:#fffaf5}
}

.personal-copy-label{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:12px;color:#75685f;font-size:11px;line-height:1.5;font-weight:400;overflow-wrap:anywhere}
.personal-copy-label code{font:inherit;letter-spacing:.025em;color:#584941;user-select:all}
.variant-heading>.personal-copy-label{grid-column:1/-1;margin:0}
.variant-inline-task>.personal-copy-label{padding-top:12px;border-top:1px solid #e9dfd7}
.teacher-copy-lookup{margin:24px 0;padding:22px;background:#fffaf5;border-radius:16px;box-shadow:0 5px 18px #49322610}
.teacher-copy-lookup>summary{cursor:pointer;font-weight:600}
.teacher-copy-lookup form{margin-top:18px;max-width:660px}
.teacher-copy-lookup label{display:block;margin-bottom:8px;font-size:14px}
.teacher-copy-lookup form>div{display:flex;gap:12px;align-items:stretch}
.teacher-copy-lookup input{min-width:0;flex:1;padding:12px;border:1px solid #cdbeb1;border-radius:10px;background:#fff;font:inherit}
@media(max-width:620px){.teacher-copy-lookup{padding:18px}.teacher-copy-lookup form>div{flex-direction:column}.personal-copy-label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.mobile-menu-toggle span{transition:none}}

.variant-audio-source{max-width:1000px;margin:12px auto 20px!important;font-size:13px;line-height:1.7}.variant-audio-source a{display:inline-flex;align-items:center;gap:8px;text-decoration:underline;color:#493a2e}.variant-audio-source span{display:block;margin-top:5px;color:#6e6054}.variant-correct-count{margin-top:12px!important;font-size:16px}
