﻿
/*---------------------------------=========================================  Packages Hero  section ============================================================ ------------------------------------*/

/* Packages Hero Banner */
.Packages-page-banner {
    position: relative;
    width: 100%;
    min-height: 400px;
    background-color: #eaf6ff;
    background-image: url('../images/b2bpackages-hero-image.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

/* Banner Container */
.Packages-banner-container {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 400px;
    padding: 20px 85px !important;
}

/* Banner Content */
.Packages-banner-content {
    position: relative;
    z-index: 2;
    max-width: 620px;
    padding-bottom: 12px;
}

/* Banner Eyebrow */
.Packages-banner-eyebrow {
    display: inline-block;
    margin-bottom: 9px;
    color: #0867ed;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
    line-height: 1.4;
}

/* Banner Title */
.Packages-banner-title {
    margin: 0 0 12px;
    color: #082b70;
    font-size: 46px;
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.2px;
}

    /* Highlighted Title */
    .Packages-banner-title span {
        display: block;
        color: #0867ed;
    }

/* Banner Description */
.Packages-banner-description {
    max-width: 480px;
    margin: 0;
    color: #365b92;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}

/* Decorative Travel Text */
.Packages-banner-travel-text {
    position: absolute;
    z-index: 2;
    top: 19%;
    right: 5%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    color: #082b70;
    font-family: "Brush Script MT", "Segoe Script", cursive;
    font-size: 23px;
    font-style: italic;
    font-weight: 700;
    line-height: 1.05;
    transform: rotate(-10deg);
    pointer-events: none;
}

    /* Decorative Underline */
    .Packages-banner-travel-text::after {
        content: "";
        display: block;
        width: 100%;
        height: 9px;
        margin-top: 4px;
        border-bottom: 2px solid #0867ed;
        border-radius: 50%;
        transform: rotate(-7deg);
    }

    /* Travel Text Shine */
    .Packages-banner-travel-text span {
        background: linear-gradient( 110deg, #082b70 15%, #0867ed 38%, #8bcaff 48%, #0867ed 58%, #082b70 85% );
        background-size: 250% 100%;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        animation: PackagesTravelShine 5s linear infinite;
    }

/* Travel Shine Animation */
@keyframes PackagesTravelShine {
    0% {
        background-position: 100% center;
    }

    100% {
        background-position: -150% center;
    }
}


/* Packages Banner Offer */
.Packages-banner-offer {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    width: fit-content;
    max-width: 100%;
    min-height: 72px;
    margin-top: 24px;
    padding: 9px 15px 9px 10px;
    border: 1px solid #c8dcff;
    border-radius: 15px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 7px 22px rgba(15, 65, 135, .12);
    overflow: visible;
    isolation: isolate;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

/* Offer Hover - Entire Banner */
.Packages-page-banner:hover .Packages-banner-offer {
    transform: translateY(-3px);
    border-color: #90bfff;
    box-shadow: 0 12px 28px rgba(15, 65, 135, .18);
}

/* Animated Gift Container */
.Packages-banner-gift {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-shrink: 0;
    width: 65px;
    height: 55px;
    overflow: visible;
    perspective: 500px;
}

/* Gift Box Body */
.Packages-banner-gift-box {
    position: absolute;
    z-index: 4;
    bottom: 2px;
    left: 10px;
    width: 45px;
    height: 35px;
    border: 1px solid #d60818;
    border-radius: 4px 4px 7px 7px;
    background: linear-gradient(135deg, #ff525b, #ed1725);
    box-shadow: 0 4px 9px rgba(226, 12, 24, .22);
}

/* Vertical Gift Ribbon */
.Packages-banner-gift-ribbon {
    position: absolute;
    top: 0;
    left: 50%;
    width: 10px;
    height: 100%;
    background: linear-gradient(90deg, #ffcf53, #fff0a3);
    transform: translateX(-50%);
}

/* Gift Box Lid */
.Packages-banner-gift-lid {
    position: absolute;
    z-index: 6;
    bottom: 35px;
    left: 7px;
    width: 51px;
    height: 12px;
    border: 1px solid #c80c1c;
    border-radius: 4px;
    background: linear-gradient(135deg, #ff646c, #f21c2b);
    transform-origin: 12% 90%;
    transition: transform .65s cubic-bezier(.22, 1, .36, 1);
}

/* Gift Lid Ribbon */
.Packages-banner-gift-lid-ribbon {
    position: absolute;
    top: 0;
    left: 50%;
    width: 11px;
    height: 100%;
    background: #ffe084;
    transform: translateX(-50%);
}

/* Holiday Package Surprise */
.Packages-banner-gift-surprise {
    position: absolute;
    z-index: 3;
    bottom: 16px;
    left: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    width: 36px;
    height: 42px;
    border: 1px dashed #90b8ff;
    border-radius: 5px;
    background: linear-gradient(145deg, #fff, #eaf3ff);
    color: #0867ed;
    box-shadow: 0 4px 10px rgba(8, 103, 237, .15);
    opacity: 0;
    transform: translateY(12px) scale(.65);
    transition: transform .75s cubic-bezier(.22, 1, .36, 1), opacity .4s ease;
}

    /* Package Surprise Icon */
    .Packages-banner-gift-surprise i {
        font-size: 14px;
    }

    /* Package Surprise Title */
    .Packages-banner-gift-surprise strong {
        color: #0867ed;
        font-size: 7px;
        font-weight: 900;
        line-height: 1.1;
    }

    /* Package Surprise Subtitle */
    .Packages-banner-gift-surprise small {
        color: #059669;
        font-size: 6px;
        font-weight: 900;
        line-height: 1.1;
    }

/* Gift Lid Opening */
.Packages-page-banner:hover .Packages-banner-gift-lid {
    transform: translate(-13px, -17px) rotate(-38deg);
}

/* Package Card Coming Out */
.Packages-page-banner:hover .Packages-banner-gift-surprise {
    z-index: 5;
    opacity: 1;
    transform: translateY(-39px) rotate(-9deg) scale(1.12);
    transition-delay: .12s;
}

/* Offer Content */
.Packages-banner-offer-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

    /* Offer Heading */
    .Packages-banner-offer-content strong {
        color: #082b70;
        font-size: 15px;
        font-weight: 900;
        line-height: 1.2;
    }

    /* Offer Description */
    .Packages-banner-offer-content span {
        color: #365b92;
        font-size: 11px;
        font-weight: 600;
        line-height: 1.35;
    }

/* Offer Plane Icon */
.Packages-banner-offer-plane {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    margin-left: 4px;
    border-radius: 50%;
    background: #e8f3ff;
    color: #0867ed;
    font-size: 20px;
    transform: rotate(-25deg);
    transition: transform .45s ease, background .35s ease;
}

/* Offer Plane Hover */
.Packages-page-banner:hover .Packages-banner-offer-plane {
    transform: translateX(5px) rotate(0deg);
    background: #dcecff;
}

/*---------------------------------========================================= Packages Support Strip section ============================================================ ------------------------------------*/


/* Packages Support Strip Section */
.Packages-support-section {
    position: relative;
    z-index: 5;
    margin-top: -30px;
    padding-bottom: 35px;
}

/* Support Strip */
.Packages-support-strip {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    padding: 0;
    border: 1px solid #e5effc;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 30px rgba(15, 65, 135, .09);
    overflow: hidden;
}

/* Support Item */
.Packages-support-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 80px;
    padding: 16px 14px;
    background: #fff;
    overflow: hidden;
    isolation: isolate;
    cursor: pointer;
    transition: background .35s ease;
}

    /* Support Divider */
    .Packages-support-item:not(:last-child)::after {
        content: "";
        position: absolute;
        z-index: 3;
        right: 0;
        top: 25%;
        width: 1px;
        height: 50%;
        background: #dce8fa;
    }

/* Orange Theme */
.Packages-support-orange {
    --packages-color: #f97316;
    --packages-bg: #fff0e4;
}

/* Blue Theme */
.Packages-support-blue {
    --packages-color: #0867ed;
    --packages-bg: #e8f3ff;
}

/* Green Theme */
.Packages-support-green {
    --packages-color: #059669;
    --packages-bg: #e6f9f0;
}

/* Purple Theme */
.Packages-support-purple {
    --packages-color: #9333ea;
    --packages-bg: #f3e8ff;
}

/* Yellow Theme */
.Packages-support-yellow {
    --packages-color: #f59e0b;
    --packages-bg: #fff6df;
}

/* Support Icon */
.Packages-support-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: var(--packages-bg);
    color: var(--packages-color);
}

    /* Expanding Background Circle */
    .Packages-support-icon::before {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        border-radius: 50%;
        background: var(--packages-bg);
        transform: scale(1);
        transform-origin: center;
        transition: transform .7s cubic-bezier(.22, 1, .36, 1);
        pointer-events: none;
    }

    /* Support Icon Symbol */
    .Packages-support-icon i {
        position: relative;
        z-index: 2;
        color: var(--packages-color);
        font-size: 23px;
        transition: transform .35s ease;
    }

/* Support Content */
.Packages-support-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

    /* Support Heading */
    .Packages-support-content h3 {
        margin: 0 0 4px;
        color: #082b70;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.3;
        transition: color .3s ease;
    }

    /* Support Description */
    .Packages-support-content p {
        margin: 0;
        color: #365b92;
        font-size: 10px;
        line-height: 1.4;
    }

/* Support Item Hover */
.Packages-support-item:hover {
    background: var(--packages-bg);
}

    /* Expanding Circle Hover */
    .Packages-support-item:hover .Packages-support-icon::before {
        transform: scale(20);
    }

    /* Support Icon Hover */
    .Packages-support-item:hover .Packages-support-icon i {
        transform: scale(1.15) rotate(-8deg);
    }

    /* Support Heading Hover */
    .Packages-support-item:hover .Packages-support-content h3 {
        color: var(--packages-color);
    }

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-banner-travel-text span {
        animation: none;
    }

    .Packages-banner-offer,
    .Packages-banner-gift-lid,
    .Packages-banner-gift-surprise,
    .Packages-banner-offer-plane,
    .Packages-support-icon::before,
    .Packages-support-icon i {
        transition: none;
    }
}





/*---------------------------------=========================================  Popular Package Categories Section ============================================================ ------------------------------------*/

/* Popular Package Categories Section */
.Packages-categories-section {
    position: relative;
    width: 100%;
    padding: 25px 0 50px;
    background: #f4f9ff;
}

/* Categories Header */
.Packages-categories-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 18px;
}

/* Categories Heading */
.Packages-categories-heading {
    min-width: 0;
}

    /* Section Title */
    .Packages-categories-heading h2 {
        margin: 0 0 5px;
        color: #082b70;
        font-size: 25px;
        font-weight: 800;
        line-height: 1.2;
    }

        /* Highlighted Title */
        .Packages-categories-heading h2 span {
            color: #0867ed;
        }

    /* Section Description */
    .Packages-categories-heading p {
        margin: 0;
        color: #365b92;
        font-size: 12px;
        line-height: 1.5;
    }

/* View All Categories Button */
.Packages-categories-view-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    min-height: 37px;
    padding: 0 16px;
    border: 1px solid #0867ed;
    border-radius: 8px;
    background: #fff;
    color: #0867ed;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    transition: background .35s ease, color .35s ease, box-shadow .35s ease, transform .35s ease;
}

    /* View All Button Hover */
    .Packages-categories-view-all:hover {
        background: #0867ed;
        color: #fff;
        text-decoration: none;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(8, 103, 237, .18);
    }

    /* View All Arrow */
    .Packages-categories-view-all i {
        font-size: 12px;
        transition: transform .35s ease;
    }

    /* Arrow Hover */
    .Packages-categories-view-all:hover i {
        transform: translateX(4px);
    }

/* Six Column Categories Grid */
.Packages-categories-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

/* Category Card */
.Packages-categories-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    border: 1px solid #e2ecfb;
    border-radius: 11px;
    box-shadow: 0 5px 18px rgba(15, 65, 135, .06);
    overflow: hidden;
    isolation: isolate;
    cursor: pointer;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

    /* Category Card Hover */
    .Packages-categories-card:hover {
        transform: translateY(-6px);
        border-color: var(--category-color);
        box-shadow: 0 12px 25px rgba(15, 65, 135, .13);
    }

/* Category Image */
.Packages-categories-image {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 112px;
    overflow: hidden;
}

    /* Image */
    .Packages-categories-image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        transition: transform .65s cubic-bezier(.22, 1, .36, 1);
    }

/* Image Zoom Hover */
.Packages-categories-card:hover .Packages-categories-image img {
    transform: scale(1.12);
}

/* Category Content */
.Packages-categories-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    min-height: 78px;
    padding: 26px 7px 13px;
    background: #fff;
    text-align: center;
    isolation: isolate;
}

/* Category Theme Colors */
.Packages-categories-orange {
    --category-color: #f97316;
    --category-bg: #fff0e4;
}

.Packages-categories-pink {
    --category-color: #ec168c;
    --category-bg: #ffe5f2;
}

.Packages-categories-green {
    --category-color: #059669;
    --category-bg: #e6f9f0;
}

.Packages-categories-purple {
    --category-color: #9333ea;
    --category-bg: #f3e8ff;
}

.Packages-categories-blue {
    --category-color: #0867ed;
    --category-bg: #e8f3ff;
}

.Packages-categories-red {
    --category-color: #ed1725;
    --category-bg: #ffe8ea;
}

/* Category Icon */
.Packages-categories-icon {
    position: absolute;
    z-index: 1;
    top: -22px;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: var(--category-bg);
    color: var(--category-color);
    transform: translateX(-50%);
    box-shadow: 0 3px 10px rgba(15, 65, 135, .09);
}

    /* Expanding Icon Background */
    .Packages-categories-icon::before {
        content: "";
        position: absolute;
        z-index: -1;
        inset: -1px;
        border-radius: 50%;
        background: var(--category-bg);
        transform: scale(1);
        transition: transform .7s cubic-bezier(.22, 1, .36, 1);
        pointer-events: none;
    }

    /* Category Icon Symbol */
    .Packages-categories-icon i {
        position: relative;
        z-index: 2;
        color: var(--category-color);
        font-size: 21px;
        transition: transform .35s ease;
    }

/* Category Title */
.Packages-categories-content h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 4px;
    color: #082b70;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.3;
    transition: color .35s ease;
}

/* Category Description */
.Packages-categories-content p {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #365b92;
    font-size: 10px;
    line-height: 1.4;
}

/* Expanding Background Hover */
.Packages-categories-card:hover .Packages-categories-icon::before {
    transform: scale(16);
}

/* Icon Hover */
.Packages-categories-card:hover .Packages-categories-icon i {
    transform: scale(1.15) rotate(-8deg);
}

/* Heading Hover */
.Packages-categories-card:hover .Packages-categories-content h3 {
    color: var(--category-color);
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-categories-card,
    .Packages-categories-image img,
    .Packages-categories-icon::before,
    .Packages-categories-icon i,
    .Packages-categories-view-all {
        transition: none;
    }
}


/*---------------------------------=========================================  Exclusive Holiday Packages Section ============================================================ ------------------------------------*/

/* Exclusive Holiday Packages Section */
.Packages-offers-section {
    position: relative;
    width: 100%;
    padding: 25px 0 50px;
    background: #f4f9ff;
}

/* Offers Header */
.Packages-offers-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 18px;
}

