/* Make Fusion Tour card (Japan & Korea) taller in departure dates */
.calendar-card.fusion-card {
    min-height: 320px !important;
    max-height: 420px !important;
}
/* Dropdown menu font and separation improvements */
.dropdown-content {
    min-width: 280px !important;
    padding: 4px 0 !important;
}
.dropdown-item {
    padding: 10px 14px !important;
    font-size: 0.93rem !important;
    border-bottom: 1.5px solid #e0e7ef !important;
    margin: 0 2px !important;
    border-radius: 7px !important;
}
.dropdown-item-title {
    font-size: 0.98rem !important;
    margin-bottom: 1px !important;
}
.dropdown-item-desc {
    font-size: 0.78rem !important;
    line-height: 1.5 !important;
}
.dropdown-divider {
    height: 1px;
    background: linear-gradient(90deg, #e0e7ef 0%, #b2ebf2 100%);
    margin: 4px 0 4px 0;
    border: none;
}
/* Modern section title styling for all pages */
.section-title, h2.section-title, h2.section-title.center {
    font-family: 'DM Sans', 'Segoe UI', Arial, sans-serif !important;
    font-size: 2.1rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em;
    color: #1976d2 !important;
    text-align: center;
    margin-bottom: 1.1em !important;
    position: relative;
    background: none !important;
}
.section-title::after, h2.section-title::after {
    content: '';
    display: block;
    width: 60px;
    height: 4px;
    margin: 0.5em auto 0 auto;
    background: linear-gradient(90deg, #1976d2 0%, #f48fb1 100%);
    border-radius: 2px;
    opacity: 0.85;
}
/* Consistent CTA button sizing and spacing across all pages */
.cta-button, .form-btn, .calendar-tour-link, .whatsapp-btn, .payu_btn {
    font-size: 1rem !important;
    padding: 0.55em 1.3em !important;
    border-radius: 2em !important;
    min-width: 120px;
    min-height: 38px;
    line-height: 1.2;
}
.cta-button.primary {
    font-size: 1.05rem !important;
    font-weight: 600;
}
.departure-banner-cta {
    display: flex;
    gap: 1.1rem;
    margin-top: 1.2rem !important;
    margin-bottom: 0.5rem !important;
    flex-wrap: wrap;
    justify-content: center;
}
/* Add padding and border-radius to the header white background box for better spacing */
header {
    background: #fff;
    padding: 22px 0 22px 0 !important;
    border-radius: 18px;
    margin-top: 18px !important;
    margin-bottom: 18px !important;
    box-shadow: 0 2px 16px 0 rgba(60,60,120,0.06);
}
/* Add spacing above and below the header section for all pages */
header {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
}

/* Add spacing above and below the main banner/hero/section after header */
.hero, .packages-banner, .departure-banner, .section:first-of-type {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
}
/* ============================
   FIX GLOBAL SPACING / GAPS
   WITHOUT CHANGING DESIGN
============================ */

/* Consistent spacing for all main sections */
section,
.page-section,
.home-section {
    margin-top: 48px !important;
    margin-bottom: 48px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove accidental massive margins added by random elements */
[class*="section"],
[class*="container"],
[class*="wrapper"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Prevent double spacing inside hero or image sections */
.hero,
.hero-inner,
.package-hero,
.about-hero {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

/* Fix cards or blocks with large bottom gaps */
.card,
.package-card,
.review-card,
.faq-item {
    margin-bottom: 20px !important;
}

/* Normalize H1/H2 spacing */
h1, h2 {
    margin-top: 10px !important;
    margin-bottom: 15px !important;
}

/* Remove random extra padding added by older CSS */
* {
    scroll-margin-top: 100px;
}

/* Container fix (important to maintain layout) */
.container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Fix large footer gap */
footer {
    margin-top: 40px !important;
    padding-top: 40px !important;
}

/* Remove top gap in header */
header {
    margin-bottom: 0 !important;
}

/* Calendar view spacing fix */
.calendar-section {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}
