/**
* Template Name: Isamilo Express
* Version: 1.0
* Author: Ikram Hossen
* Developed By: Codeware Ltd.
* Author URL: www.codewareltd.com
**/

/* Root css */
:root {
  --primaryColor: #00498d;
  --secondaryColor: #ba6f01;
  --grayColor: #f7f7f7;
  --darkColor: #2c3e50;
  --accentColor: #000000;
  --whiteColor: #ffff;
  --greenColor: #01a401;
}

html {

  scrollbar-color: var(--primaryColor);
}
body {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 28px;
}
h1,
h2,
h3,
h4,
h5,
h6,
button,
a {
  font-family: "Nunito Sans", sans-serif;
}
::-webkit-scrollbar-thumb {
  background-color: var(--primaryColor);
}
/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
/* Header css */
header {
  background: var(--whiteColor);
  border-bottom: none !important;
  position: relative;
}
.navbar {
  z-index: 22 !important;
  padding: 7px 0px;
}
.demoNavBar .drop-down li a:hover {
  border-left: 3px solid var(--primaryColor);
}
.lang_title span {
  font-size: 15px;
  font-weight: 600;
  color: var(--whiteColor) !important;
}
.nav-links.active::after {
  height: 4px;
  width: 37px;
  border-radius: 18;
}

.site_logo {
  max-width: 200px;
  max-height: 55px;
  object-fit: contain;
}
.topbar {
  background: var(--primaryColor);
}
.topbar a {
  color: var(--whiteColor);
  font-size: 14px;
}
.topbar a:hover {
  color: var(--whiteColor) !important;
}
.home_banner_sections {
  max-height: 80vh;
  position: relative;
  background: url(../../mbereserovip/img/banner.jpg);
  min-height: 80vh;
  background-position: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
.home_banner_sections::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  background: #00000062;
}
.banner_img {
  width: 100%;
  object-fit: cover;
  max-height: 70vh;
}
.banner-title {
  text-transform: capitalize;
  margin: 0 0 15px;
  font-size: 35px;
  color: #ffffff;
  text-shadow: 0px 3px 10px #000000a1 !important;
  background: none;
  line-height: 40px;
  font-weight: 800;
}
.banner-title span {
  color: var(--whiteColor);
}
.banner-desc {
  color: var(--whiteColor);
  z-index: 1;
  position: relative;
  margin-top: 30px;
  width: 75%;
  font-size: 16px;
}
.demoNavBar .drop-down ul::after {
  content: "";
  height: 16px;
  width: 16px;
  background: var(--whiteColor);
  top: -8px;
  position: absolute;
  right: 20px;
  transform: rotate(45deg);
  border-left: 1px solid #ddd;
  border-top: 1px solid #ddd;
  z-index: -1;
}
.search__panel {
  margin: 0px;
  margin-top: 0;
  padding: 60px 0px;
  position: absolute;
  width: 100%;
  bottom: 0;
  top: auto !important;
}
.booking-box .booking-box__body {
  background-color: var(--primaryColor) !important;
  border-radius: 30px;
  padding: 25px;
}
.booking-box .form-control {
  border: 1px solid #c6cdd56e !important;
  border-radius: 10px !important;
}
.booking-box .b-form-group label {
  font-weight: 600 !important;
  color: var(--whiteColor) !important;
  font-size: 16px;
}
.spiner,
.spinerSB {
  color: var(--primaryColor) !important;
}
.spinerSB {
  top: 32px !important;
}

.nav-links.active {
  font-weight: 700;
}
.ui-datepicker th {
  color: var(--whiteColor) !important;
}
.ui-datepicker th {
  background: var(--primaryColor);
  border-top: 1px solid var(--primaryColor) !important;
  border-bottom: 1px solid var(--primaryColor) !important;
  color: var(--accentColor);
}
.ui-widget-header {
  border: 1px solid #eee !important;
  background: #efeff5 !important;
  color: var(--accentColor);
  font-weight: 600;
  font-size: 15px;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid var(--primaryColor) !important;
  background: var(--primaryColor) !important;
  color: var(--whiteColor) !important;
  border-radius: 50%;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  background: var(--primaryColor) !important;
  border: 1px solid var(--primaryColor) !important;
  color: var(--whiteColor) !important;
}
.search_btn {
  border: 1px solid transparent;
  width: 100%;
  min-height: 44px;
  background: var(--yellowColor);
  color: var(--whiteColor);
}
.search_btn:hover {
  color: var(--whiteColor) !important;
  opacity: 0.8;
  border: 1px solid var(--secondaryColor);
}
.repeat-arrow-img-btn {
  top: 37px;
  border: 1px solid var(--grayColor) !important;
  z-index: 1;
  right: -21px;
  /* transform: rotate(90deg); */
}
.repeat-arrow-img-btn:focus {
  border: 1px solid var(--primaryColor) !important;
}
button.repeat-arrow-img-btn.repeat-arrow-img-btn2 {
  top: 39px;
  transform: rotate(0deg);
}
.select2-container--default
  .select2-results__option--highlighted[aria-selected] {
  background-color: var(--primaryColor);
  color: var(--whiteColor);
}
/* .select2-container .select2-selection--single {
  height: 47px;
} */
.date-icons {
  position: relative;
}
/* popular bus */
.works-text {
  position: relative;
  font-size: 28px;
  color: var(--whiteColor) !important;
}
.section-text h2::before {
  content: "";
  position: absolute;
  display: block;
  width: 120px;
  height: 1px;
  background: var(--whiteColor);
  bottom: 9px;
  left: calc(50% - 60px);
}
.arrow_icon i {
  color: var(--secondaryColor);
  margin-right: 10px;
}
.search_abs_icon {
  color: var(--primaryColor);
}

/* How it works */

