.sv_alert_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transition: all, .2s;
  -webkit-transition: all, .2s;
  -moz-transition: all, .2s;
}

.woocommerce-mini-cart__buttons .wc-forward:not(.checkout), .wc_payment_method.payment_method_xpay_npg_bancomatpay, .woocommerce-SavedPaymentMethods-new {
  display: none !important;
}

.sv_thankyou_bank_text .wc-bacs-bank-details {
  list-style-type: none;
}

.cart-collaterals .wc-proceed-to-checkout {
  display: none !important;
}

#payment .payment_methods .nexixpay-loghi-container {
  display: ruby-text;
}

.wc-bacs-bank-details-heading {
  font-size: 27px !important;
}

.sv_scalapay_logo_bow {
  display: none;
  width: 102px;
  margin-top: 20px;
}

#billing_conditions-description {
  text-align: left;
  display: block !important;
  font-size: 18px;
  margin-top: 12px;
  text-decoration: underline;
}

.sv_soon {
  margin-top: 15px;
  margin-bottom: 0;
}

.sivola_pagamento_single_method .sv_scalapay_logo_bow {
  display: inline-block;
  margin-top: 0 !important;
  vertical-align: middle;
}

.sivola_pagamento_single_method:has(input[disabled="disabled"]){
  opacity: 0.75;
}

.sivola_pagamento_single_method input[disabled="disabled"] + .sv_checkbox_control {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
}

.sivola_pagamento_single_method .sv_o, .sivola_pagamento_single_method img:not(.sv_scalapay_logo_bow) {
  display: none;
}

.sivola_pagamento_single_method .sp-checkout-installments__title {
  font-weight: 500;
  display: block;
  margin-top: 18px;
  font-size: 16px;
}

.sivola_pagamento_single_method .sv_custom_scalapay_info_icon {
  top: 14px;
}

.sivola_pagamento_single_method[data-selected="true"] .sv_custom_scalapay_info_icon rect, .sivola_pagamento_single_method[data-selected="true"] .sv_custom_scalapay_info_icon path {
  stroke: white;
}

.ywgc_enter_code + ul.woocommerce-error {
  display: none !important;
}

.sv_alert_modal {
  position: absolute;
  transform: translate(-50%, -50%);
  top: -200%;
  left: 50%;
  background-color: #00AA8E;
  color: white;
  padding: 34px 24px;
  border-radius: 10px;
  width: 500px;
  max-width: 90%;
  transition: all, .2s;
  -webkit-transition: all, .2s;
  -moz-transition: all, .2s;
}

.woocommerce-form-login-toggle {
  display: none;
}

.sv_coupon_gc_container.sv_coupon_gift_cards_container {
  display: none !important;
}

.sv_alert_overlay.sv_visible {
  opacity: 1;
  visibility: visible;
}

.sv_alert_modal_choose_trip {
  display: block;
  margin-top: 19px;
  padding: 20px 10px;
  border-radius: 10px;
  background-color: white;
  color: #00aa8e;
  font-weight: bold;
  cursor: pointer;
}

.wc_payment_methods.payment_methods.methods {
  list-style-type: none;
}

.sv_alert_overlay.sv_visible .sv_alert_modal {
  top: 50%;
}

.sv_alert_modal h3, .sv_alert_modal h5 {
  color: white;
}

.sivola_replace_documents {
  cursor: pointer;
}

.sv_alert_overlay_inner {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  z-index: 99;
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  top: 0;
  left: 0;
}

.sv_alert_overlay_inner.sv_visible {
  opacity: 1;
  visibility: visible;
}

.sv_modal_close {
  background-color: rgb(171, 32, 32);
  color: white;
  display: block;
  margin-top: 19px;
  padding: 20px 10px;
  border-radius: 10px;
  font-weight: bold;
  cursor: pointer;
}

@media screen and (max-width: 850px){
  .sv_alert_modal {
    height: auto;
    width: 100%;
  }

  .thwmsc-tab:not(.tab-active) {
    display: none;
  }

  .thwmsc-tab {
    width: 50% !important;
    margin-left: 25% !important;
  }

  .sivola_user_passenger_db {
    margin-bottom: 8px;
  }

  .sv_da_pagare_1 {
    margin-bottom: 18px;
    margin-top: 10px;
  }

  .sivola_checkout_single_document {
    margin-bottom: 34px;
  }

  .sivola_checkout_single_document label {
    line-height: 29px;
    font-size: 15px;
  }

  .thwmsc-tab-panel.cart .cart-collaterals th, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th {
    font-size: 20px !important;
    line-height: 26px;
  }

  .sivola_accessorio_price {
    margin-bottom: 8px;
  }

  .sv_single_a_attachment {
    margin-bottom: 12px;
  }
}

.thwmsc-btn, .woocommerce-account-fields, .ywgc_have_code, .thwmsc-tab-panel .woocommerce-checkout-payment, .woocommerce-MyAccount-navigation-link--downloads, .woocommerce-MyAccount-navigation-link--payment-methods {
  display: none !important;
}

.sivola_new_account_form.sivola_show_form {
  display: block;
}

.sivola_new_account_form {
  margin-top: 24px;
  text-align: left;
  display: none;
}

.sivola_new_account_form #sivola_login_password {
  height: 52px;
}

