/* Checkout styling: presentation only; native forms, steps and module hooks remain intact. */
body#checkout {
  background: #f6f1e7;
  color: var(--ms-color-brown);
}

body#checkout #header {
  background: rgb(255 255 255 / 96%);
  border-bottom: 1px solid rgb(93 59 59 / 10%);
  box-shadow: none;
  min-height: 6rem;
}

body#checkout #header .header-nav {
  border: 0;
  box-shadow: none;
  height: auto;
  margin: 0;
  padding: 1.15rem 0;
}

body#checkout #header .header-nav .container {
  max-width: 1220px;
}

body#checkout #header #_desktop_logo img {
  height: auto;
  max-height: 3.6rem;
  width: auto;
}

body#checkout #header .header-nav .text-xs-right {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  min-height: 3.6rem;
}

body#checkout #wrapper {
  background: #f6f1e7;
  padding: 3rem 0 5rem;
}

body#checkout #wrapper > .container {
  max-width: 1220px;
}

body#checkout #content > .row {
  align-items: flex-start;
  margin-left: -12px;
  margin-right: -12px;
}

body#checkout .cart-grid-body,
body#checkout .cart-grid-right {
  padding-left: 12px;
  padding-right: 12px;
}

body#checkout section.checkout-step {
  background: #fff;
  border: 1px solid rgb(93 59 59 / 10%);
  border-bottom: 0;
  box-shadow: none;
  padding: 0;
}

body#checkout section.checkout-step:last-child {
  border-bottom: 1px solid rgb(93 59 59 / 10%);
}

body#checkout section.checkout-step .step-title {
  align-items: center;
  color: var(--ms-color-gray);
  display: flex;
  font-size: 1.05rem;
  font-weight: 500;
  gap: .8rem;
  letter-spacing: .03em;
  margin: 0;
  padding: 1.35rem 1.5rem;
  text-transform: none;
}

body#checkout section.checkout-step.-current .step-title {
  color: var(--ms-color-brown);
  font-size: 1.3rem;
}

body#checkout section.checkout-step .step-number,
body#checkout section.checkout-step .done {
  align-items: center;
  background: transparent;
  border: 1px solid rgb(93 59 59 / 30%);
  border-radius: 50%;
  color: var(--ms-color-brown);
  display: inline-flex;
  flex: 0 0 2rem;
  font-size: .75rem;
  height: 2rem;
  justify-content: center;
  margin: 0;
}

body#checkout section.checkout-step.-current .step-number {
  background: var(--ms-color-red);
  border-color: var(--ms-color-red);
  color: #fff;
}

body#checkout section.checkout-step.-complete .done {
  background: var(--ms-color-green);
  border-color: var(--ms-color-green);
  color: transparent;
  font-family: "Material Icons" !important;
  font-feature-settings: "liga";
  font-size: 0;
  font-weight: 400;
  line-height: 1;
  padding: 0;
  position: relative;
  text-rendering: optimizeLegibility;
  vertical-align: middle;
}

body#checkout section.checkout-step.-complete .done::before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  content: "";
  height: .35rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -62%) rotate(-45deg);
  width: .7rem;
}

body#checkout section.checkout-step.-complete .step-number { display: none; }

body#checkout section.checkout-step .step-edit {
  color: var(--ms-color-red) !important;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.5;
  margin-left: auto;
  text-transform: uppercase;
}

body#checkout section.checkout-step .step-edit .edit {
  font-size: 1rem;
  line-height: 1;
  vertical-align: middle;
}

body#checkout section.checkout-step .edit-address,
body#checkout section.checkout-step .delete-address {
  color: var(--ms-color-red) !important;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.5;
}

body#checkout section.checkout-step .edit-address:hover,
body#checkout section.checkout-step .edit-address:focus-visible,
body#checkout section.checkout-step .delete-address:hover,
body#checkout section.checkout-step .delete-address:focus-visible {
  color: var(--ms-color-brown) !important;
}

body#checkout section.checkout-step .content {
  border-top: 1px solid rgb(93 59 59 / 10%);
  padding: 2rem 2.25rem 2.25rem;
}

body#checkout .nav-inline {
  border-bottom: 1px solid rgb(93 59 59 / 12%);
  display: flex;
  gap: 1.6rem;
  margin-bottom: 1.75rem;
}

