@charset "UTF-8";
/* VARIABLES */
/* FONTS */
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap");
:root {
  /* FONTS 
    --f-main: "MS Sans-serif", "MS Sans Serif", Arial, sans-serif;
    --f-header: "MS Reference Sans Serif", "ms-reference-sans-serif-regular", "MS reference sans-serif-regular", Arial, sans-serif;
    */
  --f-main: "Roboto", sans-serif;
  --f-header: "Roboto", sans-serif;
  /* COLORS */
  --c-mainmodal: rgba(255,255,255,0.8);
  --c-color-scheme: auto;
  --c-primary: #1a2847;
  --c-titles: rgb(40 112 153);
  --c-secondary: #fbb03b;
  --c-third: #6f7273;
  --c-header: #ffffff;
  --c-header-txt: #1a2847;
  --c-background: rgba(245, 245, 245, 1);
  --c-background-pax: rgba(255,255,255,1);
  --c-background-white: rgba(255,255,255,1);
  --c-button-color-invert: #1a2847;
  --c-button-invert: rgba(255,255,255,1);
  --c-button: #1a2847;
  --c-button-hover: #fbb03b;
  --c-button-txt: rgba(255, 255, 255, 1);
  --c-inputs: rgba(255, 255, 255, 1);
  --c-inputs-txt: rgba(0, 0, 136, 1);
  --c-inputs-txt-disabled: rgba(0, 0, 0, 0.4);
  --c-inputs-label: #1a2847;
  --c-placehodler: rgba(167,178,177, 1);
  --c-border-color: #fbb03b;
  --c-txt: #1a2847;
  --c-txt-white: rgba(255, 255, 255, 1);
  --c-txt-invert: rgba(255, 255, 255, 1);
  --c-txt-custom: rgb(255,255,255);
  --c-txt-checkbox-form: #1a2847;
  --c-txt-mainmenu: rgba(255,255,255,1);
  --c-link-topmenu: #1a2847;
  --c-link-topmenu-hover: #fbb03b;
  --c-link: rgba(0, 8, 155, 1);
  --c-link-hover: #fbb03b;
  --c-plane: rgba(255, 255,255, 1);
  --c-arrow: #1a2847;
  --c-dashedLink: #1a2847;
  --c-table-header: #1a2847;
  --c-table-odd-row: rgba(255, 255, 255, 1);
  --c-table-even-row: rgba(245, 245, 245, 1);
  --c-menu-back: #ffffff;
  --c-menu-active: #fbb03b;
  --c-menu-hover: #fbb03b;
  --c-fonts-light: rgba(0, 0, 0, 1);
  --c-fonts-dark: rgba(0, 0, 0, 1);
  --c-check-inactive: rgba(169, 170, 173, 1);
  --c-alert-error-background: rgba(242, 201, 198, 1);
  --c-alert-error-txt: rgba(207, 112, 108, 1);
  --c-alert-check-background: rgba(205, 236, 198, 1);
  --c-alert-check-txt: rgba(82, 139, 69, 1);
  --c-alert-success-background: rgba(205, 236, 198, 1);
  --c-alert-success-txt: rgba(82, 139, 69, 1);
  --c-background-ssr-plane: rgba(255,255,255,1);
  /*  color stepper */
  --c-stepper-line: rgba(255, 255, 255, 1);
  --c-stepper-line-inactive: rgba(169, 170, 173, 1);
  --c-stepper-txt-inactive: rgba(169, 170, 173, 1);
  --c-stepper-underline: rgba(213, 213, 213, 1);
  --c-stepper-background: #fbb03b;
  /* images */
  --i-loading-gif: url('./images/loading.gif');
  --i-radio-on: url(./images/radio_on_shadow.svg);
  --i-radio-off: url(./images/radio_off_shadow.svg);
  --i-radio-on-shadow: url(./images/radio_on_shadow.svg);
  --i-radio-off-shadow: url(./images/radio_off_shadow.svg);
  --i-checkbox-on: url(./images/checkbox_on.svg);
  --i-checkbox-off: url(./images/checkbox_off.svg);
  --i-select-arrow: url(./images/arrow_down.svg);
  --i-select-arrow-shadow: url(./images/arrow_down_select.svg);
  --i-logo: url(./images/logo.png);
  --i-bravo: url(./images/logo.png);
  --i-aircraft: url(./images/fa_plane.png);
  /* utilities */
  --border-radius: 0px;
  --border-radius-form: 0px;
  --padding: 15px;
  --marginGrid: 50px;
}

/*  GATE - ONLY FOR DEVELOP */
.entrance__link__grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 1fr;
  grid-auto-rows: 1fr;
  gap: 15px;
  padding-bottom: 60px;
}

@media screen and (max-width: 990px) {
  .entrance__link__grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media screen and (max-width: 750px) {
  .entrance__link__grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width: 650px) {
  .entrance__link__grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
  }
}

.entrance__link {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: var(--border-radius-form);
  background-color: var(--c-primary);
  color: var(--c-inputs-txt);
  padding: var(--padding);
}

.entrance__link:hover {
  color: var(--c-placehodler);
}

/*  GLOBAL */
html,
body {
  padding: 0;
  margin: 0;
  font-family: var(--f-main);
  height: 110%;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: var(--c-background);
  color: var(--c-txt);
  position: relative;
  padding-top: 0px;
  padding-bottom: 150px;
}

button, a {
  cursor: pointer;
}

p {
  margin: 0;
}

a {
  text-decoration: none;
}

* {
  box-sizing: border-box;
}