.how_it_works {
  position: relative;
  z-index: 2;
  margin-bottom: 0px;
}
.Features_subHeadingTxt {
  color: var(--whiteColor);
}
/* .store_img_link img {
  margin-top: 20px !important;
} */
.service-icon-wrappers {
  display: block;
  margin: 10px 0px;
}
/* Search page */
/* .b-search-map__wrap {
  padding: 10px 15px;
} */
.booking-box__body .select2-container--default .select2-selection--single {
  background-color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
}
.search_btns {
  color: var(--whiteColor);
  text-transform: uppercase;
  font-weight: 600;
  margin-top: 31px;
  letter-spacing: 0.3px;
  border-radius: 10px !important;
  background-color: var(--secondaryColor);
  background-size: 250% 100%;
  background-position: right bottom;
  transition: all 0.3s ease-in-out !important;
  touch-action: manipulation;
  border: 1px solid transparent;
  width: 100%;
  min-height: 42px;
}
.search_btns:hover {
  opacity: 0.8;
}
.b-search-map__wrap {
  background: var(--primaryColor);
}
.download-ticket {
  background: #fff;
  border-radius: 25px !important;
  padding: 50px;
  border-top: 5px solid var(--primaryColor);
}
#downloadButton {
  width: 100%;
}
.b-search-map-wrapper .b-form-group label {
  color: var(--whiteColor);
  font-weight: 500 !important;
}
.b-search-map-wrapper .search_btn {
  background: var(--secondaryColor);
  color: var(--whiteColor);
}
.b-search-map-wrapper .search_btn:hover {
 opacity: 0.8;
}
.b-search-map-wrapper .search_btn {
  margin-top: 34px !important;
}
.b-search-map-wrapper .search_btn {
  border: none !important;
}
.b-search-map-wrapper .search_btn {
  border-radius: 5px !important;
}
.img-btn.left-img-btn,
.img-btn.right-img-btn {
  background: var(--secondaryColor);
  border: 1px solid var(--secondaryColor);
}
.btn_view_eats {
  background: var(--primaryColor);
  background: var(--primaryColor);
}
.btn_view_eats {
  border-color: var(--primaryColor);
  border-color: var(--primaryColor);
}
.route_text_flex {
  border: 1px dashed var(--secondaryColor);
}
.route_text_flex {
  background: var(--whiteColor);
}

.btn_view_eats {
  background: var(--secondaryColor);
  color: var(--whiteColor);
  position: relative;
  z-index: 1;
  border-color: var(--secondaryColor);
  padding: 6px 12px !important;
  font-size: 14px;
  font-weight: 600;
  border-radius: 30px;
  transition: all ease-in-out 0.2s;
  white-space: nowrap;
  text-transform: uppercase;
}
.btn_view_eats:hover {
  color: var(--whiteColor);
  text-decoration: none;
  background: transparent;
  background: var(--accentColor);
  border: 1px solid var(--accentColor);
}
.abs_inner_line::after {
  background: var(--secondaryColor) !important;
}

.single_search_result_item .result_content li .bus_name h6 {
  color: var(--primaryColor);
  color: var(--primaryColor);
}
.period_times {
  font-size: 12px;
  color: var(--primaryColor);
  color: var(--primaryColor);
}
.abs_inner_line::before {
  background: var(--secondaryColor);
  border: 2px solid var(--secondaryColor);
}

.bi_arrow span {
  border: 2px solid var(--primaryColor);
  border: 2px solid var(--primaryColor);
}
.single_search_result_item {
  border: 1px dashed var(--secondaryColor);
}

.departure {
  border: 1px dashed var(--secondaryColor);
}
.select-ticket-row-wrapper {
  border-left: 3px solid var(--secondaryColor);
}
#myModal .modal-header {
  background-color: var(--secondaryColor);
}
.pay-details-box .title_Ablack {
  background: var(--secondaryColor);
}
.pess-dtls-box {
  border-bottom: 3px solid var(--secondaryColor);
}
.proceed_to_book_btn {
  background: var(--secondaryColor) !important;
  border: 1px solid var(--secondaryColor) !important;
}
.download_ticket_app {
  object-fit: contain;
}
.dnld-tkt-details .page_title h4 {
  text-align: left;
}
.bus-place::before {
  filter: brightness(0);
}

.mid_cont_btn {
  background: var(--secondaryColor) !important;
  color: var(--whiteColor) !important;
}
.mid_cont_btn:hover {
  opacity: 0.8;
}
.nav-links:before {
  content: "";
  position: absolute;
  bottom: 4px;
  width: 100%;
  height: 3px;
  background-color: var(--whiteColor);
  transform: scale(0);
  transform-origin: 50%;
  right: 0px;
}

.nav-links:hover:before {
  transform: scale(0.8);
}
.nav-links:before {
  -o-transition: 0.27s;
  -ms-transition: 0.27s;
  -moz-transition: 0.27s;
  -webkit-transition: 0.27s;
  transition: 0.5s;
}

.demoNavBar li a {
  color: var(--accentColor) !important;
  font-weight: 600;
  transition: all ease-in-out 0.2s;
  margin: 0;
  padding: 0;
  text-transform: capitalize;
  font-size: 16px;
  text-decoration: none;
  position: relative;
  letter-spacing: 0.4px;
}
.demoNavBar li a:hover {
  color: var(--secondaryColor) !important;
}
.nav-link.active {
  color: var(--secondaryColor) !important;
  font-weight: 700;
}
.demoNavBar li:last-child a {
  padding-right: 8px !important;
}
.demoNavBar li {
  position: relative;
  padding: 10px;
  line-height: 35px;
  /* display: inline; */
}
.dropdown-menu {
  position: absolute;
  z-index: 9999;
}
.box-shadows {
  box-shadow: none !important;
}
.nav-link.active::after {
  background-color: var(--secondaryColor) !important;
}
.bus-place i {
  color: var(--whiteColor);
  font-size: 16px;
  padding: 6px;
}
.departure-margin {
  margin-top: -40px !important;
}
.bus-place::before {
  display: none;
}
.banner_carousel .owl-nav button span {
  background: var(--secondaryColor);
}
.departure-search {
  margin-top: -40px !important;
}

.dnld-tkt-details .page_title h4 {
  font-size: 17px;
}
.cont_right_box a.desc:hover {
  color: var(--yellowColor);
}
.offcanvas-header {
  background-color: var(--whiteColor) !important;
}
/* ======navbar end===== */
.mid_cont_btns {
  color: #fff !important;
  box-shadow: none !important;
  font-size: 18px;
  font-weight: 600;
  margin: 0 auto;
  padding: 6px 50px;
  border-radius: 30px;
  min-height: 44px;
  text-transform: uppercase;
  outline: none !important;
  background-image: linear-gradient(90deg, #194786 0%, #3fa0d9 50%) !important;
  background-position: right bottom;
  transition: all 0.3s ease-in-out !important;
  touch-action: manipulation;
  border: 1px solid transparent;
}

.mid_cont_btns:hover {
  background-image: linear-gradient(90deg, #194786 0%, #3fa0d9 100%) !important;
  color: var(--whiteColor) !important;
}
.contact-forms {
  border-radius: 10px !important;
  /* background: #11278312; */
}
.b-search-map-wrapper .search_btn {
  min-height: 43px !important;
}
.b-search-map-wrapper .search_btn {
  margin-top: 34px !important;
}
.spiner {
  top: 33px !important;
  min-height: 43px !important;
}
.bord-line {
  position: relative;
}
.bord-line::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 195px;
  height: 3px;
  background: var(--primaryColor);
  background: var(--primaryColor);
}
.cont_us {
  border: 1px solid var(--secondaryColor);
  border-radius: 15px;
  box-shadow: 0px 0px 30px rgb(127 137 161 / 20%);
  background: var(--whiteColor);
}
.page_titles {
  text-align: center;
  font-size: 35px;
  margin: 0;
  color: var(--primaryColor);
  color: var(--primaryColor);
}
.section-title h1,
.section-title h2 {
  font-size: 35px;
  font-weight: 700;
  color: var(--accentColor);
}
/* download part */
.b-blog-short-post {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 16px;
}
.social-icon h3 {
  padding: 2px;
  text-align: center !important;
}
/* ====animate css=== */
/* Hidden অবস্থায় */
.animate-scroll {
  opacity: 0;
  transform: translateY(40px);
  transition: all 1s ease;
}

/* Scroll এলে show হবে */
.animate-scroll.show {
  opacity: 1;
  transform: translateY(0);
}

/* Hidden অবস্থায় ছোট থাকবে */
.zoomIn {
  opacity: 0;
  transform: scale(0.8);
  transition: all 2s ease;
}

/* Scroll এলে বড় হবে */
.zoomIn.show {
  opacity: 1;
  transform: scale(1);
}
/* ====close button=== */
.btn-close {
  opacity: 1;
  filter: invert(0);
}

/* ########################### */
/* About Us Section Css  */
/* ########################### */

.about_us_section {
  position: relative;
  background-color: #f7faff;
  padding: clamp(50px, 7vw, 90px) 0;
  overflow: hidden;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--primaryColor);
}
.ab_wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: clamp(30px, 5vw, 60px);
  align-items: center;
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
}