/* Offers Heading */
.Packages-offers-heading {
    min-width: 0;
}

    /* Section Title */
    .Packages-offers-heading h2 {
        margin: 0 0 5px;
        color: #082b70;
        font-size: 25px;
        font-weight: 800;
        line-height: 1.2;
    }

        /* Highlighted Title */
        .Packages-offers-heading h2 span {
            color: #0867ed;
        }

    /* Section Description */
    .Packages-offers-heading p {
        margin: 0;
        color: #365b92;
        font-size: 12px;
        line-height: 1.5;
    }

/* View All Offers Button */
.Packages-offers-view-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
    min-height: 37px;
    padding: 0 16px;
    border: 1px solid #0867ed;
    border-radius: 8px;
    background: #fff;
    color: #0867ed;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    transition: background .35s ease, color .35s ease, box-shadow .35s ease, transform .35s ease;
}

    /* View All Offers Hover */
    .Packages-offers-view-all:hover {
        background: #0867ed;
        color: #fff;
        text-decoration: none;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(8, 103, 237, .18);
    }

    /* View All Arrow */
    .Packages-offers-view-all i {
        font-size: 12px;
        transition: transform .35s ease;
    }

    /* View All Arrow Hover */
    .Packages-offers-view-all:hover i {
        transform: translateX(4px);
    }

