body {
  font-family: 'Roboto', sans-serif;
}

.section2 {
  font-size: 13px;
}

.informations-box-holder {
  justify-content: space-between;
}

.personal-details,
.payment-details,
.side {
  font-size: 13px;
}

.payment-details {
  margin-top: 20px;
  padding: 20px 20px 25px;
}

.button-grn {
  width: auto;
  height: 52px;
  border-radius: var(--button-border-radius-lg, 12px);
  background-color: #53ac2a;
  border: none;
  display: inline-block;
  box-sizing: border-box;
  text-decoration: none;
  font-weight: bold;
  line-height: 1.19;
  color: #fff;
  padding-left: 20px;
  padding-right: 20px;
}

#book-now.button-grn {
  width: 234px;
}

#go-to-payment:disabled {
  background-color:#d8dde8!important;
}
#go-to-payment .btn-loader{
  position:unset;
  display: none;
}
#go-to-payment .loader-dot {
  background-color: #fff;
}
#go-to-payment .btn-loader .search-loading-message   {
display:none;
}

.blurred{
	filter: blur(1.5px);
	opacity:.4;
	pointer-events: none;
	user-select: none;
}

.locked-text {
  color: #8c99af;
  pointer-events: none;

}

.room-details-holder {
  margin-left: 12px;
  margin-right: 10px;
  margin-top: 18.5px;
  margin: 18.5px 12px 0px;
  padding-bottom: 15.5px;
}

.tax-details {
  margin: 18.5px 10px 16px 12px;
}

.dates span {
  text-transform: capitalize;
}

#remember {
  display: none;
}

.tarifa {
  font-size: 13px;
  font-weight: bold;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.15;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
}

.price {
  font-size: 16px;
  font-weight: normal;
  font-stretch: condensed;
  font-style: normal;
  line-height: 1.19;
  letter-spacing: normal;
  text-align: right;
  color: #2c2f33;
}

.price {
  font-size: 16px;
  font-weight: bold;
}

.price .currency_symbol_price {
  font-size: 14px;
  font-weight: normal;
}

.price .decimal_value_price {
  font-size: 14px;
  font-weight: bold;
}

.room-details-holder[data-price] .price-tag {
  font-size: 11px;
  line-height: 16px;
  font-weight: 500;
  color: #ffffff;
  padding: 2px 7px;
  border-radius: 15px;
}

.room-details-holder[data-price] .public-price-tag {
  background-color: #273240;
}

.room-details-holder[data-price] .member-price-tag {
  background-color: #FFE384;
}

.room-details-holder[data-price] .price-tags-mobile {
  display: none;
}

.room-details-holder[data-price] .price-tags {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.room-details-holder[data-price] .candidate_info {
  margin: 3px 0px 5px 0px;
  font-style: normal;
  font-weight: 400;
}

body[data-currency="23"] .room-details-holder[data-price] .col-5, body[data-currency="119"] .room-details-holder[data-price] .col-5 {
	padding-left: 0;
}

body[data-currency="23"] .room-details-holder[data-price] .position-relative.text-nowrap.ml-n5, body[data-currency="119"] .room-details-holder[data-price] .position-relative.text-nowrap.ml-n5 {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-top: 3px;
}

body[data-currency="23"] .room-details-holder[data-price] .member-discount-tag, body[data-currency="119"] .room-details-holder[data-price] .member-discount-tag {
  gap: 2px;
	font-size: 10px;
	margin-bottom: 2px;
}

.room-details-holder[data-price] .member-discount-tag {
  color: #008009;
  font-size: 11px;
  font-weight: 600;
  line-height: 15px;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  margin-top: 23px;
}

.room-details-holder[data-price]:not(:has(.member-discount-tag)) .position-relative.text-nowrap.ml-n5 {
	margin-top: 42px;
}

.room-details-holder[data-price] .member-discount-tag .svg-icon svg {
  fill: #008009;
}

.room-details-holder[data-price] .price .currency_symbol_price, .room-details-holder[data-price] .price .decimal_value_price {
  font-size: 14px;
  font-weight: inherit;
}

.room-details-holder[data-price] .price .currency_symbol_price {
  font-weight: 400;
}

.room-details-holder[data-price] .member-discount-tag .currency_symbol_price, .room-details-holder[data-price] .member-discount-tag .decimal_value_price {
  font-size: inherit;
  font-weight: inherit;
}

.room-details-holder[data-price] .position-relative.text-nowrap.ml-n5 {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 3px;
}

.room-details-holder[data-price] .price-without-discount {
  position: relative;
  top: -2px;
  color: #454950;
  text-decoration: line-through;
  font-size: 12px;
}

.room-details-holder[data-price] .text-nowrap.ml-n3 {
  margin-left: unset !important;
}

.room-details-holder[data-price] .text-nowrap.ml-n3 {
  color: #008009;
}

#orderinfobox.order-box-loading {
  pointer-events: none;
}

#orderinfobox {
  position: relative;
  height: fit-content;
}

#loading {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: calc(100% - 175px);
  background-color: rgb(255 255 255 / 32%);
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
}

#loading .gooey {
  position: relative;
  top: -100px;
  left: 0;
  width: 209px;
  height: 42px;
  background: transparent;
  filter: contrast(20);
}

#loading .gooey .dot, .gooey .dots span {
  background: #1a1a1a;
  filter: blur(0px);
}

/* #orderinfobox.order-box-loading .room-details-holder, #orderinfobox.order-box-loading .tax-details, #orderinfobox.order-box-loading .rounded-bottom {
  filter: grayscale(1);
} */

#orderinfobox.order-box-loading .loader-container.basket {
  display:flex;
}
#orderinfobox.order-box-loading .loader-container.basket  .search-loading-message{
  display:none;
}


#different-billing,
#booking-for-other {
  display: none;
}

#different-billing {
  max-width: 584px;
  margin-left: 5px;
}

.autocomplete {
  position: absolute;
  top: 61px;
  background-color: white;
  z-index: 10;
  border: 1px solid #ccc;
  width: calc(100% - 29px);
  left: 14px;
}

.autocomplete div {
  padding: 6px 20px;
  cursor: pointer;
  font-size: 14px;
}

.autocomplete div:hover {
  background-color: #eee;
}

.error {
  color: #FF0000;
  padding-top: 5px;
}

.green-message {
  color: #008009 !important;
  padding-top: 5px;
  margin-top: -20px;
  margin-left: 5px;
  margin-right: 5px;
}

.personal_billing .green-message{
  margin-left: 15px;
}

.cep-field .material-textfield {
  width: 100%; /* Faz o contêiner do input ocupar toda a largura */
}

.cep-field input {
  width: 100%; /* O input ocupa toda a largura do seu contêiner */
  box-sizing: border-box; /* Para incluir padding e border na largura total */
  padding: 10px; /* Padding interno para o input */
}

input.error,
select.error,
input.cc-not-supported-error {
  border: 1px solid #FF0000 !important;
  color: inherit;
}

.material-textfield:has(input.cc-not-supported-error) #input-direct-card-error,
.material-textfield:has(input.cc-not-supported-error) #input-cc-card-error {
  display: none !important;
}

.not_support_cc {
  color: #FF0000;
  padding-top: 3px;
}

input.form-control,
select.form-control {
  height: 48px;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 500;
}

.lock-i:disabled {
  opacity: 0.5;
  border-radius: 2px;
  border: solid 1px #d8dde8;
  background-color: #f6f7f9;
  pointer-events: none;
  font-weight: 400;
}

.lock-i.phone-country-disabled {
  pointer-events: none;
}

.room-description {
  font-size: 14px;
}

.btn-custom {
  border-radius: var(--button-border-radius, 10px);
  background: #fd4700;
  border: 1px solid #fd4700;
  color: #fff;
  font-size: 11px;
  font-weight: bold;
}

.almost-done-div {
  margin-top: 37px;
  margin-bottom: 20px;
}

.mobile-info-div {
  display: none;
}