.ab_content {
  z-index: 2;
}

.about_us_section .color_subtitle_sm {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #e0edff;
  color: #2563eb;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  margin-bottom: 16px;
  border: none;
}

/* Dot/Indicator inside Subtitle Pill */
.about_us_section .pulse-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #2563eb;
  box-shadow: none;
  animation: none;
}
.ab_lead {
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.6;
  color: #64748b;
  margin-bottom: 30px;
}
.ab_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px 30px;
  padding: 0;
  margin: 30px 0 0 0;
  list-style: none;
}

.ab_point {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  text-align: left;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  box-shadow: none;
  transition: transform 0.3s ease;
}

.ab_point:hover {
  transform: translateY(-3px);
  border-color: transparent;
}
.about_us_section .cirle_sine {
  width: 52px;
  height: 52px;
  min-width: 52px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 0;
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.08);
}

.ab_list li:nth-child(1) .cirle_sine {
  background: #eff6ff;
  color: var(--secondaryColor);
}

.ab_list li:nth-child(2) .cirle_sine {
  background: #f0fdf4;
  color: var(--secondaryColor);
}

.ab_list li:nth-child(3) .cirle_sine {
  background: #faf5ff;
  color: var(--greenColor);
}

.ab_list li:nth-child(4) .cirle_sine {
  background: #fef2f2;
  color: var(--greenColor);
}

