/* ========================= 
    CORE VARIABLES 
 ========================= */ 
 :root { 
   --primary: #1FA67A; 
   --secondary: #3389D7; 
   --dark: #253444; 
   --light: #f8f9fa; 
   --text: #212529; 
   --white: #ffffff;
   --border-color: #dddddd;
   --shadow-light: rgba(0, 0, 0, 0.08);
   --shadow-medium: rgba(0, 0, 0, 0.15);
 } 
 
 /* ========================= 
    BASE RESET 
 ========================= */ 
 *, 
 *::before, 
 *::after { 
   box-sizing: border-box; 
 } 
 
 html {
   scroll-behavior: smooth;
 }

 body { 
   margin: 0; 
   padding: 0; 
   width: 100%; 
   font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; 
   color: var(--text); 
   background: var(--white); 
   line-height: 1.6; 
   /* Prevent fixed header overlap */ 
   padding-top: 80px; 
 } 
 
 img {
   max-width: 100%;
   height: auto;
   display: block;
 }

 a {
   text-decoration: none;
   color: inherit;
   transition: color 0.3s ease;
 }

 /* ========================= 
    TYPOGRAPHY 
 ========================= */ 
 h1 { font-size: 1.6rem; margin: 0 0 0.5rem; color: var(--dark); } 
 h2 { font-size: 1.2rem; margin: 0.75rem 0; color: var(--dark); } 
 h3, h4, h5 { margin: 0.5rem 0; color: var(--dark); } 
 
 /* ========================= 
    UTILITIES 
 ========================= */ 
 .text-holiday { color: var(--primary); } 
 .mrgt0 { margin-top: 0; } 
 .mrgb0 { margin-bottom: 0; } 
 .mrgt10 { margin-top: 10px; } 
 .mrgb20 { margin-bottom: 20px; } 
 .mrgb50 { margin-bottom: 50px; } 
 .paddingb98 { padding-bottom: 98px; } 
 
 /* ========================= 
    BUTTONS 
 ========================= */ 
 .btn { 
   display: inline-block;
   padding: 10px 20px;
   font-weight: 600;
   text-align: center;
   cursor: pointer;
   border-radius: 10px; 
   border: none;
   transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s; 
 } 
 
 .btn:hover { 
   transform: translateY(-2px); 
   box-shadow: 0 8px 20px var(--shadow-medium); 
 } 
 
 .btn-holiday { 
   background: var(--primary); 
   color: var(--white); 
   border: 1px solid #1e7e5f; 
 } 
 
 .btn-holiday:hover { 
   background: var(--secondary); 
   border-color: var(--secondary); 
 } 
 
 /* ========================= 
    HEADER & NAV 
 ========================= */ 
 .topLightBar { 
   background: rgba(37, 52, 68, 0.9); 
   color: var(--white); 
   position: fixed; 
   top: 0; 
   width: 100%; 
   z-index: 1000; 
   font-size: 12px; 
   height: 40px;
   display: flex;
   align-items: center;
   justify-content: center;
 } 
 
 .menuHeadSec { 
   background: rgba(37, 52, 68, 0.95); 
   position: sticky; 
   top: 40px; 
   z-index: 999; 
 } 
 
 .navbar-theme { 
   background: transparent; 
   border: 0; 
 } 
 
 .navbar-theme .navbar-nav > li > a { 
   color: var(--white); 
   padding: 10px 14px; 
   display: block;
 } 
 
 .navbar-theme .navbar-nav > .active > a, 
 .navbar-theme .navbar-nav a:hover { 
   background: var(--primary); 
   color: var(--white); 
 } 
 
 /* ========================= 
    BANNER 
 ========================= */ 
 .bigBannerSec { 
   background: var(--white) url("../img/bannerBg.jpg") center/cover no-repeat; 
   min-height: 260px; 
   display: flex;
   align-items: center;
   justify-content: center;
 } 
 
 .banner-container-class { 
   min-height: 500px; 
   background-color: #f0f0f0; 
   display: block !important; 
 } 
 
 /* ========================= 
    PACKAGE CARDS 
 ========================= */ 
 .packPage { 
   background: var(--white); 
   border-radius: 14px; 
   overflow: hidden; 
   box-shadow: 0 8px 24px var(--shadow-light); 
   transition: box-shadow 0.3s ease, transform 0.3s ease; 
   margin-bottom: 20px;
 } 
 
 .packPage:hover { 
   box-shadow: 0 12px 32px var(--shadow-medium); 
   transform: translateY(-5px);
 } 
 
 .packPage .img-container {
   overflow: hidden;
 }

 .packPage img { 
   width: 100%; 
   transition: transform 0.4s ease; 
 } 
 
 .packPage:hover img { 
   transform: scale(1.08); 
 } 
 
 .package-title {
   padding: 15px;
 }

 .package-title a { 
   color: var(--secondary); 
   text-transform: uppercase; 
   font-weight: 600; 
 } 
 
 .package-title a:hover { 
   text-decoration: underline; 
 } 
 
 .bottom-date { 
   font-size: 12px; 
   text-transform: uppercase; 
   color: #777; 
   padding: 0 15px 15px;
 } 
 
 /* ========================= 
    RIBBON 
 ========================= */ 
 .package-type { 
   background: var(--secondary); 
   color: var(--white); 
   font-size: 11px; 
   font-weight: 700; 
   padding: 6px 10px; 
   display: inline-block;
 } 
 
 /* ========================= 
    TABS 
 ========================= */ 
 .nav-tabs { 
   border: none; 
   display: flex;
   gap: 5px;
   margin-bottom: 0;
 } 
 
 .tab-content { 
   border: 1px solid var(--border-color); 
   border-radius: 0 0 8px 8px; 
   padding: 15px; 
   background: var(--white);
 } 
 
 /* ========================= 
    TESTIMONIAL 
 ========================= */ 
 .testimonial { 
   background: #f1f1f1; 
   border-radius: 8px; 
   padding: 20px; 
   font-style: italic; 
   position: relative; 
   margin: 20px 0;
 } 
 
 .testimonial::before {
   content: '"';
   font-size: 40px;
   color: var(--primary);
   position: absolute;
   top: 10px;
   left: 10px;
   opacity: 0.3;
 }

 /* ========================= 
    FOOTER 
 ========================= */ 
 .footer { 
   background: var(--primary); 
   color: var(--white); 
   padding: 40px 0; 
   text-align: center;
 } 
 
 .footer a { 
   color: var(--white); 
   text-decoration: none; 
   margin: 0 10px;
 } 
 
 .footer a:hover {
   text-decoration: underline;
 }

 /* ========================= 
    HOVER SAFE (DESKTOP ONLY) 
 ========================= */ 
 @media (hover: hover) { 
   .dropdown:hover .dropdown-menu { 
     display: block; 
   } 
 } 
 
 /* ========================= 
    RESPONSIVE 
 ========================= */ 
 @media (max-width: 768px) { 
   .bigBannerSec { min-height: 180px; } 
   h1 { font-size: 1.3rem; } 
   body { padding-top: 100px; } /* Adjust for potentially wrapped mobile menu */
   .menuHeadSec { top: 40px; }
   .navbar-theme .navbar-nav {
     flex-direction: column;
   }
 } 
 