.information-header {
  font-family: 'Roboto', sans-serif;
  font-size: 20px;
  font-weight: bold;
  line-height: 26px;
  text-align: left;
  color: #000000;
}

.info-star {
  color: #fd4700;
}

.personal-info {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 21px;
  text-align: left;
  color: #2c2f33;
  margin-bottom: 38px;
}

.personal-info-filled {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 21px;
  text-align: left;
  color: #8c99af;
  margin-bottom: 13px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: '';
}

select.form-control {
  background: url(/icons/icons_GreyDark/iconGreyDark_ArrowDown.svg);
  background-repeat: no-repeat;
  background-position-x: right;
  background-position-y: center;
  background-origin: content-box;
  padding-right: 10px;
  background-color: white;
  border-radius: 4px;
}

.personal-box {
  padding: 18px 20px 20px 20px;
  margin-bottom: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

.loyalty-infocard-banner {
  display: none;
  padding: 20px;
  background-color: #ffffff;
  border-top: 2px solid var(--hotel-custom-btn-bg-color);
  border-radius: 2px 2px 4px 4px;
  margin-bottom: 20px;
}

.loyalty-infocard-banner > div:last-child {
  margin: 0;
}

.loyalty-infocard-title {
  margin-bottom: 20px;
}

.loyalty-infocard-title span {
  font-size: 16px;
  line-height: 21px;
  font-weight: 600;
  color: #2c2f33;
}

.loyalty-terms-and-conditions-link, .loyalty-terms-and-conditions-link:hover {
  color: #4B8CF4;
  text-decoration: underline;
}

.loyalty-infocard-content {
  padding: 10px;
  background-color: rgba(88, 174, 49, 0.15);
  border: 1px solid #53ac2a;
  border-radius: 4px;
  margin-bottom: 15px;
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.loyalty-infocard-banner-limit-exceeded .loyalty-infocard-content {
  padding: 10px;
  background-color: rgba(75, 140, 244, 0.15);
  border: 1px solid #4B8CF4;
  border-radius: 4px;
  margin-bottom: 0;
  display: flex;
  flex-direction: row;
  gap: 10px;
}

/* .loyalty-infocard-banner-level-change .loyalty-infocard-content {
  padding: 10px;
  background-color: rgba(88, 174, 49, 0.15);
  border: 1px solid #53ac2a;
  border-radius: 4px;
  margin-bottom: 0;
  display: flex;
  flex-direction: row;
  gap: 10px;
} */

.loyalty-infocard-banner-limit-exceeded .info-icon svg {
  width: 14px;
  height: auto;
}

.loyalty-infocard-text {
  line-height: 18px;
}

.loyalty-infocard-guestname {
  font-weight: 600;
}

.loyalty-infocard-checkbox .checkbox-custom-label {
  align-items: flex-start;
}

.personal-box_welcome {
  padding-right: 10px;
  display: none;
}

.billing-rights {
  padding: 20px 15px 0px 15px;
  margin-bottom: 20px;
}

#input-billing-zipcode {
  max-width: 182px;
}

#input-billing-country {
  background-color: #fff;
}

#booking-for-other {
  margin-top: 4px;
}

.room-type {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.19;
  text-align: left;
  color: #2c2f33;
  margin-bottom: 15.7px;
}

.room-type_people {
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  font-weight: normal;
  line-height: 1.17;
  text-align: left;
  color: #2c2f33;
  padding-left: 5px;
}

.payment-header,.personal-data-header {
  font-size: 16px;
  line-height: 1.19;
  text-align: left;
  margin-bottom: 15px;
  padding: 0px 5px
}
.personal-data-header {
  margin-bottom: 25px;
}

.payment-body {
  font-size: 13px;
  line-height: 1.15;
}

.information-header {
  padding-top: 37px;
  padding-bottom: 20px;
}

.reservation-container {
  margin-top: 40px;
}

#payments {
  padding: 20px;
  background-color: #fff;
  display: none;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}

#nav-tab {
  border-bottom: unset;
  gap: 10px;
}

#nav-tabContent {
  padding: 20px 0px 20px 0px;
}

#nav-tabContent .row {
  margin: 0px;
}

.payment-icon {
  display: block;
  margin: 0px auto;
  padding-bottom: 10px;
  width: 32px;
  height: 32px;
  object-fit: scale-down;
  fill: #B9C2D3;
}

.nav-link {
  width: 128px;
  text-align: center;
  padding-top: 10px;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.15;
  color: #454950;
  background-color: white;
  height: 92px;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
  border-radius: 12px !important;
}

.nav-link:hover {
  cursor: pointer;
  border: 1.5px solid #8C99AF;
}

.nav-link:hover p {
  color:#1E2023;
}

.nav-item.nav-link.active p {
  color: #1E2023;
}

/* .nav-item.nav-link.active .payment-icon path {
  fill: #455A64;
} */

.first {
  margin-left: 0px;
}

.credit-card-icon {
  /* margin-left:5.3px;
  vertical-align: -3px; */
  width: 14px;
}

#input-cc-month,
#input-direct-month {
  width: 65px;
  /* margin-right: 10px;
  padding-left: 5px; */
}

#input-cc-year,
#input-direct-year {
  width: 74px;
}

.reservation-button-holder {
  text-align: right;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#book-now {
  display: none;
  margin-top: 20px;
}

.accepttos {
  display: none;
  float: left;
  margin-top: 28px;
  margin-left: 20px;
}

.accepttos-required,
.credit-card-date-incorrect,
.direct-card-date-incorrect {
  margin-left: 5px;
  display: none;
  color: red;
}

.accepttos-required {
  margin-left: 0px;
  text-align: left;
}


.credit-card-date-incorrect,
.direct-card-date-incorrect {
  width: 168px;
  margin-left: 0px !important;
}

#terms {
  display: none;
  float: inline-start;
  margin-top: 27px;
}

.personal-box-filled {
  padding: 18px 20px 20px 20px;
  margin-bottom: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  border: solid 1px #d8dde8;
  background-color: #f6f7f9;
  display: none;
}

.input-head {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.15;
  color: #8c99af;
  display: inline-block;
  width: 200px;
  margin-bottom: 10px;
}

.input-content {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  line-height: 1.15;
  text-align: left;
  color: #8c99af;
  display: inline-block;
  margin-bottom: 10px;
}

.rooms-infos {
  margin-bottom: 10px;
  background-color: #f6f7f9;
  padding: 18px 15px 18px 15px;
  max-width: 584px;
  border-radius: 4px;
  margin-left: 5px;
}

.rooms-infos-filled {
  display: none;
}

.room-info-filled {
  border-radius: 4px;
  border: solid 1px #d8dde8;
  background-color: #f6f7f9;
  padding: 10px;
  margin-bottom: 10px;
}

.personal-room-filled {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.19;
  text-align: left;
  color: #8c99af;
  display: inline-block;
}

.room-type_people-filled {
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  font-weight: normal;
  font-stretch: condensed;
  font-style: normal;
  line-height: 1.17;
  letter-spacing: normal;
  text-align: left;
  color: #8c99af;
  padding-right: 10px;
}

.room-guest-filled-head {
  display: inline-block;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.15;
  color:
    #8c99af;
  display: inline-block;
  width: 190px;
  margin-bottom: 10px;
}

.room-guest-filled-content {
  display: inline-block;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  line-height: 1.15;
  text-align: left;
  color: #8c99af;
  display: inline-block;
  margin-bottom: 10px;
}


.payment-button-holder {
  text-align: right;
}

.different-billing-filled {
  border-radius: 4px;
  border: solid 1px #d8dde8;
  background-color: #f6f7f9;
  padding: 10px;
  margin-bottom: 10px;
  display: none;
}

.different-billing-head {
  display: inline-block;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.15;
  color: #8c99af;
  display: inline-block;
  width: 190px;
  margin-bottom: 10px;
}

