
.caroo{
    overflow: hidden;
}

.swiper-slide{
    position: relative;
}

.carousel-img{
    width:100%;
    height:90vh;
    object-fit:cover;
}

/* dark overlay */
.carousel-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(
        to right,
        rgba(0,0,0,0.82),
        rgba(0,0,0,0.45),
        rgba(0,0,0,0.15)
    );
    z-index:1;
}

/* content */
.carousel-content{
    position:absolute;
    top:50%;
    left:8%;
    transform:translateY(-50%);
    z-index:5;
    color:white;
    max-width:650px;
}

/* small top text */
.carousel-content span{
    font-family:'Poppins', sans-serif;
    color:#c79a6d;
    letter-spacing:4px;
    font-size:13px;
    font-weight:500;
}

.carousel-content h1 span{
    display:block;
}

/* main heading */
.carousel-content h1{
    font-family:'Cormorant Garamond', serif;
    font-size:78px;
    line-height:1.05;
    font-weight:600;
    color:white;
    margin-bottom:25px;
}

/* brown text */
.carousel-content h1 .gold{
    color:#c79a6d;
}

/* paragraph */
.carousel-content p{
    font-family:'Poppins', sans-serif;
    font-size:18px;
    line-height:1.8;
    color:#f1f1f1;
}

/* buttons */
.carousel-buttons{
    display:flex;
    gap:18px;
    flex-wrap:wrap;
}

.explore-btn,
.contact-btn{
    text-decoration:none;
    padding:16px 34px;
    border-radius:50px;
    font-size:15px;
    font-weight:600;
    transition:0.4s;
}

.explore-btn{
    background:#c79a6d;
    color:white;
}

.explore-btn:hover{
    background:#a97949;
}

.contact-btn{
    border:1px solid white;
    color:white;
}

.contact-btn:hover{
    background:white;
    color:black;
}

/* responsive */

@media(max-width:1024px){

    .carousel-img{
        height:80vh;
    }

    .carousel-content{
        left:6%;
        max-width:550px;
    }

    .carousel-content span{
        font-size:12px;
        letter-spacing:3px;
    }

    .carousel-content h1{
        font-size:48px;
        line-height:1.1;
    }

    .carousel-content p{
        font-size:16px;
        line-height:1.7;
    }

    .explore-btn,
    .contact-btn{
        padding:14px 28px;
        font-size:14px;
    }

    /* CATEGORY GRID */

    .category-grid{
        grid-template-columns:1fr 1fr;
        gap:20px;
    }

    .big-card{
        grid-row:auto;
        min-height:400px;
    }

}

@media(max-width:820px){

    .carousel-img{
        height:75vh;
        object-fit:cover;
    }

    .carousel-content{
        position:absolute;
        top:50%;
        left:5%;
        right:5%;
        transform:translateY(-50%);
        max-width:100%;
        z-index:5;
    }

    .carousel-content span{
        font-size:11px;
        letter-spacing:2px;
        margin-bottom:10px;
    }

    .carousel-content h1{
        font-size:38px;
        line-height:1.1;
        margin-bottom:14px;
    }

    .carousel-content h1 span{
        display:block;
    }

    .carousel-content p{
        font-size:15px;
        line-height:1.6;
        margin-bottom:22px;
        max-width:95%;
    }

    .carousel-buttons{
        display:flex;
        flex-direction:column;
        gap:12px;
        width:100%;
    }

    .explore-btn,
    .contact-btn{
        width:100%;
        text-align:center;
        padding:14px 20px;
        font-size:14px;
        border-radius:40px;
    }

    /* CATEGORY GRID */

    .category-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .card-box{
        min-height:280px;
    }

    .big-card{
        min-height:320px;
    }

}