.sivola_notice {
  text-align: left;
  color: #27AE60;
  padding: 18px 24px;
  border: 1px solid #BDBDBD;
  border-radius: 10px;
  margin-bottom: 24px;
}

.dashboard-links {
  margin-left: 20%;
  margin-top: 48px;
}

@media screen and (max-width: 850px){
  .dashboard-links {
    margin-left: 0;
  }

  .dashboard-links li {
    width: 100% !important;
  }
}

.sivola_create_new_account .sv_checkbox_group {
  text-align: left;
}

.sivola_create_new_account .sv_checkbox_group label {
  display: inline-block;
  padding-top: 10px;
}

.sivola_hidden_notice {
  display: none;
  opacity: 0;
  visibility: hidden;
}

.sivola_notice p {
  color: #27AE60;
}

.sivola_notice p:last-child {
  margin-bottom: 0;
  color: #121212;
  margin-top: 16px;
}

.sivola_notice img {
  margin-right: 8px;
}

/* DOCUMENTS */

.sivola_final_step_documents {
  margin-top: 42px;
}

.sivola_checkout_single_document {
  margin-bottom: 18px;
}

.sivola_checkout_single_document a {
  font-weight: bold;
  text-decoration: underline;
}

/* */

.sv_checkbox_group {
  width: 100%;
  text-align: right;
}

input[type=checkbox].sv_checkbox{
  box-sizing: border-box;
  font-size: 1rem;
  line-height: 1.5;
  padding: 10px !important;
  border: 1px solid #ececec;
  outline: 0;
  width: 35px !important;
  height: 35px !important;
  border-radius: 4px;
  margin: 6px 5px;
  cursor: pointer;
  background-color: transparent;
  opacity: 0 !important;
  position: absolute !important;
  z-index: 2;
}

.sv_checkbox_control {
  position: relative !important;
  width: 34px !important;
  height: 34px !important;
  margin-right: 6px !important;
  margin-top: 2px !important;
  border-radius: 4px !important;
  border: 1px solid rgba(0, 0, 0, 0.6) !important;
  vertical-align: top !important;
  display: inline-block;
  background-color: white !important;
  cursor: pointer !important;
  margin-bottom: 4px !important;
}

.sv_checkbox:checked + .sv_checkbox_control:after {
  content: '';
  display: inline-block;
  position: absolute;
  left: 10px;
  top: 2px;
  transform: rotate(45deg);
  height: 22px;
  width: 14px;
  border-bottom: 5px solid #00AA8E;
  border-right: 5px solid #00AA8E;
}

.sv_checkbox_control + label {
  padding-top: 3px;
  font-size: 16px;
}

.sv_checkbox_control {
  transform: scale(0.75);
}

/* THANK YOU */

.sv_thankyou_container {
  margin-top: 82px !important;
  margin-bottom: 82px !important;
}

.sv_thankyou_text {
  margin-top: 28px;
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  line-height: 41px;
}

.sv_thankyou_text h3 {
  color: #212121;
}

.sv_thankyou_text h4 {
  text-align: center;
}

.sv_thankyou_text p {
  font-size: 24px;
}

@media screen and (max-width: 1000px){
  .sv_thankyou_container {
    margin-top: 52px !important;
    margin-bottom: 52px !important;
  }

  .sv_thankyou_text {
    width: 90%;
  }
}

#billing_is_company_field:has(input:checked) {
  margin-bottom: 28px;
}

/* */

.sv_nav_button, label.sv_nav_button_passengers {
  padding-top: 10px;
  padding-right: 22px;
  padding-bottom: 10px;
  padding-left: 22px;
  color: #ffffff !important;
  background-color: #00aa8e !important;
  border-color: #d5d5d5 !important;
  border-style: none !important;
  cursor: pointer;
  border-radius: 10px;
  margin-top: 18px;
  text-transform: none;
}

.sv_nav_button {
  border-color: #00aa8e !important;
  border: 2px solid #00aa8e !important;
}

.sv_nav_button.sv_nav_button_prev {
  color: #00AA8E !important;
  background-color: white !important;
}

.sv-single-input-error, .sv_incorrect_code {
  text-align: left;
  font-size: 13px;
  color: red;
  margin-bottom: 22px;
}

#billing_email_field .sv-single-input-error {
  margin-bottom: 0;
}

#billing_email_field .sv-single-input-error:has(span) {
  margin-top: 12px;
}

label.sv_nav_button_passengers {
  height: 50px;
  line-height: 30px;
  width: auto;
  display: inline-block;
  margin-top: 1px;
  position: absolute;
}

label.sv_nav_button_passengers.previous {
  left: 0;
  right: unset;
}

.sv_nav_button:hover, label.sv_nav_button_passengers:hover {
  color: #ffffff !important;
  background-color: #07c4a5 !important;
}

.sv_nav_button[disabled="disabled"]{
  cursor: default;
  opacity: 0.6;
}

/* CART */

.sivola_cart_single_item {
  -webkit-box-shadow: 0px 5px 10px -2px rgba(18,18,18,0.35);
  box-shadow: 0px 5px 10px -2px rgba(18,18,18,0.35);
  border-radius: 10px;
  display: flex;
}