/* Four Column Grid */
.Packages-offers-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}

/* Offer Card */
.Packages-offers-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    border: 1px solid #e2ecfb;
    border-radius: 11px;
    box-shadow: 0 5px 18px rgba(15, 65, 135, .06);
    overflow: hidden;
    isolation: isolate;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

    /* Offer Card Hover */
    .Packages-offers-card:hover {
        transform: translateY(-6px);
        border-color: #b6d5ff;
        box-shadow: 0 12px 28px rgba(15, 65, 135, .14);
    }

/* Package Image */
.Packages-offers-image {
    position: relative;
    width: 100%;
    height: 155px;
    overflow: hidden;
}

    /* Package Image */
    .Packages-offers-image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        transition: transform .65s cubic-bezier(.22, 1, .36, 1);
    }

/* Image Zoom Hover */
.Packages-offers-card:hover .Packages-offers-image img {
    transform: scale(1.1);
}

/* Discount Theme Colors */
.Packages-offers-red {
    --offer-color: #ed1725;
}

.Packages-offers-green {
    --offer-color: #059669;
}

.Packages-offers-purple {
    --offer-color: #9333ea;
}

.Packages-offers-orange {
    --offer-color: #f97316;
}

/* Discount Badge */
.Packages-offers-discount {
    position: absolute;
    z-index: 2;
    top: 10px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    padding: 4px 12px;
    border-radius: 6px;
    background: var(--offer-color);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
    overflow: hidden;
    transition: transform .35s ease;
}

    /* Discount Shine */
    .Packages-offers-discount::before {
        content: "";
        position: absolute;
        top: 0;
        left: -80%;
        width: 40%;
        height: 100%;
        background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, .55), transparent );
        transform: skewX(-25deg);
        transition: left .7s ease;
    }

/* Discount Hover */
.Packages-offers-card:hover .Packages-offers-discount {
    transform: scale(1.06);
}

    /* Discount Shine Hover */
    .Packages-offers-card:hover .Packages-offers-discount::before {
        left: 135%;
    }

/* Offer Content */
.Packages-offers-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    padding: 13px 14px 14px;
}

    /* Package Title */
    .Packages-offers-content h3 {
        margin: 0 0 6px;
        color: #082b70;
        font-size: 14px;
        font-weight: 800;
        line-height: 1.3;
        transition: color .35s ease;
    }

/* Package Title Hover */
.Packages-offers-card:hover .Packages-offers-content h3 {
    color: #0867ed;
}

/* Package Features */
.Packages-offers-features {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px 0;
    margin-bottom: 10px;
}

    /* Feature Text */
    .Packages-offers-features span {
        display: inline-flex;
        align-items: center;
        color: #365b92;
        font-size: 10px;
        font-weight: 600;
        line-height: 1.3;
        white-space: nowrap;
    }

        /* Feature Separator */
        .Packages-offers-features span:not(:last-child)::after {
            content: "|";
            display: inline-block;
            margin: 0 7px;
            color: #b0c5e5;
        }

/* Package Description */
.Packages-offers-description {
    flex: 1;
    margin: 0 0 14px;
    color: #365b92;
    font-size: 11px;
    line-height: 1.5;
}

/* Offer Footer */
.Packages-offers-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
}

/* Offer Validity */
.Packages-offers-validity {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

    /* Validity Label */
    .Packages-offers-validity small {
        color: #6783ad;
        font-size: 10px;
        font-weight: 600;
    }

    /* Validity Date */
    .Packages-offers-validity strong {
        color: #0867ed;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.3;
    }

/* View Details Button */
.Packages-offers-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-shrink: 0;
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid #0867ed;
    border-radius: 7px;
    background: linear-gradient(110deg, #0867ed, #1489ff);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(8, 103, 237, .15);
    overflow: hidden;
    transition: transform .35s ease, background .35s ease, box-shadow .35s ease;
}

    /* Button Shine */
    .Packages-offers-btn::before {
        content: "";
        position: absolute;
        top: 0;
        left: -80%;
        width: 45%;
        height: 100%;
        background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, .45), transparent );
        transform: skewX(-25deg);
        transition: left .65s ease;
    }

    /* Button Content */
    .Packages-offers-btn span,
    .Packages-offers-btn i {
        position: relative;
        z-index: 2;
    }

    /* Button Hover */
    .Packages-offers-btn:hover {
        transform: translateY(-2px);
        background: linear-gradient(110deg, #0054cf, #0867ed);
        color: #fff;
        text-decoration: none;
        box-shadow: 0 7px 16px rgba(8, 103, 237, .23);
    }

        /* Button Shine Hover */
        .Packages-offers-btn:hover::before {
            left: 135%;
        }

    /* Button Arrow */
    .Packages-offers-btn i {
        font-size: 11px;
        transition: transform .35s ease;
    }

    /* Button Arrow Hover */
    .Packages-offers-btn:hover i {
        transform: translateX(4px);
    }

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-offers-card,
    .Packages-offers-image img,
    .Packages-offers-discount,
    .Packages-offers-discount::before,
    .Packages-offers-btn,
    .Packages-offers-btn::before,
    .Packages-offers-btn i {
        transition: none;
    }
}





