/* Readability refinements: keep the established display type, emblem and palette. */
@media screen {
  :root {
    --read-copy: #bdc9d7;
    --read-muted: #b1bfd0;
    --read-gold: #d0bb90;
    --read-focus: #f0d39a;
  }

  body { font-size: 16px; }

  /* Navigation stays compact, while useful labels can be read without zooming. */
  .site-header .desktop-nav a { font-size: 13px; line-height: 1.6; }
  .site-header .desktop-nav { gap: clamp(18px, 1.7vw, 25px); }
  .site-header .header-real-estate { font-size: 12px; min-height: 44px; }
  .site-header .header-contact { font-size: 12px; min-height: 44px; }
  .site-header .menu-button { font-size: 13px; min-height: 44px; }
  .site-header .mobile-nav a { font-size: 15px; line-height: 1.6; min-height: 48px; }
  .breadcrumb { font-size: 12px; line-height: 1.7; color: var(--read-muted); }
  .breadcrumb a, .premium-back { min-height: 44px; display: inline-flex; align-items: center; }
  .premium-back { font-size: 11px; line-height: 1.7; letter-spacing: .12em; color: var(--read-muted); }
  .button, .cover-actions .button, .home-page .cover-actions .button { font-size: 13px; line-height: 1.6; }
  .text-link, .practice-showcase .text-link, .role-navigation .text-link,
  .ux-work-card > .text-link, .ux-perspective-links a,
  .home-page .journal-layout .text-link, .home-page .journal-layout .note-card:first-child .text-link,
  .exec-milestone-list .text-link, .exec-economic-triad .text-link,
  .note-card .text-link, .personal-note-bottom .text-link {
    font-size: 13px; line-height: 1.65;
  }
  .film-link, .home-page .cover-actions .film-link { font-size: 13px; line-height: 1.6; min-height: 44px; }
  .ux-more-perspectives a, .ux-direct-email, .ux-direct-phone,
  .personal-world-links a { font-size: 13px; line-height: 1.65; }

  /* Body copy: target reading text rather than serif statements or visual numbers. */
  .home-page .cover .cover-description { font-size: 16px; line-height: 1.8; color: var(--read-copy); }
  .home-page .cover .cover-role, .cover-role { font-size: 15px; line-height: 1.7; }
  .home-page .cover .cover-role span, .cover-role span { font-size: 13px; line-height: 1.7; }
  .premium-copy > p:not(.premium-lead), .editorial-copy > p:not(.lead-statement),
  .detail-copy p, .section-intro p, .form-aside > p:not(.small-note),
  .work-row p, .approach-step p, .check-list li, .faq details p,
  .resource-banner p, .premium-principles p, .premium-company-pillars p,
  .premium-gate-detail p, .premium-gate-detail dd,
  .premium-decision-panel > p, .premium-trade-flow p,
  .premium-network-notes p, .premium-journal-hero p,
  .exec-feature-grid > div > p, .exec-milestone-list p,
  .exec-principle-grid p, .exec-becoming-path p, .exec-question-grid p,
  .exec-ai-case-grid p, .exec-economic-triad p, .exec-econ-detail p,
  .exec-world-lenses p, .exec-ai-process p,
  .lux-image-after p, .lux-behaviour-grid p, .lux-chart-copy,
  .lux-coexist-panels p, .land-panel-copy p,
  .ux-work-card > p, .ux-perspective-copy > p:not(.ux-perspective-lead),
  .home-page .zk-possibilities-header > p,
  .home-page .zk-destination-copy p:not(.zk-overline):not(.zk-destination-scope),
  .note-card p, .journal-layout .note-card:first-child p,
  .home-page .journal-layout .note-card p, .home-page .journal-layout .note-card:first-child p,
  .contact-banner p, .home-page .contact-banner p,
  .zk-tile-detail p, .zk-world-detail p:not(.zk-overline),
  .atelier-header > p, .atelier-detail [data-spatial-copy] {
    font-size: 15px; line-height: 1.85; color: var(--read-copy);
  }
  .article p, .article li { font-size: 16px; line-height: 1.85; }
  .film-section .faq p { font-size: 15px; line-height: 1.85; }

  /* Eyebrows, scope statements and credits convey useful information. */
  .eyebrow, .chapter-label, .home-page .chapter-label,
  .cover-copy > .eyebrow, .page-hero .eyebrow,
  .premium-hero-copy > .eyebrow, .premium-story-heading > .eyebrow,
  .premium-journal-hero .eyebrow, .premium-company-band > .wrap > .chapter-label,
  .premium-gate-detail .chapter-label, .premium-decision-panel .chapter-label,
  .premium-brief-graph .chapter-label, .exec-milestone-list .eyebrow,
  .exec-principle-grid .eyebrow, .exec-ai-case-grid .eyebrow,
  .exec-model-controls .eyebrow, .contact-banner .eyebrow,
  .resource-banner .eyebrow, .assessment-showcase .practice-detail .eyebrow {
    font-size: 11px; line-height: 1.7; letter-spacing: .12em; color: var(--read-gold);
  }
  .home-page .eyebrow { font-size: 11px !important; line-height: 1.7; }
  .premium-figure figcaption, .page-scene figcaption,
  .lux-gallery-grid figcaption, .scene-caption,
  .image-disclosure, .practice-instruction,
  .gallery-footnote p, .viewer-description p,
  .ux-work-index, .ux-work-sample > span, .ux-film-caption > span,
  .ux-film-disclosure, .film-spec, .film-duration,
  .cover-portrait-caption, .cover-edition, .home-page .cover-edition,
  .personal-note-bottom > span, .premium-role-caption,
  .land-image-heading > span, .land-panel-copy > span, .land-feature-footer > span,
  .premium-diagram-note, .exec-source-note, .exec-sensitivity figcaption,
  .exec-model-status, .exec-method caption, .atelier-note,
  .zk-destination-visual > small, .zk-map-caption, .home-page .zk-map-caption {
    font-size: 11px; line-height: 1.75; color: var(--read-muted);
  }
  .premium-diagram-note { font-size: 12px !important; }
  .ux-work-sample, .home-page .zk-destination-copy > a { font-size: 13px; line-height: 1.7; }
  .home-page .zk-destination-copy .zk-destination-scope,
  .zk-destination-copy .zk-destination-scope {
    font-size: 12px !important; line-height: 1.8; color: var(--read-muted);
  }
  .note-meta, .home-page .journal-layout .note-meta {
    font-size: 11px; line-height: 1.65; letter-spacing: .05em;
    color: var(--read-muted); flex-wrap: wrap;
  }
  .film-link-time, .scroll-cue, .cover-bottom p { font-size: 11px; line-height: 1.7; }
  .scroll-cue { letter-spacing: .1em; }
  .scroll-cue > span { font-size: 23px; }
  .exec-quote-band .chapter-label { color: #5b4c31; }
  .film-caption p, .small-note, .context-note { font-size: 13px !important; line-height: 1.8; }

  /* Form controls use 16px text to stay legible and avoid phone input zoom. */
  .field label, .contact-methods small, .exec-model-input > div,
  .premium-brief-check small, .guide-choices button > small {
    font-size: 13px; line-height: 1.65;
  }
  .field label { color: #dce4ee; }
  .field input, .field select, .field textarea {
    font-size: 16px; line-height: 1.6; color: #e7edf5; min-height: 48px;
    border-color: #73849a; max-width: 100%;
  }
  .field input::placeholder, .field textarea::placeholder { color: #aebed0; opacity: 1; }
  .field textarea { min-height: 160px; }
  .field input:focus-visible, .field select:focus-visible, .field textarea:focus-visible {
    border-color: var(--read-focus); background: #101e31;
  }
  .hint, .form-note, .feedback, .progress-label, legend,
  .exec-model-input small, .exec-model-summary > p,
  .contact-compose > summary small, .contact-address [role="status"] {
    font-size: 12px; line-height: 1.75; color: var(--read-muted);
  }
  .contact-address { font-size: 14px; line-height: 1.7; }
  .contact-address button { font-size: 13px; min-height: 44px; }
  .contact-methods a { font-size: 16px; }
  .draft-preview pre, .contact-page .draft-preview pre { font-size: 14px; line-height: 1.8; }
  .filter-button, .gallery-filters button, .print-button, .guide-back,
  .exec-reset, .exec-method summary, .film-section .faq summary {
    font-size: 13px; line-height: 1.65; min-height: 44px;
  }
  .faq summary { font-size: 15px; line-height: 1.65; }
  .filter-bar, .gallery-filters { flex-wrap: wrap; }
  .filter-button, .gallery-filters button { white-space: normal; text-align: left; }
  .check-item { font-size: 15px; line-height: 1.75; }

  /* Interactive diagrams retain their display figures; explanatory labels grow. */
  .exec-econ-controls button { font-size: 14px; line-height: 1.6; }
  .exec-econ-controls button > span, .matrix-axis,
  .exec-diagram-label, .exec-capital-core > span, .exec-diagram-base,
  .exec-cost-heading > span, .exec-transmission small,
  .exec-evidence > span, .exec-world-lenses span,
  .zk-ai-stages button span, .zk-ai-pipeline > p, .zk-detail-label {
    font-size: 11px; line-height: 1.65;
  }
  .exec-cost-row, .exec-cost-row b { font-size: 12px; line-height: 1.6; }
  .exec-sensitivity-table, .exec-method table { font-size: 12px; line-height: 1.7; }
  .exec-sensitivity-table thead { font-size: 11px; }
  .exec-capital-diagram > p, .exec-evidence p, .exec-human-loop p,
  .exec-crossborder p, .atelier-detail li, .zk-tile-detail li,
  .zk-ai-method-note p, .atelier-bridge p { font-size: 13px; line-height: 1.75; }
  .zk-spatial-controls button, .zk-spatial-modes button,
  .zk-ai-stages button, .atelier-detail a, .atelier-bridge a,
  .zk-world-detail a, .zk-tile-link, .zk-tile-detail a { font-size: 12px; line-height: 1.6; }
  .zk-spatial-hint { font-size: 11px !important; line-height: 1.7; }
  .zk-overline, .zk-world-stage > .zk-overline, .zk-world-detail .zk-overline {
    font-size: 11px !important; line-height: 1.7; color: var(--read-gold);
  }
  .home-page .zk-constellation button { font-size: 12px; line-height: 1.35; }
  .home-page .zk-constellation button > span { font-size: 11px; line-height: 1.5; }
  .zk-worlds-intro, .zk-world-options small, .zk-menu-shortcuts > a { font-size: 14px; line-height: 1.7; }
  .zk-world-kicker, .zk-world-domain, .zk-world-options em,
  .zk-worlds-note, .zk-settings-note, .zk-experience-settings label { font-size: 12px; line-height: 1.7; }
  .zk-close, .zk-passage-cancel, .zk-motion-setting, .zk-skip-passage { font-size: 12px !important; line-height: 1.6; }
  .zk-world-menu .zk-sound-button { font-size: 12px; line-height: 1.6; }

  /* The optional opening keeps the same wordmark, with readable choices and meaning. */
  .qo-entry-buttons button { font-size: 13px; line-height: 1.6; }
  .qo-entry-hint { font-size: 12px; line-height: 1.65; color: var(--read-muted); }
  .qo-skip, .qo-skip:focus, .qo-intro[data-phase=definition] .qo-skip { font-size: 12px; }
  .qo-sound { font-size: 11px; }
  .qo-definition-top { font-size: 11px; line-height: 1.6; }
  .qo-definition-top a { font-size: 12px; }
  .qo-word-definitions span { font-size: 13px; line-height: 1.75; color: var(--read-copy); }
  .qo-symbol-options button { font-size: 12px; line-height: 1.6; }
  .qo-symbol-description { font-size: 13px; line-height: 1.75; color: var(--read-copy); }
  .qo-meet-person { font-size: 13px; }
  .qo-meet-person > span:last-child { font-size: 11px; line-height: 1.6; }

  /* Persistent information remains readable at the end of every page. */
  .footer-links, .exec-footer-explore { font-size: 13px; line-height: 1.7; }
  .footer-brand p { font-size: 14px; line-height: 1.8; }
  .footer-label { font-size: 11px; line-height: 1.7; color: var(--read-gold); }
  .footer-bottom { font-size: 12px; line-height: 1.7; color: var(--read-muted); flex-wrap: wrap; }
  .footer-legal { flex-wrap: wrap; }
  .entity-note { font-size: 12px; line-height: 1.8; color: var(--read-muted); }
  .footer-links a { overflow-wrap: anywhere; }

  /* Focus is visible against both the navy surface and gold-filled controls. */
  :is(a,button,input,select,textarea,summary,[role="tab"]):focus-visible {
    outline: 2px solid var(--read-focus); outline-offset: 4px;
    box-shadow: 0 0 0 2px #080f1d;
  }
  .exec-quote-band :is(a,button):focus-visible {
    outline-color: #26394e; box-shadow: 0 0 0 2px #eee5d3;
  }
  .site-header .mobile-nav a:focus-visible { outline-offset: 2px; }
}

@media screen and (max-width: 620px) {
  .site-header .header-inner { gap: 10px; }
  .site-header .header-real-estate { font-size: 12px; gap: 6px; }
  .site-header .menu-button { font-size: 13px; padding: 8px 11px; }
  .home-page .cover-actions .button { font-size: 12px; gap: 10px; }
  .home-page .cover .cover-role { font-size: 14px; }
  .home-page .cover .cover-role span { font-size: 12px; }
  .cover-edition, .home-page .cover-edition { font-size: 11px; max-width: 180px; }
  .ux-work-card > p, .home-page .zk-possibilities-header > p,
  .home-page .journal-layout .note-card p, .home-page .journal-layout .note-card:first-child p,
  .home-page .contact-banner p { font-size: 15px; }
  .contact-page .contact-address { font-size: 14px; }
  .note-meta, .home-page .journal-layout .note-meta { gap: 4px 14px; }
  .exec-cost-row { grid-template-columns: minmax(90px, 1fr) minmax(30px, 1fr) 78px; gap: 8px; }
  .exec-econ-controls button { font-size: 13px; padding: 18px 13px; gap: 8px; }
  .qo-entry-hint { font-size: 11px; line-height: 1.6; }
  .qo-intro[data-phase=definition] .qo-skip { font-size: 11px; }
}

@media screen and (max-width: 360px) {
  /* The same real-estate destination remains in the menu on compact phones. */
  .site-header .header-real-estate { display: none; }
  .site-header .menu-button { margin-left: auto; }
  .home-page .zk-constellation button { font-size: 11px; }
  .exec-cost-row { grid-template-columns: minmax(80px, 1fr) minmax(18px, .6fr) 76px; }
}

@media (forced-colors: active) {
  :is(a,button,input,select,textarea,summary,[role="tab"]):focus-visible {
    outline: 2px solid Highlight; box-shadow: none;
  }
  .field input, .field select, .field textarea { border-color: ButtonText; }
}

/* The work studies use bespoke selectors, so their reading sizes are explicit. */
@media screen {
  .selected-work-page .sw-hero-copy > p:not(.sw-lead):not(.sw-hero-note),
  .selected-work-page .sw-copy-block p,
  .selected-work-page .sw-note-list p,
  .selected-work-page .sw-ai-note p,
  .selected-work-page .sw-closing > .wrap > div > p,
  .selected-work-page .sw-checklist-outline p,
  .selected-work-page .sw-model-inputs dd {
    font-size: 15px;
    line-height: 1.85;
  }
  .selected-work-page .sw-checklist-outline strong {
    font-size: 15px;
    line-height: 1.65;
  }
  .selected-work-page .sw-hero .eyebrow,
  .selected-work-page .sw-study .eyebrow,
  .selected-work-page .sw-study-heading .eyebrow,
  .selected-work-page .sw-ai-note .eyebrow,
  .selected-work-page .sw-closing .eyebrow,
  .selected-work-page .sw-sheet-kicker,
  .selected-work-page .sw-scope-note > .sw-sheet-kicker,
  .selected-work-page .sw-model-output > span,
  .selected-work-page .sw-note-number,
  .selected-work-page .sw-index a > span {
    font-size: 11px;
    line-height: 1.75;
    letter-spacing: .1em;
  }
  .selected-work-page .sw-hero-copy > .sw-hero-note,
  .selected-work-page .sw-sheet-foot,
  .selected-work-page .sw-model-output > p,
  .selected-work-page .sw-model-caption {
    font-size: 12px;
    line-height: 1.8;
  }
  .selected-work-page .sw-example-note > strong,
  .selected-work-page .sw-example-note > p,
  .selected-work-page .sw-scope-note > p {
    font-size: 13px;
    line-height: 1.85;
  }
  .selected-work-page .sw-actions .button,
  .selected-work-page .sw-closing .button,
  .selected-work-page .sw-actions .text-link,
  .selected-work-page .sw-scope-note .text-link,
  .selected-work-page .sw-ai-note .text-link,
  .selected-work-page .sw-note-action,
  .selected-work-page .sw-index a {
    font-size: 13px;
    line-height: 1.7;
    min-height: 44px;
  }
}