.sivola_cart_single_item_img, .sivola_cart_single_item_content {
  display: inline-block;
}

.sivola_cart_single_item_img {
  width: 20%;
  margin-right: 3.5%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  height: auto;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

.sivola_cart_single_item_content {
  display: inline-block;
  width: 75%;
  padding: 24px;
  text-align: left;
}

.sivola_cart_single_item_content .product-name {
  font-size: 32px;
  color: #212121;
  font-weight: bold;
  width: 70%;
  display: inline-block;
}

.sivola_cart_single_item_content .product-price {
  display: inline-block;
  vertical-align: top;
  text-align: right;
  width: 28%;
}

.sivola_cart_single_item_content .product-price span {
  color: #00AA8E;
  font-size: 30px;
  font-weight: bold;
}

.sivola_cart_single_item_data {
  width: 100%;
  margin-top: 14px;
}

.sivola_for_n_passengers {
  font-weight: bold;
  color: #00AA8E;
  margin-bottom: 24px;
  margin-top: 20px;
}

.sivola_cart_single_item_data svg {
  margin-right: 5px;
}

.sivola_cart_single_item_data span {
  font-size: 16px;
  vertical-align: super;
  font-weight: 500;font-size: 16px;
}

.sivola_cart_single_item_data_first, .sivola_cart_single_item_data_second {
  display: inline-block;
}

.sivola_cart_single_item_data_second a {
  text-decoration: underline;
}

.sivola_cart_single_item_data_first {
  margin-right: 22px;
}

.spq_1, .spq_2 {
  display: inline-block;
  width: 49%;
}

.spq_2 .qty {
  background-color: transparent;
  box-shadow: none;
  border: none;
  font-weight: bold;
}

.spq_2 {
  text-align: right;
}

body form .spq_2 .quantity input.ux-quantity__button {
  background-color: white !important;
  border-radius: 50%;
  border-top-left-radius: 50% !important;
  border-top-right-radius: 50% !important;
  border-bottom-left-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
  border-color: #00AA8E !important;
  width: 38px;
  height: 39px !important;
  line-height: 27px;
  min-height: 0 !important;
  border-width: 2px !important;
  color: #00AA8E !important;
  font-weight: bold !important;
  padding: 0px !important;
}

body form .spq_2 .quantity input.ux-quantity__button:hover {
  background-color: #00AA8E !important;
  color: white !important;
}

body form .spq_2 .quantity input.ux-quantity__button.minus {
  border-right: 2px solid !important;
}

body form .spq_2 .quantity input.ux-quantity__button.minus:hover {
  border-right: 2px solid #00AA8E !important;
}

body form .spq_2 .quantity input.ux-quantity__button.plus {
  border-left: 2px solid !important;
}

body form .spq_2 .quantity input.ux-quantity__button.plus:hover {
  border-left: 2px solid #00AA8E !important;
}

button.svu_____qq22, .woocommerce-cart-form .button-continue-shopping {
  display: none;
}

/* COUPON */

.sv_coupon_gc_container {
  margin: 42px auto !important;
  display: block !important;
  -webkit-box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  border-radius: 10px;
  padding: 32px 28px;
  text-align: left;
}

form.woocommerce-form-coupon.has-border.is-dashed {
  display: none !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle {
  display: none !important;
}

.sv_coupon_gc_container .coupon div, .sv_coupon_gc_container.coupon div {
  display: inline-block;
  vertical-align: middle;
}

.sv_coupon_1 {
  font-size: 24px;
  width: 25%;
}

.sv_coupon_2 {
  width: 47.5%;
  margin-left: 2.5%;
}

.sv_coupon_2 input {
  margin-top: 0 !important;
  height: 47px !important;
}

.sv_coupon_3 {
  width: 20%;
  margin-left: 2.5%;
}

.sv_coupon_3 button {

}

.thwmsc-tab-panel.cart .cart-collaterals:not(.large-12), .thwmsc-tab-panel.order_review .svc__qzhl_____2:not(.large-12) {
  -webkit-box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  border-radius: 10px;
  padding: 32px 28px;
}

.thwmsc-tab-panel.cart .cart-collaterals th, .thwmsc-tab-panel.cart .cart-collaterals td, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th, .thwmsc-tab-panel.order_review .svc__qzhl_____2 td {
  border: none !important;
  height: 60px;
  font-size: 24px !important;
}

.thwmsc-tab-panel.cart .cart-collaterals table, .thwmsc-tab-panel.order_review .svc__qzhl_____2 table {
  border-collapse: separate;
  border-spacing: 0;
}

.thwmsc-tab-panel.order_review .svc__qzhl_____2 {
  margin-top: 42px;
}

.thwmsc-tab-panel.order_review .svc__qzhl_____2 th {
  text-transform: none;
  font-weight: normal;
}

.thwmsc-tab-panel .woocommerce-privacy-policy-text {
  display: none;
}

.thwmsc-tab-panel.cart .cart-collaterals th, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th {
  width: 80%;
  text-align: right;
}

.thwmsc-tab-panel.order_review .svc__qzhl_____2 .woocommerce-remove-coupon {
  display: none;
}

.thwmsc-tab-panel.cart .cart-collaterals th.product-name, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th.product-name {
  display: none;
}

.thwmsc-tab-panel.cart .cart-collaterals tr, .thwmsc-tab-panel.cart .cart-collaterals th, .thwmsc-tab-panel.order_review .svc__qzhl_____2 tr, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

.thwmsc-tab-panel.cart .cart-collaterals th, .thwmsc-tab-panel.order_review .svc__qzhl_____2 th {
  padding-left: 16px;
}

.thwmsc-tab-panel.cart .cart-collaterals td, .thwmsc-tab-panel.order_review .svc__qzhl_____2 td {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  padding-right: 16px;
}

.thwmsc-tab-panel.cart .cart-collaterals tr.order-total span, .thwmsc-tab-panel.order_review .svc__qzhl_____2 tr.order-total span {
  color: white !important;
}

.thwmsc-tab-panel.cart .cart-collaterals tr.order-total, .thwmsc-tab-panel.order_review .svc__qzhl_____2 tr.order-total {
  background-color: #FF5C36;
  color: white;
}

.sv-base-button {
  color: #00AA8E !important;
  border-radius: 10px !important;
  border: 1px solid !important;
  background-color: white !important;
  padding: 5px 0 !important;
  font-size: 20px !important;
}

.sv-base-button:hover {
  background-color: #00AA8E !important;
  color: white !important;
}

/* PASSENGERS */

.sivola-passengers-steps, .sivola_passenger_content {
  width: 100%;
  margin: 20px auto 0;
  position: relative;
}

.sivola-passengers-steps input[type=radio] {
  display: none;
}
.sivola-passengers-steps #step_passenger_1:checked ~ .sivola_passenger_content .sivola_passenger_content_1 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_2:checked ~ .sivola_passenger_content .sivola_passenger_content_2 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_3:checked ~ .sivola_passenger_content .sivola_passenger_content_3 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_4:checked ~ .sivola_passenger_content .sivola_passenger_content_4 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_5:checked ~ .sivola_passenger_content .sivola_passenger_content_5 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_6:checked ~ .sivola_passenger_content .sivola_passenger_content_6 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_7:checked ~ .sivola_passenger_content .sivola_passenger_content_7 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_8:checked ~ .sivola_passenger_content .sivola_passenger_content_8 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_9:checked ~ .sivola_passenger_content .sivola_passenger_content_9 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_10:checked ~ .sivola_passenger_content .sivola_passenger_content_10 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_11:checked ~ .sivola_passenger_content .sivola_passenger_content_11 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_12:checked ~ .sivola_passenger_content .sivola_passenger_content_12 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_13:checked ~ .sivola_passenger_content .sivola_passenger_content_13 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_14:checked ~ .sivola_passenger_content .sivola_passenger_content_14 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_15:checked ~ .sivola_passenger_content .sivola_passenger_content_15 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_16:checked ~ .sivola_passenger_content .sivola_passenger_content_16 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_17:checked ~ .sivola_passenger_content .sivola_passenger_content_17 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_18:checked ~ .sivola_passenger_content .sivola_passenger_content_18 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_19:checked ~ .sivola_passenger_content .sivola_passenger_content_19 {
  display: block !important;
}
.sivola-passengers-steps #step_passenger_20:checked ~ .sivola_passenger_content .sivola_passenger_content_20 {
  display: block !important;
}