strong {
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6 {
  overflow-wrap: normal;
  font-family: var(--f-haeder);
}

h1 {
  font-size: 1.5rem;
  color: var(--c-txt);
  padding: 0;
  margin: 0px 0px 20px 0px;
}

/* BASIC CONTAINER */
.container {
  width: 100%;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (min-width: 640px) {
  .container {
    padding-right: 16px;
    padding-left: 16px;
  }
}

@media only screen and (min-width: 768px) {
  .container {
    padding-right: 24px;
    padding-left: 24px;
  }
}

@media only screen and (min-width: 990px) {
  .container {
    padding-right: 36px;
    padding-left: 36px;
  }
}

@media only screen and (min-width: 1550px) {
  .container {
    max-width: 1622px;
    padding-right: 36px;
    padding-left: 36px;
  }
}

.container__noPadd {
  width: 100%;
  padding-right: 0px;
  padding-left: 0px;
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (min-width: 1550px) {
  .container__noPadd {
    max-width: 1622px;
  }
}

.main {
  padding-top: 50px;
}

@media only screen and (min-width: 1550px) {
  .main {
    padding-top: 30px;
    margin-left: 150px;
    margin-right: 150px;
  }
}

.mt-0 {
  margin-top: 0px !important;
}

.mt-1 {
  margin-top: 10px !important;
}

.mt-2 {
  margin-top: 20px !important;
}

.mt-3 {
  margin-top: 30px !important;
}

.mt-4 {
  margin-top: 40px !important;
}

.mt-6 {
  margin-top: 60px !important;
}

.mt-8 {
  margin-top: 80px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-1 {
  margin-bottom: 10px !important;
}

.mb-2 {
  margin-bottom: 20px !important;
}

.mb-3 {
  margin-bottom: 30px !important;
}

.mb-4 {
  margin-bottom: 40px !important;
}

.mb-6 {
  margin-bottom: 60px !important;
}

.mb-8 {
  margin-bottom: 80px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

.mr-1 {
  margin-right: 10px !important;
}

.mr-2 {
  margin-right: 20px !important;
}

.mr-3 {
  margin-right: 30px !important;
}

.mr-4 {
  margin-right: 40px !important;
}

.mr-6 {
  margin-right: 60px !important;
}

.mr-8 {
  margin-right: 80px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.ml-1 {
  margin-left: 10px !important;
}

.ml-2 {
  margin-left: 20px !important;
}

.ml-3 {
  margin-left: 30px !important;
}

.ml-4 {
  margin-left: 40px !important;
}

.ml-6 {
  margin-left: 60px !important;
}

.ml-8 {
  margin-left: 80px !important;
}

.pt-0 {
  padding-top: 0px !important;
}

.pt-1 {
  padding-top: 10px !important;
}

.pt-2 {
  padding-top: 20px !important;
}

.pt-3 {
  padding-top: 30px !important;
}

.pt-4 {
  padding-top: 40px !important;
}

.pt-6 {
  padding-top: 60px !important;
}

.pt-8 {
  padding-top: 80px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pb-1 {
  padding-bottom: 10px !important;
}

.pb-2 {
  padding-bottom: 20px !important;
}

.pb-3 {
  padding-bottom: 30px !important;
}

.pb-4 {
  padding-bottom: 40px !important;
}

.pb-6 {
  padding-bottom: 60px !important;
}

.pb-8 {
  padding-bottom: 80px !important;
}

.pr-0 {
  padding-right: 0px !important;
}

.pr-1 {
  padding-right: 10px !important;
}

.pr-2 {
  padding-right: 20px !important;
}

.pr-3 {
  padding-right: 30px !important;
}

.pr-4 {
  padding-right: 40px !important;
}

.pr-6 {
  padding-right: 60px !important;
}

.pr-8 {
  padding-right: 80px !important;
}

.pl-0 {
  padding-left: 0px !important;
}

.pl-1 {
  padding-left: 10px !important;
}

.pl-2 {
  padding-left: 20px !important;
}

.pl-3 {
  padding-left: 30px !important;
}

.pl-4 {
  padding-left: 40px !important;
}

.pl-6 {
  padding-left: 60px !important;
}

.pl-8 {
  padding-left: 80px !important;
}

.ta-center {
  text-align: center;
}

.diviner {
  padding: 20px 0px;
  margin: 20px 0px;
  width: 100%;
  position: relative;
}

.diviner_small {
  padding: 10px 0px;
  margin: 10px 0px;
  width: 100%;
  position: relative;
}

.diviner::before, .diviner_small::before {
  content: "";
  width: 100%;
  height: 1px;
  left: 0px;
  top: 50%;
  border-bottom: 1px dotted var(--c-dashedLink);
  position: absolute;
}

/* BUTTONS */
#backbtn {
  background-color: var(--c-third) !important;
  color: var(--c-txt);
  border: solid 1px var(--c-primary);
  border-radius: 10px;
}

#backbtn:hover {
  transition: all 0.3s ease;
  background-color: var(--c-secondary) !important;
  color: var(--c-txt) !important;
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}

#nextbtn {
  background-color: var(--c-txt-white) !important;
  color: var(--c-primary) !important;
  border-radius: 10px;
}

#nextbtn:hover {
  transition: all 0.3s ease;
  background-color: var(--c-button-hover) !important;
  color: var(--c-txt) !important;
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}

.btn_invertHover {
  color: var(--c-button-invert);
  background-color: var(--c-button-hover);
}

.btn_invertHover:hover {
  background-color: var(--c-button);
  color: var(--c-button-invert);
}

/*
.btn {
  display: inline-block;
  padding: 15px 30px 15px 30px;
  border: none;
  border-radius: var(--border-radius);
  color: var(--c-button-txt);
  background-color: var(--c-button);
  text-align: center;
  width: auto;
  font-weight: bold;
  box-shadow: 0px 2px 7px rgba(97, 97, 97, 0.25);
  transition: all 0.3s ease;
  cursor: pointer;
}
.btn:hover  {
  transition: all 0.3s ease;
  background-color: var(--c-button-hover);
  color: var(--c-button);
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}
    */
.btn {
  display: inline-block;
  padding: 15px 30px 15px 30px;
  border: none;
  border-radius: var(--border-radius);
  color: var(--c-primary);
  background-color: var(--c-txt-white);
  text-align: center;
  width: auto;
  font-weight: bold;
  box-shadow: 0px 2px 7px rgba(97, 97, 97, 0.25);
  transition: all 0.3s ease;
  cursor: pointer;
}

.btn:hover {
  transition: all 0.3s ease;
  background-color: var(--c-button-hover);
  color: var(--c-txt-custom) !important;
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}

.btn_select_seat:hover {
  transition: all 0.3s ease;
  color: white;
  background-color: var(--c-button-hover);
  /*color: var(--c-txt-custom)!important;*/
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}

.btn-wide {
  width: 100%;
  max-width: 260px;
}

.btn-mid {
  width: 100%;
  max-width: 160px;
}

/*
.btn_small {
  display: inline-block;
  padding: 7px 12px 7px 12px;
  border: none;
  border-radius: var(--border-radius);
  color: var(--c-button-txt);
  background-color: var(--c-button);
  text-align: center;
  width: auto;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: normal;
  box-shadow: 0px 2px 7px rgba(97, 97, 97, 0.25);
  transition: all 0.3s ease;
  cursor: pointer;
}
    */
.btn_small {
  display: inline-block;
  padding: 7px 12px 7px 12px;
  border: none;
  border-radius: var(--border-radius);
  /* color: white;*/
  background-color: var(--c-txt-custom);
  text-align: center;
  width: auto;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: normal;
  box-shadow: 0px 2px 7px rgba(97, 97, 97, 0.25);
  transition: all 0.3s ease;
  cursor: pointer;
}

.btn_width {
  min-width: 200px;
}

/*  ALERTS */
.alert__error__login {
  background-color: var(--c-alert-error-background);
  color: var(--c-alert-error-txt);
  padding: 5px;
  font-size: 0.8rem;
  font-family: var(--f-header);
  font-weight: bold;
  display: block;
  width: 100%;
}

.alert__check__login {
  background-color: var(--c-alert-check-background);
  color: var(--c-alert-check-txt);
  padding: 5px;
  font-size: 0.8rem;
  font-family: var(--f-header);
  font-weight: bold;
  border-radius: 25px;
}

.alert__check {
  background-color: var(--c-alert-check-background);
  color: var(--c-alert-check-txt);
  padding: 11px 35px 9px 35px;
  font-size: 1.1rem;
  text-transform: uppercase;
  font-weight: bold;
  /*border-radius: 70px;*/
}

.alert__error__general {
  background-color: var(--c-alert-error-background);
  color: var(--c-alert-error-txt);
  padding: 11px 35px 9px 35px;
  font-size: 1.1rem;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 25px;
}

/* FORMS */
::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: var(--c-placehodler);
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: var(--c-placehodler);
}

:-ms-input-placeholder {
  /* IE 10+ */
  color: var(--c-placehodler);
}

:-moz-placeholder {
  /* Firefox 18- */
  color: var(--c-placehodler);
}

:where(select) {
  appearance: none;
  background: none;
  border-radius: 0;
  padding-right: 1em;
}

input:focus, input:hover, textarea:focus, textarea:hover, select:focus, select:hover {
  outline: none;
}

/*
input {
  width: 100%;
  padding: 12px;
  background-color: var(--c-background);
  color: var(--c-txt);
  margin-bottom: 20px;
  font-size: 0.812rem;
  border-radius: var(--border-radius-form);
  outline: none;
  border: none;
}*/
input[type="checkbox"] {
  /* Style adapté, sans la hauteur fixe */
  width: auto;
  /* ou spécifiez une largeur adaptée */
  height: auto;
  margin-bottom: 10px;
  /* Exemple de marge */
  /* Ajoutez d'autres styles ici si nécessaire */
}

input:not([type="checkbox"]):not([type="submit"]):not([type="button"]) {
  height: 45px;
  width: 100%;
  padding: 12px;
  background-color: var(--c-background);
  color: var(--c-txt);
  margin-bottom: 20px;
  font-size: 0.812rem;
  border-radius: var(--border-radius-form);
  outline: none;
  border: none;
  box-shadow: 0px 1.92284px 4.80711px rgba(0, 0, 0, 0.27);
}

input:not([type="submit"]):not([type="checkbox"]):not([type="button"]) {
  height: 45px;
  width: 100%;
  padding: 12px;
  background-color: var(--c-background);
  color: var(--c-txt);
  margin-bottom: 20px;
  font-size: 0.812rem;
  border-radius: var(--border-radius-form);
  outline: none;
  border: none;
  box-shadow: 0px 1.92284px 4.80711px rgba(0, 0, 0, 0.27);
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  opacity: 1;
}

textarea {
  width: 100%;
  padding: 12px;
  min-height: 120px;
  background-color: var(--c-background);
  color: var(--c-txt);
  margin-bottom: 20px;
  font-size: 0.812rem;
  border-radius: var(--border-radius-form);
  outline: none;
  border: none;
}

button[type="submit"] {
  width: 100%;
  padding: 18px;
  background-color: var(--c-button);
  color: var(--button-txt);
  margin-bottom: 20px;
  border-radius: var(--border-radius-form);
  outline: none;
  border: none;
  cursor: pointer;
}

button[type="submit"]:hover {
  color: var(--button-txt);
  background-color: var(--c-button);
}

input[type="radio"] + label:last-child {
  margin-right: 0px;
}

input[type="radio"]:disabled + label {
  opacity: 0.4;
}

input[type="radio"]:checked + label {
  background-image: var(--i-radio-on);
  display: inline-block;
}

input[type="radio"] {
  display: none;
}

input[type="checkbox"] + label {
  display: inline-block;
  padding: 5px 0px 5px 25px;
  background-image: var(--i-checkbox-off);
  background-size: 19px 19px;
  color: var(--c-txt);
  background-repeat: no-repeat;
  background-position: left top 4px;
  font-size: 0.812rem;
  cursor: pointer;
  margin-right: 15px;
  margin-bottom: 20px;
  width: auto;
}

input[type="checkbox"] + label:last-child {
  margin-right: 0px;
}

input[type="checkbox"]:disabled + label {
  opacity: 0.4;
}

input[type="checkbox"]:checked + label {
  background-image: var(--i-checkbox-on);
  display: inline-block;
}

input[type="checkbox"] {
  display: none;
}

.form__selectBox {
  width: 100%;
  display: block;
  background-color: var(--c-background);
  color: var(--c-txt);
  margin-bottom: 20px;
  border-radius: var(--border-radius-form);
  padding: 10px;
  padding-right: 15px;
  background-repeat: no-repeat;
  background-position: calc(100% - 20px) 50%;
  padding-left: 20px;
  background-image: var(--i-select-arrow) !important;
  background-size: 8px 6px;
}

select {
  -moz-appearance: window;
  -webkit-appearance: none;
  padding: 0px 10px 0px 0px;
  margin: 0px;
  position: relative;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center right;
  border: none;
  width: calc(100% - 0px);
  font-size: 0.812rem;
}

select option {
  font-size: 0.812rem;
}

option:disabled, option.disabled {
  color: var(--c-inputs-txt-disabled);
}

label {
  font-size: 0.812rem;
  text-align: left;
  display: block;
  margin-bottom: 5px;
  color: var(--c-inputs-label);
}

input.form__passToggle {
  padding-right: 55px;
  position: relative;
  z-index: 1;
}

.form__eye {
  z-index: 2;
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 8px;
  right: 11px;
  background-image: url("images/icon_eye_open.svg");
  background-repeat: no-repeat;
  background-size: 30px 30px;
}

.form__eye__close {
  background-image: url("images/icon_eye_close.svg");
}

.form__eye__cp {
  z-index: 2;
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 8px;
  right: 11px;
  background-image: url("images/icon_eye_open.svg");
  background-repeat: no-repeat;
  background-size: 30px 30px;
}

.form__eye__cp__close {
  z-index: 2;
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 8px;
  right: 11px;
  background-repeat: no-repeat;
  background-size: 30px 30px;
  background-image: url("images/icon_eye_close.svg");
}

.radio_shadow + label {
  background-image: var(--i-radio-off-shadow) !important;
  font-size: 1rem !important;
  font-weight: bold !important;
  background-size: 21px 21px !important;
  background-position: left top 1px !important;
  padding: 5px 0px 5px 20px !important;
  margin-bottom: 10px;
}

.radio_shadow:checked + label {
  background-image: var(--i-radio-on-shadow) !important;
}

.form__selectBox.form__shadow {
  background-image: var(--i-select-arrow-shadow) !important;
  background-size: 14px 8px;
  /*box-shadow: 0px 1.92284px 4.80711px rgba(0, 0, 0, 0.27);*/
}

input[type=text].form__shadow, input[type=tel].form__shadow, input[type=password].form__shadow, input[type=email].form__shadow, .form__selectBox.form__shadow {
  /*box-shadow: 0px 1.92284px 4.80711px rgba(0, 0, 0, 0.27);*/
  background-image: none;
}

.grid_wrap {
  display: flex;
}

@media screen and (max-width: 860px) {
  .grid_wrap {
    flex-wrap: wrap;
  }
}

.grid_wrap_flexStart {
  align-items: flex-start;
}

.grid_wrap_stretch {
  align-items: stretch;
}

.grid_item-1-3 {
  width: calc(33.333% - (var(--marginGrid) / 2));
  margin-right: var(--marginGrid);
}

@media screen and (max-width: 860px) {
  .grid_item-1-3 {
    width: 100%;
    margin-right: 0px;
    margin-bottom: 20px;
  }
}

.grid_item-flex {
  flex: 1;
}

@media screen and (max-width: 860px) {
  .grid_item-flex {
    width: 100%;
  }
}

/* UTLITIES */
.cf:before,
.cf:after {
  content: ".";
  display: block;
  height: 0;
  overflow: hidden;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

.mb-6 {
  margin-bottom: calc(6 * var(--padding));
}

.mb-4 {
  margin-bottom: calc(4 * var(--padding));
}

.mb-3 {
  margin-bottom: calc(3 * var(--padding));
}

.mb-2 {
  margin-bottom: calc(2 * var(--padding));
}

.mt-6 {
  margin-top: calc(6 * var(--padding));
}

.mt-4 {
  margin-top: calc(4 * var(--padding));
}

.mt-3 {
  margin-top: calc(3 * var(--padding));
}

.mt-2 {
  margin-top: calc(2 * var(--padding));
}

.ta-center {
  text-align: center;
}

.ta-left {
  text-align: left;
}

.ta-right {
  text-align: right;
}

/*  TABLES */
table {
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  border-radius: 8px 8px 35px 35px;
}

thead tr {
  border-radius: 8px 8px 0px 0px !important;
  background-color: var(--c-secondary);
}

thead tr th {
  background-color: var(--c-secondary);
}

thead tr th:first-child {
  border-radius: 0px 0px 0px 0px;
}

thead tr th:last-child {
  border-radius: 0px 0px 0px 0px;
}

table tr {
  background-color: var(--c-background);
  padding: .45em;
}

table tr:last-child {
  background-color: var(--c-background);
  padding: .35em;
  box-shadow: 0px 7px 5px RGB(114 112 112/9%);
  border-radius: 0px 0px 35px 35px;
}

table tr:last-child td:first-child {
  border-radius: 0px 0px 0px 35px;
}

table tr:last-child td:last-child {
  border-radius: 0px 0px 35px 0px;
}

table th,
table td {
  padding: .625em;
  text-align: center;
  /*border-right: 1px solid #919191;*/
}

table th:last-child,
table td:last-child {
  border-right: none;
}

table tr:nth-child(odd) td {
  background-color: var(--c-table-odd-row);
}

table tr:nth-child(even) td {
  background-color: var(--c-table-even-row);
}

table th {
  font-size: 1em;
  color: var(--c-txt-invert);
  font-weight: normal;
}

@media screen and (max-width: 860px) {
  table {
    border: 0;
  }
  table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table tr {
    border-bottom: 3px solid #ddd;
    display: block;
    margin-bottom: .625em;
  }
  table td {
    border-bottom: 1px solid #ddd;
    display: block;
    font-size: .8em;
    text-align: right;
    border-right: none;
  }
  table td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--c-primary);
  }
  table td:last-child {
    border-bottom: 0;
  }
  table tr:last-child td:first-child {
    border-radius: 0px;
  }
  table tr:last-child td:last-child {
    border-radius: 0px 0px 35px 35px;
  }
}

table td input, table td label {
  margin-bottom: 0px !important;
}

table.table_small th, table.table_small td {
  padding: 0.25em 0.625em;
}

table.table_small th {
  font-size: 0.9rem;
}

table.table_small td {
  font-size: 0.76rem;
}

table.table_dark thead tr {
  background-color: var(--c-secondary);
}

table.table_dark thead tr th {
  background-color: var(--c-secondary);
}

.table_btns_340 {
  width: 340px;
}

@media screen and (max-width: 860px) {
  .table_btns_340 {
    width: 100%;
  }
}

.table_btns_190 {
  width: 190px;
}

@media screen and (max-width: 860px) {
  .table_btns_190 {
    width: 100%;
  }
}

.table_btns span, .table_btns button {
  margin: 0px 8px;
}

@media screen and (max-width: 860px) {
  .table_btns span, .table_btns button {
    margin: 0px 5px 10px 5px;
  }
}

table.table_tl_auto {
  table-layout: auto;
}

table.table_td_15 td {
  width: 15%;
}

@media screen and (max-width: 860px) {
  table.table_td_15 td {
    width: 100%;
  }
}

table.table_td_25 td {
  width: 15%;
}

@media screen and (max-width: 860px) {
  table.table_td_25 td {
    width: 100%;
  }
}

/*  BEDGE */
.bedge {
  display: inline-block;
  padding: 7px 20px;
  text-align: center;
  border-radius: 0px;
  font-size: 0.9rem;
  font-weight: bold;
  width: auto;
}

.badge_info {
  background-color: var(--c-button);
  color: var(--c-button-txt);
}

.bedge_width {
  padding: 7px 40px;
}

.bedge_primary {
  background-color: var(--c-primary);
  color: var(--c-txt-invert);
}

.bedge_success {
  background-color: var(--c-alert-success-background);
  color: var(--c-alert-success-txt);
}

.bedge_error, .bedge_danger {
  background-color: var(--c-alert-error-background);
  color: var(--c-alert-error-txt);
}

/*  ATOMIC SYLES */
.mt-0 {
  margin-top: 0px !important;
}

.mt-1 {
  margin-top: 10px !important;
}

.mt-2 {
  margin-top: 20px !important;
}

.mt-3 {
  margin-top: 30px !important;
}

.mt-4 {
  margin-top: 40px !important;
}

.mt-5 {
  margin-top: 50px !important;
}

.mt-6 {
  margin-top: 60px !important;
}

.mt-8 {
  margin-top: 80px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-1 {
  margin-bottom: 10px !important;
}

.mb-2 {
  margin-bottom: 20px !important;
}

.mb-3 {
  margin-bottom: 30px !important;
}

.mb-4 {
  margin-bottom: 40px !important;
}

.mb-5 {
  margin-bottom: 50px !important;
}

.mb-6 {
  margin-bottom: 60px !important;
}

.mb-8 {
  margin-bottom: 80px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

.mr-1 {
  margin-right: 10px !important;
}

.mr-2 {
  margin-right: 20px !important;
}

.mr-3 {
  margin-right: 30px !important;
}

.mr-4 {
  margin-right: 40px !important;
}

.mr-5 {
  margin-right: 50px !important;
}

.mr-6 {
  margin-right: 60px !important;
}

.mr-8 {
  margin-right: 80px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.ml-1 {
  margin-left: 10px !important;
}

.ml-2 {
  margin-left: 20px !important;
}

.ml-3 {
  margin-left: 30px !important;
}

.ml-4 {
  margin-left: 40px !important;
}

.ml-5 {
  margin-left: 50px !important;
}

.ml-6 {
  margin-left: 60px !important;
}

.ml-8 {
  margin-left: 80px !important;
}

.pt-0 {
  padding-top: 0px !important;
}

.pt-1 {
  padding-top: 10px !important;
}

.pt-2 {
  padding-top: 20px !important;
}

.pt-3 {
  padding-top: 30px !important;
}

.pt-4 {
  padding-top: 40px !important;
}

.pt-5 {
  padding-top: 50px !important;
}

.pt-6 {
  padding-top: 60px !important;
}

.pt-8 {
  padding-top: 80px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pb-1 {
  padding-bottom: 10px !important;
}

.pb-2 {
  padding-bottom: 20px !important;
}

.pb-3 {
  padding-bottom: 30px !important;
}

.pb-4 {
  padding-bottom: 40px !important;
}

.pb-5 {
  padding-bottom: 50px !important;
}

.pb-6 {
  padding-bottom: 60px !important;
}

.pb-8 {
  padding-bottom: 80px !important;
}

.pr-0 {
  padding-right: 0px !important;
}

.pr-1 {
  padding-right: 10px !important;
}

.pr-2 {
  padding-right: 20px !important;
}

.pr-3 {
  padding-right: 30px !important;
}

.pr-4 {
  padding-right: 40px !important;
}

.pr-5 {
  padding-right: 50px !important;
}

.pr-6 {
  padding-right: 60px !important;
}

.pr-8 {
  padding-right: 80px !important;
}

.pl-0 {
  padding-left: 0px !important;
}

.pl-1 {
  padding-left: 10px !important;
}

.pl-2 {
  padding-left: 20px !important;
}

.pl-3 {
  padding-left: 30px !important;
}

.pl-4 {
  padding-left: 40px !important;
}

.pl-5 {
  padding-left: 50px !important;
}

.pl-6 {
  padding-left: 60px !important;
}

.pl-8 {
  padding-left: 80px !important;
}

.ta-center {
  text-align: center;
}

.ta-left {
  text-align: left;
}

.ta-right {
  text-align: right;
}

.fx-center {
  justify-content: center;
}

.fx-left {
  justify-content: flex-start;
}

.fx-right {
  justify-content: flex-end;
}

.fxv-center {
  align-items: center;
}

.fxv-top {
  align-items: flex-start;
}

.fxv-bottom {
  align-items: flex-end;
}

.c-primary {
  color: var(--c-primary) !important;
}

.c-secondary {
  color: var(--c-secondary) !important;
}

.c-txt {
  color: var(--c-txt) !important;
}

.c-txt-invert {
  color: var(--c-txt-invert) !important;
}

.footer {
  height: auto !important;
}

/*
.menu__top li {
    color: var(--c-txt)!important;
}

.menu__top li:hover {
    color: var(--c-secondary) !important;
}

.menu__top li a {
    color: var(--c-txt)!important;
}

.menu__top li a:hover {
    color: var(--c-secondary) !important;
}
*/
.reservation_cc_fees {
  background-color: var(--c-background);
  display: flex;
  flex-wrap: nowrap;
  padding-top: 10px;
  padding-bottom: 2px;
  color: var(--c-txt);
  font-size: 1.025rem;
  font-weight: bold;
}

.login__form__label {
  font-size: 15px !important;
}

.details_link {
  font-size: 12px;
  text-align: right;
  padding-top: 3px;
  padding-bottom: 5px;
}

.text-danger {
  color: RGB(255 0 0);
  padding: 1px;
  font-size: 0.8rem;
  font-family: var(--f-header);
  font-weight: bold;
  display: block;
  width: 100%;
  margin-top: 2px;
  border-radius: 25px;
}

.text-alert {
  color: RGB(255 0 0);
  padding: 1px;
  font-size: 0.8rem;
  font-family: var(--f-header);
  font-weight: bold;
  display: block;
  width: 100%;
  margin-top: 2px;
  border-radius: 25px;
}

.alert__error__general {
  background-color: var(--c-alert-error-background);
  color: var(--c-alert-error-txt);
  padding: 11px 35px 9px 35px;
  font-size: 1.1rem;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 10px;
}

input[type="radio"] + label {
  display: inline-block;
  padding: 3px 0px 0px 20px;
  background-image: var(--i-radio-off);
  background-size: 20px 20px;
  color: var(--c-inputs-label);
  background-repeat: no-repeat;
  background-position: left top 0px;
  font-size: 0.812rem;
  cursor: pointer;
  margin-right: 15px;
  margin-bottom: 20px;
  width: auto;
  min-height: 22px;
}

input[type="radio"] + label:last-child {
  margin-right: 0px;
  width: 15px;
  height: 15px;
  box-shadow: inset 0px 0px 0px 2px #ddd8d8;
  border-radius: 999px;
  -webkit-appearance: inherit;
  border: 1px solid #ddd8d8;
  position: relative;
  box-sizing: border-box;
}

input[type="radio"] {
  width: 15px;
  height: 15px;
  box-shadow: inset 0px 0px 0px 2px #a19d9d;
  border-radius: 999px;
  -webkit-appearance: inherit;
  border: 1px solid #999999;
  position: relative;
  box-sizing: border-box;
}

input[type="radio"]:checked:before {
  content: "";
  position: absolute;
  border-radius: 999px;
  left: 25%;
  top: 25%;
  width: 50%;
  height: 50%;
  background: #999999;
}

.reservation_dates_class {
  flex-direction: column !important;
}

.mainmodal {
  display: block;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--c-mainmodal) var(--i-loading-gif) 50% 50% no-repeat;
}

.stepper ul > li > span > svg {
  width: 37px;
  height: 37px;
  fill: #262262;
}

@media screen and (max-width: 768px) {
  .stepper ul > li > span > svg {
    width: 35px;
    height: 29px;
  }
}

@media screen and (max-width: 650px) {
  .stepper ul > li > span > svg {
    width: 27px;
    height: 24px;
  }
}

.stepper ul > li.active > span > svg {
  width: 37px;
  height: 37px;
  fill: white !important;
}

@media screen and (max-width: 768px) {
  .stepper ul > li.active > span > svg {
    width: 35px;
    height: 29px;
  }
}

@media screen and (max-width: 650px) {
  .stepper ul > li.active > span > svg {
    width: 27px;
    height: 24px;
  }
}

.stepper ul > li.active {
  color: var(--c-txt);
}

.stepper ul > li.active > a {
  color: var(--c-txt);
}

.stepper ul > li.active > span {
  background-color: var(--c-stepper-background);
  fill: white !important;
}

.travel_itinerary_to_ow {
  border: none;
}

.travel_itinerary {
  padding: 38px 62px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary {
    padding: 38px 40px;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary {
    padding: 38px 40px;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary {
    padding: 25px 18px;
  }
}

.travel_itinerary_passenger {
  padding: 15px 62px;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  margin-bottom: 40px;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary_passenger {
    padding: 15px 40px;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary_passenger {
    padding: 15px 40px;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary_passenger {
    padding: 5px 18px;
  }
}

/* Color palette */
input.radio__shadow[type="radio"] {
  opacity: 0;
  width: 0;
  height: 0;
  background-image: var(--i-radio-off-shadow) !important;
  font-size: 1rem !important;
  font-weight: bold !important;
  background-size: 21px 21px !important;
  background-position: left top 6px !important;
}

input.radio__shadow[type="radio"]:active ~ label {
  opacity: 1;
}

input.radio__shadow[type="radio"]:checked ~ label {
  opacity: 1;
  border: 1px solid #FAFAFA;
  font-weight: 700;
  font-size: 1rem !important;
  font-weight: bold !important;
}

input[type="checkbox"]:checked + label {
  color: var(--c-txt-custom) !important;
}

label.radio__shadow {
  border: 1px solid rgba(250, 250, 250, 0.15);
  box-sizing: border-box;
  display: block;
  height: 100%;
  width: 100%;
  padding: 10px 10px 30px 10px;
  cursor: pointer;
  opacity: .5;
  transition: all .5s ease-in-out;
}

label.radio__shadow:hover, label.radio__shadow:focus, label.radio__shadow:active {
  border: 1px solid rgba(250, 250, 250, 0.5);
}

.payment_method_item {
  white-space: nowrap;
  width: 30%;
}

.booking_reference {
  flex-direction: column;
  align-items: start !important;
  margin-bottom: 15px !important;
}

label.radio__shadow_ {
  display: flex;
  cursor: pointer;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  margin-bottom: 0.375em;
  /* Accessible outline */
  /* Remove comment to use */
  /*
		&:focus-within {
				outline: .125em solid $primary-color;
		}
	*/
}

label.radio__shadow_ input.radio__shadow_ {
  position: absolute;
  left: -9999px;
}

label.radio__shadow_ input.radio__shadow_:checked + span {
  background-color: #d6d6e5;
  color: black;
}

label.radio__shadow_ input.radio__shadow_:checked + span:before {
  box-shadow: inset 0 0 0 0.4375em #00005c;
}

label.radio__shadow_ span.radio__shadow_ {
  display: flex;
  align-items: center;
  padding: 0.375em 0.75em 0.375em 0.375em;
  border-radius: 99em;
  transition: 0.25s ease;
}

label.radio__shadow_ span.radio__shadow_:hover {
  background-color: #d6d6e5;
  color: black;
}

label.radio__shadow_ span.radio__shadow_:before {
  display: flex;
  flex-shrink: 0;
  content: "";
  background-color: #fff;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  margin-right: 0.375em;
  transition: 0.25s ease;
  box-shadow: inset 0 0 0 0.125em #00005c;
}

.travel_itinerary_h1 {
  padding-left: 0px !important;
  padding-top: 20px !important;
  padding-bottom: 0px !important;
  margin-bottom: 15px !important;
}

.travel_itinerary_wrap {
  /*padding-bottom:20px;*/
}

.travel_rcd {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 650px) {
  .travel_rcd {
    font-size: 14px;
  }
}

.travel_ticket {
  font-size: 14px;
}

.search_filters_left {
  margin-top: 25px;
}

.search_filters_invert {
  margin-bottom: 25px !important;
}

.btn_invert {
  background-color: var(--c-secondary);
  /*color: black;*/
}

.btn_mid {
  width: 100%;
  max-width: 160px;
}

.alert__warning {
  background-color: orange;
  color: white;
  padding: 11px 35px 9px 35px;
  font-size: 14px;
  /*text-transform: uppercase;*/
  /*font-weight: bold;*/
  border-radius: 25px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.alert__warning__grey {
  background-color: var(--c-secondary);
  color: var(--c-txt);
  padding: 11px 35px 9px 35px;
  font-size: 14px;
  /*text-transform: uppercase;*/
  /*font-weight: bold;*/
  margin-top: 15px;
  margin-bottom: 15px;
}

.confirm_warning {
  color: white !important;
  font-weight: 600;
  text-transform: uppercase;
}

.payment_confirmation {
  border-radius: 25px;
  box-shadow: 0px 1.42048px 4.97166px RGB(0 0 0/25%);
  background-color: var(--c-primary);
  padding: 20px 50px 20px 30px;
  font-weight: 700;
  margin-bottom: 15px;
  display: flex;
  color: var(--c-txt-custom);
}

.payment_aside_check_price_confirmation {
  text-align: right;
  width: 90px;
}

.popup_content {
  margin: 10px;
  padding: 0 10px;
  width: auto;
  max-width: 60%;
  border: 2px solid #444;
  background: var(--c-background);
}

@media screen and (max-width: 1345px) {
  .popup_content {
    margin: 10px;
    padding: 0 10px;
    width: auto;
    max-width: 60%;
    border: 2px solid #444;
  }
}

@media screen and (max-width: 1140px) {
  .popup_content {
    margin: 10px;
    padding: 0 10px;
    width: auto;
    max-width: 60%;
    border: 2px solid #444;
  }
}

@media screen and (max-width: 650px) {
  .popup_content {
    margin: 10px;
    padding: 0 10px;
    width: auto;
    max-width: 80%;
    border: 2px solid #444;
  }
}

.popup_content .popup_close {
  position: absolute;
  top: 0;
  right: 0px;
  border-radius: 2px;
  background: none;
  border: 0;
  font-size: 10px;
  padding: 0 0px;
}

.legend_popup {
  position: absolute;
  right: 20px;
  margin-top: 50px;
}

.JPO_ow_close {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  margin-top: 10px;
  margin-right: 10px;
}

.JPO_rt_close {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  margin-top: 10px;
  margin-right: 10px;
}

.JPO_reservation_padding {
  padding-left: 30px;
  padding-right: 30px;
  flex-direction: column;
  background-color: var(--c-background);
  border-radius: 5px;
}

.modal a.close-modal {
  top: 6.5px !important;
  right: 7.5px !important;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA8CAYAAAA+CQlPAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAATYSURBVGhD7Zj7U1RlGMf7LypFQEA0akS5KJrO9D9kInHZC6DMgpeomWr6WdSRFULFDJFxnDLFQZBKTWS6mNVMUyFSIjfRRMyQS6tcdpdvz/Oe9ywsI6Ge9zDTnPOZ2Vk459kz+znveZ/LPgeLYotbDVvcatjiVsMWtxq2uNWwxa2GLW6UyclJBAIBBINB8bcK+Dp+v9pr6igTv33rPt5/9yhqT30rjxhnaMgHt9OL5qZf4Z8IyKNqUCLe1zeAXOc+RC3MxuqUbTh96jt55tkZHvYhY2MJlsa68cqyLbhw7mf4A0F51jiGxR8MjsDt2IeYKAeWLHYhlt7TUrfj5ImvZcTTMzziw6YNJXhpSa64Zly0Cy8vzUfTxV9khHGUrPiBirNIWu5BTKQD8TFukndizaod+OR4s4x4cnil04V0Hkm7xfUiXsiEO8eLnu67Mso4SsQng5M4WNGA5MRCLF6UE5Jfu3oHjh9rklFzw3s6fcNOLIsLl85zeNFx408ZpQZlyY0zeuWBRiEfHaHLO/Bq2ls4VvOVjJqdwaF/kPFGCUnz4y2ln88UuaPjxh0ZpQ5l4szEeAAfVX6OpMSiKfloJ9atKUZN9ezyAwMjyNy0mxLZNGlaabOkGaXizNjYBA4f+lJbecryLBEn5auPnJdRU/x9fxhZGXtEXJi0eLzNkWaUizOPHo2j6rAmzyVOyNOenynf3z8IR9ZeEnaJF8ctejFL1G7Ve3ompogzD31jOPLxOSSvKAqTX59WjKNVF6j2P6Ay6BWlSpeOXJAFFx1rbzdXmjFNnPH5Rkn+PFJoz+vyLJmWvJ2ak130tzMkHbWQpKlktV+/LT9tLqaKMyxfXRUuHxvpFKvLe5pf0RHZJF06b9KM6eKM7+EolbSLWL+2WNR3ltdW3y1qdkF+Ba7/MX/SzLyIMy0tXXht3Tuh7k4XT4jPxwfv1cio+WNexDs77mBb4SExcOgli5OadgNc9CS8jc8+ffr21gimi3Mt3uqpFPtbz+Dc1ibE54VWn99XJfNUp26knQtTxVm6yHMwJM2NTDyt+pvpu+DdU4vUlUV0E+RgQwkvdeVW1J2+jKDiHx0eh2nioZVeoElrSc0lGpa21psihtvbFKrzoamO5FPoZtSfuUK9v7rZ+3GYIt7ZGb7SLM37m6Wv/tYlo7SpTgw2KwpD2Z5vAjc9Z+uvwO/3y0j1KBfv7OqDp6BC9OnTpV3TpGc+yTzPs2yYPLW7jQ0/0uBjjrxS8e6euyjYzNI5U3uasvh/SevsL68Xj734jC6/vBBfNP6EcRPklYnf7O3H5txykbHjKHNrAi44s0uphneLmNlzlnbiw7JweU58SYkeTZ6mPpUoEe/tvUezs1d8US5XvNr8zr1369UeETNXotZ/Pi73nhGPPffx0+UbG37A6Oi4iFGBYfGx0Ql4tuyn/ekQwvqLe+9rrU8mPZMyb50odbo8/6iRmlSE7y+3yQjjGBbnzLx3d60sS07EUILicbPtmlaynhVe+RTK9vzYx9IN2Pj6Tvze1ivPGkfZHucvmphQQHvaS1/wljxqjLLSOiRRgmPpnu5+eVQNysSD1HA0X2pRPmWdPPEN/ro3KP9ThzLx/xu2uNWwxa2GLW41bHGrYYtbDVvcatjiVsMWtxoWFQf+BSskjGW/03T8AAAAAElFTkSuQmCC) !important;
}

.payment_aside_check {
  /*padding-left:10px;*/
  padding-right: 10px;
}

.payment_aside_popup h2 {
  display: block;
  margin: 0px 0px 0px 0px;
  padding: 0px;
  font-size: 0.863rem;
}

.payment_aside_popup h2 span {
  display: inline-block;
  /*background-color: var(--c-primary);*/
  color: var(--c-txt);
  padding: 5px 12px 5px 12px;
}

.reservation_stick {
  position: -webkit-sticky;
  position: sticky !important;
  top: 0px !important;
  align-self: flex-start;
}

.remark_1 {
  width: 15%;
}

@media screen and (max-width: 650px) {
  .remark_1 {
    width: 100%;
  }
}

.remark_2 {
  width: 75%;
  word-break: break-all;
}

@media screen and (max-width: 650px) {
  .remark_2 {
    width: 100%;
  }
}

.remark_3 {
  width: 25%;
  text-align: end;
}

@media screen and (max-width: 650px) {
  .remark_3 {
    width: 100%;
  }
}

.form__selectBox_remark {
  width: 25% !important;
  box-shadow: 0px 2px 7px RGB(0 0 0/25%);
}

@media screen and (max-width: 650px) {
  .form__selectBox_remark {
    width: 100%;
  }
}

.form__textarea {
  box-shadow: 0px 2px 7px RGB(0 0 0/25%);
}

@media screen and (max-width: 650px) {
  .form__textarea {
    width: 100%;
  }
}

.alert-success {
  background-color: green;
  color: white;
}

.alert-danger {
  background-color: red;
  color: white;
}

.alert_information_email {
  margin-bottom: 15px;
  font-size: 0.812rem;
  padding: 10px 10px;
  margin-left: -30px;
  margin-right: -30px;
}

.outstanding_wrap {
  background-color: var(--c-alert-error-background);
  color: var(--c-alert-error-txt);
  margin-bottom: 10px;
  padding: 40px 40px 40px 40px;
  font-weight: bold;
}

.outstanding_aside_row {
  display: flex;
  font-size: 0.980rem;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5px;
}

.outstanding_aside_item {
  text-align: left;
  flex: 1;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0%;
}

.outstanding_aside_price {
  text-align: right;
  width: 70px;
}

.payment_method_options {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

select {
  color: var(--c-txt);
  width: calc(100%) !important;
  /*margin-left: -10px!important;*/
}

select option {
  background-color: var(--c-background);
  color: var(--c-txt);
}

a:link {
  color: var(--c-link);
}

/* visited link */
a:visited {
  color: var(--c-link);
}

/* mouse over link */
a:hover {
  color: var(--c-link-hover);
}

/* selected link */
a:active {
  color: var(--c-link);
}

.contact_info {
  background-color: var(--c-background-pax) !important;
}

.stepper {
  background-color: var(--c-background) !important;
}

.date_choose_date.active {
  color: var(--c-link-hover) !important;
}

.travel_itinerary_wrap {
  background-color: var(--c-background-pax) !important;
}

.travel_itinerary_passenger {
  background-color: var(--c-background-pax) !important;
}

.payment_method_wrap {
  background-color: var(--c-background-pax) !important;
}

.payment_aside {
  border-top: solid 3px var(--c-primary);
  border-radius: 20px;
  background-color: var(--c-primary) !important;
  color: var(--c-txt-custom) !important;
}

.payment_aside h2 span {
  color: var(--c-txt) !important;
  background-color: var(--c-secondary) !important;
}

.booking_reference h1 {
  color: var(--c-txt) !important;
}

.search_filters_iinvert {
  color: var(--c-txt-custom) !important;
}

table th {
  color: var(--c-txt-custom) !important;
}

.fill-option {
  fill: var(--c-txt);
}

.jconfirm .jconfirm-box {
  background: var(--c-background) !important;
}

input {
  color-scheme: var(--c-color-scheme);
}

.modal {
  background-color: var(--c-background-pax) !important;
}

.search_ticket_details {
  background-color: var(--c-background-pax);
  color: var(--c-color);
  display: flex;
  flex-direction: row;
}

.search_ticket_item {
  display: flex;
  margin: 5px 10px 5px 10px;
}

.search_ticket_item_1 {
  background-color: var(--c-primary);
  color: var(--c-txt-custom);
  width: 150px;
  padding: 10px 10px 10px 10px;
}

.search_ticket_item_2 {
  background-color: var(--c-secondary);
  color: var(--c-txt-custom);
  width: 150px;
  padding: 10px 10px 10px 10px;
}

.search_status_ticketing {
  font-weight: bold;
  font-size: 1.3em;
  letter-spacing: 0.1em;
}

.booking_reference h3 {
  color: var(--c-txt) !important;
}

input.form__passToggle {
  padding-right: 12px !important;
}

Progress bar css
.progress-bar {
  background-color: var(--c-primary) !important;
  color: var(--c-txt-custom);
  width: 100% !important;
}

.upload_progress {
  background-color: var(--c-secondary) !important;
  color: var(--c-txt-custom);
  width: 100% !important;
}

.file_status_upload {
  color: var(--c-txt);
  text-align: center;
}

.ui-widget {
  font-family: var(--f-main) !important;
  /* font-size: 1.1em; */
}

.ui-widget-content {
  color: var(--c-txt-custom) !important;
}

/*
.ui-widget-header {
     color: Blue;
     background: url(./images/lime-1x100.png) #cccccc repeat-x 50% 50%;
  }
  */
button[type="submit"] {
  color: var(--c-txt);
}

.ssr-text {
  color: var(--c-txt-custom) !important;
  font-size: 1.4em;
}

.list-ssrs {
  color: white;
}

.payment_aside_ssr_item {
  color: var(--c-txt) !important;
  font-size: 1.4em !important;
}

.option_item {
  background-color: var(--c-secondary) !important;
  color: var(--c-txt-custom) !important;
}

.option_item label {
  color: var(--c-txt-custom) !important;
}

.date_choose_date.active {
  color: black !important;
}

.version {
  position: absolute;
  bottom: 10px;
  right: 10px;
  color: white;
  font-size: 0.7em;
}

.date_choose {
  background-color: var(--c-primary) !important;
}

#faredetails-ow {
  border-bottom: 1px solid var(--c-txt-invert) !important;
}

#faredetails_ow {
  color: var(--c-txt-custom) !important;
}

#faredetails_rt {
  color: var(--c-txt-custom) !important;
}

.travel_itinerary_passenger label {
  color: var(--c-txt) !important;
}

.refund {
  background-color: var(--c-primary) !important;
}

.refund_grid_flight {
  background-color: var(--c-secondary) !important;
}

.payment_aside_download button {
  /*background-color:var(--c-txt)!important;
    color:var(--c-txt-custom)!important;*/
}

.reservation h2 {
  color: var(--c-txt-custom) !important;
}

.reservation {
  color: var(--c-txt-custom) !important;
}

.reservation_payment_numbers span::before {
  background-color: var(--c-txt-custom) !important;
}

.business_box {
  /*color:var(--c-txt-custom)!important;*/
  margin-top: -10px !important;
}

.economy_box {
  /*color: var(--c-txt-custom) !important;*/
  margin-top: -10px !important;
}

.grid_wrap {
  justify-content: center;
}

.stepper {
  /*padding: 8px 90px 4px 90px!important;*/
}

.general__error {
  width: 50% !important;
  margin: auto;
  padding: 50px !important;
  margin-top: 150px !important;
  text-align: center;
}

.flight-title h2 {
  margin-bottom: 0px;
  margin-top: 30px;
  font-size: 1.5625rem;
  line-height: normal;
  color: var(--c-txt);
}

.payment_method_wrap_h1 {
  padding-top: 0px !important;
}

JPO_reservation_padding {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.reservation_dates_class {
  padding: 20px 5px 20px 5px !important;
}

.reservation_dates_info {
  margin-right: 20px !important;
}

/*.stepper ul > li > span {
    width: 65px!important;
    height: 65px!important;
    margin-bottom:3px!important;
}*/
.stepper ul > li > span > svg {
  width: 25px !important;
  height: 25px !important;
}

.grid_item-1-4 {
  width: calc(33.333% - 50px) !important;
  margin-right: 100px !important;
}

.mkb_s_holder {
  margin-right: 15px !important;
}

.reservation_traveler h3 {
  font-size: 1.04rem !important;
}

.reservation_traveler {
  font-size: 12px;
}

.flight-outbound {
  display: flex;
  flex-direction: column;
}

.nextdates-ow {
  float: right;
  /* text-align: center; */
  display: flex;
  align-content: center;
  align-items: center;
  vertical-align: middle;
}

.prevdates-ow {
  text-align: left;
  display: flex;
  align-content: center;
  align-items: center;
  vertical-align: middle;
}

.nextdates-rt {
  float: right;
  /* text-align: center; */
  display: flex;
  align-content: center;
  align-items: center;
  vertical-align: middle;
}

.prevdates-rt {
  text-align: left;
  display: flex;
  align-content: center;
  align-items: center;
  vertical-align: middle;
}

.week-links {
  display: flex;
  justify-content: space-between;
  font-size: small;
  /*box-shadow: 0px 2px 7px RGBA(0 0 0 / 25%);
    border-radius: 10px;*/
}

.item {
  text-align: center;
  /*box-shadow: 0px 2px 7px RGBA(0 0 0 / 25%);*/
  border-radius: 10px;
  background: var(--c-background-white);
}

h2, h3, h4, h5, h6 {
  font-family: var(--f-header) !important;
  white-space: nowrap;
}

.fareinbox {
  display: flex;
  flex-direction: column;
  font-size: 1.8rem;
  padding: 0px 0px 10px 0px;
}

@media screen and (max-width: 1440px) {
  .fareinbox {
    padding: 15px 0px 0px 0px;
  }
}

fareinbox {
  color: var(--c-primary) !important;
}

calendardates {
  color: var(--c-txt);
  font-weight: 500;
}

calendardates h4 {
  padding: 15px 0px 0px 0px;
  text-align: center;
  font-weight: 500;
}

@media screen and (max-width: 1440px) {
  calendardates h4 {
    padding: 15px 0px 0px 0px;
    text-align: center;
    font-size: 0.8rem;
  }
}

.item-unavailable h4 {
  padding: 15px 0px 0px 0px;
  text-align: center;
  font-weight: 500;
}

@media screen and (max-width: 1440px) {
  .item-unavailable h4 {
    padding: 15px 0px 0px 0px;
    text-align: center;
  }
}

fareunavailable {
  padding: 0px 0px 10px 0px;
  position: relative;
  top: 15px;
}

@media screen and (max-width: 1440px) {
  fareunavailable {
    padding: 15px 0px 0px 0px;
  }
}

.owl-stage {
  height: 165px;
  margin-bottom: 20px;
}

.owl-item.active {
  cursor: pointer;
}

.item-unavailable {
  text-align: center;
  box-shadow: 0px 2px 7px RGBA(0 0 0/25%);
  border-radius: 10px;
  height: 142px;
}

.alert-webcheckin {
  background-color: var(--c-primary);
  color: var(--c-button-txt);
  box-shadow: 0px 2px 7px RGBA(0 0 0/25%);
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  margin-top: 10px;
  margin-bottom: 5px;
  font-weight: 500 !important;
}

.alert {
  box-shadow: 0px 2px 7px RGBA(0 0 0/25%);
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  margin-top: 10px;
  margin-bottom: 5px;
  border-radius: 10px;
}

.alert-danger {
  background-color: #c8111f;
  color: white;
}

nested {
  font-size: 0.7rem;
  font-weight: 500;
  color: var(--c-primary);
  /*text-transform:uppercase;*/
  position: relative;
  top: -10px;
  /*padding-left: 20px;*/
}

@media screen and (max-width: 1440px) {
  nested {
    bottom: -40px;
    padding-left: 0px;
  }
}

.accordiondiv {
  text-align: right;
  margin-right: 20px;
  margin-bottom: -4px;
}

@media screen and (max-width: 768px) {
  .accordiondiv {
    margin-bottom: 0px;
    position: relative;
    top: 20px;
  }
}

.accordion {
  background-color: var(--c-primary);
  color: var(--c-txt-custom);
  cursor: pointer;
  padding-left: 18px;
  padding-right: 18px;
  padding-top: 1px;
  padding-bottom: 1px;
  width: 50%;
  text-align: left;
  /*box-shadow: 0px 2px 7px RGBA(0 0 0 / 25%);
    border-radius: 10px;*/
  transition: 0.4s;
  margin-top: 0px;
  border: 0;
  outline: 0;
  font-size: 14px;
  height: 40px;
  border-radius: 10px 10px 0px 0px;
}

button.accordion:after {
  content: '\002B';
  color: #fff;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

button.accordion.active:after {
  content: "\2212";
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.accordion:hover {
  background-color: var(--c-secondary);
  color: var(--c-txt);
}

.accordion_wc_ow {
  background-color: var(--c-txt-custom);
  color: var(--c-primary);
  cursor: pointer;
  padding-left: 18px;
  padding-right: 18px;
  padding-top: 1px;
  padding-bottom: 1px;
  width: 100%;
  text-align: left;
  /*box-shadow: 0px 2px 7px RGBA(0 0 0 / 25%);
    border-radius: 10px;*/
  transition: 0.4s;
  margin-top: 0px;
  border: 0;
  outline: 0;
  font-size: 16px;
  height: 40px;
}

button.accordion_wc_ow:after {
  content: '\002B';
  color: var(--c-primary);
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

button.accordion_wc_ow.active:after {
  content: "\2212";
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.accordion_wc_ow:hover {
  background-color: var(--c-primary);
  color: var(--c-txt-custom);
}

.accordion_wc_rt {
  background-color: var(--c-txt-custom);
  color: var(--c-primary);
  cursor: pointer;
  padding-left: 18px;
  padding-right: 18px;
  padding-top: 1px;
  padding-bottom: 1px;
  width: 100%;
  text-align: left;
  /*box-shadow: 0px 2px 7px RGBA(0 0 0 / 25%);
    border-radius: 10px;*/
  transition: 0.4s;
  margin-top: 0px;
  border: 0;
  outline: 0;
  font-size: 16px;
  height: 40px;
}

button.accordion_wc_rt:after {
  content: '\002B';
  color: var(--c-primary);
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

button.accordion_wc_rt.active:after {
  content: "\2212";
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.accordion_wc_rt:hover {
  background-color: var(--c-primary);
  color: var(--c-txt-custom);
}

/* Style the accordion panel. Note: hidden by default */
.panel {
  /*margin-top:10px;*/
  padding: 20px 18px;
  background-color: white;
  display: flex;
  transition: max-height 0.2s ease-out;
  column-gap: 20px;
}

.card {
  /* Add shadows to create the "card" effect */
  border-radius: 10px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  transition: 0.3s;
  width: 33.33%;
  text-align: left;
}

/* On mouse-over, add a deeper shadow */
.card:hover {
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}

/* Add some padding inside the card container */
.container {
  /*padding: 2px 16px;*/
}

.titlecard {
  /*border-radius: 10px 10px 0px 0px;*/
  width: auto;
  background-color: var(--c-primary);
  text-align: left;
  padding: 20px 10px;
  font-size: 1.5rem;
  color: var(--c-txt-custom);
}

.cardtext {
  font-size: 0.85rem;
  margin-left: 5px;
}

.listcardtext {
  padding-bottom: 15px;
  display: flex;
  align-items: center;
}

.divicon {
  width: 24px;
}

.divtext {
  margin-left: 10px;
  width: 90%;
}

.familydesc {
  padding: 20px;
  height: 200px;
  font-size: 0.95rem;
  line-height: 22px;
}

.cardbackground {
  background: var(--c-background);
  height: 430px;
  padding: 2px 16px;
}

ul.no-bullets {
  list-style-type: none;
  margin-top: 20px;
  padding: 0px;
}

li.familyfarefont {
  margin-bottom: 20px;
  font-stretch: expanded;
  text-align: justify;
}

#box {
  margin-top: 0px;
}

#boxRT {
  margin-top: 0px;
}

.flightcard {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  /*border: 1px solid rgba(0,0,0,.125);*/
  margin-bottom: 10px;
  /*border-radius: 0.625rem;*/
}

.flightrow {
  display: flex;
  flex-wrap: wrap;
  padding: 5px;
  border: solid 3px white;
  border-radius: 20px;
  align-items: center;
}

.flightrow:hover {
  border: solid 3px var(--c-txt);
}

.flightrow_selected {
  border: solid 3px var(--c-txt);
}

.flightdetails {
  /*font-weight: 600;*/
  font-size: 0.9rem !important;
  justify-content: center !important;
  flex-direction: column !important;
  display: flex !important;
  flex: 1 0 0%;
  padding-left: 10px;
}

.flightinfo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0px auto;
  width: 90%;
}

.duration {
  font-size: 0.812rem;
  color: gray;
}

.fs009 {
  font-size: 0.9rem !important;
}

.widthDep {
  width: 38px;
  white-space: nowrap;
}

@media screen and (max-width: 650px) {
  .widthDep {
    width: 128px;
  }
}

.width100 {
  width: 100px;
}

@media screen and (max-width: 650px) {
  .width100 {
    width: auto;
  }
}

.subinfo {
  font-size: .875rem !important;
  justify-content: space-between !important;
  flex-direction: column !important;
  display: flex !important;
}

.allinfotxt {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.stop {
  position: relative;
  top: 30px;
  margin-top: -24px;
  margin-bottom: 5px;
  font-size: 0.8rem !important;
  text-align: center;
  margin-right: 50px;
  margin-bottom: 20px;
}

stopinfo {
  font-size: 0.9rem !important;
}

.spacetime {
  width: 30%;
}

.farescontainer {
  flex: 0 0 auto;
  width: 50%;
}

.faresrow {
  display: flex;
  /*flex-wrap: wrap;*/
  column-gap: 30px;
}

.farecol {
  flex: 1 0 0%;
  width: 100%;
  max-width: 100%;
  height: 95px;
}

.farecard {
  border-radius: 10px;
  /*box-shadow: 0 4px 8px 0 RGBA(0 0 0 / 20%);*/
  transition: 0.3s;
  width: 100%;
  border: 1px solid #e2e2e2;
  padding: 1rem;
  height: 100% !important;
  cursor: pointer;
  /*display:flex;*/
}

.farecard:hover {
  /*filter:opacity(75%);*/
}

.group1 {
  background-color: #FFFFFF;
  color: var(--c-txt);
}

.group2 {
  background-color: #FFFFFF;
  color: var(--c-txt);
}

.group2:hover {
  background-color: var(--c-secondary);
  color: var(--c-txt) !important;
}

.activeFare {
  color: white !important;
}

.activeFare .group3_text {
  color: white !important;
}

.activeFare .group2_text {
  color: white !important;
}

.activeFare .group1_text {
  color: white !important;
}

.activeFare .price {
  color: white !important;
}

.group3 {
  background-color: #FFFFFF;
  color: var(--c-txt);
}

.group3:hover {
  background-color: var(--c-secondary);
  color: var(--c-txt) !important;
}

.group1:hover {
  background-color: var(--c-secondary);
  color: var(--c-txt) !important;
}

.group1_text {
  color: var(--c-txt);
}

.group2_text {
  color: var(--c-txt);
}

.group3_text {
  color: var(--c-txt);
}

.faretype {
  /*color: var(--c-txt-custom);*/
  font-size: 1rem !important;
  text-align: center;
  /*font-family: fantasy;*/
}

.price {
  /*color: var(--c-txt-custom);*/
  font-size: 1.8rem;
  font-weight: 600;
  white-space: nowrap;
  margin-top: 0px;
  color: var(--c-txt);
}

.noprice {
  font-size: 0.7rem;
  color: #287099;
  margin-top: 10px;
}

@media only screen and (min-width: 1440px) {
  .noprice {
    font-size: 0.85rem;
  }
}

@media (max-width: 320px) {
  .price {
    /*color: var(--c-txt-custom);*/
    font-size: 1rem;
    font-weight: 600;
    white-space: nowrap;
    margin-top: 0px;
  }
  .noprice {
    margin-top: 7px;
  }
}

@media only screen and (max-width: 550px) {
  .price {
    /*color: var(--c-txt-custom);*/
    font-size: 1.5rem;
    font-weight: 600;
    white-space: nowrap;
    margin-top: 0px;
  }
  .noprice {
    margin-top: 7px;
  }
  .timeflight {
    font-size: 1.9rem !important;
  }
  .stop {
    top: 30px !important;
    margin-right: 24px;
  }
  .stoptransit {
    top: 0px !important;
    margin-right: 24px;
  }
  .flightinfoitem {
    white-space: nowrap;
  }
  .faretype {
    /* color: var(--c-txt-custom); */
    font-size: 1rem !important;
    /* font-family: fantasy; */
  }
  .flightdetails {
    padding-left: 0px;
  }
}

@media only screen and (min-width: 550px) and (max-width: 992px) {
  .price {
    /*color: var(--c-txt-custom);*/
    font-size: 1.3rem;
    font-weight: 600;
    white-space: nowrap;
    margin-top: 10px;
  }
  .noprice {
    margin-top: 7px;
  }
  .timeflight {
    font-size: 1.8rem !important;
  }
  .stop {
    top: 30px !important;
    margin-right: 24px;
  }
  .stoptransit {
    top: 0px !important;
    margin-right: 24px;
  }
  .faresrow {
    column-gap: 0px;
  }
  .flightdetails {
    padding-left: 0px;
    font-size: 0.8rem !important;
  }
  .farescontainer {
    flex: 0 0 auto;
    width: 54%;
  }
  .faretype {
    /* color: var(--c-txt-custom); */
    font-size: 1rem !important;
    /* font-family: fantasy; */
  }
}

fw600 {
  font-weight: 600 !important;
}

fw400 {
  font-weight: 400 !important;
}

.flightinfoitem {
  width: 30%;
}

.flightinfoicon {
  width: 20%;
  position: relative;
  top: 6px;
}

.timeflight {
  font-size: 1.9rem;
  font-weight: 600;
  margin-top: 10px;
  margin-bottom: 6px;
}

.transitflights {
  font-size: 1.125rem !important;
  justify-content: center !important;
  flex-direction: column !important;
  display: flex !important;
  flex: 1 0 0%;
}

.transitflightinfo {
  /*margin-top: 40px;*/
  padding-bottom: 25px;
}

.stoptransit {
  top: 6px;
}

/*
.linetime {
    content: "";
    position: absolute;
    width: calc(10% - 40px);
    left: 130px;
    height: 1px;
    z-index: 0;
    background-color: #ccc;
    top: 92px;
}
*/
/*
.itemflight_arr::before {
    content: "";
    position: absolute;
    width: calc(11%);
    left: 290px;
    height: 1px;
    z-index: 0;
    background-color: #ccc;
    top: 89px;
}
.itemflight_dep::after {
    content: "";
    position: absolute;
    width: calc(11%);
    left: 116px;
    height: 1px;
    z-index: 0;
    background-color: #ccc;
    top: 89px;
}

@media (max-width: 320px) {
    .itemflight_arr::before {
        height:0px;
    }

    .itemflight_dep::after {
        width: calc(36%);
        left: 116px;
        top: 59px;
    }
}
@media (min-width: 375px) {
    .itemflight_arr::before {
        height:0px;
    }

    .itemflight_dep::after {
        width: calc(42%);
        left: 116px;
        top: 59px;
    }
}
@media (min-width: 480px) {
    .itemflight_arr::before {
        height:0px;
    }

    .itemflight_dep::after {
        width: calc(46%);
        left: 116px;
        top: 59px;
    }
}

@media (min-width: 600px) {
    .itemflight_arr::before {
        height:0px;
    }

    .itemflight_dep::after {
        height:0px;
    }
}

@media (min-width: 768px) {
    .itemflight_arr::before {
        width: calc(6%);
        left: 191px;
        top: 147px;
    }

    .itemflight_dep::after {
        width: calc(4%);
        left: 116px;
        top: 147px;
    }
    
}

@media (min-width: 992px) {
    .itemflight_arr::before {
        width: calc(8%);
        left: 205px;
        top: 148px;
    }

    .itemflight_dep::after {
        width: calc(6%);
        left: 116px;
        top: 148px;
    }
}
*/
/* Pour les petits écrans de bureau et grandes tablettes 
@media (max-width: 1200px) {
    .itemflight_arr::before {
        width: calc(6%);
        left: 191px;
        top: 147px;
    }

    .itemflight_dep::after {
        width: calc(4%);
        left: 116px;
        top: 147px;
    }
}*/
/* Pour les écrans de bureau de taille moyenne */
@media (min-width: 1200px) {
  .itemflight_arr::before {
    width: calc(8%);
    left: 245px;
    top: 88px;
    height: 1px;
  }
  .itemflight_dep::after {
    width: calc(8%);
    left: 116px;
    top: 88px;
    height: 1px;
  }
}

/* Pour les grands écrans de bureau */
@media (min-width: 1600px) {
  .itemflight_arr::before {
    width: calc(11%);
    left: 290px;
    top: 89px;
    height: 1px;
  }
  .itemflight_dep::after {
    width: calc(11%);
    left: 116px;
    top: 89px;
    height: 1px;
  }
}

/* Vous pouvez ajouter d'autres media queries pour différentes tailles d'écran si nécessaire */
@media (max-width: 400px) {
  .iconflight::after {
    width: calc(100% - 20px);
    /* Adapter encore plus pour les très petits écrans */
    left: 10px;
    /* Ajuster la position gauche */
    top: 40px;
    /* Ajuster la position verticale */
  }
}

.iconduration {
  font-size: 0.8rem;
  position: relative;
  top: 0px;
  left: -5px;
}

.flightdate {
  color: var(--c-txt);
  margin: 0px auto;
  width: 90%;
  font-size: 1.1rem;
  font-weight: 700;
}

.clickedow {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.clickedow calendardates {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
  font-weight: 500;
}

.clickedow nested {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.clickedow fareinbox {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.clickedrt {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.clickedrt calendardates {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
  font-weight: 500;
}

.clickedrt nested {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.clickedrt fareinbox {
  background: var(--c-secondary) !important;
  color: var(--c-txt-white) !important;
}

.b_faresrow {
  background-color: blueviolet;
  padding: 10px 10px 10px 10px;
  border-radius: 10px 10px 10px 10px;
}

.e_faresrow {
  padding: 10px 10px 10px 10px;
  border-radius: 10px 10px 10px 10px;
}

.idcheck {
  float: right;
  text-align: right;
  width: 100%;
  padding-top: 5px;
}

.middlecard {
  margin-left: 10px;
  margin-right: 10px;
}

.noavailability {
  background-color: #DEDEEF;
  cursor: not-allowed;
  color: #287099;
}

.noavailability:hover {
  filter: opacity(100%) !important;
}

.fs14 {
  font-size: 14px;
}

#res_flightnumber_ow {
  margin-top: 5px;
}

#res_flightnumber_rt {
  margin-top: 5px;
}

.timeoutmodal {
  display: none;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: auto;
  background-color: black;
  background-color: rgba(0, 0, 0, 0.4);
}

.timeoutmodal-content {
  background-color: #fefefe;
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  font-size: 25px;
  text-align: center;
}

.timeoutclose {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  top: -20px;
  position: relative;
  cursor: pointer;
}

input[type="checkbox"]:checked + label {
  color: var(--c-txt) !important;
}

.payimg {
  width: 70%;
}

.webcheckin_container {
  margin: auto;
  width: 70%;
  margin-top: 20px;
}

.travel_itinerary_wrap_pax_checkin {
  /*border-radius: 10px;*/
  /*box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);*/
  border-top: 2px solid var(--c-background);
  border-bottom: 2px solid var(--c-background);
}

.travel_itinerary_passenger_checkin {
  padding: 15px 62px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding-right: 10px;
  margin-bottom: 10px;
  font-size: 0.8rem;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary_passenger_checkin {
    padding: 15px 40px;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary_passenger_checkin {
    padding: 15px 40px;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary_passenger_checkin {
    padding: 5px 18px;
  }
}

.font_25 {
  font-size: 25px !important;
}

@media screen and (max-width: 1345px) {
  .font_25 {
    font-size: 25px !important;
  }
}

@media screen and (max-width: 1140px) {
  .font_25 {
    font-size: 25px !important;
  }
}

@media screen and (max-width: 650px) {
  .font_25 {
    font-size: 19px !important;
  }
}

.travel_itinerary_passenger_checkin label {
  color: var(--c-txt) !important;
  display: contents !important;
  font-size: 0.952rem !important;
}

.travel_itinerary_passenger_checkin .p_pax {
  margin-left: 10px;
  width: 30%;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary_passenger_checkin .p_pax {
    width: 30%;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary_passenger_checkin .p_pax {
    width: 30%;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary_passenger_checkin .p_pax {
    width: 80%;
  }
}

.travel_itinerary_passenger_checkin .p_status {
  width: 30%;
  text-align: end;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary_passenger_checkin .p_status {
    width: 30%;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary_passenger_checkin .p_status {
    width: 30%;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary_passenger_checkin .p_status {
    width: 100%;
    text-align: right;
  }
}

.travel_itinerary_passenger_checkin .p_ticket {
  width: 30%;
  text-align: right;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary_passenger_checkin .p_ticket {
    width: 30%;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary_passenger_checkin .p_ticket {
    width: 30%;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary_passenger_checkin .p_ticket {
    width: 100%;
  }
}

.SMpanel {
  padding: 0 18px;
  background-color: white;
  display: none;
  overflow: hidden;
}

.unable_to_assign {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 20px;
  padding: 20px;
}

@media only screen and (max-width: 768px) {
  .grid_item-1-4 {
    width: 98% !important;
    margin-right: 0px !important;
  }
}

@media screen and (max-width: 650px) {
  .stepper {
    padding: 20px 20px 15px 20px !important;
  }
}

@media screen and (max-width: 768px) {
  .stepper {
    padding: 20px 60px 15px 40px !important;
  }
  .payimg {
    width: 100%;
  }
}

@media screen and (max-width: 990px) {
  .stepper {
    padding: 20px 5px 15px 5px !important;
  }
}

@media only screen and (min-width: 768px) {
  .grid_item-flex {
    width: 70% !important;
  }
  .mkb_reservationHolder {
    width: 30% !important;
  }
}

@media only screen and (min-width: 1024px) {
  .grid_item-flex {
    width: 75% !important;
  }
  .mkb_reservationHolder {
    width: 25% !important;
  }
}

@media only screen and (max-width: 550px) {
  .general__error {
    width: 80% !important;
  }
  .farescontainer {
    display: flex;
    width: 100%;
    justify-content: center;
    margin-top: 15px;
  }
  .b_faresrow {
    background-color: blueviolet;
    padding: 10px 28px 10px 10px;
    border-radius: 10px 10px 10px 10px;
  }
  .faresrow {
    display: flex;
    /* flex-wrap: wrap; */
    /*flex-direction: column;*/
    width: 100%;
    column-gap: 2px;
  }
  .panel {
    flex-direction: column;
  }
  .card {
    width: 100%;
  }
  .middlecard {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .webcheckin_container {
    margin: auto;
    width: 90%;
  }
}

/*Boarding Pass CSS*/
.boarding_plane {
  fill: var(--c-button);
}

.boarding_buttons {
  display: list-item;
  text-align: center;
  list-style-type: none;
  margin-top: 20px;
}

.ticket {
  display: inline-block;
  width: 350px;
  margin: 2px;
  background-color: #273138;
  border-radius: 10px;
  color: #fff;
  font-family: var(--f-main);
  font-weight: 300;
  letter-spacing: 1px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.ticket header {
  position: relative;
  height: 55px;
  background-color: #1B252E;
  padding: 10px;
  border-radius: 10px;
}

.ticket header .company-name {
  /*line-height: 35px;*/
  text-align: left;
}

.ticket header .flight-number {
  position: absolute;
  right: 15px;
  top: 10px;
  font-weight: 400;
  line-height: 18px;
  text-align: center;
  font-size: 12px;
}

.ticket header .date-of-flight {
  position: absolute;
  right: 120px;
  top: 10px;
  font-weight: 400;
  line-height: 18px;
  text-align: center;
  font-size: 12px;
}

.ticket header:after {
  content: '';
  width: 16px;
  height: 16px;
  background-color: #fff;
  position: absolute;
  bottom: -8px;
  right: -8px;
  border-radius: 50%;
  box-shadow: inset 12px 0px 18px -11px rgba(0, 0, 0, 0.5);
}

.ticket header:before {
  content: '';
  width: 16px;
  height: 16px;
  background-color: #fff;
  position: absolute;
  bottom: -8px;
  left: -8px;
  border-radius: 50%;
  box-shadow: inset -12px 0px 18px -11px rgba(0, 0, 0, 0.5);
}

.ticket .airports {
  width: 100%;
  display: flex;
  padding: 5px 10px 10px 10px;
  height: 125px;
  text-align: center;
  position: relative;
  border-bottom: 2px dashed #000;
}

.ticket .airports .airport {
  width: 30%;
  position: relative;
  margin: 10px;
  text-align: center;
  display: inline-block;
}

.ticket .airports .airport .airport-name {
  color: var(--c-txt);
  font-size: 12px;
  font-weight: 400;
}

.ticket .airports .airport .airport-code {
  font-size: 32px;
  font-weight: 400;
  margin: 5px 0;
}

.ticket .airports .airport .dep-arr-label {
  color: #FFFFFF;
  /*#9299A0;*/
  font-size: 12px;
  font-weight: 500;
}

.ticket .airportsvg {
  color: #FFFFFF;
  /*#9299A0;*/
}

.ticket.inverse .airportsvg {
  color: var(--c-txt);
  /*#9299A0;*/
}

.ticket.inverse .airports .airport .dep-arr-label {
  color: var(--c-txt);
  /*#9299A0;*/
  font-size: 12px;
  font-weight: 500;
}

.ticket .airports .airport .time {
  font-size: 10px;
  color: #FFFFFF;
}

.ticket.inverse .airports .airport .time {
  font-size: 10px;
  color: var(--c-txt);
}

.ticket .airports .airport:first-child {
  /* margin-right: 40%;*/
}

/*.ticket .airports .airport:first-child:after {
  font-family: FontAwesome;
  color: #353E48;
  content: "\f072";
  position: absolute;
  font-size: 55px;
  top: calc(50% - 25px);
  right: -140%;
}*/
.ticket .airports:after {
  content: '';
  width: 16px;
  height: 16px;
  background-color: #fff;
  position: absolute;
  bottom: -8px;
  right: -8px;
  border-radius: 50%;
  box-shadow: inset 12px 0px 18px -11px rgba(0, 0, 0, 0.5);
}

.ticket .airports:before {
  content: '';
  width: 16px;
  height: 16px;
  background-color: #fff;
  position: absolute;
  bottom: -8px;
  left: -8px;
  border-radius: 50%;
  box-shadow: inset -12px 0px 18px -11px rgba(0, 0, 0, 0.5);
}

.ticket .place {
  padding: 10px;
  text-align: center;
  height: 330px;
}

.ticket .place-block {
  display: inline-block;
  margin: 0px 10px;
}

.ticket .place-block .place-label {
  color: var(--c-txt);
  text-transform: uppercase;
  font-weight: 400;
  font-size: 12px;
  margin-bottom: 10px;
}

.ticket .place-block .place-value {
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 500;
}

.boarding_plane.inverse {
  fill: white;
}

.ticket.inverse .place-block .place-value {
  color: var(--c-txt);
  font-size: 12px;
  font-weight: 500;
}

.ticket .place-footer {
  padding: 10px;
  text-align: center;
  height: 40px;
  width: 100%;
}

.ticket .place-block-footer {
  display: inline-block;
  margin: 2px 10px;
}

.ticket .place-block-footer .place-label {
  color: var(--c-txt);
  text-transform: uppercase;
  font-weight: 400;
  font-size: 8px;
  margin-bottom: 2px;
}

.ticket .place-block-footer .place-value {
  color: #FFFFFF;
  font-size: 8px;
  font-weight: 500;
}

.ticket.inverse .place-block-footer .place-value {
  color: var(--c-txt);
  font-size: 8px;
  font-weight: 500;
}

.ticket .qr {
  width: 250px;
  height: 250px;
  margin: 20px auto;
  border-radius: 10px;
  overflow: hidden;
}

.ticket .qr img {
  width: 100%;
  height: 100%;
}

.ticket.inverse {
  background-color: #F8F8F8;
}

.ticket.inverse header {
  background-color: var(--c-primary);
  color: var(--c-txt-custom);
}

.ticket.inverse .airports {
  border-bottom-color: #D3D6DA;
  color: white;
}

.ticket.inverse .airport:first-child:after {
  color: #D3D6DA;
}

.ticket.inverse .airport .airport-code {
  color: var(--c-txt);
  /*#707884;*/
  font-weight: 500;
}

.inverse {
  color: white !important;
}

.ssr_name {
  font-size: 1rem;
}

.service {
  /*border: 1px solid #ccc;*/
  padding: 10px;
  margin: 10px;
  text-align: center;
  width: 20%;
}

.serviceimg {
  max-width: 60%;
  height: auto;
}

.sp__service_itinerary_wrap {
  max-width: 100%;
  box-shadow: 0px 1.87126px 6.54943px rgba(0, 0, 0, 0.25);
  /*border-radius: 65.4942px;*/
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 30px 25px 30px 25px;
  position: relative;
  margin-top: 0px;
}

.sp__service_itinerary {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
  font-weight: 600;
}

.service_main_wrap {
  display: flex;
}

.quantity-selector {
  display: inline-flex;
  align-items: center;
  margin-top: 10px;
}

.quantity-input {
  height: 22px !important;
  width: 32px !important;
  text-align: center;
  -moz-appearance: textfield;
  appearance: textfield;
  margin-bottom: 0px !important;
  background-color: white;
}

.quantity-input::-webkit-inner-spin-button,
.quantity-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity-btn {
  cursor: pointer;
  font-size: 0.8em;
  margin: 0 5px;
  padding: 4px 8px 4px 8px !important;
  background-color: var(--c-background);
  color: var(--c-txt);
}

/* Style the buttons that are used to open and close the accordion panel */
.accordionssr {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  transition: 0.4s;
}

div.accordion-ssr:after {
  content: '\002B';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 10px;
}

div.accordion-ssr.open:after {
  content: '\2212';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 10px;
}

div.accordion-ssr-it:after {
  content: '\002B';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 0px;
}

div.accordion-ssr-it.open:after {
  content: '\2212';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 0px;
}

div.accordion-ssr-mmb:after {
  content: '\2212';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 0px;
}

div.accordion-ssr-mmb.open:after {
  content: '\002B';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
  margin-bottom: 0px;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
/* Style the accordion panel. Note: hidden by default */
.panelssr {
  /*padding: 0 18px;*/
  display: block;
  overflow: hidden;
  width: 100%;
  margin: auto;
}

.panelcb {
  padding: 0 18px;
  display: none;
  overflow: hidden;
  width: 100%;
  margin: auto;
}

.sp__passenger_ow_ssr {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  /* display: flex; */
  align-items: center;
  justify-content: space-between;
  width: 100%;
  /* max-width: 288px; */
  margin-top: 10px;
  cursor: pointer;
}

.sp__passanger_info_ssr {
  display: flex;
  align-items: flex-end;
  flex: 1;
  justify-content: inherit !important;
  align-items: center !important;
}

.sp__widget_ssr {
  display: flex;
  align-items: stretch;
  flex-direction: column-reverse;
}

.sp__widget_passenger_ssr {
  width: 100% !important;
  margin-right: 30px;
  order: 1;
}

.sp__passenger_selected_ow_ssr {
  border: 2px solid var(--c-primary);
  padding-left: 13px;
  padding-top: 8px;
}

.sp__passanger_info_ssr > div {
  width: 250px !important;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .sp__widget_passenger {
    position: sticky;
    top: 0px;
    position: -webkit-sticky;
  }
  .sp__widget_legend {
    position: sticky;
    top: 0px;
    position: -webkit-sticky;
  }
}

.rcd_display {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  align-content: flex-start;
  flex-direction: row;
  width: 45%;
}

.jconfirm .jconfirm-holder {
  max-height: 100%;
  padding: 50px 0;
  width: 50% !important;
  margin: auto !important;
}

@media only screen and (max-width: 769px) {
  .rcd_display {
    width: 100%;
  }
  .panelssr {
    width: 100%;
    /* Largeur à 100% pour les tablettes et les mobiles */
  }
  .sp__passenger_selected_ow_ssr {
    width: 100% !important;
    /* Largeur à 100% pour les tablettes et les mobiles */
  }
  .sp__service_itinerary_wrap {
    max-width: 100%;
  }
  .jconfirm .jconfirm-holder {
    width: 100% !important;
  }
}

.res_ssr {
  padding-top: 0px !important;
  margin-top: 2px !important;
  font-size: 13px !important;
  font-weight: normal !important;
  text-wrap: nowrap;
}

label.radio__shadow_ {
  color: var(--c-txt);
}

.quantity-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 75%;
  margin: 20px;
}

.quantity-number {
  font-size: 15px !important;
  width: 15px;
}

.quantity-buttons {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.quantity-button-minus {
  cursor: pointer;
  font-size: 25px;
  width: 15px;
  padding-bottom: 10px;
}

.quantity-button-plus {
  cursor: pointer;
  font-size: 20px;
  width: 15px;
  padding-bottom: 5px;
}

.ssr-services {
  margin-top: 15px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-content: center;
}

.list-ssrs {
  color: var(--c-txt);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media (max-width: 768px) {
  .list-ssrs {
    flex-direction: column;
  }
  .service {
    width: 100%;
  }
}

@media (max-width: 1024px) {
  .list-ssrs {
    flex-direction: column;
  }
  .service {
    width: 100%;
  }
}

.res_ssr_mb {
  padding-top: 0px !important;
  margin-top: 2px !important;
  font-size: 0.7575rem !important;
  font-weight: normal !important;
  text-wrap: nowrap;
}

div.sticky {
  position: -webkit-sticky !important;
  /* Safari */
  position: sticky !important;
  top: 0;
  background-color: var(--c-txt);
  border: 2px solid #4CAF50;
}

.button_pos {
  display: flex;
  align-content: center;
  align-items: center;
  flex-direction: column;
}

/*#box{
margin-top:0px!important;
}*/
.alert__error__general {
  font-size: 0.7575rem !important;
}

.outstanding_aside_row {
  font-size: 0.7575rem !important;
}

/*ALL PDF CSS BELOW*/
.booking_reference_pdf {
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  background-color: #fff;
  color: #287099;
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: space-between;
  /* wkhtmltopdf uses this one */
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
}

.booking_reference_pdf h1, .booking_reference_pdf span {
  color: var(--c-txt-invert);
  font-size: 1rem;
  display: block;
  font-weight: normal;
  margin-bottom: 0px;
}

.booking_reference_pdf h1 {
  margin-right: 20px;
}

/*  GRID */
.grid_wrap_pdf {
  display: -webkit-box;
}

.grid_item-flex_pdf {
  width: 100%;
}

.travel_itinerary_wrap_pdf {
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
}

.travel_itinerary_main_pdf {
  display: -webkit-box;
  flex-wrap: wrap;
  margin-right: 30px;
}

.travel_itinerary_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: left;
  /* wkhtmltopdf uses this one */
  padding: 30px;
}

.travel_itinerary_main_plane_pdf {
  color: white !important;
  fill: white !important;
  background-color: white;
  width: 80px;
  height: 80px;
  display: -webkit-box;
  -webkit-box-pack: center;
  padding: 15px;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 5px 10px rgba(180, 180, 180, 0.25);
  border-radius: 40px;
  margin-right: 30px;
}

.travel_itinerary_plane_pdf {
  fill: black;
  margin-top: 20px !important;
}

.travel_itinerary_passenger_pdf {
  padding: 15px 62px;
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: left;
  /* wkhtmltopdf uses this one */
  margin-bottom: 10px;
  width: 100%;
}

.cardtext_pdf {
  font-size: 0.7rem;
  margin-left: 5px;
}

.travel_rcd_pdf {
  font-size: 20px;
  font-weight: 700;
}

.travel_ticket_pdf {
  font-size: 9px;
}

.payment_aside_check_row_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
  font-size: 0.7575rem;
  /*justify-content: space-between;*/
  align-items: flex-start;
  margin-bottom: 5px;
  column-count: 3;
  width: 100%;
}

.payment_aside_check_total_pdf {
  padding-top: 10px;
  margin-top: 15px;
  border-top: 1px solid var(--c-txt);
  font-weight: bold;
  font-size: 0.85rem;
  text-align: left;
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
  width: 100%;
}

.payment_aside_check_country_pdf {
  margin-left: 10px;
  margin-right: 10px;
  text-align: center;
  width: 25%;
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: end;
  /* wkhtmltopdf uses this one */
  font-size: 0.7rem !important;
}

.payment_aside_check_price_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: end;
  /* wkhtmltopdf uses this one */
  text-align: right;
  width: 20%;
  font-size: 0.7rem !important;
}

.payment_aside_check_item_pdf {
  text-align: left;
  flex: 1;
  width: 40%;
  font-size: 0.7rem !important;
}

.payment_aside_check_total_price_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
  margin-left: 15px;
  width: 20%;
}

.payment_aside_total_pdf {
  display: -webkit-box;
  -webkit-box-pack: start;
  width: 100%;
}

.payment_aside_container_pdf {
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  margin-bottom: 20px;
  padding: 10px;
}

.payment_aside_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
}

payment_aside_check {
  font-size: 0.7rem !important;
}

.payment_aside_details_pdf {
  width: 55%;
}

.payment_aside_ssr_pdf {
  width: 45%;
}

.payment_aside_check_row_wide_pdf {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
  margin-left: 15px;
  width: 100%;
}

.payment_aside_check_wide_item_pdf {
  width: 25%;
  font-size: 0.7575rem;
}

.payment_aside_check_wide_info_pdf {
  width: 25%;
  font-size: 0.7875rem;
  font-weight: 700;
}

.container_pdf {
  font-family: var(--f-main) !important;
  font-size: 0.6575rem;
  width: 100%;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

.webkit_box_title {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
  width: 100%;
}

.webkit_box {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: start;
  /* wkhtmltopdf uses this one */
}

.webkit_box_center {
  display: -webkit-box;
  /* wkhtmltopdf uses this one */
  -webkit-box-pack: center;
  /* wkhtmltopdf uses this one */
}

.stick_div {
  position: fixed;
  top: 0px;
}

.seatprice {
  font-weight: 600;
  white-space: nowrap;
}

/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black;
  /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  position: relative;
  visibility: hidden;
  width: 140px;
  background-color: #DFDEF0;
  color: var(--c-txt);
  text-align: left;
  padding: 20px 10px;
  border-radius: 6px;
  font-size: 15px;
  /* Position the tooltip text - see examples below! */
  bottom: 100%;
  left: 50%;
  margin-left: -70px;
  /* Use half of the width (120/2 = 60), to center the tooltip */
  z-index: 1;
  top: -160px;
  height: 120px;
}

.tooltip .tooltiptext_webcheckin {
  position: relative;
  visibility: hidden;
  width: 140px;
  color: var(--c-txt);
  text-align: left;
  padding: 20px 10px;
  border-radius: 6px;
  font-size: 15px;
  /* Position the tooltip text - see examples below! */
  bottom: 100%;
  left: 50%;
  margin-left: -70px;
  /* Use half of the width (120/2 = 60), to center the tooltip */
  z-index: 1;
  top: -160px;
  height: 120px;
}

.tooltip .tooltiptext::after {
  content: " ";
  position: absolute;
  top: 100%;
  /* At the bottom of the tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: black transparent transparent transparent;
}

.tooltip .price {
  font-size: 30px;
  /*color: var(--c-txt);*/
  font-weight: 600;
  white-space: nowrap;
  margin-top: 0px;
}

.tooltip .seat {
  font-size: 20px;
  font-weight: 600;
  /*color: var(--c-txt);*/
}

.tooltip .comment {
  font-size: 15px;
  /*color:var(--c-txt);*/
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}

.menu__top li welcomeffp {
  text-decoration: none !important;
  /* Retire le soulignement */
  color: inherit !important;
  /* Utilise la couleur du texte environnant */
}

.menu__top li welcomeffp:hover {
  /*color: var(--c-button) !important; /* Garde la même couleur au survol */
  /*cursor: default !important; /* Change le curseur pour ne pas indiquer qu'il s'agit d'un lien */
}

body, html {
  height: 100%;
  margin: 0;
}

/* Style tab links */
.tablink {
  /*background-color: #555;
    color: white;*/
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  font-size: 17px;
  width: 50%;
  /* position: relative;
    top: -120px;*/
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  /*border-radius: 65.4942px;*/
  background-color: var(--c-background);
}

.tablink_selected {
  background-color: var(--c-primary);
  color: var(--c-background);
}

.tablink:hover {
  background-color: var(--c-button-hover);
  color: var(--c-background);
}

/* Style the tab content (and add height:100% for full page content) */
.tabcontent_ow {
  padding: 20px 20px;
  height: 100%;
}

.tabcontent_rt {
  padding: 20px 20px;
  height: 100%;
}

/* Style tab links */
.tablink_ssr {
  /*background-color: #555;
    color: white;*/
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  font-size: 17px;
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  /*border-radius: 65.4942px;*/
  background-color: var(--c-background);
  filter: drop-shadow(0px 5px 15px rgba(0, 0, 0, 0.15));
  margin-top: 10px;
}

.tablink_ssr_selected {
  background-color: var(--c-primary);
  color: var(--c-background);
}

.tablink_ssr:hover {
  background-color: var(--c-button-hover);
  color: var(--c-background);
}

/* Style the tab content (and add height:100% for full page content) */
.tabcontent_ssr_ow {
  /*padding: 100px 20px;*/
  height: 100%;
}

.tabcontent_ssr_rt {
  /*padding: 100px 20px;*/
  height: 100%;
}

.CGVmodal {
  display: none;
  /* Hidden by default */
  position: fixed;
  /* Stay in place */
  z-index: 1;
  /* Sit on top */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: black;
  /* Fallback color */
  background-color: rgba(0, 0, 0, 0.4);
  /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto;
  /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  /* Could be more or less, depending on screen size */
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

.jconfirm .jconfirm-box.jconfirm-type-green {
  border-top: solid 7px var(--c-button) !important;
}

.dangerouspic {
  background-color: var(--c-background-white);
  width: 140px;
  height: 170px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.dangerousitem {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.dangeroustext {
  background-color: white;
  color: var(--c-txt);
  font-weight: 600;
  width: 75%;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
}

.dangerousgoods {
  display: flex;
  background-color: white;
  padding: 20px;
  column-gap: 10px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.dangerouswarning {
  background-color: white;
  padding: 50px;
  color: var(--c-txt);
  padding-bottom: 0px;
}

.dangerousbuttons {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  background-color: white;
  padding: 50px;
  padding-top: 0px;
}

@media (max-width: 768px) {
  .dangerousbuttons {
    flex-direction: column;
  }
}

.divboarding {
  padding-bottom: 10px;
  text-align: right;
  padding-right: 10px;
}

.btnboarding {
  padding-left: 50px;
  padding-right: 50px;
}

.jconfirm .jconfirm-box .jconfirm-buttons button.btn-red {
  background-color: var(--c-primary) !important;
  color: #FFF !important;
}

.jconfirm .jconfirm-box .jconfirm-buttons button.btn-green {
  background-color: var(--c-secondary) !important;
  color: var(--c-txt-custom) !important;
}

.jconfirm .jconfirm-box .jconfirm-buttons button.btn-green:hover {
  background-color: var(--c-secondary) !important;
  color: var(--c-txt-custom) !important;
}

.flightarrow {
  height: 45px;
  left: 30%;
  position: absolute;
  top: 0;
  transform: translateX(-57%);
  width: 250px;
  z-index: 0;
}

.planeicon {
  z-index: 1;
  background-color: white;
  transform: translateX(0px);
  position: relative;
}

@media screen and (max-width: 440px) {
  .flightinfoicon {
    top: 5px;
  }
  .flightarrow {
    transform: translateX(-46%);
    width: 120px;
  }
}

@media screen and (min-width: 440px) and (max-width: 480px) {
  .flightinfoicon {
    top: 5px;
  }
  .flightarrow {
    transform: translateX(-50%);
    width: 150px;
  }
}

@media screen and (min-width: 480px) and (max-width: 550px) {
  .flightinfoicon {
    top: 5px;
  }
  .flightarrow {
    transform: translateX(-54%);
    width: 190px;
  }
}

@media screen and (min-width: 550px) and (max-width: 1024px) {
  .flightinfoicon {
    top: 5px;
  }
  .flightarrow {
    transform: translateX(-41%);
    width: 90px;
  }
}

@media screen and (min-width: 1024px) and (max-width: 1440px) {
  .flightinfoicon {
    top: 5px;
  }
  .flightarrow {
    transform: translateX(-50%);
    width: 130px;
  }
}

#searchButton:disabled {
  background-color: #cccccc;
  color: #666666;
  cursor: not-allowed;
}

.dropbtn {
  background-color: var(--c-background);
  color: var(--c-txt);
  padding: 2px;
  font-size: 14px;
  border: none;
  cursor: pointer;
  text-align: left;
  width: 100%;
  height: 30px;
  padding-bottom: 10px;
}

.dropdown {
  position: relative;
  display: block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: var(--c-background);
  min-width: 230px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 1;
  max-height: 400px;
  /* Approximate height for 10 items */
  overflow-y: auto;
  /* Add scrollbar */
  left: -20px;
}

.dropdown-content a {
  color: var(--c-txt);
  padding: 2px 16px;
  text-decoration: none;
  display: block;
  font-weight: 500;
  font-size: 14px;
}

.dropdown-content a:hover {
  background-color: var(--c-button);
  color: var(--c-button-txt);
}

.show {
  display: block;
}

#myInput {
  box-sizing: border-box;
  padding: 16px;
  font-size: 14px;
  border: none;
  border-bottom: 1px solid #ddd;
  width: 100%;
}

.blocker {
  z-index: 2 !important;
}

.bagwidth {
  width: 20px;
}

@media screen and (max-width: 550px) {
  .bagwidth {
    width: 30px;
  }
  .accordion {
    width: 95%;
    height: 65px;
    margin-bottom: 19px;
  }
  .payment-select-image {
    width: 35px !important;
    height: 100% !important;
  }
}

.container_payment {
  width: 100%;
  margin: 0 auto;
}

.payment-select {
  margin-top: 10px;
  width: 100%;
  border: 1px solid #ddd;
  padding: 1em;
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  background-color: var(--c-background-pax) !important;
  cursor: pointer;
}

.payment-select-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.payment-select-image {
  width: 75px;
  height: 50px;
}

.radiopay {
  margin-right: 0px;
  width: 15px;
  height: 16px;
  box-shadow: none !important;
  border-radius: 999px;
  -webkit-appearance: inherit;
  border: none !important;
  position: relative;
  box-sizing: border-box;
  white-space: nowrap;
  padding: 0px 0px 0px 20px !important;
  font-size: 1.1rem !important;
  top: 10px;
}

.payment-select.selected {
  border: 2px solid var(--c-primary);
  /* Bord rouge pour la sélection */
}

.seatbtntxt_p {
  color: #bab8d5;
  padding: 8px;
  font-size: 1.5rem;
  font-weight: 700;
}

.seatbtntxt_s {
  color: #bab8d5;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 8px;
}

.travel_itinerary_passenger_choice {
  padding: 15px 62px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-right: 10px;
  margin-bottom: 10px;
  font-size: 1.2rem;
  text-align: center;
  padding-left: 0px;
}

.voucherstyle {
  display: flex;
}

.form-group-voucher {
  margin-left: 20px;
}

.connection_time {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 10px;
  padding-right: 40px;
  font-weight: 700;
}

#JPO_seatmap_ow {
  cursor: default !important;
  min-height: 100vh;
}

#JPO_seatmap_ow_transit {
  cursor: default !important;
  min-height: 100vh;
}

#JPO_seatmap_rt {
  cursor: default !important;
  min-height: 100vh;
}

#JPO_seatmap_rt_transit {
  cursor: default !important;
  min-height: 100vh;
}

.selected_seat {
  width: 180px;
  margin-left: 15px;
  background-color: var(--c-primary);
  padding: 10px;
  color: white;
  border-radius: 4px;
  text-align: center;
}

.selected_seat_empty {
  width: 180px;
  margin-left: 15px;
  background-color: transparent;
  padding: 10px;
  color: white;
  border-radius: 4px;
  text-align: center;
}

#res_departuredate_ow_completion {
  font-weight: 700;
  font-size: 1.3rem;
}

.buttonOptions {
  display: flex;
}

.buttonChange {
  width: 100%;
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

@media (max-width: 1024px) {
  /* Pour les appareils plus petits que les iPads */
  .buttonOptions {
    flex-direction: column;
    /* Change la direction en colonne sur les petits écrans */
  }
  .buttonChange {
    width: 100%;
    margin-top: 15px !important;
    margin-bottom: 0px !important;
  }
  .voucherstyle {
    flex-direction: column;
    /* Change la direction en colonne sur les petits écrans */
  }
  .purposeTrip {
    align-items: start !important;
    flex-direction: column;
  }
  .itemPurposeMain {
    width: 90% !important;
  }
}

#flight_info_ow {
  padding-left: 20px;
}

#flight_info_rt {
  padding-left: 20px;
}

#flight_info_ow_transit {
  padding-left: 20px;
}

#flight_info_rt_transit {
  padding-left: 20px;
}

/*.alert__error__general {
    color: #80ab38!important;
}*/
/*.outstanding_wrap {
    color: #80ab38 !important;
}*/
.purposeTrip {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.itemPurpose {
  width: 25%;
}

.itemPurposeMain {
  margin-left: 5px;
  margin-bottom: 5px;
  width: 40%;
}

.aptTransit {
  position: relative;
  top: 10px;
}

.payment_aside_check_total {
  color: var(--c-txt) !important;
}

.width-fb {
  width: 30%;
}

.rowffp {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0px;
}

.desktop-hide {
  display: none;
}

.ffp-total-statement-text {
  font-size: 12px;
  text-align: right;
  background-color: #333;
  /*height: 32px;
    padding-top: 5px;*/
}

redemp {
  font-size: 13px;
  margin-bottom: -20px !important;
  display: table;
  margin: auto;
}

.ffp-total-statement-value {
  font-size: 12px;
  background-color: lightgray;
  color: #000;
  font-weight: 800;
}

supf {
  color: red;
  font-size: 15px;
  position: relative;
  top: -5px;
}

#ffpnav .nav-pills > li {
  /*float: left;*/
  font-size: 12px;
  height: auto;
  margin-top: 0;
  margin-bottom: 0;
}

#ffpnav .nav-pills > li > a {
  /*float: left;*/
  font-size: 12px;
  height: auto;
  margin-top: 0;
  margin-bottom: 0;
}

#ffpnav .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #002350;
  height: auto;
}

#ffpnav .nav-pills > li.active > a:hover {
  color: #fff;
  background-color: #002350;
  height: auto;
}

#ffpnav .nav-pills > li > a:hover {
  background-color: #68788e;
  color: white;
  height: auto;
}

.flight-booking-container ul li.active a {
  background: #cc090b;
  text-decoration: none;
  color: #FFFFFF !important;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.ffp-banner {
  width: 100%;
  position: relative;
  max-height: 300px;
  /*background-image : url('/images/ffp-banner.jpg');*/
}

.ffp-banner img {
  position: relative;
  top: 50%;
  transform: translateY(-35%);
  z-index: -1;
}

.ffp-dashboard {
  max-width: 1200px;
  margin: 20px auto;
  padding: 0 10px;
  position: relative;
}

.ffp-dashboard_container {
  font-size: 1.4rem;
  line-height: 1.61rem;
  font-style: normal;
  background-color: #002350;
  color: #fff;
  border-radius: 3px;
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.19);
  padding: 10px;
}

.ffp-dashboard_block-1 {
  font-size: 1.4rem;
  line-height: 1.61rem;
  font-style: normal;
  width: 33%;
  display: inline-flex;
  vertical-align: middle;
  padding-right: 80px;
  white-space: nowrap;
}

.welcome {
  margin-top: auto;
  margin-bottom: auto;
  white-space: normal;
}

.vertical-auto {
  margin-top: auto;
  margin-bottom: auto;
  white-space: normal;
}

.ffp-dashboard_block-2 {
  width: 67%;
  vertical-align: middle;
  padding-top: 30px;
  padding-bottom: 15px;
  float: right;
}

.ffp-dashboard_block-3 {
  border-top: 1px solid #444;
  padding: 15px 0 10px;
  height: auto;
  margin-top: 18px;
}

index-login-ffp {
  font-size: 13px;
  letter-spacing: 1px;
  margin-bottom: 5px;
  margin-top: 15px;
  display: block;
}

index-join-ffp {
  /*font-style: italic;*/
  font-size: 13px;
  letter-spacing: 1px;
  margin-bottom: 5px;
  margin-top: 5px;
  display: block;
  color: var(--c-txt);
}

index-join-ffp-inv {
  /*font-style: italic;*/
  font-size: 13px;
  letter-spacing: 1px;
  margin-bottom: 5px;
  margin-top: 15px;
  display: block;
  color: var(--c-txt);
}

info-login {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 15px;
  margin-top: 15px;
  display: block;
}

#login-button {
  margin-top: 20px;
  text-align: right;
}

.btn-log {
  box-shadow: 0 0 0 0 !important;
}

.welcometitle {
  color: #fff;
  font-size: 25px;
  letter-spacing: 1px;
  margin: 10px;
  padding: 0 0 5px 0;
}

.welcomeinfo {
  font-size: 15px;
}

.ffpcontainer-login {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
  display: flex;
}

#login-links {
  margin-top: 20px;
}

@media (min-width: 992px) {
  .ffp-col-md-1 {
    width: 10.33333333%;
  }
}

@media (min-width: 1200px) {
  #sepmobile {
    display: none;
  }
  .desktop-margin-10 {
    margin-top: 10px;
  }
  .desktop-margin-left-20 {
    margin-left: -20px;
  }
  .fpp-col-md-1 {
    width: 10.333333%;
  }
}

@media (min-width: 980px) and (max-width: 1199px) {
  #sepmobile {
    display: none;
  }
  .desktop-margin-10 {
    margin-top: 10px;
  }
  .desktop-margin-left-20 {
    margin-left: -20px;
  }
  .fpp-col-md-1 {
    width: 10.33333% !important;
  }
}

.row-flex {
  display: flex;
}

@media (min-width: 770px) and (max-width: 979px) {
  .ffpcontainer-login {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
}

@media (max-width: 769px) {
  #tbleft .bookingtable td.tm::before {
    width: auto !important;
  }
  input#expiredBox.marginleftzero {
    margin-left: 0px !important;
  }
  .mobile-grid-flex {
    margin: auto;
    display: inline-table;
  }
  .desktop-margin-left-20 {
    margin-left: 16px;
  }
  .desktop-margin-10 {
    margin-top: 0px;
  }
  .mobile-inline-flex {
    display: inline-flex;
  }
  .mobile-hide {
    display: none;
  }
  .mobile-left {
    text-align: left;
  }
  .desktop-hide {
    display: contents !important;
  }
  .mobile-margin-top {
    margin-top: 10px;
  }
  .rb-left-mobile {
    text-align: left !important;
  }
  .ffp-rb-container {
    display: grid !important;
  }
  .width-fb {
    width: 50%;
  }
  .ffp-banner img {
    position: relative;
    top: 50%;
    transform: translateY(0%);
    z-index: -1;
  }
  .margin-mobile {
    margin-top: 10px;
    margin-bottom: 10px;
  }
  .row-flex {
    display: block;
  }
  .ffp-dashboard {
    text-align: center;
    margin-top: 10px;
    padding: 0 10px;
  }
  .ffpcontainer-login {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  #ffpnav .nav-pills > li {
    /*float: left;*/
    font-size: 12px;
    height: 55px;
  }
  #ffpnav .nav-pills > li > a {
    /*float: left;*/
    font-size: 12px;
    height: 55px;
  }
  #ffpnav .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    height: 55px;
  }
  #ffpnav .nav-pills > li.active > a:hover {
    height: 55px;
  }
  #ffpnav .nav-pills > li > a:hover {
    height: 55px;
  }
}

@media (max-width: 325px) {
  .ffpcontainer-login {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    display: block;
  }
}

.ffp-rb-container {
  display: initial;
  position: relative;
  padding-left: 30px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 14px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default radio button */
.ffp-rb-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom radio button */
.ffp-rb-checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 15px;
  width: 15px;
  background-color: #eee;
  border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.ffp-rb-container:hover input ~ .ffp-rb-checkmark {
  background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.ffp-rb-container input:checked ~ .ffp-rb-checkmark {
  background-color: #cc090b;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.ffp-rb-checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.ffp-rb-container input:checked ~ .ffp-rb-checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.ffp-rb-container .ffp-rb-checkmark:after {
  top: 3px;
  left: 3px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

.form-control-ffp {
  display: block;
  width: 100%;
  height: 28px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #D6D6D6;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

.ffpflex {
  display: flex;
  margin-top: 10px;
  margin-bottom: 0px;
}

.btn-cancel {
  padding: 8px 20px;
  border: none;
  background: #47433D;
  outline: none;
  color: #FFFFFF;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  line-height: 20px;
  /*-webkit-box-shadow: 0 0 20px #666;
    box-shadow: 0 0 20px #666;*/
}

.datepickerffp {
  background: url(../images/cal.png) no-repeat scroll 5px 5px;
  width: 100%;
  height: 28px;
  /*padding: 0 !important;*/
  text-align: left;
  padding-left: 50px !important;
  color: white;
  outline: none;
  border: 1px solid transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 15px;
  margin: 10px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 1px;
  padding-top: 5px !important;
  padding-right: 5px !important;
  padding-bottom: 5px !important;
}

.selectffp {
  font-size: 15px !important;
  padding: 5px;
}

.bg-ffp-danger {
  background-color: #fb0f0f;
}

.bg-ffp-warning {
  background-color: orange;
}

.bg-ffp-success {
  background-color: green;
}

.ffp-welcome-join {
  margin-left: auto;
  width: 77%;
  position: relative;
  border: 1px solid #f4f4f4;
  margin-top: 15px;
  z-index: 1;
  box-shadow: 0 2px 4px 2px rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  padding: 30px;
  text-align: left;
}

.image-join {
  margin-left: auto;
  box-shadow: 0px 2px 4px 2px #337ab7;
  width: 77%;
}

.material-inbox-classe-ffp {
  background: transparent;
  color: #fff;
  outline: none;
  border: 1px solid transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  line-height: 0.7em;
  font-size: 15px;
  margin: 0px 0;
  width: 90px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 1px;
  padding: 5px;
}

.material-inbox-classe-ffp:focus {
  box-shadow: 0 0 5px #51cbee;
  border: 1px solid #51cbee;
}

.datepickerffp:focus {
  background: url(../images/cal.png) no-repeat scroll 5px 5px;
  width: 100%;
  height: 28px;
  /*padding: 0 !important;*/
  text-align: left;
  padding-left: 50px !important;
  color: white;
  outline: none;
  font-size: 15px;
  margin: 10px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 1px;
  padding-top: 5px !important;
  padding-right: 5px !important;
  padding-bottom: 5px !important;
  box-shadow: 0 0 5px #51cbee;
  border: 1px solid #51cbee;
}

.selectffp:focus {
  box-shadow: 0 0 5px #51cbee;
  border: 1px solid #51cbee;
}

.progress {
  background-color: transparent;
  margin-bottom: 0;
  height: 10px;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 5px;
  overflow: hidden;
}

.progress-bar {
  height: 100%;
  width: 0%;
  background-color: #007bff;
  transition: width 0.6s ease;
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  animation: progress-bar-stripes 1s linear infinite;
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

/* menu breakpoint - from which width od display is menu collapsed */
.menu__header {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 920px) {
  .menu__header {
    overflow: hidden;
  }
}

.menu__header__top {
  background-color: var(--c-header);
  min-height: 170px;
  box-shadow: 0px 4px 9px rgba(179, 179, 179, 0.48);
  display: flex;
  align-items: center;
  position: relative;
  z-index: 3;
}

@media screen and (max-width: 920px) {
  .menu__header__top {
    min-height: 70px;
  }
}

.menu__header__top .container {
  display: flex;
  align-items: center;
}

.menu__header .container {
  position: relative;
}

.menu__header__logo {
  width: 340px;
  height: 60px;
  background-image: var(--i-logo);
  background-position: left center;
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width: 920px) {
  .menu__header__logo {
    width: 250px;
    height: 40px;
  }
}

.menu__top__wrap {
  background-color: var(--c-background-white) !important;
  text-align: right;
  position: absolute;
  right: 16px;
  top: -166px;
}

@media only screen and (min-width: 640px) {
  .menu__top__wrap {
    right: 16px;
  }
}

@media only screen and (min-width: 768px) {
  .menu__top__wrap {
    right: 24px;
  }
}

@media only screen and (min-width: 990px) {
  .menu__top__wrap {
    right: 36px;
  }
}

@media only screen and (min-width: 1550px) {
  .menu__top__wrap {
    right: 36px;
  }
}

@media screen and (max-width: 920px) {
  .menu__top__wrap {
    position: relative;
    right: 0;
    top: 0px !important;
    padding: 20px 20px 20px 20px;
  }
}

.menu__top {
  display: inline-block;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  position: relative;
  z-index: 3;
}

.menu__top li {
  display: block;
  float: left;
  margin-left: 20px;
  position: relative;
  color: var(--c-link-topmenu);
}

@media screen and (max-width: 920px) {
  .menu__top li {
    display: inline-block;
    float: none;
  }
}

.menu__top li::before {
  position: absolute;
  content: "|";
  left: -15px;
  top: 0px;
  width: 5px;
  height: 100%;
  color: var(--c-link-topmenu);
}

.menu__top li:first-child {
  margin-left: 0;
}

.menu__top li:first-child::before {
  content: "";
  width: 0;
  left: 0;
}

.menu__top li a {
  color: var(--c-link-topmenu);
  transition: color 0.3s ease;
}

.menu__top li a:hover {
  color: var(--c-link-topmenu-hover);
  transition: color 0.3s ease;
  text-decoration: underline;
}

.menu__top li.active a {
  color: var(--c-link-topmenu);
}

.menu__account {
  display: inline-block;
  margin: 0px 0px 0px auto;
  padding: 0px;
  list-style-type: none;
  position: relative;
  z-index: 3;
}

.menu__account li {
  display: block;
  float: left;
  margin-left: 20px;
  position: relative;
  color: var(--c-link-topmenu);
  font-weight: bold;
}

@media screen and (max-width: 920px) {
  .menu__account li {
    display: inline-block;
    float: none;
  }
}

.menu__account li::before {
  position: absolute;
  content: "|";
  left: -15px;
  top: 0px;
  width: 5px;
  height: 100%;
  font-weight: bold;
  color: var(--c-txt-white);
}

.menu__account li:first-child {
  margin-left: 0;
}

.menu__account li:first-child::before {
  content: "";
  width: 0;
  left: 0;
}

.menu__account li a {
  color: var(--c-link);
  transition: color 0.3s ease;
}

.menu__account li a:hover {
  color: var(--c-link);
  transition: color 0.3s ease;
  text-decoration: underline;
}

.menu__account li.active a {
  color: var(--c-link);
}

.menu__main {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: inline-block;
  width: auto;
  background-color: var(--c-menu-back);
  box-shadow: 0px 5px 11px rgba(0, 0, 0, 0.07);
  position: relative;
  z-index: 1;
  border-radius: 0px 0px 35px 35px;
}

@media screen and (max-width: 920px) {
  .menu__main {
    display: block;
    border-radius: 0px;
    box-shadow: none;
    top: 100px !important;
    z-index: 2000 !important;
  }
}

.menu__main li {
  float: left;
  border-right: 1px solid #898989;
  transition: all 0.3s ease;
  position: relative;
}

@media screen and (max-width: 920px) {
  .menu__main li {
    text-align: right;
    float: none;
    border-right: none;
  }
}

.menu__main li:last-child {
  border-right: none;
  border-radius: 0px 0px 35px 0px;
}

@media screen and (max-width: 920px) {
  .menu__main li:last-child {
    border-radius: 0px;
  }
}

.menu__main li:first-child {
  border-right: none;
  border-radius: 0px 0px 0px 35px;
}

@media screen and (max-width: 920px) {
  .menu__main li:first-child {
    border-radius: 0px;
  }
}

.menu__main li.active {
  background-color: var(--c-menu-active);
  color: var(--c-txt-mainmenu) !important;
}

.menu__main li.active a {
  background-color: var(--c-menu-active);
  color: var(--c-txt-mainmenu) !important;
}

.menu__main li.active:first-child a {
  border-right: none;
  border-radius: 0px 0px 0px 35px;
}

@media screen and (max-width: 920px) {
  .menu__main li.active:first-child a {
    border-radius: 0px;
  }
}

.menu__main li.active:last-child a {
  border-right: none;
  border-radius: 0px 0px 35px 0px;
}

@media screen and (max-width: 920px) {
  .menu__main li.active:last-child a {
    border-radius: 0px;
  }
}

.menu__main li:hover {
  background-color: var(--c-menu-hover);
  transition: all 0.3s ease;
}

.menu__main li a {
  display: block;
  color: var(--c-txt);
  padding: 30px 15px;
}

@media screen and (max-width: 920px) {
  .menu__main li a {
    padding: 15px 15px;
  }
}

.menu__submenu {
  display: none;
}

.menu__submenu.showMenu {
  display: block;
}

.menu__submenu {
  position: absolute;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  width: 100%;
  top: 78px;
  background-color: var(--c-menu-back);
  border-radius: 0px 0px 30px 30px;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25);
}

@media screen and (max-width: 920px) {
  .menu__submenu {
    box-shadow: none;
    border-bottom: 1px solid #898989;
    position: relative;
    top: 0px;
    box-shadow: none;
    border-radius: 0px;
  }
}

.menu__submenu li {
  border-right: none;
  margin: 0;
  padding: 0;
  display: block;
  width: 100%;
}

.menu__submenu li:last-child {
  border-radius: 0px 0px 30px 30px;
}

.menu__submenu li:first-child {
  border-radius: 0px 0px 30px 30px;
}

.menu__submenu li a {
  display: block;
  padding: 15px 12px;
  font-size: 1rem;
  text-align: center;
}

@media screen and (max-width: 920px) {
  .menu__submenu li a {
    text-align: right;
    padding: 10px 10px;
    padding-right: 40px;
    font-size: 0.8rem;
  }
}

.menu__toggle {
  width: 46px;
  height: 36px;
  position: absolute;
  z-index: 200;
  top: 16px;
  left: -60px;
  background-color: var(--c-primary);
  border: none;
  padding: 0;
  margin: 0;
  display: none;
  transition: all 0.3s ease;
  padding: 5px;
}

@media screen and (max-width: 920px) {
  .menu__toggle {
    display: block;
  }
}

.menu__toggle span {
  display: block;
  background-color: var(--c-primary);
  width: 100%;
  height: 5px;
  border-radius: 5px;
  margin-bottom: 5px;
  transform-origin: 50% 50%;
  transform: rotate(0deg);
  transition: all 0.3s ease;
}

.menu__toggle span:last-child {
  margin-bottom: 0px;
}

.menu.showMenu .menu__toggle {
  transition: all 0.3s ease;
  left: 0px;
  background-color: transparent;
}

.menu.showMenu .menu__toggle span:nth-child(1) {
  transition: all 0.3s ease;
  transform: rotate(45deg) translate(7px, 4px);
  background-color: var(--c-txt) !important;
}

.menu.showMenu .menu__toggle span:nth-child(2) {
  transition: all 0.3s ease;
  opacity: 0;
  background-color: var(--c-txt) !important;
}

.menu.showMenu .menu__toggle span:nth-child(3) {
  transition: all 0.3s ease;
  transform: rotate(-45deg) translate(10px, -7px);
  background-color: var(--c-txt) !important;
}

@media screen and (max-width: 920px) {
  .menu {
    position: fixed !important;
    z-index: 1000;
    right: -100vw;
    top: 0;
    width: calc(100vw);
    min-height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    transition: all 0.3s ease;
  }
}

@media screen and (max-width: 920px) {
  .menu.showMenu {
    transition: all 0.3s ease;
    right: 0px;
  }
}

@media screen and (max-width: 920px) {
  .menu__inner {
    position: absolute;
    z-index: 1000;
    right: 0;
    top: 0px;
    width: calc(100vw - 0px);
    min-height: 100vh;
    background-color: var(--c-menu-back);
  }
}

.menu__top__wrap {
  top: -70px;
}

.menu__header__top {
  min-height: 80px !important;
}

.menu__toggle span {
  background-color: var(--c-background) !important;
}

/*Language CSS menu*/
.nav-wrapper {
  width: 300px;
  margin: 100px auto;
  text-align: center;
}

.sl-nav {
  display: inline;
}

.sl-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  display: inline-block;
}

.sl-nav li {
  cursor: pointer;
  padding-bottom: 10px;
}

.sl-nav li ul {
  display: none;
}

.sl-nav li:hover ul {
  position: absolute;
  top: 29px;
  right: -15px;
  display: block;
  background: #fff;
  width: 150px;
  padding-top: 0px;
  z-index: 1;
  border-radius: 5px;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
}

.sl-nav li:hover .triangle {
  position: absolute;
  top: 15px;
  right: -10px;
  z-index: 10;
  height: 14px;
  overflow: hidden;
  width: 30px;
  background: transparent;
}

.sl-nav li:hover .triangle:after {
  content: '';
  display: block;
  z-index: 20;
  width: 15px;
  transform: rotate(45deg) translateY(0px) translatex(10px);
  height: 15px;
  background: #fff;
  border-radius: 2px 0px 0px 0px;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
}

.sl-nav li ul li {
  position: relative;
  text-align: left;
  background: transparent;
  padding: 15px 15px;
  padding-bottom: 0;
  z-index: 2;
  font-size: 15px;
  margin-left: 0px;
}

.sl-nav li ul li::before {
  position: absolute;
  content: none !important;
  left: 0px;
  top: 0px;
  width: 0px;
  height: 0%;
  color: var(--c-txt);
}

.sl-nav li ul li:last-of-type {
  padding-bottom: 15px;
}

.sl-nav li ul li span {
  padding-left: 5px;
}

.sl-nav li ul li span:hover, .sl-nav li ul li span.active {
  color: var(--c-link);
}

.sl-flag {
  display: inline-block;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);
  width: 20px;
  height: 20px;
  background: #aaa;
  border-radius: 50%;
  position: relative;
  top: 2px;
  overflow: hidden;
}

.flag-de {
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAAAPUlEQVQ4T+3HMQ0AIBTE0NOHM8x9B7hgh71bIWGieUvze1m7kHGBr/AVvsJX+EpmP5dV5/gKX+ErfIUvVDYcX2NMxQC8PAAAAABJRU5ErkJggg==");
  background-size: cover;
  background-position: center center;
}

.flag-en {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QCZgt8ZAAAAAd0SU1FB+YEEw4HHOo76wwAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDQtMTlUMTQ6MDc6MjgrMDA6MDBf2b6OAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA0LTE5VDE0OjA3OjI4KzAwOjAwLoQGMgAAAuZJREFUOE+tlF9IU1Ecx7/3KkGarmypUzffIqwIRYMeNBUiRagXqweFSAgJMjPTKJpOgwhzpoQg9BZk0XvqEtzSReb+qNsapVLbUjZLzVTqRfbr3HPnkrTtxR/cbfec7+9zfmfn9z2Cr7WL1NprMAy7UVKsAzKSIIgipKDFVQyO6bHvUC5//+G24tSJeghJCfydgkHg+xoMb+7hQFEZlI1XIC609cDX3InTBVmwTbQDs0uyMEpwzcIaz1Hl5WP/jctQa2sgfjO+wkprO4M+Qs4RjQydiwzdqMw23o5dB3OhaKqHpqUOA2yXQFwF2ab85EAGebUdJIXN5SXEniMkVNDgx3myQs2fQfc8H0M8y/nkJ6eU0xTKcbKcmHICMqu5wM6h6eRt3iRACRncgTDQ4AqwsTOsgIAM0+q51u7yyQVILKRUEZIvEYRyGp70scQU+nLrAReyg6LetzNkYTDp6R31UN+Qky2sClc2/H6aL8IZjCWUVXWzASAYJPiXf2HoaQ1mi89Do78LRcFxaQojQir7FJBPfngraxF7LAvpDdVYXv2Nkxc6kJ6yF6IocK0grcJ/RYgRQcW/JWC0EEaQFgUoIFaRxI4WWF9ZYu+R5cI7xdGoFcqbiYaSQ7bEDsbOb3nHD2Vz28zNL8P0og77EuMwp3+CdZsDmb2PQ0BiwIAkxYrZAu/1VqiNL1F0sRsqxe5w2/xtbNacptEpqWDytXTSJFJpwOik52OecGM/M89Qv8nFNZ47bWwsmcwO5hKBuSTU2LL1mG2sDi8XspuHOSGN7NOSzc5uY70Sskx6ZG1LF3fNBLMi4itD1hPL/xGk0TjzNRf873JgBVgcco5XFypAymEXDfqM8hY2JsY3r5ZYuRWoCM3FbIW+tnwmsbTwMFhl+Klrw/qUHdnZ9YAyPnxrbxd8jt3sedkNYH8VNM21UOgaoSwshfj1fjcWH/YgYDUjh8P2RIRtRBiacxP9pg8cqrx9FX8A7VUWMV5oaiwAAAAASUVORK5CYII=");
}

.flag-fr {
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QCZgt8ZAAAAAd0SU1FB+UHCxEFKLpa7ngAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjEtMDctMTFUMTc6MDU6NDArMDA6MDD6W/E7AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIxLTA3LTExVDE3OjA1OjQwKzAwOjAwiwZJhwAAAEZJREFUOE9jZFCe+p8BHXz8yWCvLcxw4EAcVAAVvHcNZvh37SYDIz8fVAQBmKA01cCogZSDUQMpB6MGUg5GDaQcDHYDGRgAVMIKdpsS3mkAAAAASUVORK5CYII=");
  background-size: cover;
  background-position: center center;
}

.flag-uz {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QLH9fEwAAAAAd0SU1FB+YJHgACFe70losAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDktMzBUMDA6MDI6MjErMDA6MDBPsrXfAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA5LTMwVDAwOjAyOjIxKzAwOjAwPu8NYwAAAO9JREFUOE9jZJi59T/Dv38MAhxsDB9+/mbAChgZoQzCgInh/38GDlYWhhQNWQaGP/8YQHwtIV4GNQEeMA3ikwIYGaZs/F9gpMIw6coDoEOBmkGuAboYJg1CpLkQCATYWBn+gbwLNFBdgJtBBeg6EFYX4iHDhdM2/zeTEGTgYmFmOPj8HQMTkmMYgfAPyLUkuZCdneHUy08M/7m5GDj4eBm4+fngmFeAj4GBmZWBgYV4zNiWWAb208+//xhYkJ0HBcwkuA4EGP8DAZRNFQCOFGqCUQMpB4yTcjyoGsuM/LvNqGug3Far0XRIGaCygQwMAJfHQDklxbX2AAAAAElFTkSuQmCC");
}

.flag-ru {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QAiAUdSAAAAAd0SU1FB+YEEw03Gt5YxpMAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDQtMTlUMTM6NTU6MjYrMDA6MDAHN7/0AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA0LTE5VDEzOjU1OjI2KzAwOjAwdmoHSAAAAEpJREFUOE9j/A8EDFQETFCaamDUQMoB45ajT6gay4wMGvOobKDlstF0SBlgZLDaSN1ImabvSl0D72pJUNfAq9pyo8mGMkBlAxkYAGtnE0qQ7r1cAAAAAElFTkSuQmCC");
}

.flag-usa {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAABhUlEQVQ4T2Ows82PjGixsc4LD2tysC/09Kjw8622tyuICG8u0w/cpGSCBzF4e1VmZkzw9anOzOj38a4KCW4IC22ECHYk1l9tn4gHMeTlTnZxLikvm+XiUpKW2hvgX+vnV5OVOQEoOGfOtv94AYOzU3Fd7XxHh6Lq6rlurqUx0W0J8Z1AnbW18yotonaYuOJBDBXls4A+bGpaBCTz86YEBtQCvVBSPAPIbY0oP1/aiAcxABU1Ny+2tclvbFjo5FgUF9uenNwNDLnmpkWEnV1TPRcY1O1tS4H6i4umA/0MDK2K8tlAwRqHpP1uoXgQKKraWpcClTY3LQZaCLQ5NaUX5OaWJY3++SeTC/AgBmA4AXUClUJs9ver8fKsAAYEUJCws4G21dXNB1oFdD/Qz8DQTk4C+bm2dn6DZ9bRiDQ8iAEYt8CoBpK5YBIYw0AEEZwSXX4oMB4PYoC6gCzAcDqrjGzEsMfen2xEmbMv1rSTjRi26dqRjShz9o2+6WQjBrSShQSkZAIADvW/HLrLY6cAAAAASUVORK5CYII=");
}

.flag-ja {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAUCAYAAABiS3YzAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+cDDwoWGjQ7ImcAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjMtMDMtMTVUMTA6MjI6MjYrMDA6MDCLLuGDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIzLTAzLTE1VDEwOjIyOjI2KzAwOjAw+nNZPwAAAKJJREFUOE9j/A8EDFQGTFCaqmAYGXq3rJthP6M6HIP4hADOiPp+5yHDCVU3KA8TmF/bxsClqQzloQKchoJcRQg4/r8JZaECrN4/axkOZeEH56wjoCxUgNWlxLgSBrC5djSdYgI+CwMoCz/gtzKEslAB/ZIUCFjc3gVlYQfm17dDWZgAp6GcKvJgl8iVp0JFIADEB4lzaShBRTDBaHlKbcDAAAAhiTuCcm6wXwAAAABJRU5ErkJggg==");
}

.flag-ko {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+cDDwoWGjQ7ImcAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjMtMDMtMTVUMTA6MjI6MjYrMDA6MDCLLuGDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIzLTAzLTE1VDEwOjIyOjI2KzAwOjAw+nNZPwAAArpJREFUOE+tVT1IW1EU/t57ecZEi5vQWoJLQRGxaKokk7hqICLBpVgKdtChSAWXdujg0sWxk1RFxMlCC05Cs8WmSpFasiV2CNW2YrTFNr/v9Jz73ktaK1LQD5J77/n57jn3nnOfRgxcIXT5czkty1LjZaALycnJCTRNQyqVQqVScVQXw7Xb3NxEIBCoBeOkTPv7++Tz+Wh8fJxYKeILsba2Rtvb29Tc3Ex9fX20uLio5BgbG6O5uTlFure3pwx4d6VkZnt0YJXLzoyqAUQiEVpYWKCpqSkqsx6maVIsFqOVlRVFWgWTFb98pVTsHm3d6qb3wX76/Hy+qhPnaDRKhUJB+aXTaTo6OiKNz43C4TC6urowOTmJkZERGLqOzPQT5DbeQPN45LbAhwzNMFD6dog76R1opsk8ItaQzWbR2dmJmZkZqLJhdiSTSYyOjkLXdCSDA6izShKvcvoHLO/+kHAWwODgINbX19VcETLsBe/G1vjY1o2i169kAtE2UhGnWh0aePxh1KPnXdyOnl3E3/Z16lAWrkAsfvqbmMRdAz4qo+3mNHpuTKCt5RGeXQvj+9stkGWXTs3XITyL0PUHaLLy8FIFjVYRHS0PoVkFDoUJOMKX/g6YOL9ez0mZdxl4AfL6lDM4TTX+AQ+blV7FAJOPhefi/1fKmUwGq6urqvq58uCt97CdQ3KGTKCaos4mEwwNDdkThsE3+7S3txcHBwfw+/1ob2/H47u3kfp0rH66oavLlgA8PLeOfyG/cR+GYbNJZPF4HK2trSpSVdjDw8PEtSR5q/wF0n7Zw1MKTrwm9M9TQ2SZZpd3HB1VCzufzys/t7AvbL2zPV0q19Zu63ENUiKRqLWeKIXsMo9DKBSipaUlJZeLoFwup0h3d3fVLv8D106i4+ermlW1bORw5U3TuY8vgyv+BAC/AYJVgDUKOdZ7AAAAAElFTkSuQmCC");
}

.flag-eur {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+cDDwoWGjQ7ImcAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjMtMDMtMTVUMTA6MjI6MjYrMDA6MDCLLuGDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIzLTAzLTE1VDEwOjIyOjI2KzAwOjAw+nNZPwAAATlJREFUOE9jZDCe+Z+BioAJSlMNEGVggMEFKIswwGmgjvRTKIuBYW3GTCiLgUFL6hmUhR1gNVBB5C3Dqcp2KI+BgTljOpTFwHCmqg0sjwvQNlLa/DcwTI9eBuXhByB1IPXoAMWFfBw/GP7+Z2L4+pMNKoIbcLP/YmBm/Mfw6QcHVAQCUFwIkiTGMBAAqUM3DATgBgYZnGcoct4D5REHil12g/UhA7iBYnyfGRKsj0F5xIEkm6MMokB9yGCIZb0y910MF2qboTz84FJdE0OJ224oDwFwepmR8T/D//+MUB4C4BKHAaxe3pA5jeHr1DwGJqZ/YL4w9xcwDeKDxEHyuABWA+cetWFIXxjN8O8fEwMX2y+GV72lYBrEB4mD5HEBomLZVOEBw+kHClAefkBULBNrGAhQOdkwMAAAlQtiSn2hOxUAAAAASUVORK5CYII=");
}

.flag-ara {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAAWJLR0QDEQxM8gAAAAd0SU1FB+cDDwoWGjQ7ImcAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjMtMDMtMTVUMTA6MjI6MjYrMDA6MDCLLuGDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIzLTAzLTE1VDEwOjIyOjI2KzAwOjAw+nNZPwAAAUNJREFUOE9jZKiy/c9ARcAEpakGBt5AaT5RKAs7IMlAdRE5hiflaxmYmXBrI8nAm28eMVjNzGT4++8fVAQTkOzl44+ugmlXFROGEB0HMBsZkGwgCxMzw//WQwwCHLwM7W7pYDYyINnAn017GRir7RhWX9nPoNoXyfDm20eoDAQQNFCGHxGrb2u2MDDXQLw5L6gC7DrpjiAwHwYI5hR7RQOGAymToDwE2Hv3LIPLvEIoDwFQDJQXkGB4+OEFlIcANvJ6DHODyhlqds9hOPXkOlY1MAA3sNYxnqF5/0KwIDagL6nCcPH5HSgPN4CHYaqpL5SFHRBjGAjADZTlF2Mosg6H8iDAQlab4UfjXiiPOAD3sqKgJMO9kpVgQRj49fc3A3udM5RHHMCIZQdFQ4b3Pz4T7UV0QDDZkApIzimEAJUNZGAAAE0VW6xWIDNHAAAAAElFTkSuQmCC");
}

.flag-zh {
  background-size: cover;
  background-position: center center;
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAUCAYAAACaq43EAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAWJLR0TqyNoWLgAAAAd0SU1FB+gGFwYTJC0scDgAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjQtMDYtMjNUMDY6MTk6MzUrMDA6MDBx3NlHAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDI0LTA2LTIzVDA2OjE5OjM1KzAwOjAwAIFh+wAAAYBJREFUSEvtlM1Kw0AUhc90aoP1j4pSUFdqcaXP4+9C0DfwOdzpwoUrBR/BR3EtKBTUtsG2Sdp0PPdGbAtSxdTqoh/c5DKZzMm5dybmZaXkMAgDuHqGdweT59TBs78NV+yBImjzIiE5EVHvoApvz08+YEh0V4op4mdgtwLYzUBzGTN0Cie2OScwcA1xn7yShqTUXNTMx3DlLPKnZaADNE6KMMU2XMUmYhT1jiv6EeHVHMvOSSlQxy40sGstzNzew9uuwdv1NberLTgKmkmKSHRoVfSkCin52FzuySK342P68lEfvB4uIbqZhVlgvQWp9rPVkptFjqUz3NPjCQdbihCcFRCcF2DXI469PyNSbu+Im4zh6umb3HecMsttxHc5dWc3InQesolT2c3a46o6Da/T97j/HEdUoXOlxTzHfdek4H5Nh8KLAnvN8zxF0e5bP6JbaoFC4lBDck3FMiNm0KU6TSkq/JM/12dQSFwalnhYosLXwr/EWHhkjIVHxh8JA28NqJJvYBudrQAAAABJRU5ErkJggg==");
}

switchlanguage:after {
  content: '\25c2';
  color: #777;
  float: right;
  margin-left: 5px;
}

.sl-nav li:hover switchlanguage:after {
  content: '\25be';
  color: #777;
  float: right;
  margin-left: 5px;
}

switchcurrency:after {
  content: '\25be';
  color: #777;
  float: right;
  margin-left: 5px;
}

.sl-nav li:hover switchcurrency:after {
  content: '\25be';
  color: #777;
  float: right;
  margin-left: 5px;
}

.langmenu {
  background-color: var(--c-header) !important;
}

.currencymenu {
  color: white !important;
  background-color: var(--c-header) !important;
}

/*END language CSS menu*/
.footer {
  width: 100%;
  height: 113px;
  position: fixed;
  bottom: 0px;
  left: 0px;
  display: flex;
  align-items: center;
  background-image: url("./images/foot_back.jpg");
  background-size: cover;
  background-position: center center;
  box-shadow: 0px -2px 17px -2px #B5B5B5;
}

.footer__img {
  width: 248px;
  height: 45px;
  display: block;
}

.stepper {
  background-color: var(--c-stepper-background);
  /*box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  border-radius: 70px;*/
  /*padding: 40px 90px 30px 90px;*/
}

@media screen and (max-width: 990px) {
  .stepper {
    padding: 20px 60px 15px 60px;
  }
}

@media screen and (max-width: 768px) {
  .stepper {
    padding: 20px 60px 15px 40px;
  }
}

@media screen and (max-width: 650px) {
  .stepper {
    padding: 20px 20px 15px 20px;
  }
}

.stepper__svg {
  stroke: var(--c-stepper-line);
}

.stepper ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

.stepper ul::before {
  content: "";
  position: absolute;
  width: calc(100% - 40px);
  left: 20px;
  height: 2px;
  z-index: 0;
  background-color: var(--c-stepper-underline);
  top: 30px;
}

@media screen and (max-width: 768px) {
  .stepper ul::before {
    top: 27px;
  }
}

@media screen and (max-width: 650px) {
  .stepper ul::before {
    top: 20px;
  }
}

.stepper ul > li {
  position: relative;
  z-index: 1;
  color: var(--c-stepper-txt-inactive);
  font-size: 0.875rem;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 650px) {
  .stepper ul > li {
    font-size: 0.6rem;
  }
}

.stepper ul > li > a {
  text-decoration: none;
  color: var(--c-stepper-txt-inactive);
}

.stepper ul > li > span {
  display: flex;
  width: 65px;
  height: 65px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  background-color: var(--c-stepper-line-inactive);
  align-items: center;
  justify-content: center;
  border-radius: 35px;
  /*@media screen and (max-width: 768px) {
        width: 65px;
        height: 65px;
        border-radius: 35px;
    }

    @media screen and (max-width: 650px) {
        width: 65px;
        height: 65px;
        border-radius: 35px;
    }*/
}

@media screen and (max-width: 650px) {
  .stepper ul > li > span {
    width: 45px;
    height: 45px;
    border-radius: 25px;
  }
}

.stepper ul > li > span > svg {
  width: 37px;
  height: 37px;
}

@media screen and (max-width: 768px) {
  .stepper ul > li > span > svg {
    width: 35px;
    height: 29px;
  }
}

@media screen and (max-width: 650px) {
  .stepper ul > li > span > svg {
    width: 27px;
    height: 24px;
  }
}

.stepper ul > li.checked {
  color: var(--c-txt);
}

.stepper ul > li.checked > a {
  color: var(--c-txt);
}

.stepper ul > li.checked > span {
  background-color: var(--c-primary);
}

.travel_itinerary_wrap {
  /*border-radius: 70px;*/
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
}

.travel_itinerary {
  padding: 38px 62px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 1345px) {
  .travel_itinerary {
    padding: 38px 40px;
  }
}

@media screen and (max-width: 1140px) {
  .travel_itinerary {
    padding: 38px 40px;
  }
}

@media screen and (max-width: 650px) {
  .travel_itinerary {
    padding: 25px 18px;
  }
}

.travel_itinerary_h1 {
  padding-left: 40px;
  padding-top: 30px;
  padding-bottom: 0px;
  margin-bottom: 0px;
}

@media screen and (max-width: 650px) {
  .travel_itinerary_h1 {
    padding-left: 20px;
  }
}

.travel_itinerary_p {
  padding-left: 40px;
  padding-bottom: 20px;
}

@media screen and (max-width: 650px) {
  .travel_itinerary_p {
    padding-left: 20px;
  }
}

.travel_itinerary_to {
  border-bottom: 1px dashed var(--c-dashedLink);
}

.travel_itinerary_plane {
  fill: var(--c-plane);
}

.travel_itinerary_from .travel_itinerary_main_plane {
  transform: scaleX(-1);
}

.travel_itinerary_arrow {
  fill: var(--c-arrow);
}

.travel_itinerary_main_webcheckin .times {
  align-self: center;
}

.travel_itinerary_main_webcheckin {
  display: flex;
  flex-wrap: wrap;
  margin-right: 30px;
  column-gap: 150px;
  row-gap: 25px;
  width: 100%;
  justify-content: normal;
}

@media screen and (max-width: 1025px) {
  .travel_itinerary_main_webcheckin {
    margin-right: 0px;
    /*margin-bottom: 30px;*/
    width: 100%;
    row-gap: 25px;
    flex-direction: column;
  }
}

@media screen and (max-width: 860px) {
  .travel_itinerary_main_webcheckin {
    margin-right: 30px;
    margin-bottom: 0px;
    width: inherit;
  }
}

@media screen and (max-width: 540px) {
  .travel_itinerary_main_webcheckin {
    margin-right: 0px;
    /*margin-bottom: 30px;*/
    width: 100%;
  }
}

.travel_itinerary_main {
  display: flex;
  flex-wrap: wrap;
  margin-right: 30px;
}

@media screen and (max-width: 1025px) {
  .travel_itinerary_main {
    margin-right: 0px;
    margin-bottom: 30px;
    width: 100%;
  }
}

@media screen and (max-width: 860px) {
  .travel_itinerary_main {
    margin-right: 30px;
    margin-bottom: 0px;
    width: inherit;
  }
}

@media screen and (max-width: 540px) {
  .travel_itinerary_main {
    margin-right: 0px;
    margin-bottom: 30px;
    width: 100%;
  }
}

.travel_itinerary_main_plane {
  background-color: var(--c-primary);
  width: 100px;
  height: 130px;
  display: flex;
  padding: 15px;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 5px 10px rgba(180, 180, 180, 0.25);
  border-radius: 45px;
  margin-right: 30px;
}

@media screen and (max-width: 768px) {
  .travel_itinerary_main_plane {
    width: 50px;
    height: 65px;
    margin-right: 10px;
  }
}

.travel_itinerary_main_plane_webcheckin {
  background-color: var(--c-secondary);
  width: 100px;
  height: 100px;
  display: flex;
  padding: 15px;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 5px 10px rgba(180, 180, 180, 0.25);
  border-radius: 50px;
  margin-right: 30px;
}

@media screen and (max-width: 768px) {
  .travel_itinerary_main_plane_webcheckin {
    width: 50px;
    height: 50px;
    margin-right: 10px;
  }
}

.travel_itinerary_arrive {
  margin-left: 30px;
}

.arrowit {
  margin-left: 30px;
  margin-right: 30px;
}

@media screen and (max-width: 650px) {
  .arrowit {
    margin-left: 0px;
    margin-right: 0px;
  }
}

.travel_itinerary_main_info_txt_webcheckin {
  display: flex;
  /* align-items: center; */
  column-gap: 10px;
  flex-direction: column;
}

.travel_itinerary_main_info_txt {
  display: flex;
  align-items: center;
  column-gap: 10px;
}

.travel_itinerary_main_info_times {
  display: flex;
  align-items: center;
  column-gap: 10px;
  margin-top: 15px;
}

.travel_itinerary_main_info_city {
  display: flex;
  justify-content: start;
  /*align-items:center;*/
  margin-bottom: 15px;
  flex-direction: column;
}

.travel_itinerary_main_info_city_webcheckin {
  display: flex;
  justify-content: start;
  /*align-items:center;*/
  margin-bottom: 15px;
  flex-direction: row;
}

.travel_itinerary_main_info_city svg {
  margin: 0px 10px;
}

@media screen and (max-width: 650px) {
  .travel_itinerary_main_info_city svg {
    width: 40px;
  }
}

.travel_itinerary_city {
  width: 40%;
}

@media screen and (max-width: 768px) {
  .travel_itinerary_city {
    width: 40%;
  }
}

.travel_itinerary_cities {
  width: 40%;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .travel_itinerary_cities {
    width: 100%;
  }
}

.payment_method_wrap {
  background-color: var(--c-background);
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  padding: 40px 90px 20px 90px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

@media screen and (max-width: 990px) {
  .payment_method_wrap {
    padding: 20px 60px 5px 60px;
  }
}

@media screen and (max-width: 768px) {
  .payment_method_wrap {
    padding: 20px 60px 5px 40px;
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 650px) {
  .payment_method_wrap {
    padding: 20px 20px 5px 20px;
    display: block;
  }
}

.payment_method_wrap_h1 {
  padding-left: 40px;
  padding-top: 30px;
  padding-bottom: 0px;
  margin-bottom: 15px;
}

@media screen and (max-width: 650px) {
  .payment_method_wrap_h1 {
    padding-left: 20px;
  }
}

.payment_method_item {
  padding: 0px 5px;
  white-space: nowrap;
  width: 30%;
}

.reservation {
  color: var(--c-txt-custom) !important;
  background-color: var(--c-primary);
  padding-top: 22px;
  padding-bottom: 22px;
  border-radius: 20px;
  /*box-shadow: 0px 3px 11px rgba(88, 88, 88, 0.25);*/
  font-weight: 500;
}

.reservation_padding {
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .reservation_padding {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (max-width: 650px) {
  .reservation_padding {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.reservation h2 {
  /*color: var(--c-txt) !important;*/
  text-align: center;
  font-size: 1.1875rem;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--c-txt);
  margin-bottom: 0px;
}

.reservation_traveler {
  padding-top: 15px;
  padding-bottom: 15px;
  text-align: center;
}

.reservation_traveler h3 {
  margin: 0px 0px 0px 0px;
  /*text-transform: uppercase;*/
  font-size: 1.24rem;
  font-weight: 600;
}

.reservation_traveler p {
  margin: 0px 0px 0px 0px;
  /*text-transform: uppercase;*/
}

.reservation_direction {
  color: var(--c-button-txt);
  display: flex;
  justify-content: start;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  /*background-color: var(--c-button);*/
}

@media screen and (max-width: 768px) {
  .reservation_direction {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

@media screen and (max-width: 650px) {
  .reservation_direction {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.reservation_direction .btn {
  margin-left: 20px;
}

.reservation_direction svg {
  margin: 0px 10px;
  margin-left: 20px;
}

@media screen and (max-width: 650px) {
  .reservation_direction svg {
    width: 40px;
  }
}

.reservation_buttons {
  padding-top: 20px;
  text-align: center;
  display: flex;
  column-gap: 50px;
  justify-content: center;
}

.reservation_dates {
  padding-top: 20px;
  display: flex;
  align-content: stretch;
  margin-bottom: 0px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--c-txt-invert);
  font-size: 0.72rem;
}

.reservation_dates_info {
  margin-right: 40px;
}

@media screen and (max-width: 768px) {
  .reservation_dates_info {
    margin-right: 20px;
  }
}

.reservation_dates_class {
  border: 1px solid var(--c-txt-custom);
  border-radius: 0px;
  padding: 20px;
  display: flex;
  align-content: center;
  justify-content: center;
  flex: 1;
  text-align: center;
}

@media screen and (max-width: 650px) {
  .reservation_dates_class {
    padding: 10px;
  }
}

.reservation_payment {
  display: flex;
  flex-wrap: nowrap;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--c-txt);
  border-top: 1px solid var(--c-txt);
}

.reservation_payment_labels {
  width: calc(40% - 15px);
  margin-right: 30px;
  text-align: left;
  font-size: 0.72rem;
}

.reservation_payment_labels p:last-child, .reservation_payment_numbers p:last-child {
  padding-top: 5px;
  margin-top: 5px;
  font-size: 1rem;
  font-weight: bold;
}

.reservation_payment_numbers {
  width: calc(60% - 15px);
  text-align: right;
  font-size: 0.72rem;
}

.reservation_payment_numbers span {
  position: relative;
}

.reservation_payment_numbers span::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 2px;
  top: -7px;
  right: 0px;
  background-color: var(--c-txt-invert);
}

.infoflight {
  background: var(--c-secondary);
  color: var(--c-txt);
  margin-left: 20px;
  text-align: center;
  display: block;
  padding: 5px 25px 5px 25px;
  font-size: 0.75rem;
  width: 142px;
}

.reservation_total {
  background-color: var(--c-button);
  display: flex;
  flex-wrap: nowrap;
  padding-top: 20px;
  padding-bottom: 20px;
  color: var(--c-button-txt);
  font-size: 1.225rem;
  font-weight: bold;
}

.reservation_total_labels {
  width: calc(40% - 15px);
  margin-right: 30px;
  text-align: left;
}

.reservation_total_numbers {
  width: calc(60% - 15px);
  text-align: right;
}

.date_choose {
  background-color: var(--c-secondary);
  box-shadow: 0px 10.9459px 10.9459px rgba(157, 157, 157, 0.25);
  border-radius: 18px;
  padding: 8px 26px 8px 26px;
  width: 100%;
  max-width: 570px;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 990px) {
  .date_choose {
    padding: 8px 26px 8px 26px;
  }
}

@media screen and (max-width: 768px) {
  .date_choose {
    padding: 8px 26px 8px 26px;
  }
}

@media screen and (max-width: 650px) {
  .date_choose {
    padding: 8px 15px 8px 15px;
  }
}

@media screen and (max-width: 420px) {
  .date_choose {
    padding: 8px 4px 8px 4px;
  }
}

.date_choose_prev, .date_choose_next {
  width: 13px;
  height: 26px;
  padding: 0;
  border: none;
}

.date_choose_prev {
  margin-right: 15px;
}

@media screen and (max-width: 420px) {
  .date_choose_prev {
    margin-right: 5px;
  }
}

.date_choose_next {
  margin-left: 15px;
  transform: rotate(180deg);
}

@media screen and (max-width: 420px) {
  .date_choose_next {
    margin-left: 5px;
  }
}

.date_choose_arrow {
  fill: var(--c-background);
  transition: fill 0.3s ease;
}

.date_choose_next:hover .date_choose_arrow, .date_choose_prev:hover .date_choose_arrow {
  fill: var(--c-primary);
  transition: fill 0.3s ease;
}

.date_choose_dates {
  flex: 1;
  display: flex;
  overflow: hidden;
  align-items: stretch;
  justify-content: space-between;
}

.date_choose_date {
  padding: 0px 10px;
  text-align: center;
  font-size: 1.163rem;
  line-height: normal;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: var(--c-txt-invert);
  border: none;
  text-align: center;
}

@media screen and (max-width: 420px) {
  .date_choose_date {
    padding: 0px 3px;
    font-size: 1rem;
  }
}

.date_choose_date.active {
  font-size: 1.81rem;
  line-height: normal;
  color: var(--c-primary);
}

@media screen and (max-width: 420px) {
  .date_choose_date.active {
    font-size: 1.3rem;
  }
}

.contact_info {
  background: var(--c-background);
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  /*border-radius: 70px;*/
  padding: 55px;
}

@media screen and (max-width: 768px) {
  .contact_info {
    padding: 35px;
  }
}

@media screen and (max-width: 650px) {
  .contact_info {
    padding: 20px;
  }
}

.contact_info h2 {
  margin-bottom: 30px;
  font-size: 1.5625rem;
  line-height: normal;
  /*text-transform: uppercase;*/
  color: var(--c-txt);
}

.contact_info label {
  font-weight: bold;
  font-size: 0.8475rem;
  color: var(--c-txt);
}

.contact_info_inputgroup {
  display: flex;
  gap: 30px;
  margin-top: 15px;
}

@media screen and (max-width: 650px) {
  .contact_info_inputgroup {
    flex-wrap: wrap;
    gap: 0px;
  }
}

.contact_info_inputgroup_short {
  max-width: 584px;
  margin-top: 15px;
}

.contact_info_title {
  flex-grow: 1;
  padding-right: 40px;
}

@media screen and (max-width: 1024px) {
  .contact_info_title {
    padding-right: 10px;
  }
}

@media screen and (max-width: 990px) {
  .contact_info_title {
    padding-right: 0px;
  }
}

@media screen and (max-width: 768px) {
  .contact_info_title {
    padding-right: 0px;
  }
}

@media screen and (max-width: 650px) {
  .contact_info_title {
    flex-grow: 0;
    width: 100%;
  }
}

.contact_info_name {
  flex-grow: 1.5;
}

@media screen and (max-width: 768px) {
  .contact_info_name {
    flex-grow: 1;
  }
}

@media screen and (max-width: 650px) {
  .contact_info_name {
    flex-grow: 0;
    width: 100%;
  }
}

@media screen and (max-width: 650px) {
  .contact_info_contact {
    flex-grow: 0;
    width: 100%;
  }
}

.contact_info_contact {
  flex-grow: 1;
}

.payment_aside {
  box-shadow: 0px 1.42048px 4.97166px rgba(0, 0, 0, 0.25);
  background-color: var(--c-background);
  padding: 53px 36px 40px 36px;
}

@media screen and (max-width: 768px) {
  .payment_aside {
    padding: 43px 26px 30px 26px;
  }
}

@media screen and (max-width: 650px) {
  .payment_aside {
    padding: 25px 15px 20px 15px;
  }
}

.payment_aside h2 {
  display: block;
  margin: 0px 0px 0px 0px;
  padding: 0px;
  font-size: 0.863rem;
}

.payment_aside h2 span {
  display: inline-block;
  background: var(--c-primary);
  color: var(--c-background-white);
  padding: 5px 12px 5px 12px;
}

.payment_aside_inputgroup label {
  margin-bottom: 0px !important;
  font-size: 0.863rem !important;
}

.payment_aside .radio_shadow + label {
  background-position: left top 4px !important;
}

.payment_aside h3 {
  font-size: 0.963rem;
  font-weight: bold;
  margin-bottom: 15px;
}

.payment_aside_table {
  padding: 0;
  border: none;
}

.payment_aside_table td {
  padding: 5px;
  border: none;
  text-align: left;
  font-size: 0.79rem;
  background-color: transparent !important;
}

.payment_aside_table td:nth-child(2n) {
  width: 50px;
  border: none;
  text-align: center;
}

.payment_aside_table td:last-child {
  border: none;
  text-align: right;
}

.payment_aside_table tr, .payment_aside_table td {
  box-shadow: none !important;
  border-radius: 0px !important;
}

.payment_aside_table_total td {
  border-top: 1px solid var(--c-txt) !important;
  font-size: 1rem;
  font-weight: bold;
}

.payment_aside_buttons {
  text-align: center;
  padding-top: 30px;
}

.payment_aside_check_row {
  display: flex;
  font-size: 0.7575rem;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5px;
}

.payment_aside_check_country {
  margin-left: 10px;
  margin-right: 10px;
  text-align: center;
  width: 50px;
}

.payment_aside_check_price {
  text-align: right;
  width: 70px;
}

.payment_aside_check_item {
  text-align: left;
  flex: 1;
  width: 160px;
}

.payment_aside_check_total {
  /* background-color: var(--c-txt);*/
  color: var(--c-txt-custom);
  border-radius: 5px;
  padding: 10px;
  padding-left: 0px;
  margin-top: 15px;
  font-weight: bold;
  font-size: 0.85rem;
  text-align: left;
  display: flex;
  justify-content: space-between;
}

.payment_aside_check_total_price {
  text-align: right;
  margin-left: 15px;
}

.payment_aside_check_row_wide {
  display: flex;
  font-size: 0.7575rem;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 5px;
  row-gap: 15px;
}

.payment_aside_bigtxt {
  font-size: 0.95rem !important;
}

.payment_aside_check_wide_item {
  flex-grow: 1;
}

.payment_aside_check_wide_info {
  flex-grow: 1;
  text-align: right;
}

.payment_aside_download p {
  text-align: center;
  font-size: 1.174rem;
}

.payment_aside_download {
  margin-bottom: 40px;
}

.booking_reference {
  background-color: var(--c-background-white);
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  /*border-radius: 70px;*/
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 37px 39px 38px 34px;
}

@media screen and (max-width: 650px) {
  .booking_reference {
    padding: 20px 20px 20px 18px;
  }
}

@media screen and (max-width: 400px) {
  .booking_reference {
    text-align: center;
    margin-bottom: 10px;
  }
}

.booking_reference h1, .booking_reference span {
  color: var(--c-txt);
  font-size: 1.625rem;
  display: block;
  font-weight: normal;
  margin-bottom: 0px;
}

@media screen and (max-width: 650px) {
  .booking_reference h1, .booking_reference span {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 400px) {
  .booking_reference h1, .booking_reference span {
    width: 100%;
  }
}

.booking_reference h1 {
  margin-right: 20px;
}

@media screen and (max-width: 650px) {
  .booking_reference h1 {
    margin-right: 0px;
  }
}

/* CHANGE BOOKING */
.change_booking_options {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 1240px) {
  .change_booking_options {
    flex-wrap: wrap;
  }
}

.change_booking_radio {
  padding: 0px 15px;
}

@media screen and (max-width: 690px) {
  .change_booking_radio {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 650px) {
  .change_booking_radio {
    padding: 0px 0px;
    width: 100%;
  }
}

.change_booking_options h2 {
  margin: 0;
  padding: 0px 20px;
  color: var(--c-primary);
}

@media screen and (max-width: 1240px) {
  .change_booking_options h2 {
    width: 100%;
    margin-bottom: 5px;
  }
}

@media screen and (max-width: 650px) {
  .change_booking_options h2 {
    padding: 0px 0px;
  }
}

.change_booking_radio label {
  margin-bottom: 0px !important;
}

/* refund */
.refund {
  background-color: var(--c-secondary);
  color: var(--c-txt-invert);
  border-radius: 34px;
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  padding: 0;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  font-size: 0.90rem;
  padding-left: 10px;
  padding-right: 10px;
  margin-top: 15px;
}

@media screen and (max-width: 650px) {
  .refund {
    padding-top: 10px;
  }
}

.refund_grid_header {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-template-rows: auto;
  gap: 0px 0px;
  grid-auto-flow: row;
  grid-template-areas: "refund_grid_col_t refund_grid_col_p refund_grid_col_tf refund_grid_col_rc refund_grid_col_tr";
}

@media screen and (max-width: 650px) {
  .refund_grid_header {
    display: none;
  }
}

.refund_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-template-rows: auto auto auto;
  gap: 0px 0px;
  grid-auto-flow: row;
  grid-template-areas: "refund_grid_flight refund_grid_flight refund_grid_flight refund_grid_flight refund_grid_flight" "refund_grid_col_t_r refund_grid_col_p_r refund_grid_col_tf_r refund_grid_col_rc_r refund_grid_col_tr_r";
}

@media screen and (max-width: 650px) {
  .refund_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-areas: "refund_grid_flight refund_grid_flight" "refund_grid_col_t refund_grid_col_t_r" "refund_grid_col_p refund_grid_col_p_r" "refund_grid_col_tf refund_grid_col_tf_r" "refund_grid_col_rc refund_grid_col_rc_r" "refund_grid_col_tr refund_grid_col_tr_r";
  }
}

.refund_grid_col_t {
  grid-area: refund_grid_col_t;
}

.refund_grid_col_p {
  grid-area: refund_grid_col_p;
}

.refund_grid_col_tf {
  grid-area: refund_grid_col_tf;
}

.refund_grid_col_rc {
  grid-area: refund_grid_col_rc;
}

.refund_grid_col_tr {
  grid-area: refund_grid_col_tr;
}

.refund_grid_flight {
  grid-area: refund_grid_flight;
}

.refund_grid_col_t_r {
  grid-area: refund_grid_col_t_r;
}

.refund_grid_col_p_r {
  grid-area: refund_grid_col_p_r;
}

.refund_grid_col_tf_r {
  grid-area: refund_grid_col_tf_r;
}

.refund_grid_col_rc_r {
  grid-area: refund_grid_col_rc_r;
}

.refund_grid_col_tr_r {
  grid-area: refund_grid_col_tr_r;
}

.refund_grid_col_vis {
  display: none;
}

@media screen and (max-width: 650px) {
  .refund_grid_col_vis {
    display: block !important;
  }
}

.refund_grid_col {
  text-align: left;
  color: var(--c-txt-custom);
  padding: 15px 5px;
}

@media screen and (max-width: 650px) {
  .refund_grid_col {
    padding: 5px 5px;
  }
}

.refund_grid_flight {
  background-color: var(--c-primary);
  padding: 5px 5px;
  color: var(--c-txt-custom);
  display: flex;
  align-items: center;
}

@media screen and (max-width: 650px) {
  .refund_grid_flight {
    padding: 5px 10px;
    margin-top: 10px;
    margin-bottom: 0px;
    justify-content: center;
  }
}

.refund_grid_flight svg {
  margin-left: 10px;
  margin-right: 10px;
}

.refund_grid_plane {
  fill: var(--c-txt-custom);
}

.refund_control {
  display: flex;
  justify-content: flex-end;
  padding: 24px;
}

.refund_control_wrap {
  display: inline-block;
  width: auto;
  background-color: var(--c-background);
  color: var(--c-txt);
  align-items: baseline;
  border-radius: 15px;
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  padding: 22px 8px  22px 28px;
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 650px) {
  .refund_control_wrap {
    flex-wrap: wrap;
    justify-content: center;
  }
}

.refund_control_wrap > div {
  font-weight: bold;
  margin-right: 20px;
}

@media screen and (max-width: 650px) {
  .refund_control_wrap > div {
    margin-right: 0px;
    width: 100%;
  }
}

.refund_control_wrap > div span {
  display: inline-block;
}

.refund_control_wrap button {
  margin-right: 20px;
}

@media screen and (max-width: 650px) {
  .refund_control_wrap button {
    margin-top: 20px;
  }
}

/* search filters */
.search_filters {
  background-color: var(--c-secondary);
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  border-radius: 70px;
  padding: 58px 45px  32px  38px;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .search_filters {
    padding: 35px 25px  20px  20px;
  }
}

@media screen and (max-width: 650px) {
  .search_filters {
    padding: 20px 35px  20px 35px;
    margin-bottom: 20px;
  }
}

.search_filters_invert {
  background-color: var(--c-secondary);
  color: var(--c-txt-invert);
  box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
  border-radius: 70px;
  padding: 58px 45px  32px  38px;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .search_filters_invert {
    padding: 35px 25px  20px  20px;
  }
}

@media screen and (max-width: 650px) {
  .search_filters_invert {
    padding: 20px 35px  20px 35px;
    margin-bottom: 20px;
  }
}

.search_filters_invert label {
  color: var(--c-txt-invert);
}

.search_filters_mid {
  max-width: 750px;
}

.search_filters_small {
  max-width: 640px;
  border-radius: 34px;
  padding: 21px 28px  21px  28px;
}

@media screen and (max-width: 768px) {
  .search_filters_small {
    padding: 21px 28px  21px  28px;
  }
}

@media screen and (max-width: 650px) {
  .search_filters_small {
    padding: 21px 28px  21px  28px;
    margin-bottom: 20px;
  }
}

.search_filters_left {
  margin-left: 0px;
}

.search_filters_row {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
}

.search_filters_inline {
  display: inline-block;
  width: auto;
}

@media screen and (max-width: 650px) {
  .search_filters_item {
    width: 100%;
  }
}

.search_filters_item input, .search_filters_item .form__selectBox, .search_filters_checkboxes label {
  margin-bottom: 0px !important;
}

.search_filters_item_f1 {
  flex-grow: 1;
  position: relative;
}

.search_filters_item_f2 {
  flex-grow: 2;
  position: relative;
}

.search_filters_item_f3 {
  flex-grow: 3;
  position: relative;
}

.search_filters_item_50p {
  width: calc(50% - 10px);
  position: relative;
}

@media screen and (max-width: 650px) {
  .search_filters_item_50p {
    width: 100%;
  }
}

.search_filters_buttons {
  text-align: center;
  padding-top: 10px;
}

.login__body {
  padding-bottom: 0px;
}

.login__header {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("./images/header_back.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (max-width: 580px) {
  .login__header {
    height: 90px;
  }
}

.login__logoBravo {
  max-width: 380px;
  width: 100%;
  height: auto;
}

.login__wrap {
  min-height: calc(100vh - 150px);
  padding: 10px 16px 10px 16px;
  background-image: url("./images/login_back.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 580px) {
  .login__wrap {
    min-height: calc(100vh - 90px);
  }
}

.login__wrap__mmb {
  min-height: calc(100vh - 150px);
  padding: 10px 16px 10px 16px;
  background-image: url("./images/mmb_login.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 580px) {
  .login__wrap__mmb {
    min-height: calc(100vh - 90px);
  }
}

.login__wrap__wec {
  min-height: calc(100vh - 150px);
  padding: 10px 16px 10px 16px;
  background-image: url("./images/wec_login.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 580px) {
  .login__wrap__wec {
    min-height: calc(100vh - 90px);
  }
}

.login__holder {
  width: 98%;
  max-width: 430px;
  margin-left: auto;
  margin-right: auto;
  padding: 68px 45px 80px 45px;
  border-radius: 170px;
  background: rgba(146, 195, 229, 0.43);
  box-shadow: 0px 3px 12px rgba(107, 107, 107, 0.25);
  backdrop-filter: blur(21px);
}

@media screen and (max-width: 580px) {
  .login__holder {
    padding: 58px 45px 60px 45px;
  }
}

.login__logo {
  max-width: 300px;
  width: 100%;
  height: 115px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
  background-image: var(--i-logo);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width: 580px) {
  .login__logo {
    margin-bottom: 10px;
  }
}

.login__logo__default {
  max-width: 300px;
  width: 100%;
  height: 115px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
  background-image: var(--i-bravo);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width: 580px) {
  .login__logo__default {
    margin-bottom: 10px;
  }
}

.login__form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  /*margin-top: 20px;*/
  position: relative;
}

.login__form:first-child {
  margin-top: 0px;
}

.login__form__label {
  width: 120px;
  color: var(--c-txt-white);
  font-size: 1.0625rem;
  font-family: var(--f-header);
  font-weight: bold;
}

@media screen and (max-width: 580px) {
  .login__form__label {
    width: 100%;
    margin-bottom: 10px;
  }
}

.login__form__input {
  flex: 1;
  margin-bottom: 0px;
}

@media screen and (max-width: 580px) {
  .login__form__input {
    width: 100%;
    flex: none;
  }
}

/*
.login__form__button {
  color: var(--c-button-txt);
  font-size: 1rem;
  font-weight: bold;
  background: var(--c-button);
    border: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding: 6px 50px;
    margin-top: 10px;
    cursor: pointer;
    width:100%;
    padding:20px;
}
.login__form__button:hover {
    transition: all 0.3s ease;
    background-color: var(--c-button-hover);
    color: var(--c-button);
    box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}
    */
.login__form__button {
  color: white;
  font-size: 1rem;
  font-weight: bold;
  background: var(--c-secondary);
  border: none;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 6px 50px;
  margin-top: 10px;
  cursor: pointer;
  width: 100%;
  padding: 20px;
}

.login__form__button:hover {
  transition: all 0.3s ease;
  background-color: var(--c-button);
  color: var(--c-button-txt);
  box-shadow: 0px 4px 11px rgba(97, 97, 97, 0.35);
}

.mkb_s1_fromHolder {
  background-color: var(--c-background-white);
  padding: 45px 25px 0px 25px;
  border-radius: 0px;
  box-shadow: 0px 3.77803px 23px rgba(104, 104, 104, 0.25);
  border-top: 4px solid var(--c-primary);
}

.mkb_s1_fromHolder_dates {
  display: flex;
}

.mkb_s1_fromHolder_date {
  width: calc(50% - 8px);
  margin-right: 16px;
}

.mkb_s1_fromHolder_date:last-child {
  margin-right: 0;
}

.mkb_s1_fromHolder_peoples {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 1fr;
  grid-auto-rows: 1fr;
  gap: 15px;
  margin-bottom: 20px;
}

.mkb_s_holder {
  margin-right: var(--marginGrid);
}

@media screen and (max-width: 860px) {
  .mkb_s_holder {
    margin-bottom: 20px;
    margin-right: 0px;
  }
}

.mkb_reservationHolder {
  margin-right: 0px;
}

@media screen and (max-width: 650px) {
  .mkb_reservationHolder {
    margin-bottom: 0px;
  }
}

/* SEAT PATTERN START */
.sp__top {
  margin-top: 30px;
  width: 100%;
}

.sp__top h2 {
  margin: 0;
  /*text-transform: uppercase;*/
  display: inline-block;
  width: auto;
  padding: 0px 20px 0px 0px;
  color: var(--c-txt);
  margin-bottom: 5px;
}

@media screen and (max-width: 1240px) {
  .sp__top h2 {
    width: 100%;
    margin-bottom: 5px;
  }
}

@media screen and (max-width: 650px) {
  .sp__top h2 {
    padding: 0px 0px;
  }
}

.sp__top p {
  display: block;
  padding-top: 10px;
  margin: 0px;
  margin-bottom: 20px;
}

.sp__widget {
  display: flex;
  align-items: flex-start;
}

@media screen and (max-width: 1240px) {
  .sp__widget {
    flex-wrap: wrap;
  }
}

.sp__widget_passenger {
  width: 288px;
  margin-right: 30px;
  order: 1;
}

@media screen and (max-width: 1240px) {
  .sp__widget_passenger {
    width: 100%;
    margin-right: 0px;
  }
}

.sp__widget_plane {
  flex: 1;
  order: 2;
}

@media screen and (max-width: 1065px) {
  .sp__widget_plane {
    width: 100%;
    margin-bottom: 20px;
    order: 3;
  }
}

.sp__widget_legend {
  width: 100%;
  padding: 28px;
  margin-top: 20px;
}

@media screen and (max-width: 1065px) {
  .sp__widget_legend {
    width: 100%;
    margin-bottom: 20px;
    margin-left: 0px;
    order: 2;
  }
}

.sp__widget_passenger {
  display: flex;
  flex-wrap: wrap;
  gap: 0px 20px;
  /*justify-content: center;*/
}

.sp__widget_passenger h3 {
  width: 100%;
  margin: 0px;
}

.sp__passenger_ow {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 375px;
  margin-top: 5px;
  cursor: pointer;
}

.sp__passenger_ow:first-child {
  margin-top: 0px;
}

.sp__passenger_selected_ow {
  outline: 2px solid var(--c-primary);
}

.sp__passenger_ns_ow {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  background-color: #fff;
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 288px;
  margin-top: 5px;
  cursor: pointer;
}

.sp__passenger_ns_ow:first-child {
  margin-top: 0px;
}

.sp__passenger_not_selected_ow {
  border: none !important;
}

.sp__passenger_infant_ow {
  cursor: auto;
  position: relative;
  opacity: 0.6;
}

.sp__passenger_infant_ow::before {
  content: "";
  height: 5px;
  width: 1px;
  border-right: 2px dashed var(--c-txt);
  position: absolute;
  top: -5px;
  left: calc(50% - 3px);
}

@media screen and (min-width: 952px) and (max-width: 1240px) {
  .sp__passenger_infant_ow::before {
    display: none;
  }
}

@media screen and (min-width: 628px) and (max-width: 951px) {
  .sp__passenger_infant_ow::before {
    transform: rotate(90deg);
    top: calc(50% - 8px);
    left: -11px;
  }
}

.sp__passenger_rt {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  background-color: #fff;
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 288px;
  margin-top: 5px;
  cursor: pointer;
}

.sp__passenger_rt:first-child {
  margin-top: 0px;
}

.sp__passenger_selected_rt {
  border: 2px solid var(--c-primary);
}

.sp__passenger_infant_rt {
  cursor: auto;
  position: relative;
  opacity: 0.6;
}

.sp__passenger_infant_rt::before {
  content: "";
  height: 7px;
  width: 1px;
  border-right: 2px dashed var(--c-txt);
  position: absolute;
  top: -7px;
  left: calc(50% - 3px);
}

@media screen and (min-width: 952px) and (max-width: 1240px) {
  .sp__passenger_infant_rt::before {
    display: none;
  }
}

@media screen and (min-width: 628px) and (max-width: 951px) {
  .sp__passenger_infant_rt::before {
    transform: rotate(90deg);
    top: calc(50% - 8px);
    left: -11px;
  }
}

.sp__passenger_infant .sp__passenger_btnRemove {
  display: none;
}

.sp__passanger_initials {
  width: 31px;
  height: 31px;
  /*border-radius: 50%;*/
  background-color: var(--c-txt);
  filter: drop-shadow(0px 1.57422px 1.57422px rgba(126, 126, 126, 0.25));
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  color: #fff;
  font-size: 0.8rem;
  font-weight: bold;
}

.sp__passanger_info {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  flex: 1;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.sp__passanger_info > div {
  margin-right: 20px;
  width: 160px;
}

.sp__passanger_info_bp {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  flex: 1;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 30px;
  padding-right: 30px;
}

.sp__passanger_info_bp > div {
  /*margin-right: 20px;
    width: 160px;*/
}

.sp__passenger_seat_ow {
  color: #505356;
  width: 10%;
}

.sp__passanger_seat_ow span {
  font-weight: bold;
}

.sp__passenger_seat_rt {
  color: #505356;
  width: 10%;
}

.sp__passanger_seat_rt span {
  font-weight: bold;
}

.sp__passenger_btnRemove {
  width: 20px;
  height: 20px;
  border: none;
  background-image: url("./images/close.svg");
  background-size: 8px 8px;
  background-position: center center;
  background-repeat: no-repeat;
}

.sp__passenger_btnHolder {
  width: 100%;
  margin-top: 20px;
  text-align: center;
}

.sp_s {
  width: 43px;
  height: 43px;
  border: none;
  border-radius: 10px;
  text-decoration: none;
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  /*color: #A9AAAD;*/
  padding-top: 9px;
  color: #bab8d5;
  font-size: 1.5rem;
  font-weight: 700;
  /*padding: 8px;*/
}

@media screen and (max-width: 810px) {
  .sp_s {
    width: 25px;
    height: 25px;
    background-size: 60%;
    border-radius: 5px;
    font-size: 0.8rem;
    padding-top: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp_s {
    width: 18px;
    height: 18px;
    background-size: 60%;
    border-radius: 5px;
    font-size: 0.7rem;
    padding-top: 3px;
  }
}

.sp__s_available_ow {
  background-color: #CDECC6;
}

.sp__s_available_rt {
  background-color: #CDECC6;
}

.sp__s_premium_legend {
  background-color: #25215D;
}

.sp__s_exit_legend {
  background-color: #5448F0;
}

.sp__s_available_legend {
  background-color: #CDECC6;
}

.sp__s_booked {
  background-color: transparent;
  border: 1px solid var(--c-txt);
}

.sp__s_selected_ow {
  background-color: #F8F4FE !important;
  background-image: url("./images/s_selected.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border: 4px solid var(--c-txt);
}

.sp__s_selected_rt {
  background-color: #F8F4FE !important;
  background-image: url("./images/s_selected.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border: 4px solid var(--c-txt);
}

.sp__s_unavailable {
  background-color: #A9AAAD;
  background-image: url("./images/s_unavailable.svg");
  background-position: center center;
  background-repeat: no-repeat;
}

.sp__s_exit {
  background-color: #DAEFEA;
  background-image: url("./images/s_exit.svg");
  background-position: center center;
  background-repeat: no-repeat;
}

.sp__s_galleys {
  background-color: #FFCB7C;
  background-image: url("./images/s_galleys.svg");
  background-position: center center;
  background-repeat: no-repeat;
}

.sp__s_wc {
  background-color: #D9D9D9;
  background-image: url("./images/s_wc.svg");
  background-position: center center;
  background-repeat: no-repeat;
}

.sp__s_wingRight {
  background-color: transparent;
  background-image: url("./images/s_wing_right.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 0px;
}

.sp__s_wingLeft {
  background-color: transparent;
  background-image: url("./images/s_wing_left.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 0px;
}

.sp__widget_legend ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  gap: 10px 0px;
  flex-direction: column;
  align-items: flex-start;
}

@media screen and (max-width: 1065px) {
  .sp__widget_legend ul {
    /*flex-direction: row;*/
    gap: 10px 10px;
    flex-wrap: wrap;
    /*justify-content: center;*/
  }
  .sp__widget_legend ul .sp_s {
    width: 25px;
    height: 25px;
    background-size: 60%;
    border-radius: 5px;
    font-size: 0.8rem;
  }
}

.sp__widget_legend ul li {
  display: flex;
  align-items: center;
  gap: 0px 10px;
  color: var(--c-txt);
}

.sp__plane {
  width: 100%;
  max-width: 760px;
  background: var(--c-background-ssr-plane);
  filter: drop-shadow(0px 5px 15px rgba(0, 0, 0, 0.15));
  padding: 40px 15px 60px 15px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 28px;
}

@media screen and (max-width: 560px) {
  .sp__plane {
    padding: 20px 10px 60px 10px;
    margin-top: 0px;
  }
}

.sp__plane_cockpit {
  width: calc(100% - 80px);
  /*margin: 0px auto 40px auto;*/
  display: flex;
  gap: 0px 40px;
  border-radius: 280px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
}

@media screen and (max-width: 810px) {
  .sp__plane_cockpit {
    width: calc(100% - 30px);
  }
}

@media screen and (max-width: 560px) {
  .sp__plane_cockpit {
    width: calc(100% - 60px);
  }
}

@media screen and (max-width: 420px) {
  .sp__plane_cockpit {
    width: calc(100% - 50px);
  }
}

@media screen and (max-width: 350px) {
  .sp__plane_cockpit {
    width: calc(100% - 20px);
  }
}

.sp__plane_cockpitLeft {
  background-color: #D9D9D9;
  height: 255px;
  flex: 1;
  border-top-right-radius: 0px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
  overflow: hidden;
  position: relative;
}

@media screen and (max-width: 560px) {
  .sp__plane_cockpitLeft {
    height: 200px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_cockpitLeft {
    height: 120px;
  }
}

.sp__plane_cockpitLeft::after {
  content: "";
  background-color: #FFF;
  position: absolute;
  width: 112%;
  height: 100%;
  border-top-right-radius: 0px;
  border-top-left-radius: 100%;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
  left: -7px;
  top: 60px;
}

@media screen and (max-width: 460px) {
  .sp__plane_cockpitLeft::after {
    top: 40px;
  }
}

.sp__plane_cockpitRight {
  background-color: #D9D9D9;
  height: 255px;
  flex: 1;
  border-top-right-radius: 100%;
  border-top-left-radius: 0px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
  overflow: hidden;
  position: relative;
}

@media screen and (max-width: 560px) {
  .sp__plane_cockpitRight {
    height: 200px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_cockpitRight {
    height: 120px;
  }
}

.sp__plane_cockpitRight::after {
  content: "";
  background-color: #FFF;
  position: absolute;
  width: 112%;
  height: 100%;
  border-top-right-radius: 100%;
  border-top-left-radius: 0px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
  right: -7px;
  top: 60px;
}

@media screen and (max-width: 460px) {
  .sp__plane_cockpitRight::after {
    top: 40px;
  }
}

.sp__plane_itinerary_wrap {
  max-width: 270px;
  /*box-shadow: 0px 1.87126px 6.54943px rgba(0, 0, 0, 0.25);
  border-radius: 65.4942px;*/
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 23px 25px 15px 25px;
  position: relative;
  margin-top: 0px;
  font-size: 1.5rem;
  font-weight: 600;
}

@media screen and (max-width: 650px) {
  .sp__plane_itinerary_wrap {
    max-width: 204px;
    padding: 13px 15px 8px 15px;
    margin-top: 0px;
  }
}

.sp__plane_itinerary {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  flex-wrap: wrap;
}

.sp__plane_itinerary svg {
  margin: 0px 10px;
}

@media screen and (max-width: 650px) {
  .sp__plane_itinerary svg {
    width: 40px;
  }
}

.sp__plane_itinerary_arrow {
  fill: var(--c-arrow);
}

.sp__plane_itinerary_date {
  width: 100%;
  text-align: center;
  font-weight: 600;
  display: block;
  margin-top: 20px;
  font-size: 1rem;
}

.sp__plane_seats {
  margin-top: 20px;
  display: grid;
  grid-template-rows: auto;
  justify-content: center;
  align-items: center;
  gap: 5px;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats {
    margin-top: 60px;
  }
}

@media screen and (max-width: 560px) {
  .sp__plane_seats {
    margin-top: 30px;
  }
}

.sp__plane_seats_c14 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c14 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c14 {
    gap: 2px;
  }
}

.sp__plane_seats_c13 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c13 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c13 {
    gap: 2px;
  }
}

.sp__plane_seats_c12 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c12 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c12 {
    gap: 2px;
  }
}

.sp__plane_seats_c11 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c11 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c11 {
    gap: 2px;
  }
}

.sp__plane_seats_c10 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c10 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c10 {
    gap: 2px;
  }
}

.sp__plane_seats_c9 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c9 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c9 {
    gap: 2px;
  }
}

.sp__plane_seats_c8 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c8 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c8 {
    gap: 2px;
  }
}

.sp__plane_seats_c7 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c7 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c7 {
    gap: 2px;
  }
}

.sp__plane_seats_c6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c6 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c6 {
    gap: 2px;
  }
}

.sp__plane_seats_c5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c5 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c5 {
    gap: 2px;
  }
}

.sp__plane_seats_c4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c4 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c4 {
    gap: 2px;
  }
}

.sp__plane_seats_c3 {
  grid-template-columns: 1fr 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c3 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c3 {
    gap: 2px;
  }
}

.sp__plane_seats_c2 {
  grid-template-columns: 1fr 1fr;
}

@media screen and (max-width: 810px) {
  .sp__plane_seats_c2 {
    gap: 5px;
  }
}

@media screen and (max-width: 460px) {
  .sp__plane_seats_c2 {
    gap: 2px;
  }
}

/* SEAT PATTERN STOP */
.sp__passenger_ow_transit {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  background-color: #fff;
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 288px;
  margin-top: 5px;
  cursor: pointer;
}

.sp__passenger_ow_transit:first-child {
  margin-top: 0px;
}

.sp__passenger_selected_ow_transit {
  border: 2px solid var(--c-primary);
}

.sp__passenger_infant_ow_transit {
  cursor: auto;
  position: relative;
  opacity: 0.6;
}

.sp__passenger_infant_ow_transit::before {
  content: "";
  height: 7px;
  width: 1px;
  border-right: 2px dashed var(--c-txt);
  position: absolute;
  top: -7px;
  left: calc(50% - 3px);
}

@media screen and (min-width: 952px) and (max-width: 1240px) {
  .sp__passenger_infant_ow_transit::before {
    display: none;
  }
}

@media screen and (min-width: 628px) and (max-width: 951px) {
  .sp__passenger_infant_ow_transit::before {
    transform: rotate(90deg);
    top: calc(50% - 8px);
    left: -11px;
  }
}

.sp__passenger_seat_ow_transit {
  color: #505356;
  width: 10%;
}

.sp__passanger_seat_ow_transit span {
  font-weight: bold;
}

.sp__s_available_ow_transit {
  background-color: #CDECC6;
}

.sp__s_selected_ow_transit {
  background-color: #F8F4FE !important;
  background-image: url("./images/s_selected.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border: 4px solid var(--c-txt);
}

/* SEAT PATTERN STOP */
.sp__passenger_rt_transit {
  box-shadow: 0px 0.93276px 3.26465px rgba(0, 0, 0, 0.25);
  background-color: #fff;
  border: none;
  /*border-radius: 33px;*/
  padding: 10px 20px 9px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 288px;
  margin-top: 5px;
  cursor: pointer;
}

.sp__passenger_rt_transit:first-child {
  margin-top: 0px;
}

.sp__passenger_selected_rt_transit {
  border: 4px solid var(--c-primary);
}

.sp__passenger_infant_rt_transit {
  cursor: auto;
  position: relative;
  opacity: 0.6;
}

.sp__passenger_infant_rt_transit::before {
  content: "";
  height: 7px;
  width: 1px;
  border-right: 2px dashed var(--c-txt);
  position: absolute;
  top: -7px;
  left: calc(50% - 3px);
}

@media screen and (min-width: 952px) and (max-width: 1240px) {
  .sp__passenger_infant_rt_transit::before {
    display: none;
  }
}

@media screen and (min-width: 628px) and (max-width: 951px) {
  .sp__passenger_infant_rt_transit::before {
    transform: rotate(90deg);
    top: calc(50% - 8px);
    left: -11px;
  }
}

.sp__passenger_seat_rt_transit {
  color: #505356;
  width: 10%;
}

.sp__passanger_seat_rt_transit span {
  font-weight: bold;
}

.sp__s_available_rt_transit {
  background-color: #CDECC6;
}

.sp__s_selected_rt_transit {
  background-color: #F8F4FE !important;
  background-image: url("./images/s_selected.svg");
  background-position: center center;
  background-repeat: no-repeat;
  border: 4px solid var(--c-txt);
}

.sp_widget_width {
  width: 100%;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .sp_widget_width {
    width: 50%;
  }
}
