/* ==========================================
   TOUR PACK PRO V2
   PACKAGE PAGE
========================================== */

.tpp-package-page{
    background:#f8fafc;
}

.tpp-main-wrap{
    max-width:1400px;
    margin:40px auto;
    padding:0 20px;
    display:grid;
    grid-template-columns:2fr 420px;
    gap:35px;
}

.tpp-content{
    min-width:0;
}

.tpp-sidebar{
    min-width:0;
}

/* SECTION */

.tpp-section{
    margin-bottom:50px;
}

.tpp-section-header{
    margin-bottom:30px;
}

.tpp-section-header h2{
    font-size:36px;
    line-height:1.2;
    margin:0 0 10px;
    color:#111827;
}

.tpp-section-header p{
    color:#6b7280;
    margin:0;
}

/* CARD */

.tpp-card,
.tpp-policy-card,
.tpp-booking-card,
.tpp-inquiry-card,
.tpp-highlights-card{
    background:#fff;
    border-radius:16px;
    box-shadow:
    0 10px 30px rgba(0,0,0,.06);
}

/* HOTELS */

.tpp-hotel-card{
    overflow:hidden;
}

.tpp-hotel-content{
    padding:30px;
}

.tpp-hotel-content h3{
    font-size:30px;
    margin-bottom:10px;
}

/* PRICING */

.tpp-price-card{
    border-radius:18px;
    overflow:hidden;
}

.tpp-price-header{
    background:
    linear-gradient(
        135deg,
        #2563eb,
        #1d4ed8
    );
}

.tpp-new-price{
    color:#16a34a;
}

/* FLIGHTS */

.tpp-flight-card{
    border-left:5px solid #2563eb;
}

/* GALLERY */

.tpp-gallery-grid img{
    border-radius:14px;
}

.tpp-gallery-grid img:hover{
    box-shadow:
    0 15px 35px rgba(0,0,0,.15);
}

/* ITINERARY */

.tpp-day-card{
    overflow:hidden;
}

.tpp-day-body{
    padding:25px;
}

.tpp-day-body h3{
    color:#111827;
}

/* FAQ */

.tpp-faq-question,
.tpp-accordion-btn{
    transition:.3s;
}

.tpp-faq-question:hover,
.tpp-accordion-btn:hover{
    background:#f8fafc;
}

/* SIDEBAR */

.tpp-sticky-sidebar{
    position:sticky;
    top:30px;
}

.tpp-sidebar-price{
    font-size:46px;
    font-weight:800;
    color:#2563eb;
}

.tpp-sidebar-btn{
    transition:.3s;
}

.tpp-sidebar-btn:hover{
    transform:translateY(-2px);
}

/* FORM */

.tpp-inquiry-card input,
.tpp-inquiry-card textarea{
    border:1px solid #d1d5db;
    transition:.3s;
}

.tpp-inquiry-card input:focus,
.tpp-inquiry-card textarea:focus{
    border-color:#2563eb;
    outline:none;
    box-shadow:
    0 0 0 3px rgba(37,99,235,.15);
}

/* POLICY TABLE */

.tpp-policy-table{
    width:100%;
}

.tpp-policy-table tr:nth-child(even){
    background:#f8fafc;
}

/* MOBILE */

@media(max-width:1200px){

    .tpp-main-wrap{
        grid-template-columns:1fr;
    }

    .tpp-sticky-sidebar{
        position:relative;
        top:auto;
    }

}

@media(max-width:768px){

    .tpp-main-wrap{
        padding:0 15px;
    }

    .tpp-section-header h2{
        font-size:28px;
    }

    .tpp-sidebar-price{
        font-size:34px;
    }

}

