@media (max-width: 1280px) {
    .nav__link,
    .nav__trigger {
        font-size: 0.68rem;
        padding: 8px 8px;
        letter-spacing: 0.08em;
    }

    .hero__media {
        width: 64%;
    }

    .industries-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: none;
    }

    .industries-grid .industry-card:nth-child(1),
    .industries-grid .industry-card:nth-child(2) {
        grid-column: auto;
        min-height: 260px;
    }

    .projects-grid {
        grid-template-columns: 1fr 1fr;
    }

    .eco-stage {
        grid-template-columns: 1fr 1fr;
    }

    .eco-status {
        grid-column: 1 / -1;
        grid-template-columns: 1fr 1fr;
    }

    .site-footer__grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 900px) {
    .site-header {
        background: rgba(5, 6, 7, 0.96);
        backdrop-filter: blur(14px);
        border-bottom-color: var(--border);
    }

    .logo__mark--full {
        height: var(--logo-height-md, var(--logo-height, 52px));
        max-width: min(var(--logo-max-width, 240px), 90vw);
    }

    .logo--image-only .logo__mark--full {
        height: var(--logo-height-md, var(--logo-height, 50px));
        max-width: min(var(--logo-max-width, 240px), 90vw);
    }

    .nav {
        display: none;
    }

    .menu-toggle {
        display: grid;
    }

    .header-actions {
        display: flex;
    }

    .site-header__inner {
        justify-content: space-between;
    }

    .feature-card {
        display: flex;
        flex-direction: column;
        min-height: 0;
        box-shadow: 0 14px 36px rgba(0, 0, 0, 0.32);
    }

    .feature-card__media {
        order: -1;
        aspect-ratio: 16 / 10;
        min-height: 200px;
        max-height: 240px;
    }

    .feature-card__media::after {
        background: linear-gradient(
            180deg,
            rgba(13, 15, 18, 0) 55%,
            rgba(13, 15, 18, 0.55) 100%
        );
    }

    .feature-card__body {
        padding: 24px 22px 28px;
    }

    .feature-card__text {
        max-width: none;
        margin-bottom: 22px;
    }

    .support-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .support-card {
        box-shadow: 0 14px 36px rgba(0, 0, 0, 0.32);
    }

    .support-card__media {
        aspect-ratio: 16 / 10;
        max-height: 240px;
    }

    .support-card__body {
        padding: 24px 22px 28px;
    }

    .solutions__stack {
        gap: 20px;
    }

    .why-layout,
    .eco-stage {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .brands-grid,
    .brands-page-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .industries-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 720px) {
    /* Hero — full-bleed image with text overlay (Triangle-style mobile) */
    .hero.hero-carousel {
        min-height: 100svh;
        padding-top: var(--header-h);
    }

    .hero__glow-red,
    .hero__glow-lime {
        display: none;
    }

    .hero-carousel__track {
        position: relative;
        min-height: calc(100svh - var(--header-h));
    }

    .hero-carousel__slide.is-active {
        min-height: calc(100svh - var(--header-h));
    }

    .hero-carousel__slide .hero__media,
    .hero__media {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        min-height: 0;
    }

    .hero-carousel__slide .hero__media img,
    .hero-carousel__slide .hero__media video {
        object-position: center 22%;
    }

    .hero-carousel__slide .hero__media::after,
    .hero__media::after {
        background: linear-gradient(
            180deg,
            rgba(5, 6, 7, 0.08) 0%,
            rgba(5, 6, 7, 0.2) 38%,
            rgba(5, 6, 7, 0.82) 72%,
            rgba(5, 6, 7, 0.97) 100%
        );
    }

    .hero-carousel__slide .hero__stack,
    .hero__stack {
        position: relative;
        z-index: 2;
        justify-content: flex-end;
        min-height: calc(100svh - var(--header-h));
        width: 100%;
        max-width: none;
        margin-inline: 0;
        padding: 0 var(--gutter) 92px;
    }

    .hero-carousel__label,
    .label.hero-carousel__label {
        display: none;
    }

    .hero__title {
        max-width: none;
        margin: 0 0 14px;
        font-size: clamp(2.05rem, 10vw, 2.85rem);
        line-height: 0.94;
    }

    .hero__lead {
        max-width: none;
        font-size: 0.94rem;
        line-height: 1.55;
        color: rgba(255, 255, 255, 0.82);
    }

    .hero__trust {
        display: none;
    }

    .hero__cta-row {
        flex-direction: row;
        align-items: stretch;
        gap: 12px;
        margin-top: 22px;
    }

    .hero__cta-row .btn--primary {
        flex: 1;
        min-height: 52px;
        font-size: 0.76rem;
    }

    .hero-carousel__ui {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 22px;
        z-index: 5;
        margin-top: 0;
        padding: 0 var(--gutter);
        pointer-events: none;
    }

    .hero-carousel__ui > * {
        pointer-events: auto;
    }

    .hero-carousel__dots {
        display: none;
    }

    .hero-carousel__arrows {
        margin-left: auto;
        gap: 10px;
    }

    .hero-carousel__arrow {
        width: 46px;
        height: 46px;
        border-radius: 50%;
        background: rgba(5, 6, 7, 0.55);
        backdrop-filter: blur(8px);
    }

    .showcase-video {
        padding-bottom: var(--space-xl);
    }

    .showcase-video .container {
        padding-left: 0;
        padding-right: 0;
        max-width: none;
    }

    .showcase-video__frame {
        border-radius: 0;
        border-left: none;
        border-right: none;
        aspect-ratio: 16 / 10;
    }

    .showcase-video__hint {
        padding: 0 16px;
        font-size: 0.74rem;
    }

    .enquiry__grid {
        grid-template-columns: 1fr;
    }

    .section-head {
        margin-bottom: 40px;
    }

    .feature-card__body {
        padding: 22px 18px 26px;
    }

    .feature-card__title,
    .support-card__title {
        font-size: 1.25rem;
    }

    .feature-card__media,
    .support-card__media {
        max-height: 220px;
    }

    .feature-card__actions .btn,
    .support-card__body .btn {
        width: 100%;
        justify-content: center;
    }

    .industries-grid,
    .projects-grid,
    .why-grid,
    .why-stats,
    .eco-status,
    .brands-grid,
    .site-footer__grid {
        grid-template-columns: 1fr;
    }

    .industries-grid .industry-card {
        min-height: 220px;
    }

    .site-footer__bar {
        flex-direction: column;
    }

    .cta {
        padding: 80px 0;
    }
}

@media (max-width: 480px) {
    .logo__mark--full {
        height: var(--logo-height-sm, var(--logo-height-md, 46px));
        max-width: min(var(--logo-max-width, 210px), 88vw);
    }

    .logo--image-only .logo__mark--full {
        height: var(--logo-height-sm, var(--logo-height-md, 44px));
    }

    .hero__title {
        font-size: clamp(1.85rem, 9.5vw, 2.45rem);
    }

    .hero__lead {
        font-size: 0.88rem;
        -webkit-line-clamp: 4;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}

@media (pointer: coarse) {
    .cursor {
        display: none !important;
    }

    body.has-custom-cursor,
    body.has-custom-cursor a,
    body.has-custom-cursor button {
        cursor: auto;
    }
}