.different-billing-content {
  display: inline-block;
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  line-height: 1.15;
  text-align: left;
  color: #8c99af;
  display: inline-block;
  margin-bottom: 10px;
}

#edit {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  line-height: 1.15;
  color: #4b8cf4;
  cursor: pointer;
}

.credit-card__holder {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  margin-top: 12px;
}

.credit-card__name {
  margin-right: 5px;
}

.credit-card__image {
  margin-top: 15px;
}

.red-asterix {
  color: red;
}

label[disabled] .red-asterix {
  color: #8c99af;
}


.details-wrapper-container {
  margin-bottom: 10px;
}

/* Custom Checkbox CSS */

input[disabled]+.checkbox-custom-label:before {
  border: 2px solid lightgrey !important;
}

label.payment-check {
  height: 18px;
  padding-left: 5px;
}

.checkbox-billing-data__text {
  font-size: 13px;
  line-height: 18px;
  vertical-align: 1px;
}

.checkbox-billing-data__text:hover {
  cursor: pointer;
}

input[disabled]+.checkbox-custom-label>.checkbox-billing-data__text {
  color: #8c99af;
}

/* CUSTOM CHECKBOX CSS ENDS HERE */

/*CUSTOM RADIO BUTTON CSS BEGINS HERE */

input[disabled]+.radio-custom-label:before {
  border: 2px solid lightgrey !important;
}

input[disabled]+.radio-custom-label:after {
  background-color: #8c99af !important;
}

.radio-billing-data__text {
  font-size: 13px;
  line-height: 1.15;
  vertical-align: 1px;
}

.radio-billing-data__text:hover {
  cursor: pointer;
}

input[disabled]+.radio-custom-label>.radio-billing-data__text {
  color: #8c99af;
}

input[type="date"]::-webkit-inner-spin-button {
  display: none;
  -webkit-appearance: none;
}


.radio-custom-label:before {
  border-radius: 50%;
  border: solid 1px #b9c2d3;
}

.radio-custom:checked+.radio-custom-label:before {
  border-radius: 50%;
  background-image: none;
  border: solid 1px #b9c2d3 !important;
}

.details-offers-list {
  padding-left: 17px;
  margin-bottom: 10px;
}

.details-room-extra-item {
  line-height: 1;
}

.details-all-stay {
  font-size: 13px;
  display: block;
}

#additional {
  background-color: #fff;
  margin-top: 20px;
  padding: 18px 20px 20px 20px;
  display: none;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}

#additional .personal-info {
  margin-bottom: 18px;
}

.aditional-options {
  margin-bottom: 20px;

}

.card-header {
  background-color: #ffffff;
  border-bottom: unset;
  padding-left: 0px;
}

.card-body {
  padding-left: 0px;
}

.option_name {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  line-height: 19px;
  color: #2c2f33;
}

.option_padding {
  padding-top: 23px;
}

.dropdown-icon {
  margin-right: 7px;
}

.special_request {
  padding: 20px;
  border-radius: 4px;
  background-color: #f6f7f9;
}

.spec-req {
  background-color: #ffffff !important;
}

#add_more_request {
  font-family: 'Roboto', sans-serif;
  font-size: 11px;
  font-weight: bold;
  line-height: 1.18;
  color: #455A64;
  display: block;
  padding: 5px 0px 24px 0px;
  cursor: pointer;
}

.transfer {
  padding: 20px;
  border-radius: 4px;
  background-color: #f6f7f9;
}

#input-transfer_location {
  background-color: #ffffff;
  padding-right: 20px;
}

#input-arr-time,
#input-arr-format {
  background-color: #ffffff;
  font-size: 13px;
  line-height: 1.15;
  min-width: 72px
}

#input-transfer-time,
#input-transfer-ampm {
  background-color: #ffffff;
  line-height: 1.15;
  min-width: 72px
}

#input-transfer-time {
  min-width: 90px;
}



.transfer-time-holder {
  margin-right: 10px;
}

.loyalty {
  padding: 20px;
  border-radius: 4px;
  background-color: #f6f7f9;
}

.activity {
  padding: 20px;
  border-radius: 4px;
  background-color: #f6f7f9;
}

.activity-head {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.15;
  color: #2c2f33;
}

.options-field-holder {
  margin-top: 15px;
  padding: 0px !important;
}

a[aria-expanded="false"] .dropdown-icon {
  color: #2c2f33;
}

a[aria-expanded="true"] .dropdown-icon {
  color: #fd4700;
}

a:hover {
  text-decoration: none;
}

.payment-text-area {
  min-height: 92px !important;
}

.input-padding {
  padding-right: 20px;
}

.input-field-header {
  font-size: 13px;
  line-height: 1.15;
  color: #2c2f33;
}

.orange-info{
  display: flex;
  flex-direction: row;
  margin-top: 15px;
}

.orange-info .info-title{

}

.orange-alert,
.orange-info {
  border: 1px solid #ffa200;
  border-radius: .25rem;
  background-color: #fff1d9;
  padding: 10px;
  margin-left: 5px;
  margin-right: 5px;
}

.orange-alert-bank {
  display: flex;
  margin-bottom: 20px;
  align-items: flex-start;
  padding: 10px 10px 10px 10px;
}

.orange-alert-bank .credit-card-icon,
.orange-info .payment-info-icon {
  margin-right:5px;
  height: 16px;
  width: 16px;
}

.accepted_cc {
	margin: 0px 0px 10px 5px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

a[aria-expanded="true"] h5 {
  color: #455A64;
}

a[aria-expanded="true"] h5 .dropdown-icon {
  transform: rotate(180deg);
}

a[aria-expanded="true"] h5 .dropdown-icon path {
  fill: #455A64;
}

.partial_payment,
.partial_payments {
  display: flex;
  display: none;
  font-size: 13px;
  line-height: 1.15;
  text-align: left;
  color: #2c2f33;
}

.partial_payment {
  display: flex;
  flex-direction: column;
}

.partial-payment-style {
  font-size: 14px;
  line-height: 19px;
  font-weight: 500;
  text-align: left;
  color: #273240;
  max-width: 385px;
  margin: 15px 0px 5px 5px;
}

.partial_blue_info {
  display: flex;
  align-items: flex-start;
  background-color: #ECF3FE;
  padding: 10px;
  border: 1px solid #4B8CF4;
  border-radius: 5px;
  margin: 20px 0px 0px 5px;
}



.partial_blue_info img {
  padding-top: 2px;
  padding-right: 5px;
  vertical-align: text-top;
}

.partial_blue_info .payment-info-icon {
  padding: unset;
  margin-right:5px;
  height: 16px;
  width: 16px;
}

.paypal_green_info {
  background-color: #E6F3E0;
  padding: 10px;
  border: 1px solid #53AC2A;
  border-radius: 4px;
  display: block;
}

.paypal_green_info img {
  padding-right: 2px;
  vertical-align: text-top;
}

.direct_green_info {
  background-color: #E6F3E0;
  padding: 10px;
  border: 1px solid #53AC2A;
  border-radius: 4px;
  display: block;
  margin-left: 5px;
  margin-right: 5px;
}

.direct_green_info img {
  padding-right: 3px;
  vertical-align: text-top;
}

.instalments-header {
  font-family: 'Roboto', sans-serif;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  text-align: left;
  color: #2c2f33;
  display: block;
}

.payment_type_partial_head {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.21;
  text-align: left;
  color: #2c2f33;
  display: block;
  padding-top: 30px;
}

.payment_type_partial_detail {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 2;
  text-align: left;
  color: #2c2f33;
}

.instalments-details {
  color: #4b8cf4;
  cursor: pointer;
  text-decoration: underline;
  padding-left: 0px;
}

.partial_blue_info span .instalments-details {
  padding-left: 0px;
}

.cvv-box {
  width:74px;
  max-width: 74px;
}

.year-box {
  margin-right: 10px;
}

.price-total-wrap {
  padding: 16px;
  background-color: #263237;
}


.total-value {
  font-size: 25px;
  font-weight: bold;
  font-stretch: condensed;
  font-style: normal;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: center;
  padding-bottom: 4px;
}

.total-value .decimal_value_price {
  font-size: 18px;
  font-weight: bold;
}

.total-value .currency_symbol_price {
  font-size: 18px;
  font-weight: normal;
}


.month-year-cvv-box {
  display: inline-flex;
  /* flex-direction: column; */
}

.month-year-cvv-holder {
  display: flex;
}

.month-year-holder {
  display: flex;
  flex-direction: column;
}

.year-box {
  justify-content: center;
}

.order-input {
  padding-left: 0px;
  padding-right: 0px;
  max-width: 720px;
}

.modal-button-phone {
  display: none;
}

.modal-button-desktop {
  display: inline-block;
}

.modal-link {
  font-family: 'Roboto', sans-serif;
  font-size: 13px;
  letter-spacing: normal;
  color: #4b8cf4;
}

.modal-link:hover {
  cursor: pointer;
  text-decoration: underline;
}

.terms-box {
  display: inline-block;
}

.terms-header {
  font-family: 'Roboto', sans-serif;
  font-size: 20px;
  font-weight: bold;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.2;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
  display: block;
  padding-bottom: 20px;
}

.terms-content {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 300;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
}

.policy-room {}

.policy-room-header {
  display: flex;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 300;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
}

.policy-room-header-orange {
  color: #fd4700;
  font-weight: 500;
  display: inline-block;
  margin-right: 10px;
}

.policy-content-header {
  display: block;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
}

.policy-content {
  display: block;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 300;
  font-stretch: normal;
  font-style: normal;
  line-height: 2;
  letter-spacing: normal;
  text-align: left;
  color: #2c2f33;
  padding-bottom: 10px;
  white-space: pre-line;
}

#input-transfer-comment:-webkit-input-placeholder {
  color: #8C99AF;
}

