 .sllfull-box {
        width: 100%;
        }

.destination-input {
    select {
        width: 100%;
        padding: 10.5px 0 10.5px 10px;
        border: 1px solid #dee2e6;
        border-radius: 8px 8px 8px 8px;
        height: 44px;
        color: #8D8D8D;
        font-size: 14px;
    }
}

.double-input {
    position: relative;
}

.double-input {
    .first {
        border-radius: 8px 8px 8px 8px !important;
        padding-left: 33px;
        padding-right: 5px !important;
        width: 100% !important;
    }
}

.destination-input {
    input {
        width: 100%;
        padding: 11px;
        border: 0.75px solid #dee2e6;
        height: 44px;
        border-radius: 8px;
    }
}



.error-msg {
    font-size: 12px;
    color: red;
    display: block;
    margin-top: 4px;
}

/****************calender css in top********************/

.booking-form{
    background: #fff;
    padding: 15px;
    border-radius: 6px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.15);
}

.booking-form .form-control{
    height: 44px;
    font-size: 14px;
}

.request-btn{
    height: 44px;
    background: #2f95f7;
    border: none;
    color: #fff;
    font-weight: 600;
    width: 100%;
    border-radius: 8px;
}


@media(max-width:767px){

    .hero-section{
        min-height: auto;
        padding: 20px 0 40px;
    }

    .booking-form{
        padding: 12px;
    }

   
}

/***************************
Handpicked Holiday Packages
*************************/
.hhbsection-title{
    margin-bottom:20px;
    font-size:28px;
    font-weight:700;
}

.hhbsection-title span{
    color:#e63946;
}

.packages-sec{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
}

.hpcard{
    position:relative;
    height:350px;
    overflow:hidden;
    border-radius:12px;
    cursor:pointer;
}

.hpcard img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.hpcard:hover img{
    transform:scale(1.1);
}

.hpoerlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.85),
        rgba(0,0,0,.2),
        transparent
    );
}

.hrice99{
    position:absolute;
    top: 30px;
    right: 40px;
    background: #fff;
    color: #2e7d32;
    font-weight: 700;
    padding: 8px 12px;
    z-index: 2;
    height: 55px;
    width: 55px;
    border-radius: 50%;
    display: flex;
    align-items: center;
}

.hhprice-992 {
    position: absolute;
    top: 23px;
    right: 22px;
    background: #fff;
    color: green;
    font-weight: bold;
    padding: 0px;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
}

.hpontent{
    position:absolute;
    bottom:20px;
    left:20px;
    right:20px;
    color:#fff;
}

.hpontent h3{
    font-size:20px;
    margin-bottom:0px;
}

.hpontent p{
    font-size:14px;
    opacity:.9;
    margin-bottom: -30px;
    
}

.hpbtn{
    display:inline-block;
    margin-top: -20px;
    padding:5px 18px;
    background: linear-gradient(90.37deg, #FFA500 29.33%, rgba(255, 243, 222, 0.74) 99.58%);
    border-color: #FFA500;
    color:#000;
    text-decoration:none;
    border-radius:6px;
    font-weight:600;
    opacity:0;
    transform:translateY(20px);
    transition:.4s;
}

.hpcard:hover .hpbtn{
    opacity:1;
    transform:translateY(0);
}

.hpcard:hover p{
    font-size:14px;
    opacity:1;
    transform:translateY(-20px);
    transition:.4s;
    margin-bottom: 0;
    
}

@media(max-width:768px){
    .hpcard{
        height:300px;
    }

    .hpontent h3{
        font-size:22px;
    }

    /* Mobile pe button visible rahe */
    .hpbtn{
        opacity:1;
        transform:translateY(0);
    }

    .hpontent p{
    font-size:14px;
    opacity:.9;
    margin-bottom: 15px !important;
    
}
}

/******************
summer Deals
*******************/
.sumsection-title{
    font-size:28px;
    font-weight:700;
    margin-bottom:40px;
}

.sumsection-title span{
    color:#d32f2f;
}

.sumseason-card{
    margin-bottom:30px;
}

.sumseason-card img{
    width:100%;
    height:260px;
    object-fit:cover;
    transition:0.4s;
}

/* .sumseason-card:hover img{
    transform:scale(1.01);
} */

.sumseason-card h3{
    font-size:23px;
    font-weight:600;
    margin-top:20px;
}

.sumseason-card p{
    color:#666;
    font-size:14px;
    line-height:1.7;
    min-height:90px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}

.sumbook-btn{
    background: linear-gradient(90.37deg, #FFA500 29.33%, rgba(255, 243, 222, 0.74) 99.58%);
    color:#000;
    border:none;
    padding:10px 18px;
    border-radius:5px;
    font-size:14px;
    font-weight:500;
    transition:.3s;
    text-decoration: none;
}

.sumbook-btn:hover{
    background:#000;
    color:#fff;
}

@media(max-width:991px){
    .sumsection-title{
        font-size:32px;
    }

    .sumseason-card h3{
        font-size:28px;
    }
}

@media(max-width:767px){
    .sumsection-title{
        font-size:26px;
        text-align:center;
    }

    .sumseason-card img{
        height:220px;
    }

    .sumseason-card h3{
        font-size:24px;
    }
}


/*************
Popular Getaways
*****************/
.hpgbsection-title{
    margin-bottom:20px;
    font-size:28px;
    font-weight:700;
}

.hpgbsection-title span{
    color:#e63946;
}

.pgackages-sec{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
}

.hpgcard{
    position:relative;
    height:250px;
    overflow:hidden;
    border-radius:12px;
    cursor:pointer;
}

.hpgcard img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.hpgcard:hover img{
    transform:scale(1.1);
}

.hpgoerlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.85),
        rgba(0,0,0,.2),
        transparent
    );
}

