@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap");

/*
* Chapter 1 Supplimentary Style
* Chapter 2 Buttons Style
* Chapter 3 Textbox Style
* Chapter 4 Checkbox & Radio Style
* Chapter 5 Dropdown Style
* Chapter 6 Nav Tabs Style
* Chapter 7 Select Dropdown Style
* Chapter 7 Login & Registration Style
* Chapter 8 Header & Footer Style
* Chapter 9 Tooltip Style
* Chapter 10 Search Style
* Chapter 11 Tempus Dominus Date Time Style
* Chapter 12 Voli/Flight List Style
* Chapter 13 Range Slider Style
* Chapter 14 Language Selection Style
* Chapter 15 User Search Criteria Style
* Chapter 16 Airlins Matrix Style
* Chapter 17 Email selection Style
* Chapter 18 Fare Rules Style
* Chapter 19 Flight Details Style
* Chapter 20 More Fares Style
* Chapter 21 Cart Style
* Chapter 22 rate matrix / calendar search style
* Chapter 23 Payment Style
* Chapter 24 three input date picker style
* Chapter 25 Read-Only Form Control Style
* Chapter 26 Car List Design
*/

/* --------------------------
Chapter 1 Supplimentary Style
--------------------------- */
:root {
  --color-blue: #0a6ada;
  --color-blue74: #7ad9ff;
  --color-blue97: #f1fbff;
  --color-blue98: #eff4ff;
  --color-blue99: #f4fafe;
  --color-green: #3cbe00;
  --color-orange: #fba715;
  --color-sky: #f2f8ff;
  --color-sky97: #eff4ff;
  --color-grey22: #383838;
  --color-grey44: #707070;
  --color-grey74: #bababf;
  --color-grey80: #cbcbcb;
  --color-grey85: #d8d8d8;
  --color-grey88: #e1dfdf;
  --color-grey93: #ededed;
  --color-grey95: #f2f2f2;

  --radius-outer: 10px;
  --radius-inner: 5px;

  --font-femto: 8px;
  --font-pico: 9px;
  --font-nano: 10px;
  --font-micro: 11px;
  --font-uxs: 12px;
  --font-xs: 14px;
  --font-sm: 16px;
  --font-md: 18px;
}

/* MD */
@media (min-width: 768px) {
  :root {
    --font-femto: 9px;
    --font-pico: 10px;
    --font-nano: 11px;
    --font-micro: 12px;
    --font-uxs: 13px;
    --font-xs: 15px;
    --font-sm: 17px;
    --font-md: 19px;
  }
}

/* LG */
@media (min-width: 992px) {
  :root {
    --font-femto: 10px;
    --font-pico: 11px;
    --font-nano: 12px;
    --font-micro: 13px;
    --font-uxs: 14px;
    --font-xs: 16px;
    --font-sm: 18px;
    --font-md: 20px;
  }
}

/* XL */
@media (min-width: 1200px) {
  :root {
    --font-femto: 11px;
    --font-pico: 12px;
    --font-nano: 13px;
    --font-micro: 14px;
    --font-uxs: 15px;
    --font-xs: 17px;
    --font-sm: 19px;
    --font-md: 21px;
  }
}

/* XXL */
@media (min-width: 1400px) {
  :root {
    --font-femto: 12px;
    --font-pico: 13px;
    --font-nano: 14px;
    --font-micro: 15px;
    --font-uxs: 16px;
    --font-xs: 18px;
    --font-sm: 20px;
    --font-md: 22px;
  }
}

/* Greater Than XXL */
@media (min-width: 1600px) {
  :root {
  }
}

/* reboot.css override starts */

html {
  font-size: var(--bs-body-font-size);
  line-height: var(--bs-body-line-height);
}

label {
  margin-bottom: unset;
}

/* reboot.css override ends */

html,
body {
  overflow-x: hidden;
  overflow-y: auto;
  /* height: auto; */
  height: 100%;
}

body {
  font-family: "Source Sans 3", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: var(--color-grey22);

  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

a {
  text-decoration: none;
}

.text_blue {
  color: var(--color-blue);
}

.text_grey22 {
  color: var(--color-grey22);
}

.row {
  position: relative;
}

.text_green {
  color: var(--color-green);
}

sup {
  color: var(--bs-danger);
}

gmp-map {
  height: 100%;
}

.h_google_map {
  height: 100%;
  margin: 0;
  padding: 0;
}

/* -------------------------------------
Chapter 25 Read-Only Form Control Style
-------------------------------------- */
.form_label_readonly {
  display: block;
  width: 100%;
  border: solid 1px var(--color-grey88);
  background-color: var(--color-grey93);
  color: var(--color-grey22);
  font-size: var(--font-micro);
  line-height: var(--font-micro);
  border-radius: var(--radius-outer);
  padding: calc(var(--font-sm) * 0.5);
}

/* ------------------------------------- */
/* Chapter 24 three input date picker style
/* ------------------------------------- */

.custom-date-group {
  border: 1px solid var(--color-grey88);
  border-radius: var(--radius-outer);
  transition:
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

.custom-date-group .form-control,
.custom-date-group .input-group-text {
  border: none !important;
  background-color: transparent !important;
}

.custom-date-group .date-part-input {
  flex: 1 1 20%;
  padding-left: 4px;
  padding-right: 4px;
  box-shadow: none !important;
}

.custom-date-group .date-part-input.year-input {
  flex: 1 1 30%;
}

.custom-date-group .date-separator {
  padding-left: 0;
  padding-right: 0;
  color: var(--color-grey88);
  font-weight: 500;
}

.custom-date-group .form-control:focus {
  outline: none !important;
  box-shadow: none !important;
}

.custom-date-group:focus-within {
  border-color: var(--color-blue) !important;
}

/* --------------------- */
/* Chapter 23 Payment Style
/* --------------------- */

.v_payment_wrap {
  border-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  /* border: solid 1px red; */
  display: flex;
  flex-direction: column;
  /* min-height: 375px; */
}

.v_payment_left {
  /* flex: 0 0 240px; */
  border-bottom: solid 1px var(--color-grey88);
}

.v_payment_right {
  flex: 1;
}

.v_payment_type_title {
  font-size: var(--font-uxs);
  padding: var(--font-sm);
}

.v_payment_type_options {
}

.v_payment_type_options .nav-link {
  color: var(--color-grey22);
  padding: var(--font-micro) var(--font-sm);
  text-align: left;
  font-size: var(--font-nano);
}

.v_payment_type_options .nav-pills .nav-link {
  border-radius: unset;
}

.v_payment_type_options .nav-pills .nav-link.active,
.v_payment_type_options .nav-pills .show > .nav-link,
.v_payment_type_options .nav-link:focus,
.v_payment_type_options .nav-link:hover {
  color: var(--color-blue);
  background-color: var(--color-blue99);
}

.v_payment_type_wrap {
  padding: var(--font-sm);
}

.v_payment_type_details {
}

.v_payment_title {
  font-size: var(--font-uxs);
  color: var(--color-blue);
  margin-bottom: var(--font-sm);
}

.v_payment_desc {
  font-size: var(--font-nano);
  margin: var(--font-sm) 0px;
}

/* Hide both blocks by default */
.saved-card-block,
.other-card-block {
  display: none;
}

.v_flight_details_wrap {
  border: solid 1px var(--color-blue74);
  border-radius: var(--radius-outer);
  background-color: var(--color-blue97);
  padding: var(--font-sm);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--font-sm);
}

.v_flight_details_left {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--font-nano);
}

.v_flight_details_right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 4px;
}

.v_flight_details_title {
  font-size: var(--font-uxs);
}

.v_flight_details_title .icon {
  color: var(--color-blue);
}

.v_flight_details_box {
  display: flex;
  /* justify-content: space-between; */
  flex-wrap: wrap;
  gap: var(--font-sm);
}

.c_vehicle_details_box [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}
.v_flight_details_child {
  display: flex;
  flex-direction: column;
  flex: 1 1 25%;
}

.v_flight_details_subtitle {
  font-size: var(--font-nano);
  color: var(--color-blue);
  margin-bottom: 6px;
}

.v_flight_from_to,
.v_flight_time {
  font-size: var(--font-nano);
  line-height: var(--font-uxs);
}

.v_flight_from_to i {
  color: var(--color-blue);
}

.v_flight_time {
  margin-bottom: 6px;
}

.v_flight_ecosaver_wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.v_flight_single_item_wrap {
  background-color: #fff;
  border-radius: var(--radius-outer);
  padding: var(--font-sm);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
}

.v_flight_single_item_wrap .form_box {
  margin: var(--font-sm) 0px 0px;
}

.v_additional_services_wrap {
  padding: var(--font-sm);
}

/* additional services popup design modification starts*/
.pas-service-title,
.pas-add-service-title {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  border-color: var(--color-blue);
  color: var(--color-blue);
  font-weight: 400;
  /* padding: .5rem .5rem; */
  text-transform: none;
  letter-spacing: normal;
}

.seg-dtl {
  font-size: var(--font-uxs);
}

.fl-seg-title span {
  color: var(--color-blue);
}

.pas-add-service {
  padding: 0px var(--font-sm);
  border-radius: var(--radius-inner);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
}

.pas-add-service-detail {
  font-size: var(--font-nano);
}

.service-name {
  color: var(--color-blue);
  font-weight: 400;
}

.pas-add-detial {
  box-shadow: none;
  padding: var(--font-sm);
  border: solid 1px var(--color-grey93);
  border-radius: var(--radius-inner);
}

/* additional services popup design modification ends*/

.v_conf_wrap {
  border-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
}

.v_conf_wrap.success {
  border: solid 1px var(--color-green);
}

.v_conf_wrap.pending {
  border: solid 1px var(--color-orange);
}

.v_conf_wrap.failed {
  border: solid 1px var(--bs-danger);
}

.v_conf_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: calc(var(--font-femto) - 1px);
}

.v_conf_status {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
}

.v_conf_message {
  font-size: var(--font-uxs);
}

.v_conf_body {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: var(--font-sm);
  padding: 0px var(--font-sm) var(--font-sm);
  /* border-top: solid 1px var(--color-grey88); */
}

.v_conf_left,
.v_conf_right,
.h_conf_left,
.h_conf_right {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-inner);
}

.v_conf_left,
.v_conf_right {
  padding: calc(var(--font-femto) * 1) calc(var(--font-micro) * 4);
}

.h_conf_left,
.h_conf_right {
  padding: var(--font-sm);
}

.h_conf_links {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: var(--font-sm);
}

.v_conf_right {
}

.h_conf_row {
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-inner);
  padding: var(--font-uxs);
  margin-bottom: var(--font-sm);
}

.h_conf_row .container {
  padding-left: 0;
  padding-right: 0;
}

.v_conf_icon_wrap {
  border-width: 1px;
  border-style: solid;
  border-radius: 50%;
  height: calc(var(--font-uxs) * 2);
  width: calc(var(--font-uxs) * 2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: calc(var(--font-femto) * 1.5);
}

.v_conf_wrap.success .v_conf_icon_wrap {
  border-color: var(--color-green);
  color: var(--color-green);
}

.v_conf_wrap.pending .v_conf_icon_wrap {
  border-color: var(--color-orange);
  color: var(--color-orange);
}

.v_conf_wrap.failed .v_conf_icon_wrap {
  border-color: var(--bs-danger);
  color: var(--bs-danger);
}

.v_conf_wrap.success .v_conf_message {
  color: var(--color-green);
}

.v_conf_wrap.pending .v_conf_message {
  color: var(--color-orange);
}

.v_conf_wrap.failed .v_conf_message {
  color: var(--bs-danger);
}

.v_book_label {
  font-size: var(--font-nano);
}

.v_book_dxh {
  font-size: calc(var(--font-femto) * 2);
}

.v_book_pnr {
  font-size: var(--font-nano);
  color: var(--color-blue);
}

.v_conf_links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--font-femto) * 5);
}

.v_conf_footer {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0px var(--font-sm) var(--font-sm);
}

.v_conf_attention,
.v_conf_warning {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  font-size: var(--font-uxs);
  font-weight: 500;
}

.v_conf_attention {
  color: var(--bs-danger);
}

.v_conf_warning {
  color: var(--color-orange);
}

.v_conf_issue_ticket {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.v_conf_footer .att_message,
.v_conf_issue_ticket .att_message,
.v_conf_issue_ticket .war_message {
  font-size: var(--font-nano);
  text-align: justify;
}

.v_conf_issue_ticket .war_message {
  margin-bottom: 0px;
}

.v_conf_issue_ticket .action {
  display: flex;
  justify-content: flex-end;
  gap: var(--font-femto);
}

/* MD */
@media (min-width: 768px) {
  .v_payment_wrap {
    flex-direction: row;
    /* min-height: 375px; */
  }

  .v_payment_left {
    /* flex: 0 0 240px; */
    border-right: solid 1px var(--color-grey88);
    border-bottom: none;
  }
}

/* LG */
@media (min-width: 992px) {
  .v_payment_left {
    flex: 0 0 240px;
  }
}

/* XL */
@media (min-width: 1200px) {
  .v_payment_wrap {
    min-height: 350px;
  }

  .v_flight_details_wrap {
    flex-direction: row;
    align-items: center;
  }
}

/* XXL */
@media (min-width: 1400px) {
  .v_payment_wrap {
    min-height: 375px;
  }
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* ------------------------------------------- */
/* Chapter 22 rate matrix / calendar search style
/* ------------------------------------------- */
.matrix_container_wrap {
}

.matrix_call {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--font-femto);
  margin-bottom: var(--font-sm);
  cursor: pointer;
  font-size: var(--font-uxs);
  color: var(--color-blue);
}

.matrix_container {
  background-color: #fff;
  border-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  padding: var(--font-sm);
}

.rate_matrix_box {
}

.rate_row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  background-color: #fff;
}