#input-transfer-comment:-moz-placeholder {
  color: #8C99AF;
}

#input-transfer-comment::-moz-placeholder {
  color: #8C99AF;
}

#input-transfer-comment:-ms-input-placeholder {
  color: #8C99AF;
}

.input-address-counter {
  position: absolute;
  right: 10px;
  top: 30px;
  color: #8C99AF;
  font-weight: bold;
}

.wellcome-guest-msg {
  align-self: center;
  color: #53ac2a;
  display: none;
}

.candidate_info {
  display: flex;
}

.included-in-rate {
  color: #008009;
  padding-top: 5px;
}

.form-control:hover:enabled,
.form-control:focus:enabled {
  /* border: 1px solid #454950 !important; */
  cursor: pointer !important;
}

.bank-description {
  font-size: 14px;
  font-weight: 300;
  line-height: 2;
  text-align: left;
  color: #2c2f33;
}

.total-value-of {
  font-size: 17px;
  margin: 0px 0px 5px 0px;
}

.blue-text {
  margin-bottom: 0px;
  color: #0099FF;
  display: flex;
  margin-top: 2px;
  font-size: 13px;
  align-items: center;
  line-height: 1.38;
}

.request-icon {
  width: 8px !important;
  height: 12px !important;
  margin-left: 4px;
  margin-right: 9px;
}

.request_blue_info {
  display: flex;
  background-color: #ECF3FE;
  padding: 10px;
  border: 1px solid #4B8CF4;
  border-radius: 5px;
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 10px;
}

.request_blue_info span {
  margin-right: 5px;
}

.request_blue_info span img {
  width: 16px;
  height: 16px;
}

.partial_payment_credit_card_info_holder {
  display: flex;
  max-width: 385px;
  margin: 15px 0px 5px 5px;
}

.partial_payment_credit_card_info {
  border: 1px solid #B9C2D3;
  border-radius: 4px;
  width: 100%;
  padding: 6px 12px;
  height: 48px;
  display: flex;
  align-items: center;
}

.id-holder {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.select-id-type {
  width: 40%;
  border-top-right-radius: unset;
  border-bottom-right-radius: unset;
  border-right: unset;
}

#input-id {
  border-left: 0 !important;
}

#input-cpf {
  display: none;
  border-left: 0 !important;
}

.telephone-holder {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.searchable-dropdown {
	max-height: 300px;
}

#phone-country-select:not(.phone-country-disabled):hover,
#billing-phone-country-select:not(.phone-country-disabled):hover {
  padding-right: 9px;
  cursor: pointer;
}

#phone-country-dropdown,
#billing-phone-country-dropdown {
	flex-basis: 100%;
	top: 53px;
	list-style: none;
	border: 1px solid #C5C5C5;
	border-radius: 4px;
	margin-top: 5px;
	padding: 8px 0px;
	display: none;
	position: absolute;
	background-color: #fff;
	width: 295px;
  box-shadow: 1px 2px 10px rgb(0 0 0 / 35%);
	z-index: 10;
	overflow: overlay;
}

#phone-country-select,
#billing-phone-country-select {
  height: 48px;
  border-top-right-radius: unset;
  border-bottom-right-radius: unset;
  border-right: unset !important;
  padding: 10px;
	padding-left: 10px;
  padding-right: 5px;
  background: url(/icons/icons_GreyDark/iconGreyDark_ArrowDown.svg);
  background-repeat: no-repeat;
  background-position-x: calc(100% + 26px);
  background-position-y: center;
  background-origin: content-box;
  background-color: #ffffff;
  display: flex;
  position: relative;
  cursor: pointer;
  border-color: #C5C5C5;
  border-right: 0px;
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-size: 14px;
	padding-right: 35px !important;
}

#phone-country-select[data-selected-icon],
#billing-phone-country-select[data-selected-icon] {
	padding-left: 35px;
}

#phone-country-select.error,
#billing-phone-country-select.error {
	border-color: #ff0000 !important;
}

.telephone-holder .selected_country {
	position: absolute;
	top: 18px;
	left: 10px;
}

.selected_country,
.billing-selected_country {
  margin-top: 0px !important;
  cursor: pointer;
}

#phone-country-select:not(.phone-country-disabled):hover+#input-phone,
#billing-phone-country-select:not(.phone-country-disabled):hover+#input-billing-phone {
  border-left: 0px !important;
  padding-left: 49px;
}

#input-phone,
#input-billing-phone {
  border-top-left-radius: unset;
  border-bottom-left-radius: unset;
  border-left: unset!important;
  height: 48px;
	padding-left: 8px;
}

#input-phone.error,
#input-billing-phone.error {
	border-color: #ff0000!important;
}

.phone-country-item,
.billing-phone-country-item {
  padding: 7px 9px;
}

.phone-country-item:hover,
.billing-phone-country-item:hover {
  background-color: #f1f1f1;
  cursor: pointer;
}

.flag-icon {
  margin-right: 7px;
  margin-top: 2px;
}

.country-name,
.billing-country-names {
  margin-right: 6px;
}

.user-phone-number:has(#phone-country-select-error:not(:empty)) #input-phone-error,
.user-billing-phone-number:has(#billing-phone-country-select-error:not(:empty)) #input-billing-phone-error {
	display: none !important;
}

#input-phone-error,
#input-billing-phone-error {
	padding-top: 5px;
	position: relative;
	transform: translateX(-40%);
  margin-bottom: 0 !important;
  width: 287px;
}

#input-phone-error {
  width: 287px;
}

#input-billing-phone-error {
  transform: translateX(-42%);
  min-width: 277px;
}

#phone-country-select-error,
#billing-phone-country-select-error {
	width: 287px;
	padding-top: 5px;
	position: relative;
}

#input-phone-error:empty {
	padding-top: 0px;
}

.telephone-holder:has(#phone-country-select-error:empty) #input-phone-error {
	padding-top: 5px;
}

label.error:empty {
	padding-top: 0 !important	;
}
.calling-number,
.billing-calling-number {
  position: absolute;
  height: 48px;
  width: 43px;
  left: 77px;
  display: flex;
  align-items: center;
  font-size: 1rem;
  line-height: 1.5;
  color: #8C99AF;
  padding-top: 0px;
}