.sivola-passengers-steps .sivola_passenger_content > div {
  display: none;
  padding-bottom: 30px;
  position: relative;
}
.sivola-passengers-steps .sivola_passenger_content .next {
  bottom: 0;
  color: #969696;
  cursor: pointer;
  right: 0;
  position: absolute;
  text-align: right;
  text-decoration: none;
}

.step:last-of-type .sivola-passengers-steps .sivola_passenger_content .next {
  color: #3eb936;
}

.sivola_passenger_step  {
  width: 40px;
  height: 40px;
  display: inline-block !important;
  border: 4px solid;
  border-radius: 50%;
  font-weight: 600;
  text-align: center;
  line-height: 35px;
  text-decoration: none;
  background-color: #3eb936;
  border-color: #3eb936;
  color: white;
}
.sivola_passenger_step  span {
  position: relative;
}
.sivola_passenger_step  span:before {
  background: #3eb936;
  content: "✓";
  font-size: 20px;
  left: -2px;
  position: absolute;
}
.step:first-of-type {
  line-height: 40px;
}
.step:first-of-type:after {
  transform: translate(-55px, -1px);
}
.step:nth-of-type(n+2) {
  margin: 0 0 0 100px;
  transform: translate(0, -4px);
}
.step:nth-of-type(n+2):before {
  width: 75px;
  height: 3px;
  display: block;
  background-color: #3eb936;
  transform: translate(-95px, 21px);
  content: "";
}
.step:after {
  width: 150px;
  display: block;
  transform: translate(-55px, 3px);
  color: #969696;
  content: attr(data-title);
  font-weight: 400;
  font-size: 13px;
}
input:checked ~ .sivola_passenger_step  {
  background-color: white;
  border-color: transparent;
  color: #969696;
}
input:checked ~ .step:before {
  background-color: white;
}
input:checked ~ .sivola_passenger_step  span:before {
  display: none;
}
input:checked + .sivola_passenger_step  {
  border-color: #76a2d2;
  color: #76a2d2;
}
input:checked + .step:not(:last-of-type):after {
  color: #76a2d2;
}
input:checked + .step:before {
  background: linear-gradient(to right, #3eb936 0%, #76a2d2 100%);
}
input:checked + .step:last-of-type {
  background-color: #3eb936;
  border-color: #3eb936;
  color: white;
}
input:checked + .step:last-of-type:before {
  background: #3eb936;
}
input:checked + .step:last-of-type span:before {
  display: block;
}

/* SERVIZI */

.sivola_servizi_step_content, .sivola_pagamento_step_content, .sivola_final_step_content {
  text-align: left;
  position: relative;
}

.sivola_single_element_column {
  display: inline-block;
}

.sivola_single_accessorio_left, .sivola_accessorio_info {
  width: 70%;
}

.sivola_single_accessorio_right {
  width: 28%;
  text-align: right;
  vertical-align: top;
}

.sivola_accessorio_price {
  font-weight: bold;
  display: block;
  font-size: 30px;
}

.woocommerce-checkout-review-order-table.shop_table {
  display: none !important;
}

.sivola_single_accessorio, .sivola_pagamento_single_box {
  width: 100%;
  padding: 36px 42px;
  background-color: white;
  border-radius: 10px;
  margin-top: 38px;
  -webkit-box-shadow: 0px 5px 10px -2px rgba(18,18,18,0.35);
  box-shadow: 0px 5px 10px -2px rgba(18,18,18,0.35);
}

.sivola_pagamento_single_type {
  padding: 24px;
  background-color: #F8F8F8;
  border-radius: 5px;
  margin-top: 16px;
}

.sv_gateway_desc {
  color: #212121;
  margin-top: 18px;
  margin-bottom: 0;
}

.sivola_pagamento_single_type[data-selected="true"] .sv_gateway_desc {
  color: white;
}

.sivola_pagamento_single_type span {
  color: #212121;
  font-weight: bold;
  font-size: 18px;
}

.sivola_pagamento_single_type[data-selected="true"]{
  background-color: #00AA8E;
}

.sivola_pagamento_single_type[data-selected="true"] span {
  color: white;
}

.sivola_pagamento_single_type div {
  display: inline-block;
}

.sivola_pagamento_single_type .spst_1 {
  width: 70%;
  vertical-align: top;
}

.sivola_pagamento_single_type .spst_2 {
  width: 28%;
  text-align: right;
}

.woocommerce-checkout .row-main {
  position: relative;
}

.sv_da_pagare {
  margin-top: 8px;
  width: 100%;
  text-align: right;
  padding-right: 20px;
}

.sv_da_pagare span.sv_dp_label {
  font-weight: 400;
  font-size: 16px;
}

.sv_da_pagare span.sv_payment_full_number {
  display: block;
  margin-top: 8px;
  font-size: 26px;
}

.sv_da_pagare span.sv_payment_full_number bdi {
  display: block;
  margin-top: 8px;
  font-size: 26px;
}

.sv_da_pagare span.sv_payment_full_number .woocommerce-Price-currencySymbol {
  font-size: 26px;
}

.sv_da_pagare_2 {
  margin-left: 28px;
}

.sivola_pagamento_single_box h4 {
  color: #212121;
}

.sivola_single_accessorio h2 {
  color: black;
  font-size: 30px !important;
}

.sivola_single_accessorio_buy_for {
  background-color: rgba(250, 250, 250, 1);
  border-radius: 10px;
  padding: 18px;
  margin-top: 18px;
  border: 1px solid rgba(189, 189, 189, 1);
}

.sivola_single_accessorio_single_passenger {
  background-color: rgba(0, 170, 142, 1);
  padding: 12px;
  color: white;
  border-radius: 10px;
  margin-top: 16px;
}

.sivola_single_accessorio_single_passenger_name {
  font-weight: bold;
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}

.sivola_single_accessorio_single_passenger_check {
  text-align: right;
  display: inline-block;
  width: 50%;
  vertical-align: middle;
}

.sivola_p_overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.7);
  visibility: hidden;
  border-radius: 12px;
  left: 0;
  top: 0;
  z-index: 99;
}