/*---------------------------------=========================================  How Package Booking Works Section  ============================================================ ------------------------------------*/

/* How Package Booking Works Section */
.Packages-process-section {
    position: relative;
    width: 100%;
    padding: 25px 0 45px;
    background: linear-gradient(110deg, #f4f9ff 0%, #eef8ff 65%, #e8f5ff 100%);
    overflow: hidden;
    isolation: isolate;
}

    /* Section Container */
    .Packages-process-section > .container {
        position: relative;
        z-index: 2;
    }

/* Section Header */
.Packages-process-header {
    position: relative;
    margin-bottom: 26px;
}

    /* Heading */
    .Packages-process-header h2 {
        margin: 0 0 5px;
        color: #082b70;
        font-size: 25px;
        font-weight: 800;
        line-height: 1.2;
    }

        /* Heading Highlight */
        .Packages-process-header h2 span {
            color: #0867ed;
        }

    /* Description */
    .Packages-process-header p {
        margin: 0;
        color: #365b92;
        font-size: 12px;
        line-height: 1.5;
    }

/* Four Column Grid */
.Packages-process-grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
    width: 100%;
    padding-top: 10px;
}

/* Step Wrapper */
.Packages-process-step {
    position: relative;
    z-index: 1;
    min-width: 0;
    overflow: visible;
}

    /* Step Wrapper Hover */
    .Packages-process-step:hover {
        z-index: 5;
    }

/* Step Card */
.Packages-process-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 95px;
    padding: 19px 13px 12px;
    background: rgba(255, 255, 255, .97);
    border: 1px solid #e2ecfb;
    border-radius: 10px;
    box-shadow: 0 5px 18px rgba(15, 65, 135, .07);
    overflow: hidden;
    isolation: isolate;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

/* Step Theme Colors */

/* Step 1 - Create Partner Account - Blue */
.Packages-process-blue {
    --process-color: #0867ed;
    --process-bg: #e3f0ff;
}

/* Step 2 - Account Verification - Orange */
.Packages-process-orange {
    --process-color: #ff8a00;
    --process-bg: #fff0df;
}

/* Step 3 - Login Credentials - Green */
.Packages-process-green {
    --process-color: #059669;
    --process-bg: #def8eb;
}

/* Step 4 - Search & Explore - Cyan */
.Packages-process-cyan {
    --process-color: #0891b2;
    --process-bg: #e0f7fc;
}

/* Step 5 - Customize Your Trip - Pink */
.Packages-process-pink {
    --process-color: #e83e8c;
    --process-bg: #ffe8f2;
}

/* Step 6 - Make Payment - Indigo */
.Packages-process-indigo {
    --process-color: #6366f1;
    --process-bg: #eaeaff;
}

/* Step 7 - Get Confirmation - Purple */
.Packages-process-purple {
    --process-color: #9333ea;
    --process-bg: #f3e8ff;
}


/* Step Number */
.Packages-process-number {
    position: absolute;
    z-index: 20;
    top: -12px;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 31px;
    height: 31px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--process-color);
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    transform: translateX(-50%);
    box-shadow: 0 3px 10px rgba(15, 65, 135, .13);
    pointer-events: none;
}

/* Icon Wrapper */
.Packages-process-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--process-bg);
    color: var(--process-color);
}

    /* Expanding Circle */
    .Packages-process-icon::before {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        border-radius: 50%;
        background: var(--process-bg);
        transform: scale(1);
        transition: transform .7s cubic-bezier(.22, 1, .36, 1);
        pointer-events: none;
    }

    /* Icon Symbol */
    .Packages-process-icon i {
        position: relative;
        z-index: 2;
        color: var(--process-color);
        font-size: 24px;
        transition: transform .35s ease;
    }

/* Step Content */
.Packages-process-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

    /* Step Heading */
    .Packages-process-content h3 {
        margin: 0 0 4px;
        color: #082b70;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.3;
        transition: color .35s ease;
    }

    /* Step Description */
    .Packages-process-content p {
        margin: 0;
        color: #365b92;
        font-size: 10px;
        line-height: 1.4;
    }

/* Connecting Arrow */
.Packages-process-arrow {
    position: absolute;
    z-index: 10;
    top: 50%;
    right: -19px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    color: #0867ed;
    font-size: 14px;
    transform: translateY(-50%);
    transition: transform .35s ease, background .35s ease;
}

/* Card Hover */
.Packages-process-step:hover .Packages-process-card {
    transform: translateY(-5px);
    border-color: var(--process-color);
    box-shadow: 0 12px 25px rgba(15, 65, 135, .13);
}

/* Expanding Circle Hover */
.Packages-process-step:hover .Packages-process-icon::before {
    transform: scale(20);
}

/* Icon Hover */
.Packages-process-step:hover .Packages-process-icon i {
    transform: scale(1.15) rotate(-8deg);
}

/* Heading Hover */
.Packages-process-step:hover .Packages-process-content h3 {
    color: var(--process-color);
}

/* Connecting Arrow Hover */
.Packages-process-step:hover .Packages-process-arrow {
    transform: translate(5px, -50%);
    background: #e8f3ff;
}

/* Last Step */
.Packages-process-step:last-child .Packages-process-arrow {
    display: none;
}

/* Decorative Airplane Route */
.Packages-process-decoration {
    position: absolute;
    z-index: 1;
    top: 20px;
    right: 2%;
    width: 280px;
    height: 95px;
    pointer-events: none;
}

/* Decorative SVG */
.Packages-process-route-svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

/* Dotted Route */
.Packages-process-route-path {
    fill: none;
    stroke: #69a7ff;
    stroke-width: 1.7;
    stroke-dasharray: 4 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .95;
}

/* Decorative Airplane */
.Packages-process-decoration-plane {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 42px;
    color: #0867ed;
    transform: rotate(-15deg);
    animation: PackagesPlaneFloat 4s ease-in-out infinite;
}

    /* Airplane Icon */
    .Packages-process-decoration-plane i {
        font-size: 28px;
    }

/* Airplane Float Animation */
@keyframes PackagesPlaneFloat {
    0%, 100% {
        transform: translateY(0) rotate(-15deg);
    }

    50% {
        transform: translateY(-5px) rotate(-10deg);
    }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-process-decoration-plane {
        animation: none;
    }

    .Packages-process-icon::before {
        transition: none;
    }
}

/*---------------------------------=========================================  Why Choose Ticket On Time Section  ============================================================ ------------------------------------*/