.ab_point_text {
  font-size: 15px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.3;
}
.ab_point_text small,
.ab_point_text span {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: #64748b;
  margin-top: 3px;
}
.ab_media {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.ab_frame {
  position: relative;
  width: clamp(300px, 38vw, 480px);
  height: clamp(260px, 32vw, 400px);
  border-radius: 40% 60% 70% 30% / 50% 40% 60% 50%;
  overflow: hidden;
  z-index: 2;
  box-shadow: 0 20px 40px -15px rgba(37, 99, 235, 0.15);
  transition: border-radius 0.5s ease, transform 0.5s ease;
}
.ab_frame:hover {
  border-radius: 50% 50% 40% 60% / 40% 60% 50% 50%;
  transform: scale(1.02);
}
.ab_photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ab_media::before {
  content: "";
  position: absolute;
  width: 110%;
  height: 110%;
  background: radial-gradient(circle, rgba(191, 219, 254, 0.6) 0%, rgba(247, 250, 255, 0) 70%);
  z-index: 1;
  pointer-events: none;
  border: none;
}

.ab_media::after {
  display: none;
}
.ab_fact {
  position: absolute;
  top: 10%;
  right: 5%;
  z-index: 4;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  padding: 10px 18px;
  border-radius: 12px;
  border: 1px solid #ffffff;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

.ab_fact .number-wrapper {
  font-size: 24px;
  font-weight: 800;
  color: var(--primaryColor);
  line-height: 1;
}

.ab_fact .title {
  margin: 3px 0 0 0;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
}

.ab_stamp {
  position: absolute;
  bottom: 5%;
  left: 5%;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 3px solid #ffffff;
  object-fit: cover;
  z-index: 3;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

@media (max-width: 1024px) {
  .ab_wrap {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .ab_media {
    order: -1;
  }

  .ab_list {
    max-width: 600px;
  }
}

@media (max-width: 640px) {
  .ab_list {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .ab_frame {
    width: 100%;
    max-width: 360px;
    height: 280px;
  }

  .about_us_section .color_subtitle_sm {
    font-size: 11px;
    padding: 5px 12px;
  }
}

/* =========================================== */
/* how it works */
/* =========================================== */
/* Base Section Styling */
.how_it_works_section {
  position: relative;
  padding: 80px 0;
  background: #f1f3f7;
  overflow: hidden;
  isolation: isolate;
}

.how_it_works_section .color_subtitle_sm {
  display: inline-flex;
  align-items: center;
  padding: 6px 16px;
  border-radius: 30px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: var(--darkColor, #333333);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

/* Board Container */
.how_it_works_section .hiw_pin_board {
  position: relative;
  max-width: 1140px;
  margin: 60px auto 0;
  min-height: auto;
}

/* Hide SVG connecting line to match reference layout */
.how_it_works_section .hiw_connecting_line {
  display: none;
}

/* Cards Grid Alignment */
.how_it_works_section .hiw_notes_grid {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 30px;
  flex-wrap: wrap;
  padding-top: 25px;
  /* Room for tape overflow */
}

/* Base Card Styling */
.how_it_works_section .hiw_pin_card {
  position: relative;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: calc(33.333% - 20px);
  max-width: 340px;
  background: #ffffff;
  padding: 16px;
  border-radius: 28px;
  box-shadow: 0 15px 35px -10px rgba(0, 0, 0, 0.06), 0 5px 15px -5px rgba(0, 0, 0, 0.03);
  transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.35s ease;
  box-sizing: border-box;
}

/* Hover Effect */
.how_it_works_section .hiw_pin_card:hover {
  transform: translateY(-8px) scale(1.02) rotate(0deg) !important;
  z-index: 10;
  box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.12);
}

/* Individual Card Rotations & Color Variables */
.how_it_works_section .card_step_1 {
  transform: rotate(-3deg);
  --inner-gradient: linear-gradient(180deg, #fff2f0 0%, #ffdcd7 100%);
  --num-color: #d9381e;
  --tape-color: rgba(239, 120, 107, 0.75);
}

.how_it_works_section .card_step_2 {
  transform: rotate(3deg);
  --inner-gradient: linear-gradient(180deg, #effaf1 0%, #00498dcc 100%);
  --num-color: #00498d;
  --tape-color: rgb(0 73 141);
}

.how_it_works_section .card_step_3 {
  transform: rotate(-2deg);
  --inner-gradient: linear-gradient(180deg, #fffbee 0%, #ffe9b0 100%);
  --num-color: #b58105;
  --tape-color: rgba(235, 203, 90, 0.85);
}

/* Inner Card Container */
.how_it_works_section .hiw_card_inner {
  background: var(--inner-gradient);
  border-radius: 20px;
  padding: 32px 24px 28px;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* Typography Styling */
.how_it_works_section .hiw_num {
  font-family: inherit;
  font-size: 46px;
  font-weight: 700;
  color: var(--num-color);
  line-height: 1;
  display: block;
  margin-bottom: 16px;
  letter-spacing: -0.02em;
}

.how_it_works_section .hiw_card_inner h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 8px;
  line-height: 1.3;
}

.how_it_works_section .hiw_card_inner p {
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
  margin: 0;
  font-weight: 450;
}

/* Tape Strip Styling (Replaces Pin Dots) */
.how_it_works_section .hiw_pin {
  position: absolute;
  top: -22px;
  left: 50%;
  transform: translateX(-50%) rotate(-1.5deg);
  width: 38px;
  height: 52px;
  background: var(--tape-color);
  border-radius: 2px;
  z-index: 5;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(1px);
  /* Jagged tape edges */
  mask-image: linear-gradient(to bottom, transparent 0px, black 3px, black calc(100% - 3px), transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0px, black 3px, black calc(100% - 3px), transparent 100%);
}

.how_it_works_section .hiw_pin::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0;
  box-shadow: inset 0 0 4px rgba(255, 255, 255, 0.4);
}

/* Tablet Responsiveness */
@media (max-width: 991.98px) {
  .how_it_works_section .hiw_notes_grid {
    gap: 40px;
  }

  .how_it_works_section .hiw_pin_card {
    width: calc(50% - 20px);
    max-width: 360px;
  }
}

/* Mobile Responsiveness */
@media (max-width: 640.98px) {
  .how_it_works_section {
    padding: 50px 0;
  }

  .how_it_works_section .hiw_notes_grid {
    flex-direction: column;
    align-items: center;
    gap: 36px;
  }

  .how_it_works_section .hiw_pin_card {
    width: 100%;
    max-width: 340px;
  }

  .how_it_works_section .card_step_1 {
    transform: rotate(-1.5deg);
  }

  .how_it_works_section .card_step_2 {
    transform: rotate(1.5deg);
  }

  .how_it_works_section .card_step_3 {
    transform: rotate(-1deg);
  }

  .how_it_works_section .hiw_card_inner {
    padding: 24px 20px;
  }
}
/* ########################### */
/* Why Choose Us Section Css  */
/* ########################### */
.why_choose_section {
  padding: 80px 0;
  background-color: #ffffff;
  font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  overflow: hidden;
}

.wcu_infographic_header {
  text-align: center;
  margin-bottom: 60px;
}
/* 
.wcu_infographic_header p {
  color: #028090;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 13px;
  margin-bottom: 8px;
} */

.wcu_header_dots {
  display: none;
}

.wcu_infographic_container {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 860px;
  margin: 0 auto;
  padding: 40px 20px 60px;
}

/* Perfect Continuous S-Curve Dotted Path matching the reference image */
.wcu_outer_ring {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 860px;
  height: 100%;
  border: none;
  pointer-events: none;
  z-index: 1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 860 680' preserveAspectRatio='none'%3E%3Cpath d='M 430 30 C 530 30, 530 190, 430 190 C 330 190, 330 350, 430 350 C 530 350, 530 510, 430 510 C 330 510, 330 650, 430 650' fill='none' stroke='%2394a3b8' stroke-width='4' stroke-dasharray='1 12' stroke-linecap='round'/%3E%3Ccircle cx='430' cy='30' r='7' fill='%2364748b'/%3E%3Ccircle cx='430' cy='650' r='7' fill='%2364748b'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}

.wcu_center_cross_badge {
  display: none;
}

.wcu_info_card {
  position: relative;
  z-index: 3;
  width: 390px;
  min-height: 120px;
  padding: 22px 28px;
  border-radius: 65px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  transition: transform 0.3s ease;
}

.wcu_info_card:hover {
  transform: translateY(-4px);
}

/* Alternating Card Left/Right Alignment */
.card_1 {
  background: var(--secondaryColor);
  margin-left: 0;
  padding-right: 120px;
  text-align: left;
  align-items: flex-start;
}

.card_2 {
  background: var(--primaryColor);
  margin-left: auto;
  padding-left: 120px;
  text-align: left;
  align-items: flex-start;
}

.card_4 {
  /* STEP 03 */
  background: var(--secondaryColor);
  margin-left: 0;
  padding-right: 120px;
  text-align: left;
  align-items: flex-start;
}

.card_3 {
  /* STEP 04 */
  background: var(--primaryColor);
  margin-left: auto;
  padding-left: 120px;
  text-align: left;
  align-items: flex-start;
}

/* Circular Icon Badges */
.wcu_card_icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 80px;
  height: 80px;
  background: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 3px 6px rgba(0, 0, 0, 0.08), 0 6px 16px rgba(0, 0, 0, 0.15);
  z-index: 5;
}

.card_1 .wcu_card_icon,
.card_4 .wcu_card_icon {
  right: 18px;
}

.card_2 .wcu_card_icon,
.card_3 .wcu_card_icon {
  left: 18px;
}

.wcu_card_icon i {
  font-size: 28px;
  color: #334155;
}

/* Little Arrow / Tail Pointer on the card pointing to target dot */
.card_1::before,
.card_2::before,
.card_4::before,
.card_3::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  z-index: 4;
}

.card_1::before {
  right: -8px;
  border-left: 10px solid var(--secondaryColor);
}

.card_2::before {
  left: -8px;
  border-right: 10px solid var(--primaryColor);
}

.card_4::before {
  right: -8px;
  border-left: 10px solid var(--secondaryColor);
}

.card_3::before {
  left: -8px;
  border-right: 10px solid #1a364a;
}

/* Giant "STEP 01", "STEP 02", etc. Text */
.card_1 h4::after,
.card_2 h4::after,
.card_4 h4::after,
.card_3 h4::after {
  position: absolute;
  top: 68%;
  transform: translateY(-50%);
  font-weight: 800;
  line-height: 1;
  text-align: center;
  white-space: pre;
  font-size: 34px;
}

.card_1 h4::after {
  content: "STEP\A 01";
  right: -218px;
  color: var(--secondaryColor);
}

.card_2 h4::after {
  content: "STEP\A 02";
  left: -218px;
  color: var(--primaryColor);
}

.card_4 h4::after {
  content: "STEP\A 03";
  right: -218px;
  color: var(--secondaryColor);
}

.card_3 h4::after {
  content: "STEP\A 04";
  left: -218px;
  color: var(--primaryColor);
}

/* Center Target Node Circles */
.card_1::after,
.card_2::after,
.card_4::after,
.card_3::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background: #ffffff;
  border-radius: 50%;
  z-index: 4;
}

.card_1::after {
  right: -104px;
  border: 4px solid var(--secondaryColor);
}

.card_2::after {
  left: -104px;
  border: 4px solid var(--primaryColor);
}

.card_4::after {
  right: -104px;
  border: 4px solid var(--secondaryColor);
}

.card_3::after {
  left: -104px;
  border: 4px solid var(--primaryColor);
}

/* Card Content Styling */
.wcu_info_card h4 {
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 5px 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.wcu_info_card p {
  line-height: 1.4;
  color:   #fff;
  margin: 0;
}

/* Fully Responsive Breakdown for Mobile/Tablets */
@media (max-width: 900px) {

  .wcu_outer_ring,
  .card_1::after,
  .card_2::after,
  .card_4::after,
  .card_3::after {
    display: none;
  }

  .wcu_infographic_container {
    gap: 20px;
    padding: 10px;
  }

  .wcu_info_card {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 20px;
    padding: 20px 18px 20px 110px !important;
    min-height: auto;
  }

  .wcu_info_card::before {
    display: none;
  }

  .card_1 .wcu_card_icon,
  .card_2 .wcu_card_icon,
  .card_4 .wcu_card_icon,
  .card_3 .wcu_card_icon {
    left: 15px !important;
    right: auto !important;
    width: 70px;
    height: 70px;
  }

  .card_1 h4::after,
  .card_2 h4::after,
  .card_4 h4::after,
  .card_3 h4::after {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    display: block;
    text-align: left;
    font-size: 12px;
    color: #ffffff;
    opacity: 0.85;
    margin-bottom: 4px;
    white-space: normal;
  }
}
/* ########################### */
/* Book Now Section Css  */
/* ########################### */
.book-now-modern {
  padding: 0;
  background: #fff9f0;
  position: relative;
  overflow: hidden;
  padding: 0px 20px;
}

.book-now-modern .container-fluid {
  position: relative;
  z-index: 2;
}

/* Image Containers */
.book-now-modern .image-wrapper {
  overflow: hidden;
  position: relative;
}

.book-now-modern .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 6s ease;
}

.book-now-modern .image-wrapper:hover img {
  transform: scale(1.05);
}
/* Image Overlay */
.book-now-modern .image-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    rgba(11, 43, 92, 0.3) 0%,
    transparent 100%
  );
}
/* Center Content */
.book-now-modern .content-center {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 450px;
}
.book-now-modern .content-inner {
  text-align: center;
  max-width: 400px;
}
.book-now-modern .content-inner h2 {
  font-size: 30px;
  font-weight: 700;
  color: var(--darkColor);
  margin: 0 0 20px 0;
  line-height: 1.2;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}
.book-now-modern .divider {
  width: 80px;
  height: 4px;
  background: var(--primaryColor);
  margin: 0 auto 25px;
  border-radius: 4px;
}

.book-now-modern .book-btn {
  display: inline-block;
  padding: 10px 45px;
  background: var(--secondaryColor);
  color: var(--whiteColor);
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
  border-radius: 50px;
  letter-spacing: 1px;
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.book-now-modern .book-btn:hover {
  background: var(--primaryColor);
  color: var(--whiteColor);
  border-color: var(--whiteColor);
  transform: translateY(-3px);
}

/* Responsive */
@media (max-width: 992px) {
  .book-now-modern .content-inner h2 {
    font-size: 25px;
  }
}

@media (max-width: 768px) {
  .book-now-modern {
    padding: 30px 15px 10px;
  }
  .book-now-modern .row {
    min-height: auto;
  }

  .book-now-modern .image-wrapper,
  .book-now-modern .content-center {
    height: 300px;
  }

  .book-now-modern .content-inner h2 {
    font-size: 25px;
  }

  .book-now-modern .book-btn {
    padding: 14px 35px;
    font-size: 16px;
  }
}

@media (max-width: 576px) {
  .book-now-modern .image-wrapper,
  .book-now-modern .content-center {
    height: 250px;
  }

  .book-now-modern .content-inner {
    padding: 20px;
  }

  .book-now-modern .content-inner h2 {
    font-size: 22px;
    margin-bottom: 15px;
  }

  .book-now-modern .divider {
    width: 60px;
    margin-bottom: 20px;
  }
}

/* ########################### */
/* Top Routes Section Css  */
/* ########################### */

.top-routes-modern {
  padding: 60px 0;
  background: #f8fafc;
  font-family:
    "Inter",
    -apple-system,
    sans-serif;
}

.top-routes-modern .section-header {
  text-align: center;
  margin-bottom: 45px;
}

.top-routes-modern .section-header h2 {
  font-size: 32px;
  font-weight: 600;
  color: #0f172a;
  margin: 0;
  letter-spacing: -0.5px;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
}

.top-routes-modern .section-header h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: var(--primaryColor);
  border-radius: 3px;
}

/* Routes Grid */
.top-routes-modern .routes-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin: 0 auto;
  margin-top: 40px;
}

.top-routes-modern .route-card {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
  transition: all 0.2s ease;
  border: 1px solid #eef2f6;
}

.top-routes-modern .route-card:hover {
  box-shadow: 0 8px 25px rgba(37, 99, 235, 0.08);
  border-color: var(--primaryColor);
  transform: translateY(-2px);
}

.top-routes-modern .route-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  text-decoration: none;
  color: inherit;
}

.top-routes-modern .route-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.top-routes-modern .route-icon {
  width: 40px;
  height: 40px;
  background: #eef2ff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primaryColor);
  font-size: 18px;
  transition: all 0.2s ease;
}

.top-routes-modern .route-card:hover .route-icon {
  background: var(--primaryColor);
  color: #ffffff;
}

.top-routes-modern .route-name {
  font-size: 15px;
  font-weight: 500;
  color: #1e293b;
  letter-spacing: 0.3px;
}

.top-routes-modern .route-arrow {
  color: #94a3b8;
  font-size: 14px;
  transition: all 0.2s ease;
}

.top-routes-modern .route-card:hover .route-arrow {
  color: var(--primaryColor);
  transform: translateX(3px);
}

/* Responsive */
@media (max-width: 992px) {
  .top-routes-modern .routes-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    padding: 0 15px;
  }
}

@media (max-width: 576px) {
  .top-routes-modern {
    padding: 40px 0;
  }

  .top-routes-modern .section-header h2 {
    font-size: 26px;
  }

  .top-routes-modern .routes-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .top-routes-modern .route-link {
    padding: 14px 18px;
  }

  .top-routes-modern .route-name {
    font-size: 14px;
  }
}

/* =======================================
          APP SECTION 
  ===================================== */

.app_section {
  /* --app-c1: var(--primaryColor, #3a3eb1); */
  --app-c2: var(--secondaryColor, #ff5e36);
  --app-c3: #7000ff;
  --app-bg: #01511a;
  --glass-bg: rgba(255, 255, 255, 0.05);
  --glass-border: rgba(255, 255, 255, 0.12);
  padding: 60px 0px;
  background: #f4f6fa;
  position: relative;
}
.app_section .app-wrapper {
  position: relative;
  overflow: hidden;
  padding: clamp(32px, 5.5vw, 72px);
  border-radius: clamp(28px, 4vw, 44px);
  background: #ffffff;
  box-shadow: 0 30px 80px -20px rgba(10, 15, 45, 0.4);
  border: 1px solid var(--glass-border);
}

/* Glowing Ambient Orbs */
.app_section .glow-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(90px);
  pointer-events: none;
  opacity: 0.45;
  z-index: 1;
}

.app_section .glow-orb-1 {
  top: -20%;
  right: -10%;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, var(--app-c2), transparent 70%);
}

