/* Preserve state values without presenting optional CH/DE state selectors. */
#billing_state_field.yarni-checkout-state-hidden,
#shipping_state_field.yarni-checkout-state-hidden {
  display: none !important;
}

/*
 * Address fields are visible without JavaScript. The enhanced UI adds these
 * body classes only after a provider is ready, so a blocked/failed script can
 * never make manual checkout impossible.
 */
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_address_1_field,
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_address_2_field,
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_address_extra_field,
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_city_field,
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_postcode_field,
body.yarni-billing-address-search-ready:not(.yarni-billing-address-manual)
  #billing_state_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_address_1_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_address_2_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_address_extra_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_city_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_postcode_field,
body.yarni-shipping-address-search-ready:not(.yarni-shipping-address-manual)
  #shipping_state_field {
  display: none !important;
}
#billing_custom_address_field .optional,
#shipping_custom_address_field .optional,
#billing_address_full_field .optional,
#shipping_address_full_field .optional {
  display: none;
}

#billing_address_full_field,
#shipping_address_full_field {
  position: relative;
}
#billing_address_full_field .woocommerce-input-wrapper,
#shipping_address_full_field .woocommerce-input-wrapper {
  position: relative;
  display: block;
}
#billing_address_full_field .description,
#shipping_address_full_field .description {
  color: var(--Greyscale-Text-Caption, #777);
  font-size: 14px;
  line-height: normal;
  display: block !important;
}
#billing_custom_address_field,
#shipping_custom_address_field {
  position: relative;
  margin: 0;
}
#billing_custom_address_field label,
#shipping_custom_address_field label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 8px;
  border: 1px solid #000;
  background: transparent;
  cursor: pointer;
  color: #000;
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: 0;
  text-transform: uppercase;
  justify-content: center;
}
#billing_address_full_field > label,
#shipping_address_full_field > label {
  color: #000;
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
}
#billing_custom_address_field label input,
#shipping_custom_address_field label input {
  display: none;
}
#billing_custom_address_field label:before,
#shipping_custom_address_field label:before {
  width: 24px;
  height: 24px;
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M13.4486 6.95162L17.0486 10.5516M4.44867 19.5516L8.81465 18.6719C9.04643 18.6252 9.25925 18.5111 9.42639 18.3438L19.2001 8.5648C19.6687 8.09594 19.6683 7.33595 19.1993 6.86749L17.1289 4.79942C16.6601 4.33115 15.9005 4.33147 15.4321 4.80013L5.65743 14.5802C5.49062 14.7471 5.37672 14.9595 5.32997 15.1908L4.44867 19.5516Z' stroke='%23212121' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.thb-checkout-form-column #billing_phone_field,
.thb-checkout-form-column #shipping_phone_field {
  display: grid;
  margin-bottom: 30px;
}
.iti {
  width: 100%;
}
.iti--separate-dial-code .iti__selected-flag {
  background-color: transparent !important;
}
.iti__flag.iti__ch {
  border-radius: 50%;
  overflow: hidden;
}
#kl_newsletter_checkbox_field {
  margin-top: 40px;
  margin-bottom: 17px;
}
@media (min-width: 768px) {
  .thb-checkout-form-column #billing_address_1_field,
  .thb-checkout-form-column #shipping_address_1_field {
    width: calc(75% - 6px);
  }
  .thb-checkout-form-column #billing_address_2_field,
  .thb-checkout-form-column #shipping_address_2_field {
    width: calc(25% - 6px);
    margin-left: 0;
  }
  .thb-checkout-form-column #billing_postcode_field,
  .thb-checkout-form-column #shipping_postcode_field {
    width: calc(50% - 6px);
  }
  .thb-checkout-form-column #billing_city_field,
  .thb-checkout-form-column #shipping_city_field {
    width: calc(50% - 6px);
    margin-left: 0;
  }
}

.thb-checkout-form-column .yarni-fixed-country {
  display: none !important;
}
.thb-checkout-form-column .yarni-address-label > label {
  display: block;
  margin: 0 0 4px;
  color: #444;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0;
}
.thb-checkout-form-column #billing_address_2_field .optional,
.thb-checkout-form-column #shipping_address_2_field .optional {
  display: none;
}
.thb-checkout-form-column #billing_address_extra_field,
.thb-checkout-form-column #shipping_address_extra_field {
  width: 100%;
  margin-left: 0;
}
.thb-checkout-form-column .yarni-address-label .input-text {
  min-height: 46px;
  padding-right: 30px;
}
.thb-checkout-form-column .yarni-address-label .select2-container {
  width: 100% !important;
  min-width: 0;
}
.thb-checkout-form-column .yarni-address-label .select2-selection--single,
.thb-checkout-form-column .yarni-address-label select:not(.select2-hidden-accessible) {
  width: 100%;
  height: 46px;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #444;
  border-radius: 0;
  background: #fff;
  color: #000;
  font: inherit;
  font-size: 16px;
  letter-spacing: 0;
  box-shadow: none;
}
.thb-checkout-form-column .yarni-address-label .select2-selection__rendered {
  padding: 12px 32px 12px 4px;
  color: #000;
  line-height: 21px;
}
.thb-checkout-form-column .yarni-address-label .select2-selection__arrow {
  top: 0;
  right: 4px;
  height: 45px;
}
.thb-checkout-form-column .yarni-address-label .select2-selection__clear {
  margin-right: 8px;
}
.thb-checkout-form-column .yarni-address-label .select2-container--open .select2-selection,
.thb-checkout-form-column .yarni-address-label .select2-container--focus .select2-selection,
.thb-checkout-form-column .yarni-address-label select:focus,
.thb-checkout-form-column .yarni-address-label .input-text:focus {
  border-bottom-color: #598984;
  outline: 2px solid #598984;
  outline-offset: 2px;
}
.woocommerce-checkout .select2-dropdown {
  border-radius: 0;
  border-color: #777;
  font-size: 16px;
  letter-spacing: 0;
}
.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: #598984;
  color: #fff;
}
.complete-input {
  border-color: #598984 !important;
  background-image: url("data:image/svg+xml,%3Csvg width='17' height='12' viewBox='0 0 17 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 1.5L6.45455 10.5L1 5.35714' stroke='%23598984' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-position: calc(100% - 18px) center !important;
  background-repeat: no-repeat !important;
}
.error-input {
  border-color: #e91111 !important;
}

.yarni-address-suggestions {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 10020;
  background: #fff;
  border: 1px solid #d7d7d7;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
}
.yarni-address-suggestions__list {
  padding: 0;
  margin: 0;
  list-style: none;
}
.yarni-address-suggestions__option {
  padding: 10px 12px;
  border-bottom: 1px solid #ededed;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.4;
}
.yarni-address-suggestions__option:hover,
.yarni-address-suggestions__option[aria-selected="true"] {
  background: #f1f4f3;
  outline: none;
}
.yarni-address-suggestions__attribution {
  padding: 6px 12px 7px;
  color: #5e5e5e;
  font-family: Roboto, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: normal;
  line-height: 16px;
  text-align: right;
  white-space: nowrap;
}
.pac-container {
  z-index: 10020;
}

@media (max-width: 767px) {
  #billing_address_full_field > label,
  #shipping_address_full_field > label {
    font-size: 18px;
  }
  #billing_address_full_field:after,
  #shipping_address_full_field:after {
    min-height: 35px;
  }
  #billing_address_full_field,
  #shipping_address_full_field {
    gap: 14px;
  }
  #billing_custom_address_field label,
  #shipping_custom_address_field label {
    width: max-content;
  }
}