/* Why Choose Ticket On Time Section */
.Packages-why-section {
    position: relative;
    width: 100%;
    padding: 25px 0 50px;
    background: linear-gradient( 110deg, #f4f9ff 0%, #eef8ff 65%, #e8f5ff 100% );
    overflow: hidden;
}

/* Section Header */
.Packages-why-header {
    position: relative;
    z-index: 2;
    margin-bottom: 18px;
}

    /* Section Heading */
    .Packages-why-header h2 {
        margin: 0;
        color: #082b70;
        font-size: 25px;
        font-weight: 800;
        line-height: 1.2;
    }

        /* Heading Highlight */
        .Packages-why-header h2 span {
            color: #0867ed;
        }

/* Five Column Grid */
.Packages-why-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    align-items: stretch;
}

/* Why Choose Card */
.Packages-why-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    min-height: 80px;
    padding: 12px 13px;
    border: 1px solid #e2ecfb;
    border-radius: 10px;
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 5px 18px rgba(15, 65, 135, .06);
    overflow: hidden;
    isolation: isolate;
    cursor: pointer;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

    /* Card Hover */
    .Packages-why-card:hover {
        transform: translateY(-5px);
        border-color: var(--why-color);
        box-shadow: 0 12px 25px rgba(15, 65, 135, .13);
    }

/* Green Theme */
.Packages-why-green {
    --why-color: #059669;
    --why-bg: #e6f9f0;
}

/* Orange Theme */
.Packages-why-orange {
    --why-color: #f97316;
    --why-bg: #fff0e4;
}

/* Blue Theme */
.Packages-why-blue {
    --why-color: #0867ed;
    --why-bg: #e8f3ff;
}

/* Purple Theme */
.Packages-why-purple {
    --why-color: #9333ea;
    --why-bg: #f3e8ff;
}

/* Pink Theme */
.Packages-why-pink {
    --why-color: #ec168c;
    --why-bg: #ffe5f2;
}

/* Icon Wrapper */
.Packages-why-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--why-bg);
    color: var(--why-color);
}

    /* Expanding Circle Background */
    .Packages-why-icon::before {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        border-radius: 50%;
        background: var(--why-bg);
        transform: scale(1);
        transition: transform .7s cubic-bezier(.22, 1, .36, 1);
        pointer-events: none;
    }

    /* Icon Symbol */
    .Packages-why-icon i {
        position: relative;
        z-index: 2;
        color: var(--why-color);
        font-size: 25px;
        transition: transform .35s ease;
    }

/* Card Content */
.Packages-why-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

    /* Card Title */
    .Packages-why-content h3 {
        margin: 0 0 4px;
        color: #082b70;
        font-size: 11px;
        font-weight: 800;
        line-height: 1.3;
        transition: color .35s ease;
    }

    /* Card Description */
    .Packages-why-content p {
        margin: 0;
        color: #365b92;
        font-size: 10px;
        line-height: 1.4;
    }

/* Expanding Circle Hover */
.Packages-why-card:hover .Packages-why-icon::before {
    transform: scale(20);
}

/* Icon Hover */
.Packages-why-card:hover .Packages-why-icon i {
    transform: scale(1.15) rotate(-8deg);
}

/* Heading Hover */
.Packages-why-card:hover .Packages-why-content h3 {
    color: var(--why-color);
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-why-card,
    .Packages-why-icon::before,
    .Packages-why-icon i {
        transition: none;
    }
}




/*---------------------------------=========================================  Packages CTA Section ============================================================ ------------------------------------*/


/* Packages CTA Section */
.Packages-cta-section {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 260px;
    padding: 30px 0;
    background-color: #eaf6ff;
    background-image: url('../images/b2bpackages-cta-bg.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

    /* CTA Container */
    .Packages-cta-section > .container {
        position: relative;
        z-index: 2;
        width: 100%;
    }

/* CTA Content */
.Packages-cta-content {
    position: relative;
    max-width: 650px;
    padding: 5px 0;
}

/* CTA Heading */
.Packages-cta-title {
    margin: 0 0 10px;
    color: #082b70;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.7px;
}

    /* CTA Heading Highlight */
    .Packages-cta-title span {
        color: #0867ed;
    }

/* CTA Description */
.Packages-cta-description {
    max-width: 600px;
    margin: 0 0 22px;
    color: #365b92;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}

/* CTA Actions */
.Packages-cta-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 13px;
}

/* CTA Button */
.Packages-cta-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-width: 185px;
    min-height: 42px;
    padding: 0 20px;
    border: 1px solid #0867ed;
    border-radius: 8px;
    background: linear-gradient(110deg, #0867ed, #1489ff);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(8, 103, 237, .18);
    overflow: hidden;
    transition: transform .35s ease, background .35s ease, box-shadow .35s ease;
}

    /* CTA Button Shine */
    .Packages-cta-btn::before {
        content: "";
        position: absolute;
        top: 0;
        left: -80%;
        width: 45%;
        height: 100%;
        background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, .45), transparent );
        transform: skewX(-25deg);
        transition: left .65s ease;
    }

    /* CTA Button Content */
    .Packages-cta-btn span,
    .Packages-cta-btn i {
        position: relative;
        z-index: 2;
    }

    /* CTA Button Hover */
    .Packages-cta-btn:hover {
        transform: translateY(-3px);
        background: linear-gradient(110deg, #0054cf, #0867ed);
        color: #fff;
        text-decoration: none;
        box-shadow: 0 9px 22px rgba(8, 103, 237, .25);
    }

        /* CTA Button Shine Hover */
        .Packages-cta-btn:hover::before {
            left: 135%;
        }

    /* CTA Button Arrow */
    .Packages-cta-btn i {
        font-size: 12px;
        transition: transform .35s ease;
    }

    /* CTA Button Arrow Hover */
    .Packages-cta-btn:hover i {
        transform: translateX(5px);
    }

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .Packages-cta-btn,
    .Packages-cta-btn::before,
    .Packages-cta-btn i {
        transition: none;
    }
}




/* Packages Page Responsive Base */
.Packages-page-banner,
.Packages-support-section,
.Packages-categories-section,
.Packages-offers-section,
.Packages-process-section,
.Packages-why-section,
.Packages-cta-section {
    max-width: 100%;
}

/* Large Desktop - 1200px to 1399px */
@media (min-width: 1200px) and (max-width: 1399.98px) {

    /* Packages Hero */
    .Packages-banner-container {
        padding: 20px 65px !important;
    }

    .Packages-banner-title {
        font-size: 43px;
    }

    .Packages-banner-content {
        max-width: 570px;
    }

    /* Support Strip */
    .Packages-support-item {
        gap: 9px;
        padding: 14px 10px;
    }

    .Packages-support-icon {
        width: 42px;
        height: 42px;
    }

    .Packages-support-content h3 {
        font-size: 10px;
    }

    .Packages-support-content p {
        font-size: 9px;
    }

    /* Package Categories */
    .Packages-categories-grid {
        gap: 10px;
    }

    .Packages-categories-image {
        height: 105px;
    }

    /* Exclusive Offers */
    .Packages-offers-grid {
        gap: 12px;
    }

    .Packages-offers-image {
        height: 145px;
    }

    /* Booking Process */
    .Packages-process-grid {
        gap: 15px;
    }

    .Packages-process-card {
        gap: 9px;
        padding: 19px 10px 12px;
    }

    /* Why Choose */
    .Packages-why-card {
        gap: 9px;
        padding: 11px 10px;
    }

    .Packages-why-icon {
        width: 44px;
        height: 44px;
    }

    /* Packages CTA */
    .Packages-cta-content {
        max-width: 600px;
    }
}

