/*!*********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/lib/index.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./cartridges/app_comporte_base/cartridge/client/default/scss/app.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
@keyframes gradient-slide {
  0% {
    background-position: 100% 50%;
  }
  to {
    background-position: 0% 50%;
  }
}
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.ttf?kn1jcd") format("truetype"), url("../fonts/icomoon.woff?kn1jcd") format("woff"), url("../fonts/icomoon.svg?kn1jcd#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Beyond";
  src: url("../fonts/beyond_the_mountains.otf?kn1jcd") format("truetype"), url("../fonts/beyond_the_mountains.ttf?kn1jcd") format("opentype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
i {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-priority:before {
  content: "\e93f";
}

.icon-arrow-down:before {
  content: "\e900";
}

.icon-bus:before {
  content: "\e901";
}

.icon-calendar:before {
  content: "\e902";
}

.icon-cart:before {
  content: "\e903";
}

.icon-destination:before {
  content: "\e904";
}

.icon-facebook:before {
  content: "\e905";
}

.icon-instagram:before {
  content: "\e906";
}

.icon-linkedin:before {
  content: "\e907";
}

.icon-menu:before {
  content: "\e908";
}

.icon-origin:before {
  content: "\e909";
}

.icon-pay-hand:before {
  content: "\e90a";
}

.icon-percent:before {
  content: "\e90b";
}

.icon-shield:before {
  content: "\e90c";
}

.icon-lightning:before {
  content: "\e90d";
}

.icon-user:before {
  content: "\e90e";
}

.icon-acessibility:before {
  content: "\e90f";
}

.icon-explore:before {
  content: "\e910";
}

.icon-wifi:before {
  content: "\e911";
}

.icon-switch:before {
  content: "\e912";
}

.icon-close:before {
  content: "\e913";
}

.icon-logout:before {
  content: "\e914";
}

.icon-path:before {
  content: "\e915";
}

.icon-edit:before {
  content: "\e916";
}

.icon-title-detail:before {
  content: "\e917";
}

.icon-paymentslip:before {
  content: "\e918";
}

.icon-card:before {
  content: "\e919";
}

.icon-paypal:before {
  content: "\e91a";
}

.icon-share:before {
  content: "\e91b";
}

.icon-download:before {
  content: "\e91c";
}

.icon-Groupedcloud:before {
  content: "\e91d";
}

.icon-bullet:before {
  content: "\e91e";
}

.icon-atention:before {
  content: "\e91f";
}

.icon-seat1:before {
  content: "\e920";
}

.icon-slider-arrow:before {
  content: "\e921";
}

.icon-savings:before {
  content: "\e922";
}

.icon-twitter:before {
  content: "\e923";
}

.icon-arrow_full:before {
  content: "\e924";
}

.icon-information:before {
  content: "\e925";
}

.icon-tiktok:before {
  content: "\e926";
}

.icon-youtube:before {
  content: "\e927";
}

.icon-clock2:before {
  content: "\e928";
}

.icon-up-arrow:before {
  content: "\e929";
}

.icon-clock:before {
  content: "\e92a";
}

.icon-document:before {
  content: "\e92b";
}

.icon-secure:before {
  content: "\e92c";
}

.icon-down-arrow:before {
  content: "\e92d";
}

.icon-search:before {
  content: "\e92e";
}

.icon-arrow-divider:before {
  content: "\e92f";
}

.icon-chat:before {
  content: "\e930";
}

.icon-side-arrow:before {
  content: "\e931";
}

.icon-lock-alt:before {
  content: "\e932";
}

.icon-copy:before {
  content: "\e933";
}

.icon-thumb-down:before {
  content: "\e934";
}

.icon-close-modal:before {
  content: "\e935";
}

.icon-star:before {
  content: "\e936";
}

.icon-pix:before {
  content: "\e937";
}

.icon-filter:before {
  content: "\e938";
}

.icon-sort-down:before {
  content: "\e939";
}

.icon-bus-connection:before {
  content: "\e93a";
}

.icon-bathroom:before {
  content: "\e93b";
}

.icon-user-check:before {
  content: "\e93c";
}

.icon-person-waiting:before {
  content: "\e93d";
}

.icon-trashcan:before {
  content: "\e945";
}

.icon-seat:before {
  content: "\e946";
}

.icon-forest-tree:before {
  content: "\e93e";
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-family: inherit;
  vertical-align: baseline;
}

/* remember to define focus styles! */
:focus {
  outline: 0;
}

body {
  line-height: 1;
  color: black;
  background: white;
}

ol, ul {
  list-style: none;
}

a,
a:hover {
  text-decoration: none;
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
  -webkit-appearance: inherit;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: separate;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
}

blockquote, q {
  quotes: "" "";
}

*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Montserrat", sans-serif;
  background: #f6f6f6;
}

button:focus {
  outline: none;
}

input, select, textarea {
  box-shadow: none;
}

.hidden__block {
  display: none !important;
}

.invisible__but__interactable {
  height: 0 !important;
  min-height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -webkit-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -moz-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -ms-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -o-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
}

.disabled {
  cursor: default;
  opacity: 0.8;
  pointer-events: none;
}

.mt-6 {
  margin-top: 4.5rem;
}

.loaderSpin {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  right: 32px;
  border: 2px solid #f3f3f3;
  border-radius: 50%;
  border-top: 2px solid #55368b;
  width: 20px;
  height: 20px;
  -webkit-animation: customSpinner 2s linear infinite; /* Safari */
  animation: customSpinner 2s linear infinite;
}

.pdCompanyLogos {
  padding: 30px 0;
}
.pdCompanyLogos > .experience-mainRegion {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.pdCompanyLogos .compIcon {
  max-width: 140px;
}
.pdCompanyLogos .compIcon img {
  max-width: 100%;
}

/* Safari */
@-webkit-keyframes customSpinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes customSpinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media (max-width: 800px) {
  .is_desk {
    display: none !important;
  }
}
@media (min-width: 800px) {
  .container {
    max-width: 1080px;
  }
  .is_mobile {
    display: none !important;
  }
}
@media (min-width: 1620px) {
  .container {
    max-width: 1280px;
  }
}
.isMobile {
  display: block;
}

.isDesktop {
  display: none;
}

@media (min-width: 768px) {
  .isMobile {
    display: none;
  }
  .isDesktop {
    display: block;
  }
}
@keyframes gradient-slide {
  0% {
    background-position: 100% 50%;
  }
  to {
    background-position: 0% 50%;
  }
}
.cmp-ico-seat {
  font-family: "cmpicons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-senha {
  display: flex;
}

.modal-resposta {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 1rem;
}

.bus-preview-modal .modal-body {
  padding: 0.5rem 24px;
}

.bus-preview-modal .modal-body .bus-map-seat,
.listTripsRoot .bus-map-ajax .bus-map-seat {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  max-height: unset;
  margin-top: 0;
  padding: 16px;
  overflow: hidden;
}

.bus-preview-modal .modal-body .bus-map-seat > .bus-front {
  position: relative;
  top: 10px;
  display: block;
  margin-left: 5px;
}

.bus-preview-modal .modal-body .bus-map-seat > .bus-front > img,
.listTripsRoot .bus-map-ajax > .bus-front > img {
  max-width: 100%;
  height: auto;
}

.bus-preview-modal .modal-body .bus-map-seat > .map-bus,
.listTripsRoot .bus-map-ajax > .map-bus {
  width: 100%;
  padding: 20px 2px 0;
}

.bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat,
.listTripsRoot .bus-map-ajax .bus-map-seat > .map-bus .inner-seat {
  width: 43px;
  height: 57px;
  background: #ffffff;
  border: 2px solid #55368B;
  border-radius: 4px;
}

.bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat:hover {
  cursor: unset;
}

.bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat > ico {
  font-size: 40px;
}

.bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat > .seat-number,
.listTripsRoot .bus-map-ajax .map-bus .inner-seat > .seat-number {
  font-size: 15px;
}

.bus-map-seat {
  display: flex;
  justify-content: center;
  width: 100%;
  max-height: 354px;
  padding: 0 0 10%;
  overflow-y: scroll;
}

.bus-map-seat::-webkit-scrollbar {
  width: 0;
}

.bus-map-seat > .bus-front {
  position: absolute;
  top: -4px;
  display: none;
  margin-left: 2px;
}

@media all and (-ms-high-contrast: none) {
  .bus-map-seat > .bus-front {
    top: -6px;
    margin-left: -24px;
  }
}
.bus-map-seat > .bus-front > img {
  width: auto;
  height: 118px;
}

.bus-map-seat > .map-bus {
  height: 100%;
  padding: 2px;
}

.bus-map-seat > .map-bus .row-container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-top: 7px;
}

.bus-map-seat > .map-bus .outer-seat {
  padding: 0;
  background-color: transparent;
  border: none;
}

.bus-map-seat > .map-bus .outer-seat:focus {
  outline: 2px solid #F9BF2D;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat {
  width: 38px;
  height: 40px;
  margin-right: 8px;
  color: #2e4974;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat:hover {
  cursor: pointer;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat::before {
  line-height: 0;
  font-size: 40px;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat ico {
  position: relative;
  top: -51px;
  font-size: 43px;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat > .seat-number {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #55368B;
  line-height: 50px;
  z-index: 1;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.occuped > .seat-number {
  color: #A1A1A1;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.star-selected {
  color: #ffffff;
  background: #F8A629;
  border-color: #F47221;
}
.bus-map-seat > .map-bus .outer-seat .inner-seat.star-selected > .seat-number {
  color: #ffffff;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.occuped,
.bus-map-seat > .map-bus .outer-seat .inner-seat.occuped:hover {
  color: #A1A1A1;
  background: #f6f6f6;
  border-color: #A1A1A1;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.selected,
.bus-map-seat > .map-bus .outer-seat .inner-seat.selected:hover {
  color: #ffffff;
  background: #F8A629;
  border-color: #F47221;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.occuped.selected ico {
  color: #F9BF2D;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.occuped.selected .seat-number {
  color: #ffffff;
}

.bus-map-seat > .map-bus .outer-seat .inner-seat.star-selected {
  color: #ffffff;
  background: #F8A629;
  border-color: #F47221;
}
.bus-map-seat > .map-bus .outer-seat .inner-seat.star-selected > .seat-number {
  color: #ffffff;
}

.bus-map-seat > .map-bus .hall {
  width: 43px;
  height: 57px;
  margin: 0;
  margin-top: -5px;
  margin-right: 8px;
  border-radius: 9px;
  background: #ecebec;
  z-index: -1;
}

@media screen and (min-width: 991px) {
  .bus-map-seat {
    max-height: none;
    margin-top: 106px;
    overflow: hidden;
  }
  .bus-map-seat > .map-bus {
    width: 225px;
    padding: 1.5rem 0.5rem 0.5rem;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
  }
  .bus-map-seat > .bus-front {
    display: block;
  }
}
[data-js=seat-template] {
  display: none;
}

[data-js="data-js=inline-hall-template"] {
  display: none;
}

[data-js=row-container-template] {
  display: none;
}

.availability__list {
  text-align: justify;
}

.availability__item {
  display: inline-block;
}
.availability__item span.text--isSmall {
  color: #000;
}

.availability__square {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  margin-right: 4px;
  border: 1px solid;
  border-radius: 4px;
  vertical-align: middle;
}

.availability__square--isUnavailable {
  background: #ecebec;
  border: 2px solid #A1A1A1;
}

.availability__square--isAvailable {
  border: 2px solid #55368B;
}

.availability__square--isSelected {
  background: #F8A629;
  border: 2px solid #F47221;
}

.seatMap__back {
  border-bottom: 1px solid #f6f6f6;
  padding: 16px;
}

.seatMap__link {
  color: #F47221;
}

.seatMap__info,
.seatMap__info-ajax {
  position: fixed;
  bottom: 0;
  text-align: justify;
}
.seatMap__info::after,
.seatMap__info-ajax::after {
  content: "";
  width: 100%;
  display: inline-block;
}
.seatMap__info,
.seatMap__info-ajax {
  width: 100%;
  padding: 24px;
  background: #ffffff;
  z-index: 10;
}

.seatMap__info-ajax {
  position: static;
  padding: 16px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.seatMap__info-ajax .text--isBold {
  margin-top: 4px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}

.seatMap__info__title {
  font-size: 0.625rem;
}

/**
** UPSELL All
**/
#upsellWrapper .modal-content {
  margin: 0 auto;
  padding: 2rem 2rem 0 2rem;
  padding: 0.5rem;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  z-index: 100;
  background: linear-gradient(180deg, #56368A 0%, #F47221 100%);
  border-radius: 40px;
  min-height: 33.2rem;
}
#upsellWrapper .modal-content .modal-body {
  padding: 0 !important;
}
#upsellWrapper .modal-content .modal-body .right-box {
  min-width: 10rem;
  background-color: #ffffff;
  border-radius: 40px;
  position: absolute;
  right: 1.5rem;
  padding: 1.6rem;
}
#upsellWrapper .modal-content .modal-body .right-box img {
  max-width: 6rem;
  margin: 0.5rem 0;
}
#upsellWrapper .modal-content .modal-body .right-box .btn__noUpsell {
  padding: 16px;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #7C7C7C;
  font-weight: 600;
  min-width: 100%;
  background: rgba(0, 0, 0, 0);
}
#upsellWrapper .modal-content .modal-body .right-box .btn__confirm__upgrade {
  min-width: 100%;
  max-height: 3.5rem;
  height: 3.5rem;
}

.upsell__box {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.upsell__header {
  grid-area: header;
  margin: 0 auto;
}

.upsell__title {
  padding-bottom: 4px;
  text-align: center;
  font-size: 2.75rem;
  color: #ffffff;
  font-weight: bold;
  line-height: 1.2;
}

.upsell__subtitle {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #303030;
  line-height: 1.2;
}

.upsell__classes {
  grid-area: classes;
  display: flex;
}

.upsell__class {
  width: auto;
  max-width: 330px;
  padding: 8px 16px;
  margin: 0 auto;
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  color: #55368B;
  font-weight: bold;
  text-align: center;
  font-size: 1rem;
}

.upsell__arrow {
  height: 100%;
}
.upsell__arrow:before {
  content: "\e915";
  font-family: "icomoon";
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #F8A629;
}

.upsell__text {
  display: block;
  padding-top: 8px;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  font-weight: bold;
  color: #F8A629;
  text-align: center;
}

.upsell__selected {
  border-right: 1px solid #E0E0E0;
}

.upsell__selected .features p, .upsell__upgrade .features p {
  color: #000;
  margin: 0.5rem 0;
  font-weight: 600;
  font-size: 0.8rem;
}

.upsell__info {
  grid-area: info;
}

.upsell__info_wrap {
  display: flex;
  flex-direction: column;
  margin: 32px auto;
  padding: 16px;
  border: solid 1px #ebebeb;
  border-radius: 4px;
}

.upsell__info-text {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  line-height: 1.2;
  color: #303030;
}

.upsell__variationPrice {
  width: 100%;
  padding: 0.5rem 0;
  font-size: 26px;
  font-size: calc(26 * 0.0625)rem;
  font-weight: bold;
  color: #55368B;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  text-align: center;
}

.btn__confirm__upgrade {
  width: 212px;
  margin: 0 auto;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  font-weight: bold;
  color: #ffffff;
  background: #55368B;
  border: 1px solid #55368B;
  box-sizing: border-box;
  border-radius: 114px;
}
.btn__confirm__upgrade p, .btn__confirm__upgrade span {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
}
.btn__confirm__upgrade span {
  white-space: normal;
}

.upsell__footer {
  display: flex;
  justify-content: space-between;
  padding: 20px;
  gap: 16px;
  margin: 0 -16px -16px;
  background: #ffffff;
  box-shadow: 0px -4px 20px rgba(0, 0, 0, 0.15);
}
.upsell__footer .btn__upsellReturn {
  padding: 16px;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #7C7C7C;
  font-weight: 600;
  background: #ffffff;
  border: 1px solid #7C7C7C;
  box-sizing: border-box;
  border-radius: 124px;
}
.upsell__footer .btn__noUpsell {
  font-weight: 600;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  background: #F8A629;
  border: 1px solid #F8A629;
  box-sizing: border-box;
  border-radius: 124px;
}

.abandonedCart .ticket__progress {
  margin-top: 16px;
}
.abandonedCart .ticket__progress .ticket__card .ticket__header {
  display: none;
}

.busmap {
  width: 100%;
}

.busmap__infoContainer {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.busmap__infoContainer--title {
  display: none;
}

.busmap__infoContainer--description {
  position: relative;
  display: flex;
  flex-direction: column;
  height: max-content;
  gap: 40px;
  padding-left: 32px;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.busmap__connection {
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 46px;
}
@media (max-width: 1620px) {
  .busmap__connection {
    flex-direction: row;
    gap: 32px;
  }
}
.busmap__connection--bus {
  display: flex;
  align-items: center;
  gap: 40px;
}
.busmap__connection--bus .logo--img {
  max-height: 42px;
}
.busmap__connection--hour {
  font-weight: 700;
  white-space: nowrap;
  color: #000000;
}
.busmap__connection--city {
  color: #515151;
}
.busmap__connection--ball {
  position: absolute;
  bottom: 0;
  left: -13px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 8px 4px 8px;
  background-color: unset;
}
.busmap__connection--ball > div {
  padding: 5px;
  background: #55368B;
  border-radius: 50%;
}

.busmap__busTrip {
  color: black;
  display: flex;
  align-items: center;
  padding: 12px 8px 8px 8px;
  font-size: 0.8rem;
  font-weight: 600;
  border: 1px solid #000000;
}

.busmap--connection {
  padding: 40px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 38px;
  color: #55368B;
}

.busmap--connection.initial {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 0 24px;
  padding: 24px;
  border-left: dotted;
}
.busmap--connection.initial h3 {
  font-size: 0.7rem;
  width: 100%;
  padding: 24px 0;
  background-color: hsla(0, 0%, 85%, 0.2);
}

.busmap__infoContainer--title h3 {
  display: none;
}

.modal.modal--black {
  display: none;
  height: 100%;
  background: #000000;
  opacity: 0.7;
  z-index: 100;
}
.modal.modal--black.show {
  display: flex;
}

.bus-map-ajax.modal {
  top: unset;
  bottom: 0;
  position: fixed;
  height: auto;
  max-height: 100%;
  padding: 0;
  padding-bottom: 80px;
  background-color: #ffffff;
  overflow: scroll;
}
.bus-map-ajax.modal.show {
  opacity: 1;
  display: flex;
  flex-direction: column;
}

.busMapContainer {
  display: flex;
  flex-direction: column;
}
.busMapContainer.connection {
  display: none;
}
.busMapContainer.initial {
  display: flex !important;
  flex-direction: column;
}
.busMapContainer.initial > .busmap {
  display: none;
}
.busMapContainer.step {
  display: flex !important;
  flex-direction: column;
}

.busmap--info {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 0 24px 0 24px;
}

.bus-map-seat {
  display: flex;
  flex-direction: column;
  max-height: unset;
}

.busMapRoot.mobile {
  overflow: scroll;
  padding-bottom: 32px;
}
.busMapRoot.mobile > div {
  display: none;
}

@media (max-width: 800px) {
  ul.availability__list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: space-evenly;
    align-items: baseline;
  }
  li.availability__item {
    width: 47% !important;
  }
  .bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat {
    width: 40px;
    height: 40px;
  }
  .bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat > .seat-number {
    line-height: 40px;
  }
  .bus-preview-modal .modal-body .bus-map-seat > .map-bus .hall {
    width: 40px;
    height: 40px;
  }
  /**
  ** UPSELL MOBILE
  **/
  #upsellWrapper {
    max-width: 100%;
    padding-right: 0;
  }
  #upsellWrapper .modal-content {
    min-height: 40rem;
    max-height: unset;
    padding: 1.25rem 0.75rem;
    width: 100%;
  }
  #upsellWrapper .modal-body {
    padding: 1rem 0.5rem;
  }
  #upsellWrapper .right-box {
    max-width: none;
    position: relative !important;
    min-width: 10rem;
    background-color: #fff;
    border-radius: 40px !important;
    padding: 1.25rem;
    margin-top: 0;
    margin-bottom: 2.75rem;
    right: 0 !important;
    bottom: -1.8rem !important;
  }
  #upsellWrapper .right-box .features p {
    font-size: 0.74rem;
  }
  .upsell__title {
    font-size: 1.5rem !important;
    padding: 1rem 1rem 0 1rem;
  }
  .upsell__arrow {
    margin-top: 8px;
    padding: 16px 0;
    transform: rotate(90deg);
    text-align: center;
  }
  .upsell__box {
    display: flex;
    flex-direction: column;
  }
  .upsell__classes {
    flex-direction: row;
    justify-content: center;
    padding-top: 0.5rem;
  }
  .upsell__classes .upsell__class {
    font-size: 0.75rem;
  }
  .upsell__classes img {
    max-width: 6rem;
  }
  .upsell__info {
    max-width: 330px;
    margin: 0 auto;
  }
  .buttons .btn__confirm__upgrade {
    font-size: 0.875rem;
    height: auto;
  }
  .buttons .btn__noUpsell {
    font-size: 0.75rem !important;
  }
}
@media (min-width: 800px) {
  .bus-map-seat > .map-bus .outer-seat .inner-seat > .seat-number,
  .bus-preview-modal .modal-body .bus-map-seat > .map-bus .inner-seat > .seat-number {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
  }
  .listTripsRoot .bus-map-ajax .busMapRoot .bus-map-seat .outer-wrapper .bus-map-seat.inner-wrapper {
    transform: rotate(-90deg) translate(-120%);
    -webkit-transform: rotate(-90deg) translate(-120%);
    -moz-transform: rotate(-90deg) translate(-120%);
    -ms-transform: rotate(-90deg) translate(-120%);
    -o-transform: rotate(-90deg) translate(-120%);
  }
  .listTripsRoot .bus-map-ajax .busMapRoot .bus-map-seat .outer-wrapper.is__big--hall {
    height: 450px;
  }
  .listTripsRoot .bus-map-ajax .busMapRoot .bus-map-seat .outer-wrapper.is__big--hall .bus-map-seat.inner-wrapper,
  .listTripsRoot .bus-map-ajax .busMapRoot .bus-map-seat .bus-map-seat.inner-wrapper.inner-wrapper--cont-12,
  .listTripsRoot .bus-map-ajax .busMapRoot .bus-map-seat .bus-map-seat.inner-wrapper.inner-wrapper--cont-13 {
    transform: rotate(-90deg) translate(-120%);
    -webkit-transform: rotate(-90deg) translate(-120%);
    -moz-transform: rotate(-90deg) translate(-120%);
    -ms-transform: rotate(-90deg) translate(-120%);
    -o-transform: rotate(-90deg) translate(-120%);
  }
  .busMapRoot .seatMap__info-ajax {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .busMapRoot .seatMap__info-ajax:after {
    content: none;
  }
  /**
  ** UPSELL DESK
  **/
  #upsellWrapper .modal-dialog {
    cursor: initial;
    max-width: 1048px;
    width: 100%;
  }
  #upsellWrapper .modal-dialog .modal-content {
    padding: 1rem 1rem 0 1rem;
    min-height: 34.75rem;
  }
  #upsellWrapper .modal-dialog .left-box {
    position: absolute;
    max-width: 50%;
    margin: 2.5rem 0rem 2.5rem 2.5rem;
  }
  #upsellWrapper .modal-dialog .right-box {
    max-width: 24rem;
  }
  .upsell__header {
    padding: 48px 0 0 80px;
  }
  .upsell__title {
    max-width: 100%;
    margin: 5rem 0rem 0rem 4rem;
    line-height: 4rem;
  }
  .upsell__classes {
    justify-content: center;
    padding-bottom: 0.5rem;
  }
  .upsell__classes .upsell__arrow {
    padding: 8px 32px;
  }
  .upsell__info_wrap {
    width: 90%;
    max-width: 505px;
  }
  .upsell__footer .btn__upsellReturn {
    width: 121px;
  }
  .busmap--info {
    padding: 0 40px 20px 40px;
  }
  .bus-map-ajax.modal {
    padding: 40px 0;
  }
  .busMapContainer {
    display: flex;
    flex-direction: column;
  }
  .busMapContainer.connection {
    display: flex;
  }
  .modal--black.mobile {
    display: none;
  }
}
@media (min-width: 1620px) {
  .busMapContainer {
    flex-direction: row;
  }
  .busmap--info {
    padding: 0 20px 20px 40px;
  }
  .busmap__connection--bus {
    align-items: center;
    justify-content: center;
    gap: 20px;
  }
  .busmap__connection--bus .logo--img {
    max-height: 100%;
  }
  .busmap__connection--bus .busmap__busTrip {
    font-size: 0.7rem;
    text-align: center;
  }
  #upsellWrapper .modal-dialog {
    max-width: 1248px;
  }
  #upsellWrapper .modal-dialog .modal-content {
    padding: 1rem 1rem 0 1rem;
  }
  #upsellWrapper .modal-dialog .modal-content .upsell__title {
    font-size: 3.25rem;
    margin-left: 5rem;
  }
  #upsellWrapper .modal-dialog .right-box {
    right: 3.5rem;
    max-width: 27rem;
    padding: 1.5rem;
    right: 8rem;
  }
}
div[class*=modalPassagers] * {
  font-size: 0.75rem;
}

.modalPassagers-select {
  width: 33%;
  margin-right: 16px;
}
@media (min-width: 800px) {
  .modalPassagers-select {
    width: 30%;
  }
}
.modalPassagers-select select {
  width: 100%;
  background: #f6f6f6;
  border-radius: 4px;
  font-size: 0.875rem;
  line-height: 100%;
  color: #7C7C7C;
  height: 50px;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-left: 8px;
}
.modalPassagers-select select::-ms-expand {
  display: none;
}

.modalPassagers-title {
  font-size: 1rem;
  line-height: 100%;
  color: #303030;
  margin-bottom: 8px;
}

.modalPassagers-type {
  position: relative;
  width: 60%;
}
@media (min-width: 800px) {
  .modalPassagers-type {
    width: 65%;
  }
}
.modalPassagers-type input {
  width: 100%;
  background: #f6f6f6;
  border-radius: 4px;
  font-size: 0.875rem;
  line-height: 100%;
  color: #7C7C7C;
  height: 50px;
  border: none;
  padding-left: 16px;
}

.modalPassagers-btn {
  font-size: 1rem;
  border: none;
  background: #55368B;
  border-radius: 4px;
  width: 100%;
  align-items: center;
  text-align: center;
  font-weight: bold;
  color: #ffffff;
  display: block;
  padding: 26px;
  transition: all 0.2s;
}
.modalPassagers-btn:hover {
  background: rgb(107.4611398964, 68.2694300518, 175.7305699482);
}

.modalPassagers-student,
.modalPassagers-passager,
.modalPassagers-fields {
  margin-bottom: 16px;
}

.passenger-type, .document-type {
  position: relative;
}
.passenger-type:after, .document-type:after {
  content: "\e91e";
  font-family: "icomoon";
  position: absolute;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #55368B;
}

.modalPassagers-footer {
  margin-top: 32px;
}

.modalPassagers-msgTop,
.modalPassagers-msgBottom {
  position: absolute;
}
.modalPassagers-msgTop p,
.modalPassagers-msgBottom p {
  font-size: 1rem;
  color: #ffffff;
}

.modalPassagers-msgTop {
  top: -145px;
  font-size: 0.875rem;
}
@media (min-width: 800px) {
  .modalPassagers-msgTop {
    top: -95px;
    font-size: 1rem;
  }
}
.modalPassagers-msgTop p {
  margin-left: 32px;
  padding-left: 8px;
  line-height: 1.25rem;
}

.modalPassagers-destination {
  font-size: 0.875rem;
  text-decoration-line: underline;
  -moz-text-decoration-line: underline;
  color: #55368B;
  margin: 32px 0 16px 32px;
  position: relative;
}
.modalPassagers-destination::before {
  content: "\e91e";
  font-family: "icomoon";
  font-size: 0.5rem;
  transform: rotate(-90deg);
  position: absolute;
  left: -18px;
  top: 3px;
}

.modalPassagers-msgBottom {
  bottom: -50px;
}
@media (min-width: 800px) {
  .modalPassagers-msgBottom {
    bottom: -30px;
  }
}

.modalPassagers-msgTop .modalPassagers-icon {
  margin-right: 8px;
  position: absolute;
}
.modalPassagers-msgTop .modalPassagers-icon::before {
  content: "\e91f";
  font-family: "icomoon";
  font-size: 1.5625rem;
  color: #ffffff;
}

.modalPassagers-seat .modalPassagers-icon::before {
  content: "\e920";
  font-family: "icomoon";
  font-size: 1.0625rem;
}

.modalPassagers-seat {
  font-size: 1rem;
  line-height: 100%;
  color: #55368B;
  margin: 16px;
  margin-left: 0;
  margin-right: 0;
}
.modalPassagers-seat .error-message {
  margin: 0;
  display: inline-block;
  margin-left: 16px;
  width: 90%;
}

.modalPassagers-number {
  font-size: 1rem;
}

#studentModal {
  padding-top: 80px;
}
@media (max-width: 800px) {
  #studentModal {
    padding-top: 16px;
    background: rgba(0, 0, 0, 0.7411764706);
  }
}
@supports (-webkit-touch-callout: none) {
  #studentModal {
    padding-top: 64px;
  }
}
#studentModal .close-student {
  color: #55368b;
  margin: 32px 0 16px 32px;
  position: absolute;
  font-size: 3rem;
  font-weight: bold;
  right: 10px;
  top: -20px;
  z-index: 10;
}
#studentModal .modal-header {
  border: none;
  position: absolute;
  width: 100%;
}
@media (max-width: 800px) {
  #studentModal .modal-header {
    position: absolute;
    width: 100%;
    z-index: 3;
  }
}
@media (min-width: 800px) {
  #studentModal {
    background-image: none;
    background-color: transparent;
    transform: translateY(15%);
    padding-top: 0;
  }
}
#studentModal .modal-dialog {
  max-width: 566px;
  padding-top: 160px;
}
#studentModal .close {
  opacity: 1;
}
#studentModal .close span {
  color: #55368B;
  opacity: 1;
  font-size: 3.125rem;
  z-index: 20;
}
@media (max-width: 800px) {
  #studentModal .close span {
    top: -170px;
    right: 0px;
    position: absolute;
    color: #ffffff;
  }
}

#pcd-Modal .modal-title {
  font-size: 1rem;
  color: #7d7c7d;
  font-weight: bolder;
}
#pcd-Modal .modalPassagers-seat:before {
  content: "\e920";
  font-family: "icomoon";
  font-weight: normal;
  font-variant: normal;
  padding-right: 5px;
}
#pcd-Modal .modalPassagers-form {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  width: 80%;
  margin: 0 auto;
}
#pcd-Modal .modalPassagers-form label {
  width: auto;
  margin: 0;
}
#pcd-Modal .modalPassagers-form .modalPassagers-check {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  font-weight: 600;
}
#pcd-Modal .modalPassagers-form .checkmark {
  width: 15px;
  height: 15px;
  cursor: pointer;
}
#pcd-Modal .modalPassagers-form textarea#modalPassengerObs {
  width: 100%;
  background: #f6f6f6;
  border-radius: 4px;
  font-size: 0.875rem;
  line-height: 100%;
  color: #7c7c7c;
  height: 100px;
  border: none;
  -webkit-appearance: none;
  appearance: none;
  padding: 10px;
}
#pcd-Modal #modalPassagers-pcd-info {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  margin: 0 auto;
}
#pcd-Modal .pcd-type:after {
  content: "\e91e";
  font-family: icomoon;
  position: absolute;
  right: 80px;
  top: 60px;
  transform: translateY(-50%);
  color: #55368b;
}

@media screen and (min-width: 800px) and (max-width: 979px) {
  #upsellWrapper .modal-dialog .right-box {
    max-width: 24rem;
  }
}
.embeddedServiceIcon {
  display: none !important;
}

.Ticket-BusDetails .embeddedServiceHelpButton .helpButton {
  bottom: 100px !important;
}

.embeddedServiceHelpButton .helpButton {
  width: 70px !important;
  height: 70px !important;
  bottom: 29px !important;
  right: 16px !important;
}
.embeddedServiceHelpButton .helpButton .uiButton {
  background: transparent !important;
  background-position: center center !important;
  background-size: 100% !important;
  border-radius: 50% !important;
  box-shadow: none !important;
}
.embeddedServiceHelpButton .helpButton .uiButton.helpButtonDisabled {
  display: none;
}
.embeddedServiceHelpButton .uiButton.helpButtonEnabled {
  width: 70px !important;
  height: 70px !important;
  min-width: unset;
  min-height: unset;
}
.embeddedServiceHelpButton .uiButton .helpButtonLabel {
  display: none !important;
}

/**
    chatbot mask style
**/
.chatbot__mask {
  position: fixed;
  bottom: 16px;
  right: 16px;
  z-index: 1000;
}
.chatbot__mask--institutional {
  position: initial;
  padding-left: 48px;
}
.chatbot__mask--institutional .chatbot__mask_options {
  display: flex !important;
  align-items: center;
  gap: 32px;
  background: unset !important;
  box-shadow: none !important;
}
.chatbot__mask--institutional .chatbot__mask_options .chatbot__btn {
  padding: 4px 8px;
}

.chatbot__mask_options {
  position: relative;
  width: 70px;
  height: 98px;
  padding: 15px 0;
  font-family: "Montserrat", sans-serif;
  font-size: 0.875rem;
  border-radius: 4px;
}
.chatbot__mask_options .chatbot__avatar {
  display: block;
  grid-area: avatar;
  width: 70px;
  height: 70px;
  background: url("../../images/avatar_isa.png");
  background-size: cover;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  border-radius: 50%;
  cursor: pointer;
}
.chatbot__mask_options .open__anim {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  opacity: 0;
  transition: ease-in 2s opacity;
}
.chatbot__mask_options .chatbot__title {
  display: none;
  grid-area: title;
  margin: 0;
  padding: 0;
  font-weight: bold;
  line-height: 1.2;
}
.chatbot__mask_options .chatbot__subtitle {
  display: none;
  grid-area: subtitle;
  padding-bottom: 10px;
  font-size: 0.75rem;
}
.chatbot__mask_options .chatbot__btn {
  display: none;
  padding: 4px 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.875rem;
  font-weight: bold;
  color: #ffffff;
  line-height: 1.7;
  border-radius: 32px;
  border: none;
}
.chatbot__mask_options .chatbot__btn .chatbot__btn_icon {
  vertical-align: middle;
}
.chatbot__mask_options .chatbot__btn .chatbot__btn_icon:before {
  content: "\e930";
  font-family: "icomoon";
  font-size: 0.875rem;
  color: #ffffff;
}
.chatbot__mask_options .chatbot__btn.chat {
  grid-area: buttonBot;
  background: linear-gradient(74.41deg, #F47221 -71.62%, #F9BF2D 165.47%);
}
.chatbot__mask_options .chatbot__btn.whats {
  grid-area: buttonWats;
  background: linear-gradient(74.41deg, #76CD48 -71.62%, #31f92d 165.47%);
}
.chatbot__mask_options .chatbot__closed {
  display: none;
  position: absolute;
  right: 8px;
  top: 8px;
  background: none;
  border: none;
}
.chatbot__mask_options .chatbot__closed:before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 0.875rem;
  color: #F8A629;
}

.chatbot__mask.open .chatbot__mask_options {
  display: grid;
  grid-template-areas: "avatar title title" "avatar subtitle subtitle" "avatar buttonBot buttonWats";
  column-gap: 10px;
  width: 320px;
  padding: 15px 25px;
  background: #ffffff;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  animation: 2s ease-in-out openSmooth;
}
.chatbot__mask.open .chatbot__mask_options .chatbot__avatar {
  position: absolute;
  left: -55px;
  box-shadow: none;
}
.chatbot__mask.open .chatbot__mask_options .open__anim {
  display: block;
  opacity: 1;
}

@keyframes openSmooth {
  from {
    width: 70px;
  }
  to {
    width: 320px;
  }
}
.headerLP {
  display: flex;
  align-items: center;
  position: fixed;
  width: 100%;
  height: 143px;
  background: rgba(54, 19, 84, 0.6);
  z-index: 12;
}
.headerLP .header {
  background: none !important;
  padding-top: 0;
}
.headerLP .logo-home {
  width: 100%;
  height: 100%;
  max-width: 110px;
  max-height: 27px;
}
.headerLP .login-header-btn, .headerLP .register-header-btn, .headerLP .header {
  font-size: 10px;
  line-height: 36px;
  font-weight: 600 !important;
  color: #FFFFFF;
  text-transform: uppercase;
  text-decoration: none !important;
  cursor: pointer;
}

.checkout__header {
  height: 56px;
  margin-bottom: 32px;
  background: #55368B;
}
.checkout__header .navbar-header.brand {
  position: absolute;
  top: 50%;
  height: auto;
  margin: 0 auto;
  padding-top: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
}
.checkout__header + #maincontent .container.hero {
  display: none;
}

.search-tickets-btn {
  display: inline-block;
}
.search-tickets-btn--headerForm {
  display: none;
}

.search-tickets-btn:disabled, .searchBtn-mobile:disabled {
  border-color: #f8a629;
}

.searchBtn-mobile:hover {
  border-color: #f8a629 !important;
}

.header {
  background: #55368B;
}
.header * {
  transition: 0.3s width linear;
}
.header .search-tickets-btn {
  display: none;
}
.header .search-tickets-btn--headerForm {
  display: inline-block;
  width: auto;
  height: 45px;
  padding: 0 10px;
  margin: 0;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  font-weight: 600;
  line-height: 45px;
  background: none;
  border-width: 2px;
}

.header__desktop {
  display: none;
}

.navbar-header .compactHeader .icon-search {
  color: #F8A629;
}
.navbar-header .navbar-toggler {
  height: 70px;
  padding-left: 0;
  font-size: 22px;
  font-size: calc(22 * 0.0625)rem;
  color: #ffffff;
}
.navbar-header .navbar-toggler:before {
  content: "\e908";
  font-family: "icomoon";
  font-size: 22px;
  font-size: calc(22 * 0.0625)rem;
}
.navbar-header.brand {
  left: 0;
  right: 0;
}
@media (max-width: 799px) {
  .navbar-header.brand {
    left: 80px;
    right: unset;
  }
}
@media (max-width: 358px) {
  .navbar-header.brand {
    left: 60px;
    right: unset;
    width: 120px;
  }
}
.navbar-header.brand {
  width: 130px;
  padding: 0;
  margin: 0 auto;
}
.navbar-header .logo-home {
  position: relative;
  top: 45%;
  display: block;
  transform: translateY(-50%);
}
.navbar-header .minicart {
  margin: 1em 0 0 0.5em;
}
.navbar-header .minicart .minicart-icon:before {
  content: "\e903";
  font-family: "icomoon";
  font-size: 25px;
  font-size: calc(25 * 0.0625)rem;
  color: #ffffff;
}
.navbar-header .minicart .minicart-quantity {
  top: -15px;
  width: 15px;
  height: 15px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  background: linear-gradient(57.43deg, #F47221 5.48%, #F9BF2D 92.53%);
}

.country-selector {
  position: relative;
  background: #ffffff;
  border-radius: 4px;
}
.country-selector .dropdown-toggle {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  text-transform: capitalize;
}
.country-selector .dropdown-toggle .flag-icon {
  margin-right: 4px;
}
.country-selector .dropdown-menu {
  top: 32px;
  right: 0;
  left: auto;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  border-radius: 4px;
}
.country-selector .dropdown-item {
  padding: 8px;
}

.user {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  text-align: left;
  line-height: normal;
}
.user a {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  font-weight: 700;
  text-decoration: underline;
}
.user p {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  line-height: 1.2;
  color: #ffffff;
}
.user .icon-user {
  display: block;
  width: 45px;
  height: 45px;
  font-size: 36px;
  font-size: calc(36 * 0.0625)rem;
  text-align: center;
  line-height: 1.5;
  margin-right: 10px;
  background: #55368B;
  border-radius: 50%;
  border: 1px solid #F8A629;
  box-shadow: inset 0 0 10px 10px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}
.user .user__name {
  text-decoration: underline;
  font-weight: 700;
}
.user .user__setting {
  width: 100%;
  margin-top: 20px;
}
.user .user__setting li {
  padding: 10px 0;
}
.user .user__setting li:before {
  content: "\e910";
  display: inline-block;
  margin-right: 16px;
  font-family: "icomoon";
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  color: #ffffff;
  vertical-align: middle;
}
.user .user__setting a {
  font-weight: normal;
  text-decoration: none;
}
.user .user__logout {
  position: absolute;
  right: 0;
  top: 10px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  text-decoration: none;
}
.user .user__logout:after {
  content: "\e914";
  margin-left: 5px;
  font-family: "icomoon";
  font-weight: 100;
  vertical-align: middle;
}

.login-header-btn, .register-header-btn {
  color: #ffffff !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  padding: 0 !important;
  margin-right: 0.25rem !important;
}

.main-menu {
  background: none;
}

.menu__link {
  display: inline-block;
  margin-right: 8px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  color: #ffffff;
  font-weight: 700;
  text-decoration: underline;
  vertical-align: middle;
}
.menu__link:hover {
  color: #ffffff;
  text-decoration: underline;
}

.main__header {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.btn__backHome {
  padding: 16px 0;
  color: #55368B;
}
.btn__backHome:hover {
  color: #98389A;
}
.btn__backHome span {
  font-weight: 600;
  text-decoration: underline;
}
.btn__backHome:before {
  content: "←";
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
}

.page[data-action=Account-RenewPassword] .navbar-header.brand,
.page[data-action=Account-SetRenewalPassword] .navbar-header.brand {
  justify-content: center;
}

.navbar-toggler {
  display: inline-block;
}

.menu-toggleable-left {
  display: none;
}

.header__mobile {
  border-bottom: 1px solid #55368B;
}

.nav-item.nav-user {
  display: block;
}

.page__student {
  display: none;
}

body.Account-Base .compactSearch {
  display: none;
}

@media (max-width: 1024px) {
  .menu-toggleable-left.in .dropdown:not(.country-selector) {
    position: static;
    display: block;
    width: 100%;
  }
  .menu-toggleable-left.main-menu .bg-inverse {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }
  .menu-toggleable-left .close-menu {
    display: block;
  }
  .main__header {
    background-color: #f6f6f6;
    margin-bottom: 0 !important;
  }
  .page[data-action=Order-History] .main__header {
    display: none;
    background-color: transparent !important;
  }
  .page[data-action=Account-Show] .main__header,
  .page[data-action=PaymentInstruments-List] .main__header {
    background-color: transparent !important;
  }
}
@media (min-width: 1024px) {
  .nav-item.nav-user {
    display: none;
  }
  .menu-toggleable-left.in .dropdown:not(.country-selector) {
    position: static;
    display: block;
  }
  .navbar-toggler {
    display: inline-block;
  }
  .header__mobile {
    display: none;
  }
  .header__desktop {
    position: relative;
    display: block;
    background: #55368B;
    z-index: 1;
  }
  .header__desktop .header.container {
    padding-top: 0;
    padding-bottom: 0;
    font-size: 0;
  }
  .header__desktop .home-page-input-form {
    display: flex;
    flex-direction: row;
    padding: 0;
    background: none;
    border: none;
  }
  .header__desktop #ticketForm {
    display: inline-block;
    width: 65%;
    padding-right: 16px;
    padding-left: 20px;
    margin-top: 12px;
    text-align: left;
  }
  .header__desktop .home-intinerary {
    width: 53%;
  }
  .header__desktop .home-dates {
    width: 30%;
  }
  .header__desktop .home-searchTicket__button {
    width: calc(20% - 20px);
  }
  .header__desktop .search-tickets-btn--headerForm:before {
    content: "\e92e";
    font-family: "icomoon";
    margin-right: 8px;
    color: #F8A629;
    font-size: 0.75rem;
  }
  .header__desktop .search-tickets-btn--headerForm:disabled {
    border-color: #f8a629;
  }
  .header__desktop .cities__list {
    width: 200%;
  }
  .header__desktop .cities__list#destination_cities {
    right: 0;
  }
  .header__desktop .border-input,
  .header__desktop .cities__input,
  .header__desktop .dates__input {
    height: 45px;
    padding: 0;
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
    border: 2px solid #F8A629;
  }
  .header__desktop .home-page__search-options {
    display: none;
  }
  .header {
    padding-top: 16px;
  }
  .navbar-header {
    display: inline-block;
    width: calc(100% - 130px);
    height: auto;
    vertical-align: middle;
  }
  .navbar-header:not(.brand) {
    font-size: 0;
  }
  .navbar-header.brand {
    position: relative;
    width: 130px;
    padding: 0;
    margin: 0;
    vertical-align: middle;
  }
  .navbar-header .navbar {
    display: inline-block;
    width: 50%;
    margin-top: 16px;
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .navbar-header .navbar .menu-group ul li.nav-item {
    padding-bottom: 4px;
  }
  .navbar-header .home-intinerary .form-control {
    border: 2px solid #F8A629;
  }
  .navbar-header .logo-home {
    top: auto;
    margin-top: -5px;
    transform: translate(0);
  }
  .navbar-header .country-selector {
    position: relative;
    display: inline-block;
    width: 15%;
    margin: 0 auto;
    background: none;
    z-index: 15;
  }
  .navbar-header .country-selector .dropdown-toggle {
    width: 100%;
    margin: 0 auto;
    color: #ffffff;
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
    text-overflow: ellipsis;
    text-transform: capitalize;
    overflow: hidden;
  }
  .navbar-header .country-selector .dropdown-menu {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
  .navbar-header .user {
    position: relative;
    display: inline-block;
    vertical-align: top;
    height: 70px;
    min-width: 200px;
    max-width: 245px;
    padding: 0;
    padding-left: 4px;
    padding-right: 4px;
    margin: 0;
    color: #ffffff;
    line-height: normal;
    font-size: 0;
  }
  .navbar-header .user .icon-user,
  .navbar-header .user .user__welcome {
    position: relative;
    top: 50%;
    display: inline-block;
    vertical-align: middle;
    transform: translateY(-50%);
  }
  .navbar-header .user .icon-user {
    margin-right: 8px;
    z-index: 10;
  }
  .navbar-header .user .user__welcome {
    width: calc(100% - (45px + 16px / 2));
    padding-left: 2px;
    margin-top: -10px;
    z-index: 10;
  }
  .navbar-header .user .user__welcome p {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .navbar-header .user .user__welcome p:not(:first-child) {
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
  }
  .navbar-header .user .user__welcome a:last-child {
    margin-left: 4px;
  }
  .navbar-header .user a {
    margin-right: 4px;
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
    color: #ffffff;
    z-index: 10;
  }
  .navbar-header .user a:last-child {
    margin-right: 0;
  }
  .navbar-header .user .dropdown-toggle {
    color: #ffffff;
  }
  .navbar-header .user .popover {
    right: 0;
    top: -16px;
    left: -16px;
    width: 100%;
    padding-top: 85px;
    padding-left: 20px;
    background: #4C3770;
    border: 0;
    z-index: 9;
  }
  .navbar-header .user .popover a {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    font-weight: normal;
    font-family: "Montserrat", sans-serif;
    text-decoration: none;
  }
  .navbar-header .user .popover a:hover {
    font-weight: 600;
    color: #F8A629;
  }
  .navbar-header .user .popover .nav {
    display: block;
  }
  .navbar-header .user .popover .nav-item {
    padding: 10px 0;
  }
  .navbar-header .minicart {
    position: relative;
    display: inline-block;
    line-height: normal;
    vertical-align: top;
  }
  .navbar-header .minicart .minicart-icon:before {
    font-size: 1.25rem;
  }
  .navbar-header .minicart .minicart-quantity {
    width: 13px;
    height: 13px;
    font-size: 10px;
    font-size: calc(10 * 0.0625)rem;
  }
  .header__desktopRight {
    display: inline-block;
    max-width: 50%;
    float: right;
    font-size: 0;
    text-align: right;
  }
  .page[data-action=Ticket-Search] .header__desktopRight .menu__link,
  .page[data-action=Search-Show] .header__desktopRight .menu__link {
    display: none;
  }
}
@media (min-width: 1280px) {
  .header__desktop #ticketForm {
    width: 72%;
  }
  .header__desktop .home-intinerary {
    width: 50%;
  }
  .header__desktop .home-searchTicket__button {
    width: calc(15% - 20px);
  }
  .header__desktopRight {
    max-width: 50%;
  }
  .menu-toggleable-left {
    display: block;
  }
  .page[data-action=Ticket-Search] .minicart,
  .page[data-action=Search-Show] .minicart {
    width: 50px;
  }
}
@media (min-width: 1620px) {
  .header__desktop .cities__list {
    min-width: 200%;
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form {
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form .home-page-input-form {
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form .home-page-input-form .home-intinerary {
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form .home-dates {
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form .home-dates .form-group.form-group--isCalendar {
    width: auto;
  }
  .navbar-header.js-navbar__ticketForm form .home-dates .dates__departure {
    max-width: 124px;
    border-right: 0;
  }
  .navbar-header.js-navbar__ticketForm form .home-dates .dates__back {
    max-width: 160px;
  }
}
#search-toggle-icon.compactSearch.icon-search {
  pointer-events: none;
  display: none;
}

.compactSearch {
  color: white;
  border: 1px solid white;
  padding: 12px;
  border-radius: 100px;
  background: orange;
}
@media (min-width: 800px) {
  .compactSearch {
    display: none;
  }
}

.compactFormSearch .home-page-input-form {
  background: #55368B;
  border: none;
  padding: 90px 16px 20px;
}
.compactFormSearch .home-page-input-form .searchBtn-mobile {
  background-color: #55368B;
}
.compactFormSearch .home-page-input-form .searchBtn-mobile::before {
  content: "\e92e";
  font-family: "icomoon";
  color: #F8A629;
  margin-right: 10px;
}

button {
  border: 0;
  background: transparent;
}

.btn-light:not(:disabled):not(.disabled).active:focus, .btn-light:not(:disabled):not(.disabled):active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: none !important;
}

#removeProductModal .modal-dialog, #removeAllProductModal .modal-dialog {
  top: 40%;
}

.modal-dialog {
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

body.modal-open.nav-open .minicart-container .modal.modal-open {
  opacity: 1;
  z-index: 1000;
  display: block;
  cursor: default;
  line-height: normal;
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 300ms ease-in-out 0s;
}
body.modal-open.nav-open .minicart-container .modal.modal-open .modal-footer .cart-delete-confirmation-btn {
  margin: 0;
}

body.modal-open.nav-open .minicart-container .modal {
  opacity: 1;
  z-index: 1000;
  display: block;
  cursor: default;
  line-height: normal;
  background-color: rgba(0, 0, 0, 0.5);
  transition: opacity 300ms ease-in-out 0s;
}
body.modal-open.nav-open .minicart-container .modal .modal-dialog {
  top: 40%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
body.modal-open.nav-open .minicart-container .modal .modal-footer .cart-delete-confirmation-btn {
  margin: 0;
}

.minicart-total {
  height: 70px;
  width: 70px;
  display: block;
  position: static;
}

.minicart-Backdrop {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 15;
  opacity: 0.4;
  display: flex;
  position: fixed;
  align-items: center;
  justify-content: center;
  background-color: #000000;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}

.minicart-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 25rem;
  position: fixed;
  top: 0;
  right: -21.56rem;
  height: 100vh;
  z-index: 16;
  overflow-y: auto;
  background-color: #F6F6F6;
  border: 1px solid #D4D4D4;
  -webkit-animation: slide 0.5s forwards;
  -webkit-animation-delay: 1s;
  animation: slide 1.5s forwards;
  padding: 0;
  overflow-y: scroll;
}
.minicart-container p {
  font-weight: 500;
  color: #000000;
  font-size: 0.95rem;
  line-height: 1.5rem;
  text-align: left;
}
.minicart-container .minicart-content {
  padding: 1rem;
}
.minicart-container {
  scrollbar-width: thin;
  scrollbar-color: #D4D4D4 transparent;
}
.minicart-container::-webkit-scrollbar {
  width: 0.375rem;
  height: 0.375rem;
}
.minicart-container::-webkit-scrollbar-track {
  background: transparent;
  padding: 4px;
}
.minicart-container::-webkit-scrollbar-thumb {
  background-color: #D4D4D4;
}

@-webkit-keyframes slide {
  100% {
    right: 0;
  }
}
@keyframes slide {
  100% {
    right: 0;
  }
}
.active {
  visibility: visible !important;
  -webkit-animation: slide 0.5s forwards;
  -webkit-animation-delay: 1s;
  animation: slide 1.5s forwards !important;
}

.minicart-wrapper {
  visibility: hidden;
}

.minicart-header {
  display: flex;
  justify-content: space-between;
  max-height: 1.875rem;
}

.minicart-title {
  font-weight: 600 !important;
  font-size: 1.2rem !important;
  color: #000000;
  display: flex;
  align-items: center;
}
.minicart-title::before {
  content: url("../../images/checkout/cart.svg");
  margin-right: 15px;
}

#minicart-close {
  font-size: 2.5rem;
  color: #000000;
  opacity: 1;
  font-weight: 500;
  line-height: 1.875rem;
  cursor: pointer;
}

.minicart-info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  font-weight: 600;
  margin: 1.875rem 0;
}
.minicart-info .minicart-origin {
  font-size: 0.9rem;
  font-weight: 500;
}
.minicart-info .minicart-origin::before {
  content: "|";
  font-weight: 6 0;
  margin-right: 15px;
  line-height: 1.875rem;
  font-size: 1.3rem;
  color: #e5e5e5;
  margin-left: 3px;
  font-weight: 450;
}
.minicart-info .minicart-destination {
  font-size: 0.9rem;
  font-weight: 500;
}
.minicart-info .minicart-destination::before {
  content: "\f041";
  font-family: FontAwesome;
  font-weight: 400;
  margin-right: 11px;
  line-height: 1.875rem;
  font-size: 1.4rem;
  color: #e5e5e5;
}

.minicart-card-list {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.minicart-card-list .minicart-clear {
  display: flex;
  align-items: center;
  width: fit-content;
  height: 50px;
  margin: 0 auto;
  margin-top: 1.875rem;
  gap: 12px;
  border: 2px solid #55368B;
  border-radius: 10px;
  color: #55368B;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 0 1.875rem;
}

.minicart-card {
  background: #ffffff;
  border-radius: 10px;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  border: 1px solid #f1f1f1;
}
.minicart-card .minicart-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  margin-bottom: 1.875rem;
}
.minicart-card .card-title {
  font-weight: 600;
  font-size: 0.98rem;
  margin-bottom: 3px;
}
.minicart-card .isConnection {
  color: #55368B;
  font-weight: 700;
  font-size: 0.76rem;
}
.minicart-card .isNoConnection {
  color: #F8A629;
  font-weight: 700;
  font-size: 0.76rem;
}
.minicart-card .card-seats-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.25rem;
}
.minicart-card .card-seats-wrap {
  display: flex;
  flex-direction: column;
}
.minicart-card .card-seat {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.minicart-card .card-seat .card-seat-info {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-content: space-around;
  padding: 10px 15px;
  border: 1px solid #D4D4D4;
  border-radius: 10px;
}
.minicart-card .card-seat .card-seat-info .card-seat-number {
  font-weight: 700;
  font-size: 0.93rem;
  line-height: 1.063rem;
  display: flex;
  align-items: center;
  gap: 5px;
}
.minicart-card .card-seat .card-seat-info .card-seat-price {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.063rem;
  color: #55368B;
  display: flex;
  align-items: center;
}
.minicart-card .card-seat .remove-line-item {
  display: flex;
  padding-left: 15px;
}
.minicart-card .card-seat .remove-line-item .remove-btn {
  background-color: transparent;
  border: none;
  font-size: 1.625em;
  padding: 0;
  margin: 0;
}
.minicart-card .itemSeats {
  margin-bottom: 15px;
}

.product-image {
  max-width: 180px;
  max-height: 25px;
}

button.minicart-footer-button, button.clear-all-tickets {
  background-color: #ffffff;
  width: 100%;
  padding: 0;
}

.minicart-footer {
  width: 100%;
  bottom: 0;
  position: sticky;
  border: 0 !important;
  box-shadow: 0px -4px 20px rgba(0, 0, 0, 0.1);
  background: #ffffff;
}
.minicart-footer .minicart-footer-sumary {
  background: #ffffff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1.875rem;
  bottom: 0;
  position: sticky;
}
.minicart-footer .minicart-footer-sumary .minicart-footer-sumary-total-label {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.25rem;
}
.minicart-footer .minicart-footer-sumary .minicart-footer-sumary-total-value {
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.25rem;
  color: #303030;
}
.minicart-footer .minicart-footer-button-clear {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  width: 100%;
  background: #ffffff;
  font-weight: 600;
  font-size: 0.89rem;
  color: #55368B;
}
.minicart-footer .minicart-footer-button-clear:hover {
  background: #f1f1f1;
  color: #55368B;
}
.minicart-footer .minicart-footer-button-clear:active {
  background: #55368B;
  color: #ffffff;
}
.minicart-footer .minicart-footer-button-clear:before {
  content: url("../../images/checkout/trash-gigas.svg");
  height: 60px;
  margin-right: 7px;
}
.minicart-footer .minicart-footer-button, .minicart-footer .clear-all-tickets {
  display: flex;
  justify-content: space-around;
  width: 100%;
  background: #F8A629;
  font-weight: 600;
  font-size: 1rem;
  color: #ffffff;
}
.minicart-footer .minicart-footer-button:hover, .minicart-footer .clear-all-tickets:hover {
  background: #FFA100;
  color: #ffffff;
}
.minicart-footer .minicart-footer-button:active, .minicart-footer .clear-all-tickets:active {
  background: #55368B;
  color: #ffffff;
}

.expiry__time {
  width: 100%;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  display: inline-block;
  position: relative;
}
.expiry__time .timer {
  font-size: 0.8rem;
  width: auto;
  display: inline-block;
  position: relative;
  padding-left: 4px;
}
.expiry__time .invalid-expired {
  font-size: 0.8rem;
  line-height: 1.2rem;
  margin-top: 15px;
}

.minicart-d-block {
  width: 100%;
}
.minicart-d-block .itinerary {
  display: flex;
  flex-direction: column;
}

.minicart-empty-message {
  padding: 30px;
  gap: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.minicart-empty-message p {
  text-align: center;
}
.minicart-empty-message .title {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 0.2rem;
}

.header__mobile .minicart,
.header__desktop .minicart {
  width: 70px;
  height: 70px;
  display: inline-block;
  position: static;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  line-height: 70px;
  text-align: center;
}
.header__mobile .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger,
.header__desktop .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger {
  margin: 4px 8px 8px;
  padding: 16px;
  padding-right: 48px;
  border: none;
  color: #ffffff;
  line-height: 1.4;
  font-weight: normal;
  text-align: left;
  background-color: #FF0000;
}
.header__mobile .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close,
.header__desktop .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close {
  color: white;
  opacity: 0.8;
  padding: 8px 16px;
  outline-color: transparent;
}
.header__mobile .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:hover, .header__mobile .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:focus, .header__mobile .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:active,
.header__desktop .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:hover,
.header__desktop .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:focus,
.header__desktop .minicart .minicart-container .minicart-content .minicart-error.cart-error .alert.alert-danger button.close:active {
  color: #ffffff;
  opacity: 1;
  outline-color: transparent;
}
.header__mobile .minicart .minicart-total,
.header__desktop .minicart .minicart-total {
  height: 70px;
  width: 70px;
  display: block;
  position: static;
}
.header__mobile .minicart .minicart-total .minicart-link,
.header__desktop .minicart .minicart-total .minicart-link {
  width: 0;
  height: 0;
  display: block;
  position: static;
  text-align: center;
  font-size: 0;
  pointer-events: none;
}
.header__mobile .minicart .minicart-total .minicart-link .cart-qty-and-icon,
.header__desktop .minicart .minicart-total .minicart-link .cart-qty-and-icon {
  width: 70px;
  height: 70px;
  display: block;
  position: relative;
}
.header__mobile .minicart .minicart-total .minicart-link .cart-qty-and-icon .minicart-icon,
.header__desktop .minicart .minicart-total .minicart-link .cart-qty-and-icon .minicart-icon {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  line-height: 70px;
}
.header__mobile .minicart .minicart-total .minicart-link .cart-qty-and-icon .minicart-quantity,
.header__desktop .minicart .minicart-total .minicart-link .cart-qty-and-icon .minicart-quantity {
  width: 15px;
  height: 15px;
  display: inline-block;
  position: absolute;
  top: calc(50% - 15px);
  right: auto;
  left: calc(50% + 15px);
  bottom: auto;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

.modal .modal-body {
  font-size: 0.875rem;
  line-height: 1.5rem;
}

.btn-outline-primary {
  color: #55368B;
  border-color: #55368B;
}
.btn-outline-primary:hover {
  background-color: #55368B;
  border-color: #55368B;
  color: #ffffff;
}
.btn-outline-primary:active {
  background-color: #55368B !important;
  border-color: #55368B !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 0.2rem #55368B !important;
}
.btn-outline-primary:focus {
  background-color: #55368B;
  border-color: #55368B;
  color: #ffffff;
  box-shadow: 0 0 0 0.2rem #55368B;
}

.delete-confirmation-header .title-p {
  font-size: 1.1rem;
}

@media (max-width: 1024px) {
  body.modal-open.nav-open .minicart-container .modal {
    opacity: 1;
    z-index: 1000;
    display: block;
    cursor: default;
    line-height: normal;
    background-color: rgba(0, 0, 0, 0.5);
    transition: opacity 300ms ease-in-out 0s;
  }
  body.modal-open.nav-open .minicart-container .modal .modal-dialog {
    top: 40%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
  body.modal-open.nav-open .minicart-container .modal .modal-footer .cart-delete-confirmation-btn {
    margin: 0;
  }
  .minicart-container {
    width: 100vw;
    height: calc(var(--vh, 1vh) * 100);
  }
}
@media (max-width: 1024px) {
  .minicart-container {
    width: 100vw;
    height: calc(var(--vh, 1vh) * 100);
  }
  body.modal-open .minicart-container .modal {
    opacity: 1;
    z-index: 1000;
    display: block;
    cursor: default;
    background-color: rgba(0, 0, 0, 0.5);
    transition: opacity 300ms ease-in-out 0s;
  }
  body.modal-open .minicart-container .modal .modal-dialog {
    top: 40%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
  body.modal-open .minicart-container .modal .modal-footer .cart-delete-confirmation-btn {
    margin: 0;
  }
}
.button-color {
  display: flex;
  border-radius: 27px;
  overflow: hidden;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 600;
}

.button_bcg {
  background: rgb(250, 158, 27);
  background: -moz-linear-gradient(90deg, rgb(250, 158, 27) 0%, rgb(141, 79, 255) 100%);
  background: -webkit-linear-gradient(90deg, rgb(250, 158, 27) 0%, rgb(141, 79, 255) 100%);
  background: linear-gradient(90deg, rgb(250, 158, 27) 0%, rgb(141, 79, 255) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fa9e1b",endColorstr="#8d4fff",GradientType=1);
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease;
}
.button_bcg:hover {
  background: rgb(250, 158, 27);
  background: -moz-linear-gradient(90deg, rgb(141, 79, 255) 0%, rgb(250, 158, 27) 100%);
  background: -webkit-linear-gradient(90deg, rgb(141, 79, 255) 0%, rgb(250, 158, 27) 100%);
  background: linear-gradient(90deg, rgb(141, 79, 255) 0%, rgb(250, 158, 27) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#8d4fff",endColorstr="#fa9e1b",GradientType=1);
  color: #fff;
}

.button-color {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  padding: 15px 46px;
  white-space: nowrap;
  z-index: 2;
}
.button-color:hover {
  color: #fff;
}

.button-color span {
  display: inline-block;
  vertical-align: middle;
  width: 5.75px;
  height: 5.63px;
  background: #FFFFFF;
  border-radius: 50%;
  margin-right: 2px;
}

.button-color span:first-child {
  margin-left: 15px;
}

.button-color span:nth-child(2) {
  opacity: 0.6;
}

.button-color span:last-child {
  opacity: 0.4;
  margin-right: 0px;
}

.btn-block {
  height: 65px;
  padding: 4px 8px;
  margin-top: 16px;
  border-radius: 35px;
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 1rem;
  line-height: calc(65px - (1px * 4 + 16px / 2));
  word-break: keep-all;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.btn-primary {
  border-radius: 35px;
  background: #F8A629;
  border: 1px solid #F8A629;
  color: #ffffff;
}
.btn-primary:hover {
  background: #55368B;
  border: 1px solid #55368B;
}

.btn-default {
  border-radius: 35px;
}

.btn-outline-primary {
  border-radius: 35px;
}

.btn-secondary {
  border-radius: 35px;
  background: transparent;
  border: 1px solid #F8A629;
  color: #F8A629;
}
.btn-secondary:hover {
  background: #F8A629;
  color: #ffffff;
  border: 1px solid #F8A629;
}

.form-group {
  margin-bottom: 0;
}
.form-group:focus .form-control-label {
  font-weight: bold;
}

.form-control {
  height: 65px;
  border-radius: 0;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  color: #8C8C8C;
}
.form-control:focus {
  box-shadow: none;
  border-color: #ced4da;
  outline: none;
}

.terms-error {
  display: none;
  width: auto;
}
.terms-error.show {
  display: block;
  margin: 0 0 0 0.5rem !important;
}

.input--isHidden {
  display: none;
}

.input__text,
.input__select {
  height: 50px;
  width: 100%;
  padding: 8px 16px;
  border: 1px solid #D4D4D4;
  box-sizing: border-box;
  border-radius: 5px;
}

#checkout-form-cpffield {
  border-bottom: 1px solid #D4D4D4;
}

.input__text {
  background: #ffffff;
}

.border-input, .dates__input, .cities__input {
  width: 100%;
  border-style: solid;
  border: 1px;
  background-image: linear-gradient(to right, #ffffff, #ffffff), linear-gradient(to right, #f85032 0, #f0801e 0, #fdc93b 100%);
  background-origin: border-box;
  background-clip: content-box, border-box;
  border-radius: 10px;
  z-index: 0;
  padding: 4px;
  text-indent: 10px;
  min-height: 40px;
  font-size: 0.9375rem;
}
.border-input.is-invalid, .is-invalid.dates__input, .is-invalid.cities__input {
  padding: 0;
  background-image: none;
  border: 2px solid #FF0000;
}

.collapse__title {
  position: relative;
}
.collapse__title:after {
  content: "\e900";
  font-family: "icomoon";
  font-size: 0.625rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
}
.collapse__title.collapsed-block:after {
  transform: translateY(-50%) rotate(0);
  -webkit-transform: translateY(-50%) rotate(0);
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -o-transform: translateY(-50%) rotate(0);
}

.page__accounts .form-group, .page__contact .form-group {
  position: relative;
}
.page__accounts .form-group .form-control-label, .page__contact .form-group .form-control-label {
  position: absolute;
  top: 32px;
  transform: translate(5px, -50%);
  -webkit-transform: translate(5px, -50%);
  font-size: 1rem;
  color: #8C8C8C;
  padding-left: 8px;
  transition: all ease 0.2s;
}
.page__accounts .form-group .form-control-label:before, .page__contact .form-group .form-control-label:before {
  display: none;
}
.page__accounts .form-group .form-control-label.active, .page__contact .form-group .form-control-label.active {
  top: 16px;
  left: 5px;
  font-size: 0.75rem;
  transition: all ease 0.2s;
  margin-right: 15px;
}
.page__accounts .form-group .form-control, .page__contact .form-group .form-control {
  padding-left: 16px;
  padding-top: 20px;
}
.page__accounts .form-group .card-number-wrapper::after, .page__contact .form-group .card-number-wrapper::after {
  top: 18px;
}
.page__accounts form, .page__contact form {
  margin-bottom: 16px;
}
.page__accounts form .form-group.form-group--first .form-control, .page__contact form .form-group.form-group--first .form-control {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.page__accounts form .form-group.form-group--last .form-control, .page__contact form .form-group.form-group--last .form-control {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.page__accounts form .form-group.form-group--last .form-control.no__radius--bottomRight, .page__contact form .form-group.form-group--last .form-control.no__radius--bottomRight {
  border-bottom-right-radius: 0;
}
.page__accounts form .form-group.form-group--last .form-control.no__radius--bottomLeft, .page__contact form .form-group.form-group--last .form-control.no__radius--bottomLeft {
  border-bottom-left-radius: 0;
}
@supports (-webkit-touch-callout: none) {
  .page__accounts form select, .page__contact form select {
    -webkit-appearance: none;
    appearance: none;
  }
}

@media (max-width: 800px) {
  .terms-error {
    display: none;
    width: auto;
  }
  .terms-error.show {
    display: block;
    margin: 0 0 0 0.5rem !important;
  }
}
#requestPasswordResetModal .modal-body p {
  font-size: 15px;
  font-size: calc(15 * 0.0625)rem;
  color: #7C7C7C;
  line-height: 1.4;
}
#requestPasswordResetModal .modal-body p a {
  text-decoration: underline;
  color: #55368B;
}
#requestPasswordResetModal .modal-body.cpf-form .request-password-cpf-body p:not(:first-child) {
  padding-bottom: 16px;
}
#requestPasswordResetModal .modal-body.cpf-form .request-password-cpf-body .form-group .form-control {
  border-radius: 5px;
}
#requestPasswordResetModal .modal-body.cpf-form-success p {
  padding: 8px 0;
}
#requestPasswordResetModal .modal-body.cpf-form-success .returned-email {
  line-height: 1.4;
  font-size: 15px;
  color: #7C7C7C;
  font-weight: bold;
}

#unfinishedProfile .modal-body {
  padding: 2.25rem !important;
}
#unfinishedProfile .modal-content {
  margin-top: 15%;
}

#modal-register input:-webkit-autofill,
#modal-register input:-webkit-autofill:hover,
#modal-register input:-webkit-autofill:focus,
#modal-register select:-webkit-autofill,
#modal-register select:-webkit-autofill:hover,
#modal-register select:-webkit-autofill:focus {
  background-color: transparent;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}
#modal-register .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: none !important;
}
#modal-register .btn-primary:not(:disabled):not(.disabled):active,
#modal-register .btn-primary.disabled, #modal-register .btn-primary:focus {
  background: #F8A629;
  border: 1px solid #F8A629;
  filter: brightness(0.85);
  box-shadow: 0 0 0 0.2rem #f8a629;
}
#modal-register .btn-primary {
  border-radius: 35px;
  background: #F8A629;
  border: 1px solid #F8A629;
  color: #ffffff;
}
#modal-register .btn-primary:hover {
  background: #55368B;
  border: 1px solid #55368B;
}
#modal-register label {
  margin: 0.8rem 0 0.8rem;
  font-size: 0.875rem;
  font-weight: 600;
}
#modal-register input {
  border-radius: 4px;
  padding-left: 20px;
}
#modal-register .invalid-feedback {
  font-size: 0.75rem;
  margin: 0.25rem 0 0 0;
  position: relative;
}
#modal-register .one-wrong, #modal-register .two-wrong, #modal-register .three-wrong, #modal-register .four-wrong {
  max-width: 12px !important;
}
#modal-register input[type=radio] {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  font: inherit;
  color: currentColor;
  width: 16px;
  height: 16px;
  border: 1px solid #ccc;
  border-radius: 0.15em;
  transform: translateY(-0.075em);
  padding: unset;
  vertical-align: middle;
  place-content: center;
}
#modal-register input[type=radio]::before {
  content: "";
  width: 16px;
  height: 14px;
  clip-path: inset(5% 20% 15% 10%);
  transform: scale(0);
  transform-origin: bottom left;
  transition: 20ms transform ease-in-out;
  background-color: #F47221;
  position: absolute;
  left: 1.85%;
  top: 1.85%;
}
#modal-register input[type=radio]:checked::before {
  transform: scale(1);
}
#modal-register input[type=radio]:disabled, #modal-register input:disabled, #modal-register select:disabled {
  color: #ccc;
  cursor: not-allowed;
  opacity: 0.55;
}
#modal-register input:disabled + label {
  opacity: 0.55;
}
#modal-register .modal-header {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
#modal-register .modal-header .close {
  font-size: 1.85rem;
  font-weight: 500;
  padding: 1rem 1rem 0.5rem 1rem;
}
#modal-register .modal-content {
  margin-top: 0% !important;
}
#modal-register .modal-dialog {
  max-width: 50rem !important;
  width: 50rem;
}
#modal-register .modal-body {
  padding: 0 2.5rem 0 2.5rem;
  line-height: 1rem;
}
#modal-register .first-line img {
  max-width: 8rem;
  margin-right: 2.25rem;
}
#modal-register .first-line span {
  font-size: 1.25rem;
  color: #000000;
  font-weight: 600 !important;
  margin-top: 1.75rem;
}
#modal-register .other-labels label {
  margin: 0rem 0 0 0.4rem;
  font-size: 0.75rem;
}
#modal-register .other-labels div {
  margin-top: 0.5rem;
}
#modal-register .other-labels .accept-term {
  margin: 0.5rem 0;
}
#modal-register .other-labels .non-required-checkboxes {
  font-weight: 400;
}
#modal-register .other-labels .non-required-checkboxes div {
  margin-top: 0.2rem;
}
#modal-register .other-labels .non-required-checkboxes label {
  font-weight: 400 !important;
}
#modal-register button.btn-link-login {
  color: #c00;
  text-decoration: underline;
  padding: 0;
}
#modal-register .password-requirements {
  display: flex;
  flex-direction: column;
}
#modal-register .password-requirements img {
  max-width: 1.5rem;
}
#modal-register .show__password {
  margin-top: 3.875rem !important;
  margin-right: 1.5rem !important;
  top: 0 !important;
  transform: translateY(0%) !important;
}
#modal-register #registerSubmitButton {
  margin-bottom: 1.5rem;
}
#modal-register #registerSubmitButton:disabled {
  cursor: not-allowed;
}
#modal-register #privacyPolicy .modal-dialog, #modal-register #termsOfUse .modal-dialog {
  max-height: none;
  overflow: auto;
}

#modal-login input:-webkit-autofill,
#modal-login input:-webkit-autofill:hover,
#modal-login input:-webkit-autofill:focus,
#modal-login select:-webkit-autofill,
#modal-login select:-webkit-autofill:hover,
#modal-login select:-webkit-autofill:focus, #page-login input:-webkit-autofill,
#page-login input:-webkit-autofill:hover,
#page-login input:-webkit-autofill:focus,
#page-login select:-webkit-autofill,
#page-login select:-webkit-autofill:hover,
#page-login select:-webkit-autofill:focus {
  background-color: transparent;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}
#modal-login .btn-primary:not(:disabled):not(.disabled):active,
#modal-login .btn-primary.disabled, #modal-login .btn-primary:focus, #page-login .btn-primary:not(:disabled):not(.disabled):active,
#page-login .btn-primary.disabled, #page-login .btn-primary:focus {
  background: #F8A629;
  border: 1px solid #F8A629;
  filter: brightness(0.85);
  box-shadow: 0 0 0 0.2rem #f8a629;
}
#modal-login .modal-content, #page-login .modal-content {
  margin-top: 7% !important;
  max-width: 26rem !important;
}
#modal-login .modal-header, #page-login .modal-header {
  border-bottom: none;
}
#modal-login .modal-header .close, #page-login .modal-header .close {
  font-size: 1.85rem;
  font-weight: 500;
}
#modal-login .modal-body, #page-login .modal-body {
  padding: 0rem 2.5rem 1rem 2.5rem;
}
#modal-login .modal-body .login__label, #page-login .modal-body .login__label {
  margin-top: 5px;
}
#modal-login .modal-body h2, #page-login .modal-body h2 {
  margin-bottom: 0.75rem;
}
#modal-login .modal-body p, #page-login .modal-body p {
  margin-bottom: 1rem;
}
#modal-login .modal-body .register-header-btn, #modal-login .modal-body .btn-doubleSession, #page-login .modal-body .register-header-btn, #page-login .modal-body .btn-doubleSession {
  text-decoration: underline !important;
  background-color: rgba(0, 0, 0, 0);
  color: #55368B !important;
  margin-top: 0.25rem !important;
  font-weight: 600;
}
#modal-login .modal-body .doubleSession p, #page-login .modal-body .doubleSession p {
  font-size: 0.95rem;
  line-height: 1.5rem;
}
#modal-login .modal-body input, #page-login .modal-body input {
  margin-top: 0.8rem;
  border-radius: 6px;
  padding-left: 1.25rem;
}
#modal-login .modal-body .show__password, #page-login .modal-body .show__password {
  margin: 2.35rem 0rem 0 0;
  top: 0 !important;
  transform: translateY(0%) !important;
}
#modal-login .modal-body .pull-right, #page-login .modal-body .pull-right {
  float: left !important;
  text-align: left !important;
  margin-bottom: 1rem;
}
#modal-login .modal-body .pull-right a, #page-login .modal-body .pull-right a {
  font-weight: 600 !important;
  color: #55368B !important;
  text-decoration: none;
}
#modal-login .modal-header .close, #page-login .modal-header .close {
  padding: 1rem 1.5rem 0rem 1rem;
}
#modal-login .modal-img img, #page-login .modal-img img {
  max-width: 10rem;
  border-radius: 4rem;
  padding: 0 1rem;
}
#modal-login .btn-primary, #page-login .btn-primary {
  margin-top: 0;
  margin-bottom: 1.6rem;
}

.modal-backdrop {
  display: none !important;
}

.modal::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}

@media screen and (max-width: 767px) {
  .bus-map-ajax.modal.fade.show::before {
    display: none;
  }
}

@media screen and (min-width: 767px) {
  div#studentModal {
    top: -110px;
  }
}

#errorModal::before {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}

.modal-open {
  padding-right: 0 !important;
}

body.modal-open .page {
  overflow: hidden !important;
  position: fixed;
  width: 100%;
}
body.modal-open #vueApp {
  position: unset;
}

body.modal-open .page {
  overflow: hidden !important;
  position: fixed;
  width: 100%;
}

.title-login {
  font-family: Montserrat, sans-serif;
  margin-bottom: 1.25rem;
  font-size: 20px;
  font-weight: 700;
}

.modal-dialog-scrollable .modal-body {
  flex: 1 1 auto !important;
}

#busmapModal .busmap--border {
  border-left: 1px solid white;
  padding-left: 20px;
}
#busmapModal .busmap--border::before {
  content: "";
  height: 10px;
  width: 10px;
  background-color: #ffffff;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  right: 25.5px;
}
#busmapModal .busmap--border::after {
  content: "\e904";
  font-family: "icomoon";
  font-size: 14px !important;
  color: #f8a629;
  right: 25.5px;
  position: relative;
  top: 1px;
  width: 10px;
  background: #55368B;
}
#busmapModal .alert {
  margin: 0 20px;
  position: fixed;
  bottom: 15px;
  z-index: 20;
}
#busmapModal .modal-body {
  padding: 5px !important;
}
#busmapModal .modal-dialog.modal-dialog-scrollable {
  max-width: 100vw;
  min-height: 100vh;
  padding-right: 0 !important;
  margin: 0 !important;
}
#busmapModal .bus-front {
  padding: 0 !important;
}
#busmapModal button.close {
  position: absolute;
  right: 27px;
  top: 18px;
}
#busmapModal .modal-header-content {
  max-width: 75vw;
  display: flex;
  flex-wrap: wrap;
}
#busmapModal .modal-content {
  max-height: 100vh !important;
}
#busmapModal .modal-header {
  background-color: #55368B;
  padding: 20px;
}
#busmapModal .modal-header .close {
  opacity: 1;
}
#busmapModal .modal-footer {
  padding: 0;
}
#busmapModal .modal-title {
  color: #FFF;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
#busmapModal .header-left {
  display: flex;
  flex-direction: column;
  gap: 17px;
}
#busmapModal .origin, #busmapModal .hour {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
#busmapModal .footer-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
#busmapModal .origin-value {
  color: #FFF;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  width: 130px;
}
#busmapModal .time-value, #busmapModal .durantion-trip {
  color: #FFF;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  display: flex;
  gap: 8px;
  align-items: center;
}
#busmapModal .seatMap__info-ajax {
  display: flex !important;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
}
#busmapModal .listTripsRoot .select-tip {
  margin-top: 0 !important;
}
#busmapModal .seatMap__info-ajax:after, #busmapModal .seatMap__info:after {
  content: "";
  width: 100%;
  display: none !important;
}
#busmapModal .seatMap-info-data {
  width: 65px;
  margin-right: 20px;
}
#busmapModal .seatMap__info__button {
  font-size: 0.75rem !important;
  padding: 8px 15px;
}
#busmapModal .modal-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}
#busmapModal .modalPassagers-seat {
  color: #fff;
}
#busmapModal .modalPassagers-msgTop {
  top: 5px;
  padding: 20px;
}
#busmapModal #studentModal .modal-dialog {
  max-width: 566px;
  padding-top: 165px;
}
#busmapModal .modalPassagers-msgBottom {
  bottom: -20px;
  padding: 25px;
}
#busmapModal .modalPassagers-msgBottom p, #busmapModal .modalPassagers-msgTop p {
  line-height: 1.3;
}

.modal-dialog-scrollable .modal-body {
  flex: 1 1 auto !important;
}

#busmapModal .modal-body {
  padding: 5px !important;
}
#busmapModal .modal-dialog.modal-dialog-scrollable {
  max-width: 100vw;
  min-height: 100vh;
  padding-right: 0 !important;
  margin: 0 !important;
}
#busmapModal .bus-front {
  padding: 0 !important;
}
#busmapModal button.close {
  position: absolute;
  right: 27px;
  top: 18px;
}
#busmapModal .modal-header-content {
  max-width: 75vw;
  display: flex;
  flex-wrap: wrap;
}
#busmapModal .modal-content {
  max-height: 100vh !important;
}
#busmapModal .modal-header {
  background-color: #55368B;
  padding: 20px;
}
#busmapModal .modal-header .close {
  opacity: 1;
}
#busmapModal .modal-footer {
  padding: 0;
}
#busmapModal .modal-title {
  color: #FFF;
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
#busmapModal .header-left {
  display: flex;
  flex-direction: column;
  gap: 17px;
}
#busmapModal .origin, #busmapModal .hour {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
#busmapModal .footer-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
#busmapModal .origin-value {
  color: #FFF;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  width: 130px;
}
#busmapModal .time-value, #busmapModal .durantion-trip {
  color: #FFF;
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  display: flex;
  gap: 8px;
  align-items: center;
}
#busmapModal .seatMap__info-ajax {
  display: flex !important;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-start;
}
#busmapModal .listTripsRoot .select-tip {
  margin-top: 0 !important;
}
#busmapModal .seatMap__info-ajax:after, #busmapModal .seatMap__info:after {
  content: "";
  width: 100%;
  display: none !important;
}
#busmapModal .seatMap-info-data {
  width: 65px;
  margin-right: 20px;
}
#busmapModal .seatMap__info__button {
  font-size: 0.75rem !important;
  padding: 8px 15px;
}
#busmapModal .modal-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}
#busmapModal .modalPassagers-seat {
  color: #fff;
}
#busmapModal .modalPassagers-msgTop {
  top: 5px;
  padding: 20px;
}
#busmapModal #studentModal .modal-dialog {
  max-width: 566px;
  padding-top: 165px;
}
#busmapModal .modalPassagers-msgBottom {
  bottom: -20px;
  padding: 25px;
}
#busmapModal .modalPassagers-msgBottom p, #busmapModal .modalPassagers-msgTop p {
  line-height: 1.3;
}

@media (max-width: 800px) {
  #modal-login .modal-dialog {
    margin: 0 !important;
    height: 100%;
    min-height: 100%;
    max-height: 100%;
  }
  #modal-login .modal-dialog .modal-content {
    margin-top: 0% !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100%;
    border-radius: 0 !important;
    top: 0 !important;
  }
  #modal-login .modal-body {
    padding: 0rem 1rem 1rem 1rem;
  }
  #modal-login .modal-body p {
    margin-bottom: 2.25rem;
    font-size: 1rem;
  }
  #modal-login .modal-body a {
    text-decoration: underline;
  }
  #modal-login .modal-body input {
    margin-top: 1rem;
    border-radius: 6px;
    padding-left: 1.25rem;
  }
  #modal-login .modal-body .show__password {
    margin: 2.35rem 1.25rem 0 0;
  }
  #modal-login .modal-body .pull-right {
    float: left !important;
    text-align: left !important;
    margin: 1.6rem 0rem;
  }
  #modal-login .modal-body .pull-right a {
    font-weight: 700 !important;
    color: #55368B !important;
    text-decoration: none;
  }
  #modal-login .modal-img img {
    max-width: 12rem;
    margin-top: 0.6rem;
  }
  #modal-register {
    overflow-y: auto !important;
  }
  #modal-register .modal-body {
    padding: 0 1.5rem;
  }
  #modal-register .modal-dialog {
    max-width: 100% !important;
    width: 100%;
    margin: 0;
  }
  #modal-register .invert-mobile {
    flex-direction: column-reverse;
  }
  #modal-register .password-requirements {
    margin-top: -0.25rem;
  }
  #modal-register .password-requirements label {
    margin-bottom: 0.4rem;
  }
  #modal-register .password-requirements p {
    font-size: 1rem;
  }
  #modal-register #registerSubmitButton {
    max-width: 100%;
  }
  #modal-register .other-labels label {
    font-size: 0.875rem;
  }
}
@media (min-width: 1000px) and (max-height: 650px) {
  #modal-register .modal-content {
    margin-top: 0% !important;
  }
  #modal-register .modal-dialog {
    max-width: 55rem !important;
    width: 55rem;
  }
  #modal-register label {
    margin: 0.8rem 0 0.8rem;
  }
  #modal-register .collapsable-submit {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    margin-top: -1rem;
  }
  #modal-register #registerSubmitButton {
    max-width: 100%;
  }
}
.modal-priceDiff .modal-header {
  background-color: #ffffff !important;
  padding: 20px !important;
}
.modal-priceDiff .modal-header .modal-title {
  color: #7d7c7d !important;
}
.modal-priceDiff .modal-footer {
  position: relative !important;
}

@media (min-width: 800px) {
  #modal-register .modal-dialog {
    margin-top: 0.2rem;
  }
}
#errorModal .modal-content {
  border-radius: 10px;
}
#errorModal .modal-header {
  background-color: #55368B;
  padding: 15px 25px;
  color: #FFF;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
#errorModal .modal-header .modal-title {
  color: #FFF;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
#errorModal .modal-body {
  padding: 25px;
  color: #333;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 24px;
}
#errorModal .modal-footer {
  border-top: 1px solid #E7E7E7;
  padding: 15px 25px;
}
#errorModal .btn {
  padding: 6px 25px;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
}
#errorModal .goToLink {
  display: block;
}
#errorModal .hidden {
  display: none;
}

.progress {
  background-color: #D4D4D4;
  width: 100%;
  height: 5px;
  overflow: hidden;
  font-size: 0.75rem;
  border-radius: 0.1875rem;
  margin-top: -4px;
}
.progress .progress-bar {
  flex-direction: column;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
  transition: width 0.6s ease;
}
.progress .bg-progress {
  background-color: #F8A629;
  height: 4px;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
}

h1 {
  font-size: 38px;
}

h2 {
  font-size: 20px;
}

h3 {
  font-size: 20px;
}

p {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 100%;
  color: #303030;
}

.text--isMedium {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 20px;
  line-height: 120%;
}

.text--isNormal {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 16px;
  line-height: 180%;
}

.text--isSmall {
  font-family: "Montserrat", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 100%;
}

.text--isSemibold {
  font-weight: 600;
}

.text--isBold {
  font-weight: bold;
}

.text--isRed {
  color: #FF0000;
}

.text--isPurple,
header ~ #maincontent .container a.text--isPurple:not(.btn-primary):not(.btn-outline-primary) {
  color: #55368B;
}

.text--isOrange {
  color: #F47221;
}

.text--isWhite {
  color: #ffffff;
}

.text--isPink {
  color: #FF008A;
}

.text--isLineThrough {
  text-decoration: line-through;
}

.text--isUnderline {
  text-decoration: underline;
}

.title--medium {
  font-size: 1.5625rem;
}

.title--small {
  font-size: 1.3125rem;
}

.searchOverlay .breadcrumb-item {
  font-size: 1rem;
}
.searchOverlay .breadcrumb-item a {
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  color: #ffffff !important;
}
.searchOverlay .breadcrumb-item + .breadcrumb-item:before {
  content: "\e92f";
  font-family: "icomoon";
  font-size: 0.75rem;
  color: #ffffff !important;
}

.breadcrumb {
  display: flex;
  align-items: center;
  max-width: auto;
  border: none;
}
.breadcrumb > .row {
  display: flex !important;
}
.breadcrumb .breadcrumb-item {
  font-size: 1rem;
}
.breadcrumb .breadcrumb-item a {
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  color: #55368B;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item:before {
  content: "\e92f";
  font-family: "icomoon";
  font-size: 0.75rem;
  color: #55368B;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item {
  padding: 8px;
}

.edit__search--button {
  width: 100%;
  color: white;
  font-weight: 600;
  text-align: center;
  font-size: 16px;
  text-transform: uppercase;
  cursor: pointer;
}

.trip-card__badge {
  position: absolute;
  top: 15px;
  right: 15px;
  max-width: 90px;
}

.ticket__list {
  font-size: 0;
}
.ticket__list.ticket__list--isSlider {
  white-space: nowrap;
  overflow-x: auto;
}
.ticket__list:not(.ticket__list--isSlider) .trip-card {
  margin-bottom: 16px;
}

.trip__list {
  font-size: 0;
}
.trip__list.trip__list--isSlider {
  white-space: nowrap;
  overflow-x: auto;
}
.trip__list:not(.trip__list--isSlider) .trip-card {
  margin-bottom: 16px;
}

.tripCard-slot {
  width: 100%;
}
.tripCard-slot:not(.slick-initialized) {
  display: flex;
  overflow-x: auto;
  gap: 12px;
  padding: 16px 0;
}
.tripCard-slot:not(.slick-initialized) .trip-card-default {
  flex: 0 0 auto;
  width: 80%;
}
.tripCard-slot.slick-initialized .tripMobi a {
  margin: 6px;
  display: block;
  background-color: #ffffff;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.trip-card-default:not(.tripMobi) {
  min-width: 200px;
  max-width: 250px;
  width: 100%;
  display: flex;
  flex-direction: column;
  margin-right: 8px;
  vertical-align: top;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
  background: #ffffff;
}
.trip-card-default.trip-card--isExtended, .trip-card-default.trip-card--isLastOrder {
  width: 100%;
  max-width: none;
}
.trip-card-default:not(.trip-card--isExtended) .trip-card__textWrapper .trip-card__text, .trip-card-default:not(.trip-card--isLastOrder) .trip-card__textWrapper .trip-card__text {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.trip-card-default.trip-card--isLastOrder {
  max-width: 100%;
  width: 100%;
  padding: 0 8px;
}
.trip-card-default.trip-card--isLastOrder .trip-card__text {
  display: block;
}
.trip-card-default.trip-card--isLastOrder .trip-card__text--isOrigin:before {
  content: "\e909";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 8px;
}
.trip-card-default.trip-card--isLastOrder .trip-card__text--isDestination:before {
  content: "\e904";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 8px;
}

.home-card-search-link:hover {
  text-decoration: none !important;
}

.trip-card {
  max-width: 200px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: top;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
  background: #ffffff;
}
.trip-card.trip-card--isExtended, .trip-card.trip-card--isLastOrder {
  width: 100%;
  max-width: none;
}
.trip-card:not(.trip-card--isExtended) .trip-card__textWrapper .trip-card__text, .trip-card:not(.trip-card--isLastOrder) .trip-card__textWrapper .trip-card__text {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.trip-card.trip-card--isLastOrder {
  max-width: 100%;
  width: 100%;
  padding: 0 8px;
}
.trip-card.trip-card--isLastOrder .trip-card__text {
  display: block;
}
.trip-card.trip-card--isLastOrder .trip-card__text--isOrigin:before {
  content: "\e909";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 8px;
}
.trip-card.trip-card--isLastOrder .trip-card__text--isDestination:before {
  content: "\e904";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 8px;
}

.trip-card__textWrapper {
  height: 60px;
}

.trip-card__header {
  min-height: 120px;
  position: relative;
  border-bottom: 1px solid #F6F6F6;
  overflow: hidden;
  text-align: center;
  line-height: 0;
  font-size: 0;
  background-image: linear-gradient(to top, #F6F6F6, transparent);
}
.trip-card__header .trip-card__image {
  top: -150%;
  bottom: -150%;
  left: -150%;
  right: -150%;
  position: absolute;
  margin: auto;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.trip-card__header.fix__thumb--180h .trip-card__image {
  width: 100%;
}
.trip-card__header .trip-card__textWrapper {
  width: 100%;
  position: absolute;
  margin-bottom: 0;
  padding: 16px;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(to top, rgba(25, 25, 25, 0.8), rgba(25, 25, 25, 0.5), transparent);
  text-align: left;
}
.trip-card__header .trip-card__textWrapper .trip-card__text {
  line-height: 20px;
  color: #ffffff;
}

.trip-card-default__content {
  padding: 12px;
  font-size: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.trip-card-default__content .trip-card-default__convenience {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.trip-card-default__content .trip-card-default__convenience span.trip-card-default__tag {
  width: 100%;
}

.trip-card__content {
  padding: 16px;
  font-size: 0;
}
.trip-card__content .trip-card__convenience {
  width: calc(65% - 16px / 4);
  display: inline-block;
  position: relative;
  vertical-align: middle;
}
.trip-card__content .trip-card__convenience span.trip-card__tag {
  width: auto;
}

.trip-card__image {
  max-width: 100%;
}

.trip-card-default__tag {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px;
  margin: 0 auto;
  vertical-align: middle;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  color: #ffffff;
  font-weight: 700;
  white-space: normal;
  border: 1px solid transparent;
}
.trip-card-default__tag .trip-card__tag {
  width: 100%;
  display: flex;
  text-align: center;
  margin-right: 4px;
  margin-bottom: 4px;
  padding: 4px;
}
.trip-card-default__tag.trip-card__tag--isDefault, .trip-card-default__tag.trip-card__tag--CONVENCIONAL {
  padding: 4px;
  border: 1px solid #303030;
  background: transparent;
  color: #303030;
}
.trip-card-default__tag.trip-card__tag--MobiOfertaDefault {
  padding: 4px;
  border: 1px solid #303030;
  background: transparent;
  color: #303030;
}
.trip-card-default__tag.trip-card__tag--isLeito, .trip-card-default__tag.trip-card__tag--LEITO {
  background: #387d9a;
  border: none;
  color: #ffffff;
}
.trip-card-default__tag.trip-card__tag--isSemi, .trip-card-default__tag.trip-card__tag--SEMI-LEITO {
  background: #98389A;
  border: none;
  color: #ffffff;
}
.trip-card-default__tag.trip-card__tag--isExecutive, .trip-card-default__tag.trip-card__tag--EXECUTIVO {
  background: #55368B;
  border: none;
  color: #ffffff;
}

.trip-card-default__prices .text-from {
  line-height: 1rem;
}

.trip-card__tag {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  width: calc(65% - 16px / 4);
  display: inline-block;
  position: relative;
  padding: 4px;
  margin: 0 auto;
  vertical-align: middle;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  color: #ffffff;
  font-weight: 700;
  white-space: normal;
  border: 1px solid transparent;
}
.trip-card__tag .trip-card__tag {
  width: auto;
  max-width: 100%;
  margin-right: 4px;
  margin-bottom: 4px;
  padding: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.trip-card__tag.trip-card__tag--isSemi {
  background: #98389A;
}
.trip-card__tag.trip-card__tag--isExecutive {
  background: #55368B;
}
.trip-card__tag.trip-card__tag--isDefault {
  padding: 4px;
  border: 1px solid #303030;
  background: transparent;
  color: #303030;
}
.trip-card__tag.trip-card__tag--isLeito {
  background: #387d9a;
}

.trip-card-default__convenience,
.trip-card-default__conveniences {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  padding: 4px 0;
  float: none;
  white-space: normal;
  font-size: 0;
}

.trip-card__convenience,
.trip-card__conveniences {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 4px 0;
  float: none;
  white-space: normal;
  font-size: 0;
}

.trip-card-default__conveniences {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: right;
}
.trip-card-default__conveniences__item {
  width: auto;
  display: inline-block;
  position: relative;
  padding-left: 4px;
  padding-bottom: 4px;
  vertical-align: middle;
  line-height: 1.4;
}
.trip-card-default__conveniences__item:first-child {
  padding-left: 0;
}
.trip-card-default__conveniences__wifi::before, .trip-card-default__conveniences__acessibility::before, .trip-card-default__conveniences__charger::before {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #303030;
  vertical-align: middle;
}
.trip-card-default__conveniences__wifi::before {
  content: "\e911";
  font-family: "icomoon";
}
.trip-card-default__conveniences__acessibility::before {
  content: "\e90f";
  font-family: "icomoon";
}
.trip-card-default__conveniences__charger::before {
  content: "\e90d";
  font-family: "icomoon";
}

.trip-card__conveniences {
  width: 35%;
  display: inline-block;
  vertical-align: middle;
  text-align: right;
}
.trip-card__conveniences__item {
  width: auto;
  display: inline-block;
  position: relative;
  padding-left: 4px;
  padding-bottom: 4px;
  vertical-align: middle;
  line-height: 1.4;
}
.trip-card__conveniences__item:first-child {
  padding-left: 0;
}
.trip-card__conveniences__wifi::before, .trip-card__conveniences__acessibility::before, .trip-card__conveniences__charger::before {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #303030;
  vertical-align: middle;
}
.trip-card__conveniences__wifi::before {
  content: "\e911";
  font-family: "icomoon";
}
.trip-card__conveniences__acessibility::before {
  content: "\e90f";
  font-family: "icomoon";
}
.trip-card__conveniences__charger::before {
  content: "\e90d";
  font-family: "icomoon";
}

.trip-card-default__prices {
  width: 100%;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  font-size: 0;
}
.trip-card-default__prices .trip-card__text,
.trip-card-default__prices .trip-card__values {
  display: inline-block;
  vertical-align: middle;
}
.trip-card-default__prices .trip-card__text {
  display: flex;
  flex-direction: column;
  width: 40%;
  text-align: left;
}
.trip-card-default__prices .trip-card__values {
  width: 60%;
  text-align: right;
}

.trip-card__prices {
  width: 100%;
  display: block;
  font-size: 0;
}
.trip-card__prices .trip-card__text,
.trip-card__prices .trip-card__values {
  display: inline-block;
  vertical-align: middle;
}
.trip-card__prices .trip-card__text {
  width: 40%;
  text-align: left;
}
.trip-card__prices .trip-card__values {
  width: 60%;
  text-align: right;
}

.trip-card__originalPrice {
  font-size: 10px;
  font-size: calc(10 * 0.0625)rem;
  padding-bottom: 4px;
  text-align: right;
  text-decoration: line-through;
  color: #303030;
}

.trip-card__currentPrice {
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  font-weight: 700;
  color: #F8A629;
  line-height: 1;
}

.trip-card__text span {
  display: block;
  font-weight: bold;
}
.trip-card__text.trip-card__text--isOrigin::before {
  content: "\e909";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 4px;
}
.trip-card__text.trip-card__text--isDestination::before {
  content: "\e904";
  font-family: "icomoon";
  font-size: 0.75rem;
  margin-right: 4px;
}

.ticket-slot__title {
  color: #55368B;
  margin-bottom: 8px;
}

.ticket-slot__text {
  color: #7C7C7C;
  margin-bottom: 16px;
}

.trip-card--isExtended .trip-card__textWrapper,
.trip-card--isLastOrder .trip-card__textWrapper {
  width: 60%;
  display: inline-block;
  padding-right: 8px;
  vertical-align: bottom;
  color: #303030;
}
.trip-card--isExtended .trip-card__prices .trip-card__text,
.trip-card--isLastOrder .trip-card__prices .trip-card__text {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  width: 100%;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.trip-card--isExtended .trip-card__prices .trip-card__values,
.trip-card--isLastOrder .trip-card__prices .trip-card__values {
  width: 40%;
  white-space: normal;
  word-break: break-word;
}

.trip-card--isLastOrder .trip-card__header {
  position: relative;
  overflow: hidden;
  line-height: 0;
  font-size: 0;
  padding-top: 10%;
}
.trip-card--isLastOrder .trip-card__header > img {
  top: -150%;
  bottom: -150%;
  left: -150%;
  right: -150%;
  position: absolute;
  margin: auto;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
}
.trip-card--isLastOrder .trip-card__header {
  padding-top: 50%;
}
.trip-card--isLastOrder .trip-card__prices .trip-card__values {
  vertical-align: bottom;
}
.trip-card--isLastOrder .trip-card__prices .trip-card__values .trip-card__currentPrice {
  line-height: 1.4;
}

.home-page-ticket .trip-card .trip-card__content {
  padding: 16px 8px;
}
.home-page-ticket .trip-card__prices .trip-card__text,
.home-page-ticket .trip-card__prices .trip-card__values {
  vertical-align: bottom;
  line-height: 1.4;
}
.home-page-ticket .trip-card__prices .trip-card__values {
  width: 60%;
  text-align: right;
  white-space: normal;
  word-break: break-word;
}
.home-page-ticket .trip-card__prices .trip-card__text {
  font-size: 11px;
  font-size: calc(11 * 0.0625)rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: keep-all;
}
.home-page-ticket .trip-card__prices .trip-card__text > span {
  font-size: 10px;
  font-size: calc(10 * 0.0625)rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: keep-all;
}
.home-page-ticket .trip-card__prices .trip-card__currentPrice {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  line-height: 1;
}

.trip-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.trip-container .trip__slider {
  display: flex;
  flex-direction: column;
}

.multiple-card {
  font-size: 0;
  white-space: nowrap;
  overflow-x: auto;
  padding-bottom: 16px;
}
.multiple-card img {
  object-fit: cover;
}
.multiple-card .text--isNormal {
  font-size: 13px;
}
.multiple-card hr {
  margin: 8px 0;
  border-color: #ecebec;
}
.multiple-card .trip-card__header {
  height: 130px;
  border-radius: 8px 8px 0 0;
}
.multiple-card .tripMultiple-card {
  white-space: normal;
  display: inline-block;
  vertical-align: top;
  margin: 0 8px;
  width: calc((100% - 16px) / 1.2);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
  background: #ffffff;
}
.multiple-card .home-card-search-link {
  display: block;
}

.mobiWrapper__slide {
  position: relative;
}
.mobiWrapper__slide .slick-arrow {
  position: absolute;
  top: -58px;
  right: 0;
  width: 30px;
  height: 30px;
  background: rgb(246, 246, 246);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  border-radius: 100%;
  font-size: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.mobiWrapper__slide .slick-arrow:before {
  content: "\e921";
  font-family: "icomoon";
  font-size: 16px;
  color: #55368B;
}
.mobiWrapper__slide .slick-arrow.slick-prev {
  right: 40px;
}
.mobiWrapper__slide .slick-arrow.slick-prev:before {
  content: "\e92f";
  transform: rotate(-180deg);
  display: inline-block;
}
.mobiWrapper__slide .slick-arrow.slick-next:before {
  content: "\e92f";
}
.mobiWrapper__slide .slick-arrow.slick-disabled {
  opacity: 0.6;
  transition: opacity 0.5s ease-in-out;
}

.tripMobi .trip-card-default__prices .trip-card__text {
  line-height: 1.6;
  color: #393939;
}

.tripCard__mobiImage {
  height: 120px;
}
.tripCard__mobiImage img {
  width: 100%;
  height: 120px;
  object-fit: cover;
}
.tripCard__convenience {
  margin: 8px 0 16px 0;
}
.tripCard__defaultTag {
  font-weight: 700;
  font-size: 10px;
  color: #55368B;
  border: 1px solid #55368B;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 6px;
  background-color: #EEEBF3;
}
.tripCard__mobiText--origin {
  color: #393939;
  font-size: 16px;
  margin-bottom: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tripCard__mobiText--isDestination {
  font-size: 12px;
  color: #393939;
}
.tripCard__conveniencesIcon {
  margin: 4px 0 6px;
  gap: 4px;
}
.tripCard__conveniencesIcon .trip-card-default__conveniences__item::before {
  color: #55368B;
  font-size: 16px;
}

@media (min-width: 480px) {
  .multiple-card f .tripMultiple-card {
    width: calc((100% - 16px) / 1.5);
  }
}
@media (min-width: 800px) {
  .ticket__list.ticket__list--isSlider {
    overflow-x: hidden;
    font-size: 0;
  }
  .trip-card {
    width: calc((100% - 16px / 2 * 5) / 6);
  }
  .trip-card:last-child {
    margin-right: 0;
  }
  .trip-card.trip-card--isExtended {
    width: calc((100% - 16px / 2 * 3) / 4);
  }
  .ticket-slot__text-slot__text br {
    display: none;
  }
  .trip-card__currentPrice {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .trip-card__header {
    height: auto;
    min-height: auto;
    padding-top: 0;
  }
  .trip-card__header .trip-card__image {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    min-height: auto;
    min-width: auto;
  }
  .trip-card__header.fix__thumb--180h {
    height: 180px;
    position: relative;
  }
  .trip-card__header.fix__thumb--180h .trip-card__image {
    height: 100%;
    width: 100%;
  }
  .thumb__adjust--180h {
    position: relative;
    overflow: hidden;
    height: 180px;
  }
  .thumb__adjust--180h img {
    max-width: none;
    height: 215px;
    width: auto;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .trip-card--isLastOrder .trip-card__header {
    overflow: visible;
    padding: 0;
    line-height: normal;
  }
  .trip-card--isLastOrder .trip-card__header .trip-card__image {
    min-width: auto;
    min-height: auto;
    max-width: 100%;
    max-height: 100%;
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  .trip-card--isLastOrder .trip-card__content .trip-card__prices .trip-card__textWrapper,
  .trip-card--isLastOrder .trip-card__content .trip-card__prices .trip-card__values {
    width: 50%;
    display: inline-block;
    position: relative;
    vertical-align: bottom;
  }
  .trip-card--isLastOrder .trip-card__content .trip-card__prices .trip-card__values .trip-card__currentPrice {
    font-size: 18px;
    font-size: calc(18 * 0.0625)rem;
  }
  .multiple-card .tripMultiple-card {
    margin: 0 8px;
    width: calc((100% - 16px) / 4);
  }
}
@media (min-width: 768px) {
  .tripCard__mobiText--origin {
    font-size: 18px;
  }
  .tripCard-slot:not(.slick-initialized) .trip-card-default {
    width: calc(33.3333333333% - 9px);
  }
  .mobiWrapper__slide .tripCard-slot:not(.slick-initialized) {
    justify-content: flex-start;
    overflow-x: auto;
  }
  .mobiWrapper__slide .tripCard-slot:not(.slick-initialized) .trip-card-default {
    width: 31%;
  }
}
@media (min-width: 1024px) {
  .tripCard-slot:not(.slick-initialized) .trip-card-default {
    width: calc(25% - 12px);
  }
  .mobiWrapper__slide .trip-slot__text {
    width: calc(100% - 80px);
  }
  .mobiWrapper__slide .tripCard-slot:not(.slick-initialized) {
    justify-content: flex-start;
    overflow-x: auto;
  }
  .mobiWrapper__slide .tripCard-slot:not(.slick-initialized) .trip-card-default {
    width: 20%;
  }
}
@media (max-width: 800px) {
  .trip-card__header .trip-card__image {
    width: 100%;
    height: 100%;
  }
  .tripCard__mobiImage {
    height: 160px;
  }
}
.explore {
  display: inline-block;
  border-radius: 4px;
  margin: 0 2px;
  width: calc((100% - 16px) / 1.5);
  overflow: hidden;
}

.explore__header {
  display: block;
  position: relative;
}
.explore__header:after {
  content: " ";
  font-size: 0;
  display: block;
  background-image: linear-gradient(311.68deg, rgba(245, 138, 37, 0.6) 0.93%, rgba(245, 138, 37, 0) 100%);
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}

.explore__textWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  z-index: 20;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}

.explore__text {
  color: #ffffff;
  padding: 16px;
  white-space: normal;
  text-align: center;
}

.error-message-text {
  font-size: 1rem;
}

.explore__slider {
  font-size: 0;
  white-space: nowrap;
  overflow-x: auto;
  padding-bottom: 16px;
}

@media (max-width: 800px) {
  .page[data-action^=Home-Show] .home-page-explore .ticket__slider .ticket__list {
    width: 100%;
    display: block;
    position: relative;
  }
  .page[data-action^=Home-Show] .home-page-explore .ticket__slider .ticket__list .explore {
    width: calc(100% - 16px / 2 * 3 / 4);
  }
  .page[data-action^=Home-Show] .home-page-explore .ticket__slider .ticket__list .explore:last-child {
    margin-right: 0;
  }
  .page[data-action^=Home-Show] .home-page-explore .ticket__slider .ticket__list.ticket__list--isSlider .explore {
    width: calc((100% - 16px / 2 * 3) / 2.5);
  }
}
@media (min-width: 800px) {
  .ticket__list.ticket__list--isSlider {
    font-size: 0;
  }
  .explore {
    width: calc((100% - 16px) / 4);
  }
  .explore__header {
    display: inline-block;
    max-width: 100%;
  }
  .explore__image {
    border-radius: 4px;
  }
}
.home-page-faq {
  background-color: #ffffff;
  margin-bottom: 0;
}
.home-page-faq.home-page__block {
  margin-bottom: 0;
}

.home-page__faq {
  margin: 0 auto;
  padding: 32px 0;
  text-align: center;
}
.home-page__faq.home-page__block {
  margin-bottom: 0;
}
.home-page__faq .ticket-slot__title {
  text-align: left;
  color: #55368b;
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: 700;
}
.home-page__faq .ticlet-slot__text {
  text-align: left;
}
.home-page__faq .faq button.btn-primary.btn-block {
  margin: 0 auto;
}
.home-page__faq .faq > .btn-primary.btn-block {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.home-page__faq .faq > .btn-primary.btn-block .isa-image {
  height: 3rem;
  margin-right: 10px;
  border-radius: 50%;
}
.home-page__faq .faq {
  overflow: hidden;
}
.home-page__faq .faq > .btn-primary.btn-block {
  position: relative;
  z-index: 15;
}

.faq-options__list {
  font-size: 0;
  padding-top: 16px;
  padding-bottom: 16px;
}

.faq-answers__description-block {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  height: 0;
  display: block;
  position: relative;
  padding: 0;
  opacity: 0;
  background: #e5e5e5;
  border-bottom: 1px solid #F9BF2D;
  transition: 300ms;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
  text-align: left;
  cursor: default;
}
.faq-answers__description-block p {
  cursor: default;
}
.faq-answers__description-block .items__list {
  list-style-type: disc;
  padding-left: 32px;
  padding-bottom: 16px;
}
.faq-answers__description-block .items__list li {
  padding-bottom: 8px;
}

.faq-answers__description-text {
  padding: 0 0 8px;
  line-height: 1.4;
}
.faq-answers__description-text.ordered__list {
  padding-left: 32px;
  padding-bottom: 16px;
}
.faq-answers__description-text.ordered__list[type=a] {
  list-style-type: lower-alpha;
}
.faq-answers__description-text.ordered__list[type="1"] {
  list-style-type: decimal;
}
.faq-answers__description-text.ordered__list .item {
  padding-bottom: 8px;
}
.faq-answers__description-text .faq-answers__description-line {
  padding-bottom: 8px;
}
.faq-answers__description-text a {
  color: #55368B;
  font-weight: bold;
}
.faq-answers__description-text a:hover {
  color: rgb(62.5388601036, 39.7305699482, 102.2694300518);
}
.faq-answers__description-text a:visited, .faq-answers__description-text a:focus {
  color: rgb(40.0777202073, 25.4611398964, 65.5388601036);
}

.faq-answers__item {
  padding: 8px 0;
}
.faq-answers__item.active {
  padding: 8px 0 0;
}
.faq-answers__item.active .faq-answers__title {
  color: #55368B;
}
.faq-answers__item.active .faq-answers__title::after {
  transform: translateY(-50%) rotate(180deg);
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
}
.faq-answers__item.active .faq-answers__description-block {
  height: auto;
  padding: 16px 16px 32px;
  opacity: 1;
}

.faq-options__item {
  display: inline-block;
  width: calc((100% - 16px / 4) / 3);
  margin: 0;
  padding: 0 0 4px;
  padding-right: 4px;
  vertical-align: middle;
}
.faq-options__item:nth-child(3n) {
  padding-right: 0;
}
.faq-options__item button.btn-block.btn-secondary {
  font-size: 10px;
  font-size: calc(10 * 0.0625)rem;
  line-height: 1.2;
  white-space: normal;
  padding: 4px;
  margin: 0 auto;
}
.faq-options__item button.btn-block.btn-secondary:hover {
  color: #ffffff;
  background-color: #F8A629;
}
.faq-options__item button.btn-block.btn-secondary.active, .faq-options__item button.btn-block.btn-secondary:active {
  color: #ffffff;
  background-color: #F8A629;
  border-color: #F8A629;
}
.faq-options__item button.btn-block.btn-secondary:focus {
  box-shadow: none;
}
.faq-options__item button.btn-block.btn-secondary:visited {
  color: #ffffff;
  background-color: #F8A629;
}
.faq-options__item .btn-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: none;
  border-color: #F8A629;
  background-color: #F8A629;
}

.faq-answers__list {
  margin: 0 auto;
  padding: 0;
  height: 0;
  opacity: 0;
  font-size: 0;
  text-align: center;
  transition: opacity 600ms ease-in-out, height 400ms ease-in-out, padding 450ms ease-in-out, font-size 450ms ease-in-out;
  -webkit-transition: opacity 600ms ease-in-out, height 400ms ease-in-out, padding 450ms ease-in-out, font-size 450ms ease-in-out;
  -moz-transition: opacity 600ms ease-in-out, height 400ms ease-in-out, padding 450ms ease-in-out, font-size 450ms ease-in-out;
  -ms-transition: opacity 600ms ease-in-out, height 400ms ease-in-out, padding 450ms ease-in-out, font-size 450ms ease-in-out;
  -o-transition: opacity 600ms ease-in-out, height 400ms ease-in-out, padding 450ms ease-in-out, font-size 450ms ease-in-out;
}
.faq-answers__list.active {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  opacity: 1;
  height: auto;
  padding: 8px 0 16px 0;
  transition: opacity 1000ms ease-in-out, height 800ms ease-in-out, padding 850ms ease-in-out;
  -webkit-transition: opacity 1000ms ease-in-out, height 800ms ease-in-out, padding 850ms ease-in-out;
  -moz-transition: opacity 1000ms ease-in-out, height 800ms ease-in-out, padding 850ms ease-in-out;
  -ms-transition: opacity 1000ms ease-in-out, height 800ms ease-in-out, padding 850ms ease-in-out;
  -o-transition: opacity 1000ms ease-in-out, height 800ms ease-in-out, padding 850ms ease-in-out;
}

.faq-answers__title {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  display: block;
  position: relative;
  margin: 0;
  padding: 8px 32px 8px 16px;
  border-bottom: 1px solid #F9BF2D;
  font-weight: bold;
  color: #6c6c6c;
  text-align: left;
  cursor: pointer;
  transition: 300ms;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
}
.faq-answers__title::after {
  font-size: 10px;
  font-size: calc(10 * 0.0625)rem;
  content: "\e900";
  font-family: "icomoon";
  color: #55368B;
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transition: 300ms;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
}

@media (min-width: 800px) {
  .faq-options__item {
    width: calc((100% - 16px / 2) / 3);
    padding: 0 0 8px;
    padding-right: 8px;
  }
  .faq-options__item button.btn-block.btn-secondary {
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
    line-height: 1.4;
    padding: 2px;
  }
  .faq-options__item button.btn-block.btn-secondary:focus {
    box-shadow: none;
  }
  .faq-answers__item.active .faq-answers__description-block {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .faq-answers__title {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .home-page__faq .faq > .btn-primary.btn-block {
    margin: 0 auto;
    max-width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .home-page__faq .faq > .btn-primary.btn-block .isa-image {
    height: 3rem;
    margin-right: 10px;
    border-radius: 50%;
  }
}
.menu-toggleable-left {
  z-index: 25;
}
.menu-toggleable-left .bg-inverse {
  padding: 13px;
  display: flex;
  flex-direction: row;
  align-items: center;
}
.menu-toggleable-left .close-menu {
  flex: none;
  padding: 5px;
  margin-bottom: 5px;
  background: none;
  border: none;
}
.menu-toggleable-left .close-menu button {
  padding: 0;
}
.menu-toggleable-left.in {
  background-color: #FFA100;
  background-repeat: no-repeat;
  background-size: cover;
  max-width: 340px;
  margin: 0;
}
.menu-toggleable-left .menu-group {
  flex: unset;
  width: 100%;
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  background-color: #f6f6f6;
}

.close-button:before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 1.25rem;
  color: #ffffff;
}

.navbar-nav {
  background-color: #f6f6f6;
  padding-bottom: 0;
}
.navbar-nav.has-items {
  padding-bottom: 48px;
}
.navbar-nav .nav-item {
  background-color: #ffffff;
}
.navbar-nav .nav-link {
  padding: 24px;
  color: #303030;
}
.navbar-nav .nav-link:before {
  content: "\e910";
  font-family: "icomoon";
  display: inline-block;
  vertical-align: middle;
  margin-right: 16px;
  font-size: 1.125rem;
  color: #55368B;
}

.nav-user {
  width: 100%;
  background: linear-gradient(180deg, rgba(76, 55, 112, 0) 0%, rgba(254, 161, 63, 0.58) 100%), #4C3770;
  padding: 16px;
  list-style: none;
  border-radius: 5px;
  margin-bottom: 16px;
  margin-top: 16px;
  color: #ffffff;
}
.nav-user a {
  color: #ffffff;
}

@media (max-width: 1024px) {
  .menu-toggleable-left.navbar-toggleable-sm {
    position: fixed;
    left: -100%;
    top: 0;
    bottom: 0;
    transition: left 0.5s cubic-bezier(0, 1, 0.5, 1);
    display: block;
    max-width: 100%;
  }
  .menu-toggleable-left.navbar-toggleable-sm.in {
    min-width: 50%;
    left: 0;
  }
}
@media (min-width: 1024px) {
  .navbar.bg-inverse .navbar-nav {
    padding-bottom: 0;
    background: none;
  }
  .navbar.bg-inverse .navbar-nav .nav-link {
    padding: 0 15px;
    color: #ffffff;
  }
  .navbar.bg-inverse .navbar-nav .nav-link:before {
    display: none;
  }
  .navbar.bg-inverse .navbar-nav .nav-link:focus, .navbar.bg-inverse .navbar-nav .nav-link:hover {
    background-color: transparent;
    color: #ffffff;
  }
  .navbar.bg-inverse .navbar-nav .nav-item {
    background: none;
  }
}
.Order-Confirm .footer, .Checkout-Begin .footer, .Checkout-PixPending .footer {
  position: unset;
  width: unset;
}

.footer {
  background-color: #303030;
  color: #ffffff;
  position: absolute;
  width: 100%;
}
.footer h3, .footer .footer-title {
  color: #F8A629;
  font-size: 20px;
  font-weight: 700;
  line-height: 3rem;
}
.footer .slick-slide {
  padding: 4px;
}

.footer__container {
  display: flex;
  flex-direction: column;
  width: 100%;
}

#launcher, iframe[title="Fechar mensagem"], iframe[title="Mensagem da empresa"], div[data-testid=unread-indicator-container] {
  display: none !important;
}

.hide {
  display: none;
}

.js-gratuidade-close {
  width: 50px;
  height: 50px;
  background: rgb(248, 166, 41);
  font-weight: 600;
  position: fixed;
  bottom: 20px;
  font-size: 0;
  border-radius: 50%;
  right: 20px;
}
.js-gratuidade-close:before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 0.75rem;
  color: #fff;
}

.footer__block {
  padding: 0;
}
.footer__block.footer__block--first {
  display: flex;
}
.footer__block.footer__block--first .content-asset {
  order: 2;
}
.footer__block--first {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-bottom: 32px;
}

.footer__logo {
  order: 0;
  max-width: 105px;
  margin-top: 16px;
}
.footer__logo img {
  width: 100%;
}

.social__list {
  max-width: 160px;
}
.social__list .content-asset {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
}

.social__item + .social__item {
  margin-left: 8px;
}
.social__item:nth-child(7n) {
  margin-left: 0;
}

.social__icon {
  font-size: 0;
}
.social__icon::before {
  content: " ";
  font-size: 0;
  display: block;
  font-size: 1.25rem;
  color: #ffffff;
}
.social__icon--linkedin::before {
  content: "\e907";
  font-family: "icomoon";
}

.social__icon--twitter::before {
  content: "\e923";
  font-family: "icomoon";
}

.social__icon--tiktok::before {
  content: "\e926";
  font-family: "icomoon";
}

.social__icon--youtube::before {
  content: "\e927";
  font-family: "icomoon";
}

.social__icon--facebook::before {
  content: "\e905";
  font-family: "icomoon";
}

.social__icon--instagram::before {
  content: "\e906";
  font-family: "icomoon";
}

.social__icon--linkedin::before {
  content: "\e907";
  font-family: "icomoon";
}

.footer__about {
  width: 100%;
  margin-top: 48px;
}

.about__list li {
  position: relative;
  padding: 4px 0 4px 8px;
}
.about__list li::before {
  content: " ";
  font-size: 0;
  display: block;
  width: 4px;
  height: 4px;
  background: linear-gradient(68.43deg, #F47221 11.48%, #F9BF2D 88.53%);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
.about__list a {
  color: #ffffff;
}

.footer__partners {
  margin-bottom: 32px;
  overflow: hidden !important;
}

.partners__list {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: flex !important;
  justify-content: space-between !important;
}
.partners__list li {
  margin: 0 !important;
  margin-right: 20px;
  padding: 4px 0;
}
.partners__list li:last-child {
  margin-right: 0;
}
.partners__list li:first-child {
  margin-left: 0 !important;
}
.partners__list li img {
  display: block;
}

.footer__payments {
  margin-bottom: 32px;
}

.payments__list {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
}
.payments__list li {
  margin-right: 4px;
  vertical-align: middle;
}
.payments__list li:last-child {
  margin-right: 0;
}
.payments__list img {
  width: 40px;
}

.footer__security {
  margin-bottom: 16px;
}

.footer__copyright {
  font-size: 0.75rem;
}
.footer__copyright .title {
  font-size: 0.75rem;
  margin-bottom: 4px;
  font-weight: 700;
}
.footer__copyright p {
  line-height: 1.5;
  color: #C1C1C1;
}
.footer__copyright a {
  color: #C1C1C1;
}

.footer-policy {
  background-color: #fff;
  border-radius: 8px;
  border: 1px solid #c5c5c5;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, 0);
  color: #787878;
  padding: 10px 30px;
  position: fixed;
  align-items: center;
  display: flex;
  justify-content: space-between;
  z-index: 20;
}
.footer-policy .policy-text {
  line-height: 30px;
  width: 70%;
}
.footer-policy .btn-primary {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  margin: 0;
  padding: 0 40px;
  line-height: 50px;
  height: 50px;
}

@media (max-width: 800px) {
  .footer__block.mobile {
    display: block;
  }
  .footer__block.desktop {
    display: none;
  }
  .footer__block--first {
    border-bottom: 1px solid #424242;
    padding-bottom: 32px;
    margin-bottom: 32px;
  }
  .footer__block {
    position: relative;
  }
  .footer__block.footer__block--first .content-asset ul.social__links {
    position: absolute;
    right: 0;
    top: 21px;
  }
  .social__list {
    margin-top: 16px;
  }
  .footer__about {
    margin-top: 32px;
  }
  .partners__list {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }
  .partners__list li {
    margin: 0 !important;
    margin-right: 20px;
    padding: 4px 0;
  }
  .partners__list li:last-child {
    margin-right: 0;
  }
  .partners__list li:first-child {
    margin-left: 0 !important;
  }
  .partners__list li img {
    max-width: 120% !important;
    max-height: 120% !important;
  }
  .partners__list li .footerLinkTag {
    height: auto;
    width: fit-content;
    display: block;
  }
  .footer-policy {
    display: block;
    z-index: 1200;
  }
  .footer-policy .policy-text {
    margin-bottom: 10px;
    width: 100%;
  }
}
@media (min-width: 800px) {
  .footer__block.mobile {
    display: none;
  }
  .footer__block.desktop {
    display: block;
  }
  .footer__block {
    padding-bottom: 32px;
  }
  .footer__block--first {
    display: block;
    position: relative;
    border-bottom: none;
    padding-bottom: 32px;
    margin-bottom: 0;
    font-size: 0;
    text-align: left;
  }
  .footer__block.footer__block--first {
    display: flex;
    padding: 0px;
  }
  .footer__block.footer__block--first .content-asset {
    order: 2;
  }
  .footer__logo,
  .footer__about {
    display: inline-block;
    position: relative;
    margin: 0;
    padding-right: 4px;
    vertical-align: middle;
  }
  .footer__logo {
    width: 20%;
    padding: 0;
  }
  .footer__about {
    width: 70%;
    padding: 0 16px;
  }
  .social__list {
    width: auto;
    position: absolute;
    top: 4px;
    right: 0;
    bottom: auto;
    left: auto;
  }
  .social__item {
    margin-bottom: 8px;
  }
  .about__list {
    width: auto;
    display: block;
    position: relative;
    word-break: break-word;
    white-space: normal;
    font-size: 0;
  }
  .about__list li {
    width: auto;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    padding: 4px 16px 4px 8px;
    font-size: 14px;
    font-size: calc(14 * 0.0625)rem;
  }
  .footer__partners {
    width: 100%;
    border-bottom: 1px solid #424242;
    padding-bottom: 32px;
    margin-bottom: 32px;
  }
  .footer__block--second {
    width: 100%;
    height: auto;
    display: block;
    position: relative;
    font-size: 0;
  }
  .footer__copyright,
  .footer__payments,
  .footer__security {
    width: 33.3333333333%;
    height: auto;
    display: inline-block;
    position: relative;
    padding: 0;
    padding-right: 8px;
    margin: 0 auto;
    vertical-align: top;
    text-align: left;
  }
  .footer__payments {
    padding: 0;
  }
  .footer__payments h3 {
    margin: 0 auto;
    padding-bottom: 16px;
  }
  .footer__payments .payments__list {
    display: block;
    position: relative;
  }
  .footer__payments .payments__list li {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0;
    padding-right: 4px;
    padding-bottom: 4px;
  }
  .footer__payments .payments__list li:last-child {
    padding-right: 0;
  }
}
#zendesk-button-footer {
  padding-left: 0;
}
#zendesk-button-footer::before {
  display: none !important;
}

.d-flex.flex-column.align-items-center .btn-primary.small.mx-0.my-0.py-2.px-3.mt-3.mt-md-0.mb-3.js-gratuidade {
  display: none !important;
}

.hero {
  background: #55368B;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  z-index: 10;
  height: 100px;
}
.hero .btn__backHome {
  color: white;
}

.page-title__icon, .hero .page-title {
  font-size: 1.25rem;
  background: none;
}
.page-title__icon:after, .hero .page-title:after {
  font-family: "icomoon";
  content: "\e917";
  margin-left: 7px;
  font-size: 0.9375rem;
  color: #F9BF2D;
}

@media (min-width: 1024px) {
  .hero {
    background: none;
    height: 96px;
    display: flex;
  }
  .hero h1.page-title {
    position: absolute;
    display: block;
    right: 0;
  }
  .hero--absolute {
    position: absolute;
    top: 0;
    margin: 0 auto;
    left: 0;
    right: 0;
    text-align: center;
    height: 70px;
    width: 300px;
    padding: 0;
  }
  .hero--absolute h1.page-title {
    position: relative;
    z-index: 10;
  }
  .slant-down:after,
  .slant-up:after {
    display: none;
  }
}
.component__toolTip {
  width: 100%;
  background: #ffffff;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  padding: 16px;
}
.component__toolTip p {
  max-width: 85%;
  color: #7C7C7C;
  line-height: 1.2;
}
.component__toolTip button {
  appearance: none;
  background: transparent;
  border: none;
  float: right;
  font-size: 0;
}
.component__toolTip button:after {
  font-size: 0.6875rem;
  color: #55368B;
  content: "\e913";
  font-family: "icomoon";
}

.home-page-partner-companies {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  padding: 16px 0;
}
.home-page-partner-companies-logos-wrapper {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  position: static;
  overflow: hidden;
  overflow-x: scroll;
}
.home-page-partner-companies-logos-wrapper.footer__partners {
  position: static;
}
.home-page-partner-companies-logos-container {
  width: auto;
  max-width: none;
  display: block;
  position: relative;
  white-space: nowrap;
  word-break: keep-all;
}
.home-page-partner-companies-logos-items {
  width: auto;
  max-width: none;
  display: block;
  position: relative;
}
.home-page-partner-companies-logos-item {
  width: auto;
  height: auto;
  display: inline-block;
  position: relative;
  padding: 0 16px;
  margin: 0 auto;
  vertical-align: middle;
}
.home-page-partner-companies-logos-item.slick-slide {
  opacity: 0.5;
  transition: 300ms;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -ms-transition: 300ms;
  -o-transition: 300ms;
}
.home-page-partner-companies-logos-item.slick-slide.slick-current {
  opacity: 1;
}
.home-page-partner-companies-logos-item-logo {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  display: block;
  position: relative;
  margin: 0 auto;
  bottom: auto;
  background-color: #D4D4D4;
}
.home-page-partner-companies-logos-item-logo[src^=http], .home-page-partner-companies-logos-item-logo[src^="on/"] {
  background-color: transparent;
}
.home-page-partner-companies-arrows,
.home-page-partner-companies .slick-arrow {
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  border-radius: 50%;
  border: 1px solid #4C3770;
  background: #55368B;
  font-size: 0;
  top: 50%;
  left: auto;
  right: auto;
  bottom: auto;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  vertical-align: middle;
}
.home-page-partner-companies-arrows::before,
.home-page-partner-companies .slick-arrow::before {
  width: 100%;
  height: 100%;
  content: " ";
  font-size: 0;
  display: block;
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  display: inline-block;
  position: relative;
  color: #ffffff;
  vertical-align: middle;
  text-align: center;
  line-height: calc(40px - 1px * 4);
}
.home-page-partner-companies-left-arrow,
.home-page-partner-companies .slick-prev {
  left: 8px;
}
.home-page-partner-companies-left-arrow::before,
.home-page-partner-companies .slick-prev::before {
  content: "‹";
}
.home-page-partner-companies-right-arrow,
.home-page-partner-companies .slick-next {
  right: 8px;
}
.home-page-partner-companies-right-arrow::before,
.home-page-partner-companies .slick-next::before {
  content: "›";
}

@media (max-width: 800px) {
  .home-page-partner-companies.home-page__block .home-page-partner-companies-title {
    text-align: center;
    font-size: 1.125rem;
    margin-bottom: 16px;
  }
  .home-page-partner-companies-logos-items {
    padding: 0;
  }
  .home-page-partner-companies-logos-item-logo {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    transform: none;
    -webkit-transform: none;
  }
}
@media (min-width: 800px) {
  .home-page-partner-companies {
    margin-bottom: 32px;
  }
  .home-page-partner-companies-logos-items {
    padding: 8px 64px;
  }
}
.page[data-action=Order-Details] {
  background-color: transparent;
}

strong {
  font-weight: bold;
}

.generate-new-same-QRCode {
  display: block;
  margin: 1.6rem auto 1.6rem auto;
  max-width: 15rem;
}

.generate-new-same-QRCode button {
  margin: 1.6rem auto 1.6rem auto;
  padding: 1rem;
  border-radius: 3rem;
  max-width: 15rem;
  background: #55368B;
  color: #ffffff;
  transition: 0.2s;
}

.generate-new-same-QRCode button:active {
  filter: brightness(1.2);
}

.orderPanel__main {
  padding-top: 16px;
  padding-bottom: 16px;
}

.Order-TicketDetails #detailsRoot .card.order__card {
  margin: 32px 0;
}

.order__card {
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  margin: 16px 0;
  padding-top: 64px;
}
.order__card.order__card-cancel {
  padding-top: 0;
  border-color: #f85032;
}
.order__card.order__card-cancel .order__header {
  padding-top: 0;
}
.order__card.order__card-cancel .cancel__group--link {
  width: auto;
  margin: 0 -16px 32px -16px;
  display: block;
  background: #f85032;
}
.order__card.order__card-cancel .seat__cancel {
  color: #ffffff;
  padding: 6px 0;
  font-size: 14px;
}

.order__header {
  padding: 16px;
  border-bottom: 1px solid #D4D4D4;
}
.order__header h3 {
  font-size: 1.25rem;
  color: #55368B;
  font-weight: 700;
}

.order__iconArrow:after {
  content: "\e915";
  font-family: "icomoon";
  font-size: 0.6875rem;
  margin: 0 16px;
  color: #303030;
}

.itinerary__content {
  position: relative;
  padding: 16px 32px;
  border-bottom: 1px solid #D4D4D4;
}

.order__body {
  padding: 16px;
}

.order__infosContent {
  gap: 16px;
}

.order__infos {
  padding: 0 0 16px;
  font-size: 0.75rem;
  color: #7C7C7C;
}
.order__infos strong {
  font-weight: bold;
  display: block;
  color: #303030;
  margin-top: 4px;
}
.order__infos strong.order__infos--price {
  font-size: 1.0625rem;
  color: #F47221;
}

.order__footer {
  padding: 16px;
  border-top: 1px solid #D4D4D4;
}

.link__moreInfo,
.link__moreInfoPage {
  font-weight: bold;
  color: #55368B;
  display: block;
  text-align: center;
  font-size: 0.75rem;
  text-decoration: underline;
  padding: 8px 0;
}

.link__moreInfoPage {
  display: none;
}

.order__hours {
  position: relative;
}

.travel__card {
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}
.travel__card .product-line-item-details {
  overflow-y: inherit;
  margin-bottom: 16px;
}
.travel__card .product-line-item {
  border-bottom: 1px solid #F6F6F6;
}
.travel__card .product-line-item + .product-line-item:before {
  display: none;
}
.travel__card .card-body {
  padding: 16px 16px 0;
}
.travel__card .product-summary-block {
  margin: 0;
}
.travel__card .slick-arrow {
  width: 37px;
  height: 37px;
  display: inline-block;
  position: absolute;
  border-radius: 50%;
  border: 1px solid #D4D4D4;
  background: #ffffff;
  font-size: 0;
  top: 48px;
  left: auto;
  right: auto;
  bottom: auto;
  vertical-align: middle;
}
.travel__card .slick-arrow::before {
  width: 100%;
  height: 100%;
  content: "\e900";
  font-family: "icomoon";
  font-size: 15px;
  font-size: calc(15 * 0.0625)rem;
  display: inline-block;
  position: relative;
  color: #55368B;
  font-weight: bold;
  vertical-align: middle;
  text-align: center;
  line-height: calc(37px - 1px * 4);
}
.travel__card .slick-arrow.slick-disabled {
  background: #F6F6F6;
}
.travel__card .slick-arrow.slick-disabled:before {
  color: #8C8C8C;
}
.travel__card .slick-prev {
  left: -32px;
}
.travel__card .slick-prev::before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.travel__card .slick-next {
  right: -32px;
}
.travel__card .slick-next::before {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.company_images_wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  overflow: hidden;
  height: 65px;
  font-size: 0;
}

.card-body .company_images_wrap {
  height: 75px;
}

.company_images {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  padding: 16px;
  overflow: hidden;
  max-height: 90px;
  overflow-x: scroll;
  font-size: 0;
  white-space: nowrap;
  word-break: keep-all;
}

.orderDetailLogo {
  width: auto;
  display: inline-block;
  max-width: 150px;
  height: auto;
  margin: 0;
  padding: 0;
  padding-right: 8px;
  font-size: 1rem;
  padding-bottom: 8px;
}
.orderDetailLogo:not(:first-child) {
  display: none;
}

.qrcode__group {
  display: flex;
  gap: 25px;
  justify-content: center;
  align-items: center;
  padding-left: 16px;
}
.qrcode__group .qr-code-img {
  width: 100%;
  height: auto;
}
.qrcode__group .qr-code-img--small {
  max-height: 92px;
  max-width: 92px;
  margin: 0 auto;
}

.barcode__text {
  margin: 8px 0;
  font-size: 0.75rem;
  text-align: center;
  color: #7C7C7C;
}

.cancel_flag {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40%;
  margin: 0;
}

.qrcode__content {
  margin-right: 16px;
  display: inline-block;
  vertical-align: top;
  width: 145px;
}

.details__content {
  display: inline-block;
  max-width: 50%;
  vertical-align: top;
}

.seat__number {
  font-size: 1rem;
  font-weight: bold;
  margin: 8px 0;
}
.seat__number:after {
  content: "\e946";
  font-family: "icomoon";
  font-size: 0.875rem;
}

.seat__cancel__wraper {
  margin-bottom: 16px;
}
.seat__cancel__wraper .seat__cancel {
  font-size: 0.75rem;
  margin-top: 0;
  font-weight: bold;
  color: #7C7C7C;
  text-decoration: underline;
}
.seat__cancel__wraper .seat__cancel.disabled {
  color: #FF0000;
}

.itinerary_items .order__hours {
  padding-left: 16px;
}
.itinerary_items .divisor {
  left: -32px;
  right: auto;
}

.company__group {
  display: block;
  position: relative;
  margin-top: 30px;
}
.company__group .line-item-attributes {
  display: flex;
  gap: 5px;
  flex-direction: column;
}
.company__group .id__label {
  margin: 0 16px;
}
.company__group .date {
  position: relative;
}
.company__group .date .date__label {
  color: #7C7C7C;
  font-size: 0.75rem;
}
.company__group .date strong {
  display: block;
}
.company__group .item-image {
  height: auto;
  display: inline-block;
  vertical-align: middle;
  margin: 0;
}
.company__group .item__attributes {
  display: flex;
  gap: 30px;
  align-items: center;
  justify-content: center;
}

.product-line-item-linksGroup {
  padding: 16px;
}

@media (max-width: 768px) {
  .product-line-item-linksGroup {
    padding-top: 0;
  }
}
.linksGroup--content {
  display: inline-block;
  text-align: center;
  background: #F5F5F5 !important;
  border-radius: 100px !important;
}
.linksGroup--content a {
  color: #F8A629;
  font-size: 0.75rem;
  font-weight: bold;
}
.linksGroup--content a:hover {
  text-decoration: none;
  color: #e68e08;
}
.linksGroup--content a:before {
  padding-right: 8px;
}

.interactive-btnGroup {
  border: 1px solid #F8A629;
  border-top: 0;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
  border-radius: 0 0 20px 20px;
  width: fit-content;
  padding: 10px;
  padding-top: 0;
  gap: 12px;
}
.interactive-btnGroup .interactive-btn {
  background: #F5F5F5 !important;
  border-radius: 100px !important;
}

.orderCard {
  background-color: #FFF;
  border-radius: 10px;
  padding: 24px 40px;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  margin-bottom: 36px;
  animation-name: fadeIn;
  animation-duration: 0.9s;
}
.orderCard__opaque {
  opacity: 0.6;
}
.orderCard__opaque.orderCard__cancelled {
  border: 1px solid #E55D42;
}
.orderCard__opaque.orderCard__rescheduled {
  border: 1px solid #55368B;
}

.orderCard__logo {
  max-width: 120px;
}
.orderCard__logo img {
  object-fit: contain;
  width: 100%;
}

.orderCard__hours {
  position: relative;
  border-left: 2px solid #55368B;
  padding: 8px 8px 8px 16px;
}
.orderCard__hours::before, .orderCard__hours::after {
  content: " ";
  position: absolute;
  top: 0;
  left: -6px;
  width: 10px;
  height: 10px;
  display: inline-block;
  border-radius: 100%;
  border: 2px solid #55368B;
  background-color: #fff;
}
.orderCard__hours::after {
  top: initial;
  bottom: 0;
  border-color: #F8A629;
  background-color: #F8A629;
}

.orderCard__flagMsg {
  background-color: #E55D42;
  padding: 10px;
  text-transform: uppercase;
  color: #ffffff;
  font-weight: 700;
}
.orderCard__flagMsg--completed, .orderCard__flagMsg--rescheduled {
  background-color: #55368B;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.orderCard__flagMsg--completed i, .orderCard__flagMsg--rescheduled i {
  font-size: 14px;
}

.orderCard__time {
  margin-bottom: 16px;
}

.orderCard__info {
  gap: 16px;
}

.orderCard__infoContent {
  flex: auto;
}

.orderCard__heading {
  margin-bottom: 8px;
}

.orderCard__heading--icon {
  margin-right: 2px;
}
.orderCard__heading--icon::before {
  font-size: 25px;
}

.orderCard__priceTotal {
  color: #f0801e;
}

.orderCard__linkDetails {
  color: #555555;
}
.orderCard__linkDetails:hover {
  text-decoration: none;
}

.orderCard__link {
  border-top: 1px solid #D7D7D7;
}

.orderCard__linkBtn {
  border-bottom: 1px solid #555555;
}

.order__infosIntallments {
  font-size: 10px;
  font-weight: 400;
  color: #000;
}

@media (max-width: 768px) {
  .interactive-btnGroup .interactive-btn, .interactive-btnGroup a {
    font-size: 8px !important;
  }
  .cancelTicket:before {
    content: "\e935";
    font-family: "icomoon";
    font-size: 8px !important;
  }
}
.cancelTicket:before {
  content: "\e935";
  font-family: "icomoon";
  margin-left: 0.5rem;
  font-size: 10px;
}

.downloadTicket:before, .downloadTicketBtn:before {
  content: "\e91c";
  font-family: "icomoon";
  margin-left: 0.5rem;
}

.sharedTicket .downloadTicket, .sharedTicket .downloadTicketBtn {
  color: #282c31 !important;
  font-weight: 500 !important;
  font-size: 1rem !important;
}

.shareTicket {
  display: block;
}
.shareTicket:before {
  content: "\e91b";
  font-family: "icomoon";
}
.shareTicket:hover {
  text-decoration: none;
  color: #e68e08;
}

@media (max-width: 768px) {
  .shareTicket {
    display: flex;
  }
}
.cancel__group {
  text-align: center;
  padding: 16px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
}

.cancel__group--link {
  display: inline-block;
  width: calc(50% - 16px);
  text-align: center;
}
.cancel__group--link a {
  color: #7C7C7C;
  font-size: 0.75rem;
  font-weight: bold;
  text-decoration: underline;
}
.cancel__group--link a.disabled {
  color: #FF0000;
}

.back__myAccount {
  text-align: center;
}
.back__myAccount a {
  color: #55368B;
  font-weight: bold;
  font-size: 0.75rem;
  text-decoration: underline;
}

#cancelOrderLineItemModal .modal-header {
  flex-wrap: wrap;
}
#cancelOrderLineItemModal .modal-title {
  font-weight: 600;
}

.pcd-user {
  background-color: whitesmoke;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  font-size: 0.8em;
  gap: 10px;
  margin-top: 10px;
  padding: 10px;
}
.pcd-user-title {
  font-weight: 600;
}
.pcd-user .pcd-info {
  text-align: left;
}
.pcd-user .pcd-info .pcd-info-title {
  font-weight: 600;
}

@media (min-width: 800px) {
  .orderCard__date {
    font-size: 1.5rem;
  }
  .orderCard__time {
    font-size: 1.25rem;
  }
  .orderCard__priceTotal {
    font-size: 1.125rem;
  }
  .orderCard__flagMsg {
    font-size: 1.125rem;
  }
}
@media (max-width: 800px) {
  .company__group .item__attributes {
    display: block;
  }
  .company__group .item__attributes .line-item-attributes {
    margin: 20px 0;
    gap: 10px;
  }
  .qrcode__group {
    flex-direction: column;
    gap: 10px;
    padding-left: 0;
  }
  .qrcode__group .cancel_flag, .qrcode__group .details__content {
    width: 100%;
  }
  .qrcode__group .qrcode__content, .qrcode__group .details__content {
    max-width: 100%;
  }
}
#ticket-details-page #cancelOrderModal .close, #ticket-details-page #cancelOrderModal .vue-button {
  width: fit-content;
}
#ticket-details-page #cancelOrderModal .seatBorder {
  border: 1px solid #D7D7D7;
  border-radius: 12px;
  padding: 6px 12px;
  width: fit-content;
  font-size: 18px;
  font-weight: 800;
}
#ticket-details-page .order__card {
  border-radius: 10px;
  padding: 24px 40px;
  grid-gap: 12px;
}
#ticket-details-page .order__card .section-header__container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#ticket-details-page .order__card .cancel__group {
  box-shadow: none;
}
#ticket-details-page .order__card .seat__number {
  padding: 8px 12px;
  border-radius: 12px;
  display: flex;
  flex-direction: row;
  align-items: baseline;
  gap: 8px;
}
#ticket-details-page .order__card .travel__card .slick-arrow {
  top: 35% !important;
}
#ticket-details-page .order__card .travel__card {
  box-shadow: none;
}
#ticket-details-page .order__card .travel__card .card-body {
  background: #F5F5F5;
  border-radius: 10px;
  padding: 16px 150px 16px 50px;
  position: relative;
  height: 300px;
  display: flex;
  flex-direction: row;
  align-items: center;
}
#ticket-details-page .order__card .travel__card .card-body .product-summary-block {
  display: flex;
  flex-direction: row;
  width: 100%;
}
#ticket-details-page .order__card .travel__card .card-body .details__content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
#ticket-details-page .order__card .travel__card .card-body .details__content .itinerary_items .order__hours {
  padding: 0;
}
#ticket-details-page .order__card .travel__card .card-body .details__content .order__hours {
  display: flex;
  gap: 8px;
}
#ticket-details-page .order__card .travel__card .card-body .ticket__trip.text--isSmall, #ticket-details-page .order__card .travel__card .card-body i {
  font-weight: bold;
  color: #55368b;
}
#ticket-details-page .order__card .travel__card .card-body .item__attributes {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  justify-items: start;
  align-items: flex-start;
  gap: 24px;
}
#ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes p {
  font-weight: bold;
  color: #55368B;
  font-size: 16px;
  text-align: start;
}
#ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes strong {
  margin: 0;
}
#ticket-details-page .order__card .travel__card .card-body .item__attributes .seat__number {
  border: 1px solid #D7D7D7;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item {
  max-width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .ticket-details__container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .details__content {
  max-width: unset;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content {
  position: relative;
  margin: 0;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content p {
  font-size: 11px;
  font-style: italic;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content .cancel_flag {
  text-transform: uppercase;
  position: absolute;
  width: 120%;
  top: 30%;
  left: -10%;
  font-size: 12px;
  padding: 12px;
  background: #E55D42;
  color: white;
  font-weight: bold;
  font-style: italic;
}
#ticket-details-page .order__card .travel__card .card-body .product-line-item .cancel_flag {
  width: 100%;
}
#ticket-details-page .order__card .travel__card .company_images_wrap {
  position: unset;
  height: unset;
  border: none;
  padding-top: 8px;
}
#ticket-details-page .order__card .travel__card .company_images_wrap .company_images {
  padding: 0;
  height: unset;
  overflow-x: unset;
  position: unset;
  background: transparent;
}
#ticket-details-page .order__card .travel__card .company_images_wrap .company_images .orderDetailLogo {
  max-width: 100px;
}
#ticket-details-page .order__card .travel__card .cancel__group {
  padding: 0;
  box-shadow: none;
}
#ticket-details-page .order__card .order__body {
  padding: 0;
  border-bottom: 1px solid #d4d4d4;
  padding-bottom: 24px;
}
#ticket-details-page .order__card .order__body .order__infos {
  padding: 0;
  color: #55368B;
  font-weight: bold;
  font-size: 16px;
}
#ticket-details-page .order__card .order__body .order__infos .paymentMethod--pix {
  width: 130px;
}
#ticket-details-page .order__card .order__body .order__infos strong {
  color: #000000;
  font-weight: normal;
}
#ticket-details-page .order__card .order__body .order__infos strong.order__infos--price {
  color: #f47221;
  font-weight: bold;
}
#ticket-details-page .order__card .order__infos--priceForest {
  color: #f47221;
}
#ticket-details-page .order__card .order__infosForest {
  all: unset;
  font-weight: 700;
  color: #555555;
  text-decoration: underline;
  font-size: 14px;
  margin-left: 4px;
  cursor: pointer;
}
#ticket-details-page .order__card .order__header {
  padding: 0;
  border: none;
}
#ticket-details-page .order__card .order__header p {
  font-size: 24px;
}
#ticket-details-page .order__card .itinerary__content {
  padding: 0 16px;
  border: none;
}
#ticket-details-page .item__carrossel__header {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background: #55368B;
}
#ticket-details-page .item__carrossel__header img {
  width: 70px;
}
#ticket-details-page .item__carrossel__header .ticker--verticalText {
  color: white;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
}
#ticket-details-page .item__carrossel__ticket {
  background: #55368B;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
}
#ticket-details-page .item__carrossel__ticket h3, #ticket-details-page .item__carrossel__ticket p {
  color: white;
  text-align: center;
}
#ticket-details-page .item__carrossel__ticket .dot {
  background: white;
  width: 24px;
  height: 24px;
  position: absolute;
  border-radius: 100px;
}
#ticket-details-page .item__carrossel__ticket .dot.dot-1 {
  top: -12px;
}

.orderForestTree .order__card {
  border-color: #7BB820;
  border-width: 2px;
}
.orderForestTree .order__card::after {
  content: " ";
  position: absolute;
  top: -20px;
  right: 0;
  width: 61px;
  height: 60px;
  background: url("../../images/forestTree/forest-tree-bg-white.png") no-repeat;
  background-position: top right;
  z-index: 2;
}

.order__infosIntallments {
  font-size: 10px;
  font-weight: 400;
  color: #000;
}

@media (max-width: 800px) {
  #ticket-details-page {
    padding: 0;
    margin: 0;
    width: 100%;
  }
  #ticket-details-page .orderPanel__main {
    padding: 0;
  }
  #ticket-details-page .order__card {
    margin: 0;
    border-radius: 0;
  }
  #ticket-details-page .order__card .travel__card .card-body {
    min-height: 450px;
    height: unset;
    padding: 0;
    height: unset;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__carrossel__header {
    border-radius: 10px 10px 0px 0px;
    transform: unset;
    height: 60px;
    width: 100%;
    flex-direction: row;
    position: unset;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__carrossel__header span {
    writing-mode: unset;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__carrossel__header .ticker--verticalText {
    transform: unset;
    width: 70px;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__carrossel__ticket {
    border-radius: 0px 0px 10px 10px;
    transform: unset;
    position: relative;
    width: 100%;
    max-width: unset;
    flex-direction: row;
    height: 70px;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-summary-block .container {
    display: flex;
    flex-direction: column;
    padding: 0;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes {
    margin: 0 !important;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes.seat {
    display: none !important;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__attributes {
    gap: 8px;
    grid-template-columns: 1fr;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content.small {
    max-width: 70px;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content p {
    font-size: 8px;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-line-item .qrcode__content .cancel_flag {
    width: 100%;
    top: 20%;
    left: 0;
    font-size: 10px;
  }
  #ticket-details-page .order__card .travel__card .card-body .ticket-details__container {
    padding: 12px;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__carrossel {
    position: relative;
    min-height: 350px;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-line-item-details.text-center.qrcode__group {
    position: absolute;
    max-width: 100px;
    right: 12px;
    top: 25%;
  }
  #ticket-details-page .order__card .travel__card .card-body .product-line-item-details.text-center.qrcode__group img {
    max-width: 100px;
  }
  #ticket-details-page .order__card .travel__card .card-body .alert.alert-warning.mx-auto.text-center {
    position: absolute;
    right: 12px;
    width: 140px;
    top: 40%;
  }
  #ticket-details-page .order__card .order__body {
    padding: 8px 0;
  }
  #ticket-details-page .order__card .order__body .order__infos {
    font-size: 12px;
  }
  #ticket-details-page .order__card .order__body .order__infos p {
    font-size: 12px;
  }
  #ticket-details-page .order__card .order__body .order__infos .paymentMethod--pix {
    width: 130px;
  }
  #ticket-details-page .order__card .order__body .order__infos strong.order__infos--price {
    font-size: 14px;
  }
  #ticket-details-page .order__card .order__header p {
    font-size: 18px;
  }
  #ticket-details-page .item__carrossel__ticket {
    border-top: 4px dashed #F5F5F5;
  }
  #ticket-details-page .item__carrossel__ticket .dot.dot-1 {
    left: -12px;
  }
  #ticket-details-page .item__carrossel__ticket .dot.dot-2 {
    top: -12px;
    right: -12px;
  }
}
@media (min-width: 800px) {
  .item__carrossel__header {
    position: absolute;
    border-radius: 0px 10px 10px 0;
    left: 0;
    top: 0;
    height: 300px;
    width: 50px;
    flex-direction: column;
    transform: rotate(180deg);
  }
  .item__carrossel__header img {
    transform: rotate(90deg);
  }
  .item__carrossel__header .ticker--verticalText {
    height: 70px;
    writing-mode: vertical-rl;
  }
  .item__carrossel__ticket {
    height: 300px;
    position: absolute;
    right: 0;
    top: 0;
    max-width: 130px;
    border-left: 4px dashed #F5F5F5;
    border-radius: 0px 10px 10px 0;
  }
  .item__carrossel__ticket .dot {
    left: -12px;
  }
  .item__carrossel__ticket .dot.dot-1 {
    top: -12px;
  }
  .item__carrossel__ticket .dot.dot-2 {
    bottom: -12px;
  }
  #ticket-details-page .order__card .travel__card .card-body .item__attributes .line-item-attributes strong {
    font-size: 16px;
  }
  .orderForestTree .order__card::after {
    right: -20px;
  }
}
.searchTicketsLoading, .seatLoading {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.85);
  animation-name: fadeIn;
  animation-duration: 0.25s;
  z-index: 99999999;
}
.searchTicketsLoading.loadingCart, .seatLoading.loadingCart {
  display: unset;
}

.container.loadingCart {
  min-height: 700px;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.searchTicketsLoading__content {
  width: auto;
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: relative;
  text-align: center;
}

.searchTicketsLoading__title,
.searchTicketsLoading__subTitle {
  display: block;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.4;
}

.searchTicketsLoading__title {
  color: #F8A629;
  font-weight: 600;
}

.searchTicketsLoading__subTitle {
  color: white;
  max-width: 360px;
  margin: 0 auto;
}
.searchTicketsLoading__subTitle--orangeColor {
  font-weight: 600;
  color: #F8A629;
}

.searchTicketsLoading__wrapperImg {
  position: relative;
  width: 60px;
  height: 60px;
  display: inline-block;
  margin: 25px 0;
}
.searchTicketsLoading__wrapperImg::before {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80px;
  height: 80px;
  display: block;
  transform: translate(-50%, -50%);
  border-radius: 100%;
  border-style: solid;
  animation: loadingBorder 1s linear infinite;
  border-width: 5px;
  border-color: #FFA100 transparent;
  z-index: 26;
}

.is__loading {
  position: relative;
  z-index: 20;
  pointer-events: none;
}
.is__loading::before {
  content: " ";
  position: absolute;
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;
  display: block;
  border-radius: 100%;
  border-style: solid;
  animation: loader 0.6s linear infinite;
  border-width: 1px;
  border-color: #F47221 transparent;
  z-index: 26;
}
.is__loading::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 25;
  background-color: rgba(255, 255, 255, 0.6);
}

@keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes loadingBorder {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.stepOne {
  display: flex !important;
  justify-content: space-between;
  padding: 16px 16px 0 16px;
  padding: 24px 16px 40px 16px;
}

.stepConnection__backHeader {
  display: flex;
  width: 100%;
  gap: 8px;
  margin-bottom: 40px;
  font-size: 1.2rem;
  color: #ffffff;
  background-color: #55368B;
}
.stepConnection__backHeader h1 {
  padding: 16px 20px;
  font-size: 1.2rem;
}
.stepConnection__backHeader button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  padding-top: 16px;
  background-color: #55368B;
  border: none;
}
.stepConnection__backHeader i {
  transform: rotate(180deg);
  color: #ffffff;
}

.modalToSteps {
  position: fixed;
  bottom: 0;
  display: none;
  width: 100%;
  background-color: #ffffff;
  border-top: 1px solid #000000;
  opacity: 0;
  z-index: 1600;
}
.modalToSteps.show {
  display: flex !important;
  flex-direction: column;
  opacity: 1;
}
.modalToSteps .modal-body {
  display: flex;
  justify-content: space-between;
  padding: 16px;
}
.modalToSteps .modal-body .modalToSteps__infos {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.modalToSteps .modal-body .modalToSteps__infos .stepsModal__totalPrice {
  color: #fd7e14;
  font-weight: bold;
  font-size: 1.2rem;
}
.modalToSteps .modal-body .modalToSteps__buttonContainer {
  display: flex;
  align-items: center;
  justify-content: center;
}
.modalToSteps .modal-body .modalToSteps__button {
  display: flex;
  align-items: center;
  justify-content: center;
}

.stepsModal {
  position: fixed;
  background-color: #ffffff;
  padding: 40px;
  overflow: scroll;
}
.stepsModal.show {
  opacity: 1;
  display: flex;
  flex-direction: column;
}

.stepsModal__next {
  position: fixed;
  bottom: 0;
  display: none;
  width: 100%;
  background-color: #ffffff;
  border-top: 1px solid #000000;
  opacity: 0;
  z-index: 1060;
}
.stepsModal__next.show {
  display: flex !important;
  flex-direction: column;
  opacity: 1;
}
.stepsModal__next .modal-body {
  display: flex;
  gap: 32px;
  padding-left: 48px;
}
.stepsModal__next .modal-body > div {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.7rem;
  font-weight: 500;
  line-height: 20px;
  color: #515151;
}
.stepsModal__next .modal-body > div .stepsModal__seatNumbers,
.stepsModal__next .modal-body > div .stepsModal__totalPrice {
  font-weight: 700;
}
.stepsModal__next .modal-body > div .stepsModal__seatNumbers {
  font-size: 0.8rem;
}
.stepsModal__next .modal-body > div .stepsModal__totalPrice {
  font-size: 1.2rem;
}
.stepsModal__next .modal-footer {
  padding: 0 40px 24px 40px;
}
.stepsModal__next .modal-footer .stepsModal__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  gap: 24px;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 46px;
  text-align: center;
  color: #ffffff;
  background-color: #55368B;
}
.stepsModal__next .modal-footer .stepsModal__button.btn-yellow {
  background-color: #ffc107;
}
.stepsModal__next .modal-footer .stepsModal__button i {
  font-weight: bold;
  font-size: 1rem;
}

.stepOne__close {
  background: none;
  border: none;
}

@media (min-width: 800px) {
  .stepsModal__next {
    display: none;
  }
  .stepOne {
    display: none !important;
  }
}
.tooltipHover {
  position: relative;
  display: inline-block;
}

.tooltipHover .tooltiptext {
  visibility: hidden;
  position: absolute;
  bottom: 125%;
  left: 50%;
  margin-left: -145px;
  padding: 5px 0;
  width: 290px;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s;
  background-color: #F8F8F8;
  border: 1px solid #d2d3d3;
  border-radius: 4px;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.2rem;
  text-align: center;
  color: #373D3F;
}

.tooltipHover .tooltiptext::after {
  content: url("../../images/arrow-icon.svg");
  font-size: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
}

.tooltipHover:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}

.contentDestinoProcurado {
  margin: 0 auto;
  max-width: 1185px;
  padding: 50px 0px 50px 0px;
  width: 100%;
}

.contentDestinoProcurado h2 {
  color: #ffffff;
}

.lineDestinoProcurado {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
}

.colDestinoProcurado {
  display: flex;
  flex-wrap: wrap;
  margin: 4px;
  width: 340px;
}

.btnComprarLight,
.btnComprarDark {
  background: #f28c33;
  border-radius: 50px;
  color: #ffffff;
  padding: 10px 25px;
  cursor: pointer;
}

.btnComprarLight:hover,
.btnComprarDark:hover {
  background: #55368b;
  color: #ffffff;
  transition: all 0.2s ease-in-out;
}

.imageDestinoProcurado {
  background-attachment: local;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  min-height: 215px;
}

.overlayDestinoProcurado {
  background: rgba(242, 140, 51, 0.6235294118);
  height: 100%;
  padding: 50px 10px 50px 10px;
  width: 100%;
}

.titleH3 {
  color: #ffffff;
  font-size: 2rem;
}

.cidadeDestinoBox {
  background: #ffffff;
  border: 1px #F28C33 solid;
  padding: 20px 10px;
  width: 100%;
}

.boxDestinoProcurado {
  display: flex;
  justify-content: space-between;
}

.textoDestinoProcurado {
  font-weight: 700;
  margin-bottom: 10px;
}

.boxCidadeValor {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 10px 0;
}

.textoCidadeValor {
  font-weight: 400;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 970px) {
  .colDestinoProcurado {
    display: flex;
    flex-wrap: wrap;
    margin: 4px;
    width: 100%;
  }
}
@media screen and (min-width: 1600px) {
  .colDestinoProcurado {
    width: 400px;
  }
}
@media screen and (min-width: 970px) and (max-width: 1090px) {
  .colDestinoProcurado {
    width: 300px;
  }
}
section {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.hero_bg {
  background: #F28C33;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  max-height: 100vh;
  margin: 0 auto;
  position: relative;
  width: 100%;
  min-height: 80vh;
}

.searchOverlay {
  background-color: rgba(242, 140, 51, 0.6235294118);
  height: 85vh;
  padding: 30px 0;
  width: 100%;
}

.searchViacao {
  border: 2px #e0e0e0 solid;
  border-radius: 5px;
  padding: 20px 30px 20px 30px;
}

.pageTitle {
  margin: 0 0 30px 0;
}

.titleH1 {
  color: #ffffff;
  font-family: Montserrat, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 2.5rem;
  margin-bottom: 0 0 20px 0;
  text-shadow: 2px 2px rgba(33, 33, 33, 0.4470588235);
}

.pageTitle span {
  color: #ffffff;
  text-decoration: underline;
}

.searchField {
  margin: 0 auto;
  max-width: 1200px;
  padding: 10px;
  width: 100%;
}

ol.breadcrumb-page {
  padding: 0px;
  list-style: none;
  margin: 0;
}

ol.breadcrumb-page li {
  display: flex;
  font-size: 18px;
  align-items: center;
}

.breadcrumb-item + .breadcrumb-item:before {
  padding: 8px;
  color: #ffffff;
  content: "/ ";
}

ol.breadcrumb-page li a {
  color: #ffffff;
  text-decoration: none;
}

@media screen and (max-width: 800px) {
  .titleH1 {
    font-size: 1.65rem;
  }
  .searchOverlay {
    padding: 15px;
  }
  .hero_bg {
    background-attachment: scroll !important;
  }
}
.contentListaViacao, .contentListaDestinos {
  display: flex;
  width: 100%;
  background: #ffffff;
  border-radius: 10px;
  border: 2px #e0e0e0 solid;
  margin: 0 auto;
  max-width: 1185px;
  padding: 20px 0px 20px 0px;
}

.lineListaViacao, .lineListaDestinos {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-evenly;
}

.colListaViacao, .colListaDestinos {
  display: flex;
  flex-wrap: wrap;
}

.linkViacao, .linkDestinos {
  cursor: pointer;
  border-radius: 5px;
  padding: 5px;
  min-width: 25px;
  text-align: center;
}

.linkViacao:hover, .linkDestinos:hover {
  color: #ffffff;
  background-color: #F28C33;
}

.selected .ticket__hours--wrap {
  color: #000000;
}

@media (max-width: 800px) {
  .ticket__totalHours--mobile {
    color: #000000;
  }
}
.selected {
  background-color: #F28C33;
  color: #ffffff;
  padding: 5px;
}

.contentListaViacaoNome, .contentListaDestinosNome {
  margin: 0 auto;
  max-width: 1185px;
  padding: 50px 0px 50px 0px;
  width: 100%;
  border-bottom: 2px #eeeeee dotted;
}

.lineListaViacaoNome, .lineListaDestinosNome {
  align-items: center;
  display: inline-flex;
}

.colSiglaViacao, .colSiglaDestino {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 20px;
  max-width: 16.5rem;
}

.siglaViacao {
  color: #555;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: normal;
}

.colListaViacaoNome, .colListaDestinosNome {
  border-left: 1px #000000 solid;
  display: flex;
  flex-wrap: wrap;
}

.listaViacaoNome, .listaDestinosNome {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.listaViacaoNome li, .listaDestinosNome li {
  margin: 10px;
}

.listaViacaoNome a:hover, .listaDestinosNome a:hover {
  color: #55368B;
  text-decoration: underline;
}

#item-not-found {
  padding: 100px;
  text-align: center;
  margin: 0 auto;
  width: 100%;
  color: #777;
}

.headerListaViacaoNome, .headerListaDestinosNome {
  max-width: 1185px;
  margin: 0 auto;
}

.search-box-list {
  display: none;
  position: absolute;
  z-index: 100;
  background: #fff;
  padding: 16px;
  overflow-y: auto;
  overflow-x: hidden;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  top: 119px;
  width: 39%;
  max-height: 16rem;
}

.searchSpan {
  padding-bottom: 10px;
  font-weight: 600;
}

.headerViacao, .headerDestinos {
  padding: 50px;
  margin-bottom: -30px;
}

.contentBox, .contentDestinos {
  background: #ffffff;
  border-radius: 10px;
  border: 2px #e0e0e0 solid;
  margin: 0 auto;
  max-width: 1185px;
  position: relative;
  padding: 20px;
  width: 100%;
  z-index: 0;
}

.contentBoxOver {
  margin: -140px auto 0 auto;
}

.lineViacao, .lineDestinos {
  width: 100%;
  height: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: space-around;
}

.searchViacaoSpan {
  color: #000000;
  font-weight: 700;
}

.searchViacao, .searchDestinos {
  border: 2px #e0e0e0 solid;
  border-radius: 5px;
  padding: 20px 30px 20px 30px;
}

.colSearchViacao, .colSearchDestinos {
  display: flex;
  flex-direction: column;
  width: 40%;
}

.titleH2 {
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 1280px) {
  .colSearchViacao, .colSearchDestinos {
    width: 100%;
  }
  .headerViacao {
    padding: 50px 10px;
  }
  .titleH2 {
    margin-bottom: 10px;
    font-size: 1.2em;
    font-weight: 700;
  }
  .contentListaViacao, .contentListaDestinos {
    padding: 20px;
  }
  .lineViacao, .lineDestinos {
    gap: 20px;
  }
  .search-box-list {
    width: 48%;
  }
}
@media screen and (max-width: 850px) {
  .headerDestinos, .headerViacao {
    padding: 10px;
    margin-bottom: 0;
  }
  .lineViacao, .lineDestinos {
    flex-direction: column;
  }
  .contentViacao, .contentDestinos {
    margin: 0;
  }
  .contentListaViacao, .contentListaDestinos {
    margin: 0 10px;
  }
  .search-box-list {
    top: 200px;
    width: 95%;
  }
  .lineListaDestinosNome, .lineListaViacaoNome {
    display: flex;
    flex-direction: column;
  }
  .lineListaDestinosNome .colListaDestinosNome, .lineListaDestinosNome .colListaViacaoNome, .lineListaViacaoNome .colListaDestinosNome, .lineListaViacaoNome .colListaViacaoNome {
    border: none;
    max-width: 100%;
  }
  .colSiglaViacao, .colSiglaDestino {
    max-width: 23rem;
    justify-content: start;
  }
  .contentBoxOver {
    margin: 0 auto;
  }
}
.boxRodoarias {
  display: flex;
  flex-direction: row;
  align-items: center;
  display: inline-flex;
  padding: 20px 30px;
  justify-content: space-between;
  width: 100%;
  color: #212121;
}
.boxRodoarias:nth-child(odd) {
  background: #f2f2f2;
}
.boxRodoarias:nth-child(even) {
  background: #ffffff;
}

.stations-h2 {
  margin-bottom: 17px;
}

a:hover {
  text-decoration: underline;
}

.contentBox {
  z-index: unset;
}

@media screen and (max-width: 850px) {
  .boxRodoarias {
    flex-direction: column;
    display: flex;
    align-items: flex-start;
    gap: 25px;
  }
  .contentBox {
    z-index: unset;
    max-width: 95vw;
  }
}
.dynamic-banner {
  position: relative;
  width: 100%;
}
.dynamic-banner.is-empty {
  display: none;
}
.dynamic-banner__track {
  position: relative;
}
.dynamic-banner__track.slick-slider {
  margin-bottom: 0;
}
.dynamic-banner__track .slick-slide {
  padding: 0 8px;
}
.dynamic-banner__track .slick-slide > div {
  display: flex;
  justify-content: center;
}
.dynamic-banner__dots {
  position: absolute;
  left: 50%;
  bottom: 30px;
  z-index: 3;
  width: auto;
  max-width: calc(100% - 2rem);
  margin: 0;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  pointer-events: none;
}
.dynamic-banner--mode-multiple .dynamic-banner__dots {
  display: none !important;
}
.dynamic-banner--mode-multiple .dynamic-banner__track--grid {
  --banner-grid-gap: 16px;
  --banner-grid-cols: 2;
  display: flex;
  flex-wrap: wrap;
  gap: var(--banner-grid-gap);
  margin: 0;
  width: 100%;
}
.dynamic-banner--mode-multiple .dynamic-banner__track--grid > .experience-component,
.dynamic-banner--mode-multiple .dynamic-banner__track--grid > .dynamic-banner-item {
  box-sizing: border-box;
  flex: 0 0 calc((100% - (var(--banner-grid-cols) - 1) * var(--banner-grid-gap)) / var(--banner-grid-cols));
  max-width: calc((100% - (var(--banner-grid-cols) - 1) * var(--banner-grid-gap)) / var(--banner-grid-cols));
  width: calc((100% - (var(--banner-grid-cols) - 1) * var(--banner-grid-gap)) / var(--banner-grid-cols));
  padding: 0;
  margin: 0;
}
@media (max-width: 991px) {
  .dynamic-banner--mode-multiple .dynamic-banner__track--grid > .experience-component,
  .dynamic-banner--mode-multiple .dynamic-banner__track--grid > .dynamic-banner-item {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }
}

#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 2;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid #00aeda !important;
  border-radius: 50% !important;
  background-color: #fff !important;
  background-image: none !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transform: translateY(-50%);
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  left: auto;
  right: auto;
  vertical-align: middle;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow::before, #vueApp .dynamic-banner .dynamic-banner__track .slick-arrow::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  background-image: none !important;
  font-family: inherit !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  opacity: 0 !important;
  visibility: hidden !important;
  position: absolute !important;
  left: -9999px !important;
  transform: none !important;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow svg {
  display: block;
  flex-shrink: 0;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow.slick-prev {
  left: 30px !important;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow.slick-prev svg {
  transform: rotate(180deg);
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow.slick-next {
  right: 30px !important;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow.slick-disabled {
  opacity: 0.45;
  pointer-events: none;
}
#vueApp .dynamic-banner .dynamic-banner__track .slick-arrow:hover:not(.slick-disabled), #vueApp .dynamic-banner .dynamic-banner__track .slick-arrow:focus:not(.slick-disabled) {
  background-color: #fff !important;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots {
  display: inline-flex !important;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  pointer-events: auto;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li {
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li button {
  position: relative !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: 50% !important;
  background-color: #c4c4c4 !important;
  background-image: none !important;
  cursor: pointer;
  overflow: hidden;
  white-space: nowrap;
  text-indent: -9999px;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  box-shadow: none !important;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li button::before, #vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li button::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  position: absolute !important;
  left: -9999px !important;
  background: none !important;
  background-image: none !important;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li button:hover, #vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li button:focus {
  background-color: #a8a8a8 !important;
}
#vueApp .dynamic-banner .dynamic-banner__dots .slick-dots li.slick-active button {
  background-color: rgb(0, 174, 218) !important;
  transition: background-color 0.3s ease;
}
#vueApp .dynamic-banner.dynamic-banner--no-arrows .dynamic-banner__track .slick-arrow,
#vueApp .dynamic-banner.dynamic-banner--no-arrows .dynamic-banner__arrow {
  display: none !important;
  pointer-events: none !important;
}
@media (max-width: 992px) {
  #vueApp .dynamic-banner .dynamic-banner__dots {
    display: none !important;
  }
  #vueApp .dynamic-banner .dynamic-banner__dots .slick-dots {
    display: none !important;
  }
}

.dynamic-banner-item {
  width: 100%;
  max-height: 405px;
  border-radius: 12px;
  overflow: hidden;
}
.dynamic-banner-item__link {
  display: block;
  max-height: 405px;
  text-decoration: none;
  line-height: 0;
}
.dynamic-banner-item__picture {
  display: block;
  width: 100%;
  max-height: 405px;
  line-height: 0;
}
.dynamic-banner-item__media {
  display: block;
  width: 100%;
  max-height: 405px;
  height: auto;
  object-position: center;
}
.dynamic-banner-item__media--video {
  width: 100%;
  max-height: 405px;
  height: 405px;
  object-fit: cover;
}
.dynamic-banner-item__video-host {
  position: relative;
  width: 100%;
  max-height: 405px;
  min-height: 120px;
  border-radius: 12px;
  overflow: hidden;
  background: #e8e8e8;
}
.dynamic-banner-item__video-play {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  min-height: 405px;
  max-height: 405px;
  margin: 0;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: transparent;
  line-height: 0;
  outline: none;
}
.dynamic-banner-item__video-play:focus-visible {
  box-shadow: inset 0 0 0 3px rgba(0, 174, 218, 0.6);
}
.dynamic-banner-item__video-poster {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 405px;
  max-height: 405px;
  object-fit: cover;
  object-position: center;
}
.dynamic-banner-item__video-poster--placeholder {
  display: block;
  width: 100%;
  min-height: 405px;
  max-height: 405px;
  background: linear-gradient(135deg, #e8e8e8 0%, #f4f4f4 50%, #dedede 100%);
}
.dynamic-banner-item__video-play-badge {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 0;
  pointer-events: none;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}
.dynamic-banner-item__video-host.is-video-playing .dynamic-banner-item__video-play {
  display: none;
}
.dynamic-banner-item__video-host.is-video-playing .dynamic-banner-item__media--video {
  display: block;
}
.dynamic-banner-item__media--video.is-video-idle {
  display: none;
}
.dynamic-banner-item__video-host--youtube {
  height: 405px;
}
.dynamic-banner-item__youtube-iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 56.25vw;
  min-height: 100%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  border: 0;
  z-index: 0;
}
.dynamic-banner-item__youtube-toggle {
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.4);
  cursor: pointer;
  transition: background 0.2s;
}
.dynamic-banner-item__youtube-toggle:hover {
  background: rgba(0, 0, 0, 0.65);
}
.dynamic-banner-item__youtube-toggle-icon--play {
  display: none;
}
.dynamic-banner-item__youtube-toggle[data-state=paused] .dynamic-banner-item__youtube-toggle-icon--pause {
  display: none;
}
.dynamic-banner-item__youtube-toggle[data-state=paused] .dynamic-banner-item__youtube-toggle-icon--play {
  display: flex;
}

.blankPage:has(.lgpd-sidebar),
.blankPage:has(.lgpd-page-layout),
.blankPage .lgpd-page {
  scroll-behavior: smooth;
}

.lgpd-sidebar {
  font-family: inherit;
}
.lgpd-sidebar__mobile-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  position: sticky;
  top: 0;
  z-index: 50;
}
@media (min-width: 768px) {
  .lgpd-sidebar__mobile-header {
    display: none;
  }
}
.lgpd-sidebar__mobile-brand {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.lgpd-sidebar__logo-text {
  font-size: 1.25rem;
  font-weight: 700;
  color: #2563eb;
  line-height: 1.2;
}
.lgpd-sidebar__mobile-badge {
  font-size: 0.875rem;
  font-weight: 400;
  color: #64748b;
}
.lgpd-sidebar__logo-img {
  max-height: 36px;
  max-width: 150px;
  width: auto;
  display: block;
}
.lgpd-sidebar__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border: 0;
  background: transparent;
  color: #4b5563;
  cursor: pointer;
}
.lgpd-sidebar__mobile-nav {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem 1rem 1rem;
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
}
.lgpd-sidebar__mobile-nav[hidden] {
  display: none !important;
}
@media (min-width: 768px) {
  .lgpd-sidebar__mobile-nav {
    display: none !important;
  }
}
.lgpd-sidebar__mobile-nav .experience-component {
  margin: 0;
}
.lgpd-sidebar__desktop {
  display: none;
}
@media (min-width: 768px) {
  .lgpd-sidebar__desktop {
    display: block;
    position: sticky;
    top: 0;
    z-index: 40;
    width: 100%;
    max-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    flex-shrink: 0;
    background: transparent;
    border-right: 0;
    padding: 1.5rem;
    box-sizing: border-box;
  }
}
.lgpd-sidebar__brand {
  margin-bottom: 2rem;
}
.lgpd-sidebar__brand .lgpd-sidebar__logo-text {
  font-size: 1.5rem;
  margin: 0 0 0.25rem;
}
.lgpd-sidebar__description {
  margin: 0.5rem 0 0 0;
  font-size: 0.875rem;
  color: #6b7280;
}
.lgpd-sidebar__nav {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.lgpd-sidebar__nav .experience-component {
  margin: 0;
}
.lgpd-sidebar__link,
.lgpd-sidebar .sidebar-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #4b5563;
  text-decoration: none;
  border-radius: 0.375rem;
  border-left: 3px solid transparent;
  transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}
.lgpd-sidebar__link:hover, .lgpd-sidebar__link:focus,
.lgpd-sidebar .sidebar-link:hover,
.lgpd-sidebar .sidebar-link:focus {
  color: #111827;
  background-color: #f9fafb;
  text-decoration: none;
}
.lgpd-sidebar__link.is-active, .lgpd-sidebar__link.active,
.lgpd-sidebar .sidebar-link.is-active,
.lgpd-sidebar .sidebar-link.active {
  color: #2563eb;
  border-left: 3px solid #2563eb;
  background-color: #eff6ff;
}
.lgpd-sidebar__link-icon {
  flex-shrink: 0;
  line-height: 1;
}
.lgpd-sidebar__link-icon--emoji {
  font-size: 1rem;
}
.lgpd-sidebar__link-icon--img {
  object-fit: contain;
}
.lgpd-sidebar__link-label {
  line-height: 1.3;
}

.lgpd-page-layout {
  display: flex;
  flex-direction: column;
  max-width: 80rem;
  margin: 0 auto;
  min-height: 100vh;
  background: #f8fafc;
}
.lgpd-page-layout strong,
.lgpd-page-layout b {
  font-weight: 700;
}
@media (min-width: 768px) {
  .lgpd-page-layout {
    flex-direction: row;
    align-items: stretch;
  }
}
@media (min-width: 768px) {
  .lgpd-page-layout > .experience-region.experience-sidebar {
    display: flex;
    flex: 0 0 16rem;
    flex-direction: column;
    width: 16rem;
    max-width: 16rem;
    min-height: 100%;
    align-self: stretch;
    background: #fff;
    border-right: 1px solid #e5e7eb;
    box-sizing: border-box;
  }
  .lgpd-page-layout > .experience-region.experience-sidebar > .experience-component,
  .lgpd-page-layout > .experience-region.experience-sidebar > .experience-component > .lgpd-sidebar {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    min-height: 100%;
  }
}
@media (min-width: 768px) {
  .lgpd-page-layout > .lgpd-sidebar,
  .lgpd-page-layout > .experience-region.experience-sidebar > .experience-component > .lgpd-sidebar {
    display: flex;
    flex-direction: column;
    width: 16rem;
    flex-shrink: 0;
    align-self: stretch;
    min-height: 100%;
  }
}
.lgpd-page-layout .lgpd-page-layout__content {
  flex: 1;
  min-width: 0;
  padding: 1.5rem;
}
@media (min-width: 768px) {
  .lgpd-page-layout .lgpd-page-layout__content {
    padding: 3rem;
  }
}
.lgpd-page-layout .lgpd-page-layout__content section[id],
.lgpd-page-layout .lgpd-page-layout__content [id].lgpd-section {
  scroll-margin-top: 7.5rem;
}
@media (min-width: 768px) {
  .lgpd-page-layout .lgpd-page-layout__content section[id],
  .lgpd-page-layout .lgpd-page-layout__content [id].lgpd-section {
    scroll-margin-top: 5rem;
  }
}

.block-ancora {
  margin-bottom: 4rem;
}
.block-ancora--missing-id {
  outline: 2px dashed #f59e0b;
  outline-offset: 4px;
}

.mob-modal .modal-content {
  border: 0;
  border-radius: 15px;
  background: #FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
.mob-modal .modal-content .modal-header {
  border-radius: 15px 15px 0 0;
  background-color: #55368B;
  padding: 16px;
  min-height: 45px;
}
.mob-modal .modal-content .modal-header .close {
  opacity: 1 !important;
}
.mob-modal .modal-content .modal-header .close::after {
  content: "\e935";
  font-family: "icomoon";
  color: #FFFFFF;
  font-size: 15px;
  position: absolute;
  top: 25px;
  right: 20px;
}
.mob-modal .modal-content .modal-header .close:hover {
  opacity: 1 !important;
}
.mob-modal .modal-content .modal-header .modal-title {
  color: #FFFFFF;
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  min-width: 300px;
  text-align: left;
}
.mob-modal .modal-content .modal-header .modal-title.center {
  width: 100%;
  display: flex;
  align-items: flex-start;
  align-content: center;
  flex-direction: row;
  justify-content: center;
}
.mob-modal .modal-content .modal-body {
  color: #333333;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  padding: 24px;
}
.mob-modal .modal-content .modal-footer {
  padding: 12px 24px;
}

#register-modal {
  /* Lista customizada de DDI (FormRegister) extrapola o card; evita clip do dropdown */
}
#register-modal .modal-content {
  overflow: visible;
}
#register-modal .button-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 12px 24px;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.1875rem;
  border-bottom-left-radius: 0.1875rem;
  margin-top: 30px;
  margin-left: -24px;
  margin-right: -24px;
  margin-bottom: -24px;
}

.password-icon {
  background-repeat: no-repeat;
  height: 20px;
  width: 24px;
  display: block;
  position: relative;
  bottom: 37px;
  left: 90%;
  right: 16px;
  cursor: pointer;
  filter: opacity(0.5);
  z-index: 100 !important;
}
.password-icon.show {
  background-image: url("../../images/closeeye.svg");
  display: block;
}
.password-icon.hide {
  background-image: url("../../images/openeye.svg");
  display: block;
}

#register-cellphone {
  margin-top: 10px;
}

.loginPage__form .password-icon {
  position: absolute;
  bottom: 15px;
  left: 95%;
  z-index: 1 !important;
}
@media (max-width: 768px) {
  .loginPage__form .password-icon {
    left: 90%;
  }
}

@media (max-width: 577px) {
  .carouselContainer {
    background: white;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
  }
}
@media (max-width: 1024px) {
  .carouselContainer {
    margin-top: 0 !important;
  }
}
.slider-dates .date-carousel.slick-slider {
  display: block;
  padding: 16px 0;
}
.slider-dates .date-carousel.slick-slider .slick-list {
  overflow: hidden;
  width: 100%;
}
.slider-dates .date-carousel {
  width: 100%;
  box-sizing: border-box;
}
@media (min-width: 992px) {
  .slider-dates .date-carousel .slick-list {
    padding: 0 15px;
  }
}
.slider-dates .date-carousel .slick-track {
  display: flex;
  gap: 5px;
}
.slider-dates .date-carousel .slick-track:before,
.slider-dates .date-carousel .slick-track:after {
  display: none;
}
.slider-dates .date-carousel .slick-arrow:before {
  content: "\e92f";
}
.slider-dates .date-carousel .slick-arrow {
  position: unset;
  transform: none;
  min-width: 30px;
  height: 30px;
  background: #f6f6f6;
  border-radius: 100px;
  -webkit-transform: none;
}
.slider-dates .date-carousel .slick-arrow.slick-prev {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  box-shadow: 0px -4px 4px 0px rgba(0, 0, 0, 0.2509803922);
}
.slider-dates .date-carousel .slick-arrow.slick-next {
  transform: none;
  -webkit-transform: none;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
}
.slider-dates .date-carousel .date-carousel__item {
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column;
  gap: 4px;
  background: #ffffff;
  padding: 15px 10px;
  text-decoration: none;
  cursor: pointer;
  max-width: 129px;
  border: 1px solid #ffffff;
  border-radius: 100px;
  height: 48px;
  justify-content: center;
}
@media screen and (max-width: 577px) {
  .slider-dates .date-carousel .date-carousel__item {
    max-width: unset;
  }
}
.slider-dates .date-carousel .date-carousel__item p {
  text-align: center;
}
.slider-dates .date-carousel .date-carousel__item .carousel__item__weekday {
  color: #333333;
  font-size: 12px;
  font-weight: 600;
}
.slider-dates .date-carousel .date-carousel__item .carousel__item__day {
  color: #333333;
  font-size: 14px;
  font-weight: 700;
}
.slider-dates .date-carousel .date-carousel__item.current {
  background-color: #F8A629;
  border-radius: 100px;
  border: 1px solid #F8A629;
}
.slider-dates .date-carousel .date-carousel__item.current .carousel__item__weekday {
  color: #ffffff;
  font-weight: 600;
}
.slider-dates .date-carousel .date-carousel__item.current .carousel__item__day {
  color: #ffffff;
}
.slider-dates .date-carousel .date-carousel__item:hover {
  border: 1px solid #F8A629;
  border-radius: 100px;
}
.slider-dates .slick-initialized .slick-slide {
  display: flex;
  justify-content: center;
}

.date-carousel-skeleton {
  display: flex;
  gap: 5px;
  justify-content: center;
  align-items: center;
}
.date-carousel-skeleton .date-carousel__item {
  height: 65px;
  width: 100%;
}

.slick-slide > div {
  width: 100%;
  justify-items: anchor-center;
}

@media (max-width: 768px) {
  .carouselContainer {
    padding: 0 8px;
  }
  .slider-dates .date-carousel {
    gap: 10px;
  }
  .slider-dates .date-carousel .date-carousel__item {
    height: 48px;
    padding: 15px 5px;
  }
  .slider-dates .date-carousel .date-carousel__item .carousel__item__day {
    font-weight: 700;
    font-size: 10px;
  }
  .slider-dates .date-carousel .date-carousel__item .carousel__item__weekday {
    font-weight: 600;
    font-size: 10px;
  }
}
.carousel-wrapper .slick-next.slick-arrow, .carousel-wrapper .slick-prev.slick-arrow {
  display: none !important;
}

.carousel-wrapper {
  position: relative;
  padding: 0 40px 0 30px;
}

.carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  min-width: 30px;
  height: 30px;
  background: #f0f0f0;
  border-radius: 100px;
  border: none;
  cursor: pointer;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  font-size: 0;
}
.carousel-arrow::before {
  content: "\e92f";
  font-family: "icomoon";
  color: #55368B;
  font-size: 20px;
  display: block;
}

.carousel-arrow--prev {
  left: 0;
  transform: translateY(-50%) rotate(180deg);
  box-shadow: 0px -4px 4px 0px rgba(0, 0, 0, 0.25);
}

.carousel-arrow--next {
  right: 0;
}

.datepicker--isOpen {
  overflow: hidden;
}

.loading-skeleton {
  color: transparent;
  appearance: none;
  -webkit-appearance: none;
  background-color: #eee;
  border-color: #eee;
}
.loading-skeleton::placeholder {
  color: transparent;
}

@keyframes loading-skeleton {
  from {
    opacity: 0.4;
  }
  to {
    opacity: 1;
  }
}
.loading-skeleton {
  pointer-events: none;
  animation: loading-skeleton 1s infinite alternate;
}
.loading-skeleton img {
  filter: grayscale(100) contrast(0%) brightness(1.8);
}

.page .invalid-feedback {
  width: auto;
  margin: 4px;
  padding: 8px;
  position: absolute;
  top: 100%;
  bottom: auto;
  left: auto;
  right: auto;
  background: #ffffff;
  border-radius: 4px;
  box-shadow: 0 2px 4px 0 rgba(25, 25, 25, 0.8);
  border: 1px solid #8C8C8C;
  z-index: 5;
}
.page .invalid-feedback::before {
  content: " ";
  font-size: 0;
  display: block;
  display: inline-block;
  position: absolute;
  top: auto;
  right: auto;
  left: 50%;
  bottom: calc(100% - 16px / 4);
  border: 5px solid transparent;
  border-bottom-color: #8C8C8C;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.mainBanner__home {
  position: relative;
}

.heroBanner__img img {
  width: 100%;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .heroBanner__img {
    height: 1000px;
    overflow: hidden;
  }
}

.homepageBuyTickets__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 1;
}

.homepage-buyTickets .error-message {
  margin-top: 16px;
}

.home-page__block {
  margin-bottom: 36px;
}

.empty-trips-info {
  background: #ffeaa7;
  padding: 20px;
  border-radius: 5px;
  margin-bottom: 50px;
  margin-top: -30px;
  display: none;
}
.empty-trips-info span {
  cursor: pointer;
}
@media (max-width: 500px) {
  .empty-trips-info {
    margin: -25px 15px 15px;
  }
}

.cta-banner img {
  border-radius: 10px;
}

.last-order-wrapper {
  padding: 20px 15px;
}
@media (max-width: 500px) {
  .last-order-wrapper {
    padding: 20px 0;
  }
}

.last-order {
  border-radius: 10px;
  padding: 1.8rem;
  background-image: url("../../images/banner-rebuy-desk-v2.webp");
  background-size: 100% 100%;
}
@media (max-width: 575px) {
  .last-order {
    border-radius: 0;
    background-image: url("../../images/banner-rebuy-mobile.webp");
    background-size: 100% 100%;
  }
}
.last-order button {
  width: 102%;
  height: 105px;
  margin-top: -10px;
  margin-left: -10px;
  background: transparent;
  border: none;
  color: transparent;
}

.home-intinerary {
  position: relative;
  margin-bottom: 8px;
}

.home-intinerary__switch {
  width: 40px;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.home-intinerary__switch-button {
  width: 48px;
  height: 48px;
  margin-top: 0;
  background: #ffffff;
  border: 1px solid #D4D4D4;
  border-radius: 50%;
  line-height: calc(48px - 16px / 2);
  text-align: center;
  border: 2px solid #F8A629;
}
.home-intinerary__switch-button::after {
  content: "\e912";
  font-family: "icomoon";
  font-size: 25px;
  font-size: calc(25 * 0.0625)rem;
  display: inline-block;
  color: #55368B;
  position: relative;
}
@supports (-webkit-touch-callout: none) {
  .home-intinerary__switch-button::after {
    left: -7px;
    top: 3px;
  }
}

@supports (-webkit-touch-callout: none) {
  .page[data-action=Search-Show] .home-intinerary__switch-button::after,
  .page[data-action=Ticket-Search] .home-intinerary__switch-button::after {
    left: 0px;
    top: 5px;
  }
}

.home-dates {
  font-size: 0;
  width: 100%;
  margin-bottom: 8px;
}
.home-dates .form-group {
  display: inline-block;
  width: 50%;
  vertical-align: top;
}
.home-dates input {
  line-height: 3;
}

.home-page-header {
  padding-bottom: 32px;
}

.home__title {
  color: #ffffff;
  width: 300px;
  font-size: 1.875rem;
  line-height: 98%;
  font-weight: 700;
}

.home__subtitle {
  color: #ffffff;
  font-size: 1.1rem;
  line-height: 98%;
  margin-top: 10px;
  font-weight: 500;
}

.home-page__item {
  width: 100%;
  display: block;
  margin: 0 auto;
  font-size: 0.75rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  text-align: center;
  color: #303030;
}
.home-page__item strong {
  color: #55368B;
  font-weight: bold;
}
.home-page__item:nth-child(n+3) {
  margin-right: 0;
}
.home-page__item::before {
  font-size: 1.75rem;
  color: #F8A629;
  display: block;
  margin-bottom: 8px;
}

.home-page__itemService::before {
  content: "\e90b";
  font-family: "icomoon";
}

.home-page__itemBus::before {
  content: "\e901";
  font-family: "icomoon";
}

.home-page__itemSavings::before {
  font-weight: bolder;
  font-size: 2.2rem;
  content: "\e922";
  font-family: "icomoon";
}

.home-page__itemCancel::before {
  content: "\e903";
  font-family: "icomoon";
}
.home-page__itemCancel::after {
  content: " ";
  font-size: 0;
  display: block;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
}

.home-page__listContainer {
  background: rgb(246, 145, 38);
  padding: 32px 16px;
  margin-top: 32px;
  position: relative;
}

.home-page__list {
  width: auto;
  font-size: 0;
  text-align: left;
  padding: 0;
  position: static;
  background: transparent;
  box-shadow: 2px 4px #CCCCCC;
}
.home-page__list::after {
  content: " ";
  font-size: 0;
  display: block;
  width: auto;
  display: inline-block;
  position: absolute;
  top: auto;
  right: 16px;
  bottom: 8px;
  left: 16px;
  border-top: 1px solid #F9BF2D;
  z-index: 10;
}
.home-page__list .home-page__item {
  width: 50%;
  min-height: 150px;
  display: inline-block;
  position: relative;
  padding: 32px 16px;
  margin: 0 auto;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: #ffffff;
  vertical-align: top;
}
.home-page__list .home-page__item::after {
  content: " ";
  font-size: 0;
  display: block;
  display: block;
  position: absolute;
  padding-top: 8px;
  top: 100%;
  right: 0;
  bottom: auto;
  left: 0;
  border-bottom: 1px solid #ffffff;
  opacity: 0.5;
}
.home-page__list .home-page__item:nth-child(2n+1) {
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
.home-page__list .home-page__item:nth-child(2n+2) {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}
.home-page__list .home-page__item:last-child::after, .home-page__list .home-page__item:nth-last-child(2)::after {
  display: none;
}
.home-page__list .home-page__item:last-child {
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
}
.home-page__list .home-page__item:first-child::after {
  display: block;
}
.home-page__list .home-page__item:nth-child(2)::after {
  display: block;
}

.form-group--hasIcon {
  position: relative;
}
.form-group--hasIcon::before {
  font-size: 1rem;
  color: #55368B;
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.form-group--isOrigin::before {
  content: "\e909";
  font-family: "icomoon";
  font-size: 1.375rem;
}

.form-group--isDestination::before {
  content: "\e904";
  font-family: "icomoon";
  font-size: 1.375rem;
}

.form-group--isCalendar::before {
  content: "\e902";
  font-family: "icomoon";
}

.cities__list {
  display: none;
  position: absolute;
  z-index: 100;
  background: #ffffff;
  padding: 16px;
  max-height: 240px;
  width: auto;
  overflow-y: scroll;
  overflow-x: hidden;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}

@media (max-width: 1024px) {
  .cities__list {
    width: 100%;
  }
}
.cities__list-recent,
.cities__list-popular {
  border-bottom: 1px solid #F4F4F4;
  margin-bottom: 8px;
}

.cities__item {
  margin-bottom: 8px;
  padding-left: 20px;
  color: #303030;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}
.cities__item.isPopular {
  padding-left: 0;
}
.cities__item.isPopular::before {
  content: "\e92a";
  font-family: "icomoon";
  margin-right: 8px;
  position: relative;
  left: 1px;
}

.item__popular {
  margin-bottom: 20px;
}

.cities__input {
  color: #303030;
  text-indent: 50px;
  padding: 2px;
}

.cities__origin {
  margin-bottom: 8px;
}

.dates__input {
  color: #303030;
  text-indent: 50px;
  padding: 2px;
}

.home-page__charter--item {
  position: relative;
  height: 270px;
  background: url("../../images/charter_banner.jpg") no-repeat;
  background-size: cover;
}

.charter__title {
  position: absolute;
  top: 16px;
  padding: 8px 16px;
  color: #ffffff;
}
.charter__title span {
  display: block;
  font-weight: normal;
  background: #ffffff;
  padding: 4px 8px;
  border-radius: 4px;
}

.home-page__charter--button {
  position: absolute;
  bottom: 16px;
  color: #ffffff;
  background: #55368B;
  padding: 16px;
  margin-left: 16px;
  border-radius: 4px;
  font-weight: bold;
}
.home-page__charter--button:hover {
  color: #ffffff;
}

.home-page-flex {
  display: block;
  position: relative;
  background-color: transparent;
  padding: 0;
}
.home-page-flex .container__lastOrder {
  padding: 16px;
}
.home-page-flex .home-page__charter {
  padding: 16px;
  background-color: transparent;
}
.home-page-flex > div:last-child {
  padding-bottom: 0;
}

.home-page__advertisements--block {
  width: auto;
  display: block;
  position: relative;
  overflow: hidden;
  overflow-x: scroll;
  white-space: nowrap;
  font-size: 0;
}
.home-page__advertisements--block .home-page__advertisement-wrapper {
  width: 100%;
  height: 340px;
  display: inline-block;
  position: relative;
  padding: 0 4px;
  margin-bottom: 16px;
  overflow: hidden;
  vertical-align: top;
}
.home-page__advertisements--block .home-page__advertisement-wrapper:first-child {
  padding-left: 0;
}
.home-page__advertisements--block .home-page__advertisement-wrapper:last-child {
  padding-right: 0;
}
.home-page__advertisements--block .home-page__advertisement-wrapper:first-child .home-page__advertisement-link::before {
  content: " ";
  font-size: 0;
  display: block;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  top: -150%;
  bottom: -150%;
  left: -150%;
  right: -150%;
  position: absolute;
  margin: auto;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  max-width: 100%;
  max-height: 100%;
  background-image: url(../../images/advert-bg.png);
  background-size: auto;
  background-position: left top;
  background-repeat: no-repeat;
  z-index: 1;
}
.home-page__advertisements--block .home-page__advertisement-link {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
  padding: 0;
  overflow: hidden;
  line-height: 0;
  font-size: 0;
}
.home-page__advertisements--block .home-page__advertisement-link .primary-msg,
.home-page__advertisements--block .home-page__advertisement-link .secondary-msg {
  font-size: 25px;
  font-size: calc(25 * 0.0625)rem;
  display: block;
  position: relative;
  font-weight: bold;
}
.home-page__advertisements--block .home-page__advertisement-link .left-advertisement,
.home-page__advertisements--block .home-page__advertisement-link .right-advertisement {
  max-width: calc(100% - 16px * 4);
  display: inline-block;
  position: absolute;
  padding: 4px;
  white-space: normal;
  word-break: break-word;
  z-index: 5;
}
.home-page__advertisements--block .home-page__advertisement-link .left-advertisement {
  top: 32px;
  left: 32px;
  right: auto;
  bottom: auto;
  padding: 4px;
}
.home-page__advertisements--block .home-page__advertisement-link .left-advertisement .secondary-msg {
  padding: 4px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  background-color: #ffffff;
}
.home-page__advertisements--block .home-page__advertisement-link .right-advertisement {
  top: 50%;
  left: 32px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}
.home-page__advertisements--block .home-page__advertisement-link .right-advertisement .primary-msg {
  font-size: 40px;
  font-size: calc(40 * 0.0625)rem;
  line-height: 0.8;
}
.home-page__advertisements--block .home-page__advertisement-link .right-advertisement .primary-msg.text--isOrange {
  color: #FFA010;
}
.home-page__advertisements--block .home-page__advertisement-link .right-advertisement .secondary-msg {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  max-width: 260px;
  padding: 4px 8px;
  margin-top: 16px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  background: #FF008A;
}
.home-page__advertisements--block .home-page__advertisement-image {
  top: -150%;
  bottom: -150%;
  left: -150%;
  right: -150%;
  position: absolute;
  margin: auto;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
}

.home-page-input-form {
  padding: 16px;
  background: #f6f6f6;
  border-radius: 10px;
  border: 1px solid #D4D4D4;
  display: flex;
  flex-direction: column;
}

.home-page__blogBanner {
  width: 100%;
}
.home-page__blogBanner span {
  font-size: 0;
}

.home-page__blogBanner-link {
  max-width: 385px;
  display: block;
  margin: 0 auto;
}

.blog__banner {
  width: 100%;
  height: 340px;
  background-image: url("../../images/banner_blog_mobile.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.home-searchTicket__button {
  order: 1;
}

.home-page__search-options {
  margin-top: 16px;
  order: 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.home-page__search-options .home-page__student label.isStudent {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.home-page__search-options .home-page__student label.isStudent input#isStudent {
  order: 1;
}
.home-page__search-options .home-page__student label.isStudent span.checkmark {
  order: 2;
}
.home-page__search-options .home-page__student label.isStudent span#checkboxStudentDescription {
  order: 3;
}
.home-page__search-options .home-page__student label.isStudent span#checkboxStudentDescription a.readMoreStudent {
  white-space: nowrap;
}
.home-page__search-options .home-page__student label.isStudent a.readMoreStudent {
  font-size: 0.9rem;
}
.home-page__search-options .readMoreStudent {
  text-decoration: underline;
  font-size: 1rem;
  color: #F8A629 !important;
}
.home-page__search-options a, .home-page__search-options span {
  font-size: 1rem;
  color: #F8A629 !important;
  font-weight: bold;
}
.home-page__search-options input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.home-page__search-options label {
  height: 18px;
}
.home-page__search-options .checkmark {
  width: 25px;
  height: 25px;
  border: 2px solid #F8A629;
  border-radius: 4px;
  margin-right: 8px;
  cursor: pointer;
  background-color: white;
}
.home-page__search-options .checkmark:after {
  content: "";
  position: relative;
  display: none;
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid #F8A629;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.home-page__search-options input:checked ~ .checkmark:after {
  display: block;
}
.home-page__search-options #checkboxPcdDescription:before {
  content: "\f193";
  font-family: "icomoon";
  font-family: FontAwesome;
}

.container .checkmark:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid #F8A629;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.check-ticket__container {
  display: flex;
  flex-direction: column;
  padding: 24px;
  align-items: center;
  width: 100%;
  gap: 12px;
  background: #ffffff;
  border-radius: 10px;
}
.check-ticket__container .check-ticket__title {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.check-ticket__container .check-ticket__title h2 {
  color: #55368B;
}
.check-ticket__container .check-ticket__title p {
  text-align: start;
  font-size: 14px;
}
.check-ticket__container .check-ticket__cta {
  display: flex;
  justify-content: center;
  width: 100%;
}
.check-ticket__container .check-ticket__cta a {
  padding: 12px 24px;
  border: 2px solid #F8A629;
  border-radius: 35px;
  font-size: 16px;
}
.check-ticket__container .check-ticket__cta a p {
  font-weight: bold;
  color: #F8A629;
}

@media (min-width: 768px) {
  .homepageBuyTickets__wrap {
    top: 65%;
  }
}
@media (min-width: 1024px) {
  .home-page__search-options {
    flex-direction: row;
  }
  .home__title {
    font-size: 3rem;
    width: 550px;
  }
  .mainBanner__home {
    padding-top: 70px;
  }
  .datepicker--isOpen {
    overflow: auto;
  }
  .homepage {
    margin-top: -75px;
  }
  .page[data-action=Home-Show] {
    background: none;
  }
  .home-page__item {
    width: 100%;
    font-size: 0.875rem;
    padding: 0 4px;
  }
  .home-page-input-form {
    display: block;
    font-size: 0;
    box-sizing: border-box;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.05);
    padding: 20px;
  }
  .home-page-input-form .home-intinerary__switch-button {
    width: 37px;
    height: 37px;
  }
  .home-page-input-form .home-intinerary__switch-button::after {
    font-size: 21px;
    font-size: calc(21 * 0.0625)rem;
    bottom: 5px;
  }
  .home-page-input-form .form-control::placeholder {
    font-size: 0.8125rem;
  }
  .home-page-input-form .form-group.home-searchTicket__button,
  .home-page-input-form .home-dates,
  .home-page-input-form .home-intinerary {
    vertical-align: top;
  }
  .home-page-input-form .form-group.home-searchTicket__button > button {
    margin: 0;
  }
  .home-page-input-form .form-group.home-searchTicket__button > button:hover {
    border: 2px solid #F8A629;
  }
  .home-intinerary {
    font-size: 0;
    display: inline-block;
    width: 50%;
    margin-right: 10px;
    margin-bottom: 0;
  }
  .home-intinerary .row {
    display: inline-block;
    margin: 0;
    max-width: 320px;
    width: 50%;
  }
  .home-intinerary .row:first-child select {
    border-radius: 4px 0 0 4px;
  }
  .home-intinerary .row:last-child select {
    border-radius: 0 4px 4px 0;
    -webkit-border-radius: 0 4px 4px 0;
    -moz-border-radius: 0 4px 4px 0;
    -ms-border-radius: 0 4px 4px 0;
    -o-border-radius: 0 4px 4px 0;
  }
  .home-intinerary .col-12 {
    padding: 0;
  }
  .home-intinerary__switch {
    left: 50%;
    right: unset;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
  }
  .home-intinerary__switch-button {
    transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
  }
  .cities__input,
  .dates__input {
    text-indent: 40px;
  }
  .cities__destination {
    text-indent: 50px;
  }
  .form-group--hasIcon::before {
    left: 8px;
  }
  .form-group--hasIcon select {
    text-indent: 45px;
  }
  .form-group--isDestination::before {
    left: 24px;
  }
  .home-dates {
    display: inline-block;
    width: 28%;
    margin-right: 8px;
    margin-bottom: 0;
    vertical-align: bottom;
  }
  .home-dates .form-group--hasIcon {
    width: 50%;
  }
  .home-dates .form-group--hasIcon::before {
    left: 16px;
  }
  .home-searchTicket__button {
    width: calc(22% - 20px);
    display: inline-block;
  }
  .home-page__listContainer {
    background: none;
  }
  .home-page__list {
    text-align: center;
    padding: 32px 5.3333333333px;
    border-radius: 10px;
    background-color: #ffffff;
  }
  .home-page__list::after {
    display: none;
  }
  .home-page__list .home-page__item {
    width: 25%;
    display: inline-block;
    min-height: initial;
    margin: 0 auto;
    padding: 0 4px;
  }
  .home-page__charter--item {
    height: 100%;
    background: url("../../images/charter_banner_desktop-02.jpg") no-repeat;
    background-size: cover;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
    border-radius: 4px;
  }
  .charter__title {
    font-size: 1.75rem;
    margin-left: 16px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
  }
  .home-page__charter--button {
    top: 50%;
    right: 16px;
    margin-right: 16px;
    margin-left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
  }
  .home-page-flex {
    background-color: transparent;
    padding: 8px;
    font-size: 0;
  }
  .home-page-flex .container__lastOrder,
  .home-page-flex .home-page__charter {
    width: 50%;
    padding: 0;
    display: inline-block;
    vertical-align: top;
    background-color: transparent;
  }
  .home-page-flex .container__lastOrder {
    padding-right: 4px;
    width: auto;
    max-width: 50%;
  }
  .home-page-flex .home-page__charter {
    height: 390px;
    padding-left: 4px;
  }
  .home-page-flex .home-page__charter .charter__title {
    display: block;
    position: absolute;
    margin: 0;
    padding: 16px;
    top: 16px;
    left: 16px;
    transform: none;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
  }
  .home-page-flex .home-page__charter--button {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    display: inline-block;
    position: absolute;
    margin: 0;
    right: 32px;
    bottom: 32px;
    padding: 16px;
    top: auto;
    left: auto;
  }
  .home-page__advertisements--block {
    white-space: normal;
    overflow: hidden;
  }
  .home-page__advertisements--block .home-page__advertisement-wrapper {
    width: 50%;
  }
  .cities__origin,
  .dates__departure {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    margin-bottom: 0;
  }
  .dates__back,
  .cities__destination {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
  }
  .home-page__blogBanner-link {
    max-width: 100%;
  }
  .blog__banner {
    background-image: url("../../images/banner_blog_desktop.png");
  }
  .destak__banner {
    display: flex;
    justify-content: space-between;
  }
  .check-ticket__container {
    flex-direction: row;
    padding: 0 24px 24px;
  }
  .check-ticket__container .check-ticket__title {
    width: 70%;
  }
  .check-ticket__container .check-ticket__cta {
    justify-content: flex-end;
    width: 30%;
  }
}
@media (min-width: 800px) and (max-width: 1440px) {
  .home__title {
    font-size: 1.75rem;
  }
}
@media (min-width: 1440px) {
  .mainBanner__home {
    padding-top: 70px;
  }
}
.page[data-action=Register-Show] {
  background: #4C3770;
}
.page[data-action=Register-Show] .btn-primary,
.page[data-action=Register-Show] .btn-secondary {
  margin-top: 16px;
}

.login__label {
  font-size: 0.9375rem;
  text-align: center;
  margin-top: 15px;
}
.login__label a {
  display: block;
  padding: 5px 0;
  color: #55368B;
  font-weight: 700;
}

.login-page {
  background: #f6f6f6;
}
.login-page .card {
  background: none;
  border: 0;
}
.login-page .card-body {
  padding: 0;
}

.social__login {
  position: relative;
  width: 100%;
  padding-bottom: 48px;
}

.login-oauth {
  text-align: center;
}
.login-oauth .form-group {
  width: 175px;
  display: inline-block;
}
.login-oauth .form-group:first-child {
  margin-right: 8px;
}

.login-oauth a.btn,
.facebook__continue a.btn {
  font-size: 0.75rem;
  margin: 0;
  border: 0;
  line-height: normal;
  text-align: left;
  padding-top: 16px;
  padding-left: 64px;
  position: relative;
  border-radius: 4px;
}
.login-oauth .oauth-google,
.facebook__continue .oauth-google {
  color: #303030;
  background: #ffffff;
}
.login-oauth .oauth-facebook,
.facebook__continue .oauth-facebook {
  color: #ffffff;
  background: #3b5998;
}
.login-oauth i,
.facebook__continue i {
  height: 30px;
  display: block;
  position: absolute;
  left: 16px;
  background-size: cover;
}
.login-oauth .i_facebook,
.facebook__continue .i_facebook {
  background-image: url("../../images/i_facebook.svg");
  width: 30px;
}
.login-oauth .i_google,
.facebook__continue .i_google {
  background-image: url("../../images/i_google.svg");
  width: 35px;
}

.facebook__continue {
  font-size: 1rem;
}
.facebook__continue a.btn {
  height: auto;
  padding: 8px;
  padding-left: 32px;
  font-size: 0.75rem;
  text-decoration: underline;
  background: #1877F2;
}
.facebook__continue .i_facebook {
  width: 18px;
  height: 18px;
  left: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.separator_wraper {
  position: absolute;
  top: calc(100% - (20px));
  width: 100%;
  z-index: 0;
}

.login_separator {
  position: relative;
}
.login_separator::before {
  content: " ";
  font-size: 0;
  display: block;
  width: 100%;
  height: 1px;
  background: #D4D4D4;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  z-index: -1;
}

.separator_content {
  width: 40px;
  height: 40px;
  margin: 0 auto;
  text-align: center;
  line-height: 2.5;
  border: 1px solid #D4D4D4;
  border-radius: 50%;
  font-size: 0.9375rem;
  background: #ffffff;
}

.forgot-password {
  margin: 16px 0 0;
  font-size: 0.75rem;
}
.forgot-password a {
  color: #303030;
}
.forgot-password a:hover {
  text-decoration: underline;
}

.accept-term {
  margin-top: 16px;
  margin-bottom: 16px;
}
.accept-term label {
  line-height: 1.6;
  font-size: 0.875rem;
}

.invalid-feedback {
  font-size: 0.75rem;
  margin: 4px 0 16px;
  position: absolute;
}

.login__title {
  display: block;
  text-align: center;
  padding: 32px 0 16px;
  font-size: 1.5rem;
  color: #55368B;
}

.facebook__continue {
  position: relative;
  background: #ffffff;
  border-radius: 4px;
  padding: 16px;
  margin-top: 16px;
  max-width: 280px;
  text-align: left;
}
.facebook__continue .facebook__close {
  font-size: 0;
  font-weight: bold;
  position: absolute;
  right: 16px;
  top: 16px;
}
.facebook__continue .facebook__close::after {
  content: "\e913";
  font-family: "icomoon";
  font-size: 0.75rem;
  color: #000000;
}
.facebook__continue strong {
  color: #000000;
  display: block;
  margin-bottom: 4px;
}
.facebook__continue p {
  margin-bottom: 8px;
  color: #000000;
}

.page[data-action=Account-SetRenewalPassword] .card-body,
.page[data-action=Account-SaveRenewalPassword] .card-body {
  max-width: 805px;
  padding: 80px 32px;
  background: #ffffff;
  border-radius: 10px;
}
.page[data-action=Account-SetRenewalPassword] .form__title,
.page[data-action=Account-SaveRenewalPassword] .form__title {
  padding-bottom: 16px;
  margin-bottom: 4px;
  font-weight: bold;
  font-size: 1.25rem;
  text-align: center;
  color: #000000;
}
.page[data-action=Account-SetRenewalPassword] .form__subtitle,
.page[data-action=Account-SaveRenewalPassword] .form__subtitle {
  max-width: 527px;
  padding-bottom: 32px;
  margin: 0 auto;
  margin-bottom: 8px;
  font-size: pixtorem(16);
  text-align: center;
  color: #000000;
  line-height: 1.4;
}
.page[data-action=Account-SetRenewalPassword] .update-data-form,
.page[data-action=Account-SaveRenewalPassword] .update-data-form {
  max-width: 324px;
  margin: 0 auto;
}
.page[data-action=Account-SetRenewalPassword] .form-group .form-control,
.page[data-action=Account-SaveRenewalPassword] .form-group .form-control {
  font-size: 0.75rem;
  color: #303030;
  border: 1px solid #D4D4D4;
}
.page[data-action=Account-SetRenewalPassword] .form-group .form-control::-webkit-calendar-picker-indicator,
.page[data-action=Account-SaveRenewalPassword] .form-group .form-control::-webkit-calendar-picker-indicator {
  opacity: 0.5;
}
.page[data-action=Account-SetRenewalPassword] .form-group .form-control.is-invalid,
.page[data-action=Account-SaveRenewalPassword] .form-group .form-control.is-invalid {
  border: solid 1px #FF0000;
}
.page[data-action=Account-SetRenewalPassword] .form-group .form-control.is-invalid .invalid-feedback:first-child,
.page[data-action=Account-SaveRenewalPassword] .form-group .form-control.is-invalid .invalid-feedback:first-child {
  position: absolute;
  top: -20px;
}
.page[data-action=Account-SetRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last),
.page[data-action=Account-SaveRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last) {
  padding-bottom: 40px;
}
.page[data-action=Account-SetRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last) .form-control-label,
.page[data-action=Account-SaveRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last) .form-control-label {
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  font-size: 0;
  opacity: 0;
}
.page[data-action=Account-SetRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last) .form-control,
.page[data-action=Account-SaveRenewalPassword] .form-group:not(.form-group--first):not(.form-group--last) .form-control {
  border: 1px solid #D4D4D4;
  border-radius: 10px;
}
.page[data-action=Account-SetRenewalPassword] .form-group--first,
.page[data-action=Account-SaveRenewalPassword] .form-group--first {
  border-bottom: none;
  border-radius: 10px 10px 0px 0px;
}
.page[data-action=Account-SetRenewalPassword] .form-group--first .form-control.is-invalid ~ .invalid-feedback,
.page[data-action=Account-SaveRenewalPassword] .form-group--first .form-control.is-invalid ~ .invalid-feedback {
  position: absolute;
  top: -20px;
}
.page[data-action=Account-SetRenewalPassword] .form-group--last,
.page[data-action=Account-SaveRenewalPassword] .form-group--last {
  border-radius: 0px 0px 10px 10px;
}
.page[data-action=Account-SetRenewalPassword] button.btn-save.btn-primary,
.page[data-action=Account-SaveRenewalPassword] button.btn-save.btn-primary {
  margin-top: 48px;
  background: #55368B;
  border-radius: 4px;
  border: none;
}

.newPwdBtn:disabled {
  cursor: not-allowed;
  opacity: 0.65;
  background-color: #ccc;
  border: none;
  color: #777;
}

@media (max-width: 800px) {
  .login-oauth .form-group:first-child {
    margin-right: 0;
    margin-bottom: 8px;
  }
}
@media (min-width: 800px) {
  .page[data-action=Login-Show] #maincontent,
  .page[data-action=Register-Show] #maincontent {
    background: #f6f6f6;
  }
  .login__label a {
    display: inline;
    padding: 0;
  }
  .login-oauth {
    padding-top: 32px;
  }
  .login-oauth .form-group {
    width: auto;
    display: block;
    margin: 0 auto;
  }
  .login-oauth .form-group a {
    line-height: 1;
    height: 45px;
  }
  .login-oauth .form-group i {
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .login-oauth .form-group br {
    display: none;
  }
  .login-oauth .form-group:first-child {
    margin-right: auto;
    margin-bottom: 16px;
  }
  .facebook__continue {
    position: absolute;
    top: 100%;
    right: 16px;
    text-align: left;
    z-index: 10;
  }
  .facebook__continue > .facebook__close + strong {
    padding-right: 16px;
  }
}
.page[data-action=Account-PasswordReset] .password__container {
  background: #f6f6f6;
  padding: 48px 32px;
}
.page[data-action=Account-PasswordReset] .form-group {
  position: relative;
}
.page[data-action=Account-PasswordReset] .form-group .form-control-label {
  position: absolute;
  top: 35px;
  -webkit-transform: translate(5px, -50%);
  transform: translate(5px, -50%);
  font-size: 1rem;
  color: #8C8C8C;
  padding-left: 10px;
  transition: all ease 0.2s;
}
.page[data-action=Account-PasswordReset] .form-group .form-control-label:before {
  display: none;
}
.page[data-action=Account-PasswordReset] .form-group .form-control-label.active {
  top: 20%;
  font-size: 0.75rem;
  transition: all ease 0.2s;
}
.page[data-action=Account-PasswordReset] .form-group .form-control {
  padding-left: 15px;
  border-radius: 5px;
}

.request-password-body p,
.request-password-cpf-body p,
.cpf-form-failed p,
.cpf-form-success p {
  font-size: 0.9375rem;
  line-height: 1.2;
  color: #7C7C7C;
}
.request-password-body p a,
.request-password-cpf-body p a,
.cpf-form-failed p a,
.cpf-form-success p a {
  color: #55368B;
  text-decoration: underline;
}
.request-password-body .returned-email,
.request-password-cpf-body .returned-email,
.cpf-form-failed .returned-email,
.cpf-form-success .returned-email {
  display: block;
  padding-bottom: 8px;
  font-size: 0.9375rem;
  line-height: 1.2;
  font-weight: bold;
}

.request-password-body p,
.cpf-form-failed p {
  padding-bottom: 16px;
}
.request-password-body a,
.cpf-form-failed a {
  line-height: 1.6;
}

.request-password-cpf-body p {
  padding-bottom: 4px;
}
.request-password-cpf-body p ~ p {
  padding-bottom: 16px;
}

.cpf-form-success p a {
  line-height: 1.6;
}
.cpf-form-success p + p {
  padding-top: 8px;
}
.cpf-form-success .returned-email {
  padding: 8px 0;
}

.page[data-action=Account-RenewPassword] {
  background: #e5e5e5;
}
.page[data-action=Account-RenewPassword] .update-registration-form {
  width: 100%;
  max-width: 805px;
  margin: 80px 0;
  padding: 80px 32px;
  background: #ffffff;
  border-radius: 10px;
}
.page[data-action=Account-RenewPassword] .request-password-body {
  position: relative;
  padding-bottom: 8px;
}
.page[data-action=Account-RenewPassword] .request-password-body .form__title {
  font-size: pixtorem(20);
  font-weight: bold;
  text-align: center;
}
.page[data-action=Account-RenewPassword] .request-password-body .form__subtitle {
  padding: 16px 0 32px;
  font-size: 1rem;
  text-align: center;
  max-width: 543px;
  margin: 0 auto;
}
.page[data-action=Account-RenewPassword] .request-password-body p:not(form__title):not(form__subtitle) {
  max-width: 543px;
  margin: 0 auto;
  text-align: center;
}
.page[data-action=Account-RenewPassword] .form-group {
  max-width: 324px;
  margin: 0 auto;
}
.page[data-action=Account-RenewPassword] .form-group .form-control-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  font-size: 0;
  opacity: 0;
}
.page[data-action=Account-RenewPassword] .form-group .form-control {
  padding-left: 16px;
  border: 1px solid #D4D4D4;
  box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.05);
}
.page[data-action=Account-RenewPassword] .form-group .form-control::-webkit-input-placeholder {
  font-size: pixtorem(12);
  color: #303030;
  font-family: "Montserrat", sans-serif;
}
.page[data-action=Account-RenewPassword] .form-group .form-control[type=email] {
  border-radius: 10px 10px 0px 0px;
  border-bottom: none;
}
.page[data-action=Account-RenewPassword] .form-group .form-control[type=CPF] {
  border-radius: 0px 0px 10px 10px;
}
.page[data-action=Account-RenewPassword] .form-group .form-control.is-invalid {
  border: 1px solid #FF0000;
}
.page[data-action=Account-RenewPassword] .form-group .invalid-feedback {
  position: absolute;
  bottom: 0;
  top: 100%;
}
.page[data-action=Account-RenewPassword] .send-email-btn {
  max-width: 324px;
  margin: 0 auto;
}
.page[data-action=Account-RenewPassword] .send-email-btn .btn-primary {
  margin-top: 80px;
  background: #55368B;
  border-radius: 4px;
  border: none;
}

.page__accounts form .form-group:not(.form-group--last) .form-control#reset-password-email {
  padding-left: 15px;
  border-radius: 5px;
  border: 1px solid #ced4da;
}

.request-password-title {
  color: #55368B;
}

.show__password {
  background-image: url("../../images/openeye.svg");
  background-repeat: no-repeat;
  height: 20px;
  width: 20px;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 16px;
  cursor: pointer;
  filter: opacity(0.5);
  z-index: 100 !important;
}
.show__password.hide__password {
  background-image: url("../../images/closeeye.svg");
}

.page[data-action=Register-Show] .form-group.registercpf > .form-control-label.active {
  top: 12%;
}
.page[data-action=Register-Show] .form-control-label-always-active {
  top: 20%;
  font-size: 0.75rem;
  color: #8C8C8C;
  padding-left: 10px;
  position: absolute;
  transform: translate(5px, -50%);
}
.page[data-action=Register-Show] .login__title {
  text-align: left;
  padding: 8px 0 16px;
}

.registration-form select,
.profile-form select {
  -webkit-appearance: none;
}
.registration-form .arrow_icon,
.profile-form .arrow_icon {
  content: " ";
  font-size: 0;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 16px;
}
.registration-form .arrow_icon:after,
.profile-form .arrow_icon:after {
  content: "\e91e";
  font-family: "icomoon";
  font-size: 0.9375rem;
  color: #8C8C8C;
}
.registration-form #registration-form-password,
.profile-form #registration-form-password {
  padding-right: 64px;
}

.register__text,
.register_text-social {
  display: none;
}

.tooltip__container {
  z-index: 10;
}

.mobifacil__tooltip {
  height: 30px;
  width: 30px;
  position: absolute;
  right: 48px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.mobifacil__tooltip:hover .mobifacil__rule {
  display: block;
}

.mobifacil__tooltip--icon {
  background: #F6F6F6;
  height: 30px;
  width: 30px;
  border-radius: 50%;
  text-align: center;
  line-height: 2;
  border: 1px solid #F8A629;
  cursor: default;
}

.mobifacil__rule {
  display: none;
  font-size: 0.75rem;
  color: #303030;
  background: #ffffff;
  width: 226px;
  padding: 16px;
  position: absolute;
  top: -140px;
  right: -16px;
  border: 1px solid #C1C1C1;
}
.mobifacil__rule:before {
  content: "";
  background: #ffffff;
  height: 20px;
  width: 19px;
  position: absolute;
  right: 16px;
  bottom: -11px;
  z-index: 0;
  border-bottom: 1px solid #c1c1c1;
  border-left: 1px solid #c1c1c1;
  transform: rotate(-46deg);
}
.mobifacil__rule p {
  line-height: 1.3;
}

.password__reset {
  font-size: 0.8125rem;
  margin-top: 16px;
}

@media (min-width: 800px) {
  .mobifacil__tooltip {
    right: 48px;
  }
  .mobifacil__rule {
    top: -16px;
    right: -250px;
  }
  .mobifacil__rule:before {
    left: -10px;
    bottom: unset;
    transform: skew(-43deg, 10deg);
  }
}
@media (min-width: 1280px) {
  .register__text,
  .register_text-social {
    display: block;
    font-size: 1.0625rem;
    padding: 4px 0;
    font-weight: normal;
  }
  .register_text-social {
    margin: 0 auto;
    text-align: left;
    padding-top: 32px;
  }
  #termsOfUse .modal-dialog,
  #privacyPolicy .modal-dialog {
    max-height: 700px;
    overflow: auto;
  }
  #termsOfUse .col-12,
  #privacyPolicy .col-12 {
    margin: 0 auto;
    max-width: 100%;
    flex: 0 0 100%;
  }
}
.page[data-action=Account-Show] {
  background: #4C3770;
}
.page[data-action=Account-Show] .card {
  margin-right: -15px;
  margin-left: -15px;
  border: 0;
  background: none;
}
.page[data-action=Account-Show] .card-header {
  padding: 0 1.25rem 30px;
  border: none;
  background: none;
}
.page[data-action=Account-Show] .card-header .user .icon-user {
  width: 90px;
  height: 90px;
  font-size: 4.375rem;
}
.page[data-action=Account-Show] .card-header .user p {
  color: #F8A629;
  font-weight: 700;
  font-size: 1.5625rem;
  font-family: "Roboto", sans-serif;
}
.page[data-action=Account-Show] .card-header .user a {
  font-size: 0.875rem;
  color: #ffffff;
  font-weight: normal;
  font-family: "Roboto", sans-serif;
  display: none;
}
.page[data-action=Account-Show] .card-body {
  background: #F6F6F6;
}
.page[data-action=Account-Show] .card-body .alert {
  line-height: 1.4;
}
.page[data-action=Account-Show] .card-body.card-info-group {
  background: #ffffff;
  border: 1px solid #ced4da;
  border-radius: 5px;
  margin-top: 10px;
}
.page[data-action=Account-Show] .card-body.card-info-group p {
  color: #8C8C8C;
}
@supports (-webkit-touch-callout: none) {
  .page[data-action=Account-Show] .card-body #document {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
}
.page[data-action=Account-Show] .account__label {
  font-size: 0.875rem;
  color: #55368B;
  margin: 16px 0;
  font-weight: bold;
}

.page[data-action=PaymentInstruments-AddPayment] .card,
.page[data-action=PaymentInstruments-AddPayment] .card-header {
  background: transparent;
  border: none;
}
.page[data-action=PaymentInstruments-AddPayment] .card-body {
  background: #ffffff;
  border: solid 1px #ced4da;
}
.page[data-action=PaymentInstruments-AddPayment] .account__label {
  color: #55368B;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
}
.page[data-action=PaymentInstruments-AddPayment] form {
  margin-bottom: 0;
}

.accept-sms {
  margin-top: 16px;
  margin-bottom: 16px;
}
.accept-sms label {
  line-height: 1.3;
}

.no__border--right {
  border-right: 0;
}

.accounts__container {
  background: #F6F6F6;
}

.card--password {
  margin: 15px 0;
}

.card--passwordBody {
  padding: 10px;
}

.card--subTitle {
  color: #FFA100;
  margin-bottom: 1.25rem;
  font-weight: 600;
}

/**
** select payment card
**/
.select__box {
  height: 50px;
  padding: 0;
  font-size: 14px;
}
.select__box .selected {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 16px;
}
.select__box .selected .remove-payment {
  display: none;
}
.select__box .payment__icon {
  width: 40px;
  height: 40px;
  margin-right: 8px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.select__box .payment__icon.Visa {
  background-image: url("../../images/visa.svg");
}
.select__box .payment__icon.Mastercard, .select__box .payment__icon.Master {
  background-image: url("../../images/mastercard_white.svg");
}
.select__box .payment__icon.Elo {
  background-image: url("../../images/elo.png");
}
.select__box .payment__icon.Amex {
  background-image: url("../../images/amex-dark.svg");
}
.select__box .select__list {
  position: relative;
  min-width: 100%;
  height: 0;
  list-style: none;
  overflow: hidden;
  z-index: 10;
  opacity: 0;
  transition: ease-in-out height 1s;
}
.select__box .select__list .select__option {
  position: relative;
  height: 45px;
  padding: 0 16px;
}
.select__box .select__list .select__option button {
  position: absolute;
  right: 8px;
}
.select__box.open {
  border-radius: 4px;
}
.select__box.open .select {
  border: none;
  border-radius: 4px 4px 0 0;
  border-bottom: solid 0.5px #f1f1f1;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}
.select__box.open .select__list {
  width: 250px;
  height: 150px;
  opacity: 1;
  background: #ffffff;
  border-radius: 0 0 4px 4px;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  overflow-y: scroll;
}
.select__box.open .select__list::-webkit-scrollbar-track {
  background-color: #ffffff;
}
.select__box.open .select__list::-webkit-scrollbar {
  width: 4px;
  background-color: #ffffff;
}
.select__box.open .select__list::-webkit-scrollbar-thumb {
  background-color: #55368B;
  border-radius: 8px;
}
.select__box.open .select__list .select__option {
  display: flex;
  align-items: center;
  height: 50px;
  cursor: pointer;
  color: #8C8C8C;
}
.select__box.open .select__list .select__option.newCard {
  font-weight: bold;
  color: #55368B;
}

.remove__card {
  border: 0;
  color: #55368B;
  background: none;
}
.remove__card::before {
  content: "\e945";
  font-family: "icomoon";
}

.paymentRoot .form-control {
  margin: 5px 0;
}

.card__cardSave {
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.05);
}

.bgOrange {
  background: #F8A629;
}

.bgWhite {
  background: #ffffff;
}

.myAccount__skeleton .conta-cards {
  display: grid;
  gap: 40px;
}
@media (min-width: 992px) {
  .myAccount__skeleton .conta-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .myAccount__skeleton .conta-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .myAccount__skeleton .conta-cards {
    grid-template-columns: 1fr;
  }
}
.myAccount__skeleton .conta-card {
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
  background: #FFFFFF;
  height: 189px;
  border-radius: 6px;
  padding: 1.5rem;
}
.myAccount__skeleton .conta-card .card--title {
  font-weight: 700;
  font-size: 20px;
  line-height: 24.38px;
}
.myAccount__skeleton .conta-card .card--text {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
}

@media (max-width: 1280px) {
  .page[data-action=Account-Show] .card,
  .page[data-action=PaymentInstruments-AddPayment] .card,
  .page[data-action=PaymentInstruments-List] .card {
    margin-bottom: 0;
  }
  .page[data-action=Account-Show] .card--password,
  .page[data-action=PaymentInstruments-AddPayment] .card--password,
  .page[data-action=PaymentInstruments-List] .card--password {
    padding: 16px;
    background: #F6F6F6;
  }
}
@media (min-width: 1280px) {
  .page[data-action=Account-Show] .page__account,
  .page[data-action=PaymentInstruments-AddPayment] .page__account,
  .page[data-action=PaymentInstruments-List] .page__account {
    max-width: 1280px;
  }
  .page[data-action=Account-Show] .card-header,
  .page[data-action=PaymentInstruments-AddPayment] .card-header,
  .page[data-action=PaymentInstruments-List] .card-header {
    padding: 16px;
  }
  .page[data-action=Account-Show] .card-header .user a,
  .page[data-action=PaymentInstruments-AddPayment] .card-header .user a,
  .page[data-action=PaymentInstruments-List] .card-header .user a {
    color: #55368B;
  }
  .page[data-action=Account-Show] .card-body,
  .page[data-action=PaymentInstruments-AddPayment] .card-body,
  .page[data-action=PaymentInstruments-List] .card-body {
    padding: 16px;
  }
  .page[data-action=Account-Show] .breadcrumb,
  .page[data-action=PaymentInstruments-AddPayment] .breadcrumb,
  .page[data-action=PaymentInstruments-List] .breadcrumb {
    display: none;
  }
  .page[data-action=Account-Show] .account__label,
  .page[data-action=PaymentInstruments-AddPayment] .account__label,
  .page[data-action=PaymentInstruments-List] .account__label {
    margin: 16px 0 16px 16px;
  }
  .horizontal-border {
    height: 1px;
    background: #D4D4D4;
    width: 100vw;
    display: block;
    margin-left: 50%;
    margin-top: 32px;
    margin-bottom: 32px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.icon-bell:before {
  content: url("../../images/bellIcon.svg");
}

.icon-ticket:before {
  content: url("../../images/ticketIcon.svg");
}

.paymentCard__icon {
  margin-top: 5px;
}
.paymentCard__icon.Visa:before {
  content: url("../../images/visa_credit.svg");
  font-size: 14px;
  color: #fff;
  margin-right: 10px;
}
.paymentCard__icon.Mastercard:before, .paymentCard__icon.Master:before {
  content: url("../../images/mastercard_credit.svg");
  font-size: 14px;
  color: #fff;
  margin-right: 10px;
}

.skeleton-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.skeleton-card {
  height: 100px;
  background-color: #e0e0e0;
  border-radius: 4px;
  animation: skeleton-loading 1s linear infinite alternate;
}

@keyframes skeleton-loading {
  0% {
    background-color: #e0e0e0;
  }
  100% {
    background-color: #cfcfcf;
  }
}
.animated-container {
  overflow: hidden;
  transition: max-height 0.8s ease-out;
}

.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.5s ease;
}

.fade-enter,
.fade-leave-to {
  opacity: 0;
}

.promoMessage {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: 0 0 8px 0;
  width: fit-content;
  margin: 0 !important;
  position: absolute;
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  .promoMessage {
    border-radius: 0;
    width: 100%;
  }
}
.promoMessage.personalizar {
  all: unset;
  color: #000;
  font-size: 0.8rem;
}
.promoMessage.roxo {
  color: white;
  background: #55368B;
}
.promoMessage.laranja {
  color: white;
  background: #F0801E;
}
.promoMessage.texto {
  color: #55368B;
  background: unset;
  padding-top: 15px;
}

.listTripsRoot .ticket__time {
  margin-bottom: 0;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  line-height: 1.7;
}
.listTripsRoot .ticket__time.text--isSmall {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}
.listTripsRoot .ticket__trip {
  margin: 10px 0;
  font-size: 13px;
  font-size: calc(13 * 0.0625)rem;
}
.listTripsRoot .ticket__trip:first-child {
  margin-top: 5px;
  margin-bottom: 10px;
}
.listTripsRoot .ticket__card {
  margin-bottom: 4px !important;
}
.listTripsRoot .divisor {
  transform: rotate(90deg) translateX(36%);
}

.ticket__card {
  position: relative;
  margin-bottom: 24px;
  background: #ffffff;
  border-radius: 4px;
  border: 1px solid #D4D4D4;
}
.ticket__card:hover {
  background: #f6f6f6;
  cursor: pointer;
}
.ticket__card .ticketPrice__from {
  font-size: 10px;
  font-weight: 400;
  color: #000000;
  display: block;
  margin-bottom: 4px;
}
.ticket__card.total__seat-0 {
  -webkit-filter: grayscale(100%);
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' ><filter id='gray'><feColorMatrix in='SourceGraphic' type='saturate' values='0' /></filter></svg>#gray");
  filter: grayscale(100%);
  background: #e5e5e5;
}
.ticket__card.total__seat-0 .ticket__price .text--isSmall {
  color: #ffffff;
  font-weight: bold;
  background: #A1A1A1;
}
.ticket__card.total__seat-0 .ticket__button {
  color: #ffffff;
  background: #A1A1A1;
  border: 0;
}
.ticket__card .spinner {
  width: 30px;
  height: 30px;
  margin-top: -15px;
  margin-left: -15px;
}
.ticket__card .bus-map-ajax .salesPoint__box {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 462px;
  border-top: 1px solid #e5e5e5;
}
.ticket__card .bus-map-ajax .salesPoint__box .salesPoint__msg p {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  font-weight: bold;
  line-height: 1.6;
  color: #303030;
}

.cart-page .ticket__card {
  padding: 0;
}

.ticket__header {
  padding: 4px;
  border-bottom: 1px solid #F6F6F6;
}
.ticket__header-edit {
  text-decoration: underline;
}
.ticket__header-dateLabel {
  margin-top: 4px;
  padding-top: 16px;
  color: #7C7C7C;
}
.ticket__header .ticket__header__aligner {
  display: flex;
  width: 100%;
}
.ticket__header .ticket__header__aligner img {
  margin-top: 0.2rem;
}
.ticket__header .ticket__header__aligner div {
  margin-left: 2rem;
  padding-top: -0.8rem;
}
.ticket__header .ticket__header__aligner div p {
  color: #000;
  font-weight: 500;
  font-size: 0.875rem;
  margin-top: 0.75rem;
}

.ticket__tag {
  position: relative;
  display: inline-block;
  height: auto;
  min-height: 30px;
  padding: 8px;
  padding-right: 32px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  color: #303030;
  text-transform: capitalize;
  background: linear-gradient(0deg, #ffffff, #ffffff);
  border: 1px solid rgba(48, 48, 48, 0.1);
  border-radius: 4px;
}
.ticket__tag::first-letter {
  text-transform: uppercase;
}
.ticket__tag:after {
  content: "\e925";
  font-family: "icomoon";
  position: absolute;
  right: 8px;
  left: auto;
  top: 30%;
  width: 23px;
  padding-left: 8px;
  font-size: 15px;
  font-size: calc(15 * 0.0625)rem;
  font-weight: lighter;
  color: #F8A629;
}
.ticket__tag .old_tag {
  position: relative;
}
.ticket__tag .old_tag:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  border-bottom: 2px #000000 solid;
  transform: translateY(-50%);
}
.ticket__tag.--executivo {
  background: rgba(85, 54, 139, 0.1);
  color: #55368B;
}
.ticket__tag.--leito {
  background: rgba(56, 125, 154, 0.1);
  color: #387d9a;
}
.ticket__tag.--semi-leito {
  background: rgba(152, 56, 154, 0.1);
  color: #98389A;
}

.ticket__conexao {
  position: relative;
  display: inline-block;
  height: auto;
  min-height: 30px;
  padding: 8px;
  padding-right: 32px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  color: #303030;
  text-transform: capitalize;
  background: linear-gradient(0deg, #ffffff, #ffffff);
  border: 1px solid rgba(48, 48, 48, 0.1);
  border-radius: 4px;
}
.ticket__conexao::first-letter {
  text-transform: uppercase;
}
.ticket__conexao:after {
  content: "\e925";
  font-family: "icomoon";
  position: absolute;
  right: 8px;
  left: auto;
  top: 30%;
  width: 23px;
  padding-left: 8px;
  font-size: 15px;
  font-size: calc(15 * 0.0625)rem;
  font-weight: lighter;
  color: #F8A629;
}

.ticket__content {
  position: relative;
  padding: 8px 16px 4px;
}
.ticket__content .ticket__date__details {
  width: 100%;
  padding: 0.875rem 0;
  border-bottom: 1px solid #F6F6F6;
}
.ticket__content .ticket__date__details div {
  justify-content: space-between;
  width: 100%;
  margin-bottom: 0.875rem;
}
.ticket__content .ticket__date__details div strong, .ticket__content .ticket__date__details div span {
  margin-left: 0.5rem;
}
.ticket__content .ticket__date__details strong {
  font-size: 0.975rem;
}
.ticket__content .ticket__date__details span {
  font-size: 0.975rem;
}
.ticket__content .ticket__date__details .is-connection {
  font-weight: 700;
  font-size: 0.75rem;
  color: #55368B;
}
.ticket__content .ticket__date__details .isnot-connection {
  font-weight: 700;
  font-size: 0.75rem;
  color: #F47221;
}
.ticket__content .ticket__show__details {
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding: 1rem;
}
.ticket__content .ticket__show__details button {
  font-weight: 600;
  color: #55368B;
  font-size: 0.875rem;
  background-color: rgba(0, 0, 0, 0);
  border: none;
}

.ticket__content--body {
  position: relative;
  display: block;
  width: 100%;
}

.ticket__time {
  margin-bottom: 8px;
}

.ticket__trip {
  margin-bottom: 8px;
}

.ticket__price:after {
  content: " ";
  font-size: 0;
  display: block;
  display: inline-block;
  width: 100%;
}
.ticket__price div {
  color: #F47221;
  font-size: 20px;
  font-weight: 700;
}
.ticket__price .seat--full,
.ticket__price .last--seats {
  display: inline-block;
  padding: 4px;
  color: #ffffff;
  font-size: 10px;
  font-size: calc(10 * 0.0625)rem;
  text-transform: uppercase;
  border-radius: 4px;
}
.ticket__price .seat--full {
  background-color: #55368B;
}
.ticket__price .last--seats {
  background-color: #FF0000;
  font-weight: 600;
}

.ticket__price--wrapper,
.ticket__departureDate--wrapper {
  position: relative;
  width: 100%;
  margin: 0 !important;
  text-align: right;
}

.ticket__button {
  padding: 8px 16px;
  font-weight: bold;
  color: #F8A629;
  background: #ffffff;
  vertical-align: bottom;
}

.ticket__hours {
  position: relative;
  vertical-align: top;
}
.ticket__hours .ticket__hours--wrap {
  display: flex;
  align-items: center;
  flex-direction: row;
}
.ticket__hours .ticket__hours--wrap > div {
  display: flex;
  align-items: center;
}
.ticket__hours .ticket__clock {
  padding-right: 4px;
}
.ticket__hours .ticket__clock:empty {
  width: 18px;
}
.ticket__hours .ticket__clock::before {
  content: "\e928";
  font-family: "icomoon";
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #303030;
}
.ticket__hours .ticket__arrow {
  padding: 0 8px;
}
.ticket__hours .ticket__arrow:empty {
  width: 29px;
}
.ticket__hours .ticket__arrow::after {
  content: "\e915";
  font-family: "icomoon";
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  color: #F8A629;
  font-weight: bold;
}
.ticket__hours .ticket__totalHours {
  padding-left: 8px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  font-weight: 700;
  color: #7C7C7C;
  line-height: 1.7;
}

.ticket__trips {
  position: relative;
  margin-left: 16px;
}

.divisor {
  position: absolute;
  left: -48px;
  right: auto;
  top: 50%;
  font-size: 0;
  transform: rotate(90deg) translateX(25%);
  transform-origin: right;
}
.divisor .empty-circle,
.divisor .full-circle {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1px solid #e5e5e5;
  vertical-align: middle;
}
.divisor .full-circle {
  background: #F8A629;
}
.divisor .line {
  display: inline-block;
  width: 20px;
  border-bottom: 1px solid #e5e5e5;
}

.ticket__progress {
  margin-bottom: 3rem;
  font-size: 0;
}
.ticket__progress .ticket__progress__aligner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 16px;
}
.ticket__progress p {
  margin: 0 8px;
}

.ticket__step.ticket__step--isActive p, .ticket__step.ticket__step--prev-wasActive p {
  font-weight: 600;
  color: #515151;
  margin-top: 1.5rem;
  font-size: 0.9rem;
}
.ticket__step.ticket__step--isActive .timeline .line:first-child,
.ticket__step.ticket__step--isActive .timeline .full-circle, .ticket__step.ticket__step--prev-wasActive .timeline .line:first-child,
.ticket__step.ticket__step--prev-wasActive .timeline .full-circle {
  background: #55368B;
}
.ticket__step.ticket__step--prev-wasActive .timeline .line:last-child {
  background: #55368B;
}
.ticket__step .line--hidden {
  visibility: hidden;
}

.timeline {
  position: relative;
  margin-top: 2rem;
  margin-bottom: 16px;
  font-size: 0;
}
.timeline .line {
  display: inline-block;
  width: 50%;
  height: 3px;
  background: #C1C1C1;
}
.timeline .full-circle {
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #C1C1C1;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}
.timeline p {
  color: #515151 !important;
  margin-top: 0.5rem !important;
}

.ticket__edit {
  display: block;
  background: #55368B;
}

.ticket__edit__mobileEdit .home-page-input-form {
  padding: 0;
  background: none;
  border: none;
}
.ticket__edit__mobileEdit #ticketForm {
  margin-top: 16px;
}
.ticket__edit__mobileEdit .cities__input {
  margin-bottom: 0;
}
.ticket__edit__mobileEdit .cities__input.cities__origin {
  border-radius: 4px 4px 0 0;
}
.ticket__edit__mobileEdit .border-input,
.ticket__edit__mobileEdit .cities__input,
.ticket__edit__mobileEdit .dates__input {
  padding: 0;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  border: 1px solid #D4D4D4;
  border-radius: 0;
}
.ticket__edit__mobileEdit .home-searchTicket__button .search-tickets-btn, .ticket__edit__mobileEdit .home-searchTicket__button .search-tickets-btn-home {
  margin-top: 16px;
  color: #F8A629;
  background: none;
  border-width: 2px;
}

.ticket__editForm {
  display: none;
}

.ticket__editButtonBlock:not(.ticket__editButtonBlock--isOnlyOrigin):first-child:after {
  content: "\e915";
  font-family: "icomoon";
  display: inline-block;
  margin: 0 8px;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #ffffff;
}

.ticket__editButton {
  padding: 0;
  color: #ffffff;
  background: none;
  border: none;
  appearance: none;
}

.ticket__duration,
.ticket__date {
  position: relative;
  display: inline-block;
  padding: 8px;
  color: #303030;
}

.ticket__logo {
  position: relative;
  display: block;
  width: 180px;
  margin: 4px 0;
  background-color: transparent;
  vertical-align: bottom;
}
.ticket__logo img {
  width: 125px;
}

.logo--img {
  position: relative;
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  min-width: 30px;
  min-height: 30px;
  background-color: #D4D4D4;
  border-radius: 4px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}
.logo--img[src^=http], .logo--img[src^="on/"] {
  background-color: transparent;
}

.absolutely--positioned {
  position: absolute;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
}

.position--top--zero {
  top: 0;
}

.position--right--zero {
  right: 0;
}

.position--bottom--zero {
  bottom: 0;
}

.position--left--zero {
  left: 0;
}

@media (min-width: 577px) {
  .slider-dates {
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
  }
}
.slider-dates {
  margin-bottom: 20px;
  background-color: #FFFFFF;
}
.slider-dates .slider-center {
  display: flex;
  flex-wrap: wrap;
}
.slider-dates .slick-arrow {
  position: absolute;
  top: 50%;
  padding: 0;
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.slider-dates .slick-arrow:before {
  content: "\e921";
  font-family: "icomoon";
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  color: #55368B;
}
.slider-dates .slick-arrow.slick-prev {
  left: -16px;
  font-size: 0;
}
.slider-dates .slick-arrow.slick-next {
  right: -16px;
  font-size: 0;
  -webkit-transform: rotate(180deg) translateY(-50%);
  -ms-transform: rotate(180deg) translateY(-50%);
  transform: rotate(180deg) translateY(-50%);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
}
.slider-dates > div.container {
  padding: 0;
}
.slider-dates .slick-list {
  padding: 0;
}
.slider-dates .slick-slide.disabled {
  pointer-events: none;
  background: #e5e5e5;
}
.slider-dates .slick-slide.disabled .text-price {
  color: #7C7C7C;
}

.slider-center__slide {
  display: inline-block;
  width: 131px;
  background: #ffffff;
  border-radius: 4px;
  border: 1px solid #e5e5e5;
  cursor: pointer;
}
.slider-center__slide p {
  color: #7C7C7C;
  font-family: "Roboto", sans-serif;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}
.slider-center__slide p:nth-child(3) {
  display: block;
  margin-top: -0.3rem;
  margin-bottom: 0.2rem;
  font-size: 0.75rem;
}
.slider-center__slide p.text-price {
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  color: #F47221;
  letter-spacing: -0.04em;
}
.slider-center__slide.date-selected {
  position: relative;
  border-color: #55368B;
}
.slider-center__slide.date-selected:after {
  content: "";
  position: absolute;
  top: auto;
  right: 0;
  left: 0;
  bottom: 0;
  height: 6px;
  background: #55368B;
}

.ticket__searchInfos {
  padding: 20px 16px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .ticket__searchInfos {
    padding-top: 100px;
  }
}
.ticket__searchInfos > .container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 1024px) {
  .ticket__searchInfos {
    margin-bottom: 0.5rem;
  }
}

.ticket__edit__deskInfos__title,
.ticket__edit__deskInfos__subTitle {
  font-weight: 600;
  font-size: 22px;
  line-height: 100%;
  letter-spacing: 0%;
}
.ticket__edit__deskInfos__title strong,
.ticket__edit__deskInfos__subTitle strong {
  font-weight: 600 !important;
}

.titleWrapper {
  display: flex;
  gap: 0.5em;
  align-items: center;
  text-align: justify;
}
.titleWrapper .searchInfo__tag {
  padding: 4px;
  margin-right: 8px;
  color: #ffffff;
  font-weight: 700;
  background: #F8A629;
  border-radius: 4px;
  text-transform: uppercase;
  font-size: 12px;
  min-width: 46px;
  min-height: 28px;
  text-align: center;
  align-content: center;
}

.ticket__infoWrap {
  display: none;
}

.ticket__edit__deskInfos__subTitle {
  white-space: nowrap;
}

.ticket__edit__deskInfos__subTitle strong {
  color: #55368B;
}

/** BREADCRUMB **/
.breadcrumb__wrap {
  display: flex;
  align-items: center;
  max-width: auto;
  padding: 20px 16px;
}
.breadcrumb__wrap > .row {
  display: flex !important;
}
.breadcrumb__wrap .breadcrumb {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: none;
}
.breadcrumb__wrap .breadcrumb-item a {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #F47221;
}
.breadcrumb__wrap .breadcrumb__divisor:after {
  content: "\e92f";
  font-family: "icomoon";
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  color: #7C7C7C;
}
.breadcrumb__wrap .breadcrumb__divisor {
  padding: 8px;
}
.breadcrumb__wrap .breadcrumb__destination {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  font-weight: normal;
  color: #7C7C7C;
}

.ticket__trips {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.ticket__trips--desktop {
  display: none;
}

.ticket__content--body .ticket__hours {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.ticket__content--body .ticket__hours .connection__line {
  width: 100%;
  position: relative;
  padding: 2px;
  background: #D4D4D4;
  border-radius: 10px;
}
.ticket__content--body .ticket__hours .connection__line--ball {
  position: absolute;
  top: -2px;
  left: 47%;
  padding: 4px;
  background: #55368B;
  border-radius: 50%;
}
.ticket__content--body .ticket__hours--desktop {
  display: none;
  flex-direction: row;
  gap: 16px;
  align-items: center;
  width: 190px;
}
.ticket__content--body .ticket__hours--desktop .ticket__hoursContainer {
  display: flex;
  align-items: center;
  gap: 16px;
}
.ticket__content--body .ticket__hours--desktop .ticket__hoursContainer > i {
  font-size: 0.7rem;
}

.ticket__totalHours {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 0;
  font-size: 0.7rem;
}

.ticket__connections {
  font-family: "Montserrat", sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 13px;
  letter-spacing: 0.01em;
  text-align: center;
  color: #F47221;
}
.ticket__connections--hasConnection {
  font-family: "Montserrat", sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 13px;
  letter-spacing: 0.01em;
  text-align: center;
  white-space: nowrap;
  color: #55368B;
}

.location-connection {
  margin-top: 0.5rem;
  text-transform: capitalize;
}

.ticket__content--body .ticket__tag__wrap {
  order: unset !important;
}

.ticket__classes__details {
  border: 1px solid #e7e7e7;
  position: absolute;
  display: none;
  flex-direction: column;
  width: max-content;
  max-width: 11rem;
  height: max-content;
  overflow: unset;
  background-color: #ffffff;
  text-align: center;
  border-radius: 1px;
  z-index: 7;
}
.ticket__classes__details .class__title {
  background-color: #55368B;
  width: 100%;
  text-align: center;
  padding: 0.8rem 0;
  color: #ffffff;
  font-weight: 900;
  text-transform: capitalize;
  font-size: 12px;
}
.ticket__classes__details .class__items {
  padding: 0.8rem;
  padding-bottom: 0;
  text-align: left;
}
.ticket__classes__details .class__items strong {
  color: #55368B;
}
.ticket__classes__details .class__items div {
  display: flex;
  margin-bottom: 1rem;
}
.ticket__classes__details .class__items div img {
  filter: invert(22%) sepia(59%) saturate(1327%) hue-rotate(234deg) brightness(90%) contrast(93%);
}
.ticket__classes__details .class__items p {
  margin-left: 0.3rem;
  color: #55368B;
  font-weight: 900;
  margin-left: 0.325rem;
  font-size: 0.825rem;
  padding-top: 0.35rem;
}

.ticket__clock {
  padding-right: 4px;
}
.ticket__clock:empty {
  width: 18px;
}
.ticket__clock::before {
  content: "\e928";
  font-family: "icomoon";
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  color: #303030;
}

#connectionModal .modal-dialog {
  max-width: 900px;
}
#connectionModal .modal-content {
  margin-top: 25%;
}
#connectionModal .connectionModal-trecho-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#connectionModal .trecho-title {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  font-weight: bold;
  color: #55368B;
}
#connectionModal .header-trecho {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#connectionModal .schedule {
  margin-right: 0.6em;
}
#connectionModal .schedule p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
#connectionModal .divider {
  text-transform: none;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin: 0 1em 1.5em 1em;
  color: #939393;
}
#connectionModal .divider::before {
  content: "";
  height: 0.02em;
  background: #939393;
  flex: 1;
  margin: 0 1.4em 0 0;
}
#connectionModal .divider::after {
  content: "";
  height: 0.02em;
  background: #939393;
  flex: 1;
  margin: 0 0 0 1.4em;
}
#connectionModal i.icon-arrow-divider {
  margin: 0 0.8em;
}
#connectionModal p {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  text-transform: capitalize;
}
#connectionModal div {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  font-weight: bold;
}
#connectionModal .logo--desktop {
  margin: 0 20px;
}

.dropdown-menu {
  z-index: 10 !important;
}

.ticket__list {
  margin-bottom: 40px;
}

.title__ticket__list {
  text-transform: capitalize;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 600;
  color: #303030;
  margin-bottom: 24px;
}
.title__ticket__list::before {
  content: "\f207";
  font-family: "FontAwesome";
  font-size: 1.2em;
  font-weight: 400;
  color: #55368B;
  margin-right: 8px;
}

@media (max-width: 800px) {
  .ticket__price--wrapper,
  .ticket__departureDate--wrapper {
    text-align: left;
  }
  .header__list {
    display: none;
  }
  .ticket__card {
    overflow: unset;
    min-height: 179px;
  }
  .ticket__card.total__seat-0 .ticket__price .ticket__price--wrapper {
    min-height: 0;
  }
  .ticket__card.total__seat-0 .ticket__price div {
    visibility: hidden;
    height: 0;
  }
  .ticket__card.total__seat-0 .ticket__price .ticket__button {
    display: none;
  }
  .ticket__card .bus-map-ajax .salesPoint__box {
    padding: 32px;
  }
  .ticket__logo {
    width: 100%;
  }
  .ticket__logo.logo--mobile {
    display: block;
  }
  .ticket__logo.logo--desktop {
    display: none;
  }
  .ticket__header .ticket__logo {
    max-width: 132px;
    margin-bottom: 16px;
  }
  .ticket__content--body {
    width: 100%;
    max-width: none;
    display: flex;
    align-items: center;
    padding: 16px 0 24px 0;
    gap: 20px;
  }
  .ticket__content--body .ticket__trips {
    margin-left: 0;
    width: 40%;
  }
  .ticket__content--body .ticket__trip {
    word-break: break-word;
  }
  .ticket__content--body .ticket__tag__wrap {
    display: none;
  }
  .ticket__content--body .ticket__hours {
    display: block;
  }
  .ticket__content--body .ticket__totalHours--mobile {
    display: flex;
    justify-content: center;
    width: 20%;
  }
  .ticket__tripsConnection--desktop {
    display: none;
  }
  .ticket__price,
  .seatMap__back {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    bottom: auto;
    display: block;
    width: 100%;
    max-width: none;
    font-size: 0;
  }
  .ticket__price .ticket__button,
  .seatMap__back .ticket__button {
    display: inline-block;
    height: 27px;
    max-width: calc(50% - 16px / 4);
    margin: 0 auto;
    margin-left: 4px;
    font-size: 14px;
    font-size: calc(14 * 0.0625)rem;
    line-height: 0;
    word-break: keep-all;
    white-space: nowrap;
    text-overflow: ellipsis;
    vertical-align: middle;
    overflow: hidden;
  }
  .ticket__price,
  .ticket__departureDate {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
  }
  .ticket__price .ticket__button,
  .ticket__departureDate .ticket__button {
    margin: 0;
    overflow: visible;
    pointer-events: none;
  }
  .ticket__price::after,
  .ticket__departureDate::after {
    display: none;
  }
  .ticket__price--wrapper,
  .ticket__departureDate--wrapper {
    display: inline-block;
    min-height: 45px;
    padding-right: 4px;
    vertical-align: middle;
  }
  .listTripsRoot .ticket__header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .listTripsRoot .ticket__header .ticket__logo {
    position: static;
    width: calc(100% - 170px);
    margin-bottom: 0;
    padding-left: 8px;
    order: 1;
  }
  .listTripsRoot .ticket__header .ticket__logo::after {
    bottom: 36px;
  }
  .listTripsRoot .ticket__header .ticket__date {
    order: 3;
  }
  .listTripsRoot .ticket__header .ticket__tag {
    order: 2;
    padding-right: 32px;
    max-width: 130px;
  }
  .listTripsRoot .ticket__header .ticket__duration {
    order: 4;
  }
  .slider-dates {
    overflow: hidden;
    width: 101%;
  }
  .slider-dates.loading .slider-center__slide {
    -webkit-animation: gradient-slide 2.2s ease infinite;
    animation: gradient-slide 2.2s ease infinite;
    background: 0 0/300% 300% linear-gradient(90deg, #ebebeb 40%, #FBFBFB 50%, #ebebeb 60%);
  }
  .slider-dates .slider-center__slide {
    padding: 20px 4px 14px;
  }
  .slider-dates .slider-center__slide .text-price {
    font-size: 18px;
    font-size: calc(18 * 0.0625)rem;
  }
  .ticket__edit__deskInfos__title {
    font-size: 20px;
    font-family: "Montserrat", sans-serif;
  }
  .ticket__edit__deskInfos__subTitle {
    text-align: right;
  }
  .ticket__edit__mobileEdit .border-input,
  .ticket__edit__mobileEdit .cities__input,
  .ticket__edit__mobileEdit .dates__input {
    height: 65px;
  }
  .ticket__edit__mobileEdit .home-intinerary .form-control:focus {
    border: 2px solid #F8A629;
  }
}
@media (min-width: 800px) {
  .ticket__edit {
    display: none;
  }
  .ticket__trips {
    display: none;
  }
  .ticket__trips--desktop {
    display: inline-block;
  }
  .ticket__content--body .ticket__hours {
    display: none !important;
  }
  .ticket__content--body .ticket__hours--desktop {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 4px;
    font-size: 0.7rem;
  }
  .ticket__content--body .ticket__hours--desktop .ticket__time {
    font-size: 0.9rem;
  }
  .ticket__content--body {
    justify-content: space-between;
  }
  .header__list {
    display: flex;
    justify-content: space-between;
    padding: 8px 16px;
    font-size: 14px;
    font-size: calc(14 * 0.0625)rem;
    font-weight: bold;
    color: #A1A1A1;
    list-style: none;
  }
  .header__list .header__item {
    padding: 8px 0;
    color: #A1A1A1;
  }
  .header__list .header__item.logo {
    width: 15%;
  }
  .header__list .header__item .filterAll {
    cursor: pointer;
    transition: 0.015s ease-in-out;
  }
  .header__list .header__item .filterAll:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 4px;
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
    color: #55368B;
    border-right: 5px solid transparent;
    border-top: 5px solid;
    border-bottom: 5px solid transparent;
    border-left: 5px solid transparent;
    vertical-align: bottom;
  }
  .header__list .header__item .filterAll + span {
    padding-left: 8px;
  }
  .header__list .header__item .filterAll:active {
    color: #55368B;
  }
  .header__list .header__item.wrap {
    display: flex;
    justify-content: space-between;
    width: 60%;
  }
  .header__list .header__item.wrap .destiny {
    width: 15%;
  }
  .header__list .header__item.wrap .class {
    width: 130px;
    text-align: center;
  }
  .header__list .header__item.wrap div {
    width: 26%;
    min-width: 185px;
  }
  .header__list .header__item.price {
    width: 15%;
  }
  .header__list .header__item.price .filter__orderPrice {
    padding-left: 50%;
  }
  .cart-page .ticket__card {
    margin: 15px 15px 0;
  }
  .listTripsRoot .ticket__header {
    display: none;
  }
  .ticket__list .search-tickets-btn, .ticket__list .search-tickets-btn-home {
    pointer-events: none;
  }
  .ticket__card.total__seat-0 .ticket__price div {
    height: 8px;
    visibility: hidden;
  }
  .ticket__card.total__seat-0 .ticket__button {
    color: transparent;
    background: transparent;
    border: 0;
  }
  .ticket__card .bus-map-ajax .salesPoint__box {
    padding: 16px;
  }
  .ticket__card .bus-map-ajax .salesPoint__box .salesPoint__msg {
    max-width: 430px;
  }
  .ticket__logo.logo--mobile {
    display: none;
  }
  .ticket__logo.logo--desktop {
    display: inline-block;
    width: 129px;
    margin-right: 16px;
    padding: 16px 0;
  }
  .ticket__logo.logo--desktop img {
    width: 100%;
    max-width: 180px;
  }
  .mobioferta-logo-wrap {
    display: inline-block;
    width: 129px;
    margin-right: 16px;
    padding: 16px 0;
  }
  .ticket__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }
  .ticket__duration {
    width: 100%;
  }
  .ticket__content--body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 60%;
  }
  .ticket__content--body .ticket__totalHours--mobile {
    display: none;
  }
  .ticket__content--body .ticket__hours {
    display: inline-block;
    order: 3;
    width: 20%;
    min-width: 144px;
    margin-left: 16px;
    font-size: 0.7rem;
  }
  .ticket__content--body .ticket__hours .ticket__hours--wrap {
    display: flex;
    flex-direction: column;
    max-width: 150px;
  }
  .ticket__content--body .ticket__hours .ticket__hours--wrap > div {
    display: flex;
    align-items: center;
    min-width: 150px;
  }
  .ticket__content--body .ticket__hours .ticket__hours--wrap > .ticket__totalHours {
    display: block;
    width: 100%;
    text-align: center;
  }
  .ticket__content--body .ticket__trips {
    order: 1;
    width: 50%;
    margin: 10px 0;
  }
  .ticket__content--body .ticket__tag__wrap {
    order: 2;
    width: 130px;
  }
  .ticket__content--body .ticket__tag__wrap .ticket__tag {
    display: inline-block;
    width: 130px;
  }
  .ticket__price,
  .seatMap__back {
    display: inline-block;
    max-width: 160px;
    width: 140px;
  }
  .ticket__price .ticket__button,
  .seatMap__back .ticket__button {
    width: 100%;
    height: 45px;
    margin-top: 8px;
    word-break: keep-all;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 26px;
    overflow: hidden;
  }
  .ticket__price,
  .ticket__departureDate {
    vertical-align: bottom;
  }
  .ticket__price .ticket__button,
  .ticket__departureDate .ticket__button {
    position: absolute;
    top: -8px;
    left: 0;
    right: 0;
    height: 100%;
    background: transparent;
    border-radius: 0;
    color: transparent;
    border: none;
  }
  .ticket__price .ticket__button.btn.btn-primary:active, .ticket__price .ticket__button.btn.btn-primary:focus,
  .ticket__departureDate .ticket__button.btn.btn-primary:active,
  .ticket__departureDate .ticket__button.btn.btn-primary:focus {
    color: transparent;
    background: transparent;
    box-shadow: none;
  }
  .ticket__price--wrapper,
  .ticket__departureDate--wrapper {
    display: block;
  }
  .slider-dates {
    margin: 0 auto 32px;
  }
  .slider-dates.loading .slider-center {
    overflow: hidden;
    max-height: 80px;
  }
  .slider-dates.loading .slider-center__slide {
    width: 20%;
    -webkit-animation: gradient-slide 2.2s ease infinite;
    animation: gradient-slide 2.2s ease infinite;
    background: 0 0/300% 300% linear-gradient(90deg, #ebebeb 40%, #FBFBFB 50%, #ebebeb 60%);
  }
  .slider-dates.loading .slider-center__slide.date-selected {
    border: none;
  }
  .slider-dates.loading .slider-center__slide.date-selected:after {
    background: none;
  }
  .slider-dates.loading .text-date,
  .slider-dates.loading .text-price {
    color: transparent;
  }
  .slider-dates > div.container {
    padding: 0 16px;
  }
  .slider-center__slide {
    padding: 20px 8px 14px 8px;
  }
  .slider-center__slide p {
    font-size: 14px;
    font-size: calc(14 * 0.0625)rem;
  }
  .slider-center__slide p.text-price {
    font-size: 22px;
    font-size: calc(22 * 0.0625)rem;
  }
  .breadcrumb__wrap {
    padding: 16px 0 40px;
  }
  .ticket__edit__mobileEdit .border-input,
  .ticket__edit__mobileEdit .cities__input,
  .ticket__edit__mobileEdit .dates__input {
    height: 45px;
  }
  .connections .ticket__content--body {
    width: 65%;
  }
  .connections .header__item.wrap {
    width: 70%;
  }
  .connections .ticket__hours--desktop {
    width: 130px;
  }
  .connections .header__item.price {
    width: 8%;
  }
  .connections .header__item.price span#price {
    padding-left: 0;
  }
  .connections .header__item.logo {
    width: 10%;
  }
  .connections .destiny {
    width: 50% !important;
  }
}
@media (min-width: 768px) {
  .ticket__infoWrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    width: 100%;
  }
  .ticket__infoWrap .ticket__infoMsg {
    display: flex;
    align-items: center;
    gap: 16px;
  }
  .ticketInfo__qtd {
    color: #55368B;
    font-size: 14px;
    font-weight: 700;
  }
  .ticketInfo__qtdFound {
    font-size: 14px;
    color: #000000;
  }
}
.page[data-action=Search-Show] .ticket__filter--wrapper,
.page[data-action=Ticket-Search] .ticket__filter--wrapper,
.page[data-action=Ticket-BusDetails] .ticket__filter--wrapper {
  position: relative;
  padding: 0 16px 20px;
  font-size: 0;
}
.page[data-action=Search-Show] .ticket__filter--block,
.page[data-action=Ticket-Search] .ticket__filter--block,
.page[data-action=Ticket-BusDetails] .ticket__filter--block {
  height: auto;
  position: relative;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  font-weight: bold;
  color: #55368B;
  text-transform: capitalize;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:after,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:after,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
  border-right: 5px solid transparent;
  border-top: 5px solid;
  border-bottom: 5px solid transparent;
  border-left: 5px solid transparent;
  vertical-align: middle;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:focus,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:focus,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label:focus {
  box-shadow: none;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu {
  display: none;
  opacity: 0;
  width: 344px;
  padding: 16px 8px;
  position: absolute;
  bottom: auto;
  right: 0;
  z-index: 3;
  background: #ffffff;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox .checkbox-filter,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox .checkbox-filter,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox .checkbox-filter {
  margin-right: 8px;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox label,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox label,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu .checkbox label {
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}
.page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.show .ticket__filter--submenu,
.page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.show .ticket__filter--submenu,
.page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.show .ticket__filter--submenu {
  display: block;
  opacity: 1;
}
.page[data-action=Search-Show] .ticket__filter--title,
.page[data-action=Ticket-Search] .ticket__filter--title,
.page[data-action=Ticket-BusDetails] .ticket__filter--title {
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  color: #303030;
}

@media (max-width: 800px) {
  .page[data-action=Search-Show] .ticket__filter--wrapper,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper {
    display: block;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper .ticket__filter--length,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper .ticket__filter--length,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper .ticket__filter--length {
    display: none;
  }
  .page[data-action=Search-Show] .ticket__filter--block,
  .page[data-action=Ticket-Search] .ticket__filter--block,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block {
    display: inline-block;
    width: 100%;
    padding: 0;
    margin: 0;
    vertical-align: top;
  }
  .page[data-action=Search-Show] .ticket__filter--block:first-child,
  .page[data-action=Ticket-Search] .ticket__filter--block:first-child,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block:first-child {
    padding-right: 4px;
  }
  .page[data-action=Search-Show] .ticket__filter--block.ticket__filter--dropdown,
  .page[data-action=Ticket-Search] .ticket__filter--block.ticket__filter--dropdown,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block.ticket__filter--dropdown {
    padding-left: 4px;
  }
  .page[data-action=Search-Show] .ticket__filter--block .ticket__filter--title,
  .page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--title,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--title {
    display: block;
    width: 100%;
    text-align: center;
  }
  .page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu,
  .page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu {
    display: flex;
    justify-content: center;
    position: relative;
  }
  .page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.dropdown,
  .page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.dropdown,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items.dropdown {
    position: initial;
  }
  .page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--desk,
  .page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--desk,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--desk {
    display: none;
  }
  .page[data-action=Search-Show] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
  .page[data-action=Ticket-Search] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
  .page[data-action=Ticket-BusDetails] .ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu {
    top: 40px;
    left: 16px;
  }
}
@media (min-width: 800px) {
  .page[data-action=Search-Show] .ticket__filter--wrapper,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper {
    display: flex;
    justify-content: space-between;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper .ticket__filter--length,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper .ticket__filter--length,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper .ticket__filter--length {
    display: flex;
    align-items: center;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper .ticket__filter--length span,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper .ticket__filter--length span,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper .ticket__filter--length span {
    color: #303030;
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    padding-right: 4px;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper .ticket__filter--length span b,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper .ticket__filter--length span b,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper .ticket__filter--length span b {
    color: #55368B;
    font-weight: bold;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block {
    width: auto;
    display: flex;
    justify-content: space-between;
    position: relative;
    padding-bottom: 16px;
    align-items: center;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--title,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--title,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--title {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    padding-right: 16px;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu {
    display: flex;
    justify-content: space-evenly;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li {
    position: relative;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li + li,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li + li,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu > li + li {
    margin-left: 8px;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--mobile,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--mobile,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--label .text__label--mobile {
    display: none;
  }
  .page[data-action=Search-Show] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
  .page[data-action=Ticket-Search] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu,
  .page[data-action=Ticket-BusDetails] .ticket__filter--wrapper div.ticket__filter--block .ticket__filter--menu .ticket__filter--items .ticket__filter--submenu {
    top: 32px;
    left: auto;
  }
}
.title-p {
  font-size: 24px;
  font-family: Montserrat, sans-serif;
  font-weight: 700;
}

.toggle__floor {
  font-size: 12px;
}
.toggle__floor:disabled {
  background: rgb(211.1538461538, 208.8461538462, 211.1538461538);
  border: 2px solid #F8A629;
  color: #55368B;
}

.bus__icon {
  display: block;
  margin: 16px auto 0 auto;
  width: 100px;
  height: 100px;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  transform: rotateY(180deg);
}
.bus__icon.first_floor {
  background: url("../../images/first_floor.png");
}
.bus__icon.second_floor {
  background: url("../../images/second_floor.png");
}

.ticket__step {
  width: 33.3333333333%;
  vertical-align: top;
}

.page[data-action=Search-Show] .header__mobile,
.page[data-action=Ticket-Search] .header__mobile,
.page[data-action=Ticket-BusDetails] .header__mobile {
  position: absolute;
  width: 100%;
  z-index: 16;
}
.page[data-action=Search-Show] .header__mobile.open,
.page[data-action=Ticket-Search] .header__mobile.open,
.page[data-action=Ticket-BusDetails] .header__mobile.open {
  height: 100%;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__back > .choose__trip--button,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__back > .choose__trip--button,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__back > .choose__trip--button {
  display: none;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info {
  font-size: 0;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info > div,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info > div,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info > div {
  width: 33.3333333333%;
  display: inline-block;
  position: relative;
  padding: 0 4px;
  vertical-align: middle;
  text-align: left;
  font-size: 12px;
  font-size: calc(12 * 0.0625)rem;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info > div:first-child,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info > div:first-child,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info > div:first-child {
  padding-left: 0;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info > div:last-child,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info > div:last-child,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info > div:last-child {
  padding-right: 0;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info > div.select-tip,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info > div.select-tip,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info > div.select-tip {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  line-height: 1.2;
  text-align: center;
}
.page[data-action=Search-Show] .busMapRoot .seatMap__info > div.select-tip > a,
.page[data-action=Ticket-Search] .busMapRoot .seatMap__info > div.select-tip > a,
.page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info > div.select-tip > a {
  margin: 0;
}
.page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip,
.page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip,
.page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip {
  box-shadow: none;
}
.page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip .toolTip__button,
.page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip .toolTip__button,
.page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.component__toolTip .toolTip__button {
  display: inline-block;
  position: absolute;
  padding: 0;
  top: 50%;
  right: 4px;
  bottom: auto;
  left: auto;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}
.page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
.page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
.page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul {
  font-size: 0;
}
.page[data-action=Search-Show] .ticket__card,
.page[data-action=Ticket-Search] .ticket__card,
.page[data-action=Ticket-BusDetails] .ticket__card {
  margin-bottom: 32px;
}
.page[data-action=Search-Show] .tickets-not-found,
.page[data-action=Ticket-Search] .tickets-not-found,
.page[data-action=Ticket-BusDetails] .tickets-not-found {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  padding: 32px 16px;
  margin: 0 auto;
  margin-bottom: 16px;
  text-align: center;
}
.page[data-action=Search-Show] .tickets-not-found-text-wrapper,
.page[data-action=Ticket-Search] .tickets-not-found-text-wrapper,
.page[data-action=Ticket-BusDetails] .tickets-not-found-text-wrapper {
  display: inline-block;
  position: relative;
  text-align: center;
  padding: 0;
}
.page[data-action=Search-Show] .tickets-not-found-text-wrapper .text--isNormal,
.page[data-action=Ticket-Search] .tickets-not-found-text-wrapper .text--isNormal,
.page[data-action=Ticket-BusDetails] .tickets-not-found-text-wrapper .text--isNormal {
  padding: 4px 0;
  margin: 0 auto;
}

.seatMap__info__button {
  font-weight: 600;
}

.modal .modal-body {
  font-size: 0.875rem;
}

.listTripsRoot .busMapRoot {
  position: relative;
}
.listTripsRoot .edit__search {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.listTripsRoot .edit__search > .bus-map-seat {
  margin-bottom: 0;
}
.listTripsRoot .edit__search .page-title {
  width: calc(100% - 100px);
}
.listTripsRoot .edit__search--button {
  width: 100%;
  color: #ffffff;
  font-weight: 600;
  text-align: center;
  font-size: 16px;
  text-transform: uppercase;
  cursor: pointer;
}
.listTripsRoot .seatMap__info-ajax {
  display: none;
  padding: 16px;
}
.listTripsRoot .seatMap__info-ajax .d-inline-block:first-child {
  padding-left: 32px;
}
.listTripsRoot .seatMap__info-ajax:last-child {
  display: inline-block;
}
.listTripsRoot .seatMap__info-ajax.connection {
  display: none;
}
.listTripsRoot .bus-map-seat > .bus-front {
  position: relative;
  display: block;
  padding: 10px;
}
.listTripsRoot .bus-map-seat > .bus-front > img {
  max-width: 100%;
  height: auto;
}
.listTripsRoot .map-bus {
  transform: scale(0.92);
}

.modal-priceDiff {
  display: none;
  flex-direction: column;
  width: max-content;
  height: max-content;
  overflow: unset;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.modal-priceDiff.show {
  display: flex;
  opacity: 1;
}
.modal-priceDiff .arrow {
  width: 0;
  height: 0;
  margin-left: 8px;
}
.modal-priceDiff .arrow:first-child {
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.modal-priceDiff .arrow:last-child {
  position: absolute;
  border-left: 19px solid transparent;
  border-right: 19px solid transparent;
  border-bottom: 20px solid #ffffff;
  margin-left: 9px;
}
.modal-priceDiff .modal-dialog {
  max-width: 270px;
  margin: 0 auto;
}
.modal-priceDiff .modal-header {
  display: flex;
  align-items: center;
}
.modal-priceDiff .modal-header .modal-title {
  font-size: 0.9rem;
  color: #7d7c7d;
}
.modal-priceDiff .modal-header .close {
  font-size: 2rem;
}
.modal-priceDiff .modal-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-size: 0.8rem;
}
.modal-priceDiff .modal-body .priceDiff {
  margin: 10px 0;
  font-size: 1.2rem;
  font-weight: 700;
  color: #55368B;
}
.modal-priceDiff .modal-footer {
  padding: 0;
}
.modal-priceDiff .modal-footer .btn {
  width: 100%;
  background-color: #55368B;
  border: 1px solid #55368B;
  border-radius: 0;
  margin: 0;
}

@media (max-width: 800px) {
  .modal-priceDiff .modal-body .priceDiff {
    margin: 20px 0;
  }
  .bus-map-seat {
    padding: 10px !important;
  }
  .page[data-action=Search-Show] .ticket__edit > .container,
  .page[data-action=Ticket-Search] .ticket__edit > .container,
  .page[data-action=Ticket-BusDetails] .ticket__edit > .container {
    font-size: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .seatMap__back .ticket__button,
  .page[data-action=Ticket-Search] .busMapRoot .seatMap__back .ticket__button,
  .page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__back .ticket__button {
    max-width: none;
    color: #55368B;
    border: none;
    background-color: transparent;
    margin: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .seatMap__back .ticket__button::before,
  .page[data-action=Ticket-Search] .busMapRoot .seatMap__back .ticket__button::before,
  .page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__back .ticket__button::before {
    content: " ";
    font-size: 0;
    display: block;
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    content: "‹";
    display: inline-block;
  }
  .page[data-action=Search-Show] .busMapRoot .seatMap__info .seatMap__info__button,
  .page[data-action=Ticket-Search] .busMapRoot .seatMap__info .seatMap__info__button,
  .page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__info .seatMap__info__button {
    font-size: 10px;
    font-size: calc(10 * 0.0625)rem;
    width: 100%;
    word-break: break-word;
    white-space: normal;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat {
    padding-bottom: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block {
    width: 100%;
    display: block;
    position: relative;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block {
    display: none;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block {
    display: block;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block {
    padding: 16px 0;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul {
    text-align: center;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li {
    width: 33.3333333333%;
    display: inline-block;
    position: relative;
    padding-right: 4px;
    vertical-align: middle;
    word-break: keep-all;
    white-space: nowrap;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li:last-child,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li:last-child,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li:last-child {
    padding-right: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span {
    vertical-align: middle;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:first-child,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:first-child,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:first-child {
    width: 20px;
    height: 20px;
    margin: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:last-child,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:last-child,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li > span:last-child {
    width: calc(100% - (20px + 16px / 4));
    display: inline-block;
    padding-left: 4px;
    text-overflow: ellipsis;
    overflow: hidden;
    text-align: left;
  }
  .page[data-action=Search-Show] .tickets-not-found-text-wrapper .text--isNormal,
  .page[data-action=Ticket-Search] .tickets-not-found-text-wrapper .text--isNormal,
  .page[data-action=Ticket-BusDetails] .tickets-not-found-text-wrapper .text--isNormal {
    font-size: 14px;
    font-size: calc(14 * 0.0625)rem;
  }
  .listTripsRoot .map-bus {
    margin-bottom: 16px;
  }
  .listTripsRoot .select-tip {
    margin-top: 16px;
  }
  .listTripsRoot .seatMap__info-ajax .d-inline-block:first-child {
    height: 35px;
  }
}
@media (min-width: 800px) {
  .btn__floor {
    display: flex;
    flex-direction: column;
  }
  .toggle__floor {
    font-size: 16px;
    max-width: 300px;
  }
  .page[data-action=Search-Show] .busMapRoot .ticket__card,
  .page[data-action=Ticket-Search] .busMapRoot .ticket__card,
  .page[data-action=Ticket-BusDetails] .busMapRoot .ticket__card {
    box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid #D4D4D4;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    width: 100%;
  }
  .page[data-action=Search-Show] .busMapRoot .busmap,
  .page[data-action=Ticket-Search] .busMapRoot .busmap,
  .page[data-action=Ticket-BusDetails] .busMapRoot .busmap {
    border-top: 1px solid #e5e5e5;
  }
  .page[data-action=Search-Show] .busMapRoot .busmap > .bus-map-seat,
  .page[data-action=Ticket-Search] .busMapRoot .busmap > .bus-map-seat,
  .page[data-action=Ticket-BusDetails] .busMapRoot .busmap > .bus-map-seat {
    margin-bottom: 32px;
    display: block;
    position: relative;
    max-width: 940px;
    margin: 0 auto;
    padding: 0 10px;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .outer-wrapper,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .outer-wrapper,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .outer-wrapper {
    height: 335px;
    width: 100%;
    display: inline-block;
    margin: 0;
    position: relative;
    text-align: left;
    font-size: 0;
    overflow: hidden;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .outer-wrapper .inner-wrapper,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .outer-wrapper .inner-wrapper,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .outer-wrapper .inner-wrapper {
    width: auto;
    max-width: 100%;
    display: inline-block;
    margin: 0;
    margin-top: -70px;
    padding: 0;
    vertical-align: top;
    transform-origin: top left;
    transform: rotate(-90deg) translate(-100%) scale(0.79);
    -webkit-transform: rotate(-90deg) translate(-100%) scale(0.79);
    -moz-transform: rotate(-90deg) translate(-100%) scale(0.79);
    -ms-transform: rotate(-90deg) translate(-100%) scale(0.79);
    -o-transform: rotate(-90deg) translate(-100%) scale(0.79);
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .map-bus,
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .bus-front,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .map-bus,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .bus-front,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .map-bus,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .bus-front {
    width: auto;
    max-width: none;
    margin: 0;
    display: block;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .map-bus,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .map-bus,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .map-bus {
    padding: 4px 0 0;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .floor__label,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .floor__label,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .floor__label {
    font-size: 16px;
    text-align: center;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .toggle_floor:disabled,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .toggle_floor:disabled,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .toggle_floor:disabled {
    background: #ecebec;
    color: rgb(186.3076923077, 182.6923076923, 186.3076923077);
    border: 1px solid rgb(186.3076923077, 182.6923076923, 186.3076923077);
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .bus-front,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .bus-front,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .bus-front {
    width: 90%;
    top: 0;
    margin: 0 auto;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block {
    width: 100%;
    display: inline-block;
    position: relative;
    padding-bottom: 16px;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block.desktop__block {
    display: block;
    display: inline-block;
    width: 938px;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block.mobile__block {
    display: none;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block {
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul {
    font-size: 0;
    display: flex;
    align-items: center;
    padding-right: 16px;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li {
    display: flex;
    align-items: center;
    margin-right: 24px;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li span,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li span,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block ul li span {
    vertical-align: middle;
  }
  .page[data-action=Search-Show] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block p.text--isSmall,
  .page[data-action=Ticket-Search] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block p.text--isSmall,
  .page[data-action=Ticket-BusDetails] .busMapRoot .bus-map-seat .ticket__description--block .ticket__content.availability__block p.text--isSmall {
    word-break: break-word;
    max-width: 30%;
  }
  .page[data-action=Search-Show] .busMapRoot .seatMap__back,
  .page[data-action=Ticket-Search] .busMapRoot .seatMap__back,
  .page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__back {
    width: 100%;
    padding: 0;
  }
  .page[data-action=Search-Show] .busMapRoot .seatMap__back .ticket__button,
  .page[data-action=Ticket-Search] .busMapRoot .seatMap__back .ticket__button,
  .page[data-action=Ticket-BusDetails] .busMapRoot .seatMap__back .ticket__button {
    width: auto;
    height: auto;
    min-height: 55px;
    display: block;
    position: absolute;
    margin: 0;
    top: 50%;
    right: 16px;
    bottom: auto;
    left: 16px;
    color: #55368B;
    background-color: transparent;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
  .page[data-action=Search-Show] .tickets-not-found-text-wrapper .text--isNormal,
  .page[data-action=Ticket-Search] .tickets-not-found-text-wrapper .text--isNormal,
  .page[data-action=Ticket-BusDetails] .tickets-not-found-text-wrapper .text--isNormal {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .listTripsRoot .seatMap__info-ajax {
    display: none;
  }
  .listTripsRoot .seatMap__info-ajax.connection {
    display: flex;
  }
  .listTripsRoot .seatMap__info-ajax:last-child {
    display: flex;
  }
}
.payment__title {
  margin-bottom: 16px;
}

.assurance__block {
  background: #ffffff;
  padding: 0;
  margin-bottom: 16px;
  border-left: 15px solid #76CD48;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  margin-top: 16px;
  min-height: 172px;
  transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -webkit-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -moz-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -ms-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
  -o-transition: min-height 500ms ease-in-out, height 500ms ease-in-out, padding 350ms ease-in-out, margin 350ms ease-in-out, opacity 600ms ease-in-out;
}
.assurance__block--seguro, .assurance__block--viaje {
  padding: 4px 0;
  display: block;
}
.assurance__block--seguro {
  margin-top: 16px;
}
.assurance__block--viaje {
  bottom: 16px;
}
.assurance__block .link__knowMore {
  margin-bottom: 0;
  padding-bottom: 8px;
}
.assurance__block--show-btn {
  max-width: 175px;
  height: 0;
  display: block;
  position: relative;
  padding: 0;
  margin: 0 auto;
  border: none;
  font-size: 0;
  box-shadow: none;
  transition: height 300ms ease-in-out, padding 300ms ease-in-out, margin 300ms ease-in-out, border 300ms ease-in-out;
  -webkit-transition: height 300ms ease-in-out, padding 300ms ease-in-out, margin 300ms ease-in-out, border 300ms ease-in-out;
  -moz-transition: height 300ms ease-in-out, padding 300ms ease-in-out, margin 300ms ease-in-out, border 300ms ease-in-out;
  -ms-transition: height 300ms ease-in-out, padding 300ms ease-in-out, margin 300ms ease-in-out, border 300ms ease-in-out;
  -o-transition: height 300ms ease-in-out, padding 300ms ease-in-out, margin 300ms ease-in-out, border 300ms ease-in-out;
}
.assurance__block--show-btn:focus {
  box-shadow: none;
}
.assurance__block--show-btn.active {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  height: 70px;
  padding: 8px;
  margin: calc((100% - 70px) / 2) auto;
  border: 1px solid #55368B;
}

.assurance__block--viaje::before {
  content: " ";
  font-size: 0;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  pointer-events: none;
}

.assurance__checkbox {
  vertical-align: middle;
}

.assurance__button {
  font-size: 0;
  position: absolute;
  right: 16px;
  background: none;
  border: none;
}
.assurance__button:before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 0.625rem;
}

.modal-dialog__assurance {
  max-width: 800px;
}
.modal-dialog__assurance table {
  table-layout: fixed;
  width: 100%;
}
.modal-dialog__assurance .close:before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 1rem;
}

.passenger__block {
  background: #ffffff;
  border-radius: 4px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.passenger__block-tabs {
  text-align: justify;
}
.passenger__block-tabs::after {
  content: "";
  width: 100%;
  display: inline-block;
}
.passenger__block-tabs {
  font-size: 0;
}
.passenger__block-tab {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 8px;
  text-align: center;
  background: #F8A629;
  white-space: nowrap;
}
.passenger__block-tab button {
  color: #ffffff;
  background: none;
  border: none;
  font-size: 1rem;
}
.passenger__block-tab--isActive {
  background: #ffffff;
}
.passenger__block-tab--isActive button {
  color: #303030;
}
.passenger__block h2:after {
  content: "\e946";
  font-family: "icomoon";
  font-size: 1.25rem;
  padding-left: 4px;
}
.passenger__block .passenger__input-user {
  padding-left: 20px;
  border-bottom: 0;
}
.passenger__block .passenger__input-user:before {
  font-family: "icomoon";
  content: "\e90e";
}
.passenger__block .passenger__input-document {
  padding-left: 20px;
}
.passenger__block .passenger__input-document:before {
  font-family: "icomoon";
  content: "\e919";
}

.checkout__ticket__date {
  font-size: 0.85rem;
  color: #55368B;
  font-weight: 600;
  margin-left: 10px .checkout__ticket__date --mobile;
  margin-left-display: flex;
  margin-left-padding: 0 0 16px 16px;
  margin-left-font-size: 0.6875rem;
  margin-left-color: #55368B;
  margin-left-font-weight: bolder;
}

.collapse__content-inputs[data-tab-control=buyerInfo] {
  display: none;
}
.collapse__content-inputs input.is-invalid {
  border: 1px solid #FF0000;
}
.collapse__content-inputs .payment__card__info .form-group input,
.collapse__content-inputs .payment__card__info .form-group select {
  border: 1px solid #D4D4D4;
}

.passenger__origin {
  text-align: justify;
}
.passenger__origin::after {
  content: "";
  width: 100%;
  display: inline-block;
}

.passenger__input {
  border: 1px solid #D4D4D4;
  height: 50px;
  padding: 0 16px 0 32px;
}
.passenger__input:first-child {
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}
.passenger__input:last-child {
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

.payment__block {
  padding: 16px;
}

.collapsed-block + .collapse__content {
  display: none;
}

.payment__methodTitle {
  padding: 0 16px 0 32px;
  position: relative;
  width: 100%;
}
.payment__methodTitle:after {
  content: "\e900";
  font-family: "icomoon";
  color: #55368B;
  font-size: 0.625rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
}
.payment__methodTitle:before {
  font-family: "icomoon";
  font-size: 0.6875rem;
  position: absolute;
  left: 0;
}
.payment__methodTitle.collapsed-block:after {
  transform: translateY(-50%) rotate(0);
  -webkit-transform: translateY(-50%) rotate(0);
  -moz-transform: translateY(-50%) rotate(0);
  -ms-transform: translateY(-50%) rotate(0);
  -o-transform: translateY(-50%) rotate(0);
}
.payment__methodTitle-creditCard:before, .payment__methodTitle-debitCard:before {
  content: "\e919";
}
.payment__methodTitle-paypal:before {
  content: "\e91a";
}
.payment__methodTitle-boleto:before {
  content: "\e918";
}

.payment__tip {
  border-left: 15px solid #F9BF2D;
}
.payment__tip .toolTip__button:after {
  color: #303030;
}

.optional-promo {
  font-size: 1rem;
  color: #F8A629;
  margin-top: 16px;
  cursor: pointer;
  font-weight: bold;
}

.promo-code-btn {
  margin-top: 0;
  height: 50px;
  line-height: 1;
}

.passenger__panels > div {
  display: flex;
}
.passenger__panels--top {
  display: flex;
  flex-direction: column;
}
.passenger__panels--top .ticket__repeatPassangers {
  display: flex;
  gap: 8px;
  padding: 0 0px 24px 24px;
}
.passenger__panels .passengers__are__different,
.passenger__panels .passenger__own__this__seat {
  font-size: 0;
}
.passenger__panels .passengers__are__different > input, .passenger__panels .passengers__are__different > label,
.passenger__panels .passenger__own__this__seat > input,
.passenger__panels .passenger__own__this__seat > label {
  width: auto;
  display: inline-block;
  position: relative;
  vertical-align: top;
}
.passenger__panels .passengers__are__different > input,
.passenger__panels .passenger__own__this__seat > input {
  width: 15px;
  height: 15px;
}
.passenger__panels .passengers__are__different > label,
.passenger__panels .passenger__own__this__seat > label {
  width: calc(100% - 15px);
  padding-left: 4px;
}
.passenger__panels .pcd {
  font-size: 12px;
  font-size: 0.9375rem;
  vertical-align: top;
  font-weight: 700 !important;
  margin: 10px 0;
  color: #55368b;
}
.passenger__panels .pcd:before {
  width: auto;
  height: auto;
  font-size: 1em;
}
.passenger__panels .passenger__panel .passenger_entries .passenger__input-user {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.passenger__panels .passenger__panel .passenger_entries .passenger__input-document {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.passenger__panels .passenger__panel .passenger__seat {
  padding: 0;
  text-align: center;
}

.check_newsletter_wrapper input,
.check_sms_wrapper input {
  vertical-align: middle;
}
.check_newsletter_wrapper label,
.check_sms_wrapper label {
  font-size: 0.9375rem;
  line-height: 1.5;
}
.check_newsletter_wrapper label:hover,
.check_sms_wrapper label:hover {
  cursor: pointer;
}

.payment__section > h3,
.passenger__data > h3,
.buyer__data > h3 {
  cursor: pointer;
}

.card__payments {
  margin-bottom: 4px;
  position: relative;
}
.card__payments .payments__list {
  max-width: 100px;
  display: inline-block;
  vertical-align: middle;
}
.card__payments .payments__list li {
  display: inline;
}
.card__payments .payments__list img {
  max-width: 35px;
}

.mobifacil__tooltip.bank {
  width: auto;
  font-size: 12px;
  display: inline-block;
  right: 0;
  height: auto;
}
.mobifacil__tooltip.bank .mobifacil__tooltip--icon {
  height: auto;
  width: auto;
  border-radius: 6px;
  border: 1px solid #F47221;
  padding: 0 8px;
  background: none;
  color: #F47221;
  font-weight: 600;
}

#paymentCreditDiv .mobifacil__tooltip {
  display: none;
}

.checkoutTickets__block {
  background: #ffffff;
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.cart .payment__options .title {
  color: #55368B;
}
.cart .nav-tabs {
  display: flex;
  flex-direction: column;
  max-height: 19rem;
}
.cart .nav-tabs a.nav-link {
  color: #000000;
}
.cart .nav-tabs a.nav-link svg {
  fill: #ccc;
}
.cart .nav-tabs a.nav-link.active {
  color: #000000;
  font-weight: 700;
}
.cart .nav-tabs a.nav-link.active svg {
  fill: #000000;
}
.cart .pix-details a {
  color: #55368B;
}

.credit-installments {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 120px;
  max-width: unset;
  padding: 4px 16px;
}

.value-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  max-width: unset;
  gap: 32px;
  padding: 4px 16px;
}
.value-row > div {
  flex: 1;
  min-width: 150px;
}

@media (max-width: 800px) {
  .passenger__panel {
    gap: 25px;
    display: flex;
    flex-direction: column;
  }
  .assurance__block:after {
    width: calc(148px - 16px * 2 + 16px / 4);
    right: -64px;
  }
  .payment__title {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    position: relative;
    color: #000000;
  }
  .payment__title > span {
    display: block;
    position: relative;
    padding: 8px 0 4px;
    margin: 0 auto;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    transform: none;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    color: #424242;
    font-size: 12px;
    font-size: calc(12 * 0.0625)rem;
  }
  .passenger__block-tab:not(.passenger__block-tab--isActive) a {
    color: #ffffff;
  }
  .passenger__panels .passengers__are__different {
    display: block;
    position: relative;
    padding: 8px 16px 16px;
    margin: 0;
    font-size: 0;
  }
  .passenger__panels .passenger__panel {
    opacity: 0;
    height: 0;
    padding: 0 16px 8px;
  }
  .passenger__panels .passenger__panel .passenger__destination {
    display: none;
    margin: 0 auto;
    padding: 0;
  }
  .passenger__panels .passenger__panel--active {
    opacity: 1;
    height: auto;
  }
  .passenger__panels .passenger__panel--active .passenger__destination {
    display: block;
  }
  .passenger__panels .passenger__panel .passenger__return,
  .passenger__panels .passenger__panel .passenger__origin {
    font-size: 0;
    position: relative;
  }
  .passenger__panels .passenger__panel .passenger__return .passenger__seat,
  .passenger__panels .passenger__panel .passenger__return .passenger_entries,
  .passenger__panels .passenger__panel .passenger__origin .passenger__seat,
  .passenger__panels .passenger__panel .passenger__origin .passenger_entries {
    max-width: none;
    display: inline-block;
    position: static;
    margin: 0 auto;
    padding: 0;
    vertical-align: top;
    flex: none;
  }
  .passenger__panels .passenger__panel .passenger__return .passenger__seat .passenger__own__this__seat,
  .passenger__panels .passenger__panel .passenger__return .passenger_entries .passenger__own__this__seat,
  .passenger__panels .passenger__panel .passenger__origin .passenger__seat .passenger__own__this__seat,
  .passenger__panels .passenger__panel .passenger__origin .passenger_entries .passenger__own__this__seat {
    padding: 8px 16px;
  }
  .passenger__panels .passenger__panel .passenger__return .passenger__seat,
  .passenger__panels .passenger__panel .passenger__origin .passenger__seat {
    width: calc(60px);
  }
  .passenger__panels .passenger__panel .passenger__return .passenger_entries,
  .passenger__panels .passenger__panel .passenger__origin .passenger_entries {
    width: calc(100% - 60px);
    padding-left: 8px;
  }
  .mb-break-inputs > div,
  .paymentRoot .form-group {
    flex: 1;
    min-width: 160px;
    max-width: unset;
  }
}
#expiredTimeModal .modal-dialog {
  max-width: 785px;
}
#expiredTimeModal .modal-header {
  background: #55368B;
}
#expiredTimeModal .modal-header .expired-time-title {
  color: #ffffff;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
}
#expiredTimeModal .modal-body .btn {
  margin-top: 15px;
  border-radius: 4px;
  line-height: 58px;
  width: 98%;
  background: #F8A629;
}

@media (min-width: 800px) {
  .assurance__desktop {
    display: inline-block;
    padding: 0;
    margin: 0;
  }
  .assurance__desktop .assurance__block {
    margin: 0;
    height: 100%;
  }
  .assurance__desktop .assurance__block:after {
    font-size: 7.9375rem;
    width: calc(148px - 16px * 2);
    right: -32px;
  }
  .assurance__mobile {
    display: none;
  }
  .assurance__block--seguro,
  .assurance__block--viaje {
    position: static;
    left: 32px;
    right: calc(148px - 16px * 2);
    top: auto;
  }
  .passenger__panel {
    margin: 0;
    font-size: 0;
  }
  .passenger__panel .d-inline-block {
    font-size: 1rem;
  }
  .passenger__panel .custom-checkbox {
    font-size: 0.75rem;
  }
  .passenger__panel .custom-checkbox label {
    line-height: 2;
  }
  div.passenger__panels {
    display: block;
    width: 100%;
    font-size: 0;
    padding-bottom: 16px;
  }
  div.passenger__panels--has-return-trip .passenger__panel + div.passengers__are__different {
    display: block;
  }
  div.passenger__panels--has-return-trip .passenger__panel + div.passengers__are__different label.passengers__are__different--label {
    width: auto;
    max-width: calc(100% - 15px);
  }
  div.passenger__panels div.passengers__are__different {
    width: 100%;
    display: none;
    padding: 32px 16px 16px;
    text-align: right;
  }
  div.passenger__panels .passenger__own__this__seat {
    padding: 16px 4px 8px;
  }
  .passenger__block-tab {
    background: #ffffff;
    text-align: left;
    padding: 16px;
  }
  .passenger__block-tab a {
    color: #303030;
    pointer-events: none;
  }
  .optional-promo {
    padding-bottom: 16px;
    margin-top: 32px;
  }
  .payment__block > ul {
    background: #F6F6F6;
    padding: 16px;
    border-radius: 4px;
  }
  .receipt__card .back__myAccount {
    display: none;
  }
  .receipt__card .orderPanel__main {
    background: inherit;
  }
  .payment__title {
    position: relative;
  }
  .payment__title > span {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 32px;
    bottom: auto;
    left: auto;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
  }
  .passengers__are__different--input, .passengers__are__different--label {
    display: inline-block;
    position: relative;
    vertical-align: middle;
  }
  .passengers__are__different--label {
    margin: 0;
    padding-left: 8px;
  }
  .passenger__block .checkout__ticket__date {
    display: inline-block;
    font-size: 0.9375rem;
    line-height: 180%;
    float: right;
  }
  .passenger__block .checkout__ticket__date--mobile {
    display: none;
  }
  .mb-break-inputs > div,
  .paymentRoot .form-group {
    flex: 1;
    min-width: unset;
  }
  .mb-break-inputs > div {
    flex: 1;
    min-width: unset;
    max-width: unset;
  }
  .credit-installments {
    width: auto;
    flex: unset;
  }
  .form-group--card {
    margin-right: 25%;
  }
  .form-group--card > div {
    max-width: unset;
  }
  .cart-page .ticket__content {
    flex-direction: column;
  }
}
.buy__button {
  margin: 32px 0;
}

.page[data-action=Order-History] {
  background-color: transparent;
  background: linear-gradient(180deg, rgba(76, 55, 112, 0) 10%, rgba(254, 161, 63, 0.58) 16%), #4C3770;
}
.page[data-action=Order-History] .link__moreInfo {
  display: none;
}
.page[data-action=Order-History] .link__moreInfoPage {
  display: block;
}

.orderHistory__main {
  background: #F6F6F6;
  padding-top: 16px;
  padding-bottom: 16px;
}
.orderHistory__main .dashboard-order-card-footer-value {
  color: #F47221;
}
.orderHistory__main .card-info-group p {
  margin-bottom: 8px;
  font-size: 0.9375rem;
}

.no__orders {
  padding: 32px 16px;
}
.no__orders h3 {
  text-align: center;
}

@media (min-width: 1280px) {
  .orderHistory__main {
    max-width: 100%;
  }
}
#load-more {
  font-weight: 600;
}
#load-more:focus {
  background-color: #F8A629;
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0);
  border: #55368B;
}

.institutional__page {
  margin-top: 64px;
}

.page[data-action^=Home-Redirect] .facebook__continue,
.page[data-action^=Home-Redirect] .home-page__block.home-page-partner-companies,
.page[data-action^=Home-Redirect] .home-page__block.home-page__charter,
.page[data-action^=Home-Redirect] .home-page__block.home-page-faq,
.page[data-querystring^="dnumber="] .facebook__continue,
.page[data-querystring^="dnumber="] .home-page__block.home-page-partner-companies,
.page[data-querystring^="dnumber="] .home-page__block.home-page__charter,
.page[data-querystring^="dnumber="] .home-page__block.home-page-faq {
  display: none;
}

body.backdrop-on {
  overflow: hidden;
}
body.backdrop-on::before {
  content: " ";
  font-size: 0;
  display: block;
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000000;
  opacity: 0.8;
  z-index: 16;
  pointer-events: none;
}

.clonedElementsWrapper {
  width: 100%;
  height: 100%;
  display: none;
  position: fixed;
  margin: 0 auto;
  padding: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 17;
}
.clonedElementsWrapper.active {
  display: block;
}
.clonedElementsWrapper .clonedElementsContainer {
  width: calc(100% - 16px * 4);
  height: 100%;
  display: block;
  position: absolute;
  margin: 0 32px;
  padding: 0;
  top: 50%;
  left: 0;
  right: 0;
  bottom: auto;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  z-index: 17;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized {
  padding: 16px 32px;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-dots {
  opacity: 0;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-list,
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-track {
  height: 100%;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-track {
  padding: 16px 0;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-slide {
  max-width: none;
  float: none;
  display: inline-block;
  vertical-align: middle;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow {
  width: 40px;
  height: 40px;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow::before {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow.slick-prev {
  right: calc(100% - (20px));
  left: auto;
}
.clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow.slick-next {
  left: calc(100% - (20px));
  right: auto;
}
.clonedElementsWrapper .clonedImage {
  height: 100%;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 0;
  opacity: 0;
  transition: opacity 300ms ease-in-out;
  -webkit-transition: opacity 300ms ease-in-out;
  -moz-transition: opacity 300ms ease-in-out;
  -ms-transition: opacity 300ms ease-in-out;
  -o-transition: opacity 300ms ease-in-out;
}
.clonedElementsWrapper .clonedImage.slick-active.slick-current {
  opacity: 1;
}
.clonedElementsWrapper .clonedImage .landing-page__places-to-visit-link {
  display: block;
  position: absolute;
  margin: 0 auto;
  padding: 0;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}
.clonedElementsWrapper .clonedImage .landing-page__places-to-visit-image {
  max-width: 800px;
  max-height: 600px;
}
.clonedElementsWrapper .closingBtn {
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  top: 16px;
  right: 32px;
  bottom: auto;
  left: auto;
  text-align: center;
  font-size: 0;
  border: none;
  cursor: pointer;
  z-index: 18;
}
.clonedElementsWrapper .closingBtn::before {
  content: "\e913";
  font-family: "icomoon";
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
  color: #ffffff;
  line-height: 40px;
  text-align: center;
}

.landing-page__title {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  margin: 0;
  padding: 0 0 8px;
}

.landing-page__description {
  font-size: 13px;
  font-size: calc(13 * 0.0625)rem;
  margin: 0;
  padding: 0 0 8px;
  line-height: 1.4;
}

.landing-page__places-to-visit {
  padding: 0 16px;
  margin: 0 auto;
  margin-bottom: 32px;
}
.landing-page__places-to-visit-list {
  width: 100%;
  display: block;
  position: relative;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  overflow-x: scroll;
}
.landing-page__places-to-visit-list .landing-page__places-to-visit-item {
  width: auto;
  display: inline-block;
  position: relative;
  margin: 0 4px;
}
.landing-page__places-to-visit-list .landing-page__places-to-visit-item:first-child {
  margin-left: 0;
}
.landing-page__places-to-visit-list .landing-page__places-to-visit-item:last-child {
  margin-right: 0;
}
.landing-page__places-to-visit-list .slick-list {
  padding: 0 !important;
}
.landing-page__places-to-visit-list .slick-track .landing-page__places-to-visit-item {
  max-width: 33.3333333333%;
  margin: 0 auto;
  padding: 0 4px;
  float: none;
  display: inline-block;
  vertical-align: middle;
}
.landing-page__places-to-visit-link {
  width: auto;
  position: relative;
  margin: 0 auto;
  display: block;
}
.landing-page__places-to-visit-item {
  max-width: 33.3333333333%;
  padding: 0 4px;
  display: inline-block;
  vertical-align: middle;
}
.landing-page__places-to-visit-image {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  display: block;
  position: relative;
  margin: 0 auto;
  padding: 0;
}

.landing-page__main-section {
  padding-top: 32px;
}
.landing-page__main-section .landing-page__description {
  padding: 0 0 16px;
  color: #6c6c6c;
}
.landing-page__main-section .landing-page__description:last-child {
  padding-bottom: 32px;
}

.landing-page__feed-container {
  display: block;
  position: relative;
  margin: 0 auto;
  margin-bottom: 32px;
  padding: 32px 16px;
  background-color: #FFA010;
}
.landing-page__feed-container .landing-page__title,
.landing-page__feed-container .landing-page__description {
  color: #ffffff;
  vertical-align: middle;
}
.landing-page__feed-container .landing-page__title::before {
  content: "\e91d";
  font-family: "icomoon";
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  padding-right: 8px;
  color: #ffffff;
}
.landing-page__feed-container .landing-page__description {
  padding: 0;
  text-align: justify;
}

.landing-page__places-nearby {
  padding-bottom: 64px;
}
.landing-page__places-nearby-wrapper {
  width: 100%;
  display: block;
  position: relative;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  overflow-x: scroll;
}
.landing-page__places-nearby-wrapper .trip-card {
  width: auto;
  display: inline-block;
  position: relative;
  margin: 0 4px;
}
.landing-page__places-nearby-wrapper .trip-card:first-child {
  margin-left: 0;
}
.landing-page__places-nearby-wrapper .trip-card:last-child {
  margin-right: 0;
}
.landing-page__places-nearby-wrapper .slick-arrow,
.landing-page__places-nearby-wrapper .slick-dots {
  display: none !important;
}
.landing-page__places-nearby .trip-card {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
  z-index: 15;
}
.landing-page__places-nearby .trip-card.trip-card--isExtended {
  width: 66.6666666667%;
}
.landing-page__places-nearby .trip-card__header {
  width: auto;
  height: 180px;
}
.landing-page__places-nearby .trip-card__header .trip-card__image {
  width: 100%;
  height: 100%;
  display: block;
  padding: 16px;
  background-color: #e5e5e5;
}
.landing-page__places-nearby .trip-card__header .trip-card__image[src^="/on/"], .landing-page__places-nearby .trip-card__header .trip-card__image[src^="http://"], .landing-page__places-nearby .trip-card__header .trip-card__image[src^="https://"] {
  width: auto;
  height: auto;
  padding: 0;
  background-color: transparent;
}
.landing-page__places-nearby .landing-page__places-to-visit-list .slick-arrow,
.landing-page__places-nearby .landing-page__places-to-visit-list .slick-dots {
  display: none !important;
}

.landing-page__places-to-visit .slick-arrow,
.clonedElementsWrapper .slick-arrow {
  width: 20px;
  height: 20px;
  display: inline-block;
  position: absolute;
  padding: 0;
  top: 50%;
  bottom: auto;
  z-index: 15;
  border: 1px solid #A1A1A1;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  background-color: #ffffff;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  font-size: 0;
  text-align: center;
  transition: opacity 300ms ease-in-out;
  -webkit-transition: opacity 300ms ease-in-out;
  -moz-transition: opacity 300ms ease-in-out;
  -ms-transition: opacity 300ms ease-in-out;
  -o-transition: opacity 300ms ease-in-out;
}
.landing-page__places-to-visit .slick-arrow::before,
.clonedElementsWrapper .slick-arrow::before {
  content: "\e900";
  font-family: "icomoon";
  font-size: 8px;
  font-size: calc(8 * 0.0625)rem;
  width: 100%;
  height: auto;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  line-height: calc(20px - 1px * 2);
  text-align: center;
  color: #55368B;
}
.landing-page__places-to-visit .slick-arrow.slick-prev,
.clonedElementsWrapper .slick-arrow.slick-prev {
  right: calc(100% - 20px / 2);
  left: auto;
  transform: translateY(-50%) rotate(90deg);
  -webkit-transform: translateY(-50%) rotate(90deg);
  -moz-transform: translateY(-50%) rotate(90deg);
  -ms-transform: translateY(-50%) rotate(90deg);
  -o-transform: translateY(-50%) rotate(90deg);
}
.landing-page__places-to-visit .slick-arrow.slick-next,
.clonedElementsWrapper .slick-arrow.slick-next {
  left: calc(100% - 20px / 2);
  right: auto;
  transform: translateY(-50%) rotate(270deg);
  -webkit-transform: translateY(-50%) rotate(270deg);
  -moz-transform: translateY(-50%) rotate(270deg);
  -ms-transform: translateY(-50%) rotate(270deg);
  -o-transform: translateY(-50%) rotate(270deg);
}
.landing-page__places-to-visit .slick-arrow.slick-disabled,
.clonedElementsWrapper .slick-arrow.slick-disabled {
  opacity: 0;
  cursor: default;
}
.landing-page__places-to-visit .slick-dots,
.clonedElementsWrapper .slick-dots {
  width: 100%;
  height: 20px;
  display: block;
  position: absolute;
  top: auto;
  right: 0;
  bottom: 32px;
  left: 0;
  text-align: center;
  z-index: 15;
}
.landing-page__places-to-visit .slick-dots > li,
.clonedElementsWrapper .slick-dots > li {
  width: 10px;
  height: 10px;
  display: inline-block;
  position: relative;
  margin: 0 4px;
  padding: 0;
  font-size: 0;
  text-align: center;
}
.landing-page__places-to-visit .slick-dots > li:first-child,
.clonedElementsWrapper .slick-dots > li:first-child {
  padding-left: 0;
}
.landing-page__places-to-visit .slick-dots > li:last-child,
.clonedElementsWrapper .slick-dots > li:last-child {
  padding-right: 0;
}
.landing-page__places-to-visit .slick-dots > li.slick-active button,
.clonedElementsWrapper .slick-dots > li.slick-active button {
  background-color: #F47221;
}
.landing-page__places-to-visit .slick-dots > li button,
.clonedElementsWrapper .slick-dots > li button {
  width: 10px;
  height: 10px;
  padding: 0;
  margin: 0 auto;
  border: 1px solid #A1A1A1;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  background-color: #ffffff;
}
.landing-page__places-to-visit div[class^=slick-pagination-],
.clonedElementsWrapper div[class^=slick-pagination-] {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  width: auto;
  height: auto;
  display: inline-block;
  position: absolute;
  top: 16px;
  right: auto;
  bottom: auto;
  left: 32px;
  color: #ffffff;
  letter-spacing: 4px;
  z-index: 17;
}

@media (max-width: 800px) {
  .landing-page__places-to-visit {
    padding: 0 16px;
    margin: 0 auto;
    margin-bottom: 32px;
  }
  .landing-page__places-to-visit-list .slick-track .landing-page__places-to-visit-item {
    max-width: 100%;
  }
  .landing-page__places-to-visit-link {
    width: 100%;
    height: auto;
  }
  .landing-page__places-to-visit-item {
    max-width: 100%;
  }
  .clonedElementsWrapper.active::before {
    content: " ";
    font-size: 0;
    display: block;
    width: 100%;
    height: 80px;
    display: block;
    background: #FFA010;
  }
  .clonedElementsWrapper div[class^=slick-pagination-] {
    height: 40px;
    line-height: 40px;
  }
  .clonedElementsWrapper .clonedElementsContainer {
    margin: 0 8px;
    padding: 0;
  }
  .clonedElementsWrapper .clonedElementsContainer.slick-initialized {
    width: calc(100% - (16px));
    padding: 0 8px;
  }
  .clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow {
    width: 20px;
    height: 20px;
  }
  .clonedElementsWrapper .clonedElementsContainer.slick-initialized .slick-arrow::before {
    font-size: 8px;
    font-size: calc(8 * 0.0625)rem;
  }
  .clonedElementsWrapper .clonedElementsContainer .clonedImage .landing-page__places-to-visit-image {
    max-width: 100%;
    max-height: 100%;
  }
}
@media (min-width: 800px) {
  .landing-page__title {
    font-size: 20px;
    font-size: calc(20 * 0.0625)rem;
  }
  .landing-page__description {
    font-size: 16px;
    font-size: calc(16 * 0.0625)rem;
  }
  .landing-page__feed-container {
    width: auto;
    padding: 0 16px;
    background-color: transparent;
  }
  .landing-page__feed-wrapper {
    padding: 32px 16px;
    background-color: #FFA010;
  }
  .landing-page__places-nearby.connect .explore {
    width: 40%;
  }
  .landing-page__places-nearby .trip-card.trip-card--isExtended {
    width: calc((100% - 16px / 2 * 3) / 4);
  }
  .landing-page__places-nearby .trip-card__header .trip-card__image[src^="/on/"], .landing-page__places-nearby .trip-card__header .trip-card__image[src^="http://"], .landing-page__places-nearby .trip-card__header .trip-card__image[src^="https://"] {
    max-width: 100%;
    max-height: 100%;
  }
}
.page__charter h2 {
  color: #0456A0;
  text-align: center;
}
.page__charter p {
  color: #7F7F7F;
  text-align: center;
  line-height: 1.3;
}
.page__charter .form-group {
  margin-bottom: 16px;
}
.page__charter .form-group label {
  padding-bottom: 4px;
}
.page__charter .form-control {
  height: 40px;
}
.page__charter .form-control::placeholder {
  opacity: 0.5;
}
.page__charter .dateInput .form-control {
  color: #bec2c5;
}
.page__charter .form-control-textarea {
  height: auto;
}
.page__charter .form-control-textarea textarea {
  width: calc(100% - 16px);
  border: 0px;
  padding: 10px 5px;
  text-indent: 0;
}
.page__charter .form-control-textarea textarea::placeholder {
  opacity: 0.5;
}
.page__charter .nav-tabs {
  border: 0;
}
.page__charter .nav-tabs .nav-item {
  width: 100%;
}
.page__charter .nav-tabs .nav-link {
  border-radius: 5px 5px 0px 0px;
  padding: 8px;
  background-color: #FBFBFB;
  color: #ED8300;
  font-weight: 600;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
}
.page__charter .nav-tabs .nav-link.active {
  background-color: #ED8300;
  color: #ffffff;
}
.page__charter .form-charter-content {
  background-color: #e5e5e5;
  padding: 8px;
}
.page__charter .tab-content {
  background-color: #55368B;
  padding: 32px 8px;
  border-radius: 16px;
}
.page__charter .tab-content img {
  display: block;
  margin: 0 auto;
}
.page__charter .tab-content .charter-span {
  text-align: center;
  display: block;
  margin: 8px 0;
  color: #ED8300;
  font-weight: 600;
  font-size: 0.8125rem;
}
.page__charter .charter-form label {
  display: block;
  color: #ffffff;
  font-size: 0.875rem;
}
.page__charter .charter-form h3 {
  color: #ffffff;
  margin-top: 32px;
  margin-bottom: 8px;
}
.page__charter .charter-form p {
  color: #ffffff;
  margin-bottom: 32px;
  text-align: left;
}
.page__charter select {
  overflow: auto;
}
.page__charter .invalid-feedback {
  color: #ED8300;
}

.hidden-item {
  visibility: hidden;
  height: 0;
  width: 0;
}

.btn-charter {
  width: 100%;
  min-height: 40px;
  background-image: linear-gradient(180deg, #eca010 0, #ED8300 100%);
  color: #ffffff;
  text-transform: uppercase;
  font-size: 0.875rem;
  font-weight: 600;
  border: 0;
  border-radius: 25px;
  padding: 16px 0;
}

@media (min-width: 800px) {
  .page__charter .nav-tabs .nav-item {
    width: 50%;
  }
  .page__charter .form-charter-content {
    padding: 48px;
  }
}
div[data-action=Ticket-GetLink] header {
  background: #4C3770;
}
div[data-action=Ticket-GetLink] .home-page__list:after {
  display: none;
}
div[data-action=Ticket-GetLink] .home-page__item {
  width: 100%;
}
div[data-action=Ticket-GetLink] .home-page__item strong {
  display: block;
  margin-top: 16px;
  line-height: 1.4;
}
div[data-action=Ticket-GetLink] .home-page-input-form {
  text-align: center;
  border: none;
  box-shadow: none;
}
div[data-action=Ticket-GetLink] .home-page-input-form .home-searchTicket__button button {
  max-width: 100%;
}
div[data-action=Ticket-GetLink] .home-page__listContainer {
  margin-bottom: 32px;
  margin-top: 0;
  background: none;
}
div[data-action=Ticket-GetLink] .error-message {
  margin-top: 16px;
  margin-bottom: 0;
}

@media (min-width: 800px) {
  div[data-action=Ticket-GetLink] .home-page__list {
    padding: 16px;
  }
  div[data-action=Ticket-GetLink] .home-page__list .home-page__item {
    width: 50%;
  }
  div[data-action=Ticket-GetLink] .search-tickets-btn {
    max-width: 50%;
    margin: 16px auto;
  }
  div[data-action=Ticket-GetLink] .error-message {
    margin: 0 auto;
    max-width: 68%;
  }
}
.page[data-action=Coupon-Show] {
  background: #4C3770;
}
.page[data-action=Coupon-Show] .card-body {
  overflow-x: auto;
  padding: 16px;
}

.table__coupon {
  font-size: 0.9375rem;
  line-height: 1.3;
}
.table__coupon thead th {
  border-top: 0;
  border-bottom: 0;
}

.promo-code-submit {
  margin-bottom: 0;
  padding-left: 0;
  display: flex;
}

.coupon__container {
  margin-top: 0;
  padding-bottom: 16px;
}

.coupon-code-field.is-invalid {
  padding-right: 8px;
  padding-left: 8px;
}

.remove-coupon {
  border: none;
  margin-left: 0;
}

.coupon-price-adjustment + .coupon-price-adjustment {
  margin-top: 16px;
}

.coupon-promotion-relationship {
  font-size: 0.813em;
  padding-left: 1rem;
  margin-bottom: 0;
}

.coupons-and-promos {
  padding-right: 0;
  padding-left: 0;
}

.coupon-code {
  font-size: 1.125em;
}

.coupon-applied {
  color: #76CD48;
  font-size: 0.813em;
}

.coupon-not-applied {
  color: #FF0000;
  font-size: 0.813em;
}

.coupon-error {
  color: #FF0000;
  margin-top: 0.25rem;
}

.coupon-missing-error {
  display: none;
}

.applied-promotion-discount {
  color: #76CD48;
  float: right;
}

.page__contact {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.page__contact h1 {
  display: block;
  font-size: 1.5rem;
  color: #55368B;
}
.page__contact button {
  width: 100%;
  padding: 10px;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  margin: 15px 0;
}
.page__contact .breadcrumb {
  padding: 0.75rem 0 0 0 !important;
}
.page__contact .contact-obs {
  font-size: 0.85rem;
  color: #515151;
  line-height: 1.5;
  margin: 10px 0;
}
.page__contact .contact_form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.page__contact .infoBox {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.page__contact #contact-form-menssage-success, .page__contact #contact-form-menssage-error {
  display: none;
  text-align: center;
}

.required-label:before {
  content: "*";
  font-size: 12rem;
  color: #515151;
}

.Page-PromotionsLandingPage .form-control {
  height: 50px;
}
.Page-PromotionsLandingPage .timer_title {
  font-size: 0.8rem !important;
  color: #ffffff !important;
  margin-top: 15px !important;
  font-weight: 500 !important;
  text-transform: uppercase;
}
.Page-PromotionsLandingPage .btn-block {
  height: 55px;
  line-height: 1;
}
.Page-PromotionsLandingPage .header__mobile {
  position: absolute;
  width: 100%;
  z-index: 2;
}
.Page-PromotionsLandingPage .banner__landing {
  position: relative;
}
.Page-PromotionsLandingPage .banner__landing img {
  width: 100%;
}
.Page-PromotionsLandingPage .landing__contentForm {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0 16px;
  margin-bottom: 80px;
}
.Page-PromotionsLandingPage .landing_title_banner {
  display: none;
}
.Page-PromotionsLandingPage .landing_hero_bottom {
  display: none;
}
.Page-PromotionsLandingPage .landing_hero_top {
  position: relative;
  overflow: hidden;
  padding-top: 90px;
  background: linear-gradient(0deg, rgba(85, 56, 140, 0.9) 100%, rgba(85, 56, 140, 0.9) 0);
  background-repeat: no-repeat;
  background-size: cover;
}
.Page-PromotionsLandingPage .landing_hero_top video {
  display: none;
  position: absolute;
  top: 0;
  opacity: 0.3;
}
.Page-PromotionsLandingPage .slick-texts > li {
  display: none;
}
.Page-PromotionsLandingPage .slick-texts > li.slick-slide {
  display: block;
}
.Page-PromotionsLandingPage .slick-texts p.sup {
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 16px;
}
.Page-PromotionsLandingPage .slick-texts p.title {
  margin-bottom: 10px;
  font-size: 50px;
  font-size: calc(50 * 0.0625)rem;
  font-weight: 700;
  color: #F8A629;
  line-height: 56px;
  overflow: visible;
}
.Page-PromotionsLandingPage .slick-texts p.text {
  padding: 4px 0;
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  color: #ffffff;
  font-weight: 700;
  line-height: 22px;
}
.Page-PromotionsLandingPage .slick-texts .slick-dots {
  position: absolute;
  bottom: -32px;
}
.Page-PromotionsLandingPage .slick-texts .slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.Page-PromotionsLandingPage .slick-texts .slick-dots li button {
  padding: 6px;
  font-size: 0;
  border-radius: 50%;
  background: rgb(120.4196891192, 81.7901554404, 187.7098445596);
  box-shadow: inset 0px 0px 4px rgba(0, 0, 0, 0.2);
  border: none;
}
.Page-PromotionsLandingPage .slick-texts .slick-dots li.slick-active button {
  border: 3px solid #F8A629;
  background: #ffffff;
}
.Page-PromotionsLandingPage .home-page-input-form {
  display: flex;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 16px;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary > .row {
  grid-area: destiny;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary > .row:first-child {
  grid-area: origin;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary > .home-intinerary__switch {
  grid-area: switch;
  transform: unset;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary .row .btn-block {
  padding: 0;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary .row input {
  margin: 0;
  border-radius: 0;
  border-right: 3px solid #F8A629;
  border-left: 3px solid #F8A629;
  background-image: none;
  background-origin: unset;
  background-clip: unset;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary .row input.cities__origin {
  border-bottom: 3px solid #F8A629;
  border-top: 3px solid #F8A629;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary .row input.cities__destination {
  border-bottom: 3px solid #F8A629;
}
.Page-PromotionsLandingPage .home-page-input-form .home-intinerary .home-intinerary__switch {
  right: -16px;
  top: 50%;
  left: unset;
  transform: translateY(-50%) rotate(180deg);
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates {
  width: 100%;
  grid-area: dates;
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates .form-group--hasIcon {
  max-width: 160px;
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates .dates__input {
  border-radius: 0;
  background: #ffffff;
  background-image: none;
  background-origin: unset;
  background-clip: unset;
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates .dates__input.dates__departure, .Page-PromotionsLandingPage .home-page-input-form .home-dates .dates__input.dates__back {
  border: 3px solid #F8A629;
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates .dates__input.dates__departure {
  border-radius: 12px 0 0 12px;
}
.Page-PromotionsLandingPage .home-page-input-form .home-dates .dates__input.dates__back {
  border-left: none;
  border-radius: 0 12px 12px 0;
}
.Page-PromotionsLandingPage .home-page-input-form .home-searchTicket__button {
  width: 100%;
  order: 2;
  grid-area: buttonSearch;
}
.Page-PromotionsLandingPage .home-page-input-form .home-page__student {
  order: 1;
  margin-bottom: 16px;
  grid-area: student;
}
.Page-PromotionsLandingPage .landing_hero_bottom {
  position: relative;
  padding: 50px 0;
  background: url("../../images/landing_page/bg-landing_page.png");
  background-size: cover;
  background-repeat: no-repeat;
}
.Page-PromotionsLandingPage .landing_hero_bottom:before {
  position: absolute;
  top: 0;
  content: "";
  width: 100%;
  height: 80px;
  background: linear-gradient(0deg, #55368B, transparent);
  transform: translateY(-100%);
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__item {
  width: 100%;
  height: auto;
  margin: 16px;
  background: #ffffff;
  border-radius: 14px;
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__head {
  height: auto;
  overflow: hidden;
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__head img {
  width: 100%;
  border-radius: 14px 14px 0 0;
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__body {
  text-align: center;
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__body p.title {
  padding: 16px;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #F8A629;
  font-weight: 700;
  text-transform: uppercase;
}
.Page-PromotionsLandingPage .landing_hero_bottom .benefits__body p.text {
  padding: 0 16px 16px 16px;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  line-height: 19px;
}
.Page-PromotionsLandingPage .landing_title_banner,
.Page-PromotionsLandingPage .landing_fast_deals,
.Page-PromotionsLandingPage .landing_choose_company {
  padding: 64px 0;
}
.Page-PromotionsLandingPage .landing_title_banner {
  padding-left: 32px;
  padding-right: 32px;
}
.Page-PromotionsLandingPage .landing_title {
  text-align: center;
}
.Page-PromotionsLandingPage .landing_title p.title {
  margin-bottom: 32px;
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  color: #55368B;
  font-weight: 700;
}
.Page-PromotionsLandingPage .landing_title p:not(.title) {
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #6c6c6c;
  line-height: 25px;
}
.Page-PromotionsLandingPage .landing_title_banner .landing_banner {
  margin-top: 60px;
  padding: 0 32px;
}
.Page-PromotionsLandingPage .landing_title_banner .landing_banner img {
  width: 100%;
}
.Page-PromotionsLandingPage .landing_fast_deals {
  background: #55368B;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer {
  margin-bottom: 30px;
  text-align: center;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer h3, .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer p {
  display: inline-block;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer h3 {
  margin-bottom: 20px;
  font-size: 1.2rem;
  color: #ffffff;
  text-align: center;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer p {
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
  font-weight: 700;
  color: #ffffff;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer p span.timer {
  display: inline-block;
  min-width: 34px;
  padding: 14px 0px;
  color: #F8A629;
  text-align: center;
  line-height: 25px;
  background: #ffffff;
  border-radius: 4px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_timer .divider {
  display: inline-block;
  margin-top: -25px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items {
  position: relative;
  display: flex;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow {
  position: absolute;
  top: 50%;
  font-size: 0;
  border: none;
  background: none;
  z-index: 1;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow:before, .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow:after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  transform: translateY(-50%);
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-prev {
  left: -30px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-prev:before {
  left: 0;
  border-right: 20px solid #ffffff;
  border-left: 20px solid transparent;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-prev:after {
  left: 4px;
  border-right: 20px solid #55368B;
  border-left: 20px solid transparent;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-next {
  right: -15px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-next:before {
  right: 0;
  border-right: 20px solid transparent;
  border-left: 20px solid #ffffff;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-next:after {
  right: 4px;
  border-right: 20px solid transparent;
  border-left: 20px solid #55368B;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .trip-card {
  display: none;
  width: 100%;
  max-width: none;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .trip-card .trip-card__header {
  height: 180px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .trip-card.slick-slide {
  display: block;
  margin: 0 16px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer {
  margin-top: 40px;
  padding: 16px;
  background: #ffffff;
  border-radius: 4px;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer h3 {
  margin-bottom: 8px;
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
  color: #F8A629;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer h3:before,
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer h3 span {
  display: inline-block;
  vertical-align: middle;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer h3 span {
  width: calc(100% - 40px);
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer p {
  font-size: 15px;
  font-size: calc(15 * 0.0625)rem;
  color: #55368B;
  line-height: 1.3;
}
.Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer .icon_fast_deals {
  background: url("../../images/clock-icon.png");
  background-size: cover;
  width: 30px;
  height: 30px;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_form {
  margin-bottom: 32px;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_form h3 {
  margin: 0;
  padding: 4px 0;
  font-size: 20px;
  font-size: calc(20 * 0.0625)rem;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_form select {
  height: 40px;
  padding: 0 32px;
  font-size: 18px;
  font-size: calc(18 * 0.0625)rem;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 0;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_items .trip-card-default {
  margin: 4px;
}
.Page-PromotionsLandingPage .landing_choose_company .choose_company_items .trip-card-default .trip-card__header {
  height: 180px;
}
.Page-PromotionsLandingPage .landing_newsletter .newsletter_form {
  padding: 16px;
  margin-bottom: 96px;
  background: url("../../images/landing_page/bg-landing_page_newsletter_mobile.png");
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 14px;
}
.Page-PromotionsLandingPage .landing_newsletter .newsletter_form h3 {
  margin-bottom: 32px;
  color: #ffffff;
  font-size: 24px;
  font-size: calc(24 * 0.0625)rem;
  font-weight: 700;
}
.Page-PromotionsLandingPage .landing_newsletter .newsletter_form input {
  padding: 0 32px;
  margin-bottom: 16px;
  border-radius: 14px;
  border: 2px solid #F47221;
}
.Page-PromotionsLandingPage .cities__input {
  border-radius: 12px !important;
  border: 3px solid #F8A629 !important;
}

.benefits__block > .container > .row {
  display: flex;
  justify-content: center;
}
.benefits__block > .container > .row > div {
  width: auto;
  height: 100%;
  margin: 0 16px;
}

@media (max-width: 800px) {
  .Page-PromotionsLandingPage .landing_title_banner .landing_banner .banner__desk {
    display: none;
  }
  .Page-PromotionsLandingPage .landing_title_banner .landing_banner .banner__mobile {
    display: block;
    width: 100%;
  }
  .Page-PromotionsLandingPage .trip-card-default {
    width: 100%;
    max-width: 100%;
  }
}
@media (min-width: 800px) {
  .Page-PromotionsLandingPage .container {
    max-width: 1280px;
  }
  .Page-PromotionsLandingPage .header__desktop {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 2;
  }
  .Page-PromotionsLandingPage .slick-texts {
    padding-left: 64px;
  }
  .Page-PromotionsLandingPage .slick-texts p.title {
    font-size: 60px;
    font-size: calc(60 * 0.0625)rem;
    line-height: 56px;
  }
  .Page-PromotionsLandingPage .slick-texts p.text {
    font-size: 28px;
    font-size: calc(28 * 0.0625)rem;
    line-height: 31px;
  }
  .Page-PromotionsLandingPage .slick-texts .slick-dots {
    bottom: unset;
    top: 130%;
  }
  .Page-PromotionsLandingPage .landing_hero_top {
    padding-top: 64px;
  }
  .Page-PromotionsLandingPage .landing_hero_top video {
    display: block;
  }
  .Page-PromotionsLandingPage .home-page-input-form {
    display: grid;
    row-gap: 8px;
    column-gap: 16px;
    grid-template: "places dates buttonSearch" auto "student student student" auto;
  }
  .Page-PromotionsLandingPage .home-page-input-form .home-intinerary {
    display: grid;
    margin: 0;
    grid-area: places;
    grid-template: "origin switch destiny" auto;
  }
  .Page-PromotionsLandingPage .home-page-input-form .home-intinerary .row {
    display: block;
    width: 100%;
    max-width: none;
  }
  .Page-PromotionsLandingPage .home-page-input-form .home-intinerary .home-intinerary__switch {
    transform: translateY(-50%) rotate(90deg);
  }
  .Page-PromotionsLandingPage .landing_hero_bottom {
    background: url("../../images/landing_page/bg-landing_page.png");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .Page-PromotionsLandingPage .landing_hero_bottom .benefits__item {
    width: calc((100% - 246px) / 4);
    margin: 0 41px;
  }
  .Page-PromotionsLandingPage .landing_hero_bottom .benefits__item:first-child {
    margin-left: 0;
  }
  .Page-PromotionsLandingPage .landing_hero_bottom .benefits__item:last-child {
    margin-right: 0;
  }
  .Page-PromotionsLandingPage .landing_hero_bottom .benefits__item img {
    border-radius: 14px 14px 0 0;
  }
  .Page-PromotionsLandingPage .landing_title_banner,
  .Page-PromotionsLandingPage .landing_fast_deals,
  .Page-PromotionsLandingPage .landing_choose_company {
    padding: 64px;
  }
  .Page-PromotionsLandingPage .landing_banner .banner__desk {
    display: block;
    max-width: 100%;
  }
  .Page-PromotionsLandingPage .landing_banner .banner__mobile {
    display: none;
  }
  .Page-PromotionsLandingPage .landing_fast_deals {
    display: flex;
    flex-wrap: wrap;
  }
  .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-prev {
    left: -64px;
  }
  .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_items .slick-arrow.slick-next {
    right: -64px;
  }
  .Page-PromotionsLandingPage .landing_fast_deals .trip-card-default {
    width: 100%;
    max-width: 312px;
  }
  .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer {
    padding: 32px;
  }
  .Page-PromotionsLandingPage .landing_fast_deals .fast_deals_disclaimer h3:before {
    top: 0;
    width: 25px;
    height: 25px;
  }
  .Page-PromotionsLandingPage .landing_choose_company .choose_company_items .trip-card {
    width: calc((100% - 16px * 8) / 4);
    max-width: none;
    margin: 0 16px 32px 16px;
  }
  .Page-PromotionsLandingPage .landing_newsletter {
    width: 70%;
    padding: 0 64px;
    margin: auto;
  }
  .Page-PromotionsLandingPage .landing_newsletter .newsletter_form {
    padding: 32px;
    background: url("../../images/landing_page/bg-landing_page_newsletter.png");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .header__desktopRight {
    display: flex;
    align-items: center;
  }
  .dropdown.country-selector {
    display: none;
  }
}
.benefits__item {
  width: 100% !important;
  max-width: 250px;
  height: auto;
  height: 100% !important;
  margin: 16px;
  background: #ffffff;
  border-radius: 14px;
}

.benefits__head {
  height: auto;
  overflow: hidden;
}
.benefits__head img {
  width: 100%;
  border-radius: 14px 14px 0 0;
}

.benefits__body {
  text-align: center;
}
.benefits__body p.title {
  padding: 16px;
  font-size: 16px;
  font-size: calc(16 * 0.0625)rem;
  color: #F8A629;
  font-weight: 700;
  text-transform: uppercase;
}
.benefits__body p.text {
  padding: 0 16px 16px 16px;
  font-size: 14px;
  font-size: calc(14 * 0.0625)rem;
  line-height: 19px;
}

.box_time {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
}

.container.breadcrumbWrapper {
  display: none;
  margin-bottom: -8px;
}

.aboutUsBreadcrumb {
  position: absolute;
  padding: 70px 5px 0px;
  z-index: 1;
}
.aboutUsBreadcrumb .breadcrumb .breadcrumb-item a {
  color: #ffffff;
}
.aboutUsBreadcrumb .breadcrumb .breadcrumb-item + .breadcrumb-item:before {
  color: #ffffff;
}

@media (min-width: 1024px) {
  .container.breadcrumbWrapper {
    display: flex;
  }
}
.btn--ghost {
  background-color: unset;
  color: #F8A629;
  text-decoration: underline;
  border: none;
  padding: unset;
  display: inline-flex;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
}
.btn--ghost:hover {
  color: #e68e08;
  text-decoration: underline;
}

.consult-ticket__page .consult-ticket__container h2 {
  color: #55368b;
  text-align: center;
}
.consult-ticket__page .consult-ticket__container p {
  font-size: 14px;
  line-height: 22px;
}
.consult-ticket__page .consult-ticket__container {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
  background: white;
  height: 100vh;
  padding: 40px;
  border-radius: 10px;
}
.consult-ticket__page .consult-ticket__container form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.consult-ticket__page .consult-ticket__container input {
  border-radius: 6px;
}

@media (min-width: 1024px) {
  .consult-ticket__page .consult-ticket__container {
    height: unset;
    margin-top: 100px;
    margin-bottom: 100px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  }
}
section {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.hero_bg {
  background: #F28C33;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  max-height: 100vh;
  margin: 0 auto;
  position: relative;
  width: 100%;
  min-height: 80vh;
}

.searchOverlay {
  background-color: rgba(242, 140, 51, 0.6235294118);
  height: 85vh;
  padding: 30px 0;
  width: 100%;
}

.searchViacao {
  border: 2px #e0e0e0 solid;
  border-radius: 5px;
  padding: 20px 30px 20px 30px;
}

.pageTitle {
  margin: 0 0 30px 0;
}

.titleH1 {
  color: #ffffff;
  font-family: Montserrat, sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 2.5rem;
  margin-bottom: 0 0 20px 0;
  text-shadow: 2px 2px rgba(33, 33, 33, 0.4470588235);
}

.pageTitle span {
  color: #ffffff;
  text-decoration: underline;
}

.searchField {
  margin: 0 auto;
  max-width: 1200px;
  padding: 10px;
  width: 100%;
}

ol.breadcrumb-page {
  padding: 0px;
  list-style: none;
  margin: 0;
}

ol.breadcrumb-page li {
  display: flex;
  font-size: 18px;
  align-items: center;
}

.breadcrumb-item + .breadcrumb-item:before {
  padding: 8px;
  color: #ffffff;
  content: "/ ";
}

ol.breadcrumb-page li a {
  color: #ffffff;
  text-decoration: none;
}

@media screen and (max-width: 800px) {
  .titleH1 {
    font-size: 1.65rem;
  }
  .searchOverlay {
    padding: 15px;
  }
  .hero_bg {
    background-attachment: scroll !important;
  }
}
.promotionalContainer {
  justify-items: center;
}

.promotionalBanner {
  max-height: 132px;
  max-width: 1050px;
}
@media (width <= 1024px) {
  .promotionalBanner {
    max-height: 106px;
  }
}
.promotionalBanner .promotionalBanner__img {
  width: 100%;
  height: auto;
  max-height: inherit;
  object-fit: contain;
}

#banners-promocionais {
  width: 100%;
}

.error-page {
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
  padding: 100px 0;
  gap: 50px;
}
.error-page .bus-error {
  width: 431px;
  height: 130px;
  object-fit: scale-down;
}
.error-page .error-content {
  display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.error-page .error-content .error-title {
  color: #55368B;
  text-align: center;
  font-size: 1.688rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  margin: 0;
}
.error-page .error-content .error-message {
  color: #515151;
  text-align: center;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  margin: 0;
}
.error-page .error-code {
  color: #515151;
  align-self: flex-start;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
}

@media (max-width: 800px) {
  .error-page {
    gap: 40px;
    padding: 50px 30px;
  }
  .error-page .bus-error {
    width: 80%;
    object-fit: contain;
  }
}
.tripNotFound .firstColSize, .tripNotFound .secondColSize {
  height: 350px;
}
@media (max-width: 768px) {
  .tripNotFound .firstColSize {
    margin-top: 100px;
  }
  .tripNotFound .custom-mobile-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: left;
  }
  .tripNotFound .custom-mobile-center p {
    width: 100%;
  }
  .tripNotFound .firstText {
    font-size: 18px;
  }
  .tripNotFound .secondText {
    font-size: 12px;
  }
  .tripNotFound .secondColSize {
    height: fit-content;
  }
}
.tripNotFound .btn.btn-block.btn-primary {
  max-width: 240px;
}

.mob-heading--largest, h1 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 24px;
}

.mob-heading--large, h2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 22px;
}

.mob-heading--medium, h3 {
  font-family: "Montserrat", sans-serif;
  font-size: 22px;
  font-weight: 600;
}

.mob-heading--small, h4 {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  font-weight: 600;
}

.mob-subtitle--large {
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  font-size: 18px;
}

.mob-subtitle--medium {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 18px;
}

.mob-subtitle--default {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 18px;
}

.mob-subtitle--small {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 16px;
}

.mob-subtitle--small-strong {
  font-size: 0.9rem;
  font-weight: 600;
  margin-bottom: 5px;
  margin-top: 12px;
}

.mob-text--large {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 12px;
}

.mob-text--medium {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 15px;
}

.mob-text--default, p {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
}

.mob-text--small-bold {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 12px;
}

.mob-text--small {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 12px;
}

.mob-text--smallest {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 10px;
}

.mob-text--section-title {
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: normal;
  margin: 0;
}

select {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
}

.mob-color--primary {
  color: #55368B !important;
}

.mob-color--primary-light-1 {
  color: #9986B9;
}

.mob-color--primary-light-2 {
  color: #DDD7E8;
}

.mob-color--primary-dark-1 {
  color: #2E1A5A;
}

.mob-color--secondary {
  color: #F0801E;
}

.mob-color--secondary-light-1 {
  color: #F8A629;
}

.mob-color--secondary-light-2 {
  color: #FDC93B;
}

.mob-color--white {
  color: #FFFFFF;
}

.mob-color--black {
  color: #333333;
}

.mob-color--grayTwo {
  color: #515151;
}

.mob-color--grayThree {
  color: #4F4F4F !important;
}

.mob-color--tango {
  color: #F47221 !important;
}

.bd {
  font-weight: 700 !important;
}

.checkout-link {
  color: #515151 !important;
  font-style: normal !important;
  line-height: normal !important;
  text-decoration-line: underline !important;
}

.mob-text--accordion {
  color: #000;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

.mob-badge {
  color: #FFF;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  background-color: #55368B;
  border-radius: 10px;
  padding: 6px 12px;
}

.text-decoratation-none {
  text-decoration: none !important;
}

.accordion {
  display: flex;
  flex-direction: column;
  gap: 0.5625rem;
  width: 100%;
  border-radius: 0.375rem;
  background: #ffffff;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  padding: 0.5rem 1rem;
}
.accordion .accordion-items {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}
.accordion .accordion-items .collapse-header {
  width: 100%;
  height: 70px;
  color: #2E1A5A;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  border-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  position: relative;
}
.accordion .accordion-items .collapse-header p {
  font-size: 1rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  color: #2E1A5A;
}
.accordion .accordion-items i {
  background: #55368B;
  border-radius: 50%;
  display: flex;
  width: 42px;
  height: 42px;
  justify-content: center;
  align-items: center;
}
.accordion .accordion-items i::before {
  color: #ffffff;
  font-size: 1.23rem;
}
.accordion .accordion-items i.clear {
  background: none;
  padding: 0;
}
.accordion .accordion-items i.clear.icon-card::before {
  color: #2E1A5A;
  font-size: 1.13rem;
}
.accordion .accordion-items i.clear.icon-pix::before {
  color: #00BDAE;
  font-size: 1.5rem;
}
.accordion .accordion-items.active .collapse-header {
  border-bottom: 1px solid #D7D7D7;
  padding-bottom: 0;
}
.accordion.secondary {
  gap: 0.8rem;
  background-color: none;
  box-shadow: unset;
  padding: 0;
}
.accordion.secondary .accordion-items {
  display: flex;
  padding: 10px;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
  border-radius: 10px;
  background: #F6F6F6;
}
.accordion.secondary .accordion-items .collapse-header {
  height: 45px;
  padding-top: 8px;
}
.accordion.secondary .accordion-items:hover {
  background: #F1F1F1;
}
.accordion.secondary .accordion-items.active {
  border: 2px solid #55368B;
  border-radius: 10px;
}
.accordion.secondary .accordion-items.active .accordion-arrow.open::before {
  transform: rotate(180deg);
  content: "\e91e";
}
.accordion.secondary .accordion-items.active:hover {
  background: #F6F6F6;
}
.accordion.secondary .accordion-items .collapse-header {
  border-bottom: 0;
}

.checkout-components .card, .checkout-components .card-header {
  border: unset;
  background: white;
}
.checkout-components .card-body:first-of-type {
  padding-top: 0;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.checkout-components .card-body:last-of-type {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}
.checkout-components #heading-pix-card, .checkout-components #heading-pix-tab {
  background-color: #F6F6F6 !important;
  padding-left: 0 !important;
}
.checkout-components #pix-tab, .checkout-components #heading-pix-card, .checkout-components #pix-card {
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
}

.checkout-onePage-payment #heading-pix-tab {
  background: #F6F6F6;
}
.checkout-onePage-payment #payment-wrap .card.accordion-items {
  border-color: #55368B;
}

.accordion-arrow::before {
  content: "\e91e";
  font-family: icomoon;
  transition: transform 0.3s ease;
  margin-left: auto;
  position: absolute;
  right: 16px;
  font-size: 0.75rem;
  color: #D7D7D7;
}
.accordion-arrow.open::before {
  transform: translateY(-50%) rotate(180deg);
}

.accordion.identification-accordion > .card.accordion-items,
.accordion.identification-accordion .card.accordion-items {
  overflow: visible;
}
.accordion.identification-accordion .card.accordion-items .collapse,
.accordion.identification-accordion .card.accordion-items .collapse.show,
.accordion.identification-accordion .card.accordion-items > .card-body {
  overflow: visible;
}

.purple--messageButton {
  width: fit-content;
  height: 36px;
  padding: 8px 12px 8px 12px;
  border-radius: 10px;
  border: 1px solid #55368B;
  background: rgba(85, 54, 139, 0.1019607843);
  gap: 10px;
}

.checkout-components {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  gap: 24px;
}

.loading-skeleton {
  width: 100%;
}
.loading-skeleton .identification-skeleton {
  height: 490px;
}
.loading-skeleton .passengers-skeleton {
  height: 246px;
}
.loading-skeleton .insurance-skeleton {
  height: 290px;
}
.loading-skeleton .coupon-section-skeleton {
  height: 90px;
}
.loading-skeleton .whole-order-summary-skeleton {
  height: 460px;
}
.loading-skeleton .payment-section-skeleton {
  height: 281px;
}

.loading-skeleton {
  color: transparent;
  appearance: none;
  -webkit-appearance: none;
  background-color: rgb(250, 250, 250) !important;
  border-color: rgb(229, 229, 229) !important;
  pointer-events: none;
  animation: loading-skeleton 1s infinite alternate;
}
.loading-skeleton img {
  filter: grayscale(100) contrast(0%) brightness(1.8);
}
.loading-skeleton.slick-arrow {
  color: rgb(225, 224, 224) !important;
  background-color: transparent !important;
}
.loading-skeleton::after, .loading-skeleton::before {
  color: rgb(225, 224, 224) !important;
  background-color: transparent !important;
}
.loading-skeleton::placeholder {
  color: transparent;
}
.loading-skeleton img {
  filter: grayscale(100) contrast(0%) brightness(1.8);
}
.loading-skeleton p, .loading-skeleton span, .loading-skeleton h1, .loading-skeleton h2, .loading-skeleton h3, .loading-skeleton h4, .loading-skeleton h5, .loading-skeleton h6, .loading-skeleton div {
  background-color: rgb(225, 224, 224) !important;
  color: transparent !important;
}

@keyframes loading-skeleton {
  from {
    opacity: 0.2;
  }
  to {
    opacity: 1;
  }
}
.is__loading {
  position: relative;
  z-index: 20;
  pointer-events: none;
}
.is__loading::before {
  font-family: "icomoon";
  content: "\e917";
  color: #F0801E;
  position: absolute;
  top: calc(50% - 16px);
  left: calc(50% - 11px);
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;
  z-index: 26;
  font-size: 23px;
  border: 0;
  animation: pulse 3s ease 0s infinite normal forwards;
}
.is__loading::after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 25;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 35px;
}

@keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1);
  }
}
.required-label::after {
  content: " *";
  color: red;
  margin-left: 2px;
  font-weight: bold;
}

/*# sourceMappingURL=app.css.map*/