.rate_col {
  border-top: solid 1px #dfdfdf;
  border-left: solid 1px #dfdfdf;
  text-align: center;
  /* font-weight: 500; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  flex: 1 1 12.5%;
  width: 12.5%;
  height: calc(var(--font-pico) * 4.5);
  padding: 0px 0px;
  cursor: pointer;
}

.rate_col:hover {
  background-color: var(--color-orange);
}

.sw_airline_rate_logo {
  margin: 0 auto;
  height: calc(var(--font-femto) * 2);
  width: calc(var(--font-femto) * 4);
  text-align: center;
}

.sw_airline_rate_logo img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: center center;
}

.rate_row .rate_col:last-child {
  border-right: solid 1px #dfdfdf;
}

/* First row date headers (column headers) */
.rate_matrix_box .rate_row:first-child .rate_col span {
  font-weight: 600;
}

/* First column date headers (row headers) */
.rate_matrix_box .rate_row .rate_col:first-child span {
  font-weight: 600;
}

.rate_matrix_box .rate_row:last-child .rate_col {
  border-bottom: solid 1px #dfdfdf;
}

.rate_row .rate_col:first-child {
  /* font-weight: 600; */
  justify-content: center;
}

.rate_row .rate_col:first-child:hover {
  background-color: unset;
  cursor: unset;
}

.rate_row .rate_col:first-child.suggested_row_col:first-child:hover {
  background-color: #ccf1ff;
}

.rate_matrix_box .rate_row:first-child .rate_col {
  /* font-weight: 600; */
}

.rate_matrix_box .rate_row:first-child .rate_col:hover {
  background-color: unset;
  cursor: unset;
}

.rate_matrix_box .rate_row:first-child .suggested_row_col:hover {
  background-color: #ccf1ff;
}

.rate_col span,
.m_l_10,
.sw-airline-matrix td {
  font-size: var(--font-nano);
}

.lowest_rate,
.lowest_rate_i {
  background-color: #ccffdd;
  font-weight: 600;
}

.highest_rate,
.highest_rate_i {
  background-color: #ffb3b3;
  font-weight: 600;
}

.suggested_rate {
  background-color: rgba(13, 138, 228, 1);
  color: #fff;
  font-weight: 600;
}

.suggested_row_col {
  background-color: #ccf1ff;
  /* color: #fff; */
}

.price_indicator_row {
  display: flex;
  flex-direction: row;
  align-items: center;
  margin-top: var(--font-sm);
}

.indicator_box {
  height: 20px;
  width: 20px;
  border: solid 1px #dfdfdf;
  border-radius: var(--radius-inner);
}

.m_l_10 {
  margin-left: 10px;
  /* font-weight: 600; */
}

.col_info {
  display: unset;
  /* color: var(--color-blue); */
}

.col_info_child {
  position: relative;
}

.col_info .info_right,
.col_info .info_left {
  display: flex;
  align-items: center;
  gap: 4px;
}

.col_info .info_right {
  position: absolute;
  right: -10px;
  top: 0px;
}

.col_info .info_left {
  position: absolute;
  left: -5px;
  top: 26px;
}

.col_info .info_right i,
.col_info .info_left i {
  width: 10px;
}

/* Default: show "Show", hide "Hide" */
.matrix_call .text_hide {
  display: none;
}

.matrix_call .text_show {
  display: inline;
}

/* When expanded: swap them */
.matrix_call[aria-expanded="true"] .text_hide {
  display: inline;
}

.matrix_call[aria-expanded="true"] .text_show {
  display: none;
}

/* Chevron rotation */
.matrix_call .fa-chevron-down {
  transition: transform 0.3s ease;
}

.matrix_call[aria-expanded="true"] .fa-chevron-down {
  transform: rotate(180deg);
}

/* Top-left corner */
.rate_matrix_box .rate_row:first-child .rate_col:first-child {
  border-radius: var(--radius-inner) 0 0 0;
}

/* Top-right corner */
.rate_matrix_box .rate_row:first-child .rate_col:last-child {
  border-radius: 0 var(--radius-inner) 0 0;
}

/* Bottom-left corner */
.rate_matrix_box .rate_row:last-child .rate_col:first-child {
  border-radius: 0 0 0 var(--radius-inner);
}

/* Bottom-right corner */
.rate_matrix_box .rate_row:last-child .rate_col:last-child {
  border-radius: 0 0 var(--radius-inner) 0;
}

@media (min-width: 768px) {
  .rate_col {
    padding: 0px 4px;
  }
}

@media (min-width: 1200px) {
  .rate_col {
    padding: 0px 8px;
  }
}

@media (min-width: 1600px) {
  .rate_col {
    padding: 0px 10px;
  }
}

/* ------------------
Chapter 21 Cart Style
------------------ */

.sec_cart {
}

.navigation_box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--font-nano);
}

.navigation_back {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--font-uxs);
  color: var(--color-grey22);
}

.navigation_back i {
  color: var(--color-blue);
}

.navigation_back:hover {
  text-decoration: none;
}

.navigation_wrap {
  position: relative;
  flex: 1;
  width: 100%;
  display: flex;
  justify-content: space-evenly;
}

.horizontal_rule {
  position: absolute;
  z-index: -1;
  top: 16px;
  border-top: solid 2px var(--color-grey80);
  width: 100%;
}

.navigation_child {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--font-nano);
  cursor: pointer;
}

.navigation_child .sr_no {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(var(--font-femto) * 4);
  width: calc(var(--font-femto) * 4);
  border-radius: 50%;
  font-size: var(--font-xs);
  color: #fff;
  border-style: solid;
  border-width: 1px;
}

.navigation_child.current .sr_no {
  background-color: #fff;
  color: var(--color-blue);
  border-color: var(--color-blue);
}

.navigation_child.completed .sr_no {
  background-color: var(--color-blue);
  border-color: var(--color-blue);
}

.navigation_child.pending .sr_no {
  background-color: var(--color-grey22);
  border-color: var(--color-grey22);
}

.navigation_child.current .desc,
.navigation_child.completed .desc {
  color: var(--color-blue);
}

.navigation_child .desc {
  /*position: absolute;
    bottom: 0;*/
  font-size: var(--font-uxs);
  text-align: center;
}

.v_cart_item,
.v_cart_total {
  border-radius: var(--radius-outer);
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  border: solid 1px var(--color-grey88);
}

.v_cart_item_header,
.v_cart_total_header {
  padding: var(--font-micro) var(--font-micro) var(--font-micro)
    calc(var(--font-micro) * 2);
  display: flex;
  align-items: center;
}

.v_cart_item_header .title,
.v_cart_total_header .title,
.v_conf_header .title {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
  font-size: var(--font-uxs);
}

.v_cart_item_header .icon i,
.v_cart_total_header .icon i,
.v_conf_header .icon i {
  color: var(--color-blue);
}

.v_cart_item_header {
  background-color: var(--color-grey93);
  justify-content: space-between;
}

.v_cart_total_header {
  background-color: #fff;
  justify-content: flex-start;
  gap: var(--font-femto);
}

.v_cart_item_header .title {
  font-size: var(--font-uxs);
}

.v_cart_item_remove {
  cursor: pointer;
  color: var(--bs-danger);
  display: inline-flex;
}

.v_cart_item_remove i {
  transition: color 0.3s ease;
}

.v_cart_item_remove:hover i {
  color: var(--color-grey22);
  animation: trashShake 0.5s ease;
}

@keyframes trashShake {
  0%,
  100% {
    transform: rotate(0deg);
  }

  20% {
    transform: rotate(-15deg);
  }

  40% {
    transform: rotate(15deg);
  }

  60% {
    transform: rotate(-10deg);
  }

  80% {
    transform: rotate(10deg);
  }
}

.v_cart_item_body {
}

.v_cart_total_body {
  padding: calc(var(--font-micro) * 4) calc(var(--font-micro) * 2);
  border-top: solid 1px var(--color-grey88);
}

.v_cart_total_footer {
  padding: var(--font-femto);
}

.v_cart_item_body .v_list_item_body {
  border-radius: unset;
  box-shadow: none;
}

.v_cart_item_body .form-control {
  height: unset;
  padding: 6px 10px;
}

.v_cart_item_list {
  display: flex;
  flex-direction: column;
  gap: var(--font-femto);
}

.v_cart_item_list_item {
  display: flex;
  gap: calc(var(--font-xs) * 0.5);
}

.v_cart_item_list_item i {
  font-size: var(--font-nano);
  margin-top: 2px;
}

.v_cart_item_list_item .desc {
  font-size: var(--font-femto);
  display: flex;
  flex-direction: column;
}

.v_cart_item_note {
  font-size: var(--font-femto);
  margin-top: calc(var(--font-micro) * 2);
}
.c_cart_item_note {
  margin-top: calc(var(--font-micro) * 2);
  display: flex;
  flex-direction: column;
}
.c_cart_item_note .primary {
  font-size: var(--font-nano);
  font-weight: 600;
}
.c_cart_item_note .secondary {
  font-size: calc(var(--font-femto) * 1);
  color: var(--color-grey44);
}

.v_cart_item_note sup {
  font-size: calc(var(--font-femto) * 0.5);
}

.v_cart_item_footer {
  padding: var(--font-sm);
  border-top: solid 1px var(--color-grey88);
}

.cd_v_cart_bag_title {
  font-size: var(--font-uxs);
  font-weight: 600;
}

.v_cart_bag_trip_box {
}

.v_cart_bag_trip_wrap {
  display: flex;
  flex-direction: row;
  gap: var(--font-femto);
}

.v_cart_bag_trip_count,
.v_cart_bag_trip_journey {
  font-size: var(--font-nano);
}

.v_cart_bag_trip_count {
  font-weight: 600;
}

.v_cart_bag_trip_journey {
  display: flex;
  align-items: center;
  gap: calc(var(--font-femto) * 0.5);
}

.v_cart_bag_trip_journey i {
  color: var(--color-blue);
}

.v_cart_bag_incl_wrap {
  border-style: solid;
  border-width: 1px;
  border-radius: var(--radius-outer);
  padding: var(--font-femto);
  display: flex;
  align-items: center;
  gap: calc(var(--font-femto) * 0.5);
  min-height: calc(var(--font-nano) * 6);
}

.v_cart_bag_incl_wrap.included {
  border-color: #7ad9ff;
  background-color: #f1fbff;
}

.v_cart_bag_incl_wrap.not-included {
  border-color: #cbcbcb;
  background-color: #fff7ea;
}

.v_cart_bag_incl_metadata {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.v_cart_bag_incl_metadata .title {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  font-weight: 600;
}

.v_cart_bag_incl_wrap.not-included .v_cart_bag_incl_metadata .title {
  color: var(--bs-danger);
}

.v_cart_bag_incl_metadata .dim {
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  color: var(--color-grey44);
}

.v_cart_bag_incl_metadata .desc {
  font-size: var(--font-femto);
  line-height: var(--font-femto);
}

.cd_v_cart_bag_icon {
  position: relative;
  font-size: var(--font-lg);
  margin-bottom: calc(var(--font-uxs) * 0.5);
}

.cd_v_cart_bag_icon i.fa-slash {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.v_cart_bag_incl_wrap.included .cd_v_cart_bag_icon i {
  color: var(--color-blue);
}

.v_cart_bag_incl_wrap.not-included .cd_v_cart_bag_icon i {
  color: #a3a3a3;
}

.v_cart_bag_incl_wrap.not-included .cd_v_cart_bag_icon i.fa-slash {
  color: var(--bs-danger);
}

.cd_v_cart_bag_status .badge {
  font-size: var(--font-femto);
  font-weight: 400;
  border-radius: var(--radius-inner);
}

.cd_v_cart_bag_status .badge.text-bg-success {
  /* min-width: calc(var(--font-micro) * 6); */
}

.v_cart_bag_incl_wrap.included .cd_v_cart_bag_status .badge.text-bg-success {
  background-color: #44b50c !important;
}

.v_cart_bag_incl_wrap.not-included
  .cd_v_cart_bag_status
  .badge.text-bg-success {
  background-color: #a3a3a3 !important;
}

.v_cart_item_rate_label {
  font-size: var(--font-sm);
  line-height: var(--font-sm);
  font-weight: 700;
}

.v_cart_item_rate {
  font-size: calc(var(--font-uxs) * 2);
  color: var(--color-blue);
  position: relative;
  font-weight: bold;
}

.v_cart_final_note {
  font-size: var(--font-nano);
}

.v_cart_final_note sup {
  font-size: calc(var(--font-femto) * 0.5);
}

/* MD */
@media (min-width: 768px) {
  .horizontal_rule {
    top: 18px;
  }
}

/* LG */
@media (min-width: 992px) {
  .horizontal_rule {
    top: 20px;
  }
}

/* XL */
@media (min-width: 1200px) {
  .navigation_box {
    flex-direction: row;
  }

  .horizontal_rule {
    top: 22px;
  }

  .navigation_back {
    margin-top: 10px;
  }
}

/* XXL */
@media (min-width: 1400px) {
  .horizontal_rule {
    top: 24px;
  }
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* ------------------------
Chapter 20 More Fares Style
------------------------ */
.slick-prev::before,
.slick-next::before {
  color: var(--color-blue);
}

.v_list_mf_wrap {
  display: flex;
  gap: 9px;
}

.v_list_mf_note {
  font-size: var(--font-nano);
  margin: var(--font-femto) 0px;
}

.v_list_mf_item {
  width: 296px;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  overflow: hidden;
  margin: 0px 9px;
}

.v_list_mf_header,
.v_list_mf_subheader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--font-femto) var(--font-xs);
}

.v_list_mf_subheader {
    min-height: 56px;
}

.v_list_mf_header {
  background-color: var(--color-grey95);
}

.v_list_mf_type {
  font-size: var(--font-nano);
}

.v_list_mf_share {
  display: flex;
  gap: calc(var(--font-femto) * 0.5);
  align-items: center;
  cursor: pointer;
}

.v_list_mf_share i {
  font-size: var(--font-xs);
  color: var(--color-grey44);
}

.v_list_mf_subheader {
  color: #fff;
}

.v_list_mf_subheader.light {
  background-color: #8dc1ff;
}

.v_list_mf_subheader.standard {
  background-color: #1245a4;
}

.v_list_mf_subheader.standard_plus {
  background-color: #1245a4;
}

.v_list_mf_subheader_type,
.v_list_mf_rate {
  font-size: var(--font-uxs);
}
.v_list_mf_subheader_type {
    flex: 1;
    padding-right: 8px;
    word-wrap: break-word;
}
.v_list_mf_rate {
  font-weight: bold;
    flex-shrink: 0;
    white-space: nowrap;
}

.v_list_mf_tabs_header ul {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.v_list_mf_tabs_header .nav-link {
  font-size: 12px;
  font-weight: 400;
  color: var(--color-grey22);
}

.v_list_mf_tabs_header .nav-tabs .nav-link {
  margin-bottom: 0px;
  border: none;
  border-bottom: solid 1px var(--color-grey88);
  border-top-left-radius: unset;
  border-top-right-radius: unset;
}

.v_list_mf_tabs_header .nav-tabs .nav-item.show .nav-link,
.v_list_mf_tabs_header .nav-tabs .nav-link.active {
  color: var(--color-blue);
  border: none;
  border-bottom: solid 3px var(--color-blue);
}

.v_list_mf_tabs_body {
  padding: 0px var(--font-xs) var(--font-xs);
  /* background-color: lime; */
  height: 250px;
  overflow: auto;

  /* Firefox */
  scrollbar-width: thin;
  scrollbar-color: var(--color-blue74) transparent;
}

/* Chrome, Edge, Safari */
.v_list_mf_tabs_body::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  /* for horizontal scrollbar if needed */
}

.v_list_mf_tabs_body::-webkit-scrollbar-thumb {
  background: var(--color-blue74);
  border-radius: 10px;
}

.v_list_mf_tabs_body::-webkit-scrollbar-track {
  background: transparent;
}

.v_list_mf_tabs_footer {
  background-color: var(--color-grey95);
  padding: var(--font-nano) var(--font-xs) var(--font-xs);
  /* border-top: solid 1px var(--color-grey88); */
}

.v_list_mf_tabs_list_wrap {
}

.v_list_mf_tabs_list_title {
  font-size: var(--font-nano);
  font-weight: 700;
  margin-bottom: var(--font-femto);
}

.v_list_mf_tabs_list_wrap ul {
  margin: 0;
  padding: 0;
}

.v_list_mf_tabs_list_wrap ul li {
  list-style: none;
  font-size: var(--font-femto);
  line-height: var(--font-nano);
  display: flex;
  flex-direction: row;
  gap: calc(var(--font-femto) * 0.5);
  margin-bottom: var(--font-femto);
}

.v_list_mf_tabs_list_wrap ul li:last-child {
  margin-bottom: 0;
}

.v_list_tabs_slider_container {
  display: flex;
  align-items: center;
  position: relative;
  background: #fff;
}

.v_list_tabs_scroll_wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  display: flex;
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* IE/Edge */
  scroll-behavior: smooth;
  flex: 1;
}

