/* Existing checkout fields and payment handlers, styled with the Boutique palette. */
.boutique .page-cart .checkout-header {
  max-width: var(--bt-width); justify-content: flex-start;
  padding: 44px var(--bt-gutter) 32px;
}
.boutique .page-cart .checkout-header__title {
  margin: 0; font: 500 clamp(42px, 5vw, 72px)/1.05 var(--bt-serif);
  color: var(--bt-plum); overflow-wrap: anywhere;
}
.boutique .page-cart .checkout-content {
  max-width: var(--bt-width); padding-inline: var(--bt-gutter); margin-bottom: 80px;
}
.boutique .page-cart .checkout-form { min-width: 0; }
.boutique .page-cart .checkout-cols {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(0, 1.1fr);
  gap: clamp(24px, 3vw, 48px); align-items: start;
}
.boutique .page-cart .checkout-col { width: auto; min-width: 0; }
.boutique .page-cart .checkout-col:last-of-type { display: block; }
.boutique .page-cart .checkout-form__title,
.boutique .page-cart .checkout-cart .cart__title {
  margin: 0 0 22px; padding-top: 20px; border-top: 1px solid var(--bt-line);
  font: 500 25px/1.15 var(--bt-serif); color: var(--bt-plum);
}
.boutique .page-cart .checkout-form-group + .checkout-form__title { margin-top: 32px; }
.boutique .page-cart .checkout-form-group:not(:last-of-type) { margin-bottom: 20px; }
.boutique .page-cart .checkout-form__input,
.boutique .page-cart .checkout-form .custom-select__selected {
  min-height: 48px; padding: 12px 0; padding-inline-end: 28px;
  border: 0; border-bottom: 1px solid #d9d9d9; box-shadow: none;
  font: 400 16px/1.5 var(--bt-sans); color: var(--bt-plum); text-align: start;
}
.boutique .page-cart .checkout-form__input:focus {
  outline: none; border-bottom-color: var(--bt-pink); box-shadow: 0 1px 0 var(--bt-pink);
}
.boutique .page-cart .checkout-form__input::placeholder {
  font: inherit; color: var(--bt-muted); opacity: 1;
}
.boutique .page-cart .checkout-form .custom-select { border: 0; }
.boutique .page-cart .checkout-form .custom-select:focus-within { box-shadow: 0 1px 0 var(--bt-pink); }
.boutique .page-cart textarea.checkout-form__input { padding: 12px 0; min-height: 112px; resize: vertical; }
.boutique .page-cart .checkout-form__icon {
  width: 18px; height: 18px; top: 15px; right: auto; inset-inline-end: 0;
  opacity: .7; pointer-events: none;
}
.boutique .page-cart .phone-wrapper { display: flex; gap: 8px; }
.boutique .page-cart .phone-wrapper .part-first { width: 96px; flex: none; }
.boutique .page-cart .phone-wrapper .part-second { min-width: 0; flex: 1; }
.boutique .page-cart .phone-code-selector .custom-select__selected { padding-inline-end: 0; direction: ltr; }
.boutique .page-cart .checkout-cart { padding: 24px; border: 1px solid var(--bt-line); }
.boutique .page-cart .checkout-cart .cart__title { padding-top: 0; border: 0; }
.boutique .page-cart .checkout-cart .cart-products-item {
  display: grid; grid-template-columns: 64px minmax(0, 1fr) 24px;
  gap: 12px; align-items: start; margin: 0; padding-block: 18px;
}
.boutique .page-cart .checkout-cart .cart-products-item__img-wrap { width: 64px; height: 80px; margin: 0; }
.boutique .page-cart .checkout-cart .cart-products-item__img { width: 64px; height: 80px; max-width: 100%; margin: 0; object-fit: cover; }
.boutique .page-cart .checkout-cart .cart-products-item__info { margin: 0; }
.boutique .page-cart .checkout-cart .cart-products-item__name { font: 500 21px/1.15 var(--bt-serif); overflow-wrap: anywhere; }
.boutique .page-cart .checkout-cart .cart-products-item__price { font: 500 15px/1.4 var(--bt-sans); }
.boutique .page-cart .checkout-cart .cart-products-item__size { font: 400 13px/1.5 var(--bt-sans); color: var(--bt-muted); }
.boutique .page-cart .checkout-cart .cart-products-item__icon-remove { margin: 0; padding-block: 10px; cursor: pointer; }
.boutique .page-cart .checkout-cart .cart-total__sum { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.boutique .page-cart .checkout-cart .cart-total__sum:last-child { padding-top: 18px; border-top: 1px solid var(--bt-line); font-size: 22px; }
.boutique .page-cart .checkout-footer { width: 100%; margin-top: 24px; }
.boutique .page-cart .checkout-form__payment-btn {
  min-height: 56px; padding: 14px 24px; border: 0; border-radius: 0;
  background: var(--bt-pink); color: #fff; cursor: pointer;
  font: 500 13px/1.4 var(--bt-sans); letter-spacing: .12em; text-transform: uppercase;
}
.boutique .page-cart .checkout-form__payment-btn:hover { background: #d34a84; }
.boutique .page-cart .checkout-form__payment-btn:disabled { opacity: .45; cursor: not-allowed; }
.boutique .page-cart .checkout-form__text { max-width: none; padding-top: 16px; font: 400 13px/1.6 var(--bt-sans); color: var(--bt-muted); }
.boutique .page-cart .checkout-form__text a { text-decoration: underline; text-underline-offset: 3px; }
.boutique .checkout-error { color: #b32359; }
.boutique[data-direction='rtl'] .checkout-form input[type='tel'],
.boutique[data-direction='rtl'] .checkout-form input[name*='phone'],
.boutique[data-direction='rtl'] .checkout-form input[name*='email'] { direction: ltr; text-align: start; }
@media (max-width: 1100px) {
  .boutique .page-cart .checkout-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .boutique .page-cart .checkout-col:last-of-type { grid-column: 1 / -1; }
  .boutique .page-cart .checkout-footer { width: 100%; }
}
@media (max-width: 700px) {
  .boutique .page-cart .checkout-header { padding-block: 28px 24px; }
  .boutique .page-cart .checkout-cols { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .boutique .page-cart .checkout-cart { padding: 20px; }
}
