/*
 * assets/css/responsive.css
 *
 * Breakpoint-specific overrides. Base editorial rules live in
 * altura.css; this file exists so responsive behaviour can be found
 * and adjusted in one place without hunting through the main
 * stylesheet. Expanded in Phase 5 (Design Refinement).
 */

@media (max-width: 991.98px) {
    .altura-header__toggle {
        display: flex;
    }

    .altura-header__nav {
        display: none;
    }

    .altura-header__nav.is-open {
        display: block;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        max-height: calc(100vh - var(--header-height));
        overflow-y: auto;
        background: var(--altura-charcoal);
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        padding: 1rem 1.25rem;
        z-index: 100;
    }

    .altura-header__nav.is-open > ul {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    /* Services becomes a tap-to-expand accordion instead of a hover dropdown */
    .altura-header__has-submenu {
        flex-wrap: wrap;
        width: 100%;
    }

    .altura-header__submenu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        display: none;
        box-shadow: none;
        border: none;
        background: none;
        padding: 0.25rem 0 0 1rem;
        min-width: 0;
        width: 100%;
    }

    .altura-header__has-submenu.is-open .altura-header__submenu {
        display: block;
    }

    .altura-service-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .altura-service-row__desc {
        text-align: left;
    }
}

@media (max-width: 575.98px) {
    .altura-header__inner {
        padding: 1rem 1.25rem;
    }

    .altura-footer__top {
        padding: 3rem 1.25rem;
    }

    .altura-footer__bottom-inner {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .altura-page-hero,
    .altura-intro,
    .altura-services,
    .altura-about,
    .altura-industries,
    .altura-case-studies,
    .altura-team,
    .altura-testimonials,
    .altura-insights,
    .altura-cta,
    .altura-newsletter,
    .altura-contact,
    .altura-legal,
    .altura-article,
    .altura-about-content,
    .altura-team-preview,
    .altura-service-detail,
    .altura-related-case-studies,
    .altura-case-study-detail,
    .altura-gallery,
    .altura-breadcrumbs {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .altura-page-hero,
    .altura-intro,
    .altura-services,
    .altura-about,
    .altura-industries,
    .altura-case-studies,
    .altura-team,
    .altura-testimonials,
    .altura-insights,
    .altura-cta,
    .altura-newsletter,
    .altura-article,
    .altura-about-content,
    .altura-team-preview,
    .altura-service-detail,
    .altura-related-case-studies,
    .altura-case-study-detail,
    .altura-gallery {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .altura-page-hero {
        padding-top: 1.75rem;
        padding-bottom: 1.25rem;
    }
}

@media (max-width: 767.98px) {
    .altura-footer__grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .altura-footer__bottom-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .altura-footer__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
