:root {
        --logo-blue: #0071f8;      /* Blue from logo waves */
        --logo-green: #32CD32;     /* Lime green from logo palm trees */
        --logo-dark: #4a4a4a;      /* Dark gray from logo text */
        --logo-accent: #1e90ff;    /* Lighter blue accent */
      }
      
      /* Icon color updates to match logo */
      .fa, .fas, .far, .fab {
        color: var(--logo-blue) !important;
      }
      
      .info-icon-01, .info-icon-02, .info-icon-03, .info-icon-04 {
        filter: hue-rotate(200deg) saturate(1.5) brightness(1.2);
      }
      
      .featured-icon {
        filter: hue-rotate(200deg) saturate(1.5) brightness(1.2);
      }
      
      .phone-icon, .email-icon {
        filter: hue-rotate(200deg) saturate(1.5) brightness(1.2);
      }
      
      /* Social media icons - blue theme */
      .social-links .fa {
        color: var(--logo-blue) !important;
      }
      
      .social-links .fa:hover {
        color: var(--logo-green) !important;
      }
      
      /* Button colors */
      .icon-button a {
        background-color: var(--logo-blue) !important;
        color: white !important;
      }
      
      .icon-button a:hover {
        background-color: var(--logo-green) !important;
      }
      
      /* Custom styles for booking modal */
      .booking-modal .modal-content {
        border-radius: 15px;
        border: none;
        box-shadow: 0 10px 30px rgba(0,0,0,0.2);
      }
      
      .booking-modal .modal-header {
        background: linear-gradient(135deg, #f39c12, #e67e22);
        color: white;
        border-radius: 15px 15px 0 0;
        border: none;
      }
      
      .booking-modal .modal-title {
        font-weight: 600;
        font-size: 1.5rem;
      }
      
      .booking-modal .form-control {
        border-radius: 8px;
        border: 2px solid #e9ecef;
        padding: 12px 15px;
        transition: all 0.3s ease;
      }
      
      .booking-modal .form-control:focus {
        border-color: #f39c12;
        box-shadow: 0 0 0 0.2rem rgba(243, 156, 18, 0.25);
      }
      
      .booking-modal .btn-primary {
        background: linear-gradient(135deg, #f39c12, #e67e22);
        border: none;
        border-radius: 8px;
        padding: 12px 30px;
        font-weight: 600;
        transition: all 0.3s ease;
      }
      
      .booking-modal .btn-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(243, 156, 18, 0.4);
      }
      
      .booking-modal .form-label {
        font-weight: 600;
        color: #495057;
        margin-bottom: 8px;
      }
      
      .booking-modal .modal-body {
        padding: 30px;
      }
      
      .success-message {
        display: none;
        background: #d4edda;
        color: #155724;
        padding: 15px;
        border-radius: 8px;
        margin-bottom: 20px;
        border: 1px solid #c3e6cb;
      }
      
      /* TripAdvisor Footer Styles */
      .tripadvisor-section {
        padding: 15px 0;
      }
      
      .tripadvisor-logo img {
        filter: brightness(0.9);
        transition: all 0.3s ease;
      }
      
      .tripadvisor-logo img:hover {
        filter: brightness(1.1);
        transform: scale(1.05);
      }
      
      .tripadvisor-button .btn {
        background: linear-gradient(135deg, #00af87, #00d4aa);
        border: none;
        color: white;
        font-weight: 600;
        padding: 8px 16px;
        border-radius: 20px;
        transition: all 0.3s ease;
        box-shadow: 0 2px 8px rgba(0, 175, 135, 0.3);
      }
      
      .tripadvisor-button .btn:hover {
        background: linear-gradient(135deg, #00d4aa, #00af87);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 175, 135, 0.4);
        color: white;
      }
      
      .tripadvisor-button .btn i {
        margin-right: 5px;
      }
      
      /* Contact Form Select Dropdown Styling */
      .contact-content #contact-form select,
      .contact-page #contact-form select {
        width: 100%;
        height: 44px;
        border-radius: 22px;
        border: 1px solid #ddd;
        background-color: #fff;
        color: #3a3a3a;
        font-size: 14px;
        font-weight: 400;
        padding: 0px 15px;
        cursor: pointer;
        transition: all 0.3s ease;
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233a3a3a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: right 15px center;
        background-size: 16px;
        padding-right: 45px;
      }
      
      .contact-content #contact-form select:focus,
      .contact-page #contact-form select:focus {
        border-color: var(--logo-blue);
        box-shadow: 0 0 0 0.2rem rgba(0, 113, 248, 0.25);
        outline: none;
      }
      
      .contact-content #contact-form select:hover,
      .contact-page #contact-form select:hover {
        border-color: var(--logo-blue);
      }
      
      .contact-content #contact-form select option,
      .contact-page #contact-form select option {
        padding: 10px 15px;
        background-color: #fff;
        color: #3a3a3a;
        font-size: 14px;
      }
      
      .contact-content #contact-form select option:checked,
      .contact-page #contact-form select option:checked {
        background-color: var(--logo-blue);
        color: #fff;
      }
      
      /* Add spacing between Tour Package Interest and Tour Requirements */
      .contact-content #contact-form fieldset:has(#subject) {
        margin-bottom: 25px;
      }
      
      .contact-content #contact-form fieldset:has(#message) {
        margin-top: 10px;
      }
      
      /* Responsive adjustments */
      @media (max-width: 768px) {
        .tripadvisor-section {
          text-align: center !important;
          margin-top: 20px;
        }
        
        .tripadvisor-logo {
          margin-bottom: 10px;
        }
        
        .contact-content #contact-form select,
        .contact-page #contact-form select {
          font-size: 16px; /* Prevents zoom on iOS */
        }
      }
      
      /* Package Detail Page Styling */
      .section-title {
        color: var(--logo-blue);
        font-weight: 600;
        margin-bottom: 25px;
        position: relative;
        padding-bottom: 10px;
      }
      
      .section-title::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 50px;
        height: 3px;
        background: linear-gradient(135deg, var(--logo-blue), var(--logo-green));
        border-radius: 2px;
      }
      
      /* Itinerary Styling */
      .itinerary-container {
        background: #f8f9fa;
        border-radius: 12px;
        padding: 25px;
        margin-top: 20px;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08);
      }
      
      .itinerary-list {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      
      .itinerary-item {
        display: flex;
        align-items: flex-start;
        margin-bottom: 20px;
        padding: 15px;
        background: white;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        transition: all 0.3s ease;
      }
      
      .itinerary-item:hover {
        transform: translateY(-2px);
        box-shadow: 0 4px 15px rgba(0,0,0,0.1);
      }
      
      .itinerary-item:last-child {
        margin-bottom: 0;
      }
      
      .day-number {
        background: linear-gradient(135deg, var(--logo-blue), var(--logo-green));
        color: white;
        padding: 8px 15px;
        border-radius: 20px;
        font-weight: 600;
        font-size: 14px;
        margin-right: 15px;
        min-width: 70px;
        text-align: center;
        flex-shrink: 0;
      }
      
      .day-content {
        flex: 1;
        color: #333;
        line-height: 1.6;
        font-size: 15px;
      }
      
      /* Sidebar Styling */
      .sidebar-content {
        position: sticky;
        top: 20px;
      }
      
      .info-card {
        background: white;
        border-radius: 12px;
        padding: 15px;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08);
        border: 1px solid #e9ecef;
        margin-bottom: 20px;
        transition: all 0.3s ease;
        min-height: 200px;
      }
      
      .info-card:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0,0,0,0.12);
      }
      
      .card-title {
        color: var(--logo-blue);
        font-weight: 600;
        margin-bottom: 20px;
        margin-top: 25px;
        font-size: 18px;
        border-bottom: 2px solid #f0f0f0;
        padding-bottom: 10px;
      }
      
      .card-title:first-child {
        margin-top: 0;
      }
      
      /* Info Table Styling */
      .info-list {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      
      .info-item {
        display: flex;
        align-items: left;
        padding: 18px 0;
        border-bottom: 1px solid #f0f0f0;
        transition: all 0.3s ease;
        min-height: 50px;
        min-width: 100px;
        margin-left: 20px;
      }
      
      .info-item:hover {
        background: #f8f9fa;
        margin: 0 -15px;
        padding: 12px 15px;
        border-radius: 6px;
      }
      
      .info-item:last-child {
        border-bottom: none;
      }
      
      .info-item i {
        color: var(--logo-blue);
        width: 20px;
        margin-right: 12px;
        font-size: 16px;
      }
      
      .info-label {
        font-weight: 500;
        color: #555;
        margin-right: 12px;
        min-width: 90px;
        font-size: 15px;
      }
      
      .info-value {
        color: #333;
        font-weight: 600;
        flex: 1;
        font-size: 15px;
      }
      
      /* Lists Styling */
      .highlights-list,
      .inclusions-list,
      .exclusions-list,
      .tips-list {
        list-style: none;
        padding: 0;
        margin: 0;
      }
      
      .highlights-list li,
      .inclusions-list li,
      .exclusions-list li,
      .tips-list li {
        display: flex;
        align-items: flex-start;
        padding: 12px 0;
        color: #555;
        line-height: 1.6;
        margin-bottom: 8px;
      }
      
      .highlights-list li i {
        color: var(--logo-green);
        margin-right: 10px;
        margin-top: 2px;
        font-size: 14px;
      }
      
      .inclusions-list li i {
        color: var(--logo-green);
        margin-right: 10px;
        margin-top: 2px;
        font-size: 14px;
      }
      
      .exclusions-list li i {
        color: #dc3545;
        margin-right: 10px;
        margin-top: 2px;
        font-size: 14px;
      }
      
      .tips-list li i {
        color: var(--logo-blue);
        margin-right: 10px;
        margin-top: 2px;
        font-size: 14px;
      }
      
      /* Booking Button */
      .booking-section {
        text-align: center;
      }
      
      .booking-btn {
        display: inline-block;
        background: linear-gradient(135deg, var(--logo-blue), var(--logo-green));
        color: white;
        padding: 15px 30px;
        border-radius: 25px;
        text-decoration: none;
        font-weight: 600;
        font-size: 16px;
        transition: all 0.3s ease;
        box-shadow: 0 4px 15px rgba(0, 113, 248, 0.3);
        width: 100%;
        text-align: center;
      }
      
      .booking-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0, 113, 248, 0.4);
        color: white;
        text-decoration: none;
      }
      
      .booking-btn i {
        margin-right: 8px;
      }
      
      /* FAQ Section Styling */
      .faq-section {
        background: #f8f9fa;
        padding: 60px 0;
      }
      
      .accordion {
        border-radius: 12px;
        overflow: hidden;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08);
      }
      
      .accordion-item {
        border: none;
        margin-bottom: 2px;
        border-radius: 8px;
        overflow: hidden;
      }
      
      .accordion-button {
        background: white;
        border: none;
        padding: 20px 25px;
        font-weight: 600;
        color: #333;
        font-size: 16px;
        transition: all 0.3s ease;
      }
      
      .accordion-button:not(.collapsed) {
        background: var(--logo-blue);
        color: white;
        box-shadow: none;
      }
      
      .accordion-button:focus {
        box-shadow: 0 0 0 0.2rem rgba(0, 113, 248, 0.25);
        border: none;
      }
      
      .accordion-button::after {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23333'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
        transition: all 0.3s ease;
      }
      
      .accordion-button:not(.collapsed)::after {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
      }
      
      .accordion-body {
        background: white;
        padding: 25px;
        color: #555;
        line-height: 1.6;
        font-size: 15px;
      }
      
      /* Responsive Design */
      @media (max-width: 768px) {
        .itinerary-item {
          flex-direction: column;
          text-align: center;
        }
        
        .day-number {
          margin-right: 0;
          margin-bottom: 10px;
        }
        
        .info-item {
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }
        
        .info-label {
          min-width: auto;
          margin-bottom: 5px;
        }
        
        .sidebar-content {
          position: static;
          margin-top: 30px;
        }
        
        .booking-btn {
          padding: 12px 20px;
          font-size: 14px;
        }
        
        .accordion-button {
          padding: 15px 20px;
          font-size: 14px;
        }
        
        .accordion-body {
          padding: 20px;
        }
      }