@media (max-width: 1199px) {
  :root { --page-margin: 32px; --grid-gap: 20px; }
  .site-header__inner { grid-template-columns: minmax(100px, 1fr) auto minmax(100px, 1fr); }
  .home-hero__title { grid-column: 1 / 9; }
  .home-hero__visual { grid-column: 9 / 13; }
  .project-row { grid-template-columns: 46px minmax(260px, 1.25fr) minmax(170px, .75fr) 124px 18px; gap: 16px; }
  .work-group__head { grid-template-columns: 46px minmax(260px, 1.25fr) minmax(170px, .75fr) 124px 18px; gap: 16px; }
}

@media (max-width: 1100px) and (min-width: 901px) {
  .index-header, .index-row { grid-template-columns: 48px 64px minmax(220px, 1.2fr) minmax(180px, .9fr) minmax(120px, .7fr) 80px 18px; gap: 16px; }
  .index-header > span:nth-child(6), .index-row > span:nth-child(6) { display: none; }
}

@media (max-width: 900px) {
  :root {
    --page-margin: 22px;
    --grid-gap: 16px;
    --header-h: 66px;
    --section-space: 84px;
    --section-space-tight: 58px;
  }

  .site-header__inner { display: flex; justify-content: space-between; }
  .site-nav { display: none; }
  .menu-toggle--header { display: block; }
  .grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }

  .display-xl { font-size: clamp(58px, 15vw, 86px); }
  .display-lg { font-size: clamp(52px, 13vw, 76px); }
  .display-md { font-size: clamp(44px, 11vw, 66px); }
  .heading-serif { font-size: clamp(34px, 8vw, 50px); }
  .project-question { font-size: clamp(32px, 8vw, 48px); }

  .page-hero { padding: 58px 0 68px; }
  .page-hero__title, .page-hero__intro { grid-column: 1 / -1; }
  .page-hero__intro { max-width: 92%; margin-top: 42px; }

  .home-hero { min-height: auto; padding-top: 26px; }
  .home-hero > .grid { grid-template-rows: auto; }
  .home-hero__kicker,
  .home-hero__title,
  .home-hero__intro,
  .home-hero__signature,
  .home-hero__visual { grid-column: 1 / -1; grid-row: auto; }
  .home-hero__title { max-width: 7.4ch; margin-top: 52px; font-size: clamp(65px, 17vw, 106px); }
  .home-hero__intro { margin-top: 44px; }
  .home-hero__signature { margin-top: 28px; }
  .home-hero__visual { margin-top: 54px; }
  .system-cover { min-height: 58vh; }
  .system-cover .oooo-motion { width: min(68%, 340px); }

  .what-is .col-1-4,
  .what-is .col-5-11,
  .conversation .col-1-4,
  .conversation .col-5-11 { grid-column: 1 / -1; }
  .what-is .col-5-11,
  .conversation .col-5-11 { margin-top: 40px; }

  .manifesto__meta { grid-column: 1 / 2; }
  .manifesto__title, .manifesto__text { grid-column: 2 / -1; }
  .manifesto__text { margin-top: 24px; }
  .observation-list { margin-left: calc((100% + var(--grid-gap)) / 6); }
  .observation-list div { grid-template-columns: 1fr; gap: 10px; }

  .shift-ledger a { grid-template-columns: 1fr 38px 1fr; gap: 10px; font-size: clamp(29px, 7.6vw, 46px); }
  .shift-ledger small { grid-column: 1 / -1; text-align: left; }

  .home-features { display: block; }
  .home-feature, .home-feature:nth-child(n) { min-height: 370px; margin-bottom: 16px; }
  .home-feature--1 { min-height: 500px; }
  .home-feature__question, .home-feature--1 .home-feature__question { font-size: clamp(38px, 10vw, 64px); }
  .editorial-interlude { min-height: 390px; margin: 52px 0; }
  .editorial-interlude p { font-size: clamp(52px, 12vw, 82px); }

  .trajectory__step { grid-template-columns: 1fr; gap: 9px; }
  .trajectory-copy { margin-left: 0; }
  .sidequest-grid { display: block; }
  .sidequest, .sidequest:nth-child(n) { min-height: 350px; margin: 0 0 68px; }
  .ending-panel .body-lg { margin-left: 0; }

  .system-words { grid-template-columns: 1fr 1fr; }
  .intent-diagram { grid-template-columns: 1fr auto; font-size: clamp(36px, 9vw, 58px); }
  .intent-diagram b { grid-column: 1 / -1; grid-row: 2; text-align: left; }
  .intent-diagram span:last-child { grid-column: 1; grid-row: 3; text-align: left; }
  .intent-diagram i:nth-of-type(2) { grid-column: 2; grid-row: 3; transform: rotate(90deg); }
  .intent-diagram--reduced { grid-template-columns: 1fr auto 1fr; }
  .intent-diagram--reduced span:last-child { grid-column: auto; grid-row: auto; text-align: right; }
  .intent-diagram--reduced i { grid-column: auto; grid-row: auto; transform: none !important; }
  .oooo-principles article { grid-template-columns: 44px 1fr; }
  .oooo-principles article p { grid-column: 2; }
  .think-statements { grid-template-columns: 1fr 1fr; }
  .statement, .statement:nth-child(n) { grid-column: span 1; min-height: 45vh; font-size: clamp(48px, 10vw, 76px); }
  .statement:nth-child(5) { grid-column: 1 / -1; min-height: 56vh; }

  .work-group__head { grid-template-columns: 1fr; gap: 16px; padding-bottom: 24px; }
  .work-group__head h2 { grid-column: 1; font-size: clamp(44px, 10vw, 66px); }
  .work-group__head p { grid-column: 1; max-width: 20ch; margin-top: 4px; }
  .project-row { grid-template-columns: 42px 1fr 18px; gap: 10px 14px; padding: 22px 0 24px; }
  .project-row__number { grid-column: 1; grid-row: 1 / span 3; }
  .project-row__content, .project-row__change, .project-row__year { grid-column: 2; text-align: left; }
  .project-row::after { grid-column: 3; grid-row: 1; opacity: .45; transform: none; }
  .project-row:hover { padding-inline: 0; }
  .project-preview { display: none; }
  .project-row--archive { min-height: 70px; }

  .project-hero__top { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .project-hero__meta, .project-hero__title, .project-hero__question { grid-column: 1 / -1; }
  .project-hero__title { margin-top: 38px; font-size: clamp(56px, 14vw, 88px); }
  .project-hero__question { max-width: 13ch; margin-top: 34px; }
  .project-story-grid, .project-response__grid, .project-related-grid { grid-template-columns: 1fr; gap: 32px; }
  .project-story-grid .body-lg, .project-story-grid .body-md { justify-self: start; }
  .project-response__system { width: 100%; max-width: 520px; }
  .project-longread__body { grid-template-columns: 1fr; }
  .project-longread__body p { grid-column: 1; }
  .context-grid { grid-template-columns: 1fr 1fr; }
  .related-list a { grid-template-columns: 42px 1fr 18px; padding: 14px 0; }
  .related-list a > span:last-of-type { display: none; }
  .related-list a::after { opacity: .45; }

  .about-hero .meta, .about-hero__title, .about-hero__note { grid-column: 1 / -1; }
  .about-hero__note { margin-top: 48px; }
  .timeline__row { grid-template-columns: 42px minmax(220px, .8fr) minmax(260px, 1.2fr); gap: 14px 22px; padding: 24px 0; }
  .timeline__idea, .timeline__proof { grid-column: 3; }
  .timeline__proof { margin-top: -4px; }
  .about-method__grid { grid-template-columns: 1fr; }
  .about-method__grid article { min-height: 330px; padding: 22px 0 32px; border-bottom: 1px solid var(--rule); }
  .about-method__grid article + article { padding-left: 0; border-left: 0; }
  .about-contexts__grid { grid-template-columns: 1fr; }
  .about-contexts__grid article { min-height: 390px; }
  .about-contexts__grid article + article { margin-top: 70px; }

  .experiments-hero__meta { grid-column: 1 / -1; }
  .experiment, .experiment:nth-child(n) { grid-template-columns: 64px repeat(5, minmax(0, 1fr)); gap: 12px var(--grid-gap); padding: 24px 0 28px; }
  .experiment__top { grid-column: 1; grid-row: 1 / 4; }
  .experiment__title, .experiment .body-md, .experiment .annotation, .experiment__link { grid-column: 2 / 7; }
  .experiment .body-md { margin-top: 6px; }
  .experiment .annotation { margin-top: 8px; }
  .experiment__link { grid-row: auto; margin-top: 16px; text-align: left; }

  .index-header { display: none; }
  .index-row { grid-template-columns: 46px 1fr 18px; gap: 7px 14px; padding: 18px 0; }
  .index-row > *:nth-child(n+3) { grid-column: 2; }
  .index-row::after { grid-column: 3; grid-row: 1; opacity: .45; }
  .index-row__title { font-size: 29px; }

  .contact-grid { grid-template-columns: 1fr; gap: 76px; }
  .site-footer__row { grid-template-columns: 1fr 1fr; }
  .site-footer__identity { grid-column: 1 / -1; margin-bottom: 26px; }
  .site-footer__contact { justify-self: end; }
}