.phone-country-disabled {
  opacity: 0.5;
  border-radius: 2px;
  border: solid 1px #d8dde8 !important;
  border-right: unset !important;
  background-color: #f6f7f9 !important;
  font-weight: 400 !important;
}

.material-textfield:has(.phone-country-disabled) .input-overlay {
	background: linear-gradient(90deg, transparent, #fafbfc) !important;
}

.material-textfield:has(#billing-phone-country-select.phone-country-disabled) .input-overlay {
  background: linear-gradient(90deg, transparent, #f6f8f9) !important;
}

.country-disabled {
  opacity: 0.5;
  border-radius: 2px;
  border: solid 1px #d8dde8!important;
  background-color: #f6f7f9!important;
}

.phone-country-disabled > .flag-icon {
  background-color: #E6E6E6;
  height: max-content;
  align-self: center;
}

/* .email-confirm {
  display: none;
} */

.pix_blue_info {
  display: flex;
  background-color: #ECF3FE;
  padding: 10px;
  border: 1px solid #4B8CF4;
  border-radius: 5px;
  margin-bottom: 20px;
}

.pix_blue_info span {
  margin-right: 5px;
}

.pix_blue_info span img {
  width: 16px;
  height: 16px;
}

.temp-hidden {
  display: none;
}


/*START MATERIAL TEXTFIELD OUTLINE*/
.material-textfield {
  position: relative;
}

.material-textfield .label-title {
  position: absolute;
  left: 0;
  top: 25px;
  transform: translateY(-50%);
  background-color: transparent;
  padding: 0 0.3rem;
  margin: 0 0.5rem;
  transition: .1s ease-out;
  transform-origin: left top;
  pointer-events: none;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #616161;
}

.material-textfield .lock-i:disabled~.label-title, .material-textfield:has(input:disabled) .label-title {
  color: #9C9C9C;
}

.material-textfield input,
.material-textfield textarea {
  outline: none;
  border: 1px solid #B9C2D3;
  border-radius: 2px;
  padding: 13.81px 16px 13.19px 16px;
  transition: 0.1s ease-out;
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  color: #273240;
  background-color: #ffffff;
  width: 100%;
  transition: border-color 0.15s ease-in-out;
}

.material-textfield input:hover:not(input[disabled], .country-disabled, .cc-not-supported-error, .phone-country-disabled),
.material-textfield textarea:hover:not(input[disabled]) {
  border: 1px solid #273240 !important;
}

#phone-country-select.phone-country-disabled,
.country-disabled,
.phone-country-disabled.selected_country,
.phone-country-disabled .selected_country {
	pointer-events: none;
}

.selected_country.flag-icon.phone-country-disabled {
	display: none;
}

.material-textfield input.error:hover:not(input[disabled], .country-disabled),
.material-textfield textarea.error:not(input[disabled]) {
  border: 1px solid #ff0000 !important;
}

.material-textfield input:focus,
.material-textfield textarea:focus {
  border-color: #273240;
}

.material-textfield input.error:focus,
.material-textfield textarea.error:focus,
.material-textfield input.cc-not-supported-error:focus,
.material-textfield input.cc-not-supported-error:hover {
  border-color: #ff0000 !important;
}

.material-textfield input:focus:not(.country-disabled)~.label-title,
.material-textfield textarea:focus~.label-title {
  color: #616161;
  top: 0;
  transform: translateY(-50%) scale(.9);
  background-color: #fff;
  font-size: 12px;
}

.material-textfield #input-id:focus~.label-title,
.material-textfield #input-cpf:focus~.label-title {
  color: #616161;
  top: 0;
  left: 0;
  transform: translateY(-50%) scale(.9);
}

input.error~.label-title,
input.error~.custom-select-label,
select.error~.label-title,
input.cc-not-supported-error~.label-title {
  color: #FF0000 !important;
}

.telephone-holder .custom-select-label {
  margin-left: 0;
}

.material-textfield input:not(:placeholder-shown)~.label-title,
.material-textfield textarea:not(:placeholder-shown)~.label-title {
  color: #616161;
  top: 0;
  transform: translateY(-50%) scale(.9);
  background-color: #fff;
  font-size: 12px;
}

.material-textfield #input-phone:not([disabled]) ~ .label-title,
.material-textfield #input-billing-phone:not([disabled]) ~ .label-title {
	color: #616161;
	top: 0;
	left: calc(-100% + 0.3rem);
	transform: translateY(-50%) scale(.9) translateX(50%);
	background-color: #fff;
	font-size: 12px;
}

.material-textfield #input-billing-phone:not([disabled]) ~ .label-title {
  left: -100%;
  transform: translateY(-50%) scale(.9) translateX(40%);
}

.material-textfield #input-id:not(:placeholder-shown)~.label-title,
.material-textfield #input-cpf:not(:placeholder-shown)~.label-title {
  color: #616161;
  top: 0;
  left: 0;
  transform: translateY(-50%) scale(.9);
}

.material-textfield input:not(:placeholder-shown)~.label-title .red-asterix,
.material-textfield #input-phone:not(.phone-country-disabled)~.label-title .red-asterix,
.material-textfield textarea:not(:placeholder-shown)~.label-title .red-asterix,
.telephone-holder:has(#input-phone:not(:placeholder-shown)) .custom-select-label .red-asterix, .telephone-holder:has(#input-phone:focus) .custom-select-label .red-asterix,
.telephone-holder:has(#input-billing-phone:not(:placeholder-shown)) .custom-select-label .red-asterix, .telephone-holder:has(#input-billing-phone:focus) .custom-select-label .red-asterix,

.personal-box_info:has(#input-id:not(.d-none):not(:placeholder-shown)) .custom-select-label .red-asterix, .personal-box_info:has(#input-id:not(.d-none):focus) .custom-select-label .red-asterix,
.personal-box_info:has(#input-cpf:not(.d-none):not(:placeholder-shown)) .custom-select-label .red-asterix, .personal-box_info:has(#input-cpf:not(.d-none):focus) .custom-select-label .red-asterix {
  display: none;
}

/* #input-birth.error~.label-title .red-asterix,#input-birth ~ .label-title .red-asterix{
  display:inline;
} */
#input-birth.valid_input ~ .label-title .red-asterix, #input-birth.valid_input_autofill ~ .label-title .red-asterix {
	display: none;
}


#input-birth.error ~ .label-title .red-asterix,#input-birth ~ .label-title .red-asterix{
	display:inline;
}

/*END MATERIAL TEXTFIELD OUTLINE*/

/* .user-country-mobile {
  display: none;
} */

#input-country,
#input-billing-country,
#input-district,
#input-billing-district {
  cursor: pointer;
  background-image: url(/icons/icons_GreyDark/iconGreyDark_ArrowDown.svg);
  background-origin: content-box;
  background-repeat: no-repeat;
  background-position-y: center;
  background-position-x: calc(100% + 54px);
  padding-right: 65px !important;
}

#input-billing-district:disabled {
  pointer-events: none;
  opacity: 0.5;
  border: solid 1px #d8dde8;
  background-color: #f6f7f9;
}

.country-dropdown,
.billing-country-dropdown,
.district-dropdown,
.billing-district-dropdown {
  list-style: none;
  border: 1px solid #C5C5C5;
  border-radius: 4px;
  margin-top: 5px;
  padding: 8px 0px;
  display: none;
  position: absolute;
  top: 48px;
  background-color: #fff;
  width: 295px;
  z-index: 10;
  overflow: overlay;
}

/* overflow need to be auto for mozila */
@-moz-document url-prefix() {

  .country-dropdown,
  .billing-country-dropdown,
  .district-dropdown,
  .billing-district-dropdown,
  #phone-country-dropdown {
    overflow: auto;
  }
}

.country-dropdown-option,
.billing-country-dropdown-option,
.district-dropdown-option,
.billing-district-dropdown-option,
.not-found {
  transition: 0.15s ease-in-out;
  padding: 5px 16px;
  font-size: 13px;
  line-height: 18px;
}

