@media (max-width: 1120px) {
  .primary-nav { gap: 16px; }
  .header-actions .button { display: none; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 38px; }
  .category-strip { grid-template-columns: repeat(3,1fr); }
  .sign-grid { grid-template-columns: repeat(3,1fr); }
  .coverage-grid { grid-template-columns: repeat(3,1fr); }
  .admin-card-grid { grid-template-columns: 1fr; }
}

@media (max-width: 1040px) {
  :root { --header-height: 68px; }
  .announcement { display: none; }
  .site-header__main { height: var(--header-height); }
  .header-grid { grid-template-columns: auto 1fr auto; gap: 14px; }
  .mobile-menu-button { display: inline-grid; }
  .header-grid > .brand { justify-self: center; }
  .primary-nav { display: none; }
  .header-actions .header-login, .header-account span { display: none; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { max-width: 760px; }
  .hero-visual { width: min(100%,720px); margin-inline: auto; }
  .lesson-grid, .pricing-grid, .test-mode-grid, .exam-group-grid { grid-template-columns: repeat(2,1fr); }
  .feature-grid { grid-template-columns: repeat(2,1fr); }
  .feature-card:last-child { grid-column: 1 / -1; }
  .steps-grid { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: repeat(2,1fr); }
  .glossary-layout, .content-page-layout, .support-grid { grid-template-columns: minmax(0,1fr) 275px; }
  .lesson-layout, .result-layout { grid-template-columns: minmax(0,1fr) 270px; }
  .auth-shell { grid-template-columns: .8fr 1.2fr; }
  .auth-story { padding-inline: 34px; }
  .admin-shell { grid-template-columns: 230px minmax(0,1fr); }
  .sticky-save-bar { inset-inline-start: 230px; }
  .admin-main { padding: 22px; }
  .admin-stat-grid { grid-template-columns: repeat(2,1fr); }
  .coverage-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
  .section { padding-block: 54px; }
  .section--compact { padding-block: 42px; }
  .page-hero__inner { display: block; }
  .trust-band__grid { grid-template-columns: repeat(2,1fr); }
  .trust-band__grid > div:nth-child(2) { border-inline-end: 0; }
  .trust-band__grid > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.13); }
  .split-section, .split-section--question, .faq-home-grid, .test-config-hero__grid, .test-config-layout,
  .lesson-layout, .result-layout, .support-grid, .content-page-layout, .glossary-layout, .checkout-layout,
  .dashboard-grid, .account-layout, .admin-form-layout, .admin-split-grid, .admin-split-grid--wide,
  .admin-two-column, .admin-system-grid, .admin-ticket-layout { grid-template-columns: 1fr; }
  .lesson-sidebar, .result-sidebar, .content-page-aside, .glossary-tip, .test-config-aside, .order-summary,
  .dashboard-aside, .account-tabs, .admin-form-aside, .admin-card--sticky { position: static; }
  .feature-grid, .lesson-grid, .pricing-grid, .test-mode-grid, .exam-group-grid { grid-template-columns: repeat(2,1fr); }
  .category-strip { grid-template-columns: repeat(2,1fr); }
  .sign-grid { grid-template-columns: repeat(2,1fr); }
  .lesson-hero__grid, .student-hero__grid { grid-template-columns: 1fr; }
  .lesson-hero__mark { display: none; }
  .result-hero__inner { grid-template-columns: auto 1fr; }
  .result-actions { grid-column: 1 / -1; }
  .exam-layout { grid-template-columns: 1fr; }
  .exam-sidebar { position: static; }
  .question-map { grid-template-columns: repeat(10,1fr); }
  .checkout-header__inner { grid-template-columns: 1fr auto; }
  .checkout-header__security { display: none; }
  .checkout-footer .container { display: grid; }
  .metric-grid { grid-template-columns: repeat(2,1fr); }
  .subscription-details { grid-template-columns: 1fr; }
  .account-tabs { display: flex; overflow-x: auto; }
  .account-tabs a { white-space: nowrap; }
  .auth-shell { grid-template-columns: 1fr; }
  .auth-story { display: none; }
  .auth-panel { min-height: 100vh; padding-inline: 24px; }
  .auth-mobile-logo { display: block; margin-block: 18px 10px; }
  .admin-shell { display: block; }
  .admin-sidebar { position: fixed; inset-block: 0; inset-inline-start: 0; width: min(82vw,300px); transform: translateX(-105%); transition: transform .28s ease; box-shadow: var(--shadow-lg); }
  html[dir="rtl"] .admin-sidebar { transform: translateX(105%); }
  .admin-sidebar.is-open { transform: translateX(0); }
  .admin-sidebar__close, .admin-menu-button { display: inline-grid; }
  .sticky-save-bar { inset-inline: 0; }
  .admin-dashboard-grid { grid-template-columns: 1fr; }
  .admin-card--wide { grid-column: auto; }
  .settings-switches { grid-template-columns: 1fr; }
  .ticket-meta { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 620px) {
  body { font-size: 14px; }
  .container, .narrow { width: min(100% - 24px, var(--container)); }
  h1 { font-size: clamp(1.85rem,9vw,2.65rem); }
  h2 { font-size: clamp(1.45rem,7vw,2rem); }
  .section { padding-block: 50px; }
  .section--compact { padding-block: 38px; }
  .site-header__main { height: 64px; }
  :root { --header-height: 64px; }
  .brand__name { font-size: .96rem; }
  .brand__mark { width: 38px; height: 38px; }
  .header-actions { gap: 5px; }
  .header-actions .language-menu { display: none; }
  .hero-art-card, .hero-art-card > img { min-height: 390px; }
  .hero-progress-card { inset-inline: 14px; inset-block-end: 14px; width: calc(100% - 28px); }
  .hero-sign-card { inset-inline-end: 13px; inset-block-start: 13px; }
  .hero-sign-card span { display: none; }
  .hero-sign-card img { width: 54px; height: 54px; }
  .hero-actions, .cta-panel__actions, .status-card__actions { display: grid; width: 100%; }
  .hero-actions .button, .cta-panel__actions .button, .status-card__actions .button { width: 100%; }
  .feature-grid, .lesson-grid, .pricing-grid, .test-mode-grid, .exam-group-grid, .steps-grid, .sign-grid { grid-template-columns: 1fr; }
  .feature-card:last-child { grid-column: auto; }
  .category-strip { grid-template-columns: repeat(2,1fr); }
  .category-strip a { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .category-strip a > span { grid-row: auto; }
  .plan-card--featured { transform: none; }
  .cta-panel { display: grid; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-bottom__inner { padding-block: 18px; display: grid; }
  .cookie-banner { inset-inline: 10px; inset-block-end: 10px; width: calc(100% - 20px); }
  .cookie-banner__content { align-items: flex-start; }
  .cookie-banner__actions { display: grid; }
  .cookie-banner__actions .button { width: 100%; }
  .form-grid { grid-template-columns: 1fr; }
  .form-field--full, .field--full { grid-column: auto; }
  .form-actions, .button-row { align-items: stretch; }
  .form-actions .button, .button-row .button { flex: 1; }
  .filter-bar { align-items: stretch; flex-direction: column; }
  .search-field { width: 100%; min-width: 0; }
  .glossary-letter { position: static; }
  .topic-card-grid { grid-template-columns: 1fr; }
  .lesson-navigation { grid-template-columns: 1fr; }
  .lesson-navigation a:last-child { text-align: start; }
  .result-hero__inner { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .result-counts { grid-template-columns: 1fr; }
  .test-groups-hero { min-height: 350px; }
  .test-groups-hero__inner { padding-block: 40px 44px; }
  .exam-group-card { min-height: 0; }
  .question-map { grid-template-columns: repeat(6,1fr); }
  .exam-status-bar { align-items: stretch; flex-direction: column; }
  .exam-timer { width: 100%; }
  .exam-next-actions { display: grid; }
  .exam-next-actions .button { width: 100%; }
  .checkout-layout { padding-block: 28px 50px; }
  .checkout-header__inner .brand__name { display: none; }
  .coupon-row { display: grid; }
  .checkout-footer nav { flex-wrap: wrap; }
  .metric-grid, .admin-stat-grid { grid-template-columns: 1fr; }
  .continue-card { align-items: stretch; flex-direction: column; }
  .continue-card .button { width: 100%; }
  .attempt-list a { grid-template-columns: auto 1fr; }
  .attempt-list a > svg { display: none; }
  .student-nav a { padding-inline: 11px; }
  .student-nav a span { font-size: .75rem; }
  .account-panel { padding: 20px; }
  .admin-main { padding: 16px 12px 90px; }
  .admin-topbar { padding-inline: 12px; }
  .admin-user span { display: none; }
  .admin-page-header { align-items: stretch; flex-direction: column; }
  .admin-page-header__actions .button { width: 100%; }
  .admin-toolbar, .admin-toolbar__search { align-items: stretch; flex-direction: column; }
  .admin-toolbar__search .button { width: 100%; }
  .language-filter { width: 100%; }
  .language-filter select { flex: 1; }
  .coverage-grid { grid-template-columns: 1fr; }
  .admin-card { padding: 17px; }
  .admin-card__head, .panel-heading { align-items: flex-start; flex-direction: column; }
  .admin-card__head .language-filter { width: 100%; }
  .admin-card-grid { grid-template-columns: 1fr; }
  .ticket-meta { grid-template-columns: 1fr; }
  .conversation__message { max-width: 94%; }
  .file-list article { grid-template-columns: auto 1fr; }
  .file-list article .button { grid-column: 1 / -1; width: 100%; }
  .sticky-save-bar { padding-inline: 12px; }
  .sticky-save-bar > div { display: none; }
  .sticky-save-bar .button { width: 100%; }
  .inline-form { min-width: 220px; }
  .error-page__content { grid-template-columns: 1fr; }
  .error-page__visual { min-height: 250px; }
  .status-card { margin-block: 36px; padding: 28px 20px; }
}

@media (max-width: 390px) {
  .container, .narrow { width: min(100% - 22px, var(--container)); }
  .header-grid { gap: 7px; }
  .brand__mark { width: 34px; height: 34px; }
  .brand__name { font-size: .88rem; }
  .mobile-menu-button, .header-actions .icon-button { width: 41px; height: 41px; }
  .hero-art-card, .hero-art-card > img { min-height: 340px; }
  .category-strip { grid-template-columns: 1fr 1fr; gap: 8px; }
  .category-strip a { min-height: 115px; padding: 11px; }
  .trust-band__grid > div { padding-inline: 8px; }
  .question-map { grid-template-columns: repeat(5,1fr); }
  .student-nav a svg { display: none; }
}

/* Road-sign library — v1.2 */
@media (max-width: 1040px) {
  .sign-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .sign-library-hero-stats { margin-block-start: 22px; width: min(100%,360px); }
  .sign-group-header { grid-template-columns: auto minmax(0,1fr); }
  .sign-group-header__count { grid-column: 1 / -1; width: 100%; grid-template-columns: auto auto; justify-content: center; gap: 7px; }
}
@media (max-width: 620px) {
  .sign-library-intro { grid-template-columns: 1fr; }
  .sign-library-intro__icon { width: 50px; height: 50px; }
  .sign-category-grid { grid-template-columns: 1fr; }
  .sign-category-card { min-height: 100px; grid-template-columns: auto 62px minmax(0,1fr) auto; }
  .sign-category-card__image { width: 62px; height: 62px; }
  .sign-category-card__image img { width: 51px; height: 51px; }
  .sign-group-header { padding: 18px; grid-template-columns: 1fr; }
  .sign-group-header__number { width: 48px; height: 48px; }
  .sign-group-header__count { grid-column: auto; grid-template-columns: auto auto; justify-content: start; justify-items: start; width: max-content; min-width: 0; }
  .sign-group-intro,.sign-translation-notice { padding: 15px 16px; }
  .sign-grid { padding: 12px; gap: 12px; }
  .sign-card__image { min-height: 185px; }
  .sign-card__image img { height: 160px; }
}
@media (max-width: 390px) {
  .sign-library-hero-stats { grid-template-columns: 1fr; }
  .sign-category-card { grid-template-columns: auto 56px minmax(0,1fr); }
  .sign-category-card > svg { display: none; }
  .sign-category-card__image { width: 56px; height: 56px; border-radius: 15px; }
  .sign-category-card__image img { width: 46px; height: 46px; }
}