.app_section .glow-orb-2 {
  bottom: -20%;
  left: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, var(--app-c3), var(--app-c1) 60%, transparent);
}

/* Mesh overlay texture */
.app_section .app-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px);
  background-size: 24px 24px;
  opacity: 0.3;
  pointer-events: none;
}

/* ---------- Layout Grid ---------- */
.app_grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(32px, 5vw, 64px);
  align-items: center;
}

/* ---------- Typography & Badge ---------- */
.app_section .badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 16px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 12px;
  font-weight: 600;
  color: #0a0a0a;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 20px;
  backdrop-filter: blur(10px);
}

.app_section .pulse-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--app-c2);
  box-shadow: 0 0 10px var(--app-c2);
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 94, 54, 0.7);
  }

  70% {
    transform: scale(1);
    box-shadow: 0 0 0 8px rgba(255, 94, 54, 0);
  }

  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 94, 54, 0);
  }
}

.app_section .app_title {
  margin: 0;
  font-size: clamp(2rem, 3.8vw, 2.7rem);
  font-weight: 800;
  line-height: 1.15;
  background: linear-gradient(135deg, #020202 30%, rgba(255, 255, 255, 0.7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: -0.02em;
}

.app_lead {
  margin: 20px 0 0;
  max-width: 48ch;
  font-size: clamp(0.98rem, 1.2vw, 1.12rem);
  line-height: 1.75;
  color: rgb(17 15 15 / 72%);
}

/* ---------- Glassmorphic Interactive Card ---------- */
.app_section .qr-container {
  display: flex;
  align-items: center;
  gap: clamp(20px, 3vw, 32px);
  margin-top: clamp(30px, 4vw, 44px);
  padding: clamp(20px, 2.5vw, 28px);
  border-radius: 28px;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
}

.app_section .qr-container:hover {
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4);
}

