@media (min-width: 30rem) {
  .hero__actions {
    align-items: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .credential-grid,
  .stats,
  .scope-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .scope-item:nth-child(odd) { padding-right: var(--space-5); border-right: 1px solid var(--color-border); }
  .scope-item:nth-child(even) { padding-left: var(--space-5); }

  .stat:nth-child(odd) {
    padding-right: var(--space-5);
    border-right: 1px solid var(--color-border);
  }

  .stat:nth-child(even) {
    padding-left: var(--space-5);
  }
}

@media (min-width: 48rem) {
  .section {
    padding-block: var(--space-24);
  }

  .grid-12 {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    column-gap: var(--space-5);
  }

  .section-heading--split {
    grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
    align-items: end;
  }

  .section-heading--inline {
    grid-template-columns: 1fr auto;
    align-items: end;
  }

  .hero__content {
    padding-bottom: var(--space-16);
  }

  .hero__lead {
    font-size: 1.25rem;
  }

  .intro .section-label { grid-column: 1 / 3; }
  .intro__statement { grid-column: 3 / 9; margin-top: 0; }
  .intro__support { grid-column: 5 / 9; }
  .stats { grid-column: 1 / 9; grid-template-columns: repeat(4, 1fr); }
  .scope-grid { grid-column: 1 / 9; grid-template-columns: repeat(3, 1fr); }
  .scope-item { padding-inline: var(--space-5); border-right: 1px solid var(--color-border); }
  .scope-item:nth-child(3n + 1) { padding-left: 0; }
  .scope-item:nth-child(3n) { padding-right: 0; border-right: 0; }
  .stat { min-height: 10rem; padding-inline: var(--space-5); border-right: 1px solid var(--color-border); }
  .stat:first-child { padding-left: 0; }
  .stat:last-child { border-right: 0; padding-right: 0; }

  .project-grid,
  .value-grid,
  .feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .project-card--feature {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(16rem, 1fr);
    gap: var(--space-8);
    align-items: end;
  }

  .project-card--feature .project-card__image {
    aspect-ratio: 3 / 2;
  }

  .project-card--feature .project-card__body {
    padding-bottom: var(--space-3);
  }

  .value-grid {
    row-gap: var(--space-16);
  }

  .case-study__grid {
    grid-template-columns: minmax(0, 5fr) minmax(0, 3fr);
    align-items: center;
  }

  .case-study__detail {
    position: absolute;
    right: -1.5rem;
    bottom: -2rem;
    width: 36%;
    margin: 0;
    border: 0.5rem solid var(--color-light);
  }

  .process-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-12) var(--space-6);
  }

  .process-list::before {
    display: none;
  }

  .process-step {
    padding: var(--space-16) var(--space-4) 0 0;
    border-top: 1px solid var(--color-border);
  }

  .process-step span {
    top: -1.25rem;
    left: 0;
  }

  .process-step:not(:last-child)::after { position: absolute; top: -0.3rem; right: var(--space-3); color: var(--color-accent); content: "→"; font-size: 1rem; }

  .credential-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-10) var(--space-6);
  }

  .news-card:first-child {
    grid-column: 1 / -1;
  }

  .news-card:first-child a {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(18rem, 1fr);
    gap: var(--space-8);
  }

  .news-card:first-child .news-card__image {
    grid-row: 1 / 5;
    margin: 0;
  }

  .site-footer__main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-footer__brand {
    grid-column: 1 / -1;
  }

  .site-footer__legal {
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
  }
}

@media (min-width: 64rem) {
  .header-cta {
    display: inline-flex;
    margin-left: auto;
  }

  .site-logo {
    width: 9.25rem;
  }

  .menu-toggle {
    margin-left: 0;
  }

  .hero__caption {
    position: absolute;
    right: 0;
    bottom: var(--space-16);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    color: rgba(245, 245, 245, 0.68);
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  .hero__scroll {
    position: absolute;
    left: 50%;
    bottom: var(--space-8);
    display: flex;
    align-items: center;
    gap: var(--space-3);
    color: rgba(245, 245, 245, 0.68);
    font-size: 0.6875rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .hero__scroll span { position: relative; width: 1px; height: 2.75rem; overflow: hidden; background: rgba(245, 245, 245, 0.28); }
  .hero__scroll span::after { position: absolute; inset: 0; background: var(--color-accent); content: ""; animation: scroll-line 2s var(--ease-standard) infinite; transform: translateY(-100%); }

  @keyframes scroll-line { 50%, 100% { transform: translateY(100%); } }

  .news-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .news-card:first-child {
    grid-column: auto;
  }

  .news-card:first-child a {
    display: block;
  }

  .news-card:first-child .news-card__image {
    margin-bottom: var(--space-5);
  }
}

@media (min-width: 80rem) {
  .section {
    padding-block: var(--space-32);
  }

  .grid-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    column-gap: var(--space-6);
  }

  .desktop-nav {
    display: flex;
    margin-left: auto;
    align-items: center;
    gap: var(--space-8);
    font-size: 0.875rem;
    font-weight: 500;
  }

  .desktop-nav a {
    position: relative;
    padding-block: var(--space-2);
  }

  .desktop-nav a::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2px;
    background: var(--color-accent);
    content: "";
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--duration-default) var(--ease-emphasis);
  }

  .desktop-nav a:hover::after,
  .desktop-nav a.is-active::after {
    transform: scaleX(1);
  }

  .menu-toggle {
    display: none;
  }

  .hero__content {
    padding-bottom: var(--space-20);
  }

  .hero__copy {
    max-width: 42rem;
  }

  .intro .section-label { grid-column: 1 / 3; }
  .intro__statement { grid-column: 4 / 11; }
  .intro__support { grid-column: 8 / 12; }
  .stats, .scope-grid { grid-column: 1 / 13; }

  .service-row {
    min-height: 7rem;
    padding-inline: var(--space-4);
    grid-template-columns: 4rem minmax(18rem, 4fr) minmax(20rem, 4fr) 2rem;
    align-items: center;
  }

  .service-row p {
    grid-column: auto;
  }

  .case-study__grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .case-study__visual { grid-column: 1 / 8; }
  .case-study__content { grid-column: 9 / 13; }

  .process-list {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .testimonial__grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .testimonial .section-label { grid-column: 1 / 3; }
  .testimonial blockquote { grid-column: 3 / 11; }
  .testimonial__source { grid-column: 9 / 12; }

  .contact {
    min-height: 42rem;
  }

  .contact__inner {
    text-align: center;
  }

  .contact__inner > p,
  .contact__email {
    margin-inline: auto;
  }

  .site-footer__main {
    grid-template-columns: 4fr 1.5fr 1.5fr 2.5fr;
    gap: var(--space-16);
  }

  .site-footer__brand {
    grid-column: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  .hero__media img,
  .project-card__image img,
  .feature-card__image img,
  .news-card img {
    transform: none !important;
  }

  .hero__scroll span::after,
  .testimonial-card { animation: none; }
}

@media (max-width: 29.99rem) {
  .contact .button { width: 100%; }
  .contact .button + .button { margin-left: 0; }
  .testimonial__header { align-items: flex-start; flex-direction: column; }
}
