/* =========================================================
   RESPONSIVE ALMAIA
========================================================= */

/* =========================
   TABLET / LAPTOP SMALL
========================= */
@media (max-width: 1199px){

    .editorial-grid{
        grid-template-columns: 1fr 1fr;
    }

    .card-venues{
        margin: 0;
    }

    .editorial-photo,
    .editorial-card{
        min-height: 380px;
    }

}


/* =========================
   NAVBAR MOBILE
========================= */
@media (max-width: 1100px){


body.menu-open{
    overflow: hidden;
}

    .navbar-almaia{
        height: 82px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .nav-side{
        display: none;
    }

    .nav-logo img{
        width: 175px;
        max-width: 175px;
    }

    .menu-toggle{
        display: block;
        z-index: 9999;
    }

    .nav-mobile{
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        /*height: 100dvh;*/
    
        background: #F7F3EE;
        /*backdrop-filter: none;*/
    
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 26px;
    
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    
        transform: translateY(-10px);
        transition: .35s ease;
    
        z-index: 9998;
        padding-bottom: 15px;
    }
    
    .nav-mobile.active{
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    .nav-mobile.active{
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .nav-mobile a{
        font-family: var(--font-body);
        text-transform: uppercase;
        letter-spacing: 3px;
        font-size: 13px;
        color: var(--c-dark);
    }

    .nav-cta-mobile{
        border: 1px solid rgba(46,38,35,.35);
        padding: 13px 24px;
        margin-top: 10px;
    }

    .hero-editorial{
        padding-top: 82px;
    }

}


/* =========================
   TABLET
========================= */
@media (max-width: 991px){

    .section{
        padding: 75px 0;
    }

    h1{
        font-size: 4.5rem;
        letter-spacing: 8px;
    }

    h2{
        font-size: 3rem;
    }

    /* HERO */
    .hero-almaia,
    .hero-editorial{
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .hero-left{
        padding: 125px 8% 65px;
    }

    .hero-logo{
        max-width: 360px;
    }

    .hero-right{
        height: 65vh;
    }

    .hero-right img{
        object-position: center top;
    }

    /* EXPERIENCIAS */
    .experiencias-grid{
        grid-template-columns: 1fr;
    }

    .experiencia-item{
        border-right: none;
        border-bottom: 1px solid rgba(46,38,35,.12);
        padding: 28px 20px;
    }

    .experiencia-item:last-child{
        border-bottom: none;
    }

    /* ABOUT */
    .about-layout{
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .about-image img{
        height: 430px;
    }

    .about-text{
        max-width: 100%;
        text-align: center;
    }

    /* PORTAFOLIO */
    .portfolio-grid{
        grid-template-columns: 1fr;
    }

    .portfolio-card{
        height: 440px;
    }

    /* VENUES */
    .venues-gallery-strip{
        grid-template-columns: repeat(3, 1fr);
    }

    /* CONFIANZA */
    .trust-grid{
        grid-template-columns: 1fr;
        text-align: center;
    }

    .trust-values{
        grid-template-columns: 1fr;
    }

    .trust-image{
        max-width: 430px;
        margin: auto;
    }

    /* PROCESO */
    .process-grid{
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .process-item{
        padding: 0;
    }

    /* SAN MIGUEL */
    .sanmiguel-images{
        grid-template-columns: 1fr;
    }

    .sanmiguel-images img{
        height: 300px;
    }

    /* CTA */
    .cta-layout{
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* FOOTER */
    .footer-row{
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 18px;
    }

    .footer-nav{
        flex-wrap: wrap;
        gap: 14px 20px;
    }

    .footer-logo{
        width: 150px;
        margin: 0 auto;
    }

}


/* =========================
   MOBILE
========================= */
@media (max-width: 767px){

    /* VENUES */
    .editorial-grid{
        grid-template-columns: 1fr;
    }

    .editorial-photo{
        min-height: 340px;
    }

    .editorial-card{
        min-height: auto;
        padding: 42px 24px;
    }

    .card-venues{
        margin: 0;
        box-shadow: none;
    }

    .destination-inner{
        border-radius: 120px 120px 0 0;
        padding: 40px 24px 34px;
    }

    .card-venues h2,
    .destination-inner h3{
        font-size: 1.7rem;
    }

}


/* =========================
   MOBILE SMALL
========================= */
@media (max-width: 576px){

    .section{
        padding: 65px 0;
    }

    .container{
        width: min(100%, 88%);
    }

    h1{
        font-size: 3.4rem;
        letter-spacing: 6px;
    }

    h2{
        font-size: 2.4rem;
    }

    h3{
        font-size: 1.35rem;
    }

    p{
        font-size: 14px;
    }

    /* HEADER */
    .navbar-almaia{
        height: 74px;
    }

    .nav-logo img{
        width: 145px;
        max-width: 145px;
    }

    .nav-mobile a{
        font-size: 12px;
        letter-spacing: 2.5px;
    }

    /* HERO */
    .hero-left{
        padding: 105px 7% 55px;
    }

    .hero-logo{
        max-width: 300px;
    }

    .hero-kicker{
        font-size: 16px;
    }

    .hero-location{
        font-size: 10px;
        letter-spacing: 3px;
    }

    .hero-description{
        font-size: 14px;
    }

    .hero-right{
        height: 58vh;
    }

    /* ABOUT */
    .about-image img{
        height: 360px;
    }

    /* PORTAFOLIO */
    .portfolio-card{
        height: 390px;
    }

    .portfolio-overlay{
        padding: 26px;
    }

    .portfolio-overlay h3{
        font-size: 1.8rem;
    }

    /* VENUES */
    .venues-gallery-strip{
        grid-template-columns: repeat(2, 1fr);
    }

    .venues-gallery-strip img{
        height: 180px;
    }

    /* GALERIA PAGE */
    .gallery-cover-hero{
        min-height: 68vh;
        margin-top: 74px;
    }

    .gallery-cover-content h1{
        font-size: 3.2rem;
        letter-spacing: 3px;
    }

    .gallery-masonry{
        columns: 1;
    }

    /* CONTACTO */
    .contact-form-box{
        padding: 32px 24px;
    }

    /* FOOTER */
    .footer-almaia{
        padding: 22px 0;
    }

    .footer-nav{
        gap: 10px 14px;
    }

    .footer-nav a{
        font-size: 10px;
        letter-spacing: 1.4px;
    }

    .footer-social a{
        font-size: 15px;
    }

}