/* Small Laptop - 992px to 1199px */
@media (min-width: 992px) and (max-width: 1199.98px) {

    /* Packages Hero */
    .Packages-page-banner,
    .Packages-banner-container {
        min-height: 370px;
    }

    .Packages-banner-container {
        padding: 20px 45px !important;
    }

    .Packages-banner-content {
        max-width: 530px;
    }

    .Packages-banner-title {
        font-size: 39px;
    }

    .Packages-banner-description {
        max-width: 440px;
        font-size: 13px;
    }

    .Packages-banner-travel-text {
        right: 4%;
        font-size: 20px;
    }

    /* Support Strip */
    .Packages-support-strip {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .Packages-support-item {
        flex-direction: column;
        justify-content: center;
        gap: 7px;
        min-height: 104px;
        padding: 12px 7px;
        text-align: center;
    }

    .Packages-support-icon {
        width: 42px;
        height: 42px;
    }

    .Packages-support-content h3 {
        font-size: 10px;
    }

    .Packages-support-content p {
        font-size: 9px;
    }

    /* Categories */
    .Packages-categories-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .Packages-categories-image {
        height: 145px;
    }

    .Packages-categories-content {
        min-height: 82px;
    }

    /* Offers */
    .Packages-offers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .Packages-offers-image {
        height: 185px;
    }

    /* Booking Process */
    .Packages-process-grid {
        gap: 12px;
    }

    .Packages-process-card {
        gap: 8px;
        min-height: 105px;
        padding: 20px 9px 12px;
    }

    .Packages-process-icon {
        width: 43px;
        height: 43px;
    }

        .Packages-process-icon i {
            font-size: 21px;
        }

    .Packages-process-content h3 {
        font-size: 10px;
    }

    .Packages-process-content p {
        font-size: 9px;
    }

    .Packages-process-arrow {
        right: -17px;
    }

    /* Why Choose */
    .Packages-why-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .Packages-why-card {
        min-height: 80px;
    }

    /* CTA */
    .Packages-cta-section {
        min-height: 245px;
    }

    .Packages-cta-content {
        max-width: 530px;
    }

    .Packages-cta-title {
        font-size: 30px;
    }

    .Packages-cta-description {
        max-width: 490px;
        font-size: 13px;
    }
}

/* Tablet - 768px to 991px */
@media (min-width: 768px) and (max-width: 991.98px) {

    /* Packages Hero */
    .Packages-page-banner,
    .Packages-banner-container {
        min-height: 350px;
    }

    .Packages-page-banner {
        background-position: 56% center;
    }

    .Packages-banner-container {
        padding: 25px 25px !important;
    }

    .Packages-banner-content {
        max-width: 450px;
    }

    .Packages-banner-title {
        font-size: 35px;
        letter-spacing: -.7px;
    }

    .Packages-banner-description {
        max-width: 410px;
        font-size: 12px;
    }

    .Packages-banner-travel-text {
        top: 15%;
        right: 3%;
        font-size: 18px;
    }

    .Packages-banner-offer {
        gap: 10px;
        min-height: 68px;
        margin-top: 20px;
    }

    .Packages-banner-offer-content strong {
        font-size: 13px;
    }

    .Packages-banner-offer-content span {
        font-size: 10px;
    }

    /* Support Strip */
    .Packages-support-section {
        margin-top: -20px;
        padding-bottom: 30px;
    }

    .Packages-support-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .Packages-support-item {
        min-height: 78px;
        padding: 12px;
    }

        .Packages-support-item:nth-child(3)::after {
            display: none;
        }

        .Packages-support-item:nth-child(n+4) {
            border-top: 1px solid #e5effc;
        }

    .Packages-support-icon {
        width: 43px;
        height: 43px;
    }

    /* Shared Section Spacing */
    .Packages-categories-section,
    .Packages-offers-section,
    .Packages-process-section,
    .Packages-why-section {
        padding: 25px 0 40px;
    }

    /* Shared Headings */
    .Packages-categories-heading h2,
    .Packages-offers-heading h2,
    .Packages-process-header h2,
    .Packages-why-header h2 {
        font-size: 23px;
    }

    /* Categories */
    .Packages-categories-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .Packages-categories-image {
        height: 135px;
    }

    .Packages-categories-content {
        min-height: 80px;
    }

    /* Offers */
    .Packages-offers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .Packages-offers-image {
        height: 175px;
    }

    /* Booking Process */
    .Packages-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 25px 20px;
    }

    .Packages-process-card {
        min-height: 95px;
    }

    .Packages-process-step:nth-child(2) .Packages-process-arrow {
        display: none;
    }

    .Packages-process-arrow {
        right: -22px;
    }

    .Packages-process-decoration {
        width: 200px;
        height: 75px;
        opacity: .7;
    }

    /* Why Choose */
    .Packages-why-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .Packages-why-card {
        min-height: 78px;
    }

    /* CTA */
    .Packages-cta-section {
        min-height: 235px;
        background-position: 58% center;
    }

    .Packages-cta-content {
        max-width: 450px;
    }

    .Packages-cta-title {
        font-size: 28px;
    }

    .Packages-cta-description {
        max-width: 420px;
        font-size: 12px;
    }
}