body#checkout .nav-inline .nav-link {
  border: 0;
  color: var(--ms-color-gray);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .03em;
  padding: 0 0 .75rem;
}

body#checkout .nav-inline .nav-link.active {
  border-bottom: 2px solid var(--ms-color-red);
  color: var(--ms-color-brown);
}

body#checkout .form-group {
  margin-bottom: 1.1rem;
}

body#checkout .form-control-label {
  color: var(--ms-color-brown);
  font-size: .73rem;
  font-weight: 700;
  padding-top: .8rem;
}

body#checkout .form-control,
body#checkout input[type='text'],
body#checkout input[type='email'],
body#checkout input[type='password'],
body#checkout input[type='tel'],
body#checkout select,
body#checkout textarea {
  background: #fff;
  border: 1px solid rgb(93 59 59 / 20%);
  border-radius: 0;
  color: var(--ms-color-brown);
  min-height: 2.75rem;
  padding: .65rem .8rem;
}

body#checkout .form-control:focus,
body#checkout input:focus,
body#checkout select:focus,
body#checkout textarea:focus {
  border-color: var(--ms-color-brown);
  box-shadow: 0 0 0 2px rgb(93 59 59 / 8%);
  outline: 0;
}

body#checkout .form-control-comment,
body#checkout .form-control-valign,
body#checkout .help-block,
body#checkout .form-text {
  color: var(--ms-color-gray);
  font-size: .68rem;
}

body#checkout .custom-checkbox label,
body#checkout .condition-label label {
  color: var(--ms-color-brown);
  font-size: .75rem;
  line-height: 1.5;
}

body#checkout .custom-checkbox input[type='checkbox'] + span {
  border-color: rgb(93 59 59 / 28%);
  border-radius: 0;
}

body#checkout .custom-checkbox input[type='checkbox']:checked + span {
  background: var(--ms-color-brown);
  border-color: var(--ms-color-brown);
}

body#checkout .btn-primary,
body#checkout .continue,
body#checkout button[type='submit'] {
  background: var(--ms-color-red);
  border: 1px solid var(--ms-color-red);
  border-radius: 0;
  box-shadow: none;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .09em;
  padding: .9rem 1.5rem;
  text-transform: uppercase;
}

body#checkout .btn-primary:hover,
body#checkout .btn-primary:focus-visible,
body#checkout .continue:hover,
body#checkout button[type='submit']:hover {
  background: var(--ms-color-brown);
  border-color: var(--ms-color-brown);
}

body#checkout .js-cart {
  background: #fff;
  border: 1px solid rgb(93 59 59 / 10%);
  border-radius: 0;
  box-shadow: none;
  position: sticky;
  top: 1.5rem;
}

body#checkout .js-cart > .card-block,
body#checkout .cart-summary-subtotals-container,
body#checkout .cart-summary-totals {
  padding: 1.5rem;
}

body#checkout .cart-summary-products p,
body#checkout .cart-summary-products .js-show-details {
  color: var(--ms-color-gray);
  font-size: .75rem;
}

body#checkout .cart-summary-line {
  align-items: baseline;
  color: var(--ms-color-brown);
  display: flex;
  font-size: .84rem;
  justify-content: space-between;
  margin-bottom: .8rem;
}

body#checkout .cart-summary-line .value {
  font-weight: 600;
  margin-left: 1rem;
}

body#checkout .cart-summary-totals {
  border-top: 1px solid rgb(93 59 59 / 12%);
}

body#checkout .cart-summary-line.cart-total {
  font-size: 1.15rem;
  margin: 0;
}

body#checkout .block-promo {
  border-top: 1px solid rgb(93 59 59 / 10%);
  padding: 1.1rem 1.5rem 1.5rem;
}

