/* Readable small labels, without changing the original visual direction. */
.brand-name small,.nav .brand-name small {font-size:10px;letter-spacing:1.3px}
.eyebrow,.card-number,.mini-label,.mini-footer,.question-index,.hint>span,.video-badge {font-size:11px}
.hero-proof,.hero-proof small,.portrait-caption small,.floating-bubble {font-size:12px}
.review-person strong,.review-person small,.reviews-instruction,#reviews-count,.video-notice,.source-note,footer>p,footer>span,.contact>small {font-size:12px}
.topic,.level-label,.text-button,.practice-copy .practice-note {font-size:13px}
.question-area>p,.hint>p {font-size:15px;line-height:1.7}
.mini-card {width:220px}
.mini-label {letter-spacing:1.1px}
.practice-section {align-items:start;gap:55px}
.practice-copy {padding-top:24px}
.practice-copy .practice-note {max-width:360px}
.sample-steps {display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:30px;font-size:12px;color:var(--muted)}
.practice .question-area {min-height:0}
.practice .question-area h3 {font-size:27px}
.choices {display:grid;gap:9px;margin:22px 0}
.choice {display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);border-radius:15px;background:var(--glass);color:var(--ink);padding:13px 15px;font-size:14px;line-height:1.5;min-height:48px}
.choice::before {content:'';width:15px;height:15px;border:1px solid var(--muted);border-radius:50%;flex-shrink:0}
.choice:hover {border-color:var(--blue)}
.choice[aria-pressed=true] {border-color:#6484bc;background:#6484bc16}
.choice[aria-pressed=true]::before {background:var(--blue);box-shadow:inset 0 0 0 3px #fff}
.speaking {padding:20px 0;border-top:1px solid var(--line)}
.speaking>p {font-size:16px;line-height:1.6;margin:10px 0}
.speaking #challenge {font-size:14px;color:var(--muted)}
.teacher-note {margin-top:18px;font-size:13px;color:var(--muted)}
.teacher-note summary {cursor:pointer;font-weight:600;color:var(--ink);padding:8px 0}
.teacher-note p {margin:10px 0 0;line-height:1.8}
.scenario-twist {border-left:3px solid var(--blue);padding:8px 0 8px 15px}
.sample-caption {font-size:12px;color:var(--muted);line-height:1.6;margin:18px 0 0}
.practice-actions .button:disabled {opacity:.5;transform:none;box-shadow:none}
[hidden] {display:none!important}
@media(max-width:1000px) and (min-width:761px){.practice-section{gap:28px}.practice-actions{flex-wrap:wrap}.mini-card{width:185px}.floating-bubble{max-width:250px}}
@media(max-width:760px){.practice-section{gap:24px}.practice-copy{padding-top:0}.mini-card{width:185px}.floating-bubble{font-size:11px;max-width:245px}.sample-steps{margin-top:22px}.practice-actions{flex-wrap:wrap}.practice .question-area h3{font-size:25px}.contact .eyebrow{font-size:11px}.mini-footer{font-size:11px}}
@media(max-width:370px){.mini-card{width:162px;padding:16px}.floating-bubble{max-width:220px}.portrait-caption small{font-size:11px}.practice{padding:20px}.practice-actions .button{font-size:12px}}
@media(prefers-color-scheme:dark){.choice[aria-pressed=true]{border-color:#91acd4;background:#91acd41a}.choice[aria-pressed=true]::before{box-shadow:inset 0 0 0 3px #273750}}

/* Supplied vector identity: preserve each asset's native proportions. */
.brand-logo{display:block;flex-shrink:0;line-height:0}
.brand-logo picture{display:block}
.brand-logo img{width:340px;height:auto;display:block}
footer .brand-logo img{width:320px}
@media(max-width:1000px) and (min-width:761px){.nav .brand-logo img{width:280px}.nav-links{gap:18px}}
@media(max-width:760px){.nav .brand-logo img{width:54px;aspect-ratio:1;object-fit:contain}.nav{padding:10px 15px}.nav .brand-logo{min-width:54px}footer .brand-logo img{width:min(280px,calc(100vw - 100px))}}
