.promos-section{
padding:0 25px;
display:flex;
justify-content:center;
background:#000;
}

.promos-container{
max-width:1200px;
width:100%;
margin-bottom:100px;
}

.promos-container h2{
    font-size: 40px;
    text-align: center;
    color: #ffff;
    margin-bottom: 10px;
}

.promos-subtitle{
margin-bottom:50px;
font-size: 15px;
text-align: center;
color: #ffff;
}

.promo-bottom{
display:flex;
justify-content:space-between;
align-items:center;
margin-top:10px;
}

/* IMAGE ZOOM */

.promo-image{
overflow:hidden;
}

.promo-image img{
transition:transform .5s ease, border-color .3s ease;
}

/* CONTINENT GRID */

.continent-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

/* CONTINENT CARD */

.continent-card{
border:1px solid #ffe401;
border-radius:15px;
overflow:hidden;
background:#000;
cursor:pointer;
display:flex;
flex-direction:column;
transition:all .35s ease;
}

/* IMAGE */

.continent-card .promo-image img{
width:100%;
display:block;
border-bottom:1px solid #ffe401;
}

/* CONTENT */

.continent-card .promo-content{
padding:20px 25px;
display:flex;
flex-direction:column;
}

.continent-card .promo-icons{
display:flex;
gap:12px;
margin-bottom:15px;
}

.continent-card .promo-icons i{
color:#ffe401;
font-size:15px;
transition:.3s;
}

.continent-card h3{
color:#fff;
margin:0 0 10px 0;
transition:.3s;
}

.continent-card .promo-divider{
width:100%;
height:1px;
background:#fff;
margin:5px 0;
transition:.3s;
}

.continent-card .promo-description{
font-size:14px;
line-height:1.3;
color:#fff;
transition:.3s;
}

.continent-card .promo-price{
display:inline-block;
padding:8px 15px;
border:1px solid #ffe401;
border-radius:50px;
background:#000;
color:#ffe401;
font-weight:bold;
font-size:14px;
transition:.3s;
}

/* HOVER + ACTIVE STATE */

.continent-card:hover,
.continent-card.active{
background:#fff;
transform:translateY(-8px);
border-color:#000;
}

.continent-card:hover .promo-image img,
.continent-card.active .promo-image img{
transform:scale(1.05);
border-bottom:1px solid #000;
}

.continent-card:hover h3,
.continent-card.active h3,
.continent-card:hover .promo-description,
.continent-card.active .promo-description{
color:#000;
}

.continent-card:hover .promo-icons i,
.continent-card.active .promo-icons i{
color:#000;
}

.continent-card:hover .promo-divider,
.continent-card.active .promo-divider{
background:#000;
}

.continent-card:hover .service-cta,
.continent-card.active .service-cta{
color:#000;
}

.continent-card:hover .service-cta i,
.continent-card.active .service-cta i{
transform:translateX(5px);
color:#000;
}

.continent-card:hover .promo-price,
.continent-card.active .promo-price{
background:#ffe401;
border-color:#000;
color:#000;
}

/* COUNTRY CARDS */

.country-card{
border:1px solid #ffe401;
border-radius:12px;
overflow:hidden;
background:#000;
cursor:pointer;
transition:.3s;
text-align:center;
}

.country-card:hover{
transform:translateY(-5px);
}

.country-card img{
width:100%;
height:auto;
display:block;
object-fit:contain;
}

.country-card h4{
color:#fff;
margin:12px 0 5px;
}

.country-card p{
color:#ffe401;
margin-bottom:12px;
}

/* EXPANSION ROW */

.promo-row{
grid-column:1/-1;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
margin-top:10px;
animation:expand .35s ease;
}

@keyframes expand{
from{
opacity:0;
transform:translateY(-10px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* RESPONSIVE */

@media(max-width:1000px){

.continent-grid{
grid-template-columns:repeat(2,1fr);
}

.promo-row{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

.continent-grid{
grid-template-columns:1fr;
}

.promo-row{
grid-template-columns:1fr;
}

}

/* PROMO MODAL */

/* PROMO MODAL */

.promo-modal{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.85);
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    transition:.3s;
    z-index:9999;
}

/* Only active state */
.promo-modal.active{
    opacity:1;
    visibility:visible;
}

.promo-modal-img{
    height:90vh;
    width:auto;
    border-radius:10px;
    box-shadow:0 20px 60px rgba(0,0,0,.5);
}

/* Remove the X button entirely */