body#checkout .promo-code-button { margin: 0; text-align: left; }
body#checkout .promo-code-button a { color: var(--ms-color-gray); font-size: .72rem; }
body#checkout .promo-code form {
  align-items: stretch;
  display: flex;
  margin-top: .8rem;
  width: 100%;
}
body#checkout .promo-input {
  border: 1px solid rgb(93 59 59 / 18%);
  border-radius: 0;
  flex: 1 1 auto;
  height: 2.75rem;
  min-width: 0;
  padding: 0 .8rem;
}
body#checkout .promo-code .btn-primary {
  flex: 0 0 auto;
  height: 2.75rem;
  margin: 0;
  padding: 0 1.15rem;
}
body#checkout .promo-code-button.cancel-promo {
  align-items: center;
  color: var(--ms-color-red) !important;
  display: inline-flex;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .04em;
  line-height: 1.5;
  margin: .65rem 0 0;
  padding: 0;
  width: auto;
}
body#checkout .promo-code-button.cancel-promo:hover,
body#checkout .promo-code-button.cancel-promo:focus-visible {
  color: var(--ms-color-brown) !important;
}

body#checkout .ms-checkout-reassurance {
  background: var(--ms-trust-background);
  border: 1px solid rgb(93 59 59 / 10%);
  margin-top: 1rem;
  padding: 1rem 1.25rem;
}

body#checkout .ms-checkout-reassurance > div {
  align-items: flex-start;
  border-bottom: 1px solid rgb(93 59 59 / 9%);
  display: flex;
  gap: .75rem;
  padding: .7rem 0;
}

body#checkout .ms-checkout-reassurance > div:last-child { border-bottom: 0; }
body#checkout .ms-checkout-reassurance-icon {
  align-items: center;
  color: #fff;
  display: inline-flex;
  flex: 0 0 2.75rem;
  font-size: 2.25rem;
  height: 2.75rem;
  justify-content: center;
  text-shadow: 0 1px 1px rgb(93 59 59 / 18%);
  width: 2.75rem;
}
body#checkout .ms-checkout-reassurance-icon--paysera img {
  filter: drop-shadow(0 1px 1px rgb(93 59 59 / 14%));
  height: 2.25rem;
  object-fit: contain;
  opacity: 1;
  width: 1.75rem;
}
body#checkout .ms-checkout-reassurance > div > span:not(.ms-checkout-reassurance-icon) { color: var(--ms-color-gray); font-size: .68rem; line-height: 1.45; }
body#checkout .ms-checkout-reassurance strong { color: var(--ms-color-brown); display: block; font-size: .76rem; }
body#checkout .ms-native-checkout-reassurance { display: none; }

body#checkout .delivery-option,
body#checkout .payment-option {
  background: #faf8f3;
  border: 1px solid rgb(93 59 59 / 10%);
  margin-bottom: .75rem;
  padding: 1rem;
}

body#checkout .address-item {
  background: #faf8f3;
  border: 1px solid rgb(93 59 59 / 12%);
}

body#checkout #footer {
  background: #fff;
  border-top: 1px solid rgb(93 59 59 / 10%);
  box-shadow: none;
  min-height: 3rem;
}

body#checkout #footer .ms-checkout-footer {
  color: var(--ms-color-gray);
  font-size: .625rem;
  letter-spacing: .08em;
  line-height: 1.5;
  padding: 1.5rem var(--ms-gutter);
  text-transform: uppercase;
}

@media (max-width: 991px) {
  body#checkout #wrapper { padding-top: 2rem; }
  body#checkout .cart-grid-right { margin-top: 1.5rem; }
  body#checkout .js-cart { position: static; }
}

@media (max-width: 767px) {
  body#checkout #header { min-height: 4.7rem; }
  body#checkout #header .header-nav { padding: .7rem 0; }
  body#checkout #header .mobile { align-items: center; display: flex; justify-content: center; }
  body#checkout #header #menu-icon,
  body#checkout #header #_mobile_cart,
  body#checkout #header #_mobile_user_info,
  body#checkout #header .header-top { display: none !important; }
  body#checkout #header #_mobile_logo img { max-height: 3rem; width: auto; }
  body#checkout #wrapper { padding: 1.25rem 0 3rem; }
  body#checkout section.checkout-step .step-title { padding: 1rem; }
  body#checkout section.checkout-step.-current .step-title { font-size: 1.05rem; }
  body#checkout section.checkout-step .content { padding: 1.35rem 1rem 1.5rem; }
  body#checkout .form-control-label { padding-bottom: .35rem; padding-top: 0; text-align: left; }
  body#checkout .nav-inline { gap: 1rem; }
}