@media (max-width: 620px) {
  :root { --page-margin: 18px; }
  .mobile-menu { padding: 18px; }
  .mobile-menu nav { width: 100%; margin-left: 0; }
  .mobile-menu nav a { font-size: clamp(54px, 18vw, 82px); }
  .floating-brand { top: 18px; }
  .floating-menu-toggle { top: 14px; }
  .page-progress { right: 10px; }

  .timeline__row { grid-template-columns: 34px 1fr; gap: 12px 14px; }
  .timeline__label, .timeline__idea, .timeline__proof { grid-column: 2; }
  .timeline__idea { margin-top: 8px; }
  .timeline__proof { margin-top: 0; }

  .home-hero__title { font-size: clamp(58px, 17.8vw, 84px); }
  .system-cover { min-height: 480px; }
  .system-cover__meta { right: 14px; bottom: 13px; max-width: 18ch; }

  .manifesto__meta, .manifesto__title, .manifesto__text { grid-column: 1 / -1; }
  .manifesto__title { margin-top: 36px; }
  .observation-list { margin-left: 0; }
  .shift-ledger a { grid-template-columns: 1fr auto; }
  .shift-ledger a span:nth-of-type(2) { grid-column: 1; }
  .shift-ledger a i { grid-column: 2; grid-row: 1 / span 2; }
  .home-feature__bottom { grid-template-columns: 1fr; gap: 8px; }
  .manifesto-start { margin-left: 0; }
  .editorial-interlude { min-height: 330px; margin: 38px 0; }
  .editorial-interlude p, .editorial-interlude--3 p { margin-left: 0; text-align: left; }

  .system-words { grid-template-columns: 1fr; }
  .think-statements { display: block; }
  .statement, .statement:nth-child(n) { min-height: 55vh; padding: 30px 20px; font-size: clamp(52px, 14vw, 76px); }

  .work-filters { gap: 2px 18px; }
  .project-response__system { height: 90px; }
  .project-response__system span { width: 22px; height: 22px; }
  .context-grid { grid-template-columns: 1fr; }
  .evidence { grid-template-columns: 1fr; }
  .evidence__item + .evidence__item { padding-left: 0; border-top: 1px solid var(--rule); border-left: 0; }

  .experiment, .experiment:nth-child(n) { grid-template-columns: 48px 1fr; }
  .experiment__top { grid-column: 1; }
  .experiment__title, .experiment .body-md, .experiment .annotation, .experiment__link { grid-column: 2; }

  .contact-email { font-size: clamp(24px, 7.5vw, 38px); }
  .site-footer__row { grid-template-columns: 1fr; }
  .site-footer__identity, .site-footer__location, .site-footer__contact { grid-column: 1; justify-self: start; }
  .site-footer__contact { margin-top: 24px; }
}