.country-dropdown-option,
.billing-country-dropdown-option,
.district-dropdown-option,
.billing-district-dropdown-option {
  cursor: pointer;
}

.not-found {
  color: #9C9C9C;
}

.country-dropdown-option:hover,
.billing-country-dropdown-option:hover,
.district-dropdown-option:hover,
.billing-district-dropdown-option:hover,
.country-dropdown-option.selected,
.billing-country-dropdown-option.selected,
.phone-country-item.selected,
.district-dropdown-option.selected,
.billing-district-dropdown-option.selected {
  background-color: #f5f5f5;
}

.searchable-dropdown::-webkit-scrollbar {
  width: 12px;
}

.searchable-dropdown::-webkit-scrollbar-thumb {
  background: transparent;
  border-left: 4px solid rgba(197, 197, 197, 1);
  height: 150px;
}

.searchable-dropdown::-webkit-scrollbar-track {
  background: transparent;
}

.user-country .input-overlay,
.user-billing-country .input-overlay,
.user-district .input-overlay,
.user-billing-district .input-overlay {
  content: '';
  position: absolute;
  width: 40px;
  height: 40px;
  background: linear-gradient(90deg, transparent, #ffffff);
  top: 1px;
  right: 55px;
  pointer-events: none;
}

.user-billing-district:has(.form-control:disabled) .input-overlay {
  background: linear-gradient(90deg, transparent, #f6f7f9);
}

.user-billing-district:has(.form-control:disabled) .form-control:disabled {
  background: #f6f8f9;
}

.user-phone-number .phone-country-select-input .input-overlay,
.user-billing-phone-number .billing-phone-country-select-input .input-overlay {
  content: '';
  position: absolute;
  width: 20px;
  height: 40px;
  background: linear-gradient(90deg, transparent, #ffffff);
  top: 7px;
  right: 35px;
  pointer-events: none;
  z-index: 1;
}

.user-phone-number .material-textfield.phone-country-select-input {
	width: 40%;
}

.user-billing-phone-number .material-textfield.billing-phone-country-select-input {
	width: 42%;
}

.user-phone-number .material-textfield.phone-input {
	width: 60%;
}

.user-billing-phone-number .material-textfield.billing-phone-input {
  width: 58%;
}

.vl-input {
	position: absolute;
  width: 1px;
  background-color: #C5C5C5;
  height: 19px;
  right: 0;
  top: 14px;
}

.id-holder .vl-input {
  left: 40%;
}

.user-phone-number:has(#input-phone.error) #phone-country-select,
.user-phone-number:has(#phone-country-select.error) #input-phone,
.user-billing-phone-number:has(#input-billing-phone.error) #billing-phone-country-select,
.user-billing-phone-number:has(#billing-phone-country-select.error) #input-billing-phone,
.id-holder:has(.material-id:not(.d-none) #input-id.error) #input-id-type,
.id-holder:has(.material-cpf:not(.d-none) #input-cpf.error) #input-id-type,

.id-holder:has(#input-id:not(.d-none).error) #input-id-type,
.id-holder:has(#input-cpf:not(.d-none).error) #input-id-type {
  border-color: #ff0000 !important;
}

.user-phone-number:has(#input-phone.error) .label-title,
.user-phone-number:has(#phone-country-select.error) .label-title,
.user-billing-phone-number:has(#input-billing-phone.error) .label-title,
.user-billing-phone-number:has(#billing-phone-country-select.error) .label-title,
.id-holder:has(.material-id:not(.d-none) #input-id.error) .label-title,
.id-holder:has(#input-id:not(.d-none).error) .label-title,
.id-holder:has(.material-cpf:not(.d-none) #input-cpf.error) .label-title,
.id-holder:has(#input-cpf:not(.d-none).error) .label-title {
  color: #ff0000 !important;
}

#input-id.error.d-none + #input-id-error,
#input-cpf.error.d-none + #input-cpf-error {
  display: none;
}

.user-phone-number:has(#input-phone.error) .custom-select-label,
.user-phone-number:has(#phone-country-select.error) .custom-select-label,
.user-billing-phone-number:has(#input-billing-phone.error) .custom-select-label,
.user-billing-phone-number:has(#billing-phone-country-select.error) .custom-select-label,
.id-holder:has(.material-id:not(.d-none) #input-id.error) .custom-select-label,
.id-holder:has(.material-cpf:not(.d-none) #input-cpf.error) .custom-select-label,
.id-holder:has(#input-id:not(.d-none).error) .custom-select-label,
.id-holder:has(#input-cpf:not(.d-none).error) .custom-select-label,
.personal-box_info:has(#input-id:not(.d-none).error) .custom-select-label,
.personal-box_info:has(#input-cpf:not(.d-none).error) .custom-select-label {
  color: #ff0000 !important;
}


#input-country:hover:not(.country-disabled),
#input-country:focus:not(.country-disabled),
#input-billing-country:hover:not(.country-disabled),
#input-billing-country:focus:not(.country-disabled),
.user-country:has(.grey-clear-field-icon:hover) #input-country:not(.country-disabled),
.user-billing-country:has(.grey-clear-field-icon:hover) #input-billing-country,
#input-district:not(:disabled):hover,
#input-district:not(:disabled):focus,
#input-billing-district:not(:disabled):hover,
#input-billing-district:not(:disabled):focus,
.user-district:has(.grey-clear-field-icon:hover) #input-district,
.user-billing-district:has(.grey-clear-field-icon:hover) #input-billing-district {
  border: 1px solid #273240;
}

#input-phone:not(:disabled):hover,
#phone-country-select:not(.phone-country-disabled):hover,
#input-phone:focus,
.selected_country:hover #input-phone,
.selected_country:hover #phone-country-select:not(.phone-country-disabled),
.id-holder:has(.vl-input:hover) #input-id-type,
.id-holder:has(.vl-input:hover) #input-cpf,
.user-phone-number:has(.grey-clear-field-icon:hover) #input-phone,
.user-phone-number:has(.grey-clear-field-icon:hover) #phone-country-select:not(.phone-country-disabled),
.user-phone-number:has(.vl-input:hover) #input-phone,
.user-phone-number:has(.vl-input:hover) #phone-country-select:not(.phone-country-disabled),
.user-billing-phone-number:has(.grey-clear-field-icon:hover) #input-billing-phone,
.user-billing-phone-number:has(.grey-clear-field-icon:hover) #billing-phone-country-select,
.user-billing-phone-number:has(.vl-input:hover) #input-billing-phone,
.user-billing-phone-number:has(.vl-input:hover) #billing-phone-country-select,
#phone-country-select:not(.phone-country-disabled):focus,
.user-phone-number:has(#phone-country-select:not(.phone-country-disabled):hover) #input-phone,
.user-phone-number:has(#input-phone:hover) #phone-country-select:not(.phone-country-disabled),
.user-phone-number:has(#phone-country-select:not(.phone-country-disabled):focus) #input-phone,
.user-phone-number:has(#input-phone:focus) #phone-country-select:not(.phone-country-disabled),
.user-billing-phone-number:has(#billing-phone-country-select:not(.phone-country-disabled):hover) #input-billing-phone,
.user-billing-phone-number:has(#input-phone:hover) #billing-phone-country-select:not(.phone-country-disabled),
.user-billing-phone-number:has(#billing-phone-country-select:not(.phone-country-disabled):focus) #input-billing-phone,
.user-billing-phone-number:has(#input-billing-phone:focus) #billing-phone-country-select:not(.phone-country-disabled) {
  border-color: #273240;
}


#input-cpf:not(:disabled):hover,
#input-cpf:not(:disabled):focus,
#input-id:not(:disabled):hover,
#input-id:not(:disabled):focus,
#input-id-type:not(:disabled):hover,
#input-id-type:not(:disabled):focus,
.id-holder:has(#input-cpf:not(:disabled):hover) #input-id-type,
.id-holder:has(#input-cpf:not(:disabled):focus) #input-id-type,
.id-holder:has(#input-id:not(:disabled):hover) #input-id-type,
.id-holder:has(#input-id:not(:disabled):focus) #input-id-type,
.id-holder:has(#input-id-type:not(:disabled):hover) #input-cpf,
.id-holder:has(#input-id-type:focus) #input-cpf,
.id-holder:has(#input-id-type:not(:disabled):hover) #input-id,
.id-holder:has(#input-id-type:not(:disabled):focus) #input-id,
.id-holder:has(.vl-input-cpf:hover) #input-id-type,
.id-holder:has(.vl-input-cpf:hover) #input-id,
.id-holder:has(.vl-input-cpf:hover) #input-cpf {
  border-color: #273240;
}

.material-textfield:has(#input-country:not(.country-disabled)):hover .grey-clear-field-icon,
.material-textfield:has(#input-country.opened) .grey-clear-field-icon,
.material-textfield:has(#input-billing-country.opened) .grey-clear-field-icon,
.material-textfield:has(#input-billing-country):hover .grey-clear-field-icon,
.material-textfield:has(#phone-country-select:not(.phone-country-disabled)):hover .grey-clear-field-icon,
.material-textfield:has(#phone-country-select.opened) .grey-clear-field-icon,
.material-textfield:has(#billing-phone-country-select):hover .grey-clear-field-icon,
.material-textfield:has(#billing-phone-country-select.opened) .grey-clear-field-icon,
.material-textfield:has(#input-district):hover .grey-clear-field-icon,
.material-textfield:has(#input-billing-district):hover .grey-clear-field-icon {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.grey-clear-field-icon {
  background: transparent;
  width: 16px;
  height: 16px;
  border-radius: 16px;
  line-height: 1;
  position: absolute;
  top: 16px;
  z-index: 2;
  display: none;
  cursor: pointer;
  transition: 0.2s ease-in-out;
}

.material-textfield:has(input:disabled) .grey-clear-field-icon {
  display: none !important;
}

.user-country .grey-clear-field-icon,
.user-billing-country .grey-clear-field-icon,
.user-district .grey-clear-field-icon,
.user-billing-district .grey-clear-field-icon,
.telephone-holder .phone-country-select-input .grey-clear-field-icon,
.telephone-holder .billing-phone-country-select-input .grey-clear-field-icon {
  right: 30px;
}

.telephone-holder .phone-country-select-input .grey-clear-field-icon, 
.telephone-holder .billing-phone-country-select-input .grey-clear-field-icon {
  right: 25px;
}

.grey-clear-field-icon:hover {
  background: #EAEAEA;
}

.cep_container{
  display:flex;
  flex-wrap: wrap;
}


.personal-box_info {
  /* padding: 0px 30px 0px 0px !important; */
  padding: 0px 15px ;
  margin-bottom: 20px;
}

.input-left-padding{
  padding-left:5px !important;
}

.input-right-padding{
  padding-right:5px !important;
}

.birth-container-other-countries{
  padding-left: 5px !important;
  padding-right: 15px !important;
}

.cep_container .personal-box_info {
  box-sizing: border-box;
}

.cep_container .personal-box_info.full-width {
  flex: 1 1 100%; /* O campo que deve ocupar 100% da largura */
}

.cep_container input{
  border-radius: 4px;
  border-color: #C5C5C5;
}

/* #different-billing .personal-box_info {
  padding: 0px 10px;
} */


#booking-for-other .personal-box_info {
  padding: 0px 10px;
}

#payments .payment-box-info {
  margin-bottom: 21px;
  padding: 0px 15px;
}

.personal-details-row,
.payment-details-row {
  margin: 0px -5px;
}

.valid_input:not(#input-birth):not(#input-birth-additional):not(#input-id-type) {
  background-image: url(../../v4/icons/valid.svg);
  background-position: center right;
  background-repeat: no-repeat;
  background-origin: content-box;
  padding-right: 12px !important;
  transition: unset !important;
  transition: border 0.1s ease-out !important;
}

.button-grn.valid_input {
  padding-right: 20px !important;
  padding-left: 20px !important;
}

input:-internal-autofill-selected.valid_input {
  background-color: red !important;
  background-image: url(../../v4/icons/green_ok.png) !important;
}



.custom-select-label {
  position: absolute;
  color: #616161;
  top: 0;
  left: 0;
  transform: translateY(-50%) scale(.9);
  background-color: #fff;
  font-size: 12px;
  padding: 0 0.3rem;
  margin: 0 0.5rem;
  pointer-events: none;
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  width: max-content;
}

.month-dp-custom-select-label {
  margin: 0 1.1rem !important;
}

.month-cc-custom-select-label {
  margin: 0 0.2rem !important;
}
.user-billing-phone-number:has(.phone-country-disabled) .custom-select-label {
  background-color: #f8f9fa;
}

.expire-separator {
  color: #273240;
  opacity: 0.6;
  font-size: 16px;
  margin: 0px 4px;
}

.cvv-icon-holder {
  display: flex;
  align-items: center;
  margin-left: 10px;
  max-height: 48px;
}

.cvv-icon-holder .t-tip__text {
  font-weight: 300;
  top: 40px;
}

.cvv-icon-holder .t-tip__text div {
  margin-top: 10px;
}

.cvv-icon-holder .t-tip__text div img:nth-child(2) {
  display: none;
}


#different-billing .row {
  padding: 0px 5px;
}

#booking-for-other .row {
  padding: 0px 5px;
}

.month-box {
  margin-right: 10px;
}

#input-direct-card,
#input-cc-card {
  padding-right: 12px !important;
  transition: background 0s;
}

.card-info-icon-holder {
  max-height: 48px;
  display: flex;
  align-items: center;
}

.cc-payment-hr-line {
  margin: 20px 5px 30px 5px;
  width:100%;
}

.cc-payment-hr-line.p-p{
  width: unset;
}

.addicional-personal-data{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.ceplink{
  display:flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
  padding-top: 15px !important;
  max-height: 48px;
  margin-bottom: unset;
}
.ceplink a{
  font-family: Roboto;
  font-size: 14px;
  font-weight: 700;
  line-height: 16.41px;
  text-align: left;
  color:#3D90FF;
}

.payment-box-cc-name {
  margin-bottom: 0px !important;
}

.cvv-mobile-bubble {
  display: none;
}

.input-special_request_holder {
  position: relative;
  margin-bottom: 18px;
}

#input-special_request_comment {
  padding: 15px 20px 22px 16px;
}

.transfer_location_holder {
  flex: 0 1 calc(50%);
}

#input-id-type {
  white-space: nowrap;
  overflow: hidden !important;
  text-overflow: ellipsis;
  padding-right: 20px !important;
  background-position: right -10px center;
  border-right: 0px !important;
  border-bottom-right-radius: 0px !important;
  border-top-right-radius: 0px !important;
}

#input-id-type+.t-tip>.t-tip__text {
  position: fixed;
}

.gray-direct-name-label,
.gray-cc-name-label {
  color: #9C9C9C;
  font-size: 12px;
  margin-top: 3px;
  display: inline-block;
}


.error~.gray-direct-name-label,
.error~.gray-cc-name-label {
  display: none !important;
}

.valid_input~.gray-direct-name-label,
.valid_input~.gray-cc-name-label {
  display: block !important;
}

.namesurname-input-field {
  width: 47%;
}

.room-info-inputs-names {
    justify-content: space-between;
}

.book-now-disabled {
  background-color:#D8DDE8 !important;
}

.book-now-container {
  position: relative;
}

@media(max-width: 1200px) {
  .order-input {
    padding-right: 20px;
  }
}

@media(max-width: 992px) {

  .loyalty-infocard-banner {
    padding: 15px;
  }

  #phone-country-dropdown, #billing-phone-country-dropdown, .country-dropdown, .billing-country-dropdown, .district-dropdown, .billing-district-dropdown {
    width: 270px;
  }

  /* Quick fix for date input */


  input[type="date"]::-webkit-inner-spin-button,
  input[type="date"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
    opacity: 0 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }

  input[type="date"] {
    -webkit-appearance: none;
  }

  /* end of fix */

  .form-group {
    margin-bottom: 9.7px;
  }

  .material-textfield-margin {
    margin-bottom: 24px;
  }

  .nav-link {
    width: 24%;
    word-break: inherit;
    padding: 0px;
    padding-top: 10px;
    word-break: inherit;
  }

  #nav-tabContent {
    padding: 24px 10px 15px 10px;
  }

  .bank-description {
    padding-top: 10px;
    padding-left: 20px;
    padding-right: 20px;
    display: block;
  }

  .bank-spacer {
    margin-left: 10px;
    margin-right: 10px;
  }

  .bank-icon-string-holder {
    display: flex;
    align-items: flex-start;
  }

  .partial_blue_info {
    margin-left: 5px;
    margin-right: 0px;
  }

  #orderinfobox .side {
    width: 100%;
  }
  
  .creditcard-installment-plan {
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 15px;
    margin-bottom: 24px;
  }

  .installment-plan {
    margin-left: 15px;
    padding-bottom: 3px;
  }

  .order-info, .footer {
    display: flex;
  }

  .informations-box-holder {
    display: flex;
  }

  .information-header {
    padding: 0px;
  }

  .mobile-info-div {
    display: block;
    order: 1;
    margin-top: 12px;
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: bold;
    line-height: 26px;
    letter-spacing: -0.3px;
    text-align: left;
    color: #2c2f33;
  }

  .cover-details,.cover .w-100 {
      margin-top: unset!important;
  }
  
  .order-info {
    order: 2;
    max-width: unset;
  }
  
  .almost-done-div {
    order: 3;
    margin-top: 20px;
    margin-bottom: 15px;
  }

  .order-input {
    order: 4;
    padding-right: 0px;
    max-width: unset;
  }

  .mobile-resume-div {
    display: block;
  }

  #loading .gooey {
      width: auto;
      background: transparent;
  }
  #loading .gooey .dot,#loading .dots span{

    filter: blur(0px);
}

  .button-grn {
    width: 100%;
    max-width: 290px;
    margin-left: auto;
    margin-right: auto;
  }

  .payment-button-holder {
    text-align: center;
  }

  .personal-box {
    padding: 15px 15px 20px 15px;
    margin-bottom: 15px;
  }

  .additional-grey-box {
    display: none;
  }

  .section-padding-bottom {
    padding-bottom: 50px;
  }

  .first {
    margin-left: 0;
  }

  .month-year-cvv-holder {
    display: flex;
    margin-bottom: 20px;
    justify-content: flex-start;
    gap: 10px;
  }

  #input-cc-month,
  #input-cc-year,
  #input-cc-cvv {
    width: 100%;
  }

  .cvv-box {
    width: 100%;
    margin-bottom: 0px;
    max-width: unset;
  }

  .month-box, .year-box {
    margin-right: 0px;
    width: 50%;
  }

  .reservation-button-holder {
    text-align: center;
  }

  #aditional {
    display: none;
  }

  .partial_payments_blue_info {
    margin-right: 0px;
    margin-left: 0px;
  }

  .paypal_green_info {
    margin-right: 15px;
    margin-left: 15px;
  }

  .input-padding {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 15px;
  }

  /*.direct_green_info {
    margin-left: 15px;
    margin-right: 15px;
  }*/

  .modal-details {
    height: 100%;
    margin: 10px;
  }

  .checkbox-custom-label {
    color: #212529;
  }

  #input-cc-month,
  #input-direct-month {
    width: 100%;
  }

  #input-cc-year,
  #input-direct-year {
    width: 100%;
  }

  .personal-info {
    margin-bottom: 24px;
  }

  .modal-button-desktop {
    display: none
  }

  .modal-button-phone {
    display: inline-block;
  }

  .modal-elipse {
    background: #B2B1B0;
    position: fixed;
    top: 19px;
    right: 14px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    z-index: 10;
  }

  .details-contain {
    padding-top: 10px;
  }

  /* .details-price-total {
    font-size: 17px;
  } */

  .partial_payment_credit_card_info_holder {
    padding: 0;
  }

  .partial_payment_credit_card_info {
    font-size: 12px;
  }

  .month-year-holder {
    width: 65%;
  }

  .cvv-box-container {
    width: 35%;
  }

  .month-year-holder > .d-flex {
    gap: 10px;
  }

  .partial_blue_info_holder {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 10px;
  }

  .card-info-icon-holder {
    display: none;
  }

  .cvv-icon-holder {
    display: none;
  }

  #payments {
    padding: 15px;
  }

  #payments .payment-box-info {
    padding: 0px 5px;
    margin-bottom: 24px;
  }

  .mobile-contain {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .personal-box_info {
    padding: 0px 5px;
    margin-bottom: 20px
  }

  .ceplink{
    margin-top: -15px;
    padding-top: 0px !important;
  }

  .birth-container-other-countries{
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  .cep_container .personal-box_info:last-child{
    margin-bottom:0px;
  }

  #different-billing .personal-box_info {
    padding: 0px;
  }

  #different-billing {
    max-width: unset;
    margin-left: unset;
  }

  .green-message {
    margin-top: 0px;
    margin-bottom: 5px;
    margin-left: 0px;
    margin-right: 0px;
  }

  .personal_billing .green-message {
    margin-left: 0px;
  }

  .billing-rights {
    padding: 24px 10px 20px 10px;
  }

  .rooms-infos {
    padding: 15px 15px 20px 15px;
    max-width: unset;
    margin-left: unset;
  }

  #booking-for-other .personal-box_info {
    padding: 0px;
  }

  .personal-box-filled {
    padding: 15px 15px 20px 15px;
    margin-bottom: 15px;
  }

  .nav-item.nav-link {
    width: 71px;
    height: 81px;
  }

  .nav-item.nav-link p {
    font-size: 12px;
  }

  .payment-box-cc-name {
    margin-bottom: 24px !important;
  }

  .cc-payment-hr-line {
    margin: 15px 5px 24px 5px;
  }

  .partial_payment_credit_card_info_holder {
    margin-bottom: 10px !important;
  }

  .partial_payments .partial_payment .payment-box-info {
    margin-bottom: 10px !important;
  }

  .cvv-mobile-bubble {
    display: flex;
    align-items: center;
    padding: 11px 15px !important;
    background-color: #ECF3FE;
    margin-left: 5px;
    margin-right: 5px;
    display: none;
  }

  .cvv-mobile-bubble img:nth-child(2) {
    display: none;
  }

  #nav-creditcard .cvv-mobile-bubble {
    margin-bottom: 0px !important;
  }

  .cvv-mobile-bubble-img {
    margin-right: 10px;
  }

  .cvv-mobile-bubble-text {
    font-size: 12px;
    line-height: 16px;
    color: #2C2F33;
    font-size: 400;
    padding: 10px;
  }

  .pointer {
    height: 20px;
    width: 20px;
    background: #ECF3FE;
    transform: rotate(45deg);
    border-radius: 0 0 12px 0;
    position: absolute;
    right: 25px;
    top: -10px;
  }

  .accepttos {
    margin-left: 15px;
    margin-top: 15px;
  }

  .accepttos label.check {
    margin-bottom: 0px;
  }

  #book-now {
    margin-top: 15px;
  }

  .transfer_location_holder {
    flex: 0 1 1;
    margin-bottom: 10px;
  }

  .special_request,
  .transfer,
  .loyalty,
  .activity {
    padding: 20px 15px 15px 15px;
  }

  .email-box,
  .first-name,
  .user-country-mobile,
  .user-cpf {
    margin-right: 0px;
  }


}



@media(max-width: 600px) {

  .cvv-mobile-bubble img {
    width: 50%;
  }

}