.v_list_tabs_scroll_wrapper::-webkit-scrollbar {
  display: none;
  /* Chrome/Safari */
}

.v_list_tabs_scroll_wrapper .nav-tabs {
  display: flex;
  flex-wrap: nowrap;
  border-bottom: none;
}

.v_list_tabs_scroll_wrapper .nav-item {
  flex: 0 0 auto !important;
}

.v_list_tabs_scroll_wrapper .nav-link {
  white-space: nowrap;
  padding: 4px 8px;
}

.v_list_slide_btn {
  border: none;
  background: #fff;
  color: var(--color-blue);
  padding: 6px 2px;
  cursor: pointer;
  z-index: 5;
  height: 100%;
  display: flex !important;
  align-items: center;
  transition:
    opacity 0.2s,
    visibility 0.2s;
  opacity: 1;
}

.v_list_slide_btn:hover {
  background-color: var(--color-blue98);
}

.v_list_slide_btn.disabled,
.v_list_slide_btn:disabled {
  color: var(--color-grey74) !important;
  cursor: not-allowed;
  pointer-events: none;
}

.v_list_slide_btn.left {
  /* border-right: 1px solid #eee; */
}

.v_list_slide_btn.right {
  /* border-left: 1px solid #eee; */
}

/* ----------------------------
Chapter 19 Flight Details Style
---------------------------- */

.v_list_item_collapse_title {
  font-size: var(--font-xs);
}

.v_list_item_collapse_trip_title {
  border: solid 1px var(--color-grey88);
  border-radius: 30px;
  display: flex;
  align-items: center;
  gap: var(--font-uxs);
  background-color: var(--color-blue97);
  margin-bottom: calc(var(--font-xs) * 2);
}

.v_list_item_collapse_trip_title i {
  height: calc(var(--font-uxs) * 2);
  width: calc(var(--font-uxs) * 2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-blue74);
  color: var(--color-blue);
  font-size: var(--font-nano);
}

.v_list_item_collapse_trip_title span {
  font-size: var(--font-xs);
  font-weight: 600;
}

.v_list_item_collapse_trip_wrap {
  position: relative;
  border: solid 1px var(--color-grey88);
  padding: calc(var(--font-femto) * 2) var(--font-micro) var(--font-micro);
  border-radius: var(--radius-outer);
  margin: var(--font-md) 0px;
}

.v_list_item_collapse_trip_count {
  position: absolute;
  background-color: #fff;
  color: var(--color-blue);
  top: -2px;
  left: calc(var(--font-xs) * 10);
  transform: translate(-50%, -50%);
  text-transform: uppercase;
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  font-weight: 600;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  padding: 4px 10px;
}

.v_list_item_collapse_trip_thumb {
  position: absolute;
  background-color: #fff;
  top: -15px;
  left: calc(var(--font-micro) * 2);
  padding: 0px 2px;
}

.v_list_collapse_thumb {
  width: 83px;
  height: 25px;
}

.v_list_collapse_thumb img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: center center;
}

.v_list_item_collapse_trip_metadata {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: var(--font-nano);
}

.v_list_item_collapse_trip_metadata i {
  color: var(--color-blue);
}

.v_list_item_collapse_list {
  margin: 0;
  padding: 0;
}

.v_list_item_collapse_list li {
  list-style: none;
  font-size: var(--font-nano);
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.v_list_item_collapse_list li:last-child {
  margin-bottom: 0px;
}

.v_list_item_collapse_list li i {
  color: var(--color-blue);
}

.v_list_item_collapse_layover_wrap {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.v_list_item_collapse_layover_data {
  font-size: var(--font-nano);
  padding: calc(var(--font-uxs) * 0.5) var(--font-uxs);
  border-radius: var(--radius-outer);
  background-color: var(--color-blue97);
  border: solid 1px var(--color-blue);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  position: relative;
  z-index: 2;
}

.v_list_item_collapse_layover_data i,
.v_list_item_collapse_layover_data .time {
  color: var(--color-blue);
}

.v_list_item_collapse_layover_data .time {
  font-weight: 600;
}

hr.style-two {
  border: 0;
  height: 2px;
  background-image: linear-gradient(
    to right,
    rgba(10, 106, 218, 0),
    rgba(10, 106, 218, 1),
    rgba(10, 106, 218, 0)
  );
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  margin: 0;
  z-index: 1;
}

.v_list_item_fd_price {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
}

.v_list_item_fd_price span.label {
  font-size: var(--font-nano);
}

/* ------------------------
Chapter 18 Fare Rules Style
------------------------ */
.v_list_fare_rule_table_wrap {
}

.v_list_fare_rule_table_wrap table thead tr td {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  border-color: var(--color-blue);
  color: var(--color-blue);
}

.v_list_fare_rule_table_wrap table tbody tr td {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  color: var(--color-grey22);
}

.v_list_fare_rule_table_wrap .not_allowed i {
  color: var(--bs-danger);
}

.v_list_fare_rule_table_wrap .allowed i {
  color: var(--color-green);
}

.v_list_fare_rule_note {
  background-color: var(--color-grey95);
  border-radius: var(--radius-outer);
  padding: var(--font-uxs);
  font-size: var(--font-femto);
}

/* -----------------------------
Chapter 17 Email selection Style
----------------------------- */
/* Container: Matching your .form-control-sm style */
.email-pill-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 2px 8px;
  border: 1px solid var(--color-grey88);
  border-radius: var(--radius-outer);
  min-height: 50px;
  cursor: text;
  transition:
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

/* Focus state matching your other inputs */
.email-pill-container:focus-within {
  border-color: var(--color-blue74);
  outline: 0;
  background-color: #fff;
}

/* The actual typing area */
.email-input {
  border: none !important;
  outline: none !important;
  background: transparent !important;
  flex: 1;
  min-width: 100px;
  font-size: var(--font-micro);
  line-height: var(--font-micro);
  color: var(--color-grey22);
}

/* The Pill Style: Professional & Clean */
.email-pill {
  display: inline-flex;
  align-items: center;
  background-color: var(--color-blue98);
  color: var(--color-blue);
  padding: 8px;
  border-radius: 20px;
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  margin: 2px 0;
}

.email-pill i {
  margin-left: 6px;
  cursor: pointer;
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.email-input::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}

/* ----------------------------
Chapter 16 Airlins Matrix Style
---------------------------- */

.v_list_airline_matrix_wrap {
  background-color: #fff;
  /* border: solid 1px var(--color-blue74); */
  border-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  padding: var(--font-sm);
}

.sw_airline_matrix {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--color-grey88);
  border-radius: var(--radius-inner);
  overflow: hidden;
}

.sw_airline_matrix td {
  /* border: solid 1px var(--color-grey88); */
  border-bottom: 1px solid var(--color-grey88);
  border-right: 1px solid var(--color-grey88);
  background-color: #fff;
  text-align: center;
  cursor: pointer;
  padding: calc(var(--font-sm) * 0.5) calc(var(--font-femto) * 0.5);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  vertical-align: middle;
}

.sw_airline_matrix td:last-child {
  border-right: none;
}

.sw_airline_matrix tr:last-child td {
  border-bottom: none;
}

/* Top Left */
.sw_airline_matrix tr:first-child td:first-child {
  border-top-left-radius: var(--radius-inner);
}

/* Top Right */
.sw_airline_matrix tr:first-child td:last-child {
  border-top-right-radius: var(--radius-inner);
}

/* Bottom Left */
.sw_airline_matrix tr:last-child td:first-child {
  border-bottom-left-radius: var(--radius-inner);
}

/* Bottom Right */
.sw_airline_matrix tr:last-child td:last-child {
  border-bottom-right-radius: var(--radius-inner);
}

.sw_airline_matrix td:hover {
  background-color: var(--color-orange);
  color: var(--color-blue);
}

.sw_airline_matrix td.suggested_rate {
  background-color: #ccf1ff;
  color: var(--color-blue);
  font-weight: 600;
}

.sw_airline_matrix td:first-child {
  text-align: left;
  width: 200px !important;
  font-weight: 600;
  cursor: unset;
  /* background-color: var(--color-blue97); */

  position: sticky;
  left: 0;
  z-index: 2;
}

.sw_airline_matrix tr:first-child td:first-child {
  z-index: 3;
}

.sw_airline_matrix tr:first-child td {
  cursor: unset;
  padding: 0px;
}

.sw_airline_matrix td.rate_row {
  background-color: unset;
}

.sw_airline_matrix td.rate_row .rate_col {
  border: unset;
}

.sw_airline_matrix_logo {
  margin: 0 auto;
  height: calc(var(--font-femto) * 3);
  width: calc(var(--font-femto) * 5);
  text-align: center;
}

.sw_airline_matrix_logo img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: center center;
}

.col_info_child2 {
  position: relative;
  min-height: calc(var(--font-femto) * 6);
  min-width: calc(var(--font-femto) * 10);
  /* color: var(--color-blue); */
  font-size: var(--font-nano);
}

.info_right2 {
  position: absolute;
  right: 0px;
  top: 6px;
}

.info_left2 {
  position: absolute;
  left: 6px;
  bottom: 6px;
}

.info_right2 i,
.info_left2 i {
  width: 10px;
  /* color: var(--color-blue); */
}

.sw_nodata {
  cursor: not-allowed !important;
  color: var(--color-grey74);
}

/* Custom scrollbar for airline matrix table */
.v_list_airline_matrix_wrap .table-responsive::-webkit-scrollbar {
  height: 4px;
}

.v_list_airline_matrix_wrap .table-responsive::-webkit-scrollbar-track {
  background: transparent;
}

.v_list_airline_matrix_wrap .table-responsive::-webkit-scrollbar-thumb {
  background: var(--color-blue74);
  border-radius: 10px;
}

/* for firefox scrollbar */
.v_list_airline_matrix_wrap .table-responsive {
  scrollbar-width: thin;
  scrollbar-color: var(--color-blue74) transparent;
}

/* XL */
@media (min-width: 1200px) {
  .col_info_child2 {
    min-height: calc(var(--font-femto) * 4);
    min-width: calc(var(--font-femto) * 16);
  }
}

/* ----------------------------------
Chapter 15 User Search Criteria Style
---------------------------------- */
.user_searched_wrap {
  display: flex;
  align-items: center;
  gap: calc(var(--font-femto) * 2);
  justify-content: flex-start;
}

.user_searched_type {
  font-size: calc(var(--font-sm) * 2);
  color: var(--color-blue74);
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.6);
}

.user_searched_data_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: var(--font-micro);
  /* justify-content: space-between; */
  /* overflow: auto; */
  flex: 1;
}

.user_searched_trip_wrap {
  display: flex;
  align-items: center;
  gap: var(--font-uxs);
  flex: 0 0 100%;
  /* width: 600px; */
  /* flex: 0 1 49.3%; */

  background-color: #fff;
  border-radius: var(--radius-outer);
  /* box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1); */
  padding: var(--font-femto);
  border: solid 1px var(--color-grey88);
}

.user_searched_date_wrap {
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-inner);
  overflow: hidden;
  min-width: calc(var(--font-nano) * 5);
}