.sivola_p_overlay.visible {
  visibility: visible;
  opacity: 1;
}

.sivola_p_overlay span {
  position: absolute;
  transform: translate(-50%, -50%);
  top: 55%;
  left: 50%;
  font-weight: bold;
  font-size: 18px;
  color: black;
}

.sivola_servizi_step_totals {
  width: 100%;
  padding: 24px;
  text-align: right;
  margin: 28px 0;
  -webkit-box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  box-shadow: 0px 5px 10px -2px rgba(18, 18, 18, 0.35);
  border-radius: 10px;
}

.sivola_servizi_step_totals_single_total {
  font-size: 22px;
  line-height: 25.2px;
  margin-bottom: 22px;
}

.sivola_servizi_step_totals_final_total {
  background-color: #FF5C36;
  border-radius: 5px;
  padding: 18px;
  color: white;
  font-size: 22px;
  line-height: 25.2px;
  margin-bottom: 22px;
}

.thwmsc-tab-panel {
  background: transparent !important;
}

.woocommerce-billing-fields h3, .passeggeri h3, .pagamento h3 {
  display: none;
}

.pagamento h2.servizi_add {
  margin-bottom: 12px !important;
}

#billing_document_needed_field p, #passenger_advice_field p, h2.servizi_add {
  text-align: left;
  font-size: 32px !important;
  font-weight: bold;
  margin: 4px 0 42px 0 !important;
  color: #212121;
}

