@media (min-width: 992px) {
  body { font-size: 15px; }
  .sidebar { width: 264px; padding-right: 20px; padding-left: 20px; }
  .main-content { margin-left: 264px; }
  .workspace-copy small, .nav-label { font-size: 10px; }
  .workspace-copy strong { font-size: 13px; }
  .sidebar-nav .nav-link { min-height: 45px; }
  .security-note strong { font-size: 12px; }
  .security-note small, .role-switch small { font-size: 10px; }
  .role-switch strong { font-size: 13px; }

  .topbar { min-height: 78px; padding-right: 42px; padding-left: 42px; }
  .topbar-title, .top-search { font-size: 13px; }
  .top-search { min-width: 250px; }
  .profile-copy strong { font-size: 12px; }
  .profile-copy small { font-size: 10px; }
  .dashboard { max-width: 1540px; padding: 42px; }
  .eyebrow { font-size: 11px; }
  .welcome-subtitle { font-size: 15px; }
  .btn-primary, .btn-soft, .btn-demo { font-size: 13px; }
  .btn-link { font-size: 12px; }

  .stat-card { min-height: 120px; padding: 15px; }
  .stat-card-primary { grid-template-columns: 33px minmax(0,1fr) auto; gap: 12px; }
  .stat-icon { width: 33px; height: 33px; font-size: 15px; }
  .trend { font-size: 9px; }
  .stat-value > small { font-size: 10px; }
  .stat-number { font-size: 29px; }
  .stat-foot { font-size: 9px; }

  .panel-header { padding: 22px 22px 16px; }
  .panel-header h2 { font-size: 18px; }
  .panel-header p { font-size: 11px; }
  .panel-kicker { font-size: 9px; }
  .report-tools { padding-right: 22px; padding-bottom: 16px; padding-left: 22px; }
  .report-search, .filter-button { height: 41px; }
  .report-search input, .filter-button { font-size: 12px; }
  .form-label { font-size: 13px; }
  .form-control, .form-select { min-height: 48px; font-size: 15px; }
  .report-tabs { padding-right: 22px; padding-left: 22px; }
  .report-tabs button { font-size: 11px; }
  .report-row { min-height: 76px; padding-right: 22px; padding-left: 22px; }
  .report-thumbnail { width: 68px; height: 51px; flex-basis: 68px; }
  .report-copy strong { font-size: 13px; }
  .report-copy small { font-size: 10px; }
  .report-client strong { font-size: 11px; }
  .report-client small { font-size: 9px; }
  .access-badge { font-size: 9px; }
  .updated-time, .panel-footer { font-size: 10px; }
  .panel-footer { padding-right: 22px; padding-left: 22px; }

  .chart-summary strong { font-size: 30px; }
  .chart-summary span, .online-pill { font-size: 10px; }
  .chart-labels { font-size: 9px; }
  .analyst-profile strong { font-size: 12px; }
  .analyst-profile small { font-size: 10px; }
  .analyst-note { font-size: 11px; }
  .activity-item { grid-template-columns: 36px 1fr 30px; padding-top: 13px; padding-bottom: 13px; }
  .activity-avatar { width: 34px; height: 34px; font-size: 9px; }
  .activity-item p { font-size: 10.5px; }
  .activity-item small { font-size: 9px; }
  .activity-type { width: 29px; height: 29px; font-size: 11px; }
  .support-card strong { font-size: 12px; }
  .support-card p, .support-card .btn { font-size: 10px; }

  .modal-header .modal-step { font-size: 11px; }
  .modal-title { font-size: 26px; }
  .modal-header p { font-size: 14px; }
  .upload-dropzone strong { font-size: 14px; }
  .upload-dropzone p { font-size: 12px; }
  .secure-callout strong, .share-setting strong { font-size: 13px; }
  .secure-callout p, .share-setting small { font-size: 11px; }
  .share-people small { font-size: 11px; }
  .service-options span strong { font-size: 11px; }
  .service-options span small, .response-time { font-size: 9px; }

  .client-access-copy span { font-size: 9px; }
  .client-access-copy strong { font-size: 16px; }
  .client-access-copy small { font-size: 10px; }
  .client-report-progress > span { font-size: 9px; }
  .client-access-banner .btn-light { font-size: 11px; }

  .preview-header { height: 78px; flex-basis: 78px; gap: 15px; padding: 12px 20px; }
  .preview-header .report-back-button, .preview-header .icon-button { width: 42px; height: 42px; }
  .preview-actions .btn { min-height: 42px; padding-right: 15px; padding-left: 15px; font-size: 12px; }
  .preview-file-heading h2 { font-size: 17px; }
  .preview-file-heading p { font-size: 11px; }
  .report-type-pill, .secure-view-pill { padding: 4px 8px; font-size: 10px; }
  .report-preview-layout { height: calc(100vh - 78px); height: calc(100dvh - 78px); }
  .preview-index { padding: 30px 18px 20px; }
  .preview-index .nav-label { margin-bottom: 13px; font-size: 11px; }
  .report-section-nav { min-height: 62px; grid-template-columns: 34px 1fr 14px; gap: 11px; padding: 12px 11px; }
  .report-section-nav > span:first-child { width: 32px; height: 32px; font-size: 10px; }
  .report-section-nav strong { font-size: 13px; }
  .report-section-nav small { margin-top: 3px; font-size: 10px; }
  .report-section-nav > i { font-size: 10px; }
  .verified-stamp, .access-stamp { gap: 10px; padding-top: 14px; }
  .verified-stamp > i, .access-stamp > i { font-size: 18px; }
  .verified-stamp strong, .access-stamp strong { font-size: 11px; }
  .verified-stamp small, .access-stamp small { margin-top: 2px; font-size: 9px; }

  .preview-page { padding: 42px clamp(30px,3vw,54px) 78px; }
  .report-section { width: min(100%,1040px); }
  .preview-brand { gap: 10px; padding-bottom: 24px; }
  .preview-brand strong { font-size: 13px; }
  .preview-brand > small { font-size: 10px; }
  .preview-eyebrow { margin: 32px 0 10px; font-size: 11px; }
  .preview-page h3 { font-size: clamp(32px,2.8vw,44px); }
  .preview-page h4 { font-size: 18px; }
  .preview-summary { max-width: 820px; margin-top: 16px; font-size: 15px; line-height: 1.7; }
  .report-hero { grid-template-columns: minmax(0,1fr) 180px; gap: 38px; }
  .conviction-score { padding: 20px 16px; }
  .conviction-score > span { font-size: 10px; }
  .conviction-score > b { font-size: 11px; }
  .score-ring { width: 90px; height: 90px; margin: 12px 0 10px; border-width: 8px; }
  .score-ring strong { font-size: 30px; }
  .score-ring small { margin: 27px 0 0 30px; font-size: 10px; }
  .preview-metrics { margin: 28px 0 22px; border-radius: 14px; }
  .preview-metrics > button { min-height: 104px; padding: 20px 22px; }
  .preview-metrics span { font-size: 11px; }
  .preview-metrics strong { margin: 5px 0 3px; font-size: 28px; }
  .preview-metrics small { font-size: 10px; }
  .metric-arrow { top: 20px; right: 20px; font-size: 12px; }
  .meridian-take { gap: 15px; margin-bottom: 22px; padding: 18px; border-radius: 14px; }
  .meridian-take > span { width: 42px; height: 42px; font-size: 18px; }
  .meridian-take strong { font-size: 12px; }
  .meridian-take p { margin-top: 4px; font-size: 12px; line-height: 1.6; }
  .ask-about-button { min-height: 40px; font-size: 11px; }

  .report-grid-two { gap: 20px; }
  .report-card { border-radius: 15px; }
  .report-card-header { padding: 20px 21px 16px; }
  .report-card-header .panel-kicker { margin-bottom: 6px; }
  .report-card .panel-kicker { font-size: 10px; }
  .data-source { font-size: 10px; }
  .signal-list { padding: 0 21px 10px; }
  .signal-list > div { grid-template-columns: 36px 1fr auto; gap: 12px; padding-top: 15px; padding-bottom: 15px; }
  .signal-icon { width: 36px; height: 36px; font-size: 14px; }
  .signal-list strong { font-size: 12px; }
  .signal-list small { margin-top: 3px; }
  .signal-list small, .signal-list b { font-size: 10px; }
  .recommendation-card { padding: 22px; }
  .recommendation-card h4 { margin: 13px 0 11px; font-size: 20px; }
  .recommendation-card p { font-size: 12px; }
  .recommendation-card .btn { min-height: 40px; font-size: 11px; }
  .section-heading { margin-bottom: 28px; }
  .section-heading p:last-child { margin-top: 13px; font-size: 14px; line-height: 1.65; }
  .section-number { font-size: 56px; }
  .chart-feature-value { margin-top: 9px; }
  .chart-feature-value strong { font-size: 32px; }
  .chart-feature-value span { font-size: 11px; }
  .chart-metric-switch, .comp-filter, .scenario-presets { padding: 4px; border-radius: 10px; }
  .chart-metric-switch button, .comp-filter button, .scenario-presets button { min-height: 34px; padding: 8px 13px; font-size: 11px; }
  .interactive-market-chart { height: 270px; margin: 8px 22px 0 52px; }
  .market-y-labels { left: -42px; font-size: 10px; }
  .market-bars button span { bottom: -22px; font-size: 10px; }
  .chart-hover-value { padding: 7px 9px; font-size: 10px; }
  .chart-source { padding: 8px 22px 15px; font-size: 10px; }
  .market-driver-grid { gap: 15px; margin-bottom: 20px; }
  .market-driver-grid article { gap: 12px; padding: 18px; }
  .driver-icon { width: 38px; height: 38px; font-size: 15px; }
  .market-driver-grid small { font-size: 10px; }
  .market-driver-grid strong { margin-top: 4px; font-size: 13px; }
  .market-driver-grid p { margin-top: 5px; font-size: 11px; }
  .submarket-row { min-height: 58px; padding-right: 21px; padding-left: 21px; font-size: 12px; }
  .submarket-row.header { min-height: 40px; font-size: 10px; }
  .submarket-row small { margin-top: 3px; font-size: 10px; }
  .submarket-row > span:last-child b { font-size: 11px; }

  .comp-toolbar { margin-bottom: 16px; }
  .comp-map { height: 310px; }
  .map-label, .map-detail > span { font-size: 10px; }
  .map-pin { width: 30px; height: 30px; }
  .map-pin span { font-size: 10px; }
  .map-detail { right: 18px; bottom: 18px; width: 230px; padding: 16px; }
  .map-detail strong { margin-top: 4px; font-size: 14px; }
  .map-detail small, .map-detail em { font-size: 10px; }
  .map-detail > div { margin-top: 10px; padding-top: 10px; }
  .map-detail b { font-size: 11px; }
  .comp-table { font-size: 12px; }
  .comp-table th { font-size: 10px; }
  .comp-table th, .comp-table td { padding: 15px 17px; }
  .comp-number { width: 26px; height: 26px; font-size: 10px; }
  .match-score { padding: 5px 8px; }

  .scenario-presets { margin-bottom: 18px; }
  .scenario-layout { grid-template-columns: minmax(300px,.85fr) minmax(350px,1.15fr); gap: 18px; margin-bottom: 18px; }
  .scenario-controls { padding: 22px; }
  .scenario-control { margin-bottom: 26px; }
  .scenario-control label { font-size: 13px; }
  .scenario-control output { font-size: 15px; }
  .scenario-control input[type="range"] { height: 6px; margin: 16px 0 6px; }
  .range-labels { font-size: 10px; }
  .assumption-note { gap: 10px; padding: 13px; font-size: 11px; line-height: 1.55; }
  .scenario-results { gap: 12px; }
  .scenario-value-card { padding: 22px; }
  .scenario-value-card > span, .scenario-value-card > small { font-size: 10px; }
  .scenario-value-card > strong { margin: 7px 0 4px; font-size: 38px; }
  .value-meter { height: 6px; margin-top: 20px; }
  .value-scale { margin-top: 7px; font-size: 10px; }
  .scenario-result-grid { gap: 12px; }
  .scenario-result-grid > div { padding: 16px; }
  .scenario-result-grid span { font-size: 11px; }
  .scenario-result-grid strong { margin-top: 5px; font-size: 23px; }
  .scenario-result-grid small { margin-top: 3px; font-size: 10px; }
  .scenario-insight { gap: 10px; padding: 14px; }
  .scenario-insight p { font-size: 11px; }
  .sensitivity-card { padding-bottom: 20px; }
  .sensitivity-grid { gap: 5px; padding-right: 21px; padding-left: 21px; }
  .sensitivity-grid > * { min-height: 40px; font-size: 10px; }
  .report-section-footer { margin-top: 32px; padding-top: 24px; }
  .report-next-section { min-height: 104px; grid-template-columns: 50px minmax(0,1fr) auto; gap: 17px; padding: 20px 22px; }
  .next-section-number { width: 48px; height: 48px; font-size: 12px; }
  .next-section-copy > small { font-size: 10px; }
  .next-section-copy > strong { margin-top: 4px; font-size: 18px; }
  .next-section-copy > span, .next-section-action { font-size: 11px; }
  .next-section-action > i { width: 40px; height: 40px; }

  .rail-scroll { padding: 18px; }
  .rail-card { margin-bottom: 14px; padding: 18px; border-radius: 13px; }
  .rail-card-title { grid-template-columns: 36px 1fr 14px; gap: 10px; }
  .rail-icon { width: 35px; height: 35px; font-size: 15px; }
  .rail-card-title strong, .rail-card-heading strong { font-size: 13px; }
  .rail-card-title small { margin-top: 3px; font-size: 10px; }
  .rail-card-title > i { font-size: 12px; }
  .access-details { margin-top: 14px; }
  .access-details > div { padding: 8px 0; font-size: 11px; }
  .progress-card .rail-card-heading span, .progress-card > small { font-size: 10px; }
  .report-progress { height: 7px; margin: 12px 0 7px; }
  .ai-badge { padding: 4px 6px; font-size: 9px; }
  .ask-card > p { margin: 10px 0; font-size: 11px; }
  .question-chips { gap: 7px; margin-bottom: 10px; }
  .question-chips button { padding: 7px 9px; font-size: 10px; }
  .rail-input { padding: 5px 5px 5px 10px; }
  .rail-input input { font-size: 11px; }
  .rail-input button { width: 30px; height: 30px; }
  .report-answer { grid-template-columns: 28px 1fr; gap: 9px; padding: 10px; }
  .report-answer > span { width: 27px; height: 27px; }
  .report-answer p, .report-note p { font-size: 10px; }
  .notes-card .rail-card-heading span { width: 22px; height: 22px; font-size: 10px; }
  .report-note-list { margin: 11px 0; }
  .report-note { padding: 10px; }
  .report-note small { margin-top: 5px; font-size: 10px; }
  .notes-card textarea { padding: 10px; font-size: 11px; }
  .notes-card .btn { margin-top: 8px; padding: 9px; font-size: 10px; }
  .report-review-footer { padding: 14px 18px; }
  .report-review-footer .btn { min-height: 42px; font-size: 11px; }
  .report-review-footer span { margin-top: 7px; font-size: 10px; }

  .mobile-report-actions { right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); gap: 8px; padding: 8px; border-radius: 16px; }
  .mobile-report-actions button { min-height: 50px; gap: 8px; font-size: 11px; }
  .mobile-report-actions button > i { font-size: 17px; }
  .mobile-report-actions button > b { width: 19px; height: 19px; font-size: 9px; }
  .mobile-tool-sheet { right: 16px; bottom: calc(86px + env(safe-area-inset-bottom)); max-height: min(520px,70dvh); padding: 22px; border-radius: 18px; }
  .mobile-tool-sheet-header { margin-bottom: 16px; }
  .mobile-tool-sheet-header span { font-size: 9px; }
  .mobile-tool-sheet-header h4 { font-size: 19px; }
  .mobile-tool-sheet-header button { width: 38px; height: 38px; }
  .mobile-tool-panel > p { margin-bottom: 13px; font-size: 11px; }
  .mobile-question-chips { gap: 9px; margin-bottom: 14px; }
  .mobile-question-chips button { min-height: 38px; padding: 8px 12px; font-size: 10px; }
  .mobile-tool-input input, .mobile-tool-panel textarea { font-size: 12px; }
  .mobile-report-answer p { font-size: 11px; }
  .mobile-note-list { max-height: 240px; }
  .mobile-tool-panel .btn { min-height: 44px; font-size: 11px; }
}

