/* =========================================================
   LOCATIONS SECTION
========================================================= */

.locations-section *{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

.locations-section{
    width:100%;
    background:#f5f5f5;
    overflow:hidden;
    position:relative;
    font-family:Arial,sans-serif;

    padding:0 !important;
    margin:0 !important;
}

/* =========================================================
   CONTAINER
========================================================= */

.locations-container{
    width:100%;
    max-width:100%;

    margin:0 auto;

    padding:20px 25px 0 !important;
}

/* =========================================================
   TITLE
========================================================= */

.locations-section .section-title{
    text-align:center;

    margin-bottom:30px;

    opacity:0;
    transform:translateY(60px);
    transition:1s ease;
}

.locations-section .section-title.show{
    opacity:1;
    transform:translateY(0);
}

.locations-section .section-title h4{
    font-size:18px;
    color:#000;

    margin-bottom:15px;

    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:700;
}

.locations-section .section-title h2{
    font-size:62px;
    line-height:1;

    color:#ff0099;

    font-weight:800;

    margin-bottom:20px;
}

.locations-section .title-line{
    width:100px;
    height:4px;

    background:#777;

    margin:0 auto 22px;
}

.locations-section .section-title p{
    max-width:850px;

    margin:auto;

    color:#222;

    font-size:18px;
    line-height:1.8;
}

/* =========================================================
   SWIPER
========================================================= */

.locations-section .locationSwiper{
    overflow:hidden;

    padding:0 !important;
    margin:0 !important;
}

.locations-section .swiper{
    padding-bottom:0 !important;
    margin-bottom:0 !important;
}

.locations-section .swiper-wrapper{
    align-items:flex-start !important;

    padding-bottom:0 !important;
    margin-bottom:0 !important;
}

.locations-section .swiper-slide{
    height:auto !important;

    display:flex;

    opacity:0;
    transform:translateY(60px);

    transition:1s ease;
}

.locations-section .swiper-slide.show{
    opacity:1;
    transform:translateY(0);
}

/* =========================================================
   CARD
========================================================= */

.locations-section .location-card{
    width:100%;

    background:#fff;

    border-radius:30px;

    overflow:hidden;

    display:flex;
    flex-direction:column;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:0 10px 35px rgba(0,0,0,.08);

    transition:.4s ease;

    height:auto !important;
    min-height:auto !important;
}

.locations-section .location-card:hover{
    transform:translateY(-8px);

    box-shadow:0 18px 45px rgba(255,0,153,.18);
}

/* =========================================================
   CARD TOP
========================================================= */

.locations-section .card-top{
    height:160px;

    display:flex;
    align-items:center;
    justify-content:center;

    position:relative;
    overflow:hidden;

    background:linear-gradient(
        135deg,
        #2d0b59,
        #4b0082,
        #ff0099
    );
}

/* CHAKRA */

.locations-section .card-top::before{
    content:'';

    position:absolute;

    width:220px;
    height:220px;

    background:url('../images/chakra.png') center/contain no-repeat;

    opacity:.15;

    animation:chakraRotate 30s linear infinite;
}

/* ICON */

.locations-section .card-top i{
    font-size:56px;

    color:#fff;

    position:relative;
    z-index:2;

    animation:floatIcon 3s ease-in-out infinite;
}

/* =========================================================
   CARD CONTENT
========================================================= */

.locations-section .card-content{
    padding:26px 22px !important;

    text-align:center;

    display:flex;
    flex-direction:column;
    align-items:center;

    height:auto !important;
    min-height:auto !important;

    flex:none !important;
}

/* =========================================================
   CARD TITLE
========================================================= */

.locations-section .card-content h3{
    font-size:30px;

    color:#ff0099;

    margin-bottom:14px;

    font-weight:800;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.locations-section .card-content p{
    font-size:17px;
    line-height:1.8;

    color:#222;

    margin-bottom:20px;
}

/* =========================================================
   META
========================================================= */

.locations-section .card-meta{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;

    gap:10px;

    margin-bottom:20px;
}

.locations-section .card-meta span{
    display:flex;
    align-items:center;

    gap:7px;

    background:#ffe9f5;

    color:#ff0099;

    padding:8px 14px;

    border-radius:40px;

    font-size:13px;
    font-weight:700;
}

/* =========================================================
   BUTTON
========================================================= */

.locations-section .contact-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:10px;

    padding:15px 28px;

    border-radius:60px;

    text-decoration:none;

    background:linear-gradient(
        135deg,
        #ff0099,
        #ff4db8
    );

    color:#fff;

    font-size:15px;
    font-weight:700;

    transition:.4s ease;

    box-shadow:0 12px 30px rgba(255,0,153,.25);

    margin:0 !important;
}

.locations-section .contact-btn:hover{
    transform:translateY(-4px) scale(1.03);
}

/* =========================================================
   PAGINATION
========================================================= */

.locations-section .swiper-pagination{
    position:relative !important;

    margin-top:12px !important;
    margin-bottom:0 !important;

    bottom:0 !important;
}

.locations-section .swiper-pagination-bullets{
    bottom:0 !important;
}

.locations-section .swiper-pagination-bullet{
    background:#ff0099 !important;

    opacity:.4;

    transition:.3s ease;
}

.locations-section .swiper-pagination-bullet-active{
    opacity:1;

    width:22px;

    border-radius:30px;
}

/* =========================================================
   NAVIGATION
========================================================= */

.locations-section .swiper-button-next,
.locations-section .swiper-button-prev{
    width:55px !important;
    height:55px !important;

    border-radius:50%;

    background:#fff;

    color:#ff0099 !important;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

    transition:.3s ease;
}

.locations-section .swiper-button-next:hover,
.locations-section .swiper-button-prev:hover{
    background:#ff0099;

    color:#fff !important;
}

.locations-section .swiper-button-next::after,
.locations-section .swiper-button-prev::after{
    font-size:18px !important;
    font-weight:bold;
}

/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes chakraRotate{

    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }

}

@keyframes floatIcon{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }

    100%{
        transform:translateY(0);
    }

}

/* =========================================================
   REMOVE ALL EXTRA SPACE
========================================================= */

.locations-section,
.locations-container,
.locations-section .swiper,
.locations-section .swiper-wrapper{
    height:auto !important;
    min-height:auto !important;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:992px){

    .locations-section .section-title h2{
        font-size:46px;
    }

}

@media(max-width:768px){

    .locations-container{
        padding:25px 15px 0 !important;
    }

    .locations-section .section-title h2{
        font-size:34px;
    }

    .locations-section .section-title p{
        font-size:16px;
        line-height:1.7;
    }

    .locations-section .card-content h3{
        font-size:26px;
    }

    .locations-section .swiper-button-next,
    .locations-section .swiper-button-prev{
        display:none !important;
    }

}

@media(max-width:480px){

    .locations-container{
        padding:20px 10px 0 !important;
    }

    .locations-section .section-title h2{
        font-size:28px;
    }

    .locations-section .locationSwiper{
        padding:0 !important;
    }

    .locations-section .card-content{
        padding:22px 18px !important;
    }

}