@media (max-width: 1180px) {
    :root {
        --header-height: 5.3rem;
    }

    .desktop-nav {
        gap: 0.75rem;
    }

    .header-cta {
        display: none;
    }

    .company-intro__grid {
        grid-template-columns: 7rem minmax(0, 0.85fr) minmax(20rem, 0.9fr);
    }

    .service-card {
        grid-column: span 6;
    }

    .service-card:nth-child(1),
    .service-card:nth-child(4),
    .service-card:nth-child(5),
    .service-card:nth-child(6),
    .service-card:nth-child(8),
    .service-card:nth-child(9) {
        grid-column: span 6;
    }

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

    .stock-card {
        min-height: 18rem;
    }

    .stock-card h3 {
        margin-top: 4rem;
    }

    .site-footer__top {
        grid-template-columns: 1.25fr 0.75fr 1fr;
    }

    .site-footer__contact {
        grid-column: 2 / -1;
    }
}

@media (max-width: 960px) {
    :root {
        --gutter: clamp(1.1rem, 3.5vw, 2rem);
    }

    .desktop-nav,
    .header-cta {
        display: none;
    }

    .site-header__inner {
        justify-content: space-between;
    }

    .brand:not(.brand--footer) {
        width: 4.75rem;
    }

    .menu-toggle,
    .mobile-menu {
        display: block;
    }

    .section-heading--split {
        grid-template-columns: 1fr;
        gap: var(--space-md);
    }

    .section-heading--split > p {
        max-width: 39rem;
    }

    .home-hero__grid {
        grid-template-columns: 1fr;
    }

    .home-hero__aside {
        display: none;
    }

    .company-intro__grid {
        grid-template-columns: 6rem minmax(0, 1fr);
    }

    .company-intro__visual {
        min-height: 33rem;
        grid-column: 2;
    }

    .fact-strip {
        grid-column: 2;
    }

    .quality__grid,
    .about-infrastructure__grid,
    .principles__grid,
    .contact-page__grid {
        grid-template-columns: 1fr;
    }

    .quality__media,
    .about-infrastructure__media {
        height: min(38rem, 70vh);
        min-height: 0;
    }

    .quality__content {
        padding: 0;
    }

    .about-story__grid {
        grid-template-columns: 6rem 1fr;
    }

    .about-story__copy {
        padding-top: 0;
        grid-column: 2;
    }

    .contact-details {
        position: static;
    }

    .contact-page__grid {
        gap: var(--space-lg);
    }

    .directory-item {
        grid-template-columns: minmax(16rem, 0.8fr) 3rem minmax(0, 1.2fr);
    }

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

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

@media (max-width: 760px) {
    :root {
        --header-height: 4.8rem;
        --space-xl: 5rem;
    }

    .site-header.is-scrolled {
        height: 4.5rem;
    }

    .brand:not(.brand--footer) {
        width: 4.2rem;
    }

    .mobile-menu__panel {
        width: 100%;
    }

    .editorial-grid {
        grid-template-columns: 1fr;
        gap: var(--space-md);
    }

    .section-marker {
        margin-bottom: var(--space-sm);
    }

    .home-hero {
        min-height: 47rem;
    }

    .home-hero__grid {
        padding-top: calc(var(--header-height) + 5rem);
        padding-bottom: 2rem;
        align-items: center;
    }

    .home-hero__shade {
        background:
            linear-gradient(90deg, rgba(7, 9, 11, 0.86), rgba(7, 9, 11, 0.48)),
            linear-gradient(180deg, rgba(7, 9, 11, 0.25), transparent 32%, rgba(7, 9, 11, 0.83));
    }

    .home-hero h1 {
        max-width: none;
        font-size: clamp(2.4rem, 12vw, 4.25rem);
        overflow: visible;
    }

    .home-hero h1 span {
        white-space: nowrap;
    }

    .home-hero h1 span:last-child {
        width: auto;
        font-size: 1em;
        letter-spacing: -0.035em;
        transform: none;
    }

    .home-hero__lead {
        max-width: 34rem;
        font-size: 1.05rem;
    }

    .scroll-cue {
        display: none;
    }

    .button {
        min-height: 3.4rem;
    }

    .company-intro__grid,
    .about-story__grid {
        grid-template-columns: 1fr;
    }

    .company-intro__visual,
    .fact-strip,
    .about-story__copy {
        grid-column: auto;
    }

    .company-intro__visual {
        min-height: 27rem;
    }

    .company-intro__badge {
        right: 0;
        bottom: 0;
    }

    .fact-strip {
        grid-template-columns: 1fr;
    }

    .fact-strip div {
        min-height: 6rem;
    }

    .fact-strip div + div {
        border-top: 1px solid var(--line);
        border-left: 0;
    }

    .services-editorial-grid {
        display: block;
    }

    .service-card {
        min-height: 27rem;
        margin-bottom: 0.8rem;
    }

    .service-card__content p {
        max-height: none;
        margin-bottom: 0.9rem;
        opacity: 1;
        transform: none;
    }

    .stock-grid,
    .equipment-grid {
        grid-template-columns: 1fr;
    }

    .stock-card {
        min-height: 15rem;
    }

    .stock-card h3 {
        margin-top: 3rem;
    }

    .mosaic-gallery {
        display: grid;
        grid-auto-rows: 18rem;
        grid-template-columns: 1fr;
    }

    .mosaic-gallery__item,
    .mosaic-gallery__item:first-child,
    .mosaic-gallery__item:nth-child(2),
    .mosaic-gallery__item:nth-child(3),
    .mosaic-gallery__item:nth-child(4),
    .mosaic-gallery__item:nth-child(5),
    .mosaic-gallery__item:nth-child(6) {
        grid-row: auto;
        grid-column: auto;
    }

    .quality__media,
    .about-infrastructure__media {
        height: 30rem;
    }

    .inner-hero {
        min-height: 42rem;
    }

    .inner-hero__content {
        padding-top: calc(var(--header-height) + 3.5rem);
        padding-bottom: 2.2rem;
    }

    .breadcrumb {
        margin-bottom: 4rem;
    }

    .inner-hero__title {
        grid-template-columns: 3.5rem 1fr;
    }

    .inner-hero__title h1 {
        font-size: clamp(3.4rem, 14vw, 6.2rem);
    }

    .gallery-grid {
        display: block;
    }

    .gallery-item,
    .gallery-item:nth-child(3n + 1),
    .gallery-item:nth-child(3n + 2) {
        display: block;
        min-height: 0;
        margin-bottom: 0.75rem;
    }

    .gallery-item__image {
        aspect-ratio: 4 / 3;
    }

    .related-grid {
        grid-template-columns: 1fr;
    }

    .related-card__media {
        height: 19rem;
    }

    .service-pagination {
        grid-template-columns: 1fr;
    }

    .service-pagination a {
        min-height: 8.5rem;
    }

    .service-pagination a + a {
        border-top: 1px solid var(--line-light);
        border-left: 0;
    }

    .contact-band__inner {
        min-height: 31rem;
        grid-template-columns: 1fr;
        align-items: start;
    }

    .contact-band__inner .eyebrow,
    .contact-band__inner > p {
        grid-column: auto;
    }

    .directory-item {
        display: grid;
        padding-block: var(--space-md);
        grid-template-columns: 3.5rem 1fr;
    }

    .directory-item__media {
        height: 20rem;
        grid-column: 1 / -1;
    }

    .directory-item__number {
        grid-column: 1;
    }

    .directory-item__content {
        grid-column: 2;
    }

    .directory-item__content h2 {
        font-size: clamp(2.6rem, 12vw, 4.5rem);
    }

    .team-row {
        grid-template-columns: 3rem 1fr;
        gap: 0.8rem;
    }

    .team-row p {
        grid-column: 2;
    }

    .infrastructure-facts div {
        grid-template-columns: 1fr;
        gap: 0.2rem;
    }

    .field-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .contact-form-wrap {
        padding: 1.2rem;
    }

    .form-note {
        display: block;
        margin-top: 0.8rem;
        margin-left: 0;
    }

    .site-footer__top {
        grid-template-columns: 1fr;
    }

    .site-footer__bottom {
        gap: 0.5rem;
        flex-direction: column;
    }

    .lightbox__previous,
    .lightbox__next {
        top: auto;
        bottom: 1rem;
    }
}

@media (max-width: 440px) {
    .button-group {
        align-items: stretch;
        flex-direction: column;
    }

    .button-group .button {
        width: 100%;
    }

    .home-hero__content .eyebrow {
        margin-bottom: 1rem;
    }

    .company-intro__visual {
        min-height: 23rem;
    }

    .company-intro__badge {
        width: 9.5rem;
        min-height: 8.5rem;
    }

    .inner-hero__title {
        grid-template-columns: 1fr;
        gap: 0.4rem;
    }

    .inner-hero__title h1 {
        margin-top: 0.8rem;
    }

    .directory-item {
        display: block;
    }

    .directory-item__number {
        display: block;
        margin-block: 1rem;
    }

    .contact-email-list strong {
        font-size: 0.78rem;
    }
}

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

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .reveal {
        opacity: 1;
        transform: none;
    }
}
