/*====================================
LOCATIONS
====================================*/

.locations-section{

    padding:100px 0;

    background:#fff;

}

.location-heading{

    text-align:center;

    margin-bottom:60px;

}

.location-heading span{

    color:#ef7f1a;

    font-size:15px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

}

.location-heading h2{

    font-size:56px;

    color:#401d1b;

    margin:15px 0;

    font-weight:800;

}

.location-heading p{

    color:#666;

    font-size:20px;

}

/*======================*/

.locations-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:28px;

}

/*======================*/

.location-card{

    position:relative;

    display:block;

    overflow:hidden;

    border-radius:22px;

    text-decoration:none;

    box-shadow:0 15px 40px rgba(0,0,0,.12);

    transition:.35s;

}

.location-card:hover{

    transform:translateY(-8px);

}

.location-card img{

    width:100%;

    height:260px;

    object-fit:cover;

    transition:.45s;

}

.location-card:hover img{

    transform:scale(1.08);

}

/* Dark Overlay */

.location-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        transparent,
        rgba(0,0,0,.65)
    );

}

/* Area Name */

.location-card span{

    position:absolute;

    left:0;

    bottom:22px;

    width:100%;

    text-align:center;

    color:#fff;

    font-size:30px;

    font-weight:700;

    z-index:5;

}

/*======================*/

@media(max-width:1200px){

.locations-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.locations-grid{

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.location-heading h2{

font-size:38px;

}

.location-card img{

height:180px;

}

.location-card span{

font-size:22px;

}

}