.app_stores {
  flex: 1 1 auto;
  min-width: 0;
}

.app_section .qr-text {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgb(0 0 0 / 60%); 
}

.app_stores .qr-text {
  margin-bottom: 14px !important;
}

.app_section .store-grid {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.app_section .store-link {
  display: block;
  border-radius: 12px;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.app_section .store-link:hover {
  transform: translateY(-5px) scale(1.03);
}

.app_section .store-image {
  display: block;
  width: 100%;
  max-width: 155px;
  height: auto;
  border-radius: 12px;
}

/* Gradient Separator Divider */
.app_divider {
  flex: 0 0 auto;
  align-self: stretch;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.2), transparent);
}

/* QR Code Display */
.app_section .qr-code-section {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 120px;
  text-align: center;
}

.app_section .qr-frame {
  padding: 8px;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease;
}

.app_section .qr-container:hover .qr-frame {
  transform: scale(1.05);
}

.app_section .qr-image {
  display: block;
  width: 86px;
  height: 86px;
  border-radius: 10px;
}

.app_section .qr-code-section .qr-text {
  font-size: 10.5px;
  line-height: 1.4;
}

/* ---------- Floating Phone Mockup ---------- */
.app_visual {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.app-image-container {
  position: relative;
  z-index: 2;
  animation: appFloat 6s ease-in-out infinite alternate;
}

.app-image-glow {
  position: absolute;
  inset: 10%;
  background: radial-gradient(circle, var(--app-c2) 0%, var(--app-c1) 60%, transparent 80%);
  filter: blur(40px);
  opacity: 0.5;
  z-index: -1;
  transition: opacity 0.4s ease;
}

.app_section .app-image {
  display: block;
  max-width: 100%;
  height: auto;
  filter: drop-shadow(0 30px 40px rgba(0, 0, 0, 0.5));
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.app-image-container:hover .app-image {
  transform: scale(1.04) rotate(-1deg);
}

.app-image-container:hover .app-image-glow {
  opacity: 0.8;
}

@keyframes appFloat {
  0% {
    transform: translateY(-12px);
  }

  100% {
    transform: translateY(12px);
  }
}

/* ===============================================
   100% RESPONSIVE BREAKPOINTS
   =============================================== */

@media (max-width: 991.98px) {
  .app_grid {
    grid-template-columns: 1fr;
    gap: clamp(32px, 6vw, 48px);
    text-align: center;
  }

  .app_visual {
    order: 1;
  }

  .app_content {
    order: 2;
  }

  .app_section .app-image {
    max-width: 68%;
    margin: 0 auto;
  }

  .app_lead {
    margin-left: auto;
    margin-right: auto;
  }

  .app_section .store-grid,
  .app_section .qr-container {
    justify-content: center;
  }
}

@media (max-width: 575.98px) {
  .app_section .app-wrapper {
    padding: 30px 20px;
    border-radius: 28px;
  }

  .app_section .app-image {
    max-width: 82%;
  }

  .app_section .qr-container {
    flex-direction: column;
    gap: 20px;
    padding: 24px 18px;
    border-radius: 22px;
  }

  .app_stores {
    width: 100%;
  }

  .app_divider {
    align-self: auto;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  }

  .app_section .qr-code-section {
    max-width: 100%;
  }

  .app_section .store-image {
    max-width: 145px;
  }
}

@media (max-width: 419.98px) {
  .app_section .store-grid {
    flex-direction: column;
    width: 100%;
  }

  .app_section .store-item {
    width: 100%;
  }

  .app_section .store-image {
    max-width: 175px;
    margin: 0 auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-image-container {
    animation: none;
  }

  .app_section .store-link,
  .app_section .app-image {
    transition: none;
  }
}

/* ########################### */
/* FAQ Section Css  */
/* ########################### */

.faq-section-modern {
  padding: 60px 0;
  background: #f8fafc;
  font-family:
    "Inter",
    -apple-system,
    sans-serif;
}

.faq-section-modern .section-header {
  text-align: center;
  margin-bottom: 45px;
}

.faq-section-modern .section-header h2 {
  font-size: 32px;
  font-weight: 600;
  color: #0f172a;
  margin: 0;
  position: relative;
  display: inline-block;
  padding-bottom: 15px;
}

.faq-section-modern .section-header h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: var(--primaryColor);
  border-radius: 3px;
}

.faq-section-modern .faq-container {
  background: #ffffff;
  border-radius: 25px;
  padding: 30px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
  border: 1px solid #eef2f6;
  margin-top: 40px;
}

.faq-section-modern .accordion-item {
  border: none;
  margin-bottom: 15px;
  background: transparent;
}

.faq-section-modern .accordion-item:last-child {
  margin-bottom: 0;
}

.faq-section-modern .accordion-header {
  margin: 0;
}

.faq-section-modern .accordion-button {
  background: #f8fafc;
  border-radius: 16px !important;
  padding: 18px 24px;
  font-size: 16px;
  font-weight: 600;
  color: var(--darkColor);
  border: none;
  box-shadow: none !important;
  transition: all 0.2s ease;
}

.faq-section-modern .accordion-button:hover {
  background: #f1f5f9;
}

.faq-section-modern .accordion-button:not(.collapsed) {
  background: var(--primaryColor);
  color: #ffffff!important;
  border-radius: 16px 16px 0 0 !important;
}

.faq-section-modern .accordion-button p {
  margin: 0;
  font-weight: 600;
}

.faq-section-modern .accordion-button::after {
  background-size: 16px;
  transition: all 0.2s ease;
}
.accordion-button::after {
  background-size: 30px !important;
}
.accordion-button::after {
  width: 30px;
  height: 30px;
  background-image: url('../img/plus.svg');
  background-size: 30px;
}
.accordion-button:not(.collapsed)::after {
  background-image: url('../img/sum.svg');
}
.faq-section-modern .accordion-button:not(.collapsed)::after {
  filter: brightness(0) invert(1);
}
.accordion-button:not(.collapsed) {
  outline: none !important;
  border-bottom: none !important;
}
.faq-section-modern .accordion-body {
  background: #ffffff;
  padding: 20px 24px;
  border: 2px solid #f1f5f9;
  border-top: none;
  border-radius: 0 0 16px 16px;
}

.faq-section-modern .accordion-body p {
  margin: 0;
  color: var(--accentColor);
  line-height: 1.6;
  font-size: 15px;
}

/* Responsive */
@media (max-width: 768px) {
  .faq-section-modern {
    padding: 50px 0;
  }

  .faq-section-modern .section-header h2 {
    font-size: 28px;
  }

  .faq-section-modern .faq-container {
    padding: 20px;
  }

  .faq-section-modern .accordion-button {
    padding: 16px 20px;
    font-size: 15px;
  }

  .faq-section-modern .accordion-body {
    padding: 16px 20px;
  }
}

@media (max-width: 576px) {
  .faq-section-modern {
    padding: 40px 0;
  }

  .faq-section-modern .section-header h2 {
    font-size: 24px;
  }

  .faq-section-modern .accordion-button {
    padding: 14px 16px;
    font-size: 14px;
  }

  .faq-section-modern .accordion-body p {
    font-size: 14px;
  }
}

/* ########################### */
/* FAQ Section Css  */
/* ########################### */

.footer-modern {
  background: #0b1120;
  color: var(whiteColor);
  border: 0;
}

/* Back to Top */
.footer-modern .back-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 100;
}

.footer-modern .top-btn {
  width: 44px;
  height: 44px;
  background: var(--secondaryColor);
  border: none;
  border-radius: 8px;
  color: var(--whiteColor);
  font-size: 20px;
  cursor: pointer;
  transition: 0.2s;
}

.footer-modern .top-btn:hover {
  background: var(--primaryColor);
  color: var(--whiteColor);
  transform: translateY(-3px);
  box-shadow: inset 0 0 0 1px var(--primaryColor), 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Footer Main */
.footer-modern .footer-main {
  padding: 60px 0 40px;
  background:#0d1b2a;
  border-bottom: 1px solid #eeeeee59;
}

/* Logo */
.footer-modern .footer-logo {
  max-width: 130px;
  height: auto;
  margin-bottom: 20px;
  background: var(--whiteColor);
  border-radius: 5px;
  padding: 5px;
}

/* Social */
.footer-modern .social-links {
  display: flex;
  gap: 12px;
}
.footer_contact_address a:hover {
  color: var(--secondaryColor) !important;
}
.footer-modern .social-link {
  width: 36px;
  height: 36px;
  background: var(--whiteColor);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--accentColor);
  text-decoration: none;
  transition: 0.2s;
}

.footer-modern .social-link:hover {
  background: var(--primaryColor);
  color: var(--whiteColor);
  border: 1px solid var(--primaryColor);
}

/* Footer Title */
.footer-modern .footer-title {
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 20px;
  letter-spacing: 0.3px;
  text-transform: capitalize;
}

/* Contact */
.footer-modern .contact-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.footer-modern .contact-item {
  /* display: flex; */
  align-items: center;
  gap: 10px;
  color: var(--whiteColor);
  text-decoration: none;
  font-size: 14px;
  transition: 0.2s;
}

.footer-modern .contact-item:hover {
  color: #94a3b8;
}

.footer-modern .contact-item i {
  width: 22px;
  color: #2f3190;
  font-size: 12px;
  height: 22px;
  line-height: 22px;
  border-radius: 50%;
  border: 1px solid #ffffff;
  text-align: center;
  background: #ffffff;
}
.footer_contact_address .contact-link i {
  width: 22px;
  color: #2f3190;
  font-size: 12px;
  height: 22px;
  line-height: 22px;
  border-radius: 50%;
  border: 1px solid #ffffff;
  text-align: center;
  background: #ffffff;
}
.footer_contact_address a span {
  min-width: 140px;
  display: inline-block;
  text-align: left;
  font-weight: 500;
}
.footer-modern .office {
  /* background: #1e293b; */
  padding: 2px 0px;
  border-radius: 4px;
  font-size: 14px;
  margin-right: 6px;
  color: var(--whiteColor);
}

/* Links */
.footer-modern .links-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-modern .links-list a {
  color: var(--whiteColor);
  text-decoration: none;
  font-size: 14px;
  transition: 0.2s;
}

.footer-modern .links-list a:hover {
  color: var(--secondaryColor);
  transform: translateX(4px);
}

/* Payment */
.footer-modern .payment-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  margin-top: 10px;
}