/* Mobile Landscape - 576px to 767px */
@media (min-width: 576px) and (max-width: 767.98px) {

    /* Packages Hero */
    .Packages-page-banner,
    .Packages-banner-container {
        min-height: 340px;
    }

    .Packages-page-banner {
        background-position: 59% center;
    }

    .Packages-banner-container {
        padding: 25px 15px !important;
    }

    .Packages-banner-content {
        max-width: 370px;
    }

    .Packages-banner-eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .Packages-banner-title {
        font-size: 30px;
        letter-spacing: -.6px;
    }

    .Packages-banner-description {
        max-width: 350px;
        font-size: 11px;
    }

    .Packages-banner-travel-text {
        top: 11%;
        right: 3%;
        font-size: 15px;
    }

    .Packages-banner-offer {
        gap: 9px;
        min-height: 65px;
        margin-top: 18px;
        padding: 8px 11px 8px 7px;
    }

    .Packages-banner-gift {
        width: 58px;
        transform: scale(.88);
        transform-origin: left center;
    }

    .Packages-banner-offer-content strong {
        font-size: 12px;
    }

    .Packages-banner-offer-content span {
        font-size: 9px;
    }

    .Packages-banner-offer-plane {
        width: 30px;
        height: 30px;
        font-size: 17px;
    }

    /* Support Strip */
    .Packages-support-section {
        margin-top: -15px;
        padding-bottom: 25px;
    }

    .Packages-support-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .Packages-support-item {
        min-height: 75px;
        padding: 12px;
    }

        .Packages-support-item:nth-child(2n)::after {
            display: none;
        }

        .Packages-support-item:nth-child(n+3) {
            border-top: 1px solid #e5effc;
        }

    /* Shared Sections */
    .Packages-categories-section,
    .Packages-offers-section,
    .Packages-process-section,
    .Packages-why-section {
        padding: 22px 0 35px;
    }

    .Packages-categories-heading h2,
    .Packages-offers-heading h2,
    .Packages-process-header h2,
    .Packages-why-header h2 {
        font-size: 21px;
    }

    .Packages-categories-heading p,
    .Packages-offers-heading p,
    .Packages-process-header p {
        font-size: 11px;
    }

    /* Categories */
    .Packages-categories-header,
    .Packages-offers-header {
        align-items: flex-start;
    }

    .Packages-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .Packages-categories-image {
        height: 135px;
    }

    /* Offers */
    .Packages-offers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .Packages-offers-image {
        height: 140px;
    }

    .Packages-offers-content {
        padding: 12px;
    }

        .Packages-offers-content h3 {
            font-size: 13px;
        }

    .Packages-offers-footer {
        flex-wrap: wrap;
        align-items: center;
    }

    /* Booking Process */
    .Packages-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 25px 18px;
    }

    .Packages-process-step:nth-child(2) .Packages-process-arrow {
        display: none;
    }

    .Packages-process-arrow {
        right: -21px;
    }

    .Packages-process-card {
        min-height: 100px;
        padding: 18px 10px 12px;
    }

    .Packages-process-decoration {
        width: 150px;
        height: 65px;
        opacity: .55;
    }

    /* Why Choose */
    .Packages-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .Packages-why-card {
        min-height: 75px;
        padding: 11px;
    }

    /* CTA */
    .Packages-cta-section {
        min-height: 220px;
        padding: 25px 0;
        background-position: 62% center;
    }

    .Packages-cta-content {
        max-width: 350px;
    }

    .Packages-cta-title {
        font-size: 25px;
    }

    .Packages-cta-description {
        max-width: 340px;
        margin-bottom: 17px;
        font-size: 11px;
    }

    .Packages-cta-btn {
        min-height: 39px;
        font-size: 11px;
    }
}

/* Mobile Portrait - Up to 575px */
@media (max-width: 575.98px) {

    /* Packages Hero */
    .Packages-page-banner {
        min-height: 385px;
        background-position: 63% center;
    }

    .Packages-banner-container {
        align-items: flex-start;
        min-height: 385px;
        padding: 28px 15px 55px !important;
    }

    .Packages-banner-content {
        max-width: 100%;
        padding-bottom: 0;
    }

    .Packages-banner-eyebrow {
        margin-bottom: 8px;
        font-size: 9px;
        letter-spacing: 2px;
    }

    .Packages-banner-title {
        max-width: 350px;
        margin-bottom: 10px;
        font-size: 29px;
        line-height: 1.12;
        letter-spacing: -.5px;
    }

    .Packages-banner-description {
        max-width: 340px;
        font-size: 11px;
        line-height: 1.55;
    }

    .Packages-banner-travel-text {
        display: none;
    }

    /* Hero Offer */
    .Packages-banner-offer {
        gap: 9px;
        min-height: 67px;
        margin-top: 20px;
        padding: 8px 10px 8px 7px;
        border-radius: 12px;
    }

    .Packages-banner-gift {
        width: 58px;
        transform: scale(.88);
        transform-origin: left center;
    }

    .Packages-banner-offer-content {
        gap: 3px;
    }

        .Packages-banner-offer-content strong {
            font-size: 12px;
        }

        .Packages-banner-offer-content span {
            font-size: 9px;
        }

    .Packages-banner-offer-plane {
        width: 29px;
        height: 29px;
        margin-left: 0;
        font-size: 17px;
    }

    /* Support Strip */
    .Packages-support-section {
        margin-top: -25px;
        padding-bottom: 25px;
    }

    .Packages-support-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-radius: 10px;
    }

    .Packages-support-item {
        gap: 8px;
        min-height: 77px;
        padding: 11px 9px;
    }

        .Packages-support-item:nth-child(2n)::after {
            display: none;
        }

        .Packages-support-item:nth-child(n+3) {
            border-top: 1px solid #e5effc;
        }

    .Packages-support-icon {
        width: 39px;
        height: 39px;
    }

        .Packages-support-icon i {
            font-size: 20px;
        }

    .Packages-support-content h3 {
        margin-bottom: 3px;
        font-size: 10px;
    }

    .Packages-support-content p {
        font-size: 9px;
    }

    /* Shared Section Spacing */
    .Packages-categories-section,
    .Packages-offers-section,
    .Packages-process-section,
    .Packages-why-section {
        padding: 22px 0 32px;
    }

    /* Shared Section Headings */
    .Packages-categories-heading h2,
    .Packages-offers-heading h2,
    .Packages-process-header h2,
    .Packages-why-header h2 {
        font-size: 20px;
        line-height: 1.25;
    }

    .Packages-categories-heading p,
    .Packages-offers-heading p,
    .Packages-process-header p {
        font-size: 11px;
    }

    /* Section Headers */
    .Packages-categories-header,
    .Packages-offers-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 11px;
        margin-bottom: 16px;
    }

    .Packages-categories-view-all,
    .Packages-offers-view-all {
        min-height: 34px;
        padding: 0 12px;
        font-size: 10px;
    }

    /* Categories Grid */
    .Packages-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .Packages-categories-image {
        height: 110px;
    }

    .Packages-categories-content {
        min-height: 80px;
        padding: 25px 6px 11px;
    }

    .Packages-categories-icon {
        width: 43px;
        height: 43px;
    }

        .Packages-categories-icon i {
            font-size: 19px;
        }

    .Packages-categories-content h3 {
        font-size: 10px;
    }

    .Packages-categories-content p {
        font-size: 9px;
    }

    /* Offers Grid */
    .Packages-offers-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .Packages-offers-image {
        height: 115px;
    }

    .Packages-offers-discount {
        top: 8px;
        left: 8px;
        min-height: 22px;
        padding: 3px 8px;
        font-size: 10px;
    }

    .Packages-offers-content {
        padding: 10px 9px 11px;
    }

        .Packages-offers-content h3 {
            font-size: 12px;
        }

    .Packages-offers-features {
        margin-bottom: 8px;
    }

        .Packages-offers-features span {
            font-size: 9px;
            white-space: normal;
        }

            .Packages-offers-features span:not(:last-child)::after {
                margin: 0 4px;
            }

    .Packages-offers-description {
        margin-bottom: 12px;
        font-size: 10px;
    }

    .Packages-offers-footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 9px;
    }

    .Packages-offers-validity small {
        font-size: 9px;
    }

    .Packages-offers-validity strong {
        font-size: 10px;
    }

    .Packages-offers-btn {
        width: 100%;
        min-height: 33px;
        padding: 0 8px;
        font-size: 9px;
    }

    /* Booking Process */
    .Packages-process-header {
        margin-bottom: 23px;
    }

    .Packages-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 12px;
    }

    .Packages-process-card {
        flex-direction: column;
        justify-content: center;
        gap: 8px;
        min-height: 145px;
        padding: 22px 10px 12px;
        text-align: center;
    }

    .Packages-process-number {
        width: 29px;
        height: 29px;
        font-size: 14px;
    }

    .Packages-process-icon {
        width: 46px;
        height: 46px;
    }

        .Packages-process-icon i {
            font-size: 22px;
        }

    .Packages-process-content h3 {
        font-size: 10px;
    }

    .Packages-process-content p {
        font-size: 9px;
    }

    .Packages-process-arrow {
        display: none;
    }

    .Packages-process-decoration {
        width: 130px;
        height: 55px;
        opacity: .35;
    }

    /* Why Choose */
    .Packages-why-header {
        margin-bottom: 15px;
    }

    .Packages-why-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .Packages-why-card {
        gap: 8px;
        min-height: 83px;
        padding: 10px 8px;
    }

    .Packages-why-icon {
        width: 40px;
        height: 40px;
    }

        .Packages-why-icon i {
            font-size: 21px;
        }

    .Packages-why-content h3 {
        font-size: 10px;
    }

    .Packages-why-content p {
        font-size: 9px;
    }

    /* Packages CTA */
    .Packages-cta-section {
        align-items: flex-start;
        min-height: 275px;
        padding: 28px 0 100px;
        background-position: 65% center;
    }

    .Packages-cta-content {
        max-width: 330px;
        padding: 0;
    }

    .Packages-cta-title {
        font-size: 25px;
        line-height: 1.18;
    }

    .Packages-cta-description {
        max-width: 315px;
        margin-bottom: 17px;
        font-size: 11px;
    }

    .Packages-cta-btn {
        min-width: 175px;
        min-height: 39px;
        padding: 0 15px;
        font-size: 11px;
    }
}