.user_searched_date_wrap .months {
  text-align: center;
  background-color: #ccf1ff;
  color: var(--color-blue);
  font-weight: 500;
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  padding: 3px 6px;
}

.user_searched_date_wrap .dates {
  text-align: center;
  font-size: var(--font-xs);
  line-height: var(--font-xs);
  font-weight: 700;
  padding: 4px 6px;
}

.user_searched_date_wrap .days {
  text-align: center;
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  padding: 3px 6px;
}

.user_searched_metadata_wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}

.user_searched_airport_wrap {
  display: flex;
  flex-direction: row;
  /* align-items: center; */
  /* gap: 6px; */
}

.user_searched_airport_wrap i {
  /* flex: 0 0 10px; */
  color: var(--color-grey74);
}

.airport_name {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  font-weight: 500;
  /* flex: 1 1 50%; */
}

.user_searched_timing_wrap {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.user_searched_edit {
  cursor: pointer;
}

.user_searched_edit i {
  font-size: var(--font-md);
  color: var(--color-grey22);
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6);
}

.user_searched_edit:hover i,
.user_searched_edit:focus i {
  color: var(--color-blue74);
}

/* MD */
@media (min-width: 768px) {
  .user_searched_trip_wrap {
    flex: 0 1 48.9%;
  }
}

/* LG */
@media (min-width: 992px) {
  .user_searched_trip_wrap {
    flex: 0 1 49.1%;
  }
}

/* XL */
@media (min-width: 1200px) {
  .user_searched_trip_wrap {
    flex: 0 1 49.2%;
  }
}

/* XXL */
@media (min-width: 1400px) {
  .user_searched_trip_wrap {
    flex: 0 1 49.3%;
  }
}

/* --------------------------------
Chapter 14 Language Selection Style
-------------------------------- */

.lang {
}

.nav-lang {
  cursor: pointer;
  position: relative;
}

.nav-lang-control {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
}

.nav-lang-control.active .sw-lang-display {
  color: var(--color-grey22);
}

.nav-lang-options {
  display: none;
  border-radius: var(--radius-outer);
  background-color: #fff;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 1;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
}

.nav-lang-list {
  padding: calc(var(--font-femto) * 0.5) calc(var(--font-uxs) / 2);
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  border-top: solid 1px var(--color-grey88);
}

.nav-lang-list:hover {
  background: linear-gradient(
    90deg,
    rgba(225, 223, 223, 1) 0%,
    rgba(225, 223, 223, 0) 100%
  );
}

.nav-lang-list:first-child {
  border-top: none;
}

.sw-lang-display {
  text-transform: capitalize;
  margin-left: calc(var(--font-uxs) * 0.5);
  font-weight: 400;
  color: var(--color-grey22);
  font-size: var(--font-uxs);
  padding-top: 2px;
}

.nav-lang-control:hover .sw-lang-display,
.nav-lang-list:hover .sw-lang-display {
  color: var(--color-blue);
}

.sw-lang-arrow {
  margin-left: calc(var(--font-uxs) / 2);
  color: var(--color-seven);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.nav-lang:hover .sw-lang-display {
}

.sw-flag {
  width: var(--font-md);
  height: var(--font-md);
  border-radius: 50%;
  overflow: hidden;
}

.sw-flag img {
  vertical-align: unset;
}

/* --------------------------
Chapter 13 Range Slider Style
-------------------------- */
.slider-wrapper {
  /* border: solid 1px red; */
  width: 100%;
  /* max-width: 500px; */
  /* margin: 50px auto; */
  text-align: center;
}

.slider-range-indicators {
  /* border: solid 1px blue; */
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
  font-weight: 400;
  font-size: var(--font-femto);
}

.slider.slider-horizontal {
  width: calc(100% - 20px);
}

/* Override default slider handle styles */
.slider .slider-handle {
  background-color: var(--color-green) !important;
  /* Your custom solid color */
  background-image: none !important;
  box-shadow: none !important;
  border: solid 2px var(--color-green) !important;
  /* Optional: handle border */
}

/* Optional: rounded handles if needed */
.slider .slider-handle.round {
  border-radius: 50% !important;
}

/* Optional: hover effect */
.slider .slider-handle:hover {
  background-color: #ffffff !important;
  border-color: var(--color-green) !important;
}

/* Slider value tooltip (e.g. "7km", "$500") shown above the handle */
/* bootstrap-slider's own JS toggles the "in" class on mouseenter/mouseleave/drag - */
/* we just style it and hook visibility to that class, so it only shows on hover, not always */
.slider .tooltip {
  position: absolute;
  top: auto !important;
  bottom: 100%;
  margin-bottom: 8px;
  transform: translateX(-50%);
  opacity: 0;
  z-index: 5;
  pointer-events: none;
  transition: opacity 0.15s ease;
}

.slider .tooltip.in {
  opacity: 1;
}

.slider .tooltip-inner {
  background-color: #1a1a1a;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 14px;
  white-space: nowrap;
  line-height: 1.4;
  max-width: none;
  text-align: center;
}

.slider .tooltip-arrow {
  position: absolute;
  left: 50%;
  bottom: -4px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #1a1a1a;
}

/* Selection track color (between the two handles on range sliders) */
.slider-handle,
.slider .slider-selection {
  background: var(--color-green) !important;
  background-image: none !important;
}

/* ------------------------------
Chapter 12 Voli/Flight List Style
------------------------------ */
.sec_no_result {
}

.no_result_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--font-nano);
}

.no_result_icon {
  position: relative;
  height: 44px;
  width: 50px;
}

.no_result_icon .primary_icon {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  font-size: 40px;
}

.no_result_icon .secondary_icon {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  height: 24px;
  width: 24px;
  font-size: 16px;
  color: var(--bs-danger);
}

.no_result_title {
  font-size: calc(var(--font-femto) * 2);
}

.no_result_subtitle {
  font-size: var(--font-uxs);
  color: var(--color-grey44);
}

.sec_voli_list {
}

.voli_sidebar_wrap {
  background-color: #fff;
  border-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  padding: var(--font-sm);
}

.voli_sidebar_wrap .accordion-button {
  padding: 10px 0px;
  font-size: var(--font-uxs);
}

.voli_sidebar_wrap .accordion-button:focus {
  box-shadow: none;
}

.voli_sidebar_wrap .accordion-button:not(.collapsed) {
  color: var(--color-grey22);
  background-color: unset;
  box-shadow: none;
}

.voli_sidebar_wrap .accordion-body {
  padding: 10px 0px;
}

.voli_list_wrap {
  display: flex;
  flex-direction: column;
  gap: calc(calc(var(--font-micro) * 2) + 4px);
}

.voli_list_item {
  /* border-radius: 10px; */
  /* box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08); */
}

.car_list_item {
}

.v_list_item_body,
.c_list_item_body {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: #ffffff;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
  z-index: 1;
}

.v_list_item_body {
  border-top-left-radius: var(--radius-outer);
  border-top-right-radius: var(--radius-outer);
}

.c_list_item_body {
  border-radius: var(--radius-outer);
}

.v_list_item_footer {
  position: relative;
  background-color: var(--color-blue98);
  border-bottom-left-radius: var(--radius-outer);
  border-bottom-right-radius: var(--radius-outer);
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.2);
  z-index: 0;
}

.v_cart_item_body .v_list_item_footer {
  padding: 0px var(--font-sm);
  background-color: #fff;
  margin-bottom: var(--font-sm);
}

.v_cart_item_body .v_list_item_footer,
.v_cart_item_body .v_list_item_collapse_wrap,
.v_cart_item_footer .v_list_item_footer,
.v_cart_item_footer .v_list_item_collapse_wrap {
  border-radius: unset;
  box-shadow: unset;
}

.v_list_item_left {
  position: relative;
  flex: 0 0 66.66666666%;
  border-right: none;
  border-bottom: solid 1px var(--color-grey88);
}

.c_list_item_left {
  display: flex;
  align-items: center;
  position: relative;
  flex: 0 0 100%;
  border-right: none;
  border-bottom: solid 1px var(--color-grey88);
}

.v_list_item_right {
  position: relative;
  flex: 0 0 33.33333333%;
  /* padding-left: calc(var(--font-sm) * 2); */
  /* padding-right: calc(var(--font-sm) * 2); */
  padding: calc(var(--font-sm) * 1) calc(var(--font-sm) * 2);
  display: flex;
  align-items: center;
}

.c_list_item_right {
  position: relative;
  flex: 0 0 100%;
  display: flex;
  align-items: center;
  /* background-color: var(--color-blue97); */
}

.v_list_item_metadata,
.t_list_item_metadata {
  display: flex;
  padding: calc(var(--font-sm) * 2) var(--font-sm);
  gap: calc(var(--font-sm) * 0.5);
  border-bottom: none;
}

.t_list_item_metadata {
  flex-direction: column;
}

.v_cart_item_body .v_list_item_metadata,
.v_cart_item_body .t_list_item_metadata {
  padding: var(--font-sm);
}

.v_list_item_metadata + .v_list_item_metadata,
.t_list_item_metadata + .t_list_item_metadata {
  border-top: solid 1px var(--color-grey88);
}

.v_list_item_select {
}

.v_list_item_flight_data {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-micro) * 2);
}

.v_cart_item_body .v_list_item_flight_data {
  gap: var(--font-sm);
}

.v_list_item_flight_wrap {
  display: flex;
  flex-direction: row;
  gap: calc(var(--font-femto) * 2);
}

.v_list_item_class_wrap {
  /* background-color: yellow; */
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 0 0 20%;
}

.v_list_item_thumb {
  width: 100px;
  height: 30px;
  /* background-color: lime; */
}

.v_list_item_thumb img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: left center;
}

.v_list_item_class_desc {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.v_list_item_journey {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-femto) * 0.5);
}

.v_list_flight_time_wrap,
.v_list_flight_city_wrap {
  display: flex;
  justify-content: space-between;
}

.d_time,
.a_time,
.d_city,
.stops,
.a_city {
  font-size: var(--font-nano);
  line-height: var(--font-micro);
}

.t_time {
  font-size: var(--font-uxs);
}

.d_city,
.a_city {
  flex: 0 1 45%;
}

.a_city {
  text-align: right;
}

.stops {
  text-align: center;
}

.flight_infographic {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--color-blue);
}

.infographic_line {
  border-top: dashed 1px var(--color-blue);
  flex: 1;
}

.v_list_item_bagdata,
.v_list_item_bagdata_left {
  display: flex;
  align-items: center;
  gap: var(--font-uxs);
}

.v_list_item_bagdata.cart {
  justify-content: space-between;
}

.v_list_item_date {
  color: var(--color-blue);
  font-size: var(--font-nano);
}

.v_list_item_bag_inclusion {
  display: flex;
}

.bag_icon,
.transfer_icon {
  position: relative;
}

.transfer_icon {
  display: inline-flex;
  flex-direction: row;
  justify-content: flex-start;
}

.bag_icon.included {
  color: var(--color-grey22);
}

.transfer_icon.included {
  color: var(--color-blue);
}

.bag_icon.not-included,
.transfer_icon.not-included {
  color: var(--color-grey74);
}

.bag_icon .fa-slash-forward,
.transfer_icon .fa-slash-forward {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: red;
}

.v_list_item_bag_eco,
.v_list_item_bag_total {
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  display: flex;
  align-items: center;
  gap: 6px;
}

.ecosaver_icon {
  position: relative;
  height: 15px;
  width: 15px;
}

.ecosaver_icon .fa-solid {
  position: absolute;
}

.ecosaver_icon .fa-plane {
  top: 0;
  z-index: 1;
  font-size: 10px;
}

.ecosaver_icon .fa-leaf {
  bottom: -1px;
  right: 0;
  color: var(--color-green);
  z-index: 0;
}

.v_list_item_tags_wrap {
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--color-grey88);
  padding: calc(var(--font-femto) * 0.5) var(--font-uxs);
  border-bottom-left-radius: var(--radius-outer);
}

.v_list_item_tags_wrap ul {
  padding: 0;
  margin: 0;
  display: flex;
}

.v_list_item_tags_wrap ul li {
  list-style: none;
  font-size: var(--font-femto);
  border-right: solid 1px var(--color-grey74);
  padding: 0px 6px;
}

.v_list_item_tags_wrap ul li:first-child {
  padding-left: 0;
}

.v_list_item_tags_wrap ul li:last-child {
  padding-right: 0;
  border-right: none;
}

.v_list_item_share_wrap {
  position: absolute;
  top: 6px;
  right: var(--font-sm);
  display: flex;
  gap: 6px;
  align-items: center;
  cursor: pointer;
}

.v_list_item_share_wrap i {
  font-size: var(--font-xs);
  color: var(--color-grey44);
}

.v_list_item_right_wrap {
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-nano) * 0.5);
}

.v_list_item_pax_info {
  display: flex;
  flex-direction: column;
}

.v_list_item_pax_info .label {
  font-size: var(--font-femto);
  color: var(--color-grey44);
}

.v_list_item_pax_count {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--font-nano);
}

.v_list_item_rate {
  position: relative;
  font-size: var(--font-md);
  font-weight: bold;
}

.v_list_item_rate.cart {
  color: var(--color-blue);
}

.tooltip_text,
.tooltip_text_inline {
  position: absolute;
}

.tooltip_text,
.tooltip_text_inline,
.tooltip_text_car {
  font-size: var(--font-uxs);
  cursor: default;
  color: var(--color-orange);
}

.tooltip_text {
  top: 3px;
}

.tooltip_text_inline {
  top: 12px;
}

.tooltip_text_car {
  /*top: -1px;
    right: -16px;*/
}