.footer-modern .payment-box {
  background: #fff;
  border-radius: 6px;
  padding: 6px;
  text-align: center;
}

.footer-modern .payment-box img {
  max-width: 100%;
  height: 30px;
  object-fit: contain;
}

/* Footer Bottom */
.footer-modern .footer-bottom {
  padding: 20px 0;
  background: #0d1b2a;
}

.footer-modern .bottom-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 15px;
}

.footer-modern .copyright {
  font-size: 13px;
  color: var(--whiteColor);
}

.footer-modern .copyright a {
  color: var(--whiteColor);
  text-decoration: none;
}

.footer-modern .copyright a:hover {
  color: var(--secondaryColor);
}

.footer-modern .powered {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  color: var(--whiteColor);
}

.footer-modern .powered img {
  height: 20px;
  width: 100%;
  padding: 2px;
}

/* Responsive */
@media (max-width: 768px) {
  .footer-modern .footer-main [class*="col-"] {
    margin-bottom: 30px;
  }

  .footer-modern .bottom-wrap {
    flex-direction: column;
    text-align: center;
  }

  .footer-modern .back-top {
    bottom: 20px;
    right: 20px;
  }
}

@media (max-width: 576px) {
  .footer-modern .footer-main {
    padding: 50px 0 30px;
  }

  .footer-modern .footer-title {
    font-size: 15px;
    margin-bottom: 15px;
  }

  .footer-modern .contact-item {
    font-size: 13px;
  }

  .footer-modern .links-list a {
    font-size: 13px;
  }
}
/* ########################### */
/* Contact Us Css  */
/* ########################### */
.contact-modern {
  font-family:
    "Inter",
    -apple-system,
    BlinkMacSystemFont,
    sans-serif;
  background: #f8fafc;
  min-height: 100vh;
  padding: 40px 0;
}