h2.servizi_add {
  margin: 4px 0 24px 0;
}

.sivola_included_service {
  background-color: #f9f9f9;
  border: 1px solid #BDBDBD;
  border-radius: 5px;
  padding: 16px;
  margin-top: 28px;
}

.sivola_included_service p:last-child {
  margin-bottom: 0;
}

.sivola_included_service a {
  color: #EF5571;
  text-decoration: underline;
  font-weight: bold;
}

.servizi_add_prod {
  font-size: 24px !important;
}

.sivola_inserisci_dati_passeggero_label {
  background-color: #FAFAFA;
  border: 1px solid #BDBDBD;
  border-radius: 8px;
  padding: 22px;
  margin-bottom: 34px;
  text-align: left;
}

.sivola_inserisci_dati_passeggero_label span {
  display: block;
  margin-bottom: 8px;
}

.sivola_inserisci_dati_passeggero_label span.sv___q28 {
  font-weight: bold;
  color: #00AA8E;
  margin-bottom: 0;
  margin-top: 8px;
}

.sivola_use_db_passengers_notice {
  margin-top: 15px;
  margin-bottom: 15px;
}

.sivola_delete_user_document {
  display: block;
  color: red;
  margin-top: 8px;
}

.sivola_allegati_container > div {
  padding-top: 12px;
  border-top: 1px solid #ccc;
}

.sivola_allegati_container > div:first-child {
  padding-top: 0;
  border-top: 0;
}

.sivola_user_passenger_db {
  display: inline-block;
  padding: 12px;
  border-radius: 6px;
  background-color: #00AA8E;
  color: white;
  font-size: 13px;
  font-weight: bold;
  margin-right: 12px;
  cursor: pointer;
}

.thwcfe-input-field-wrapper[id*="sivola_passenger_birth_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_birth_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_birth_year"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_year"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_year"] {
  width: 33%;
  display: inline-block;
}

@media screen and (max-width: 1000px) {
  .thwcfe-input-field-wrapper[id*="sivola_passenger_birth_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_birth_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_birth_year"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_release_year"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_day"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_month"], .thwcfe-input-field-wrapper[id*="sivola_passenger_document_expiration_year"] {
    width: 100%;
    display: inline-block;
  }
}

.sivola_dsc {
  margin: 18px 0 28px;
  text-align: left;
  line-height: 26px;
}

.sivola-required-documents {
  text-align: left;
  line-height: 30px;
}

.sivola_allegati_container {
  margin: 22px 0;
  text-align: left;
}

/* TABS */

#thwmsc-tabs {
  margin: 28px 0;
}

#thwmsc-tabs .thwmsc-tab-icon {
  display: none;
}

#thwmsc-tabs a {
  text-transform: uppercase !important;
  color: #212121 !important;
}

#thwmsc-tabs a.thwmsc-finished-step {
  opacity: 0.6;
}

#thwmsc-tabs li {
  width: 16%;
  text-align: center;
  border-bottom: none !important;
}

li.thwmsc-tab a.thwmsc-completed {
  background: transparent !important;
}

#thwmsc-tabs li a.active {
  background: transparent !important;
  color: #00AA8E !important;
  border-bottom: 2px solid #00AA8E !important;
}

.sivola_age_limit {
  text-align: left;
  margin: -10px 0 32px 0;
}

.sivola_age_limit div {
  display: inline-block;
  width: auto;
  margin-right: 8px;
  vertical-align: bottom;
}

.sivola_age_limit div p {
  color: #00AA8E;
}

.sivola_age_limit div:last-child {
  display: block;
  margin-top: 8px;
}

.sivola_age_limit div:last-child p {
  color: #212121;
}

/* CHECKOUT FORM GENERAL */

.sv_scalapay_custom_widget {
  text-align: right;
  font-weight: 100;
  font-size: 14px;
  position: relative;
  padding-right: 12px;
}

.sivola_pagamento_single_type .sv_scalapay_custom_widget {
  display: table !important;
  text-align: left !important;
}

.sv_scalapay_custom_widget svg {
  position: absolute;
  top: -2px;
  right: 0;
  cursor: pointer;
}

.sv_single_a_attachment {
  display: inline-block;
  margin-right: 12px;
  padding: 12px !important;
  border: 1px solid #ccc !important;
  border-radius: 12px;
}

.sv_remove_single_attachment {
  display: block;
  color: red;
  margin-top: 6px;
  cursor: pointer;
}

.sv_single_a_attachment span {
  text-transform: uppercase;
  font-size: 12px;
}

.sv_single_a_attachment svg {
  display: block;
  margin-bottom: 8px;
}

.sv_scalapay_custom_widget img {
  cursor: pointer;
}

.sv_scalapay_custom_widget strong {
  font-weight: bold;
}

form[name="checkout"] input[type="email"], form[name="checkout"] input[type="text"], form[name="checkout"] input[type="tel"] {
  margin-top: 8px;
  height: 52px;
}