.v_list_item_rate_label {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.v_list_item_commission {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  font-weight: 700;
}

.v_list_dedicated_fare {
  font-size: var(--font-femto);
  color: var(--color-blue);
  cursor: pointer;
}

.v_list_dedicated_fare sup {
  font-size: calc(var(--font-femto) * 0.5);
}

.v_list_dedicated_fare_wrap {
  padding: var(--font-md);
}

.v_list_dedicated_fare_title {
  font-size: var(--font-xs);
  margin-bottom: var(--font-femto);
}

.v_list_dedicated_fare_terms {
  background-color: #fff7ea;
  border-radius: var(--radius-outer);
  padding: var(--font-uxs);
  font-size: var(--font-femto);
}

.v_list_dedicated_fare_terms p {
  margin-bottom: var(--font-femto);
}

.v_list_dedicated_fare_terms p:last-child {
  margin-bottom: 0px;
}

.v_list_dedicated_fare_breakup {
  display: flex;
  gap: var(--font-nano);
  font-size: var(--font-nano);
}

.v_list_dedicated_fare_total {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.v_list_dedicated_fare_total .label {
  font-size: var(--font-nano);
}

.v_list_dedicated_fare_total .value {
  font-size: var(--font-md);
  font-weight: 700;
}

.v_list_item_footer ul {
  margin: 0;
  padding: 0;
  display: flex;
}

.v_cart_item_body .v_list_item_footer ul {
  gap: var(--font-sm);
}

.v_list_item_footer ul li {
  list-style: none;
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  color: var(--color-blue);
  padding: var(--font-sm) 0px;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--font-femto);
  cursor: pointer;
  border-right: solid 1px var(--color-blue);
}

.v_list_item_footer ul li i {
  transition: transform 0.3s ease;
}

/* Collapse Open */
.v_list_item_footer ul li[aria-expanded="true"] i {
  transform: rotate(180deg);
}

.v_cart_item_body .v_list_item_footer ul li {
  justify-content: flex-start;
  border-right: none;
  padding: unset;
  flex: unset;
  font-size: var(--font-nano);
}

.v_list_item_footer ul li:hover,
.v_list_item_footer ul li.active {
  background-color: var(--color-blue);
  color: #fff;
}

.v_cart_item_body .v_list_item_footer ul li:hover,
.v_cart_item_body .v_list_item_footer ul li.active {
  background-color: #fff;
  color: var(--color-blue);
}

.v_list_item_footer ul li.disabled {
  opacity: 0.5;
  pointer-events: none;
  cursor: not-allowed;
}

.v_list_item_footer ul li:last-child {
  border-right: none;
}

.v_list_item_collapse_wrap {
  background-color: #fff;
  border-bottom-left-radius: var(--radius-outer);
  border-bottom-right-radius: var(--radius-outer);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.2);
  margin-top: -4px;
}

.v_cart_item_body .v_list_item_collapse_wrap {
  margin-top: unset;
}

.v_list_item_collapse_body {
  padding: calc(var(--font-micro) * 2);
}

.v_list_item_collapse_body_sm {
  padding: 0px var(--font-sm) var(--font-sm);
}

.h_list_item_collapse_body_sm {
  /* border-top: solid 2px red; */
}

.v_list_item_collapse_footer {
  border-top: solid 1px var(--color-grey88);
  padding: calc(var(--font-micro) * 2) var(--font-sm) 0px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.close_collapse {
  font-size: var(--font-uxs);
  cursor: pointer;
}

.close_collapse i {
  color: var(--color-blue74);
}

.v_list_info_wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: calc(calc(var(--font-micro) * 2) + 4px);
  gap: var(--font-femto);
}

.v_list_sb_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: calc(calc(var(--font-micro) * 2) + 4px);
}

.reset_filter {
  font-size: var(--font-uxs);
}

.v_list_info_wrap .left {
  display: flex;
  gap: var(--font-femto);
}

.v_list_info_wrap .right {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.v_list_result {
  font-size: var(--font-uxs);
}

.v_list_sort_wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  /* gap: calc(calc(var(--font-micro) * 2) + 4px); */
  gap: var(--font-femto);
  flex: 0 0 auto;
}

.v_list_sort {
  display: flex;
  align-items: center;
  gap: 9px;
  flex: 0 0 auto;

  position: relative;
}

.v_list_sort span {
  flex: 0 0 auto;
  font-size: var(--font-uxs);
  min-width: 40px;
}

.v_list_sort .form-select {
  background-position: right 0rem center;
  width: auto;
  min-width: min-content;
  border: unset;
  padding: unset;
  border-radius: unset;
  background-color: unset;
  height: 25px;
  box-shadow: none;
}

.v_list_sort .form-select.cabin {
  min-width: 140px;
}

.v_list_sort .form-select.sortby {
  min-width: 160px;
}

.v_list_sort .form-select.price {
  min-width: 165px;
}

.v_list_sort .form-select.distance {
  min-width: 210px;
}

.v_list_sort .form-select.offer {
  min-width: 130px;
}

.v_list_alert_wrap {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
  border-radius: var(--radius-outer);
}

.v_list_alert_wrap i {
  font-size: var(--font-md);
}

.v_list_alert_wrap.alert-dismissible .btn-close {
  top: unset;
}

.v_list_sidebar_offcanvas.offcanvas-lg .offcanvas-body {
  flex-direction: column;
}

.v_list_share_wrap {
  /* width: 830px; */
}

.v_list_share_item_wrap {
  padding: calc(var(--font-micro) * 2);
  background-color: var(--color-grey95);
}

.v_list_share_item_wrap .v_list_item_body {
  border-radius: var(--radius-outer);
}

.v_list_share_form_wrap {
  padding: calc(var(--font-micro) * 2);
}

.v_list_share_wrap textarea.form-control {
  height: unset;
}

.v_list_modal .modal-content {
  border-radius: var(--radius-outer);
}

.v_list_modal .modal-header,
.v_list_modal .modal-footer {
  padding: var(--font-micro) var(--font-micro) var(--font-micro)
    calc(var(--font-micro) * 2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
}

.v_list_modal .modal-header {
  background-color: var(--color-blue);
}

.v_list_modal .modal-footer {
  background-color: #fff;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
}

.v_list_modal .modal-title {
  /* color: #FFF; */
}

.v_list_modal_close {
  /* color: #FFF; */
  cursor: pointer;
}

.v_list_modal_close:hover {
  color: var(--bs-red);
}

.v_list_modal .modal-body {
  padding: 0px;
}

.v_list_modal .modal-dialog {
}

.v_list_show_more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--font-femto);
  font-size: var(--font-uxs);
  color: var(--color-blue);
  cursor: pointer;
}

.v_list_show_more:hover {
  color: var(--color-grey22);
}

/* SM */
@media (min-width: 576px) {
}

/* MD */
@media (min-width: 768px) {
  .v_list_item_body,
  .c_list_item_body {
    flex-direction: row;
  }

  .v_list_info_wrap {
    flex-direction: row;
    align-items: center;
  }

  .v_list_sort_wrap {
    flex-direction: row;
    align-items: center;
    gap: calc(calc(var(--font-micro) * 2) + 4px);
  }

  .v_list_item_left {
    border-right: solid 1px var(--color-grey88);
    border-bottom: none;
  }

  .v_list_item_share_wrap {
    right: unset;
    left: calc(var(--font-sm) * 2);
  }

  .v_list_modal .modal-dialog {
    /* max-width: 700px; */
  }

  .c_list_item_left {
    flex: 1;
    border-right: solid 1px var(--color-grey88);
    border-bottom: none;
  }

  .c_list_item_right {
    flex: 0 0 35%;
  }
}

/* LG */
@media (min-width: 992px) {
}

/* XL */
@media (min-width: 1200px) {
  .c_list_item_right {
    flex: 0 0 35%;
  }
}

/* XXL */
@media (min-width: 1400px) {
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* --------------------------------------
Chapter 11 Tempus Dominus Date Time Style
-------------------------------------- */
.tempus-dominus-widget {
  z-index: 10000 !important;
}

.tempus-dominus-widget.light.show {
  top: 3px !important;
}

.tempus-dominus-widget {
  border-radius: var(--radius-outer);
  border: solid 1px var(--color-grey88);
  /* padding: var(--font-uxs) var(--font-uxs) calc(var(--font-uxs) - calc(var(--font-uxs) * 0.5)) var(--font-uxs); */
  padding: var(--font-uxs);
  font-size: var(--font-uxs);
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  width: 319px;
}

.tempus-dominus-widget .calendar-header .previous {
  padding-left: 0px;
}

.tempus-dominus-widget .calendar-header .next {
  padding-right: 0px;
}

.tempus-dominus-widget .calendar-header .previous,
.tempus-dominus-widget .calendar-header .next {
  color: var(--color-blue);
}

.tempus-dominus-widget.light .date-container-days .dow {
  color: var(--color-blue);
}

.tempus-dominus-widget .time-container {
  margin-bottom: calc(var(--font-uxs) * 0.5);
}

.tempus-dominus-widget.light
  .date-container-days
  div.range-end:not(.no-highlight),
.tempus-dominus-widget.light
  .date-container-days
  div.range-start:not(.no-highlight),
.tempus-dominus-widget.light .date-container-days div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .date-container-decades
  div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .date-container-months
  div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .date-container-years
  div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .time-container-clock
  div:not(.no-highlight).active,
.tempus-dominus-widget.light .time-container-hour div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .time-container-minute
  div:not(.no-highlight).active,
.tempus-dominus-widget.light
  .time-container-second
  div:not(.no-highlight).active {
  background-color: var(--color-blue74);
  border: solid 1px var(--color-blue);
  color: var(--color-blue);
  font-weight: 500;
}

.tempus-dominus-widget.light
  .date-container-days
  div.range-in:not(.no-highlight) {
}

.tempus-dominus-widget.light
  .date-container-days
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .date-container-decades
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .date-container-months
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .date-container-years
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .time-container-clock
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .time-container-hour
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .time-container-minute
  div:not(.no-highlight).today::before,
.tempus-dominus-widget.light
  .time-container-second
  div:not(.no-highlight).today::before {
  border-bottom-color: var(--color-blue) !important;
  border-width: 0 0 8px 8px;
  bottom: 5px;
  right: 5px;
}

.tempus-dominus-widget.light {
  background-color: #fff;
  color: var(--color-grey22);
}

.tempus-dominus-widget .date-container-days,
.tempus-dominus-widget .time-container-clock {
  border-radius: var(--radius-outer);
  padding: calc(var(--font-uxs) * 0.5);
  border: solid 1px var(--color-grey88);
  /* margin-bottom: calc(var(--font-uxs) * 0.5); */
}

.tempus-dominus-widget .time-container-clock {
  grid: unset;
}

.tempus-dominus-widget .time-container-clock i {
  color: var(--color-blue);
}

.tempus-dominus-widget .toolbar div {
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  font-size: var(--font-xs);
  color: var(--color-blue);
}

.tempus-dominus-widget.light .toolbar div:hover {
  background: var(--color-blue74);
  border: solid 1px var(--color-blue);
}

.tempus-dominus-widget .toolbar {
  column-gap: calc(var(--font-uxs) * 0.5);
  /* margin-bottom: calc(var(--font-uxs) - calc(var(--font-uxs) * 0.5)); */
}

.tempus-dominus-widget.light button {
  border-radius: var(--radius-outer);
  background-color: var(--color-blue97);
  border: solid 1px var(--color-blue74);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-blue);
  font-size: var(--font-sm);
  line-height: var(--font-sm);
  text-transform: uppercase;
  width: 48px;
}

.tempus-dominus-widget.timepicker-sbs .td-row {
  flex-direction: column;
  gap: var(--font-uxs);
}

.tempus-dominus-widget.timepicker-sbs .td-row .td-half {
  flex: 1 1 auto;
  width: 100%;
}

.tempus-dominus-widget .date-container-days div:not(.no-highlight),
.tempus-dominus-widget .date-container-decades div:not(.no-highlight),
.tempus-dominus-widget .date-container-months div:not(.no-highlight),
.tempus-dominus-widget .date-container-years div:not(.no-highlight),
.tempus-dominus-widget .time-container-clock div:not(.no-highlight),
.tempus-dominus-widget .time-container-hour div:not(.no-highlight),
.tempus-dominus-widget .time-container-minute div:not(.no-highlight),
.tempus-dominus-widget .time-container-second div:not(.no-highlight) {
  /* height: 36px; */
  /* width: 36px; */
  display: flex;
  align-items: center;
  justify-content: center;
}

.tempus-dominus-widget .calendar-header .picker-switch {
  font-weight: 500;
}

@media (min-width: 768px) {
  .tempus-dominus-widget {
    width: 326px;
  }

  .tempus-dominus-widget.timepicker-sbs .td-row {
    flex-direction: row;
  }

  .tempus-dominus-widget.timepicker-sbs .td-row .td-half {
    width: 50%;
  }

  .tempus-dominus-widget .time-container-clock {
    margin-top: 30px;
  }
}

/* LG */
@media (min-width: 992px) {
  .tempus-dominus-widget .time-container-clock {
    margin-top: 32px;
  }
}

/* XL */
@media (min-width: 1200px) {
  .tempus-dominus-widget .time-container-clock {
    margin-top: 34px;
  }
}

/* XXL */
@media (min-width: 1400px) {
  .tempus-dominus-widget .time-container-clock {
    margin-top: 35px;
  }
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* --------------------
Chapter 10 Search Style
-------------------- */

.age_select_wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: calc(var(--font-nano) * 2);
}

.age_select_element {
  width: 80px;
}

.v_round_way_row {
  display: flex;
  gap: 0.25rem;
}

.v_round_way_elements {
  flex: 1;
}

.sec_round_way,
.sec_multi_way {
  display: none;
}

.sec_search {
  background-color: #022258;
  padding: calc(var(--font-micro) * 3) 0px;
  position: relative;
  z-index: 10;
}

.search_wrap {
}

.search_body {
  position: relative;
  background-color: #fff;
  border-radius: 0px var(--radius-outer) var(--radius-outer) var(--radius-outer);
  padding: var(--font-sm);
}

.sec_search,
.search_wrap,
.search_body {
  overflow: visible;
  height: auto;
  max-height: none;
}