/* Small Mobile - Up to 399px */
@media (max-width: 399.98px) {

    /* Packages Hero */
    .Packages-page-banner {
        min-height: 405px;
        background-position: 65% center;
    }

    .Packages-banner-container {
        min-height: 405px;
        padding: 25px 12px 55px !important;
    }

    .Packages-banner-title {
        max-width: 300px;
        font-size: 26px;
    }

    .Packages-banner-description {
        max-width: 295px;
        font-size: 10px;
    }

    .Packages-banner-offer {
        gap: 6px;
        max-width: 100%;
        padding: 8px 7px;
    }

    .Packages-banner-gift {
        width: 52px;
        transform: scale(.78);
        transform-origin: left center;
    }

    .Packages-banner-offer-content strong {
        font-size: 11px;
    }

    .Packages-banner-offer-content span {
        font-size: 8px;
    }

    .Packages-banner-offer-plane {
        width: 25px;
        height: 25px;
        font-size: 15px;
    }

    /* Support Strip */
    .Packages-support-item {
        flex-direction: column;
        justify-content: center;
        gap: 6px;
        min-height: 96px;
        padding: 10px 6px;
        text-align: center;
    }

    .Packages-support-icon {
        width: 38px;
        height: 38px;
    }

    .Packages-support-content h3 {
        font-size: 9px;
    }

    .Packages-support-content p {
        font-size: 8px;
    }

    /* Categories */
    .Packages-categories-heading h2,
    .Packages-offers-heading h2,
    .Packages-process-header h2,
    .Packages-why-header h2 {
        font-size: 19px;
    }

    .Packages-categories-grid {
        gap: 8px;
    }

    .Packages-categories-image {
        height: 95px;
    }

    .Packages-categories-content h3 {
        font-size: 9px;
    }

    .Packages-categories-content p {
        font-size: 8px;
    }

    /* Offers */
    .Packages-offers-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .Packages-offers-image {
        height: 170px;
    }

    .Packages-offers-content {
        padding: 13px;
    }

        .Packages-offers-content h3 {
            font-size: 13px;
        }

    .Packages-offers-features span {
        font-size: 10px;
    }

    .Packages-offers-description {
        font-size: 11px;
    }

    .Packages-offers-footer {
        flex-direction: row;
        align-items: flex-end;
    }

    .Packages-offers-btn {
        width: auto;
        min-width: 105px;
    }

    /* Booking Process */
    .Packages-process-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .Packages-process-card {
        flex-direction: row;
        justify-content: flex-start;
        gap: 12px;
        min-height: 90px;
        padding: 18px 12px 12px;
        text-align: left;
    }

    .Packages-process-content h3 {
        font-size: 11px;
    }

    .Packages-process-content p {
        font-size: 10px;
    }

    .Packages-process-decoration {
        display: none;
    }

    /* Why Choose */
    .Packages-why-grid {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .Packages-why-card {
        min-height: 68px;
        padding: 10px 12px;
    }

    .Packages-why-content h3 {
        font-size: 11px;
    }

    .Packages-why-content p {
        font-size: 10px;
    }

    /* CTA */
    .Packages-cta-section {
        min-height: 295px;
        padding: 25px 0 105px;
        background-position: 67% center;
    }

    .Packages-cta-content {
        max-width: 290px;
    }

    .Packages-cta-title {
        font-size: 22px;
    }

    .Packages-cta-description {
        max-width: 285px;
        font-size: 10px;
    }

    .Packages-cta-btn {
        min-width: 165px;
        min-height: 37px;
        font-size: 10px;
    }
}

/* Touch Devices - Avoid Hover Layout Issues */
@media (hover: none) and (pointer: coarse) {

    /* Disable Card Lift on Touch */
    .Packages-categories-card:hover,
    .Packages-offers-card:hover,
    .Packages-why-card:hover,
    .Packages-process-step:hover .Packages-process-card {
        transform: none;
    }

        /* Keep Icons Stable on Touch */
        .Packages-support-item:hover .Packages-support-icon::before,
        .Packages-categories-card:hover .Packages-categories-icon::before,
        .Packages-process-step:hover .Packages-process-icon::before,
        .Packages-why-card:hover .Packages-why-icon::before {
            transform: scale(1);
        }

    /* Avoid Permanent Gift Animation on Touch */
    .Packages-page-banner:hover .Packages-banner-gift-lid {
        transform: none;
    }

    .Packages-page-banner:hover .Packages-banner-gift-surprise {
        opacity: 0;
        transform: translateY(12px) scale(.65);
    }

    .Packages-page-banner:hover .Packages-banner-offer {
        transform: none;
    }
}

/* Accessibility - Reduced Motion */
@media (prefers-reduced-motion: reduce) {

    .Packages-banner-travel-text span,
    .Packages-process-decoration-plane {
        animation: none;
    }

    .Packages-banner-offer,
    .Packages-banner-gift-lid,
    .Packages-banner-gift-surprise,
    .Packages-banner-offer-plane,
    .Packages-support-icon::before,
    .Packages-categories-card,
    .Packages-categories-image img,
    .Packages-categories-icon::before,
    .Packages-offers-card,
    .Packages-offers-image img,
    .Packages-offers-btn,
    .Packages-process-card,
    .Packages-process-icon::before,
    .Packages-why-card,
    .Packages-why-icon::before,
    .Packages-cta-btn {
        transition: none;
    }
}



 


