/* CSS RESET & VARIABLES */
        @font-face {
            font-family: 'Atyp Medium';
            src: local('Atyp Medium'), local('Atyp-Medium');
        }

        :root {
            --brand-color: #82762a;
            --brand-dark: #5c531d;
            --brand-light: #f5f4eb;
            --brand-accent: #f4c150; /* For WhatsApp/Action Buttons */
            --dark-bg: #2b332e; /* Dark slate */
            --text-main: #333333;
            --text-muted: #555555;
            --bg-light: #f9f9f9;
            --white: #ffffff;
            --border-color: #dddddd;
            
            --heading-font: "Road Rage", cursive, sans-serif;
            --body-font: "Atyp Medium", "Montserrat", sans-serif;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; }

        body {
            font-family: var(--body-font);
            color: var(--text-main);
            line-height: 1.6;
            background-color: #ffffff;
            -webkit-font-smoothing: antialiased;
        }

        img { max-width: 100%; height: auto; display: block; }
        .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

        /* HERO BANNER SECTION */
   .hero-banner {
    position: relative;
    /* Background moved to HTML inline style */
    height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--white);
}

.hero-title {
    font-family: var(--heading-font);
    font-size: 4rem;
    letter-spacing: 2px;
    text-transform: capitalize;
    margin-bottom: 10px;
    text-shadow: 2px 2px 8px rgba(0,0,0,0.6);
    font-weight: normal;
}

        .breadcrumbs { display: flex; gap: 10px; font-size: 0.95rem; font-weight: 500; }
        .breadcrumbs i { font-size: 0.8rem; align-self: center; }
        .breadcrumbs a { color: var(--white); text-decoration: none; transition: color 0.3s; }
        .breadcrumbs a:hover { color: var(--brand-color); }
        .breadcrumbs span { color: var(--brand-color); }

        /* SECTION TITLES */
        .section-title {
            font-family: var(--heading-font);
            font-size: 2.8rem;
            color: #111;
            margin-bottom: 25px;
            text-transform: uppercase;
            letter-spacing: 1px;
            font-weight: normal;
        }

        /* TOUR OVERVIEW SECTION */
        .tour-overview { padding: 60px 0; background-color: var(--white); }
        .overview-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: 40px; align-items: start; }
        .map-wrapper { background: var(--brand-light); border-radius: 8px; padding: 15px; border: 1px solid var(--border-color); box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
        .map-placeholder { 
    width: 100%; 
    height: 300px; 
    /* Background removed from here */
    border-radius: 6px; 
    position: relative; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    /* Added background-size/position fallback just in case */
    background-size: cover;
    background-position: center;
}
        .map-overlay-text { background: rgba(130, 118, 42, 0.9); color: var(--white); padding: 10px 20px; border-radius: 4px; font-weight: 600; font-size: 0.9rem; }
        .overview-text p { color: var(--text-muted); margin-bottom: 25px; font-size: 1.05rem; line-height: 1.7; }
        .meta-boxes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
        .meta-box { background: var(--brand-light); border: 1px solid rgba(130, 118, 42, 0.15); padding: 15px; border-radius: 6px; text-align: center; transition: transform 0.3s; }
        .meta-box:hover { transform: translateY(-3px); border-color: var(--brand-color); }
        .meta-box i { color: var(--brand-color); font-size: 1.5rem; margin-bottom: 8px; }
        .meta-label { font-size: 0.8rem; color: var(--text-muted); text-transform: uppercase; display: block; margin-bottom: 2px; }
        .meta-value { font-weight: 700; color: #222; font-size: 1.05rem; }

        /* ITINERARY SUMMARY SECTION */
        .itinerary-summary { padding: 60px 0; background-color: var(--bg-light); border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); }
        .summary-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: center; }
        .summary-list { list-style: none; }
        .summary-item { display: flex; align-items: center; padding: 12px 0; border-bottom: 1px dashed var(--border-color); }
        .summary-item:last-child { border-bottom: none; }
        .summary-icon { width: 28px; height: 28px; background: var(--brand-light); border: 1px solid var(--brand-color); color: var(--brand-color); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.8rem; margin-right: 15px; flex-shrink: 0; }
        .summary-text { font-weight: 600; color: #333; font-size: 1rem; }
        .summary-image-wrapper { position: relative; }
        .summary-img { border-radius: 8px; box-shadow: 0 8px 25px rgba(0,0,0,0.1); transform: rotate(1deg); transition: transform 0.3s; width: 100%; object-fit: cover; height: 320px; }
        .summary-img:hover { transform: rotate(0deg) scale(1.02); }

        /* ITINERARY DETAILS ACCORDION SECTION */
        .itinerary-details { padding: 60px 0; background-color: var(--white); }
        .details-intro { color: var(--text-muted); margin-bottom: 30px; font-size: 1.05rem; line-height: 1.7; }
        .accordion-wrapper { display: flex; flex-direction: column; gap: 12px; }
        .accordion-item { border: 1px solid var(--border-color); border-radius: 6px; overflow: hidden; background: var(--bg-light); transition: all 0.3s; }
        .accordion-header { background-color: var(--white); padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; cursor: pointer; user-select: none; transition: background-color 0.3s, color 0.3s; }
        .accordion-header h3 { font-size: 1.05rem; font-weight: 700; color: #333; display: flex; align-items: center; gap: 12px; font-family: var(--body-font); }
        .accordion-header h3 i { color: var(--brand-color); }
        .accordion-icon { transition: transform 0.3s ease; font-size: 0.9rem; color: var(--text-muted); }
        
        .accordion-item.active { border-color: var(--brand-dark); box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
        .accordion-item.active .accordion-header { background-color: var(--dark-bg); color: var(--white); }
        .accordion-item.active .accordion-header h3 { color: var(--white); }
        .accordion-item.active .accordion-header h3 i { color: var(--white); }
        .accordion-item.active .accordion-icon { transform: rotate(180deg); color: var(--white); }
        
        .accordion-content { max-height: 0; overflow: hidden; transition: max-height 0.5s ease-in-out; background: var(--white); }
        .accordion-body { padding: 25px; color: var(--text-muted); font-size: 1rem; line-height: 1.7; border-top: 1px solid var(--border-color); }
        .accordion-body p { margin-bottom: 15px; }
        .accordion-body p:last-child { margin-bottom: 0; }

        /* INCLUDES & EXCLUDES SECTION */
        .includes-excludes { padding: 60px 0; background-color: var(--bg-light); border-top: 1px solid var(--border-color); }
        .inc-exc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
        .inc-exc-card { background: var(--white); border: 1px solid var(--border-color); border-radius: 8px; padding: 30px; box-shadow: 0 4px 15px rgba(0,0,0,0.02); }
        .inc-exc-card h3 { font-family: var(--heading-font); font-size: 2rem; margin-bottom: 20px; text-transform: uppercase; letter-spacing: 1px; padding-bottom: 10px; border-bottom: 2px solid var(--border-color); font-weight: normal; }
        .inc-card h3 { border-color: #2e7d32; color: #2e7d32; }
        .exc-card h3 { border-color: #c62828; color: #c62828; }
        .inc-exc-list { list-style: none; display: flex; flex-direction: column; gap: 14px; }
        .inc-exc-list li { display: flex; align-items: flex-start; font-size: 0.95rem; color: #444; }
        .inc-exc-list i { margin-right: 12px; margin-top: 4px; font-size: 1.05rem; flex-shrink: 0; }
        .inc-card i { color: #2e7d32; }
        .exc-card i { color: #c62828; }

        /* PREMIUM BOOKING & INQUIRY SECTION */
        .booking-section { padding: 60px 0 100px 0; background-color: var(--white); }
        .booking-wrapper { background: var(--white); border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.06); overflow: hidden; border: 1px solid var(--border-color); }
        
        .expert-banner { background-color: var(--dark-bg); padding: 30px 40px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
        .expert-profile { display: flex; align-items: center; gap: 20px; max-width: 500px; }
        .expert-img { width: 70px; height: 70px; border-radius: 50%; object-fit: cover; border: 2px solid var(--brand-color); }
        .expert-text h3 { color: var(--white); font-size: 1.25rem; font-weight: 600; line-height: 1.4; font-family: var(--body-font); }
        
        .expert-cta { text-align: right; }
        .expert-cta p { color: var(--white); font-size: 1.05rem; margin-bottom: 12px; font-weight: 500; }
        .btn-whatsapp-yellow { background-color: var(--brand-accent); color: #111; padding: 12px 30px; border-radius: 30px; text-decoration: none; font-weight: 700; display: inline-block; transition: all 0.3s; font-size: 1rem; }
        .btn-whatsapp-yellow:hover { background-color: #e5b045; transform: translateY(-2px); }

        .inquiry-form { padding: 40px; }
        .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; margin-bottom: 25px; }
        .form-group { display: flex; flex-direction: column; gap: 8px; }
        .form-group label { font-weight: 600; color: #444; font-size: 0.95rem; }
        .form-group label span { color: #d32f2f; }
        .form-control { width: 100%; padding: 14px 18px; border: 1px solid #ccc; border-radius: 6px; font-family: var(--body-font); font-size: 1rem; color: #333; background: #fff; transition: border-color 0.3s; }
        .form-control:focus { outline: none; border-color: var(--brand-color); box-shadow: 0 0 0 3px rgba(130, 118, 42, 0.1); }
        textarea.form-control { resize: vertical; min-height: 120px; }
        
        .form-footer { display: flex; justify-content: space-between; align-items: center; margin-top: 15px; margin-bottom: 30px; flex-wrap: wrap; gap: 15px; }
        .checkbox-group { display: flex; align-items: center; gap: 10px; font-size: 0.9rem; color: var(--text-muted); }
        .checkbox-group input { width: 18px; height: 18px; cursor: pointer; accent-color: var(--brand-color); }
        .trust-badges { display: flex; gap: 20px; font-weight: 600; color: #222; font-size: 0.95rem; }
        .trust-badges span { display: flex; align-items: center; gap: 6px; }
        .trust-badges i { color: #2e7d32; font-size: 1.1rem; }

        .btn-submit { width: 100%; background-color: var(--dark-bg); color: var(--white); border: none; padding: 18px; border-radius: 6px; font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; cursor: pointer; transition: background-color 0.3s; font-family: var(--body-font); }
        .btn-submit:hover { background-color: #1a1f1c; }

        .pricing-info { margin-top: 60px; padding: 0 20px; }
        .pricing-info h2 { font-family: var(--heading-font); font-size: 2.8rem; color: #111; margin-bottom: 25px; letter-spacing: 1px; font-weight: normal; }
        .pricing-info p { color: var(--text-muted); font-size: 1.05rem; line-height: 1.8; margin-bottom: 20px; }
        .pricing-info strong { color: #222; }
        
        .pricing-actions { display: flex; justify-content: center; gap: 20px; margin-top: 40px; flex-wrap: wrap; }
        .btn-dark { background-color: var(--dark-bg); color: var(--white); padding: 14px 35px; border-radius: 30px; text-decoration: none; font-weight: 600; transition: all 0.3s; }
        .btn-dark:hover { background-color: #1a1f1c; color: var(--white); transform: translateY(-2px); }

        /* RESPONSIVE MEDIA QUERIES */
        @media (max-width: 992px) {
            .overview-grid, .summary-grid { grid-template-columns: 1fr; }
            .summary-image-wrapper { order: -1; }
            .hero-title { font-size: 3.2rem; }
            .expert-banner { flex-direction: column; text-align: center; justify-content: center; }
            .expert-profile { justify-content: center; text-align: center; flex-direction: column; }
            .expert-cta { text-align: center; width: 100%; margin-top: 15px; }
        }

        @media (max-width: 768px) {
            .form-row, .inc-exc-grid { grid-template-columns: 1fr; gap: 15px; }
            .meta-boxes { grid-template-columns: 1fr; }
            .hero-banner { height: 350px; }
            .hero-title { font-size: 2.5rem; padding: 0 15px; }
            .section-title, .pricing-info h2 { font-size: 2.2rem; }
            .form-footer { flex-direction: column; align-items: flex-start; }
            .pricing-actions { flex-direction: column; width: 100%; }
            .pricing-actions a { width: 100%; text-align: center; }
            .inquiry-form { padding: 25px 20px; }
        }