@media (min-width: 992px) {
  .dashboard .eyebrow { font-size: 12px; }
  .dashboard .welcome-subtitle { font-size: 16px; }
  .dashboard .btn { font-size: 14px; }
  .dashboard .trend { font-size: 11px; }
  .dashboard .stat-value > small { font-size: 12px; }
  .dashboard .stat-number { font-size: 31px; }
  .dashboard .stat-foot { font-size: 11px; }
  .dashboard .panel-header h2 { font-size: 20px; }
  .dashboard .panel-header p { font-size: 13px; }
  .dashboard .panel-kicker { font-size: 11px; }
  .dashboard .report-search input,
  .dashboard .filter-button { font-size: 14px; }
  .dashboard .form-label { font-size: 13px; }
  .dashboard .report-tabs button { font-size: 13px; }
  .dashboard .report-copy strong { font-size: 15px; }
  .dashboard .report-copy small { font-size: 12px; }
  .dashboard .report-client strong { font-size: 13px; }
  .dashboard .report-client small { font-size: 11px; }
  .dashboard .access-badge { font-size: 11px; }
  .dashboard .updated-time,
  .dashboard .panel-footer { font-size: 12px; }
  .dashboard .chart-summary span,
  .dashboard .online-pill { font-size: 12px; }
  .dashboard .chart-labels { font-size: 11px; }
  .dashboard .analyst-profile strong { font-size: 14px; }
  .dashboard .analyst-profile small { font-size: 12px; }
  .dashboard .analyst-note { font-size: 13px; }
  .dashboard .activity-item p { font-size: 13px; }
  .dashboard .activity-item small { font-size: 11px; }
  .dashboard .support-card strong { font-size: 14px; }
  .dashboard .support-card p,
  .dashboard .support-card .btn { font-size: 12px; }
  .dashboard .client-library-order { font-size: 12px; }
  .dashboard .client-report-eyeline { font-size: 11px; }
  .dashboard .client-report-copy > strong { font-size: 17px; }
  .dashboard .client-report-copy > small { font-size: 12px; }
  .dashboard .client-report-summary { font-size: 13px; }
  .dashboard .client-report-cta { font-size: 12px; }
  .dashboard .client-access-copy span,
  .dashboard .client-report-progress > span { font-size: 11px; }
  .dashboard .client-access-copy strong { font-size: 20px; }
  .dashboard .client-access-copy small { font-size: 13px; }
  .dashboard .client-access-copy .client-featured-meta span { font-size: 11px; }
}

