 /* =========================================================
   LOGO
========================================================= */

 .tg-header-4-bootom .logo img {

     max-width: 95px;

     width: 100%;

     height: auto;

     display: block;

 }


 /* =========================================================
   HEADER NAVIGATION
========================================================= */

 .tgmenu__nav {

     margin-left: 70px;

 }


 .tgmenu__main-menu ul li a {

     white-space: nowrap;

 }


 /* =========================================================
   TOP SOCIAL
========================================================= */

 .tg-header-top-social ul {

     display: flex;

     align-items: center;

     gap: 12px;

     margin: 0;

     padding: 0;

     list-style: none;

 }


 .tg-header-top-social ul li a {

     display: flex;

     align-items: center;

     justify-content: center;

     width: 30px;

     height: 30px;

 }


 /* =========================================================
   PHONE
========================================================= */

 .tg-header-contact-number span {

     display: block;

     font-size: 11px;

     line-height: 1;

     margin-bottom: 4px;

     opacity: .7;

 }


 .tg-header-contact-number a {

     font-weight: 600;

     white-space: nowrap;

 }


 /* =========================================================
   PLAN YOUR TRIP BUTTON
========================================================= */

 .tg-btn-header {

     display: inline-flex;

     align-items: center;

     gap: 8px;

     white-space: nowrap;

 }


 /* =========================================================
   SEARCH WRAPPER
========================================================= */

 .saraswathi-search-wrapper {

     width: 100%;

     background: #ffffff;

     padding: 10px 0;

     border-bottom: 1px solid #eeeeee;

     position: relative;

     z-index: 90;

 }


 /* =========================================================
   SEARCH FORM
========================================================= */

 .saraswathi-search-form {

     width: 100%;

     margin: 0;

 }


 .saraswathi-search-box {

     width: 100%;

     max-width: 650px;

     height: 42px;

     margin: 0 auto;

     border: 1px solid #e3e3e3;

     border-radius: 30px;

     display: flex;

     align-items: center;

     background: #ffffff;

     padding: 4px 5px 4px 16px;

     box-shadow: 0 3px 15px rgba(0, 0, 0, 0.05);

     transition: all .3s ease;

 }


 .saraswathi-search-box:focus-within {

     border-color: #2d8b57;

     box-shadow: 0 4px 18px rgba(45, 139, 87, 0.12);

 }


 /* =========================================================
   SEARCH ICON
========================================================= */

 .saraswathi-search-box .search-icon {

     font-size: 14px;

     color: #777;

     margin-right: 10px;

 }


 /* =========================================================
   SEARCH INPUT
========================================================= */

 .saraswathi-search-box input {

     border: 0;

     outline: 0;

     background: transparent;

     flex: 1;

     width: 100%;

     min-width: 0;

     height: 32px;

     padding: 0 8px;

     font-size: 13px;

     color: #333;

 }


 .saraswathi-search-box input::placeholder {

     color: #999;

 }


 /* =========================================================
   SEARCH BUTTON
========================================================= */

 .saraswathi-search-box button {

     border: 0;

     outline: 0;

     height: 34px;

     min-width: 90px;

     padding: 0 15px;

     border-radius: 25px;

     background: #2d8b57;

     color: #ffffff;

     display: flex;

     align-items: center;

     justify-content: center;

     gap: 7px;

     font-size: 12px;

     font-weight: 600;

     cursor: pointer;

     transition: all .3s ease;

 }


 .saraswathi-search-box button:hover {

     transform: translateY(-1px);

     opacity: .9;

 }


 .saraswathi-search-box button i {

     font-size: 12px;

 }


 /* =========================================================
   MOBILE SEARCH
========================================================= */

 @media (max-width: 1199px) {

     .saraswathi-search-wrapper {

         padding: 8px 15px;

     }

 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 1199px) {

     .tg-header-4-bootom .logo img {

         max-width: 120px;

     }

 }

 @media (max-width: 767px) {

     .tg-header-4-bootom {

         padding: 12px 0 !important;

     }


     .tg-header-4-bootom .logo img {

         max-width: 110px;

     }


     .saraswathi-search-wrapper {

         padding: 8px 12px;

     }


     .saraswathi-search-box {

         height: 40px;

         max-width: 100%;

         padding-left: 13px;

     }


     .saraswathi-search-box button {

         min-width: 42px;

         width: 42px;

         height: 32px;

         padding: 0;

     }


     .saraswathi-search-box button span {

         display: none;

     }


     .saraswathi-search-box input {

         font-size: 12px;

     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 480px) {

     .tg-header-4-bootom .logo img {

         max-width: 100px;

     }


     .saraswathi-search-box {

         height: 38px;

     }


     .saraswathi-search-box input {

         font-size: 11px;

     }


     .saraswathi-search-box .search-icon {

         font-size: 12px;

         margin-right: 5px;

     }


     .saraswathi-search-box button {

         width: 38px;

         min-width: 38px;

         height: 30px;

     }

 }


 /* =========================================================
   MOBILE MENU LOGO
========================================================= */

 .tgmobile__menu .nav-logo img {

     max-width: 160px;

     width: 100%;

     height: auto;

 }


 /* =========================================================
   OFF CANVAS LOGO
========================================================= */

 .offCanvas__logo img {

     max-width: 170px;

     width: 100%;

     height: auto;

 }


 /* =========================================================
   MOBILE MENU SEARCH
========================================================= */

 .tgmobile__search form {

     display: flex;

     align-items: center;

 }


 .tgmobile__search input {

     width: 100%;

 }


 /* =========================================================
   PREVENT HORIZONTAL OVERFLOW
========================================================= */

 html,
 body {

     max-width: 100%;

     overflow-x: hidden;

 }


 header {

     max-width: 100%;

 }


 /* =========================================================
   MOBILE HEADER
========================================================= */

 @media (max-width: 1199px) {

     .tgmenu__wrap {

         width: 100%;

     }

 }



 /* =========================================================
   FIX DROPDOWN / SUB-MENU LAYERING
   ========================================================= */

 .tg-header-4-bootom {
     position: relative;
     z-index: 1000;
 }

 .tgmenu__nav,
 .tgmenu__navbar-wrap,
 .tgmenu__main-menu,
 .tgmenu__main-menu .navigation {
     position: relative;
     z-index: 1001;
 }

 .tgmenu__main-menu .navigation>li {
     position: relative;
     z-index: 1002;
 }

 .tgmenu__main-menu .navigation>li>.sub-menu {
     position: absolute;
     z-index: 9999 !important;
 }

 /* Search stays below navigation dropdown */
 .saraswathi-search-wrapper {
     position: relative;
     z-index: 90;
 }




 /* =========================================================
            HERO BANNER
            ========================================================= */

 .tg-hero-area.tg-hero-tu-2-wrapper {

     width: 100%;

     height: 640px;

     min-height: 620px;

     background-position: center center;

     background-repeat: no-repeat;

     background-size: cover;

     position: relative;

 }


 /* Remove any accidental hero content */

 .tg-hero-area .tg-hero-3-content {

     display: none !important;

 }


 /* =========================================================
   BOOKING SECTION
========================================================= */

 .tg-booking-area {

     width: 100%;

     background: #ffffff;

     padding: -2px 0 11px;

     position: relative;

     z-index: 10;

 }


 /* =========================================================
   BOOKING FORM
========================================================= */

 .tg-booking-area .tg-booking-form-item {

     margin-top: -35px;

     position: relative;

     z-index: 20;

     background: #ffffff;

     border-radius: 12px;

     box-shadow: 0 10px 40px rgba(0, 0, 0, 0.10);

     padding: 22px 25px;

 }


 /* =========================================================
   FORM INPUT GROUP
========================================================= */

 .tg-booking-area .tg-booking-form-input-group {

     width: 100%;

     gap: 10px;

 }


 /* =========================================================
   FORM FIELDS
========================================================= */

 .tg-booking-area .tg-booking-form-parent-inner {

     flex: 1;

     min-width: 0;

 }


 .tg-booking-area .tg-booking-form-title {

     display: block;

     font-size: 12px;

     font-weight: 600;

     color: #333;

 }


 /* =========================================================
   INPUT FIELD
========================================================= */

 .tg-booking-area .tg-booking-add-input-field,

 .tg-booking-area .tg-booking-add-input-date {

     min-height: 52px;

     border: 1px solid #e5e5e5;

     border-radius: 7px;

     background: #ffffff;

 }


 .tg-booking-area .tg-booking-add-input-field {

     display: flex;

     align-items: center;

     justify-content: space-between;

     padding: 0 15px;

     cursor: pointer;

 }


 .tg-booking-area .tg-booking-add-input-field:hover {

     border-color: #2d8b57;

 }


 /* =========================================================
   INPUT DATE
========================================================= */

 .tg-booking-area .tg-booking-add-input-date {

     display: flex;

     align-items: center;

     position: relative;

 }


 .tg-booking-area .tg-booking-add-input-date input {

     width: 100%;

     height: 50px;

     border: 0;

     outline: 0;

     background: transparent;

     padding: 0 40px 0 15px;

     font-size: 13px;

 }


 .tg-booking-area .tg-booking-add-input-date>span {

     position: absolute;

     right: 15px;

     color: #777;

 }


 /* =========================================================
   LOCATION / USER ICON
========================================================= */

 .tg-booking-area .location {

     color: #2d8b57;

     font-size: 15px;

 }


 /* =========================================================
   SEARCH BUTTON
========================================================= */

 .tg-booking-area .tg-booking-form-search-btn {

     flex-shrink: 0;

 }


 .tg-booking-area .bk-search-button {

     height: 52px;

     border: 0;

     border-radius: 7px;

     padding: 0 28px;

     background: #2d8b57;

     color: #ffffff;

     font-size: 13px;

     font-weight: 600;

     transition: all .3s ease;

 }


 .tg-booking-area .bk-search-button:hover {

     background: #236d45;

     transform: translateY(-1px);

 }


 /* =========================================================
   DROPDOWN
========================================================= */

 .tg-booking-area .tg-booking-form-location-list {

     border-radius: 8px;

     box-shadow: 0 10px 30px rgba(0, 0, 0, .12);

 }


 /* =========================================================
   RESPONSIVE - LAPTOP
========================================================= */

 @media (max-width: 1399px) {

     .tg-hero-area.tg-hero-tu-2-wrapper {

         height: 520px;

         min-height: 520px;

     }


     .tg-booking-area .tg-booking-form-item {

         padding: 20px;

     }


     .tg-booking-area .tg-booking-form-input-group {

         gap: 7px;

     }


     .tg-booking-area .tg-booking-add-input-field,

     .tg-booking-area .tg-booking-add-input-date,

     .tg-booking-area .bk-search-button {

         min-height: 48px;

         height: 48px;

     }

 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 991px) {

     .tg-hero-area.tg-hero-tu-2-wrapper {

         height: 450px;

         min-height: 450px;

     }


     .tg-booking-area .tg-booking-form-input-group {

         flex-wrap: wrap;

     }


     .tg-booking-area .tg-booking-form-parent-inner {

         flex: 0 0 calc(50% - 8px);

     }


     .tg-booking-area .tg-booking-form-search-btn {

         flex: 0 0 100%;

     }


     .tg-booking-area .bk-search-button {

         width: 100%;

     }

 }


 /* =========================================================
   MOBILE
========================================================= */

 @media (max-width: 767px) {

     .tg-hero-area.tg-hero-tu-2-wrapper {

         height: 300px;

         min-height: 300px;

         background-position: center center;

     }


     .tg-booking-area {

         padding: 0 15px 25px;

     }


     .tg-booking-area .container {

         padding: 0;

     }


     .tg-booking-area .tg-booking-form-item {

         margin-top: -25px;

         padding: 18px 15px;

         border-radius: 10px;

     }


     .tg-booking-area .tg-booking-form-input-group {

         display: block !important;

     }


     .tg-booking-area .tg-booking-form-parent-inner {

         width: 100%;

         margin-right: 0 !important;

         margin-bottom: 15px !important;

     }


     .tg-booking-area .tg-booking-form-search-btn {

         width: 100%;

         margin-bottom: 0 !important;

     }


     .tg-booking-area .bk-search-button {

         width: 100%;

         height: 50px;

     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 480px) {

     .tg-hero-area.tg-hero-tu-2-wrapper {

         height: 250px;

         min-height: 250px;

     }


     .tg-booking-area .tg-booking-form-item {

         margin-top: 2px;

         padding: 15px 12px;

     }


     .tg-booking-area .tg-booking-add-input-field,

     .tg-booking-area .tg-booking-add-input-date {

         min-height: 48px;

     }


     .tg-booking-area .tg-booking-add-input-date input {

         height: 48px;

     }

 }


 /* =========================================================
   INDIAN TOUR DESTINATIONS
========================================================= */

 .indian-destination-section {
     padding: 80px 0;
     background: #f8f9f7;
 }

 /* Heading */

 .destination-section-heading {
     max-width: 700px;
     margin: 0 auto 45px;
 }

 .destination-section-heading span {
     display: inline-block;
     color: #2d8b57;
     font-size: 14px;
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 1.5px;
     margin-bottom: 8px;
 }

 .destination-section-heading h2 {
     margin: 0 0 12px;
     font-size: 38px;
     line-height: 1.2;
     font-weight: 700;
     color: #1c1c1c;
 }

 .destination-section-heading p {
     margin: 0;
     color: #777;
     font-size: 15px;
     line-height: 1.7;
 }


 /* =========================================================
   DESTINATION GRID
========================================================= */

 .indian-destination-grid {
     display: grid;
     grid-template-columns: repeat(6, 1fr);
     gap: 18px;
 }


 /* =========================================================
   DESTINATION BOX
========================================================= */

 .indian-destination-box {
     position: relative;
     min-height: 145px;
     padding: 25px 20px;
     display: flex;
     align-items: flex-end;

     background: #ffffff;
     border: 1px solid #e8e8e8;
     border-radius: 12px;

     text-decoration: none !important;
     overflow: hidden;

     transition:
         transform 0.3s ease,
         box-shadow 0.3s ease,
         border-color 0.3s ease;
 }


 /* Decorative circle */

 .indian-destination-box::before {
     content: "";
     position: absolute;
     width: 85px;
     height: 85px;
     border-radius: 50%;
     background: rgba(45, 139, 87, 0.08);
     top: -30px;
     right: -25px;
     transition: 0.3s ease;
 }


 /* Small decorative line */

 .indian-destination-box::after {
     content: "";
     position: absolute;
     width: 35px;
     height: 3px;
     background: #2d8b57;
     left: 20px;
     top: 25px;
     border-radius: 5px;
 }


 /* Content */

 .destination-box-content {
     position: relative;
     z-index: 2;
     width: 100%;
 }

 .destination-box-content h3 {
     margin: 0 0 10px;
     color: #222;
     font-size: 19px;
     line-height: 1.3;
     font-weight: 700;
 }

 .destination-box-content span {
     display: inline-flex;
     align-items: center;
     gap: 7px;

     color: #2d8b57;
     font-size: 11px;
     font-weight: 600;
     text-transform: uppercase;
     letter-spacing: 0.5px;
 }

 .destination-box-content span i {
     font-size: 10px;
     transition: transform 0.3s ease;
 }


 /* =========================================================
   HOVER
========================================================= */

 .indian-destination-box:hover {
     transform: translateY(-6px);
     border-color: #2d8b57;
     box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
 }

 .indian-destination-box:hover::before {
     transform: scale(1.4);
 }

 .indian-destination-box:hover .destination-box-content span i {
     transform: translateX(4px);
 }


 /* =========================================================
   LARGE LAPTOP
========================================================= */

 @media (max-width: 1399px) {

     .indian-destination-grid {
         grid-template-columns: repeat(4, 1fr);
     }

 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 991px) {

     .indian-destination-section {
         padding: 65px 0;
     }

     .destination-section-heading {
         margin-bottom: 35px;
     }

     .destination-section-heading h2 {
         font-size: 32px;
     }

     .indian-destination-grid {
         grid-template-columns: repeat(3, 1fr);
         gap: 15px;
     }

 }


 /* =========================================================
   MOBILE — 2 BOXES PER ROW
========================================================= */

 @media (max-width: 767px) {

     .indian-destination-section {
         padding: 50px 12px;
     }

     .destination-section-heading {
         margin-bottom: 28px;
     }

     .destination-section-heading span {
         font-size: 12px;
     }

     .destination-section-heading h2 {
         font-size: 27px;
     }

     .destination-section-heading p {
         font-size: 13px;
     }

     .indian-destination-grid {
         grid-template-columns: repeat(2, 1fr);
         gap: 12px;
     }

     .indian-destination-box {
         min-height: 125px;
         padding: 20px 15px;
         border-radius: 10px;
     }

     .indian-destination-box::after {
         left: 15px;
         top: 20px;
     }

     .destination-box-content h3 {
         font-size: 16px;
         margin-bottom: 8px;
     }

     .destination-box-content span {
         font-size: 9px;
     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 400px) {

     .indian-destination-grid {
         gap: 10px;
     }

     .indian-destination-box {
         min-height: 115px;
         padding: 17px 12px;
     }

     .destination-box-content h3 {
         font-size: 14px;
     }

     .destination-box-content span {
         font-size: 8px;
     }

 }


 /* =========================================================
   INDIAN TOUR DESTINATIONS
========================================================= */

 .indian-destination-section {
     padding: 75px 0;
     background: #ffffff;
 }


 /* =========================================================
   SECTION HEADING
========================================================= */

 .destination-section-heading {
     max-width: 680px;
     margin: 0 auto 42px;
 }

 .destination-section-heading span {
     display: block;
     margin-bottom: 8px;

     color: #2d8b57;
     font-size: 13px;
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 1.5px;
 }

 .destination-section-heading h2 {
     margin: 0 0 12px;

     color: #202020;
     font-size: 38px;
     line-height: 1.2;
     font-weight: 700;
 }

 .destination-section-heading p {
     margin: 0;

     color: #777;
     font-size: 14px;
     line-height: 1.7;
 }


 /* =========================================================
   DESTINATION GRID
========================================================= */

 .indian-destination-grid {
     display: grid;
     grid-template-columns: repeat(6, minmax(0, 1fr));
     gap: 18px;
 }


 /* =========================================================
   DESTINATION CARD
========================================================= */

 .destination-card {
     display: block;
     padding: 8px;

     background: #ffffff;

     border: 1px solid #eeeeee;
     border-radius: 14px;

     text-decoration: none !important;

     box-shadow: 0 4px 18px rgba(0, 0, 0, 0.045);

     transition:
         transform .3s ease,
         box-shadow .3s ease,
         border-color .3s ease;
 }


 /* =========================================================
   IMAGE
========================================================= */

 .destination-image {
     width: 100%;
     height: 125px;

     overflow: hidden;
     border-radius: 10px;

     background: #f1f1f1;
 }

 .destination-image img {
     width: 100%;
     height: 100%;

     display: block;

     object-fit: cover;

     transition: transform .5s ease;
 }


 /* =========================================================
   CARD CONTENT
========================================================= */

 .destination-info {
     padding: 13px 8px 8px;
 }

 .destination-info h3 {
     margin: 0 0 7px;

     color: #222;

     font-size: 16px;
     line-height: 1.3;
     font-weight: 700;
 }

 .destination-info span {
     display: inline-flex;
     align-items: center;
     gap: 6px;

     color: #2d8b57;

     font-size: 10px;
     font-weight: 700;

     text-transform: uppercase;
     letter-spacing: .5px;
 }

 .destination-info span i {
     font-size: 9px;

     transition: transform .3s ease;
 }


 /* =========================================================
   HOVER
========================================================= */

 .destination-card:hover {
     transform: translateY(-5px);

     border-color: rgba(45, 139, 87, .35);

     box-shadow: 0 12px 30px rgba(0, 0, 0, .09);
 }

 .destination-card:hover .destination-image img {
     transform: scale(1.08);
 }

 .destination-card:hover .destination-info span i {
     transform: translateX(4px);
 }


 /* =========================================================
   LARGE LAPTOP
========================================================= */

 @media (max-width: 1399px) {

     .indian-destination-grid {
         grid-template-columns: repeat(4, minmax(0, 1fr));
     }

 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 991px) {

     .indian-destination-section {
         padding: 60px 0;
     }

     .indian-destination-grid {
         grid-template-columns: repeat(3, minmax(0, 1fr));
         gap: 15px;
     }

     .destination-image {
         height: 120px;
     }

 }


 /* =========================================================
   MOBILE — EXACTLY 2 CARDS PER ROW
========================================================= */

 @media (max-width: 767px) {

     .indian-destination-section {
         padding: 50px 12px;
     }

     .destination-section-heading {
         margin-bottom: 30px;
     }

     .destination-section-heading h2 {
         font-size: 28px;
     }

     .destination-section-heading p {
         font-size: 13px;
     }

     .indian-destination-grid {
         grid-template-columns: repeat(2, minmax(0, 1fr));
         gap: 12px;
     }

     .destination-card {
         padding: 6px;
         border-radius: 11px;
     }

     .destination-image {
         height: 105px;
         border-radius: 8px;
     }

     .destination-info {
         padding: 10px 6px 6px;
     }

     .destination-info h3 {
         font-size: 14px;
         margin-bottom: 5px;
     }

     .destination-info span {
         font-size: 8px;
     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 400px) {

     .indian-destination-grid {
         gap: 9px;
     }

     .destination-image {
         height: 95px;
     }

     .destination-info h3 {
         font-size: 13px;
     }

 }


 .pt-120 {
     padding-top: 24px;
 }

 .pt-130 {
     padding-top: 60px;
 }

 .pt-130 {
     padding-top: 22px;
 }

 .tg-footer-su-2-wrapper .tg-footer-copyright {
     padding: 19px 5px;
 }

 /* Saraswathi Holidays hero slider */
 .saraswathi-hero-slider {
     overflow: hidden;
     isolation: isolate;
 }

 .saraswathi-hero-slide {
     position: absolute;
     inset: 0;
     z-index: 1;
     opacity: 0;
     transition: opacity .75s ease-in-out;
 }

 .saraswathi-hero-slide.is-active {
     z-index: 2;
     opacity: 1;
 }

 .saraswathi-hero-slide img {
     display: block;
     width: 100%;
     height: 100%;
     object-fit: cover;
     object-position: center;
 }

 .saraswathi-hero-nav {
     position: absolute;
     top: 50%;
     z-index: 3;
     width: 52px;
     height: 52px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 0;
     color: #fff;
     background: rgba(0, 0, 0, .34);
     border: 1px solid rgba(255, 255, 255, .8);
     border-radius: 50%;
     font-size: 22px;
     line-height: 1;
     transform: translateY(-50%);
     transition: background-color .25s ease, border-color .25s ease, transform .25s ease;
 }

 .saraswathi-hero-nav:hover,
 .saraswathi-hero-nav:focus-visible {
     color: #fff;
     background: #560CE3;
     border-color: #560CE3;
     transform: translateY(-50%) scale(1.08);
 }

 .saraswathi-hero-prev {
     left: 32px;
 }

 .saraswathi-hero-next {
     right: 32px;
 }

 @media (max-width: 767px) {
     .saraswathi-hero-slide img {
         object-position: center center;
     }

     .saraswathi-hero-nav {
         width: 46px;
         height: 46px;
         font-size: 19px;
     }

     .saraswathi-hero-prev {
         left: 14px;
     }

     .saraswathi-hero-next {
         right: 14px;
     }
 }

 /* Saraswathi Holidays responsive header actions */
 .header-quote-btn {
     white-space: nowrap;
 }

 .header-mobile-menu-btn {
     width: 46px;
     height: 46px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 0;
     color: #560CE3;
     background: #fff;
     border: 1px solid #dedede;
     border-radius: 6px;
     font-size: 21px;
     line-height: 1;
     transition: color .2s ease, background-color .2s ease, border-color .2s ease;
 }

 .header-mobile-menu-btn:hover,
 .header-mobile-menu-btn:focus-visible {
     color: #fff;
     background: #560CE3;
     border-color: #560CE3;
 }

 @media (min-width: 1200px) {
     .header-mobile-menu-btn {
         display: none !important;
     }
 }

 /* Floating contact actions */
 .floating-contact-actions {
     position: fixed;
     left: 24px;
     bottom: 24px;
     z-index: 999;
     display: flex;
     flex-direction: column;
     gap: 12px;
 }

 .floating-contact-action {
     width: 40px;
     height: 40px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     border: 2px solid #fff;
     border-radius: 50%;
     color: #fff;
     font-size: 24px;
     box-shadow: 0 8px 20px rgba(0, 0, 0, .2);
     transition: transform .25s ease, box-shadow .25s ease;
 }

 .floating-contact-action:hover,
 .floating-contact-action:focus {
     color: #fff;
     transform: translateY(-3px);
     box-shadow: 0 12px 24px rgba(0, 0, 0, .28);
 }

 .floating-whatsapp {
     background-color: #25D366;
 }

 .floating-call {
     background-color: #560CE3;
 }

 @media (max-width: 575px) {
     .floating-contact-actions {
         left: 16px;
         bottom: 16px;
         gap: 1px;
     }

     .floating-contact-action {
         width: 39px;
         height: 39px;
         font-size: 21px;
     }
 }


 .tg-cta-3-apps p,
 .tg-cta-3-apps p a,
 .tg-cta-3-apps p span,
 .tg-cta-3-apps p i {
     color: #fff !important;
 }

 .tg-cta-3-apps p a:hover {
     color: #fff !important;
     opacity: 0.85;
 }


 .tg-header-top-social span,
 .tg-header-top-social ul li a,
 .tg-header-top-social ul li a i {
     color: #fff !important;
 }

 .tg-header-top-social ul li a:hover,
 .tg-header-top-social ul li a:hover i {
     color: #fff !important;
     opacity: 0.8;
 }


 .mb-45 {
     margin-bottom: 1px;
 }

 .pb-105 {
     padding-bottom: 55px;
 }

 .pt-140 {
     padding-top: 56px;
 }

 /* Main Dropdown */
 .tgmenu__main-menu .navigation>li>.sub-menu {
     width: 420px;
     padding: 15px;
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 5px 15px;
 }

 /* Dropdown Items */
 .tgmenu__main-menu .navigation>li>.sub-menu>li {
     width: 100%;
     margin: 0;
 }

 /* Dropdown Links */
 .tgmenu__main-menu .navigation>li>.sub-menu>li>a {
     display: block;
     padding: 10px 12px;
     border-radius: 5px;
     transition: all 0.3s ease;
 }

 /* Hover */
 .tgmenu__main-menu .navigation>li>.sub-menu>li>a:hover {
     background: #f5f5f5;
     padding-left: 17px;
 }

 /* Prevent second-level dropdown from breaking */
 .tgmenu__main-menu .navigation>li>.sub-menu>li {
     position: relative;
 }



 /* =========================================================
   SARASWATHI HOLIDAYS - PROFESSIONAL HEADE========================================================= */

 :root {
     --saras-primary: #5b16e8;
     --saras-blue: #2455a4;
     --saras-text: #171717;
     --saras-muted: #555;
     --saras-border: #eeeeee;
 }


 /* =========================================================
   HEADER RESET
========================================================= */

 .saras-header {
     position: relative;
     z-index: 9999;
 }

 .saras-header * {
     box-sizing: border-box;
 }


 /* =========================================================
   TOP BAR
========================================================= */

 .saras-topbar {
     background: var(--saras-primary);
     color: #fff;
     min-height: 48px;
 }

 .saras-topbar-inner {
     width: 100%;
     max-width: 1790px;
     margin: auto;
     padding: 0 25px;
     min-height: 48px;

     display: flex;
     align-items: center;
     justify-content: space-between;
 }

 .saras-top-left,
 .saras-top-right {
     display: flex;
     align-items: center;
 }

 .saras-top-left a,
 .saras-top-right a {
     color: #fff;
     text-decoration: none;
     font-size: 14px;
     font-weight: 500;
 }

 .saras-top-left i {
     margin-right: 7px;
 }

 .saras-top-divider {
     width: 1px;
     height: 18px;
     background: rgba(255, 255, 255, .45);
     margin: 0 18px;
 }

 .saras-follow {
     margin-right: 14px;
     font-size: 14px;
 }

 .saras-social {
     display: flex;
     align-items: center;
     gap: 18px;
 }

 .saras-social a {
     display: inline-flex;
     align-items: center;
     justify-content: center;
 }


 /* =========================================================
   MAIN HEADER
========================================================= */

 .saras-main-header {
     height: 82px;
     background: #fff;
     position: relative;
     z-index: 10000;
     border-bottom: 1px solid #f1f1f1;
 }

 .saras-main-inner {
     width: 100%;
     max-width: 1790px;
     height: 100%;
     margin: auto;
     padding: 0 25px;

     display: flex;
     align-items: center;
 }


 /* =========================================================
   LOGO
========================================================= */

 .saras-logo {
     width: 135px;
     min-width: 135px;

     display: flex;
     align-items: center;
 }

 .saras-logo a {
     display: flex;
     align-items: center;
 }

 .saras-logo img {
     width: 125px;
     height: auto;

     max-height: 72px;

     object-fit: contain;
     display: block;
 }


 /* =========================================================
   DESKTOP NAVIGATION
========================================================= */

 .saras-desktop-nav {
     flex: 1;
     height: 100%;
     margin-left: 45px;

     display: flex;
     align-items: center;
 }

 .saras-desktop-nav>ul {
     margin: 0;
     padding: 0;

     list-style: none;

     display: flex;
     align-items: center;

     gap: 31px;

     height: 100%;
 }

 .saras-desktop-nav>ul>li {
     height: 100%;
     display: flex;
     align-items: center;

     position: static;
 }

 .saras-desktop-nav>ul>li>a {
     display: flex;
     align-items: center;
     gap: 7px;

     height: 100%;

     color: var(--saras-text);

     font-size: 16px;
     font-weight: 600;

     text-decoration: none;

     white-space: nowrap;

     transition: color .2s ease;
 }

 .saras-desktop-nav>ul>li:hover>a {
     color: var(--saras-primary);
 }


 /* Arrow */

 .saras-nav-arrow {
     font-size: 11px;
     transition: transform .2s ease;
 }

 .saras-desktop-nav>ul>li:hover .saras-nav-arrow {
     transform: rotate(180deg);
 }


 /* =========================================================
   MEGA MENU
========================================================= */

 .saras-mega-parent {
     position: static !important;
 }

 .saras-mega-menu {
     position: absolute;

     top: 100%;
     left: 0;
     right: 0;

     width: 100%;

     background: #fff;

     border-top: 1px solid #eeeeee;

     border-radius: 0 0 18px 18px;

     box-shadow:
         0 20px 55px rgba(0, 0, 0, .13);

     opacity: 0;
     visibility: hidden;

     transform: translateY(12px);

     transition:
         opacity .22s ease,
         visibility .22s ease,
         transform .22s ease;

     z-index: 99999;
 }

 .saras-mega-parent:hover>.saras-mega-menu {
     opacity: 1;
     visibility: visible;
     transform: translateY(0);
 }


 /* Inner */

 .saras-mega-inner {
     width: 100%;
     max-width: 1500px;

     margin: auto;

     padding: 0 10px;

     display: grid;

     grid-template-columns:
         repeat(4, minmax(0, 1fr));
 }


 /* Column */

 .saras-mega-column {
     padding: 28px 28px 32px;

     min-width: 0;

     border-right: 1px solid #eeeeee;
 }

 .saras-mega-column:last-child {
     border-right: 0;
 }


 /* =========================================================
   SUB CATEGORY
========================================================= */

 .saras-sub-title {
     display: flex !important;
     align-items: flex-start;

     gap: 10px;

     margin-bottom: 17px;

     color: var(--saras-blue) !important;

     font-size: 14px !important;
     font-weight: 800 !important;

     line-height: 1.45 !important;

     text-transform: uppercase;

     text-decoration: none !important;
 }

 .saras-sub-dot {
     width: 8px;
     height: 8px;

     min-width: 8px;

     margin-top: 5px;

     border-radius: 50%;

     background: #2864d7;
 }


 /* =========================================================
   PACKAGE LINKS
========================================================= */

 .saras-package-list {
     margin: 0 !important;
     padding: 0 !important;

     list-style: none !important;
 }

 .saras-package-list li {
     margin: 0 0 11px !important;
     padding: 0 !important;
 }

 .saras-package-list li:last-child {
     margin-bottom: 0 !important;
 }

 .saras-package-list a {
     display: block !important;

     color: #4e4e58 !important;

     font-size: 15px !important;
     font-weight: 500 !important;

     line-height: 1.5 !important;

     text-decoration: none !important;

     white-space: nowrap;

     overflow: hidden;

     text-overflow: ellipsis;

     transition: all .2s ease;
 }

 .saras-package-list a:hover {
     color: var(--saras-primary) !important;

     padding-left: 5px !important;
 }


 /* =========================================================
   RIGHT SIDE
========================================================= */

 .saras-header-actions {
     display: flex;
     align-items: center;
     justify-content: flex-end;

     gap: 20px;

     margin-left: auto;
 }


 /* Phone */

 .saras-phone {
     display: flex;
     align-items: center;

     gap: 10px;
 }

 .saras-phone-icon {
     width: 43px;
     height: 43px;

     border: 1px solid #e5e5e5;

     border-radius: 50%;

     display: flex;
     align-items: center;
     justify-content: center;

     font-size: 17px;
 }

 .saras-phone-text span {
     display: block;

     font-size: 12px;
     color: #888;
 }

 .saras-phone-text a {
     color: #171717;

     font-size: 15px;
     font-weight: 700;

     text-decoration: none;
 }


 /* Login */

 .saras-login-btn {
     height: 43px;

     padding: 0 22px;

     border-radius: 6px;

     background: var(--saras-primary);

     color: #fff !important;

     display: inline-flex;
     align-items: center;
     justify-content: center;

     gap: 8px;

     font-size: 14px;
     font-weight: 600;

     text-decoration: none;

     transition: .2s ease;
 }

 .saras-login-btn:hover {
     background: #4810bd;

     color: #fff;
 }


 /* Menu button */

 .saras-menu-btn {
     width: 40px;
     height: 40px;

     padding: 0;

     border: 0;
     background: transparent;

     display: flex;
     flex-direction: column;

     justify-content: center;

     gap: 6px;

     cursor: pointer;
 }

 .saras-menu-btn span {
     display: block;

     width: 32px;
     height: 2px;

     background: #111;

     transition: .2s ease;
 }


 /* =========================================================
   MOBILE MENU
========================================================= */

 .saras-mobile-menu {
     position: fixed;

     top: 0;
     right: -100%;

     width: min(420px, 90vw);
     height: 100vh;

     background: #fff;

     z-index: 100000;

     box-shadow: -10px 0 35px rgba(0, 0, 0, .15);

     transition: right .3s ease;

     overflow-y: auto;
 }

 .saras-mobile-menu.active {
     right: 0;
 }


 /* Mobile Header */

 .saras-mobile-head {
     height: 90px;

     padding: 0 25px;

     display: flex;
     align-items: center;
     justify-content: space-between;

     border-bottom: 1px solid #eeeeee;
 }

 .saras-mobile-logo img {
     width: 155px;
     height: auto;

     max-height: 70px;

     object-fit: contain;
 }

 .saras-mobile-close {
     width: 40px;
     height: 40px;

     border: 0;

     background: transparent;

     font-size: 28px;

     color: var(--saras-primary);

     cursor: pointer;
 }


 /* Search */

 .saras-mobile-search {
     padding: 18px 25px;

     border-bottom: 1px solid #eeeeee;
 }

 .saras-mobile-search form {
     position: relative;
 }

 .saras-mobile-search input {
     width: 100%;

     height: 54px;

     border: 0;

     background: #f5f5f5;

     padding: 0 55px 0 18px;

     font-size: 16px;

     outline: none;
 }

 .saras-mobile-search button {
     position: absolute;

     top: 0;
     right: 0;

     width: 54px;
     height: 54px;

     border: 0;

     background: transparent;

     font-size: 18px;

     color: #111;
 }


 /* =========================================================
   MOBILE DYNAMIC NAV
========================================================= */

 .saras-mobile-nav-list {
     margin: 0;
     padding: 0;

     list-style: none;
 }

 .saras-mobile-nav-list>li {
     border-bottom: 1px solid #eeeeee;
 }


 /* Main item */

 .saras-mobile-nav-link {
     color: #151515;

     font-size: 16px;
     font-weight: 700;

     text-transform: uppercase;

     text-decoration: none;
 }

 .saras-mobile-nav-list>.saras-nav-item>.saras-nav-link,
 .saras-mobile-nav-header {
     min-height: 56px;

     padding: 0 25px;

     display: flex;
     align-items: center;
     justify-content: space-between;
 }


 /* Toggle */

 .saras-mobile-nav-list .saras-toggle {
     width: 38px;
     height: 38px;

     border: 0;

     background: #f5f5f5;

     color: var(--saras-primary);

     display: flex;
     align-items: center;
     justify-content: center;

     cursor: pointer;

     font-size: 18px;
 }

 .saras-mobile-nav-list .saras-toggle i {
     transition: transform .2s ease;
 }

 .saras-mobile-nav-list .saras-toggle.open i {
     transform: rotate(45deg);
 }


 /* Sub menu */

 .saras-mobile-sub-menu {
     display: none;

     margin: 0;
     padding: 0;

     list-style: none;

     background: #fafafa;
 }

 .saras-mobile-sub-menu.open {
     display: block;
 }


 /* Sub header */

 .saras-mobile-sub-header {
     min-height: 50px;

     padding: 0 25px 0 42px;

     display: flex;
     align-items: center;
     justify-content: space-between;

     border-top: 1px solid #eeeeee;
 }

 .saras-mobile-sub-link {
     color: #333;

     font-size: 14px;
     font-weight: 600;

     text-decoration: none;
 }


 /* Packages */

 .saras-mobile-packages {
     display: none;

     margin: 0;
     padding: 0;

     list-style: none;

     background: #f4f4f4;
 }

 .saras-mobile-packages.open {
     display: block;
 }

 .saras-mobile-package-link {
     display: block;

     padding: 11px 25px 11px 62px;

     color: #555;

     font-size: 14px;

     text-decoration: none;

     border-top: 1px solid #e8e8e8;
 }

 .saras-mobile-package-link:hover {
     color: var(--saras-primary);
 }


 /* =========================================================
   BACKDROP
========================================================= */

 .saras-mobile-backdrop {
     position: fixed;

     inset: 0;

     background: rgba(0, 0, 0, .45);

     opacity: 0;
     visibility: hidden;

     z-index: 99999;

     transition: .3s ease;
 }

 .saras-mobile-backdrop.active {
     opacity: 1;
     visibility: visible;
 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 1199px) {

     .saras-topbar {
         display: none;
     }

     .saras-main-header {
         height: 78px;
     }

     .saras-logo {
         width: 130px;
         min-width: 130px;
     }

     .saras-logo img {
         width: 120px;
     }

     .saras-desktop-nav {
         display: none;
     }

     .saras-phone,
     .saras-login-btn {
         display: none;
     }

     .saras-header-actions {
         gap: 5px;
     }

     .saras-main-inner {
         padding: 0 20px;
     }

 }


 /* =========================================================
   MOBILE
========================================================= */

 @media (max-width: 767px) {

     .saras-main-header {
         height: 72px;
     }

     .saras-main-inner {
         padding: 0 15px;
     }

     .saras-logo {
         width: auto;
         min-width: 0;
     }

     .saras-logo img {
         width: 115px;
         max-height: 62px;
     }

     .saras-menu-btn {
         width: 38px;
     }

     .saras-menu-btn span {
         width: 28px;
     }

     .saras-mobile-menu {
         width: 100%;
         max-width: 390px;
     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 380px) {

     .saras-mobile-menu {
         width: 100%;
     }

     .saras-mobile-head {
         padding: 0 18px;
     }

     .saras-mobile-search {
         padding-left: 18px;
         padding-right: 18px;
     }

 }


 /* =========================================================
   DESKTOP - LARGE MEGA MENU
========================================================= */

 @media (min-width: 1400px) {

     .saras-mega-inner {
         max-width: 1550px;
     }

     .saras-mega-column {
         padding-left: 32px;
         padding-right: 32px;
     }

 }


 /* =========================================================
   3 COLUMN MEGA MENU
========================================================= */

 @media (min-width: 1200px) and (max-width: 1399px) {

     .saras-mega-inner {
         grid-template-columns: repeat(3, minmax(0, 1fr));
     }

 }

 /* =========================================================
   SARASWATHI HOLIDAYS
   MOBILE HEADER / MENU
========================================================= */

 @media (max-width: 1199px) {

     /* ================================
       MOBILE MENU PANEL
    ================================= */

     .saras-mobile-menu {
         position: fixed !important;

         top: 0 !important;
         right: -100% !important;

         width: min(420px, 100%) !important;
         height: 100vh !important;

         background: #fff !important;

         z-index: 999999 !important;

         overflow-y: auto !important;
         overflow-x: hidden !important;

         box-shadow: -10px 0 35px rgba(0, 0, 0, .18) !important;

         transition: right .3s ease !important;
     }

     .saras-mobile-menu.active {
         right: 0 !important;
     }


     /* ================================
       MOBILE HEADER
    ================================= */

     .saras-mobile-header {
         height: 105px !important;

         padding: 10px 22px !important;

         display: flex !important;
         align-items: center !important;
         justify-content: space-between !important;

         background: #fff !important;

         border-bottom: 1px solid #eeeeee !important;
     }


     /* LOGO */

     .saras-mobile-logo {
         display: flex !important;
         align-items: center !important;

         width: 150px !important;
         height: 85px !important;
     }

     .saras-mobile-logo img {
         width: 145px !important;
         height: auto !important;

         max-height: 82px !important;

         object-fit: contain !important;

         display: block !important;
     }


     /* CLOSE */

     .saras-mobile-close {
         width: 45px !important;
         height: 45px !important;

         border: 0 !important;

         background: transparent !important;

         color: #5b16e8 !important;

         font-size: 27px !important;

         display: flex !important;
         align-items: center !important;
         justify-content: center !important;

         cursor: pointer !important;
     }


     /* ================================
       SEARCH
    ================================= */

     .saras-mobile-search {
         padding: 22px !important;

         background: #fff !important;

         border-bottom: 1px solid #eeeeee !important;
     }

     .saras-mobile-search form {
         position: relative !important;

         width: 100% !important;
     }

     .saras-mobile-search input {
         width: 100% !important;

         height: 58px !important;

         padding: 0 58px 0 20px !important;

         border: 0 !important;

         outline: none !important;

         background: #f5f5f5 !important;

         color: #222 !important;

         font-size: 16px !important;

         border-radius: 0 !important;
     }

     .saras-mobile-search input::placeholder {
         color: #555 !important;
     }

     .saras-mobile-search button {
         position: absolute !important;

         top: 0 !important;
         right: 0 !important;

         width: 58px !important;
         height: 58px !important;

         border: 0 !important;

         background: transparent !important;

         color: #111 !important;

         font-size: 19px !important;

         cursor: pointer !important;
     }


     /* ================================
       NAVIGATION
    ================================= */

     .saras-mobile-navigation {
         width: 100% !important;

         background: #fff !important;
     }

     .saras-mobile-list,
     .saras-mobile-list ul {
         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         list-style: none !important;
     }


     /* MAIN ITEM */

     .saras-mobile-list>li {
         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         border-bottom: 1px solid #e5e5e5 !important;

         background: #fff !important;
     }


     /* MAIN ROW */

     .saras-mobile-main-row {
         width: 100% !important;

         min-height: 62px !important;

         padding: 0 22px !important;

         display: flex !important;
         align-items: center !important;
         justify-content: space-between !important;
     }


     /* MAIN LINK */

     .saras-mobile-main-link {
         flex: 1 !important;

         min-height: 62px !important;

         padding: 0 !important;
         margin: 0 !important;

         display: flex !important;
         align-items: center !important;

         color: #111 !important;

         font-family: inherit !important;

         font-size: 16px !important;

         font-weight: 700 !important;

         line-height: 1.4 !important;

         text-transform: uppercase !important;

         text-decoration: none !important;

         visibility: visible !important;
         opacity: 1 !important;
     }

     .saras-mobile-main-link:hover {
         color: #5b16e8 !important;
     }


     /* MAIN ARROW */

     .saras-mobile-main-toggle,
     .saras-mobile-sub-toggle {
         width: 40px !important;
         min-width: 40px !important;

         height: 40px !important;

         padding: 0 !important;
         margin: 0 !important;

         border: 0 !important;

         background: #f5f5f5 !important;

         color: #555 !important;

         display: flex !important;
         align-items: center !important;
         justify-content: center !important;

         cursor: pointer !important;
     }

     .saras-mobile-main-toggle i,
     .saras-mobile-sub-toggle i {
         font-size: 13px !important;

         transition: transform .25s ease !important;
     }

     .saras-mobile-main-toggle.active i,
     .saras-mobile-sub-toggle.active i {
         transform: rotate(180deg) !important;
     }


     /* ================================
       SUB CATEGORY
    ================================= */

     .saras-mobile-submenu {
         display: none !important;

         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         background: #fafafa !important;
     }

     .saras-mobile-submenu.active {
         display: block !important;
     }


     .saras-mobile-sub-item {
         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         border-top: 1px solid #e8e8e8 !important;
     }


     .saras-mobile-sub-row {
         width: 100% !important;

         min-height: 54px !important;

         padding: 0 22px 0 38px !important;

         display: flex !important;
         align-items: center !important;
         justify-content: space-between !important;
     }


     .saras-mobile-sub-link {
         flex: 1 !important;

         color: #333 !important;

         font-size: 14px !important;

         font-weight: 600 !important;

         line-height: 1.4 !important;

         text-decoration: none !important;

         visibility: visible !important;
         opacity: 1 !important;
     }


     /* ================================
       PACKAGES
    ================================= */

     .saras-mobile-package-list {
         display: none !important;

         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         list-style: none !important;

         background: #f3f3f3 !important;
     }

     .saras-mobile-package-list.active {
         display: block !important;
     }

     .saras-mobile-package-list li {
         width: 100% !important;

         margin: 0 !important;
         padding: 0 !important;

         border-top: 1px solid #e5e5e5 !important;
     }

     .saras-mobile-package-list li a {
         display: block !important;

         width: 100% !important;

         padding: 12px 22px 12px 58px !important;

         color: #555 !important;

         font-size: 13px !important;

         font-weight: 500 !important;

         line-height: 1.5 !important;

         text-decoration: none !important;

         visibility: visible !important;
         opacity: 1 !important;
     }

     .saras-mobile-package-list li a:hover {
         color: #5b16e8 !important;
     }


     /* ================================
       BACKDROP
    ================================= */

     .saras-mobile-backdrop {
         position: fixed !important;

         inset: 0 !important;

         background: rgba(0, 0, 0, .45) !important;

         z-index: 999998 !important;

         opacity: 0 !important;
         visibility: hidden !important;

         transition: .3s ease !important;
     }

     .saras-mobile-backdrop.active {
         opacity: 1 !important;

         visibility: visible !important;
     }

 }


 /* =========================================================
   SMALL MOBILE
========================================================= */

 @media (max-width: 480px) {

     .saras-mobile-menu {
         width: 100% !important;
     }

     .saras-mobile-header {
         height: 95px !important;

         padding: 8px 18px !important;
     }

     .saras-mobile-logo {
         width: 140px !important;
     }

     .saras-mobile-logo img {
         width: 135px !important;
     }

     .saras-mobile-search {
         padding: 20px !important;
     }

     .saras-mobile-main-row {
         padding: 0 20px !important;
     }

 }


 /* =========================================================
   VERY SMALL MOBILE
========================================================= */

 @media (max-width: 360px) {

     .saras-mobile-header {
         padding-left: 15px !important;
         padding-right: 15px !important;
     }

     .saras-mobile-logo img {
         width: 125px !important;
     }

     .saras-mobile-search {
         padding: 16px !important;
     }

 }

 /* =========================================================
   PACKAGE LIST SECTION
========================================================= */

 .package-list-section {
     padding: 80px 0;
     background: #f8f9fc;
 }


 /* =========================================================
   SECTION TITLE
========================================================= */

 .package-section-title {
     text-align: center;
     max-width: 700px;
     margin: 0 auto 45px;
 }

 .package-small-title {
     display: inline-block;

     margin-bottom: 10px;

     color: #5b16e8;

     font-size: 13px;
     font-weight: 700;

     letter-spacing: 1.5px;
     text-transform: uppercase;
 }

 .package-section-title h2 {
     margin: 0 0 12px;

     color: #171717;

     font-size: 36px;
     font-weight: 700;

     line-height: 1.2;
 }

 .package-section-title p {
     margin: 0;

     color: #777;

     font-size: 15px;

     line-height: 1.7;
 }


 /* =========================================================
   GRID
========================================================= */

 .package-grid {
     display: grid;

     grid-template-columns:
         repeat(4, minmax(0, 1fr));

     gap: 25px;
 }


 /* =========================================================
   CARD
========================================================= */

 .package-card {
     position: relative;

     background: #fff;

     border-radius: 12px;

     overflow: hidden;

     border: 1px solid #eeeeee;

     box-shadow:
         0 8px 25px rgba(0, 0, 0, 0.06);

     transition:
         transform .3s ease,
         box-shadow .3s ease;
 }


 /* CARD HOVER */

 .package-card:hover {
     transform: translateY(-7px);

     box-shadow:
         0 18px 40px rgba(0, 0, 0, 0.12);
 }


 /* =========================================================
   IMAGE
========================================================= */

 .package-card-image {
     position: relative;

     width: 100%;

     height: 230px;

     overflow: hidden;
 }

 .package-card-image a {
     display: block;

     width: 100%;
     height: 100%;
 }

 .package-card-image img {
     width: 100%;
     height: 100%;

     object-fit: cover;

     display: block;

     transition: transform .5s ease;
 }


 /* IMAGE HOVER */

 .package-card:hover .package-card-image img {
     transform: scale(1.07);
 }


 /* =========================================================
   BADGE
========================================================= */

 .package-badge {
     position: absolute;

     top: 15px;
     left: 15px;

     padding: 6px 11px;

     background: #5b16e8;

     color: #fff;

     border-radius: 4px;

     font-size: 11px;
     font-weight: 600;

     text-transform: uppercase;

     letter-spacing: .5px;
 }


 /* =========================================================
   CARD CONTENT
========================================================= */

 .package-card-content {
     padding: 22px 20px 20px;
 }


 /* HEADING */

 .package-card-content h3 {
     margin: 0 0 10px;

     font-size: 19px;
     font-weight: 700;

     line-height: 1.35;
 }

 .package-card-content h3 a {
     color: #1c1c1c;

     text-decoration: none;

     transition: color .2s ease;
 }

 .package-card-content h3 a:hover {
     color: #5b16e8;
 }


 /* DETAILS */

 .package-card-content p {
     margin: 0 0 20px;

     color: #707070;

     font-size: 14px;

     line-height: 1.7;

     display: -webkit-box;
     -webkit-line-clamp: 3;
     -webkit-box-orient: vertical;

     overflow: hidden;

     min-height: 71px;
 }


 /* =========================================================
   FOOTER
========================================================= */

 .package-card-footer {
     padding-top: 15px;

     border-top: 1px solid #eeeeee;
 }


 /* BUTTON */

 .package-view-btn {
     display: inline-flex;

     align-items: center;

     gap: 8px;

     color: #5b16e8;

     font-size: 14px;
     font-weight: 700;

     text-decoration: none;

     transition: all .2s ease;
 }

 .package-view-btn i {
     font-size: 12px;

     transition: transform .2s ease;
 }

 .package-view-btn:hover {
     color: #4210b0;
 }

 .package-view-btn:hover i {
     transform: translateX(4px);
 }


 /* =========================================================
   TABLET
========================================================= */

 @media (max-width: 1199px) {

     .package-grid {
         grid-template-columns:
             repeat(3, minmax(0, 1fr));
     }

 }


 /* =========================================================
   SMALL TABLET
========================================================= */

 @media (max-width: 991px) {

     .package-list-section {
         padding: 65px 0;
     }

     .package-grid {
         grid-template-columns:
             repeat(2, minmax(0, 1fr));

         gap: 20px;
     }

     .package-card-image {
         height: 220px;
     }

 }


 /* =========================================================
   MOBILE
========================================================= */

 @media (max-width: 575px) {

     .package-list-section {
         padding: 50px 0;
     }

     .package-section-title {
         margin-bottom: 30px;
         padding: 0 15px;
     }

     .package-section-title h2 {
         font-size: 28px;
     }

     .package-section-title p {
         font-size: 14px;
     }

     .package-grid {
         grid-template-columns: 1fr;

         gap: 20px;
     }

     .package-card-image {
         height: 230px;
     }

 }


 /* =========================================================
   VERY SMALL MOBILE
========================================================= */

 @media (max-width: 380px) {

     .package-card-image {
         height: 210px;
     }

     .package-card-content {
         padding: 18px;
     }

 }


 /* =========================
   CONTACT LOCATION CARDS
========================= */

 .contact-map-section {
     background: #f8f9fa;
 }

 .location-card {
     background: #ffffff;
     border-radius: 15px;
     overflow: hidden;
     box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
     height: 100%;
     transition: all 0.3s ease;
 }

 .location-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);
 }

 .location-content {
     padding: 22px 25px;
     text-align: left;
 }

 .location-content h3 {
     margin: 0 0 5px;
     font-size: 24px;
     font-weight: 700;
 }

 .location-content p {
     margin: 0;
     color: #777;
     font-size: 15px;
 }

 .map-wrapper {
     width: 100%;
     height: 350px;
 }

 .map-wrapper iframe {
     width: 100%;
     height: 100%;
     display: block;
     border: 0;
 }

 /* Mobile */
 @media (max-width: 767px) {

     .contact-map-section {
         padding: 40px 15px !important;
     }

     .location-content {
         padding: 18px 20px;
     }

     .location-content h3 {
         font-size: 21px;
     }

     .map-wrapper {
         height: 280px;
     }
 }

 .pb-100 {
     padding-bottom: 40px;
 }

 .pt-85 {
     padding-top: 20px;
 }

 .pb-55 {
     padding-bottom: 20px;
 }



 /* =========================================================
   PACKAGE DETAILS - PROFESSIONAL COMPACT LAYOUT
========================================================= */

 .package-details-section {
     width: 100%;
     padding: 55px 20px;
     background: #f7f8fa;
     overflow: hidden;
 }

 .package-wrapper {
     width: 100%;
     max-width: 1240px;
     margin: 0 auto;
 }

 .package-details-section .row {
     --bs-gutter-x: 28px;
     --bs-gutter-y: 28px;
     align-items: stretch;
 }

 /* IMAGE */
 .package-image {
     width: 100%;
     height: 470px;
     display: block;
     object-fit: cover;
     border-radius: 20px;
     background: #eef1f5;
     box-shadow: 0 14px 40px rgba(16, 24, 40, .10);
 }

 /* LEFT CONTENT CARD */
 .package-content {
     margin-top: 20px;
     padding: 24px 26px;
     background: #fff;
     border: 1px solid #eaecf0;
     border-radius: 18px;
     box-shadow: 0 8px 30px rgba(16, 24, 40, .06);

     /* The long package information scrolls inside this area */
     height: 380px;
     overflow-y: auto;
     overflow-x: hidden;

     scrollbar-width: thin;
     scrollbar-color: #d0d5dd #f5f6f7;
 }

 /* Chrome / Edge scrollbar */
 .package-content::-webkit-scrollbar {
     width: 7px;
 }

 .package-content::-webkit-scrollbar-track {
     background: #f5f6f7;
     border-radius: 10px;
 }

 .package-content::-webkit-scrollbar-thumb {
     background: #c9ced6;
     border-radius: 10px;
 }

 .package-content::-webkit-scrollbar-thumb:hover {
     background: #98a2b3;
 }

 .package-small-title {
     display: inline-block;
     margin-bottom: 9px;
     color: #e35d22;
     font-size: 12px;
     font-weight: 700;
     line-height: 1.4;
     letter-spacing: 1.4px;
     text-transform: uppercase;
 }

 .package-content h1 {
     margin: 0 0 16px;
     font-size: 32px;
     line-height: 1.2;
     font-weight: 700;
     color: #101828;
 }

 .package-content p {
     width: 100%;
     max-width: 820px;
     margin: 0 0 16px;
     color: #667085;
     font-size: 15px;
     line-height: 1.75;
     font-weight: 400;
 }

 /* PACKAGE LISTING CARDS */
 .package-area .package-card {
     height: 100%;
     display: flex;
     flex-direction: column;
     overflow: hidden;
     background: #ffffff;
     border: 1px solid #e5e7eb;
     border-radius: 14px;
     box-shadow: 0 10px 28px rgba(16, 24, 40, .08);
     transition: transform .25s ease, box-shadow .25s ease;
 }

 .package-area .package-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 16px 34px rgba(16, 24, 40, .14);
 }

 .package-area .package-image {
     height: 225px;
     margin: 0;
     overflow: hidden;
     background: #eef1f5;
     border-radius: 0;
 }

 .package-area .package-image img {
     width: 100%;
     height: 100%;
     display: block;
     /* object-fit: cover; */
     transition: transform .35s ease;
 }

 .package-area .package-card:hover .package-image img {
     transform: scale(1.04);
 }

 .package-area .package-content {
     height: auto;
     min-height: 190px;
     margin: 0;
     padding: 20px 20px 18px;
     display: flex;
     flex: 1;
     flex-direction: column;
     overflow: visible;
     border: 0;
     border-radius: 0;
     box-shadow: none;
 }

 .package-area .package-content h3 {
     min-height: 52px;
     margin: 0 0 10px;
     color: #172033;
     font-size: 20px;
     line-height: 1.3;
 }

 .package-area .package-content p {
     margin: 0 0 12px;
     color: #667085;
     font-size: 14px;
     line-height: 1.5;
 }

 .package-area .package-price {
     margin-top: auto;
     margin-bottom: 16px;
     color: #e35d22;
     font-size: 19px;
     font-weight: 700;
 }

 .package-book-now {
     width: 100%;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
     min-height: 44px;
     padding: 10px 16px;
     color: #ffffff;
     background: #e35d22;
     border: 1px solid #e35d22;
     border-radius: 6px;
     font-size: 14px;
     font-weight: 700;
     text-decoration: none;
     transition: background .2s ease, border-color .2s ease;
 }

 .package-book-now:hover,
 .package-book-now:focus {
     color: #ffffff;
     background: #c84d18;
     border-color: #c84d18;
 }

 @media (max-width: 767px) {
     .package-area .package-image {
         height: 210px;
     }

     .package-area .package-content {
         min-height: 180px;
         padding: 18px 16px 16px;
     }
 }

 /* INFORMATION */
 .package-info {
     display: flex;
     flex-wrap: wrap;
     gap: 9px;
     margin-top: 20px;
     padding-top: 18px;
     border-top: 1px solid #eaecf0;
 }

 .info-item {
     display: inline-flex;
     align-items: center;
     min-height: 42px;
     padding: 9px 13px;
     background: #fff;
     border: 1px solid #eaecf0;
     border-radius: 9px;
     color: #344054;
     font-size: 13px;
     font-weight: 500;
 }

 .info-item i {
     margin-right: 7px;
     color: #e35d22;
     font-size: 14px;
 }

 /* ENQUIRY */
 .enquiry-box {
     position: sticky;
     top: 100px;
     width: 100%;
     padding: 32px 30px;
     background: #fff;
     border: 1px solid #eaecf0;
     border-radius: 20px;
     box-shadow: 0 14px 40px rgba(16, 24, 40, .08);
 }

 .enquiry-box h2 {
     margin: 0 0 8px;
     color: #101828;
     font-size: 27px;
     line-height: 1.25;
     font-weight: 700;
 }

 .enquiry-box .description {
     margin: 0 0 20px;
     color: #667085;
     font-size: 13px;
     line-height: 1.65;
 }

 .enquiry-box .form-control {
     width: 100%;
     height: 49px;
     margin-bottom: 12px;
     padding: 0 14px;
     background: #fff;
     border: 1px solid #d0d5dd;
     border-radius: 8px;
     outline: none;
     font-size: 13px;
     color: #101828;
     box-shadow: none;
 }

 .enquiry-box .form-control:focus {
     border-color: #e35d22;
     box-shadow: 0 0 0 3px rgba(227, 93, 34, .10);
 }

 .submit-btn {
     width: 100%;
     min-height: 50px;
     margin-top: 2px;
     padding: 0 18px;
     border: 0;
     border-radius: 8px;
     background: #e35d22;
     color: #fff;
     font-size: 14px;
     font-weight: 700;
     cursor: pointer;
     transition: .25s ease;
 }

 .submit-btn:hover {
     background: #c94d18;
     transform: translateY(-1px);
 }

 .secure-note {
     margin: 13px 0 0 !important;
     text-align: center;
     color: #98a2b3 !important;
     font-size: 11px !important;
     line-height: 1.5 !important;
 }

 /* DESKTOP: slightly more compact */
 @media (min-width: 992px) {
     .package-details-section .col-lg-7 {
         flex: 0 0 62%;
         max-width: 62%;
     }

     .package-details-section .col-lg-5 {
         flex: 0 0 38%;
         max-width: 38%;
     }
 }

 /* TABLET */
 @media (max-width: 991px) {
     .package-details-section {
         padding: 45px 18px;
     }

     .package-image {
         height: 420px;
     }

     .package-content {
         height: 360px;
         margin-top: 18px;
     }

     .enquiry-box {
         position: relative;
         top: auto;
     }
 }

 /* MOBILE */
 @media (max-width: 767px) {
     .package-details-section {
         padding: 32px 14px;
     }

     .package-details-section .row {
         --bs-gutter-x: 0;
         --bs-gutter-y: 24px;
     }

     .package-image {
         height: 300px;
         border-radius: 16px;
     }

     .package-content {
         height: 340px;
         margin-top: 15px;
         padding: 20px 18px;
         border-radius: 16px;
     }

     .package-content h1 {
         font-size: 27px;
         margin-bottom: 14px;
     }

     .package-content p {
         font-size: 14px;
         line-height: 1.7;
     }

     .package-info {
         gap: 8px;
         margin-top: 18px;
         padding-top: 15px;
     }

     .info-item {
         min-height: 40px;
         padding: 8px 10px;
         font-size: 12px;
     }

     .enquiry-box {
         padding: 25px 18px;
         border-radius: 16px;
     }

     .enquiry-box h2 {
         font-size: 24px;
     }
 }

 /* SMALL MOBILE */
 @media (max-width: 575px) {
     .package-details-section {
         padding: 25px 10px;
     }

     .package-image {
         height: 245px;
     }

     .package-content {
         height: 320px;
         padding: 18px 15px;
     }

     .package-small-title {
         font-size: 11px;
     }

     .package-content h1 {
         font-size: 24px;
     }

     .package-content p {
         font-size: 13.5px;
         line-height: 1.7;
     }

     .package-info {
         display: grid;
         grid-template-columns: 1fr 1fr;
     }

     .info-item {
         width: 100%;
     }

     .enquiry-box {
         padding: 22px 15px;
     }

     .enquiry-box .form-control {
         height: 47px;
     }
 }

 /* VERY SMALL PHONES */
 @media (max-width: 380px) {
     .package-image {
         height: 220px;
     }

     .package-content {
         height: 300px;
     }

     .package-content h1 {
         font-size: 22px;
     }

     .package-info {
         grid-template-columns: 1fr;
     }
 }
 
 
 input[type=text], input[type=email], input[type=tel], input[type=number], input[type=password], input[type=url], textarea {
    outline: none;
    background-color: #fff;
    height: 40px;
    width: 100%;
    line-height: 56px;
    font-size: 15px;
    color: var(--tg-grey-1);
    padding-left: 26px;
    padding-right: 26px;
    border: 1px solid #a2a9ac;
}