/* ==========================================
   CATEGORÍAS
========================================== */

.home-categories{
    padding:140px 0;
    background:#fff;
}

.home-categories .container{
    max-width:1320px;
    margin:0 auto;
    padding:0 24px;
}

.home-categories .section-tag{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#b78b52;
    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:.78rem;
    font-weight:600;
    margin-bottom:18px;
}

.home-categories .section-tag::after{
    content:"";
    width:55px;
    height:1px;
    background:#b78b52;
}

.home-categories h2{
    font-family:"Cormorant Garamond", serif;
    font-size:4rem;
    font-weight:400;
    line-height:1.05;
    color:#222;
    margin:0 0 20px;
}

.home-categories .section-description{
    max-width:700px;
    color:#666;
    font-size:1.05rem;
    line-height:1.8;
    margin:0 auto 70px;
}


/* ==========================================
   GRID
========================================== */

.categories-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}


/* ==========================================
   CARD
========================================== */

.category-card{

    position:relative;

    overflow:hidden;

    border-radius:18px;

    display:block;

    text-decoration:none;

    height: 540px;

    background:#f5f5f5;

    isolation:isolate;
    
    box-shadow:0 20px 45px rgba(0,0,0,.08);

}


.category-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center;

    display:block;

    transition:
        transform .8s ease,
        filter .5s ease;

}


/* ==========================================
   OVERLAY
========================================== */

.category-card::before{

    content:"";

    position:absolute;

    inset:0;

    z-index:1;

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.52) 0%,
            rgba(0,0,0,.28) 30%,
            rgba(0,0,0,.12) 55%,
            rgba(0,0,0,0) 100%
        );

    transition:.4s;

}

.overlay{

    position:absolute;

    inset:0;

    z-index:2;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:flex-start;

    padding:48px;

}


.overlay h3{

    margin:0;

    color:#fff;

    font-family:"Cormorant Garamond", serif;

    font-weight:400;

    font-size:3.6rem;

    line-height:1;

    letter-spacing:.01em;

}


.overlay p{

    margin:20px 0 34px;

    max-width:260px;

    color:rgba(255,255,255,.92);

    font-size:1rem;

    line-height:1.7;

    font-weight:300;

}


.overlay span{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:#d0a66a;

    font-size:1rem;

    font-weight:500;

    transition:.35s;

}

.overlay span::after{

    content:"→";

    transition:.35s;

}


/* ==========================================
   HOVER
========================================== */

.category-card:hover img{

    transform:scale(1.08);

}

.category-card:hover::before{

    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.60) 0%,
            rgba(0,0,0,.35) 35%,
            rgba(0,0,0,.14) 60%,
            rgba(0,0,0,0) 100%
        );

}

.category-card:hover span{

    gap:18px;

    color:#e0b87d;

}

.category-card:hover{

    transform:translateY(-6px);

    box-shadow:0 35px 60px rgba(0,0,0,.15);

}

/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width:991px){

    .categories-grid{

        grid-template-columns:1fr;

    }

    .home-categories h2{

        font-size:3rem;

    }

}

@media (max-width:768px){

    .home-categories{

        padding:70px 0;

    }

    .overlay{

        padding:32px;

    }

    .overlay h3{

        font-size:2.7rem;

    }

    .overlay p{

        font-size:.95rem;

        margin:18px 0 24px;

    }

}