/* Mobile and tablet overrides. Desktop presentation stays in its existing sheets. */
@media (max-width: 1150px) {
  html { scroll-padding-top: 140px; }
  body { font-size: 16px; }
  :is(main, section, article, figure, nav, .record-content, .project-information, .guide-copy, .skill-copy) { min-width: 0; }
  .site-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; height: auto; min-height: 0; gap: 6px 16px; padding: 10px max(18px, env(safe-area-inset-right)) 8px max(18px, env(safe-area-inset-left)); }
  .site-header .identity { grid-column: 1; grid-row: 1; min-height: 44px; font-size: 18px; }
  .site-header .signature { width: 36px; }
  .site-header .header-contact { grid-column: 2; grid-row: 1; margin: 0; min-height: 44px; font-size: 12px; gap: 10px; }
  .site-header > nav { grid-column: 1 / -1; grid-row: 2; order: initial; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; width: 100%; margin: 0; padding: 0; border-top: 1px solid var(--line); }
  .site-header > nav > a { display: flex; align-items: center; justify-content: center; gap: 3px; min-height: 44px; padding: 5px 2px; font-size: 13px; line-height: 1.4; white-space: normal; text-align: center; }
  :is(.text-link, .skill-link, .space-link, .back-top, .copy-email, .bp-index-return, .next-record, .record-toc a) { min-height: 44px; }
  .home .hero { padding: 40px 6%; }
  .home .hero-content { min-width: 0; }
  .home .hero-description { font-size: 16px; line-height: 1.8; }
  .home .hero-bottom { margin-top: 24px; font-size: 14px; line-height: 1.7; }
  .home .hero-description br { display: none; }
  .section { padding: 64px 6%; }
  .section-heading { gap: 20px; margin-bottom: 32px; }
  .section-heading > p { font-size: 16px; line-height: 1.75; }
  .about-layout { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .about-story > p, .about-focus p { font-size: 16px; line-height: 1.85; }
  .about-focus { margin-top: 24px; padding: 20px; border-left: 3px solid #a18d60; background: #eee9dd; }
  .about-focus .about-focus-label { margin-bottom: 10px; font-size: 13px; font-weight: 700; }
  .play-numbers { gap: 20px; }
  .play-numbers strong { font-size: clamp(52px, 8vw, 72px); }
  .play-numbers p { font-size: 14px; }
  .career-row div > p { font-size: 16px; line-height: 1.75; }
  .career-row small { font-size: 14px; }
  .skill-card { padding: 24px; }
  .skill-card-top { gap: 16px; }
  .skill-card h3 { font-size: 27px; line-height: 1.35; }
  .skill-card h4 { font-size: 18px; }
  .skill-copy > p, .skill-copy > ul, .skill-capability-copy > span { font-size: 16px; line-height: 1.75; }
  .skill-copy > p { max-width: none; }
  .skill-capability-copy > strong { margin-bottom: 4px; }
  .skill-link { padding-top: 16px; font-size: 15px; gap: 16px; }
  .home .project { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .home .project-photo { width: 100%; min-height: 0; height: auto; aspect-ratio: auto; }
  .home .project-photo img { position: static; width: 100%; height: auto; object-fit: contain; transform: none; }
  .home .project-information { width: 100%; padding: 0; }
  .home .project-description, .home .outant-summary, .home .project-information > p { font-size: 16px; line-height: 1.8; }
  .home .project-kicker { flex-wrap: wrap; gap: 8px 18px; }
  .home .project-kicker > span:first-child { font-size: 21px; font-weight: 650; }
  .home .project-numbers { gap: 12px; }
  .home .project-numbers strong { font-size: clamp(44px, 7vw, 64px); }
  .home .project-numbers p { font-size: 14px; line-height: 1.6; }
  .home .project-numbers > [data-home-metric] { padding: 20px 16px; }
  .home .study-tile { min-width: 0; transform: none; }
  .home .study-tile p { font-size: 16px; line-height: 1.7; }
  .home .study-tile h3 { font-size: 23px; line-height: 1.5; }
  .home .study-photo { aspect-ratio: auto; }
  .home .study-photo img { width: 100%; height: auto; object-fit: contain; transform: none; }
  .home .study-label { font-size: 12px; }
  .home-footer { padding: 56px 6% 24px; }
  .home-email > a { font-size: clamp(20px, 3.4vw, 28px); min-height: 44px; }
  .home-phone > a, .home-footer .back-top { min-height: 44px; display: inline-flex; align-items: center; }
  .home-footer-bottom { margin-top: 36px; }

  .project-guide { padding: 40px 6%; }
  .guide-heading { display: block; }
  .guide-heading h2 { font-size: 30px; line-height: 1.4; }
  .guide-heading p { margin-top: 16px; font-size: 16px; line-height: 1.75; }
  .guide-tabs { gap: 8px; }
  .guide-tabs > a { min-height: 72px; padding: 14px; }
  .guide-tabs > a strong { font-size: 17px; }
  .guide-panel, .guide-ready .guide-panel { min-height: 0; grid-template-columns: minmax(0, 1fr); padding: 24px; gap: 24px; }
  .guide-visual { min-width: 0; }
  .guide-visual figure img, .work-pipeline .guide-visual figure img { width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
  .guide-visual figcaption { font-size: 14px; line-height: 1.65; }
  .guide-copy h3 { font-size: 26px; line-height: 1.45; }
  .guide-copy p, .guide-reasoning dd, .pipeline-output li { font-size: 16px; line-height: 1.75; }
  .guide-reasoning dt { font-size: 14px; }
  .project-summary-facts > div { padding: 16px 0; border-top: 1px solid var(--line); }
  .project-summary-facts dt { margin-bottom: 6px; font-size: 14px; font-weight: 700; }
  .project-summary-facts dd { font-size: 16px; line-height: 1.8; }
  :is(.guide-detail, .guide-evidence) { min-height: 44px; display: flex; align-items: center; }

  .record-masthead { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .record-heading { padding: 26px 6% 30px; }
  .record-heading h1 { font-size: clamp(34px, 5.5vw, 50px); line-height: 1.2; overflow-wrap: anywhere; }
  .record-heading > p { font-size: 16px; line-height: 1.7; }
  .record-cover { height: auto; min-height: 0; aspect-ratio: auto; }
  .record-cover > img { width: 100%; height: auto; max-height: none; object-fit: contain; }
  .record-outant .record-cover > img { transform: none; }
  .project-context > .case-facts { display: flex; flex-wrap: wrap; gap: 18px 28px; padding-block: 20px; }
  .project-context > .case-facts > div { min-width: 0; }
  .project-context > .case-facts dt { margin-bottom: 4px; font-size: 14px; }
  .project-context > .case-facts dd { font-size: 16px; line-height: 1.7; }
  .record-layout { display: block; padding: 32px 6% 64px; }
  .record-toc { position: static; margin: 0 0 32px; }
  .record-toc nav { display: flex; flex-wrap: wrap; gap: 8px; }
  .record-toc nav a { display: flex; align-items: center; padding: 9px 12px; border: 1px solid var(--line); font-size: 14px; line-height: 1.5; }
  .record-toc nav > a[data-toc-chapter] { margin-top: 0; padding: 9px 12px; border: 1px solid var(--line); }
  .record-content { font-size: 16px; line-height: 1.8; }
  .record-content .case-intro { font-size: 21px; line-height: 1.7; }
  .record-content .case-section { margin-top: 32px; padding: 36px 0; }
  .record-content .case-section:first-of-type { margin-top: 0; }
  .record-content .record-heading-h3 { font-size: 27px; line-height: 1.4; }
  .record-content .record-heading-h4 { font-size: 23px; line-height: 1.5; }
  .record-content .record-heading-h5 { font-size: 20px; line-height: 1.5; }
  .record-content .case-chapter-summary { font-size: 19px; line-height: 1.75; }
  .record-content :is(.practice-facts, .visual-points, .delivery-facts, .scope-contributions, .implementation-list) { font-size: 16px; line-height: 1.8; }
  .record-content :is(.practice-facts, .visual-points, .delivery-facts, .scope-contributions) > div { min-width: 0; grid-template-columns: 92px minmax(0, 1fr); gap: 12px; padding: 14px 0; }
  .record-content :is(.practice-facts, .visual-points, .delivery-facts, .scope-contributions) dt { font-size: 14px; line-height: 1.65; }
  .record-content :is(.practice-facts, .visual-points, .delivery-facts, .scope-contributions) dd { font-size: 16px; line-height: 1.8; }
  .record-content .case-facts { gap: 18px 28px; padding: 20px 0; }
  .record-content .case-facts dt { font-size: 13px; }
  .record-content .case-facts dd { font-size: 16px; }
  .record-content .case-stats { gap: 16px; margin: 24px 0; padding: 24px 0; }
  .record-content .case-stats > div { min-width: 0; padding: 20px 16px; background: #e9eadf; border: 1px solid #d6d8ca; }
  .record-outant .record-content .case-stats > div { background: #e9e9f4; border-color: #d6d7e7; }
  .record-content .case-stats strong { font-size: clamp(36px, 5.5vw, 58px); line-height: 1.2; }
  .record-content .case-stats > div > span { display: block; margin-top: 12px; font-size: 16px; line-height: 1.6; }
  .record-content :is(.visual-record, .proof-record, .delivery-comparison, .decision-grid, .space-concept-grid) { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .record-content .visual-record { margin: 24px 0 32px; }
  .record-content .case-gallery { gap: 20px; margin: 24px 0; }
  .record-content .case-gallery img { width: 100%; height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; }
  .record-content .case-gallery figcaption, .record-content .source-note { font-size: 14px; line-height: 1.7; }
  .record-content .proof-gallery img { width: auto; max-width: 100%; max-height: 420px; margin-inline: auto; object-position: top center; }
  .record-content .proof-gallery img[width][height] { width: 100%; height: auto; }
  .record-content .space-link { gap: 14px; padding: 16px; }
  .record-content .delivery-heading { display: flex; flex-wrap: wrap; gap: 12px; align-items: start; }
  .record-content .delivery-heading > div { min-width: 0; flex: 1 1 200px; }
  .record-content .delivery-heading p { font-size: 14px; }
  .record-outant #main > .record-layout > .record-content #outant-graymap .project-delivery-copy > p { font-size: 16px; line-height: 1.8; }
  .record-content .chapter-composition { grid-template-columns: repeat(2, minmax(0, 1fr)); font-size: 14px; }
  .record-content :is(#outant-tf-record, #outant-chapter-record) { scroll-margin-top: 52px; }
  .record-content .poi-scale-grid { gap: 16px; }
  .record-content .poi-plot { width: calc(100% * var(--poi-ratio)); height: auto; aspect-ratio: 1; background-image: linear-gradient(to right, #b9c2b2 1px, transparent 1px), linear-gradient(to bottom, #b9c2b2 1px, transparent 1px); background-size: calc(20% / var(--poi-ratio)) calc(20% / var(--poi-ratio)); }
  .record-content .poi-footprint { width: 100%; height: 100%; }
  .record-content .poi-scale-grid :is(p, span) { font-size: 14px; line-height: 1.6; }
  .record-content .bp-index nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .record-content .bp-index-group, .record-content .bp-index-group li { min-width: 0; }
  .record-content .bp-index-group p { font-size: 14px; }
  .record-content .bp-index-group ul { display: flex; flex-wrap: wrap; gap: 8px; }
  .record-content .bp-index-group a { display: flex; align-items: center; min-height: 44px; padding: 9px 10px; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
  .record-content .bp-flow > li { font-size: 14px; line-height: 1.65; }
  .record-content :is(.project-bp-group, .skill-bp-group) { margin: 28px 0; padding: 20px; border: 1px solid #d9d2e7; border-top: 3px solid #75648c; background: #f4f1f8; }
  .record-content :is(.project-bp-group-heading, .skill-bp-group-heading) { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
  .record-content :is(.project-bp-group-heading, .skill-bp-group-heading) h3 { margin: 0; font-size: 23px; }
  .record-content :is(.project-bp-group-heading, .skill-bp-group-heading) a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
  .record-content .bp-example { min-width: 0; padding: 18px; background: #fff; }
  .record-content .project-bp-meta { margin: 12px 0; font-size: 14px; }
  .record-content .mission-flow { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--line); font-size: 16px; }
  .record-content .mission-flow-title { margin: 0 0 12px; font-size: 16px; font-weight: 650; }
  .record-content .mission-flow-routes > div { padding: 12px 0; }
  .record-content .mission-flow dt { margin-bottom: 6px; font-size: 14px; font-weight: 650; }
  .record-content .mission-flow dd { min-width: 0; font-size: 16px; line-height: 1.8; }
  .record-content .mission-flow-routes dd { display: flex; flex-wrap: wrap; gap: 6px 10px; }
  .record-content .mission-flow-outputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 12px; }
  .record-content .mission-flow-outputs > div { min-width: 0; padding: 14px; border-left: 3px solid #75648c; background: #f4f1f8; }

  #skill-record-dialog { width: calc(100% - 16px); height: calc(100vh - 16px); height: calc(100dvh - 16px); max-width: none; max-height: none; margin: auto; padding: 0; overflow: hidden; }
  #skill-record-dialog .skill-dialog-layout { height: 100%; min-height: 0; grid-template-rows: auto minmax(0, 1fr); }
  #skill-record-dialog .skill-dialog-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; min-height: 0; padding: max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 14px max(16px, env(safe-area-inset-left)); }
  #skill-record-dialog .skill-dialog-heading { min-width: 0; max-width: none; }
  #skill-record-dialog .skill-dialog-header h2 { font-size: clamp(21px, 3.3vw, 28px); line-height: 1.4; overflow-wrap: anywhere; }
  #skill-record-dialog [data-skill-kicker] { font-size: 12px; line-height: 1.5; }
  #skill-record-dialog [data-skill-close] { align-self: start; min-width: 52px; min-height: 44px; padding: 9px 12px; font-size: 14px; }
  #skill-record-dialog .skill-dialog-header::after { animation: none; }
  #skill-record-dialog .skill-dialog-stage { min-height: 0; padding: 20px max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left)); overflow: auto; overscroll-behavior: contain; scrollbar-gutter: auto; }
  #skill-record-dialog .record-content { width: 100%; min-width: 0; font-size: 16px; }
  #skill-record-dialog .record-content > .case-section, #skill-record-dialog .record-content > .case-section:first-of-type, #skill-record-dialog #outant-blueprint { margin: 0 0 24px; padding: 20px; }
  #skill-record-dialog .record-content :is(.visual-record, .proof-record, .delivery-comparison, .skill-editor-grid) { grid-template-columns: minmax(0, 1fr); }
  #skill-record-dialog .record-content .case-gallery img { height: auto; aspect-ratio: auto; object-fit: contain; }
  /* Keep HTML dimensions reserving space before lazy images finish loading. */
  .guide-visual figure img[width][height],
  .record-content .case-gallery img[width][height],
  #skill-record-dialog .record-content .case-gallery img[width][height] { aspect-ratio: revert-layer; }
  #skill-record-dialog .record-content :is(.practice-facts, .visual-points, .delivery-facts) > div { grid-template-columns: 92px minmax(0, 1fr); }
  #skill-record-dialog .record-content :is(.practice-facts, .visual-points, .delivery-facts) dt { font-size: 14px; }
  #skill-record-dialog .record-content :is(.practice-facts, .visual-points, .delivery-facts) dd { font-size: 16px; line-height: 1.8; }
  #skill-record-dialog .skill-record-index a { display: flex; align-items: center; min-height: 44px; }
  #skill-record-dialog .skill-case-label { margin: 0 0 20px; padding: 12px; background: var(--skill-tint); color: var(--skill-accent); font-size: 21px; font-weight: 700; }
  #skill-record-dialog .skill-dungeon-production { display: grid; gap: 16px; margin-top: 24px; }
  #skill-record-dialog .skill-dungeon-production > div { padding: 16px; border: 1px solid var(--skill-line); }
  #skill-record-dialog .space-study-summary > p.eyebrow { margin-bottom: 8px; font-size: 14px; font-weight: 700; }
  #skill-record-dialog .space-study-summary > p:not(.eyebrow) { font-size: 22px; line-height: 1.6; font-weight: 600; }

  .record-content :is(.space-overview, .space-zone, .space-concept) { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .record-content :is(.space-progression, .space-learning, .clearing-terraces) { padding: 20px; margin: 24px 0; }
  .record-content .space-learning-direction { flex-direction: column; align-items: stretch; gap: 12px; }
  .record-content .space-learning-direction strong { font-size: 17px; line-height: 1.6; }
  .record-content .space-learning-direction > span { align-self: center; transform: rotate(90deg); }
  .record-content .space-learning > p { font-size: 16px; line-height: 1.8; }
  .record-content :is(.exploration-flow, .learning-flow) { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .record-content :is(.exploration-flow, .learning-flow) > li { padding: 18px 0; }
  .record-content .exploration-origin { flex-wrap: wrap; gap: 12px; font-size: 17px; }
  .record-content .exploration-departure, .record-content .exploration-flow p, .record-content .learning-flow > li > span:not(.progression-link), .record-content .progression-learning > p { font-size: 16px; line-height: 1.75; }
  .record-content .learning-flow > li > span:not(.progression-link) { display: block; }
  .record-content .learning-flow strong { font-size: 18px; }
  .record-content .space-route-study { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; margin-top: 24px; }
  .record-content .space-route-map { margin: 0; min-width: 0; }
  .record-content .space-route-map > figcaption { margin-bottom: 18px; }
  .record-content .space-route-map > figcaption h2 { margin: 0 0 8px; font-size: 23px; line-height: 1.5; }
  .record-content .space-route-map > figcaption p { margin: 0; font-size: 14px; line-height: 1.7; }
  .record-content .space-route-map :is(img, .image-zoom) { display: block; width: 100%; height: auto; aspect-ratio: auto; object-fit: contain; }
  .record-content .space-route-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; list-style: none; margin: 0; padding: 0; }
  .record-content .space-route-steps > li { min-width: 0; padding: 16px; border: 1px solid var(--line); border-left: 3px solid #59677f; background: var(--white); }
  .record-content .space-route-steps > li > span { display: block; margin-bottom: 6px; color: #59677f; font-size: 12px; font-weight: 700; }
  .record-content .space-route-steps > li > strong { display: block; font-size: 18px; line-height: 1.5; }
  .record-content .space-route-steps > li > p { margin: 8px 0 0; font-size: 16px; line-height: 1.75; }
  .record-content .clearing-elevation-study > figcaption p { margin: 14px 0 22px; font-size: 16px; line-height: 1.8; }
  .record-content .elevation-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .record-content .elevation-entries, .record-content .elevation-levels { grid-column: 1 / -1; display: grid; gap: 12px; }
  .record-content .elevation-entries { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .record-content .elevation-entries > p { margin: 0; padding: 14px; background: #f6f5ec; font-size: 16px; line-height: 1.7; }
  .record-content .elevation-entries :is(strong, span) { display: block; }
  .record-content .elevation-entries span { margin-top: 5px; }
  .record-content .elevation-levels > div { display: block; padding: 16px; border: 1px solid #c3c7b9; border-left: 3px solid #798368; background: var(--white); }
  .record-content .elevation-levels > div:nth-child(2) { margin-left: 14px; }
  .record-content .elevation-levels > div:nth-child(3) { margin-left: 28px; }
  .record-content .elevation-levels dt { margin-bottom: 6px; font-size: 17px; }
  .record-content :is(.elevation-descent, .elevation-exit) { display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; padding: 16px 10px; border: 1px solid #c3c7b9; font-size: 15px; line-height: 1.7; text-align: center; }
  .record-content .elevation-direction { font-size: 26px; }
  .record-content .clearing-terraces > article { padding: 18px; }
  .record-content .clearing-terraces > article:nth-child(2) { margin-left: 14px; }
  .record-content .clearing-terraces > article:nth-child(3) { margin-left: 28px; }
  .record-content .trial-flow > li p { max-width: none; font-size: 16px; line-height: 1.7; }
  .record-content .trial-flow > li { min-width: 0; font-size: 16px; }
  .record-content .case-more > summary { min-height: 44px; padding-block: 10px; font-size: 15px; }
  .record-content .case-space-record > a { min-height: 44px; }
  .record-content .case-space-record .space-record-intent { font-size: 15px; line-height: 1.75; }
  .record-content .caption-video { min-height: 44px; align-items: center; }
  .next-record { gap: 18px; padding: 32px 6%; }
  .next-record > strong { min-width: 0; font-size: 25px; line-height: 1.5; }

  #lightbox { width: calc(100% - 12px); height: calc(100vh - 12px); height: calc(100dvh - 12px); max-width: none; max-height: none; margin: auto; padding: 0; overflow: hidden; }
  #lightbox .lightbox-layout { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; width: 100%; height: 100%; min-height: 0; }
  #lightbox .lightbox-toolbar { display: flex; align-items: center; justify-content: flex-end; min-height: 56px; padding: max(6px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) 6px 8px; }
  #lightbox .lightbox-close { position: static; flex: 0 0 44px; width: 44px; height: 44px; }
  #lightbox .lightbox-scrollport { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 0; padding: 0 8px; overflow: auto; overscroll-behavior: contain; }
  #lightbox .lightbox-image { display: block; flex: 0 1 auto; width: auto; height: auto; max-width: 100%; max-height: 100%; margin: auto; object-fit: contain; }
  #lightbox .lightbox-caption { max-width: 100%; max-height: 24dvh; margin: 0; padding: 12px max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left)); overflow: auto; font-size: 14px; line-height: 1.7; }
}

@media (max-width: 600px) {
  .site-header { padding-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)); gap: 4px 8px; }
  .site-header .identity { font-size: 16px; gap: 8px; }
  .site-header .identity small { font-size: 9px; }
  .site-header .header-contact { gap: 6px; font-size: 11px; }
  .site-header > nav > a { font-size: 12px; }
  .home .hero { height: auto; min-height: 570px; padding: 32px 6%; align-items: flex-end; }
  .home .hero-content { width: 100%; }
  .home .hero h1 { margin: 20px 0; font-size: clamp(34px, 9.2vw, 46px); line-height: 1.22; }
  .home .hero .eyebrow { font-size: 11px; letter-spacing: .08em; }
  .home .hero-bottom { margin-top: 20px; }
  .section { padding-block: 48px; }
  .section-heading { display: block; }
  .section-heading h2 { font-size: 30px; line-height: 1.35; }
  .section-heading > p { margin-top: 16px; }
  .skills-grid, .studies-grid { grid-template-columns: minmax(0, 1fr); }
  .skill-card { padding: 20px; }
  .skill-symbol { flex: 0 0 42px; width: 42px; height: 42px; }
  .skill-card h3 { font-size: 25px; }
  .skill-card-top { gap: 12px; margin-bottom: 20px; }
  .skill-capability-number { flex-basis: 24px; }
  .about-name { gap: 16px; }
  .about-name img { width: 60px; height: 60px; }
  .about-focus { padding: 16px; }
  .career-row { grid-template-columns: 44px minmax(0, 1fr); column-gap: 14px; }
  .career-logo { width: 44px; height: 44px; }
  .home .project { gap: 24px; }
  .home .project-information h3 { font-size: 32px; }
  .home .project-numbers { gap: 8px; }
  .home .project-numbers > [data-home-metric] { padding: 18px 12px; }
  .home .project-numbers strong { font-size: 46px; }
  .home .project-categories { flex-wrap: wrap; gap: 8px; }
  .home-footer-signature { flex-wrap: wrap; gap: 8px; }
  .guide-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .guide-tabs > a { padding: 12px; }
  .guide-tab-action { font-size: 12px; }
  .guide-panel, .guide-ready .guide-panel { padding: 18px; gap: 20px; }
  .guide-copy h3 { font-size: 24px; }
  .guide-reasoning > div { grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .record-heading { padding-top: 22px; }
  .record-heading h1 { font-size: 34px; }
  .record-content .case-intro { font-size: 20px; }
  .record-content .case-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .record-content .case-stats > div { padding: 18px 12px; }
  .record-content .case-stats > div:last-child { grid-column: 1 / -1; }
  .record-outant .record-content .case-stats { grid-template-columns: minmax(0, 1fr); }
  .record-content .case-stats strong { font-size: 42px; }
  .record-content .case-gallery, .record-content .space-record-gallery { display: grid; grid-template-columns: minmax(0, 1fr); }
  .record-content .space-record-gallery > * { grid-column: auto; grid-row: auto; }
  .record-content :is(.practice-facts, .visual-points, .delivery-facts, .scope-contributions) > div { grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .record-content .proof-gallery img { max-height: 360px; }
  .record-content .poi-scale-grid { gap: 10px; }
  .record-content .bp-index nav { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .record-content :is(.project-bp-group, .skill-bp-group) { padding: 14px; }
  .record-content .bp-example { padding: 14px; }
  .record-content .bp-flow { gap: 8px; }
  .record-content .mission-flow-outputs { grid-template-columns: minmax(0, 1fr); }
  .record-content :is(.space-route-steps, .elevation-entries) { grid-template-columns: minmax(0, 1fr); }
  .record-content :is(.space-progression, .space-learning, .clearing-terraces) { padding: 16px; }
  .record-content .elevation-levels > div:nth-child(n), .record-content .clearing-terraces > article:nth-child(n) { margin-left: 0; }
  #skill-record-dialog { width: calc(100% - 8px); height: calc(100vh - 8px); height: calc(100dvh - 8px); }
  #skill-record-dialog .skill-dialog-header { gap: 8px; padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 12px max(12px, env(safe-area-inset-left)); }
  #skill-record-dialog .skill-dialog-header h2 { font-size: 21px; }
  #skill-record-dialog .skill-dialog-stage { padding: 14px max(10px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)); }
  #skill-record-dialog .record-content > .case-section, #skill-record-dialog .record-content > .case-section:first-of-type, #skill-record-dialog #outant-blueprint { padding: 14px; }
  #skill-record-dialog .record-content :is(.practice-facts, .visual-points, .delivery-facts) > div { grid-template-columns: minmax(0, 1fr); }
  #skill-record-dialog .skill-editor-grid > div { padding: 16px; }
  #skill-record-dialog .record-content .record-heading-h3 { font-size: 24px; }
  #skill-record-dialog .record-content .record-heading-h4 { font-size: 21px; }
  #skill-record-dialog .record-content .record-heading-h5 { font-size: 20px; }
  #skill-record-dialog .skill-record-index { gap: 8px; }
  #skill-record-dialog .skill-record-index a { padding: 9px 10px; }
}

@media (max-width: 1150px) and (max-height: 500px) and (orientation: landscape) {
  .site-header { position: static; }
  html { scroll-padding-top: 24px; }
  .home .hero { min-height: 420px; height: auto; }
  #skill-record-dialog .skill-dialog-header { padding-block: 8px; }
  #skill-record-dialog .skill-dialog-header h2 { font-size: 20px; }
  #skill-record-dialog .skill-dialog-stage { padding-top: 14px; }
  #lightbox .lightbox-toolbar { min-height: 48px; padding-block: 2px; }
  #lightbox .lightbox-caption { max-height: 24dvh; padding-block: 8px; }
}