.swap_wrap {
  position: absolute;
  top: calc(50% - 0.3rem);
  /* top: 50%; */
  right: 5%;
  transform: translate(-50%, -50%);
  z-index: 10;
  background-color: #fff;
  height: calc(var(--font-femto) * 4);
  width: calc(var(--font-femto) * 4);
  border: solid 1px var(--color-grey88);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: var(--font-xs);
  color: var(--color-blue);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.swap_wrap:hover {
  border-color: var(--color-blue74);
}

.swap_wrap i {
  transform: rotate(90deg);
  transition: transform 0.4s ease;
}

.trip_type_radio_wrap {
  /* margin-bottom: var(--font-sm); */
}

.adv_search_btn_wrap {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, -50%);
  z-index: 5;
}

.remove_flight_row {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  cursor: pointer;
  color: var(--color-blue);
}

.remove_flight_row:hover {
  color: var(--bs-danger);
}

.add_flight_row {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--font-sm) * 0.5);
  border-radius: var(--radius-outer);
  border: solid 1px var(--color-blue);
  background-color: var(--color-blue97);
  color: var(--color-blue);
  padding: calc(var(--font-uxs) * 0.3) calc(var(--font-femto) * 0.2)
    calc(var(--font-uxs) * 0.3) var(--font-femto);
  cursor: pointer;
  transition: all 0.3s ease;
}

.add_flight_row:hover {
  background-color: var(--color-blue);
  color: #fff;
}

.add_flight_row span {
  font-weight: 400;
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.add_flight_row i {
  font-size: calc(var(--font-nano) * 2);
  line-height: calc(var(--font-nano) * 2);
}

.disclaimer {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  color: var(--color-grey44);
}

.adv_search_title {
  font-size: var(--font-xs);
  line-height: var(--font-xs);
  color: var(--color-blue);
  margin-bottom: var(--font-xs);
}

.check_group_v {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.check_group_h {
  display: flex;
  flex-direction: column;
  gap: 6px;
  /* background-color: cyan; */
}

.hr {
  border-top: solid 1px var(--color-grey88);
}

.airline_select_wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 6px;
}

.airline_row {
  display: flex;
  gap: var(--font-femto);
}

.airline_row input {
  height: 40px;
  width: 220px;
}

.airline_row .btn {
  --bs-btn-padding-y: unset;
  --bs-btn-padding-x: unset;
  --bs-btn-line-height: unset;
  height: 40px;
  width: 40px;
}

/* MD */
@media (min-width: 768px) {
  .swap_wrap {
    right: auto;
    left: 50%;
    top: 50%;
  }

  .swap_wrap i {
    transform: rotate(0deg);
  }

  .check_group_h {
    flex-wrap: wrap;
    max-height: 130px;
  }
}

/* LG */
@media (min-width: 992px) {
  .airline_row input {
    width: 180px;
  }

  .check_group_h {
    flex-wrap: unset;
    max-height: unset;
  }
}

/* XL */
@media (min-width: 1200px) {
  .check_group_h {
    flex-wrap: wrap;
    max-height: 130px;
  }

  .airline_row input {
    width: 230px;
  }
}

/* XXL */
@media (min-width: 1400px) {
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* --------------------
Chapter 9 Tooltip Style
-------------------- */
.custom_tooltip {
  --bs-tooltip-bg: var(--color-grey22);
  --bs-tooltip-color: #fff;
  --bs-tooltip-border-radius: var(--radius-outer);
}

.tooltip-trigger {
  cursor: pointer;
}

.custom-tooltip-content {
  display: none;
}

.tooltip-portal {
  position: absolute;
  z-index: 9999;
  background: #fff;
  border: 1px solid var(--color-blue);
  border-radius: var(--radius-outer);
  padding: var(--font-femto);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
  width: max-content;
  max-width: 400px;
  pointer-events: none;
  /* Keep this when hidden */
  opacity: 0;
  visibility: hidden;
  /* Clean transition without fighting the JS top calculation */
  transform: translateY(10px);
  transition:
    opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0.3s;
}

.tooltip-portal.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  /* Final buttery position */
  pointer-events: auto;
  /* ← ENABLE INTERACTIONS WHEN VISIBLE */
}

/* Base Arrow Style (Pointing DOWN) */
.tooltip-portal::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  background: var(--color-blue97);
  border-right: 1px solid var(--color-blue);
  border-bottom: 1px solid var(--color-blue);
  bottom: -6px;
  /* Glues arrow to the bottom border */
  left: var(--arrow-left, 50%);
  transform: translateX(-50%) rotate(45deg);
}

/* Flipped Arrow Style (Pointing UP) */
.tooltip-portal.flip::after {
  bottom: auto;
  top: -6px;
  /* Glues arrow to the top border */
  border-right: none;
  border-bottom: none;
  border-left: 1px solid var(--color-blue);
  border-top: 1px solid var(--color-blue);
}

.cd_v_list_tooltip_wrap {
  /* max-width: 500px; */
  display: flex;
  flex-direction: column;
  gap: var(--font-femto);
}

.cd_v_list_tt_header {
  background-color: var(--color-grey95);
  border-radius: var(--radius-inner);
  text-transform: uppercase;
  text-align: center;
  font-weight: 600;
  padding: 6px;
  font-size: var(--font-nano);
}

.cd_v_list_tt_price_section {
}

.cd_v_list_tt_price_section .part,
.cd_v_list_tt_footer_top .part,
.cd_v_list_tt_footer_bottom .part {
  padding: 6px;
  font-size: var(--font-nano);
  border-bottom: solid 1px var(--color-grey88);
}

.cd_v_list_tt_price_section .part:last-child,
.cd_v_list_tt_footer_top .part:last-child,
.cd_v_list_tt_footer_bottom .part:last-child {
  border-bottom: none;
}

.cd_v_list_tt_price_section .part table,
.cd_v_list_tt_footer_top table,
.cd_v_list_tt_footer_bottom table {
  width: 100%;
}

.cd_v_list_tt_price_section .part .strong,
.cd_v_list_tt_footer_top .part .strong,
.cd_v_list_tt_footer_bottom .part .strong {
  font-weight: 600;
}

.cd_v_list_tt_price_section .part table td:last-child,
.cd_v_list_tt_footer_top table td:last-child,
.cd_v_list_tt_footer_bottom table td:last-child {
  text-align: right;
}

.cd_v_list_tt_price_section .part table td,
.cd_v_list_tt_footer_top table td,
.cd_v_list_tt_footer_bottom table td {
  padding: 0px;
}

.cd_v_list_tt_footer {
  /* box-shadow: 0px 3px 6px #00000080; */
  border-radius: var(--radius-inner);
  overflow: hidden;
}

.cd_v_list_tt_footer_top {
  background-color: var(--color-blue97);
}

.cd_v_list_tt_footer_bottom {
  background-color: var(--color-grey95);
}

/* ----------------------------
Chapter 8 Header & Footer Style
---------------------------- */
.sec_header {
  position: relative;
  background-color: #ffffff;
  box-shadow: 0px 12px 40px 0px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 12px 40px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 12px 40px 0px rgba(0, 0, 0, 0.3);
  z-index: 1030;
}

.header_wrap {
  display: flex;
  flex-direction: column;
  /* align-items: center; */
  justify-content: space-between;
}

.header_left {
  /* padding: var(--font-sm) 0px; */
  padding: 6px 0px;
  display: flex;
  align-items: center;
  gap: var(--font-xs);
}

.header_l_logo {
  width: calc(var(--font-femto) * 13);
}

.header_right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: var(--font-xs);
}

.sec_footer {
  background-color: #ffffff;
  padding: calc(var(--font-nano) * 2) 0px;
  margin-top: auto;
  /* pushes footer down when content is short */
}

.sec_footer .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: var(--font-femto);
}

.footer_left,
.footer_right {
  font-size: var(--font-nano);
  color: var(--color-grey44);
}

.footer_right {
  display: flex;
  align-items: center;
  gap: 6px;
}

.footer_r_logo {
  width: 82px;
}

.cart_control {
  position: relative;
  font-size: var(--font-uxs);
  display: flex;
  align-items: center;
  gap: 6px;
  margin-right: var(--font-uxs);
  cursor: pointer;
  color: var(--color-grey22);
}

.cart_control:hover,
.cart_control:focus {
  text-decoration: none;
  color: var(--color-grey22);
}

.cart_count {
  position: absolute;
  right: -16px;
  top: -8px;
  height: var(--font-uxs);
  width: var(--font-uxs);
  border-radius: 50%;
  background-color: var(--color-orange);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 500;
}

/* Hover Animation */
.cart_control:hover .cart_count {
  animation: cartBounce 0.6s ease;
}

@keyframes cartBounce {
  0% {
    transform: scale(1);
  }

  30% {
    transform: scale(1.35);
  }

  50% {
    transform: scale(0.9);
  }

  70% {
    transform: scale(1.15);
  }

  100% {
    transform: scale(1);
  }
}

.user_control {
  height: calc(var(--font-md) * 2);
  width: calc(var(--font-md) * 2);
  border-radius: 50%;
  overflow: hidden;
  cursor: pointer;
}

.user_control img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  /* contain-width & cover-height */
  object-position: center center;
}

.dropdown-menu.dropdown-menu-wrap {
  border-radius: var(--radius-outer);
}

.dropdown-menu-wrap {
  width: 350px !important;
  margin: 0;
  padding: 0;
  overflow: hidden;
  box-shadow: 0px 3px 6px #00000029;
}

.back-office-link {
  background-color: var(--color-blue98);
  display: flex;
  align-items: center;
  padding: var(--font-sm);
}

.user-name-display,
.back-office-link a {
  font-weight: 600;
  font-size: var(--font-nano);
  line-height: var(--font-uxs);
}

.user-name-display {
  flex: 0 1 65%;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--color-blue);
}

.user-name-display i {
  font-size: var(--font-xs);
  color: var(--color-one);
}

.back-office-link a {
  text-decoration: none;
  text-transform: uppercase;
  flex: 1;
  text-align: right;
}

.search-agency-wrap {
  padding: var(--font-sm);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: calc(var(--font-uxs) * 0.5);
}

.search-agency-wrap .form-element-box .input-group {
  border: dotted 1px red;
  border-radius: 4px;
}

.logged-user-name-display {
  padding: var(--font-uxs);
}

.logged-user-name-display,
.logged-user-name-display a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--font-femto) * 0.5);
}

.logged-user-name-display a {
  text-decoration: none;
  font-size: var(--font-uxs);
  line-height: var(--font-xs);
}

.logged-user-name-display .logged-user-name {
  font-weight: 600;
}

.header_login_details {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.header_login_desc {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--font-nano);
  font-weight: 500;
}

.header_login_desc i {
  color: var(--color-blue);
}

/* MD */
@media (min-width: 768px) {
  .sec_footer .container {
    flex-direction: row;
  }

  .header_wrap {
    flex-direction: row;
    align-items: center;
  }

  .header_left {
    padding: var(--font-femto) 0px;
  }
}

/* LG */
@media (min-width: 992px) {
  .dropdown-menu-wrap {
    width: 375px !important;
  }
}

/* XL */
@media (min-width: 1200px) {
  .header_left {
    padding: var(--font-sm) 0px;
  }

  .dropdown-menu-wrap {
    width: 400px !important;
  }
}

/* ---------------------------------
Chapter 7 Login & Registration Style
--------------------------------- */

.sec_login {
  display: flex;
  flex-direction: column;
}

.login_left {
  background-color: #7ad9ff;
  background-image: url("/content/images/bg_login.png");
  background-size: cover;
  background-position: center center;
  padding: 32px;
  height: 50vh;
}

.login_right {
  padding: 32px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.login_r_header,
.login_l_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.login_r_logo {
  width: calc(var(--font-femto) * 22);
}

.login_l_logo {
  width: calc(var(--font-femto) * 9);
}

.login_r_logo img,
.login_l_logo img,
.header_l_logo img,
.footer_r_logo img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: center center;
}

.login_r_title {
  font-size: calc(var(--font-uxs) * 2);
  line-height: calc(var(--font-xs) * 2);
  margin-top: calc(var(--font-femto) * 4);
}

.login_l_title {
  color: #ffffff;
  font-weight: 300;
  font-size: calc(var(--font-nano) * 3);
  line-height: calc(var(--font-uxs) * 3);
  margin-top: var(--font-sm);
  max-width: calc(var(--font-femto) * 30);
}

.login_r_desc {
  color: var(--color-grey44);
  font-weight: 300;
  font-size: var(--font-xs);
  line-height: calc(var(--font-micro) * 2);
  margin-top: var(--font-xs);
  max-width: calc(var(--font-femto) * 43);
}

.login_l_desc {
  color: #ffffff;
  font-weight: 300;
  font-size: var(--font-uxs);
  line-height: calc(var(--font-femto) * 2);
  margin-top: calc(var(--font-nano) * 2);
  max-width: calc(var(--font-femto) * 38);
}

.login_r_form {
  margin-top: calc(var(--font-pico) * 4);
  width: 100%;
}

.login_r_footer {
  display: flex;
  flex-direction: column;
  gap: var(--font-femto);
  justify-content: space-between;
  align-items: center;
  margin-top: calc(var(--font-femto) * 8);
}

.login_r_info {
  display: flex;
  align-items: center;
  gap: var(--font-xs);
}

.login_r_info span.desc,
.login_r_copyright {
  font-size: var(--font-nano);
  font-weight: 300;
  color: var(--color-grey44);
}

.login_r_hint {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
}

.login_r_hint .icon {
  color: var(--color-orange);
  font-size: var(--font-xs);
}

.login_r_hint .desc {
  color: var(--color-grey44);
  font-size: var(--font-uxs);
  line-height: var(--font-sm);
}

.sec_registration {
  padding: calc(var(--font-femto) * 4) 0px;
  background-color: var(--color-grey95);
}

.form_box {
  margin: calc(var(--font-micro) * 2) 0px;
  /* box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2); */
}

.form_box_title {
  position: relative;
  border: solid 1px var(--color-grey88);
  border-top-left-radius: var(--radius-outer);
  border-top-right-radius: var(--radius-outer);
  display: flex;
  align-items: center;
  gap: var(--font-femto);
  background-color: var(--color-grey88);
  padding: var(--font-femto) var(--font-xs);
}