.hpgrice99{
    position:absolute;
    top: 30px;
    right: 40px;
    background: #fff;
    color: #2e7d32;
    font-weight: 700;
    padding: 8px 12px;
    z-index: 2;
    height: 55px;
    width: 55px;
    border-radius: 50%;
    display: flex;
    align-items: center;
}

.hhpgprice-992 {
    position: absolute;
    top: 23px;
    right: 22px;
    background: #fff;
    color: green;
    font-weight: bold;
    padding: 0px;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
}

.pgontent{
    position:absolute;
    bottom:20px;
    left:20px;
    right:20px;
    color:#fff;
}

.pgontent h3{
    font-size:20px;
    margin-bottom:0px;
    text-align: center;
}

.pgontent p{
    font-size:12px;
    text-align: center; 
    margin-bottom: 0;   
}



@media(max-width:768px){
    .hpgcard{
        height:250px;
    }

    .pgontent h3{
        font-size:22px;
    }

    
}

/*************
big slider
*****************/

/* --- SCREEN CONTAINER --- */
        .slider-wrapper {
            position: relative;
            width: 85vw;
            height: 100vh;
            margin: 20px auto 50px;
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            justify-content: flex-end; 
            transition: background-image 0.8s cubic-bezier(0.25, 1, 0.5, 1);
        }

        /* Dark Cinematic Overlay */
        .slider-wrapper::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(
                to right, 
                rgba(0, 0, 0, 0.85) 0%, 
                rgba(0, 0, 0, 0.4) 50%, 
                rgba(0, 0, 0, 0.2) 100%
            ), 
            linear-gradient(
                to top,
                rgba(0,0,0,0.5) 0%,
                transparent 50%
            );
            z-index: 1;
        }

        /* --- LEFT SIDE TEXT PANEL --- */
        .hero-text-panel {
            position: absolute;
            left: 2%;
            bottom: 33%;
            color: #ffffff;
            z-index: 2;
            max-width: 370px;
        }

        .hero-text-panel h1 {
            font-size: 30px;
            font-weight: 800;
            line-height: 1.1;
            margin-bottom: 16px;
            letter-spacing: -1px;
        }

        .hero-text-panel p {
            font-size: 16px;
            line-height: 1.5;
            font-weight: 400;
            color: rgba(255, 255, 255, 0.85);
        }

        /* --- THUMBNAIL CONTAINER & VIEWPORT --- */
        .cards-track-container {
            position: relative;
            z-index: 3;
            width: 55vw;
            height: 56vh;
            overflow: hidden;
            /* margin-right: 2%; */
        }

        /* The actual row moving left/right via JavaScript translate */
        .cards-track {
            display: flex;
            gap: 18px;
            height: 100%;
            width: max-content;
            align-items: center;
        }

        /* --- INDIVIDUAL THUMBNAIL CARD --- */
        .card {
            position: relative;
            height: 100%;
            width: calc((55vw - 54px) / 3.5); 
            flex-shrink: 0;
            border-radius: 20px;
            background-size: cover;
            background-position: center;
            cursor: pointer;
            box-shadow: 0 25px 50px rgba(0,0,0,0.4);
            transform: scale(1);
            opacity: 1;
            transition: transform 0.6s cubic-bezier(0.25, 1, 0.3, 1), 
                        opacity 0.4s ease,
                        width 0.6s cubic-bezier(0.25, 1, 0.3, 1),
                        margin 0.6s cubic-bezier(0.25, 1, 0.3, 1);
        }

        /* Hover expansion */
        .card:not(.active):hover {
            transform: scale(1.03);
            box-shadow: 0 30px 60px rgba(0,0,0,0.6);
        }

        /* The hidden/zoom state when active (the card that just became the background) */
        .card.active {
            width: 0;
            margin-right: -18px; 
            opacity: 0;
            transform: scale(1.4);
            pointer-events: none;
        }

        /* --- NAVIGATION CONTROLS --- */
        .slider-controls {
            position: absolute;
            bottom: 8vh;
            right: 8%;
            z-index: 10;
            display: flex;
            gap: 12px;
        }

        .nav-btn {
            width: 52px;
            height: 52px;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.25);
            background: rgba(0, 0, 0, 0.4);
            color: white;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            backdrop-filter: blur(8px);
            transition: all 0.3s ease;
        }

        .nav-btn:hover {
            background: #ffffff;
            color: #0c0f12;
            border-color: #ffffff;
            transform: translateY(-2px);
        }

        /* --- RESPONSIVE MOBILE STYLES --- */
        @media (max-width: 1024px) {
            .slider-wrapper {
                flex-direction: column;
                justify-content: flex-end;
                padding-bottom: 12vh;
            }
            .hero-text-panel {
                position: relative;
                left: 0;
                bottom: 0;
                width: 85vw;
                margin-bottom: 30px;
            }
            .hero-text-panel h1 { font-size: 3.5rem; }
            .hero-text-panel p { font-size: 1.05rem; }
            
            .cards-track-container {
                width: 85vw;
                height: 35vh;
                margin-right: 0;
            }
            .card {
                width: calc((85vw - 36px) / 2.5);
            }
            .slider-controls {
                bottom: 4vh;
                right: 7.5vw;
            }
        }