@media (max-width: 900px) {
  .site-header__actions { gap: 18px; }
  .language-switch--header { font-size: 8px; gap: 6px; }
  .mobile-menu__footer {
    grid-template-columns: 1fr auto;
    gap: 12px 28px;
  }
  .mobile-menu__footer-identity { grid-column: 1; }
  .mobile-menu__footer-location { grid-column: 1; }
  .mobile-menu__footer-contact { grid-column: 2; grid-row: 1 / span 2; align-self: end; }
}

@media (max-width: 620px) {
  .site-header__actions { gap: 14px; }
  .language-switch--header { font-size: 8px; }
  .mobile-menu__top-actions { gap: 18px; }
  .mobile-menu .language-switch { font-size: 8px; }
  .mobile-menu nav { padding-top: 52px; padding-bottom: 126px; }
  .mobile-menu__footer {
    right: 18px;
    bottom: 16px;
    left: 18px;
    grid-template-columns: 1fr auto;
    gap: 7px 16px;
    padding-top: 11px;
  }
  .mobile-menu__footer-identity { font-size: 8px; }
  .mobile-menu__footer-location { font-size: 8px; }
  .mobile-menu__footer-contact { font-size: 8px; }
}

/* French copy needs a little more horizontal breathing room without changing the composition. */
html[data-lang="fr"] .home-hero__title {
  max-width: 11.5ch;
  font-size: clamp(72px, 9.4vw, 154px);
}

@media (max-width: 900px) {
  html[data-lang="fr"] .home-hero__title {
    max-width: 10.5ch;
    font-size: clamp(56px, 13vw, 88px);
  }
}

@media (max-width: 620px) {
  html[data-lang="fr"] .home-hero__title {
    max-width: 10ch;
    font-size: clamp(52px, 14.2vw, 78px);
  }
}