form[name="checkout"] #billing_first_name_field, form[name="checkout"] #billing_last_name_field {
  width: 100%;
}

form[name="checkout"] #billing_email_field {
  background-color: #FAFAFA;
  padding: 28px;
  border-radius: 12px;
  margin-bottom: 32px;
  border: 1px solid #BDBDBD;
}

form[name="checkout"] select.sivola-passenger-field {
  margin-bottom: 34px;
}

/*form[name="checkout"] .select-resize-ghost, form[name="checkout"] .select2-container .select2-choice, form[name="checkout"] .select2-container .select2-selection {
  height: 54px;
}

form[name="checkout"] .select2-container .select2-choice>.select2-chosen, form[name="checkout"] .select2-container .select2-selection--single .select2-selection__rendered, form[name="checkout"] .select2-selection {
  line-height: 54px;
}

form[name="checkout"] .select2-search__field {
  height: 42px;
}*/
.custom_checkbox_passaporto{
  margin-bottom: 1.3em;
}
.woocommerce-custom-section-passengers strong{
  line-height: 10px !important;
}
.woocommerce-custom-section-passengers ul{
  margin-bottom: 4px;
  gap: 5px;
}
.sv_order_allegato_container li{
  cursor: pointer;
  padding: 5px;
  background-color: #00aa8e;
  border-radius: 5px;
  color: #fff;
}
.sv_order_allegato_container ul{
  display: flex;
  justify-content: right;
}
.sv_documento_validazione_richiesta {
  padding: 5px;
  background-color: red;
  border-radius: 5px;
  color: #fff;
}
.sv_documento_validazione_ok {
  padding: 5px;
  background-color: green;
  border-radius: 5px;
  color: #fff;
}
.sv_accordion_container input[type="text"], .sv_accordion_container select{
  margin-top: 10px !important;
  height: 50px !important;
}
.sv_accordion_container strong, .sv_accordion_container p{
  line-height: 10px;
  margin: 0 !important;
}
.sv_margin_dates{
  margin-bottom: 8px;
}
/*.sv_accordion_row td:nth-of-type(2){*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  padding-bottom: 83px;*/
/*}*/
.sv_select_dates {
  display: flex;
  gap: 5px;
}
.sv_accordion_container ul{
  list-style-type: none;
  display: flex;
  justify-content: right;
  padding-top: 30px;
}
.sv_accordion_container{
  vertical-align: top;
}
.sv_order_single_save{
  cursor: pointer;
  padding: 10px;
  background-color: #00aa8e;
  border-radius: 5px;
  color: #fff;
}
.sv_document_view{
  cursor: pointer;
  padding: 5px;
  background-color: #00aa8e;
  border-radius: 5px;
  color: #fff;
}
.sv_search_popup{
  width: 100%;
  background-color: #fff;
  border-radius: 8px;
  margin-top: 14px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: absolute;
  box-shadow: 0px 4px 80px 0px #00000040;
  z-index: 99999;
}
.sv_search_popup h5{
  font-size: 18px;
  color: #212121 !important;
  margin-bottom: 0;
}
.sv_single_destination img{
  width: 55px;
  height: 55px;
  border-radius: 5px;
}
.sv_single_destination {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.sv_single_destination p{
  color: #212121 !important;
  font-size: 14px;
  margin-bottom: 0;
}
.sv_price_days {
  display: flex;
  gap: 4px
}
.sv_price_days p {
  color: #828282 !important;
}
.sv_single_text_container {
  gap: 6px;
  display: flex;
  flex-direction: column;
}
.sv_destinations_container{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  row-gap: 15px;
  column-gap: 5px;
}
.sv_single_continent img{
  max-width: 32px;
  max-height: 32px;
}
.sv_single_continent p{
  margin-bottom: 0;
  color: #212121 !important;
  font-size: 12px;
}
.sv_single_continent{
  flex: 1;
  padding-block: 10px;
  border: 1px solid #BDBDBD;
  border-radius: 2px;
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: end;
  flex-direction: column;
  cursor: pointer;
}
.sv_single_continent:hover {
  background-color: #EF55710D;
  border-color: #EF5571;
}
.sv_single_continent:hover img{
  filter: invert(60%) sepia(71%) saturate(4863%) hue-rotate(318deg) brightness(98%) contrast(92%);
}
.sv_continents_container {
  display: flex;
  flex-direction: row;
  gap: 10px;
}
.sv_sigle_title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 3em;
}
.sv_hide_popup{
  display: none;
}

.products-container {
  display: flex;
  flex: 1
}

.products-container-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 440px;
}

.filter-page-container {
  display: flex;
  gap: 20px;
}

.filters-container {
  box-shadow: 0px 4px 20px 0px #0000000D;
  padding: 30px 20px;
  width: 300px;
  max-width: 300px;
  min-width: 300px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-radius: 12px;
}

.filters-container h4 {
  color: #212121;
}

