/* All principal compositions use the same twelve-track grid. */
.container { width: min(100%, var(--page-max)); margin-inline: auto; padding-inline: var(--page-gutter); }
.grid-12, .home-intro, .project-grid, .studio-summary, .project-overview, .case-gallery, .news-row, .contact-layout, .home-update, .footer-grid, .journal-grid { display: grid; grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr)); gap: var(--grid-gap); }
.section-space { margin-block: var(--section-space); }
.section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-5); margin-bottom: var(--space-6); }
.section-heading h2 { font-size: clamp(1.375rem, 1rem + 1vw, 2rem); }
.home-intro { padding-block: var(--section-space); align-items: start; }
.home-intro > .statement { grid-column: 1 / span 8; }
.intro-aside { grid-column: 10 / span 3; }
.intro-aside .text-link { margin-top: var(--space-5); }
.project-card { grid-column: span 4; min-width: 0; }
.project-grid { row-gap: clamp(3rem, 5vw, 6rem); align-items: start; }
.studio-summary > h2 { grid-column: span 4; }
.studio-summary > div { grid-column: 6 / span 7; }
.home-update > .update-image { grid-column: span 7; }
.home-update > div { grid-column: 9 / span 4; align-self: center; }
.project-facts { grid-column: span 3; }
.project-description { grid-column: 5 / span 8; }
.case-image { grid-column: span 12; }
.case-image-1 { grid-column: span 4; }
.case-image-2 { grid-column: span 8; }
.news-image { grid-column: span 5; }
.news-row > div { grid-column: 7 / span 6; }
.contact-info { grid-column: span 4; }
.contact-form { grid-column: 6 / span 7; }
.journal-card { grid-column: span 6; }
.footer-grid > :nth-child(1) { grid-column: span 4; }
.footer-grid > :nth-child(2) { grid-column: span 3; }
.footer-grid > :nth-child(3) { grid-column: span 3; }
.footer-grid > :nth-child(4) { grid-column: span 2; }
@media (max-width: 1000px) {
  .home-intro > .statement { grid-column: span 7; }
  .intro-aside { grid-column: 9 / span 4; }
  .project-card { grid-column: span 6; }
  .home-update > .update-image { grid-column: span 6; }
  .home-update > div { grid-column: 8 / span 5; }
  .news-image { grid-column: span 5; }
  .news-row > div { grid-column: 7 / span 6; }
  .contact-info { grid-column: span 4; }
  .contact-form { grid-column: 6 / span 7; }
  .footer-grid > :nth-child(n) { grid-column: span 6; }
}
@media (max-width: 700px) {
  .home-intro > .statement,.intro-aside,.studio-summary > h2,.studio-summary > div,.project-facts,.project-description,.home-update > .update-image,.home-update > div,.news-image,.news-row > div,.contact-info,.contact-form,.journal-card { grid-column: span 12; }
  .home-intro,.home-update,.studio-summary,.project-overview,.contact-layout { row-gap: var(--space-6); }
  .intro-aside { max-width: 38rem; }
  .case-image-1,.case-image-2 { grid-column: span 12; }
  .section-heading { align-items: center; flex-wrap: wrap; }
}
@media (max-width: 600px) {
  .project-card { grid-column: span 12; }
  .footer-grid > :nth-child(n) { grid-column: span 12; }
}