@media(max-width:480px){

    .carousel-img{
        height:78vh;
        object-fit:cover;
    }

    .carousel-content{
        position:absolute;
        top:58%;
        left:7%;
        right:7%;
        transform:translateY(-50%);
        max-width:100%;
        z-index:5;
    }

    .carousel-content span{
    
        font-size:8px;
        letter-spacing:2px;
        margin-bottom:3px;
        
        display:none;
    }

    .carousel-content h1{
        font-size:26px;
        line-height:1.1;
        margin-bottom:10px;
        color:white;
    }

    .gold{
        color:#c79a6d;
        display:block;
        font-size:8px;
        margin-bottom:1px;
        margin-top:2px;

    }

    .carousel-content p{
        font-size:8px;
        line-height:1.5;
        margin-bottom:10px;
        max-width:90%;
        color:white;
    }

    .carousel-buttons{
        width:100%;
        display:flex;
        flex-direction:row;   /* column hatao */
        gap:10px;
        align-items:center;
    }

    .explore-btn,
    .contact-btn{
        width:auto;
        display:inline-block;
        text-align:center;
        padding:8px 16px;
        font-size:10px;
        border-radius:40px;
    }

}

/* =========================
REVIEW SECTION
========================= */

.review-section{
    position:relative;
    overflow:hidden;
    margin-top: 50px ;
    padding:20px 10px;
    background:linear-gradient(to bottom,#e8dfd3,#ddd0c1);
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;

    /* z-index: 1; */

}

/* TOP SMALL TITLE */
.review-subtitle{
    text-align:center;
    font-size:13px;
    letter-spacing:6px;
    color:var(--gold);
    font-family:'Outfit',sans-serif;
    margin-bottom:15px;
    text-transform:uppercase;
}

/* Bottom Design */
.bottom-design{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.diamond{
    color: #d8c2a8;
    font-size: 14px;
}

/* MAIN HEADING */
.review-title{
    text-align:center;
    font-size:52px;
    line-height:1;
    color:var(--dark);
    font-family:'Cormorant Garamond',serif;
    font-weight:600;
    margin-bottom:10px;
}

/* TEXT */
.review-desc{
    text-align:center;
    color:#6f655d;
    font-size:15px;
    margin-bottom:10px;
    font-family:'Outfit',sans-serif;
}


/* CONTAINER */

.review-container{
    max-width:1400px;
    margin:auto;

}

/* SUBTITLE */

/* SWIPER */

.reviewSwiper{
    padding:20px 10px 40px;
    
}

/* CARD */

.review-card{
    background:rgba(255,255,255,0.70);
    backdrop-filter:blur(10px);
    border:1px solid #eadfd2;
    border-radius:28px;
    padding:10px 35px;
    text-align:center;
    transition:0.4s ease;
    box-shadow:
    0 10px 30px rgba(0,0,0,0.03);
    min-height:400px;

}

.review-card:hover{
    transform:translateY(-10px);
}

.active-review{
    transform:scale(1.03);
}

/* PROFILE */

.review-profile{
    width:95px;
    height:95px;
    margin:10px auto 10px;
    border-radius:50%;
    border:2px solid #d7a96b;
    overflow:hidden;
}

.review-profile img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* STARS */

.review-stars{
    color:#d79b38;

    font-size:28px;
    letter-spacing:3px;

    margin-bottom:15px;
}

/* TEXT */

.review-text{
    color:#43372f;
    font-size:18px;
    line-height:1.6;
    font-family:'Outfit',sans-serif;
    margin-bottom:15px;
}

/* LINE */

.review-line{
    width:45px;
    height:2px;
    background:#c79658;
    margin:0 auto 25px;
    margin-bottom: 5px;
}

/* NAME */

.review-card h3{
    font-size:20px;
    margin-bottom:8px;
    color:#2e1b0f;
    font-family:'Outfit',sans-serif;
    font-weight:600;
}

/* CITY */

.review-card span{
    color:#c28742;

    font-size:18px;

    font-family:'Outfit',sans-serif;
}

/* PAGINATION */

.swiper-pagination-bullet{
    width:11px;
    height:11px;

    background:#e4d6c8;
    opacity:1;
}

.swiper-pagination-bullet-active{
    background:#c58c4a;
}

/* ARROWS */

.swiper-button-next,
.swiper-button-prev{

    width:40px !important;
    height:40px !important;
    border-radius:50%;
    background:rgba(255,255,255,0.8);
    border:1px solid #eadfd2;
    box-shadow:0 5px 15px rgba(0,0,0,0.04);
}

.swiper-button-next::after,
.swiper-button-prev::after{

    font-size:16px !important;
    color:#8f6332;
    font-weight:bold;
}

/* BUTTON */

.review-btn-wrap{
    text-align:center;
}

.review-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    width:250px;
    height:52px;
    border-radius:25px;
    border:1.5px solid #c79552;
    color:#8b5f30;
    text-decoration:none;
    font-size:18px;
    font-weight:600;
    font-family:'Outfit',sans-serif;
    transition:0.35s ease;
}

.review-btn span{
    font-size:20px;
    letter-spacing:-1px;
}

.review-btn:hover{
    transform:translateY(-3px);
    background:#c79552;
    color:white;
}

/* =========================
RESPONSIVE
========================= */

@media(max-width:1024px){

  

    .facility-title{
        font-size:50px;
        margin-bottom: 8px !important;
    }


    .facility-subtitle{
        font-size:18px;
        letter-spacing:4px;
        color:var(--gold);
        font-family:'Outfit',sans-serif;

    }

    .facility-desc{
        text-align: center;
        font-size:16px;
        margin-bottom: 10px !important;
    }
    
    /* CARD */

    .review-card{
        background:rgba(255,255,255,0.70);
        backdrop-filter:blur(10px);
        border:1px solid #eadfd2;
        border-radius:28px;
        padding:10px 5px !important;
        text-align:center;
        transition:0.4s ease;
        box-shadow:
        0 10px 30px rgba(0,0,0,0.03);
        min-height:300px;

    }

    
    /* PROFILE */

    .review-profile{
        width:75px;
        height:75px;
    }

    /* STARS */

    .review-stars{
        color:#d79b38;

        font-size:20px;
        letter-spacing:3px;
        margin-bottom:10px;
    }

    /* TEXT */

    .review-text{
        color:#43372f;
        font-size:10px;
        line-height:1.6;
        font-family:'Outfit',sans-serif;
        margin-bottom:15px;
    }

    /* LINE */

    .review-line{
        width:45px;
        height:2px;
        background:#c79658;
        margin:0 auto 25px;
        margin-bottom: 5px;
    }

    /* NAME */

    .review-card h3{
        font-size:15px;
        margin-bottom:5px;
        color:#2e1b0f;
        font-family:'Outfit',sans-serif;
        font-weight:600;
    }

    /* CITY */

    .review-card span{
        color:#c28742;
        font-size:14px;
        font-family:'Outfit',sans-serif;
    }

    /* PAGINATION */

    .swiper-pagination-bullet{
        width:6px !important;
        height:6px !important;
        background:#e4d6c8;
        opacity:1;
    }

    .swiper-pagination-bullet-active{
        background:#c58c4a !important;
    }

    .swiper-button-next,
    .swiper-button-prev{

        width:30px !important;
        height:30px !important;
        border-radius:50%;
        background:rgba(255,255,255,0.8);
        border:1px solid #eadfd2;
        box-shadow:0 5px 15px rgba(0,0,0,0.04);
    }

    .swiper-button-next::after,
    .swiper-button-prev::after{

        font-size:14px !important;
        color:#8f6332;
        font-weight:bold;
    }

    
    .review-btn-wrap{
        text-align:center;
        margin-top:25px !important;
    }

    .review-btn{
        display:inline-flex;
        align-items:center;
        justify-content: center;
        gap:14px;
        padding:10px 22px !important;
        border-radius:20px;
        width: 50%;
    }
}


@media(max-width:820px){

    
    .facility-title{
        font-size:40px;
        margin-bottom: 8px !important;
    }


    .facility-subtitle{
        font-size:16px;
        letter-spacing:4px;
        color:var(--gold);
        font-family:'Outfit',sans-serif;

    }

    .facility-desc{
        text-align: center;
        font-size:15px;
        margin-bottom: 10px !important;
    }
    
    /* CARD */

    .review-card{
        background:rgba(255,255,255,0.70);
        backdrop-filter:blur(10px);
        border:1px solid #eadfd2;
        border-radius:28px;
        padding:10px 5px !important;
        text-align:center;
        transition:0.4s ease;
        box-shadow:
        0 10px 30px rgba(0,0,0,0.03);
        min-height:250px;

    }

    
    /* PROFILE */

    .review-profile{
        width:65px;
        height:65px;
    }

    /* STARS */

    .review-stars{
        color:#d79b38;

        font-size:18px;
        letter-spacing:3px;
        margin-bottom:8px;
    }

    /* TEXT */

    .review-text{
        color:#43372f;
        font-size:12px;
        line-height:1.6;
        font-family:'Outfit',sans-serif;
        margin-bottom:12px;
    }

    /* LINE */

    .review-line{
        width:45px;
        height:2px;
        background:#c79658;
        margin:0 auto 25px;
        margin-bottom: 5px;
    }

    /* NAME */

    .review-card h3{
        font-size:14px;
        margin-bottom:5px;
        color:#2e1b0f;
        font-family:'Outfit',sans-serif;
        font-weight:600;
    }

    /* CITY */

    .review-card span{
        color:#c28742;
        font-size:12px;
        font-family:'Outfit',sans-serif;

    }

    /* PAGINATION */

    .swiper-pagination-bullet{
        width:5px !important;
        height:5px !important;
        background:#e4d6c8;
        opacity:1;
        
    }

    .swiper-pagination-bullet-active{
        background:#c58c4a !important;
    }

    .swiper-button-next,
    .swiper-button-prev{

        width:25px !important;
        height:25px !important;
        border-radius:50%;
        background:rgba(255,255,255,0.8);
        border:1px solid #eadfd2;
        box-shadow:0 5px 15px rgba(0,0,0,0.04);
    }

    .swiper-button-next::after,
    .swiper-button-prev::after{

        font-size:12px !important;
        color:#8f6332;
        font-weight:bold;
    }

    
    .review-btn-wrap{
        text-align:center;
        margin-top:25px !important;
    }

    .review-btn{
        display:inline-flex;
        align-items:center;
        justify-content: center;
        gap:14px;
        padding:10px 22px !important;
        border-radius:20px;
        width: 50%;
    }
}

@media(max-width:480px){

    /* .review-section{
        padding:12px auto auto 12px;
    } */

    .review-title{
        font-size:30px;
    }

    .review-subtitle{
        font-size:13px;
        letter-spacing:4px;
    }

    .review-desc{
        font-size:14px;
    }

    .review-card{
        padding:30px 18px;
    }

    .review-profile{
        width:50px;
        height:50px;
    }

    .review-stars{
        font-size:15px;
    }

    .review-text{
        font-size:12px;
        line-height:1.8;
    }

    .review-card h3{
        font-size:16px;
    }

    .review-card span{
        font-size:14px;
        margin-bottom: 10px !important;
    }


    .review-leaf-left,
    .review-leaf-right{
        width:100px;
        opacity:.3;
    }

    .review-btn-wrap{
        text-align:center;
        margin-top:25px !important;
    }

    .review-btn{
        display:inline-flex;
        align-items:center;
        justify-content: center;
        gap:14px;
        padding:10px 22px !important;
        border-radius:20px;
        width: 100% !important;
    }
}