.filter-loop-continents {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.filters-container .single-filter p {
  text-align: left;
}

.noUi-handle:after, .noUi-handle:before {
  width: 0 !important;
}

.noUi-horizontal {
  height: 6px !important;
}

.noUi-connect {
  background: #00AA8E !important;
}

.noUi-target {
  box-shadow: unset !important;
}

.noUi-handle {
  box-shadow: unset !important;
}

.noUi-horizontal .noUi-handle {
  background-color: #00AA8E;
  border-radius: 999px;
  cursor: pointer;
  height: 15px !important;
  outline: none;
  position: absolute;
  top: -5px !important;
  width: 15px !important;
  z-index: 2;
  right: -7px !important;
}

.noUi-handle:after, .noUi-handle:before {
  width: 0 !important;
}

.euro-span, #span_min_price, #span_max_price {
  color: #00AA8E;
  font-weight: 700;
}

.single-container-filter {
  border: 1px solid #828282;
  cursor: pointer;
  border-radius: 3px;
}

.single-container-filter:hover {
  background-color: #828282;
  color: white;
}

.single-container-filter-active {
  background-color: #828282;
  color: white;
}

.single-container-filter p {
  text-align: center !important;
  margin: 0;
  padding: 10px
}

.filter-title {
  font-size: 18px;
  line-height: 19px;
}

.filter-loader {
  border: 5px solid #ffffff;
  border-top: 5px solid #36AA8E;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spinFilter 1s linear infinite;
}

@keyframes spinFilter {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.filter-loader-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}

.budget-tab{
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  gap: 10px;
  background-color: #00AA8E;
}

.budget-tab a, .budget-tab p{
  color: #000 !important;
  margin-bottom: 0;
  font-size: 18px;
}
.budget-tab a{
  background-color: #f5f5f5;
  padding: 15px 20px;
  border-radius: 5px;
  cursor: pointer;
}
.budget-tab a:hover{
  background-color: #d7d7d7;
}
.budget-tab p{
  font-weight: 700 !important;
  color:#FFFFFFCC !important;
}
.budget-show-desktop{display: flex; gap: 10px; flex: 1}
.budget-show-mobile{display: none}
.budget-prices{justify-content: center}
.filter-period{
  display: flex; flex-direction: row; align-items: center; justify-content: space-between; margin-bottom: 0; gap: 20px
}
#period{border-radius: 8px; margin-bottom: 0}
.single-filter-input{height: 40px; border-radius: 8px !important; width: 30%; margin-bottom: 0}

.single-submit-input{text-transform: none; min-height: fit-content !important; border-radius: 8px; background-color: #EF5571 !important; width: 30%;margin-bottom: 0; margin-right: 0 !important;}
.scalapay-info{cursor: pointer; align-items: center;display: flex;}
#billing_no_dni_nie_field{margin-bottom: 20px}
#billing_no_dni_nie_field .optional{display: none}
.sv_product_modal{display: none}
.sv_open_modal{
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  height: 80vh;
  z-index: 100000;
  border-radius: 10px;
  padding: 20px;
}
.sv_account_overlay{
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: block;
  position: fixed;
  z-index: 10000;
}

.sv_close_modal {
  position: absolute;
  top: 20px;
  right: 40px;
  padding: 10px;
  background-color: #B0B0B0;
  color: #fff;
  border-radius: 99px;
  cursor: pointer;
  height: 40px;
  width: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sv_modal_container{
  flex: 1;
  overflow-y: scroll;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.sv_modal_container h2{
  font-size: 30px !important;
  margin-bottom: 0;
}
.sv_modal_container p {
  font-size: 18px !important;
  margin-bottom: 0;
}
.sv_modal_container strong {
  font-size: 22px !important;
}
.sv_modal_container ul{
  list-style-type: none;
  margin-bottom: 0;
}
.sv_modal_container li{
  font-size: 18px !important;
  margin-left: 0 !important;
  margin-bottom: 10px;
}
.sv_modal_dia strong{
  font-size: 18px !important;
  line-height:normal !important;
}
.sv_modal_dia {
  line-height: 25px !important;
  margin-bottom: 10px !important;
}
.sv_no_scroll {
  overflow: hidden;
  height: 100vh;
}
.filters-container .search-price, .filters-container .ux-search-submit.submit-button{
  display: none !important;
}

/* MEDIA QUERIES */
@media screen and (max-width: 820px) {
  .sivola_cart_single_item {
    display: block;
    border: 2px solid #ccc;
  }

  .sivola_cart_single_item_img, .sivola_cart_single_item_content {
    width: 100%;
  }

  .sivola_cart_single_item_img {
    height: 250px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
  }

  .sv_coupon_1 {
    width: 100%;
    margin-bottom: 24px;
  }

  .sv_coupon_2 {
    margin-left: 0;
    width: 50%;
  }

  .sv_coupon_3 {
    width: 45%;
  }

  .sivola_single_accessorio_left, .sivola_single_accessorio_right, .sivola_accessorio_info {
    width: 100%;
    text-align: left;
  }

  .sivola_single_accessorio_right {
    margin-bottom: 22px;
  }

  .filter-page-container {
    flex-direction: column;
  }

  .filters-container {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }

  .products-container-grid {
    grid-template-columns: 1fr;
  }
  .budget-show-desktop{display: none !important;}
  .budget-show-mobile{display: block !important;flex: 1}
  .filter-period{
    flex-direction: column
  }
  .single-filter-input{width: 100%; margin:0 !important;}
  .single-submit-input{width: 100%}
  #period{margin-right: 0}
}