.form_box_title .main {
  font-size: var(--font-xs);
  font-weight: 500;
}

.form_box_title .sub {
  font-size: var(--font-uxs);
  font-weight: 400;
}

.form_box_body {
  border: solid 1px var(--color-grey88);
  border-top: none;
  border-bottom-left-radius: var(--radius-outer);
  border-bottom-right-radius: var(--radius-outer);
  padding: var(--font-xs);
  background-color: #ffffff;
  /* box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.2); */
}

.captcha_wrap {
  display: inline-flex;
  align-items: center;
  gap: var(--font-femto);
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  padding: 6px;
  background-color: var(--color-blue97);
}

.captcha_image {
  background-color: #000;
  height: 50px;
  width: 150px;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  overflow: hidden;
}

.captcha_image img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  /* contain-width & cover-height */
  object-position: center center;
}

.captcha_reset {
  cursor: pointer;
  font-size: var(--font-sm);
  line-height: var(--font-sm);
  color: var(--color-blue);
}

.captcha_code {
  width: 120px;
}

.captcha_code input {
  text-align: center;
  font-weight: 600;
}

.form_footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: calc(var(--font-micro) * 2);
  margin-top: calc(var(--font-micro) * 2);
}

/* MD */
@media (min-width: 768px) {
  .login_r_footer {
    flex-direction: row;
    gap: unset;
  }

  .login_r_form {
    width: 50%;
  }

  .form_footer {
    flex-direction: row;
  }
}

/* LG */
@media (min-width: 992px) {
  .login_left {
    height: 100vh;
  }

  .sec_login {
    flex-direction: row;
  }

  .login_r_form {
    width: 70%;
  }
}

/* XL */
@media (min-width: 1200px) {
  .login_left {
    width: 40%;
    padding: calc(var(--font-femto) * 8) calc(var(--font-femto) * 5);
  }

  .login_right {
    padding: calc(var(--font-femto) * 8);
  }
}

/* XXL */
@media (min-width: 1400px) {
  .login_r_form {
    width: 60%;
  }
}

/* Greater Than XXL */
@media (min-width: 1600px) {
  .login_r_form {
    width: 50%;
  }
}

/* --------------------
Chapter 2 Buttons Style
-------------------- */

.btn {
  --bs-btn-padding-y: var(--font-micro);
  --bs-btn-padding-x: calc(var(--font-femto) * 3);
  --bs-btn-border-radius: var(--radius-outer);
  --bs-btn-font-size: var(--font-uxs);
  --bs-btn-line-height: var(--font-uxs);
  --bs-btn-font-weight: 400;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--font-sm) * 0.5);

  opacity: unset;
  /* reboot override */
  letter-spacing: unset;
  /* reboot override */
}

.btn-sm {
  --bs-btn-padding-y: calc(var(--font-xs) * 0.5);
  --bs-btn-padding-x: calc(var(--font-micro) * 2);
  --bs-btn-border-radius: var(--radius-outer);
  --bs-btn-font-size: var(--font-nano);
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: var(--font-nano);
  gap: calc(var(--font-uxs) * 0.5);
}

.btn-lg {
  --bs-btn-padding-y: var(--font-xs);
  --bs-btn-font-size: var(--font-sm);
  --bs-btn-line-height: var(--font-sm);
  --bs-btn-font-weight: 400;
  gap: var(--font-femto);
}

.btn-primary {
  --bs-btn-bg: var(--color-blue);
  --bs-btn-border-color: var(--color-blue);
}

.btn-outline-primary {
  --bs-btn-color: var(--color-blue);
  --bs-btn-border-color: var(--color-blue);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--color-blue);
  --bs-btn-hover-border-color: var(--color-blue);
  --bs-btn-active-bg: var(--color-blue);
  --bs-btn-active-border-color: var(--color-blue);
  --bs-btn-bg: var(--color-sky);
}

.btn-success {
  --bs-btn-bg: var(--color-green);
  --bs-btn-border-color: var(--color-green);
}

.btn_condensed {
  --bs-btn-padding-x: var(--font-xs);
}

/* --------------------
Chapter 3 Textbox Style
-------------------- */

.form-floating > .form-control {
  color: var(--color-blue);
  font-weight: 400;
  font-size: var(--font-sm);
  line-height: var(--font-sm);
  border-radius: var(--radius-outer);
}

.form-floating > label {
  color: var(--color-grey44);
  font-size: var(--font-nano);
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label {
  font-size: var(--font-nano);
}

.form-control,
.form-select {
  border-color: var(--color-grey88);
  padding: var(--font-uxs) calc(var(--font-sm) * 0.5);
  color: var(--color-grey22);
  font-size: var(--font-micro);
  line-height: var(--font-micro);
  border-radius: var(--radius-outer);

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 50px;

  box-shadow: unset;
  border-style: solid;
  border-width: 1px;
}

textarea.form-control {
  height: unset;
}

.form-control-sm {
  padding: calc(var(--font-xs) * 0.5) calc(var(--font-sm) * 0.5);
}

.form-control:focus,
.form-select:focus,
.form_control_dropdown_search .form-control:focus {
  box-shadow: unset;
  border-color: var(--color-blue);
  outline: 0;
}

.form-label {
  cursor: text;
  display: flex;
  align-items: center;
  color: var(--color-blue);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  margin-bottom: calc(var(--font-femto) * 0.5);
}

.input-group-text {
  background-color: #fff;
  border-radius: var(--radius-outer);
}

.input-group:focus-within .input-group-text {
  border-color: var(--color-blue);
  transition:
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

.form_control_block_sm {
  position: relative;
}

.form_control_block {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  padding: var(--font-uxs) var(--font-uxs);
}

.form_control_block .form-control {
  height: unset;
}

.form_control_block .form-control,
.form_control_block .input-group-text {
  border-radius: 0px;
  padding: 0px;
}

.form_control_item_wrap {
  position: relative;
  display: block;
  width: 100%;
}

.form_control_item_wrap .form_control_dropdown {
  width: 100%;
  left: 0;
  /* Optional: If you want it slightly below the input group */
  top: calc(100% + 4px);
}

.form_control_item {
  flex: 1;
}

.form_control_item .input-group .input-group-text.form_control_loader {
  border: none;
  font-size: var(--font-nano);
  color: var(--color-grey74);
}

.input_group_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer !important;
}

.input_group_icon_sm {
  font-size: var(--font-sm);
  line-height: var(--font-sm);
}

.input_group_icon_uxs {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.form_label_distinct {
  color: var(--color-grey80);
  margin-right: calc(var(--font-xs) * 0.5);
}

.form_label_asterisk {
  color: var(--bs-red);
  font-size: calc(var(--font-femto) * 0.5);
  margin-right: 2px;
}

.form-floating:not(.input-group .form-floating):focus-within::after,
.input-group:has(.form-floating):focus-within::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: calc(var(--font-femto) * 0.5);
  height: 70%;
  background-color: var(--color-blue);
  z-index: 10;
  pointer-events: none;
}

.form_control_block:focus-within {
  border-color: var(--color-blue74);
  box-shadow: 0px 10px 30px #00000014;
}

.form_control_block .form-control {
  border: none;
  box-shadow: none;
  outline: none;
  padding: 0;
  background-color: transparent;
}

.form_control_block label {
  cursor: text;
}

/* -- Global Disabled State -- */

.form_control_block.disabled {
  background-color: var(--color-grey95) !important;
  border-color: var(--color-grey93) !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  user-select: none;
  box-shadow: none !important;
}

.form_control_block.disabled *,
.form_control_block.disabled .form-control,
.form_control_block.disabled .form-label,
.form_control_block.disabled .text_blue,
.form_control_block.disabled i {
  color: var(--color-grey74) !important;
  border-color: var(--color-grey93) !important;
  background-color: transparent !important;
}

.form_control_block.disabled .form_control_dropdown {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.form_control_block.disabled .form-control::placeholder {
  color: var(--color-grey74) !important;
}

.form_control_block.disabled .fa-spin {
  animation: none !important;
  -webkit-animation: none !important;
  /* For older browser support */
}

.swap_wrap.disabled {
  background-color: #ffffff !important;
  border-color: var(--color-grey93) !important;
  color: var(--color-grey74) !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

.swap_wrap.disabled i {
  color: var(--color-grey74) !important;
}

/* -----------------------------
Chapter 4 Checkbox & Radio Style
------------------------------ */

.form_check_wrap {
  display: inline-flex;
  align-items: center;
  gap: var(--font-femto);
}

.form-check-input[type="checkbox"] {
  border-radius: 0;
}

.form_check_wrap.pill {
  display: inline-flex;
  align-items: center;
  gap: var(--font-femto);
  padding: var(--font-femto);
  border-radius: 30px;
  cursor: pointer;
  border: solid 1px var(--color-grey88);
  transition: all 0.3s ease;
}

.form_check_wrap.pill .form-check-label {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.form_check_wrap.pill:has(.form-check-input:checked) {
  border-color: var(--color-blue);
  background-color: var(--color-blue97);
}

.form_check_wrap .form-check-input {
  margin-top: 0px;
  cursor: pointer;
  border-color: var(--color-grey74);
}

.form_check_wrap.pill:has(.form-check-input:checked) .form-check-label {
  color: var(--color-blue);
}

.form_check_wrap .form-check-input.green:checked {
  background-color: var(--color-green);
  border-color: var(--color-green);
}

.form_check_wrap .form-check-input.blue:checked {
  background-color: var(--color-blue);
  border-color: var(--color-blue);
}

.form_check_wrap .form-check-input:focus {
  box-shadow: none;
}

.form_check_wrap .form_check_label_sm {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.form_check_wrap .form_check_label_lg {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.form_check_wrap .form_check_label_strong {
  font-weight: 600;
}

.form_check_thumb {
  height: 16px;
  width: 50px;
}

.form_check_thumb img {
  height: 100%;
  width: 100%;
  object-fit: scale-down;
  /* contain-width & cover-height */
  object-position: left center;
}

.trip_type_radio_group {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
}

/* ---------------------
Chapter 5 Dropdown Style
--------------------- */

.form_control_dropdown {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  z-index: 100;
  width: 100%;
  background-color: #fff;
  border: solid 1px var(--color-grey88);
  border-radius: var(--radius-outer);
  padding: var(--font-uxs);

  /* Animation Properties */
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  /* Start slightly higher or lower */
  transition:
    opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0.3s;

  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.08);
  pointer-events: none;
}

.form_control_dropdown {
  min-width: 350px;
}

/* Show class applied by JavaScript */
.form_control_dropdown.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  /* Slide into its natural position */
  top: calc(100% + 4px);
  /* Final position */
  pointer-events: auto;
}

.form_control_dropdown .form_control_dropdown_wrap {
  margin-bottom: var(--font-uxs);
  display: flex;
  flex-direction: column;
}

.form_control_dropdown .form_control_dropdown_wrap:last-child {
  margin-bottom: 0px;
}

.form_dropdown_close {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 11;
  cursor: pointer;
  border: solid 1px var(--color-grey88);
  border-radius: 4px;
  font-size: 14px;
  height: 22px;
  width: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bs-red);
  transition: all 0.3s ease;
}

.form_dropdown_close i {
  transition: transform 0.3s ease;
}

.form_dropdown_close:hover {
  background-color: var(--color-grey88);
}

.form_dropdown_close:hover i {
  transform: rotate(90deg);
}

.form_control_dropdown_header {
  display: flex;
  align-items: center;
  gap: var(--font-femto);
}

.form_control_dropdown_header .icon {
  color: var(--color-grey22);
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.form_control_dropdown_header .desc {
  color: var(--color-grey22);
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
}

.form_control_dropdown_header .indicator {
  font-size: var(--font-femto);
  line-height: var(--font-femto);
}

.form_control_dropdown_header .indicator.red {
  color: var(--bs-red);
}

.form_control_dropdown_header .indicator.green {
  color: var(--color-green);
}

.form_control_dropdown_header .loader {
  color: var(--color-grey74);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.form_control_dropdown_list_title {
  display: block;
  font-weight: 500;
  color: var(--color-blue);
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  padding: calc(var(--font-femto) * 0.5);
}

.form_control_dropdown_list {
  margin-top: var(--font-nano);
  max-height: 250px;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;

  /* Firefox scrollbar */
  scrollbar-width: thin;
  scrollbar-color: var(--color-blue74) transparent;
}

.form_control_dropdown_list::-webkit-scrollbar {
  width: 4px;
}

.form_control_dropdown_list::-webkit-scrollbar-thumb {
  background: var(--color-blue74);
  border-radius: 10px;
}

.form_control_dropdown_list ul {
  margin: 0;
  padding: 0;
}

.form_control_dropdown_list ul li {
  list-style: none;
  cursor: pointer;
  /* border-top: solid 1px var(--color-grey88); */
  padding: calc(var(--font-femto) * 0.5);
  font-size: var(--font-uxs);
  line-height: var(--font-xs);
  color: var(--color-grey22);
  display: flex;
  align-items: flex-start;
  transition: all 0.3s ease;
  flex-direction: row;
}

.form_control_dropdown_list.pax_selection ul li {
  justify-content: space-between;
  /* align-items: flex-start; */
}

.form_control_dropdown_list ul li:hover,
.form_control_dropdown_list ul li.selected {
  background-color: var(--color-grey88);
  background: linear-gradient(
    90deg,
    rgba(225, 223, 223, 1) 0%,
    rgba(225, 223, 223, 0) 100%
  );
}

.form_control_dropdown_list ul li:first-child {
  border-top: none;
}

.form_control_dropdown_list ul.airport > li,
.form_control_dropdown_list ul.hotel > li,
.form_control_dropdown_list ul.train > li,
.form_control_dropdown_list ul.location > li {
  flex-direction: column;
  align-items: flex-start;
}

.form_control_dropdown_list ul.airport > li > span,
.form_control_dropdown_list ul.hotel > li > span,
.form_control_dropdown_list ul.train > li > span,
.form_control_dropdown_list ul.location > li > span {
  display: flex;
  align-items: center;
  width: 100%;
  padding: calc(var(--font-femto) * 0.5);
}

.form_control_dropdown_list ul.airport > li > span::before,
.form_control_dropdown_list ul.hotel > li > span::before,
.form_control_dropdown_list ul.train > li > span::before,
.form_control_dropdown_list ul.location > li > span::before {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  color: var(--color-blue);
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  margin-right: var(--font-femto);
  flex-shrink: 0;
}

.form_control_dropdown_list ul.airport > li > span::before {
  content: "\f072";
  /* plane */
}

.form_control_dropdown_list ul.hotel > li > span::before {
  content: "\f594";
  /* hotel */
}

.form_control_dropdown_list ul.train > li > span::before {
  content: "\e81f";
  /* train stop */
}

.form_control_dropdown_list ul.location > li > span::before {
  content: "\f601";
  /* location */
}

.form_control_dropdown_list ul.airport > li > ul.child,
.form_control_dropdown_list ul.hotel > li > ul.child,
.form_control_dropdown_list ul.train > li > ul.child,
.form_control_dropdown_list ul.location > li > ul.child {
  width: 100%;
  margin: 0;
  padding: 0;
  padding-left: var(--font-femto);
  /* indent under pin */
  margin-left: calc(var(--font-sm) * 0.5);
}

.form_control_dropdown_list ul.airport > li > ul.child > li,
.form_control_dropdown_list ul.hotel > li > ul.child > li,
.form_control_dropdown_list ul.train > li > ul.child > li,
.form_control_dropdown_list ul.location > li > ul.child > li {
  list-style: none;
  /* border-top: solid 1px var(--color-grey88); */
  padding: calc(var(--font-femto) * 0.5);
  font-size: var(--font-uxs);
  color: var(--color-grey22);
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

/* Bullet dot for child airports */
.form_control_dropdown_list ul.airport > li > ul.child > li::before,
.form_control_dropdown_list ul.hotel > li > ul.child > li::before,
.form_control_dropdown_list ul.train > li > ul.child > li::before,
.form_control_dropdown_list ul.location > li > ul.child > li::before {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  color: var(--color-grey44);
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  margin-right: var(--font-femto);
  flex-shrink: 0;
}

.form_control_dropdown_list ul.airport > li > ul.child > li::before {
  content: "\e7bc";
  /* plane landing gear*/
}

.form_control_dropdown_list ul.hotel > li > ul.child > li::before {
  content: "\f52b";
  /* door open */
}

.form_control_dropdown_list ul.train > li > ul.child > li::before {
  content: "\f238";
  /* train */
}

.form_control_dropdown_list ul.location > li > ul.child > li::before {
  content: "\f276";
  /* map pin */
}

/* Cancel the generic hover/selected background on the GROUP <li> itself,
   since its box also wraps the nested child list */
.form_control_dropdown_list ul.airport > li:hover,
.form_control_dropdown_list ul.hotel > li:hover,
.form_control_dropdown_list ul.train > li:hover,
.form_control_dropdown_list ul.location > li:hover,
.form_control_dropdown_list ul.airport > li.selected,
.form_control_dropdown_list ul.hotel > li.selected,
.form_control_dropdown_list ul.train > li.selected,
.form_control_dropdown_list ul.location > li.selected {
  background: none;
}

/* Apply the highlight only to the group's own row (the <span>),
   never to the nested ul.child underneath it */
.form_control_dropdown_list ul.airport > li > span:hover,
.form_control_dropdown_list ul.hotel > li > span:hover,
.form_control_dropdown_list ul.train > li > span:hover,
.form_control_dropdown_list ul.location > li > span:hover,
.form_control_dropdown_list ul.airport > li.selected > span,
.form_control_dropdown_list ul.hotel > li.selected > span,
.form_control_dropdown_list ul.train > li.selected > span,
.form_control_dropdown_list ul.location > li.selected > span {
  background-color: var(--color-grey88);
  background: linear-gradient(
    90deg,
    rgba(225, 223, 223, 1) 0%,
    rgba(225, 223, 223, 0) 100%
  );
  transition: all 0.3s ease;
}

.form_control_dropdown_search {
  margin-top: var(--font-uxs);
}

.form_control_dropdown_search .form-control {
  border: solid 1px var(--color-grey88);
  padding: 6px;
  color: var(--color-grey22);
  font-size: var(--font-micro);
  line-height: var(--font-micro);
  border-radius: 4px;
  height: unset;
}

.form_control_dropdown_search .input-group-text {
  padding: 6px;
  border-radius: 4px;
  font-size: var(--font-nano);
  color: var(--color-grey74);
}

.pax_select_label {
  display: flex;
  flex-direction: column;
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.pax_select_label span:nth-child(2) {
  color: var(--color-grey44);
}

.input-group-custom {
  display: flex;
  flex-direction: row;
  gap: 12px;
}

.form-control.custom {
  padding: 0;
  height: unset;
  width: 30px;
}

.btn.btn-outline-primary.custom,
.btn.btn-primary.custom {
  --bs-btn-padding-y: unset;
  --bs-btn-padding-x: unset;
  --bs-btn-line-height: unset;
  height: calc(var(--font-sm) * 2);
  width: calc(var(--font-sm) * 2);
}

/* MD */
@media (min-width: 768px) {
}

/* LG */
@media (min-width: 992px) {
}

/* XL */
@media (min-width: 1200px) {
}

/* XXL */
@media (min-width: 1400px) {
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}

/* ---------------------
Chapter 6 Nav Tabs Style
--------------------- */

.nav_tabs_wrap {
  display: flex;
  align-items: flex-end;
}

.nav_tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--font-femto);
  background-color: var(--color-blue97);
  border: solid 1px var(--color-blue74);
  text-decoration: none;
  padding: var(--font-nano) calc(var(--font-nano) * 2);

  transition:
    padding 0.3s ease-in-out,
    background-color 0.3s ease,
    border-radius 0.3s ease;

  /* Ensure the box grows upwards by keeping alignment at the bottom */
  position: relative;
  z-index: 1;

  border-radius: 0;
  /* reset all corners */
}

/*.nav_tabs.first_tab {
    border-top-left-radius: var(--radius-outer);
}

.nav_tabs.second_tab {
    border-top-left-radius: 0px;
}

.nav_tabs.third_tab {
    border-top-right-radius: var(--radius-outer);
}*/

/* First tab always gets top-left radius */
.nav_tabs:first-child {
  border-top-left-radius: var(--radius-outer);
}

/* Last tab always gets top-right radius */
.nav_tabs:last-child {
  border-top-right-radius: var(--radius-outer);
}

.nav_tabs.active,
.nav_tabs:hover {
  background-color: var(--color-blue);
  padding: var(--font-sm) calc(var(--font-nano) * 2);
  border-top-left-radius: var(--radius-outer);
  border-top-right-radius: var(--radius-outer);
  z-index: 2;
}

.nav_tabs_desc,
.nav_tabs_icon {
  color: var(--color-blue);
  font-size: var(--font-xs);
  line-height: var(--font-xs);
  font-weight: 600;
  transition: color 0.3s ease;
}

.nav_tabs.active .nav_tabs_icon,
.nav_tabs:hover .nav_tabs_icon {
  color: var(--color-blue74);
}

.nav_tabs.active .nav_tabs_desc,
.nav_tabs:hover .nav_tabs_desc {
  color: #fff;
}

/* ----------------------------
Chapter 7 Select Dropdown Style
----------------------------- */

/* ----------------------
Chapter 26 Car List Style
---------------------- */

.car_list_item {
  width: 100%;
}

.car_list_item .c_list_item_body {
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
  border-radius: var(--radius-outer);
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
}

.car_list_item .v_list_item_left {
  flex: 0 0 70%;
  width: 70%;
  border-right: none;
  border-bottom: solid 1px var(--color-grey88);
}

.car_list_metadata {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--font-sm);
  padding: calc(var(--font-sm) * 1.5) var(--font-sm);
  min-height: 310px;

  border-bottom: none;
}

.car_list_image_wrap {
  display: flex;
  gap: var(--font-femto);
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}

.car_photo {
  height: 100px;
  width: 200px;
}

.car_agency_logo {
  height: 33px;
  width: 66px;
}

.car_photo img,
.car_agency_logo img {
  width: 100%;
  height: 100%;
  object-fit: scale-down;
  object-position: center;
}

/* XL */
@media (min-width: 1200px) {
  .car_list_image_wrap {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 30%;
  }

  .car_photo {
    width: 162px;
  }

  .car_agency_logo {
    width: 84px;
  }
}

/* XXL */
@media (min-width: 1400px) {
  .car_photo {
    height: 115px;
    width: 190px;
  }

  .car_agency_logo {
    height: 38px;
    width: 100px;
  }
}

/* XXXL */
@media (min-width: 1600px) {
  .car_photo {
    height: 130px;
  }

  .car_agency_logo {
    height: 43px;
  }
}

.car_list_info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-uxs) * 0.5);
}

.car_list_title {
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-femto) * 0.5);
}