/* Page Header */
.contact-modern .page-header {
  text-align: center;
  margin-bottom: 50px;
  position: relative;
}

.contact-modern .page-header h1 {
  font-size: 48px;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 15px 0;
  position: relative;
  display: inline-block;
}

.contact-modern .page-header h1::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: linear-gradient(90deg, #06daea, #fd6008);
  border-radius: 4px;
}

.contact-modern .page-header p {
  font-size: 16px;
  color: #475569;
  max-width: 500px;
  margin: 20px auto 0;
}

/* Main Grid */
.contact-modern .contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Form Side */
.contact-modern .form-side {
  background: #ffffff;
  border-radius: 30px;
  padding: 40px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.03);
  border: 1px solid #eef2f6;
}

.contact-modern .form-side h3 {
  font-size: 24px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 10px 0;
}

.contact-modern .form-side .form-subtitle {
  font-size: 14px;
  color: #64748b;
  margin-bottom: 30px;
}

/* Form Styles */
.contact-modern .contact-form {
  width: 100%;
}

.contact-modern .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}

.contact-modern .form-group {
  margin-bottom: 20px;
}

.contact-modern .form-group label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #334155;
  margin-bottom: 6px;
}

.contact-modern .form-group input:focus,
.contact-modern .form-group textarea:focus,
.contact-modern .form-group select:focus {
  outline: none;
  border-color: var(--primaryColor);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.contact-modern .form-group textarea {
  min-height: 120px;
  resize: vertical;
}

.contact-modern .submit-btn {
  width: 100%;
  padding: 14px 30px;
  background: var(--primaryColor);
  border: none;
  border-radius: 40px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.contact-modern .submit-btn:hover {
  background: #1d4ed8;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(37, 99, 235, 0.2);
}

.contact-modern .submit-btn i {
  font-size: 14px;
  transition: transform 0.2s;
}

.contact-modern .submit-btn:hover i {
  transform: translateX(5px);
}

/* Info Side */
.contact-modern .info-side {
  background: #ffffff;
  border-radius: 30px;
  padding: 40px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.03);
  border: 1px solid #eef2f6;
}

.contact-modern .info-side h3 {
  font-size: 24px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 30px 0;
}

/* Contact Cards */
.contact-modern .contact-cards {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.contact-modern .contact-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 25px;
  background: #f8fafc;
  border-radius: 20px;
  transition: all 0.3s;
  border: 1px solid #eef2f6;
}

.contact-modern .contact-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.05);
  border-color: var(--primaryColor);
}

.contact-modern .card-icon {
  width: 54px;
  height: 54px;
  background: var(--primaryColor);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 22px;
  flex-shrink: 0;
}

.contact-modern .card-content {
  flex: 1;
}

.contact-modern .card-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--primaryColor);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 5px;
  display: block;
}

.contact-modern .card-title {
  font-size: 16px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 10px 0;
}

.contact-modern .contact-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.contact-modern .contact-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #475569;
  text-decoration: none;
  font-size: 14px;
  transition: all 0.2s;
}

.contact-modern .contact-link:hover {
  color: var(--primaryColor);
  transform: translateX(5px);
}

.contact-modern .location-tag {
  /* background: #e6f0ff; */
  padding: 2px 8px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 500;
  color: var(--primaryColor);
  margin-right: 8px;
}

/* Social Links */
.contact-modern .social-section {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #eef2f6;
}

.contact-modern .social-section h4 {
  font-size: 16px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 15px 0;
}

.contact-modern .social-grid {
  display: flex;
  gap: 12px;
}

.contact-modern .social-link {
  width: 44px;
  height: 44px;
  background: #f8fafc;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #475569;
  text-decoration: none;
  transition: all 0.2s;
  border: 1px solid #eef2f6;
}

.contact-modern .social-link:hover {
  background: var(--primaryColor);
  color: #ffffff;
  transform: translateY(-3px);
  border-color: var(--primaryColor);
}

/* Responsive */
@media (max-width: 992px) {
  .contact-modern .contact-grid {
    gap: 30px;
    padding: 0 20px;
  }

  .contact-modern .page-header h1 {
    font-size: 42px;
  }
}

@media (max-width: 768px) {
  .contact-modern .contact-grid {
    grid-template-columns: 1fr;
  }

  .contact-modern .form-side,
  .contact-modern .info-side {
    padding: 30px;
  }

  .contact-modern .page-header h1 {
    font-size: 36px;
  }

  .contact-modern .form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (max-width: 576px) {
  .contact-modern {
    padding: 20px 0;
  }

  .contact-modern .page-header h1 {
    font-size: 32px;
  }

  .contact-modern .form-side,
  .contact-modern .info-side {
    padding: 25px;
    border-radius: 24px;
  }

  .contact-modern .contact-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 20px;
  }

  .contact-modern .contact-link {
    justify-content: center;
  }

  .contact-modern .social-grid {
    justify-content: center;
  }
}

/* Animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.contact-modern .form-side,
.contact-modern .info-side {
  animation: fadeInUp 0.6s ease backwards;
}

.contact-modern .info-side {
  animation-delay: 0.2s;
}