.car_group {
  /* margin-top: 4px; */
}

.car_group span {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  color: var(--color-grey22);
}

.car_list_title h3 {
  margin: 0;
  font-size: var(--font-sm);
  line-height: var(--font-sm);
  font-weight: 500;
}

.car_list_title span {
  font-size: var(--font-uxs);
  line-height: var(--font-uxs);
  color: var(--color-blue);
}

.car_characteristic_title {
  font-size: var(--font-nano);
  line-height: var(--font-nano);
}

.car_list_characteristics {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc(var(--font-femto) * 0.5);
}

.car_characteristic {
  display: inline-flex;
  align-items: center;
  gap: calc(var(--font-femto) * 0.5);
  padding: calc(var(--font-femto) * 0.5);
  background-color: var(--color-grey93);
  color: var(--color-grey22);
  border-radius: var(--radius-inner);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  white-space: nowrap;
}

.car_characteristic i {
  font-size: var(--font-femto);
  color: var(--color-blue);
}

.car_list_location_wrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--font-sm) * 1.5);
}

.car_list_location {
  min-width: 0;
}

.car_location_title {
  display: flex;
  align-items: center;
  margin-bottom: calc(var(--font-uxs) * 0.5);
}

.car_location_title span {
  font-size: var(--font-uxs);
  font-weight: 500;
}

.car_location_detail {
  display: flex;
  flex-direction: column;
  gap: calc(var(--font-femto) * 0.75);
}

.car_location_type,
.car_location_address {
  display: flex;
  align-items: flex-start;
  gap: var(--font-femto);

  font-size: var(--font-nano);
  line-height: var(--font-micro);
}

.car_location_type i,
.car_location_address i {
  flex: 0 0 var(--font-uxs);
  width: var(--font-uxs);
  margin-top: 2px;
  color: var(--color-blue);
  font-weight: 400;
}

.car_list_rates {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.car_list_rates .car_rate_item_wrap:last-child {
  border-bottom: none;
}
.car_rate_item_wrap {
  display: flex;
  align-items: center;
  padding: var(--font-femto);
  gap: calc(var(--font-femto) * 0.5);
  border-bottom: solid 1px var(--color-grey88);
}

.car_rate_item {
  flex: 1;
  position: relative;
  /* flex: 1 1 0; */
  /* min-height: 90px; */

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;

  /* border-bottom: solid 1px var(--color-grey88); */
}

.car_rate_item:last-child {
  border-bottom: none;
}

.car_rate_price {
  color: var(--color-grey22);
  font-size: var(--font-md);
  line-height: var(--font-md);
  font-weight: bold;
}
.car_rate_price_desc {
  font-size: calc(var(--font-femto) * 1);
  color: var(--color-grey44);
}

.car_rate_details {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(var(--font-femto) * 0.5);

  margin-top: calc(var(--font-femto) * 0.5);

  color: var(--color-blue);
  font-size: var(--font-nano);
  line-height: var(--font-nano);
  cursor: pointer;
}

.car_rate_details_updated {
  color: var(--color-blue);
  font-size: var(--font-nano);
  cursor: pointer;
}
.car_rate_details_updated sup {
  color: var(--color-orange);
}

.car_rate_description {
  margin-top: calc(var(--font-femto) * 0.5);
  color: var(--color-grey22);
  font-size: var(--font-femto);
}

.car_rate_add_btn {
  /* position: absolute; */
  /* top: 50%; */
  /* right: var(--font-sm); */

  /* transform: translateY(-50%); */

  /* display: inline-flex; */
  /* align-items: center; */
  /* justify-content: center; */
  /* gap: calc(var(--font-femto) * 0.5); */

  min-width: calc(var(--font-sm) * 4);
  padding: calc(var(--font-femto) * 0.75) var(--font-uxs);

  border: none;
  border-radius: var(--radius-inner);

  background-color: var(--color-blue);
  color: #fff;

  font-family: inherit;
  font-size: var(--font-femto);
  line-height: var(--font-femto);
  font-weight: 600;

  cursor: pointer;

  transition:
    background-color 0.2s ease,
    box-shadow 0.2s ease;
}

.car_rate_add_btn:hover {
  background-color: var(--color-blue);
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.15);
}

.car_list_item .c_list_item_body {
  transition: box-shadow 0.2s ease;
}

.car_list_item .c_list_item_body:hover {
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.15);
}

@media (min-width: 768px) {
  .car_list_item .c_list_item_body {
    flex-direction: row;
  }

  .car_list_item .v_list_item_left {
    border-right: solid 1px var(--color-grey88);
    border-bottom: none;
  }
}

@media (min-width: 1200px) {
  .car_list_metadata {
    flex-direction: row;
  }
}

/* MD */
@media (min-width: 768px) {
}

/* LG */
@media (min-width: 992px) {
}

/* XL */
@media (min-width: 1200px) {
}

/* XXL */
@media (min-width: 1400px) {
}

/* Greater Than XXL */
@media (min-width: 1600px) {
}
