
/* EMES Fashion Checkout 3.2.6
   Patch: carrier/payment logo sizing, right alignment and price spacing. Cart/forms unchanged.
*/

html body :is(#tc-container, #tc-container-mobile) {
  --emes-fc-version: 3.2/**/.4;
  --ef-ink: #28231f;
  --ef-muted: #72685f;
  --ef-line: #ded6ce;
  --ef-line-strong: #cdbfb1;
  --ef-paper: #fbf9f6;
  --ef-block: #fdfcfa;
  --ef-sand: #f0e9e1;
  --ef-accent: #766251;
  --ef-error: #ab3030;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ef-ink);
  text-align: left;
  box-sizing: border-box;
}

body.emes-fc-page,
body.emes-fc-page #wrapper {
  background: #fbf9f6 !important;
}

body.emes-fc-page .emes-fc-host {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.emes-fc-page .emes-fc-shell {
  box-sizing: border-box !important;
  width: calc(100% - 64px) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 992px) {
  html body #tc-container.emes-fc-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    column-gap: 34px;
    row-gap: 0;
    align-items: start;
    padding-bottom: 48px;
  }

  html body #tc-container.emes-fc-grid .emes-fc-structure {
    display: contents !important;
  }

  html body #tc-container.emes-fc-grid .tc-block-placeholder {
    display: none !important;
  }

  html body #tc-container.emes-fc-grid #thecheckout-cart-summary {
    grid-column: 2;
    grid-row: 1 / span 40;
    align-self: start;
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 991px) {
  body.emes-fc-page .emes-fc-shell {
    max-width: 740px !important;
    width: calc(100% - 40px) !important;
  }
}

/* Intro */
body.emes-fc-page #emes-fc-intro {
  padding: 32px 0 30px;
  margin: 0 0 8px;
  border-bottom: 1px solid #ded6ce;
  text-align: left;
}
body.emes-fc-page #emes-fc-intro > div {
  font: 600 10px/1.6 Arial, Helvetica, sans-serif;
  letter-spacing: 2.2px;
  color: #766251;
  margin-bottom: 10px;
}
body.emes-fc-page #emes-fc-intro h1 {
  font: 400 38px/1.15 Georgia, "Times New Roman", serif;
  letter-spacing: -.8px;
  color: #28231f;
  margin: 0 0 10px;
}
body.emes-fc-page #emes-fc-intro p {
  font: 14px/1.5 Arial, Helvetica, sans-serif;
  color: #72685f;
  margin: 0;
}

/* Main framed blocks */
html body :is(#tc-container, #tc-container-mobile) .checkout-block {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 1px solid var(--ef-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  background: var(--ef-block) !important;
  overflow: hidden !important;
  color: var(--ef-ink);
  grid-column: 1;
}

html body :is(#tc-container, #tc-container-mobile) .checkout-block > .inner-area {
  box-sizing: border-box !important;
  padding: 26px 28px !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: 0;
  position: relative;
}

html body :is(#tc-container, #tc-container-mobile) .checkout-block .block-header {
  position: static !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 0 20px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--ef-ink) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 23px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  letter-spacing: -.3px !important;
  text-transform: none !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block .block-header::before,
html body :is(#tc-container, #tc-container-mobile) .checkout-block .block-header::after {
  display: none !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block > .inner-area > .inner-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Form layout */
html body :is(#tc-container, #tc-container-mobile) :is(#thecheckout-account, #thecheckout-address-invoice, #thecheckout-address-delivery, #thecheckout-login-form) .form-fields,
html body :is(#tc-container, #tc-container-mobile) :is(.business-fields-container, .private-fields-container) {
  margin-left: -6px !important;
  margin-right: -6px !important;
  gap: 0 !important;
}
html body :is(#tc-container, #tc-container-mobile) :is(#thecheckout-account, #thecheckout-address-invoice, #thecheckout-address-delivery, #thecheckout-login-form) .form-group {
  box-sizing: border-box !important;
  min-width: 0 !important;
  padding: 0 6px !important;
  margin: 0 0 16px !important;
  border: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label {
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label > .field-label {
  order: -1 !important;
  position: static !important;
  display: block !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  font: 500 12px/18px Arial, Helvetica, sans-serif !important;
  color: #4f453d !important;
  background: transparent !important;
  border: 0 !important;
  white-space: normal !important;
  pointer-events: none;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label > .effects-helper {
  display: none !important;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label > .form-control {
  box-sizing: border-box !important;
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 11px 13px !important;
  margin: 0 !important;
  border: 1px solid #cfc5bb !important;
  border-radius: 2px !important;
  background-color: #fff !important;
  box-shadow: none !important;
  color: var(--ef-ink) !important;
  font: 400 14px/22px Arial, Helvetica, sans-serif !important;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label > .form-control:focus,
html body :is(#tc-container, #tc-container-mobile) textarea:focus {
  border-color: var(--ef-accent) !important;
  outline: 2px solid #bfa98e !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}
html body :is(#tc-container, #tc-container-mobile) textarea {
  box-sizing: border-box;
  width: 100% !important;
  min-height: 86px !important;
  border: 1px solid #cfc5bb !important;
  border-radius: 2px !important;
  padding: 12px !important;
  background: #fff !important;
  color: #28231f !important;
  font: 400 14px/1.5 Arial, Helvetica, sans-serif !important;
  resize: vertical;
}
html body :is(#tc-container, #tc-container-mobile) .has-float-label > .country-call-prefix {
  position: absolute !important;
  left: 1px !important;
  top: 25px !important;
  height: 44px !important;
  width: 50px !important;
  background: #f3efea !important;
  color: #72685f !important;
  border: 0 !important;
  border-right: 1px solid #e1d8cf !important;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
html body :is(#tc-container, #tc-container-mobile) .has-call-prefix .has-float-label > input.form-control {
  padding-left: 60px !important;
}

html body :is(#tc-container, #tc-container-mobile) input[type="radio"],
html body :is(#tc-container, #tc-container-mobile) input[type="checkbox"] {
  accent-color: #42362c !important;
}

/* 3.2.6: delivery/payment choice rows. Keep the original input/label DOM and
   AJAX hooks. Only these two blocks are changed; cart/forms are unchanged from 3.2.2. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping :is(.inner-wrapper, .delivery-options-list, .delivery-options),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping #js-delivery > .form-fields,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment :is(#checkout-payment-step, .inner-wrapper, .payment-options, .tc-main-title),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment #checkout-payment-step > .dynamic-content {
  box-sizing: border-box !important;
  margin: 0 !important; padding: 0 !important;
  border: 0 !important; border-radius: 0 !important;
  outline: 0 !important; box-shadow: none !important;
  background: transparent !important; min-width: 0 !important;
}

/* Fixed-width radio column + a genuine gap, not absolute coordinates. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option {
  box-sizing: border-box !important;
  display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
  align-items: center !important; justify-content: flex-start !important;
  column-gap: 20px !important; row-gap: 0 !important;
  position: relative !important; float: none !important;
  width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  min-height: 82px !important; height: auto !important;
  margin: 0 0 12px !important; padding: 0 20px !important;
  border: 1px solid var(--ef-line-strong) !important; border-radius: 2px !important;
  background: #fff !important; box-shadow: none !important;
  overflow: visible !important; text-align: left !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option {
  min-height: 76px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row::before,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row::after,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option::before,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option::after {
  display: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row.emes-fc-selected,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row:has(input[type="radio"]:checked),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option.emes-fc-selected,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option:has(input[type="radio"]:checked) {
  background: #f6f0e8 !important; border-color: #ad9680 !important;
}

/* The only decorative span removed is the native radio's duplicate circle.
   Checkboxes, pickup widgets and gateway inputs are outside these selectors. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio {
  box-sizing: border-box !important;
  display: flex !important; flex: 0 0 22px !important;
  align-items: center !important; justify-content: center !important; align-self: center !important;
  position: static !important; inset: auto !important; float: none !important;
  width: 22px !important; min-width: 22px !important; max-width: 22px !important;
  height: 22px !important; min-height: 22px !important; max-height: 22px !important;
  margin: 0 !important; padding: 0 !important;
  border: 0 !important; background: transparent !important; box-shadow: none !important;
  transform: none !important; line-height: 1 !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio::before,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio::after,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio::before,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio::after,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio > input[type="radio"] + span,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"] + span {
  display: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio > input[type="radio"],
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"] {
  box-sizing: border-box !important;
  appearance: auto !important; -webkit-appearance: radio !important;
  display: block !important; position: static !important; inset: auto !important;
  float: none !important; flex: 0 0 22px !important;
  width: 22px !important; height: 22px !important;
  min-width: 22px !important; max-width: 22px !important;
  min-height: 22px !important; max-height: 22px !important;
  margin: 0 !important; padding: 0 !important;
  opacity: 1 !important; visibility: visible !important;
  clip: auto !important; clip-path: none !important; transform: none !important;
  accent-color: #766251 !important; cursor: pointer;
  background: transparent !important; box-shadow: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .shipping-radio input[type="radio"]:focus-visible,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"]:focus-visible {
  outline: 2px solid #a48c72 !important; outline-offset: 4px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .shipping-radio input[type="radio"]:disabled,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"]:disabled {
  opacity: .45 !important; cursor: not-allowed;
}

/* A full-height label gives the text and logos the same vertical centre as
   the radio, while retaining the existing for/id click association. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > label {
  box-sizing: border-box !important;
  display: flex !important; align-items: center !important; align-self: stretch !important;
  flex: 1 1 0% !important; flex-wrap: nowrap !important;
  position: static !important; float: none !important; inset: auto !important;
  width: auto !important; max-width: 100% !important; min-width: 0 !important;
  height: auto !important; margin: 0 !important; padding: 18px 0 !important;
  border: 0 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important;
  transform: none !important; text-align: left !important; cursor: pointer;
  font: 400 14px/1.45 Arial, Helvetica, sans-serif !important;
  color: var(--ef-ink) !important; letter-spacing: normal !important;
}


html body :is(#tc-container, #tc-container-mobile) :is(#thecheckout-shipping, #thecheckout-payment) {
  --ef-method-logo-width: 88px;
  --ef-method-logo-height: 36px;
  --ef-method-logo-gap: 18px;
}



html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .name-and-delay > :is(.delivery-option-name, .delivery-option-delay) {
  display: block !important; position: static !important;
  margin: 0 !important; padding: 0 !important; width: auto !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: transparent !important; text-align: left !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .name-and-delay > .delivery-option-delay {
  margin-top: 4px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-name,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-call-to-action-and-logo .h6 {
  display: block !important; margin: 0 !important; padding: 0 !important;
  font: 600 15px/1.45 Arial, Helvetica, sans-serif !important;
  color: #2e2722 !important; text-transform: none !important; letter-spacing: normal !important;
  white-space: normal !important; overflow-wrap: anywhere; text-align: left !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-delay {
  font: 400 13px/1.45 Arial, Helvetica, sans-serif !important;
  color: var(--ef-muted) !important; white-space: normal !important; overflow-wrap: anywhere;
}
/* Hide only the duplicated nested price; preserve native free/tax-format spans. */




/* Payment label remains associated with the original radio: text first,
   optional original image on the right. No logo is invented when absent. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > label {
  gap: var(--ef-method-logo-gap) !important;
  justify-content: space-between !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-call-to-action-and-logo {
  display: block !important; flex: 1 1 0% !important; order: 0 !important;
  position: static !important; inset: auto !important; float: none !important;
  min-width: 0 !important; max-width: 100% !important;
  margin: 0 !important; padding: 0 !important; width: auto !important;
  background: transparent !important; border: 0 !important; box-shadow: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > label > .payment-logo {
  display: flex !important; align-items: center !important; justify-content: flex-end !important;
  align-self: center !important;
  position: static !important; inset: auto !important; float: none !important;
  order: 1 !important; flex: 0 0 var(--ef-method-logo-width) !important;
  width: var(--ef-method-logo-width) !important; min-width: 0 !important;
  max-width: var(--ef-method-logo-width) !important;
  height: var(--ef-method-logo-height) !important; min-height: 0 !important;
  margin: 0 !important; padding: 0 !important; transform: none !important;
  border: 0 !important; box-shadow: none !important; background: transparent !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > label > .payment-logo:empty {
  display: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-logo > img {
  display: block !important; position: static !important; inset: auto !important;
  width: auto !important; height: auto !important; min-width: 0 !important; min-height: 0 !important;
  max-width: var(--ef-method-logo-width) !important; max-height: var(--ef-method-logo-height) !important;
  margin: 0 !important; padding: 0 !important; border: 0 !important;
  object-fit: contain !important; object-position: right center !important; transform: none !important;
}

/* Keep original selection/visibility logic. Extra pickup controls stay outside
   the clickable carrier label. Style only their existing .btn elements. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content {
  box-sizing: border-box !important;
  margin: 0 0 18px !important; padding: 0 0 0 63px !important;
  border: 0 !important; background: transparent !important; box-shadow: none !important;
  font: 400 13px/1.6 Arial, Helvetica, sans-serif; color: var(--ef-muted);
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content:empty {
  padding: 0 !important; margin: 0 !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content .btn {
  box-sizing: border-box !important;
  min-height: 42px !important; padding: 10px 16px !important;
  margin: 5px 8px 0 0 !important;
  border: 1px solid #b8a390 !important; border-radius: 2px !important;
  background: #f0e9e1 !important; color: #42362c !important;
  font: 600 13px/1.45 Arial, Helvetica, sans-serif !important;
  letter-spacing: normal !important; text-transform: none !important;
  white-space: normal !important; box-shadow: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content .btn:hover {
  background: #e9dfd3 !important; border-color: #8e7762 !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content .btn:focus-visible {
  outline: 2px solid #a48c72 !important; outline-offset: 3px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment :is(.additional-information, .js-payment-option-form) {
  box-sizing: border-box !important; padding: 0 0 14px 63px !important;
  border: 0 !important; background: transparent !important;
  color: var(--ef-muted); font-size: 13px;
}

/* Respect native hidden choices and the optional collapse-shipping setting. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row:is([hidden], .hidden, .ps-hidden, .hidden-xs-up),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row:is([style*="display:none"], [style*="display: none"]),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option:is([hidden], .hidden, .ps-hidden, .hidden-xs-up),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option:is([style*="display:none"], [style*="display: none"]) {
  display: none !important;
}
html body.collapse-shipping-methods :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-options-list.shipping-selected .delivery-option-row:not(.selected) {
  min-height: 0 !important; max-height: 0 !important;
  margin: 0 !important; padding: 0 !important;
  border: 0 !important; overflow: hidden !important;
}

@media (max-width: 600px) {
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row,
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option {
    padding: 0 14px !important; column-gap: 16px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) :is(#thecheckout-shipping, #thecheckout-payment) {
    --ef-method-logo-width: 64px;
    --ef-method-logo-height: 30px;
    --ef-method-logo-gap: 12px;
  }
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .carrier-extra-content,
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment :is(.additional-information, .js-payment-option-form) {
    padding-left: 0 !important;
  }
}

@media (max-width: 359px) {
  html body :is(#tc-container, #tc-container-mobile) :is(#thecheckout-shipping, #thecheckout-payment) {
    --ef-method-logo-width: 50px;
    --ef-method-logo-height: 26px;
    --ef-method-logo-gap: 10px;
  }
}

/* Carrier layout 3.2.6: one full-width text column + an independent logo slot.
   Activated only after the SAME original logo node has been made a direct child
   of the existing label. No absolute positioning relative to the text anymore. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row.emes-fc-carrier-row > label.delivery-option-label.emes-fc-carrier-label {
  box-sizing: border-box !important;
  display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
  flex: 1 1 0% !important; align-items: center !important; align-self: stretch !important;
  justify-content: space-between !important; gap: var(--ef-method-logo-gap) !important;
  position: static !important; inset: auto !important; float: none !important;
  width: auto !important; max-width: 100% !important; min-width: 0 !important;
  height: auto !important; min-height: 0 !important;
  margin: 0 !important; padding: 18px 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
  box-shadow: none !important; transform: none !important;
  font: 400 14px/1.45 Arial, Helvetica, sans-serif !important;
  color: var(--ef-ink) !important; text-align: left !important;
  letter-spacing: normal !important; cursor: pointer;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label > .emes-fc-carrier-copy {
  box-sizing: border-box !important;
  display: block !important; flex: 1 1 0% !important; order: 0 !important;
  position: static !important; inset: auto !important; float: none !important;
  width: auto !important; min-width: 0 !important; max-width: 100% !important;
  height: auto !important; min-height: 0 !important;
  margin: 0 !important; padding: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
  box-shadow: none !important; transform: none !important;
  grid-area: auto !important; text-align: left !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label .name-and-delay {
  display: block !important; position: static !important; inset: auto !important;
  float: none !important; width: auto !important; min-width: 0 !important;
  margin: 0 !important; padding: 0 !important; transform: none !important;
  border: 0 !important; background: transparent !important; box-shadow: none !important;
}
/* Original direct price is preferred when present. An older template with only
   the nested price keeps that price visible. Native free/tax spans are retained. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label .emes-fc-carrier-copy .delivery-option-price {
  box-sizing: border-box !important; display: block !important;
  position: static !important; inset: auto !important; float: none !important;
  width: auto !important; min-width: 0 !important; max-width: 100% !important;
  margin: 8px 0 0 !important; padding: 0 !important;
  border: 0 !important; box-shadow: none !important; background: transparent !important;
  font: 600 14px/1.5 Arial, Helvetica, sans-serif !important;
  color: var(--ef-ink) !important; text-align: left !important;
  white-space: normal !important; overflow-wrap: anywhere;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label .emes-fc-has-outer-price .name-and-delay .delivery-option-price {
  display: none !important;
}
/* The right slot cannot inherit width/position/transform from an old logo rule. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label > .delivery-option-logo.emes-fc-carrier-brand {
  box-sizing: border-box !important;
  display: flex !important; flex: 0 0 var(--ef-method-logo-width) !important;
  align-items: center !important; justify-content: flex-end !important; align-self: center !important;
  order: 1 !important; position: static !important; inset: auto !important; float: none !important;
  width: var(--ef-method-logo-width) !important; min-width: 0 !important;
  max-width: var(--ef-method-logo-width) !important;
  height: var(--ef-method-logo-height) !important; min-height: 0 !important;
  margin: 0 0 0 auto !important; padding: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
  box-shadow: none !important; transform: none !important;
  grid-area: auto !important; text-align: right !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label > .emes-fc-carrier-brand img,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label > .emes-fc-carrier-brand svg {
  box-sizing: border-box !important; display: block !important;
  position: static !important; inset: auto !important; float: none !important;
  width: auto !important; height: auto !important; min-width: 0 !important; min-height: 0 !important;
  max-width: var(--ef-method-logo-width) !important; max-height: var(--ef-method-logo-height) !important;
  margin: 0 0 0 auto !important; padding: 0 !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  transform: none !important; object-fit: contain !important; object-position: right center !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping label.emes-fc-carrier-label:not(.emes-fc-has-carrier-logo) .delivery-option-logo {
  display: none !important;
}

/* CART STRONG FIX */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary {
  background: #f0e9e1 !important;
  border: 1px solid #d6c9bd !important;
  border-radius: 2px !important;
  overflow: hidden !important;
  margin: 0 0 20px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary > .inner-area {
  padding: 24px !important;
  border: 0 !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary #main,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary :is(.card, .cart-grid, .cart-overview, .cart-summary, .cart-container, .cart-inner-wrapper),
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .card-block {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  position: static !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .block-header {
  font-size: 27px !important;
  margin-bottom: 18px !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-items {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-item {
  padding: 0 0 18px !important;
  margin: 0 0 18px !important;
  border: 0 !important;
  border-bottom: 1px solid #d6c9bd !important;
  background: transparent !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-item .product-line {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) !important;
  grid-template-areas:
    "image body"
    "image actions" !important;
  gap: 14px 14px !important;
  align-items: start !important;
  justify-content: stretch !important;
  padding: 0 !important;
  min-height: 0 !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-image {
  grid-area: image !important;
  flex: none !important;
  float: none !important;
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-image img {
  display: block !important;
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  height: 132px !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-body {
  grid-area: body !important;
  display: block !important;
  flex: none !important;
  flex-grow: 0 !important;
  flex-basis: auto !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  align-self: start !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-desc {
  display: block !important;
  flex: none !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-desc > br,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-info.product-price.h5 {
  display: none !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-info {
  display: block !important;
  width: 100% !important;
  margin: 0 0 5px !important;
  padding: 0 !important;
  clear: both !important;
  position: static !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-title,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-title a {
  display: block !important;
  color: var(--ef-ink) !important;
  font: 400 16px/1.35 Georgia, "Times New Roman", serif !important;
  text-decoration: none !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-attribute,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-attribute .label {
  font: 400 12px/1.45 Arial, Helvetica, sans-serif !important;
  color: #72685f !important;
  background: transparent !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-info.quantity-info {
  margin-top: 6px !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .qty-label.label-success {
  display: inline-block !important;
  padding: 4px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #dfe4d7 !important;
  color: #46533b !important;
  font: 500 11px/1.4 Arial, Helvetica, sans-serif !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-actions {
  grid-area: actions !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 8px 0 0 !important;
  margin: 0 !important;
  flex-basis: auto !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-actions > div {
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
  line-height: 1.4 !important;
  text-align: left !important;
  flex: 0 0 auto !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-qty {
  order: 1 !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-price {
  order: 2 !important;
  margin-left: auto !important;
  text-align: right !important;
  white-space: nowrap !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-delete {
  order: 3 !important;
  margin-left: 6px !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-price .product-price {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #28231f !important;
  white-space: nowrap !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .qty-container,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .qty-box {
  display: flex !important;
  align-items: stretch !important;
  transform: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .qty-box input.cart-line-product-quantity {
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid #c4b6a9 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: #28231f !important;
  font: 400 13px/32px Arial, Helvetica, sans-serif !important;
  text-align: center !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .qty-box a {
  display: block !important;
  width: 30px !important;
  height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid #c4b6a9 !important;
  border-radius: 0 !important;
  background-color: #fff !important;
  background-size: 12px !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .remove-from-cart {
  display: flex !important;
  width: 30px !important;
  height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  color: #28231f !important;
}

html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-detailed-totals {
  border: 0 !important;
  width: 100% !important;
  left: auto !important;
  margin-top: 4px !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-summary-line {
  width: 100% !important;
  padding: 6px 0 !important;
  margin: 0 !important;
  color: #5b5046 !important;
  font: 400 13px/1.6 Arial, Helvetica, sans-serif !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-summary-line > .label {
  color: inherit !important;
  font: inherit !important;
  background: transparent !important;
  padding: 0 !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-summary-line > .value {
  float: right;
  color: var(--ef-ink) !important;
  font: inherit !important;
  white-space: nowrap;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-summary-line.cart-total {
  margin-top: 16px !important;
  padding-top: 16px !important;
  border-top: 1px solid #cabbac !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-summary-line.cart-total > :is(.label, .value) {
  font-weight: 600 !important;
  font-size: 16px !important;
  color: #28231f !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-voucher {
  margin: 10px 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-voucher > p > a.promo-code-button {
  display: inline-block;
  border: 0 !important;
  background: transparent !important;
  color: #5b5046 !important;
  padding: 5px 0 !important;
  font: 400 12px/1.5 Arial, Helvetica, sans-serif !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* note / consents / button */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-order-message label,
html body :is(#tc-container, #tc-container-mobile) #conditions-to-approve .condition-label label {
  font: 400 13px/1.6 Arial, Helvetica, sans-serif !important;
  color: #5b5046 !important;
}
html body :is(#tc-container, #tc-container-mobile) #conditions-to-approve,
html body :is(#tc-container, #tc-container-mobile) #conditions-to-approve > ul {
  display: block !important;
  width: 100% !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body :is(#tc-container, #tc-container-mobile) #conditions-to-approve > ul > li {
  display: flex !important;
  gap: 10px !important;
  align-items: flex-start !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
}
html body :is(#tc-container, #tc-container-mobile) #confirm_order {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  min-height: 54px !important;
  padding: 15px 22px !important;
  margin: 18px 0 0 !important;
  border: 1px solid #28231f !important;
  border-radius: 2px !important;
  background: #28231f !important;
  color: #fff !important;
  box-shadow: none !important;
  font: 600 12px/1.6 Arial, Helvetica, sans-serif !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}
html body :is(#tc-container, #tc-container-mobile) #confirm_order:hover {
  background: #514338 !important;
  border-color: #514338 !important;
}

html body :is(#tc-container, #tc-container-mobile) .error-msg {
  font-size: 13px !important;
  line-height: 1.5 !important;
  color: #982e2e !important;
  background-color: #fff0ed !important;
  border-radius: 2px;
}

@media (min-width: 992px) and (max-width: 1100px) {
  html body #tc-container.emes-fc-grid {
    grid-template-columns: minmax(0, 1fr) 350px;
    column-gap: 24px;
  }
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary > .inner-area {
    padding: 20px !important;
  }
}

@media (max-width: 600px) {
  body.emes-fc-page .emes-fc-shell {
    width: calc(100% - 32px) !important;
  }
  body.emes-fc-page #emes-fc-intro {
    padding: 22px 0 21px;
  }
  body.emes-fc-page #emes-fc-intro h1 {
    font-size: 30px;
  }
  body.emes-fc-page #emes-fc-intro p {
    font-size: 13px;
  }
  html body :is(#tc-container, #tc-container-mobile) .checkout-block > .inner-area {
    padding: 20px 16px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) .checkout-block .block-header {
    font-size: 21px !important;
    margin-bottom: 17px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) .has-float-label > .form-control {
    font-size: 16px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary > .inner-area {
    padding: 18px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line,
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .cart-item .product-line {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-image,
  html body :is(#tc-container, #tc-container-mobile) #thecheckout-cart-summary .product-line-image img {
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    height: 106px !important;
  }
}


/* 3.2.6 — Native validation state, not a second validator.
   No :invalid on untouched fields. Never force error messages to display,
   change their text, show hidden controls, or override disabled behaviour. */
html body :is(#tc-container, #tc-container-mobile) {
  --ef-error: #a3382e;
  --ef-error-line: #bc5a4e;
  --ef-error-soft: #fff6f3;
}
/* These selectors intentionally outrank the skin's !important base field border. */
html body :is(#tc-container, #tc-container-mobile) .checkout-block .has-float-label > .form-control.-error,
html body :is(#tc-container, #tc-container-mobile) .checkout-block .has-float-label > .form-control.emes-fc-v-control,
html body :is(#tc-container, #tc-container-mobile) .checkout-block .has-float-label > .form-control[aria-invalid="true"],
html body :is(#tc-container, #tc-container-mobile) .checkout-block .form-group.has-error .form-control:not(.-former-error),
html body :is(#tc-container, #tc-container-mobile) .checkout-block :is(input, select, textarea).emes-fc-v-control {
  border-color: var(--ef-error-line) !important;
  background-color: var(--ef-error-soft) !important;
  box-shadow: inset 0 0 0 1px var(--ef-error-line) !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block .has-float-label > .form-control.-error:focus,
html body :is(#tc-container, #tc-container-mobile) .checkout-block :is(input, select, textarea).emes-fc-v-control:focus {
  border-color: var(--ef-error) !important;
  outline: 2px solid var(--ef-error-line) !important;
  outline-offset: 2px !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block .form-group.emes-fc-v-field .has-float-label > .field-label {
  color: var(--ef-error) !important;
}
/* Block outline is a quiet red accent; ordinary ivory/sand design is unchanged. */
html body :is(#tc-container, #tc-container-mobile) :is(.checkout-block, #thecheckout-cart-summary).emes-fc-v-block {
  border-color: var(--ef-error-line) !important;
  box-shadow: inset 3px 0 0 var(--ef-error-line) !important;
}
/* Leave native display:none/.visible/jQuery show-hide rules untouched. */
html body :is(#tc-container, #tc-container-mobile) .checkout-block :is(.error-msg, .error-enter-email, #errors-login-form, .alert-danger) {
  box-sizing: border-box !important;
  position: relative !important;
  inset: auto !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 8px 0 14px !important;
  padding: 10px 12px 10px 36px !important;
  border: 1px solid #e3b5ad !important;
  border-left: 3px solid var(--ef-error-line) !important;
  border-radius: 2px !important;
  background: var(--ef-error-soft) !important;
  box-shadow: none !important;
  color: #862d25 !important;
  font: 400 13px/1.5 Arial, Helvetica, sans-serif !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  letter-spacing: normal !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block :is(.error-msg, .error-enter-email, #errors-login-form, .alert-danger)::before {
  content: "!";
  position: absolute;
  left: 11px; top: 11px;
  width: 16px; height: 16px;
  border: 1px solid currentColor;
  border-radius: 50%;
  font: 700 11px/14px Arial, Helvetica, sans-serif;
  text-align: center;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block :is(.error-msg, .error-enter-email, #errors-login-form, .alert-danger) a {
  color: inherit !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
/* Field feedback remains below its own control, including inline phone prefixes. */
html body :is(#tc-container, #tc-container-mobile) .checkout-block .has-float-label > .field.error-msg {
  order: 2 !important;
  margin-bottom: 0 !important;
}
/* Both native and theme-decorated choice controls stay clickable. No ticks added. */
html body :is(#tc-container, #tc-container-mobile) .checkout-block input:is([type="checkbox"], [type="radio"]).emes-fc-v-control {
  accent-color: var(--ef-error) !important;
  outline: 2px solid var(--ef-error-line) !important;
  outline-offset: 3px !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block .custom-checkbox > input.emes-fc-v-control + span,
html body :is(#tc-container, #tc-container-mobile) .checkout-block .custom-radio > input.emes-fc-v-control + span {
  border-color: var(--ef-error-line) !important;
  box-shadow: 0 0 0 1px var(--ef-error-line) !important;
}
html body :is(#tc-container, #tc-container-mobile) .checkout-block .form-group.emes-fc-v-choice,
html body :is(#tc-container, #tc-container-mobile) #conditions-to-approve > ul > li.emes-fc-v-choice {
  background-color: var(--ef-error-soft) !important;
  outline: 1px solid #e3b5ad !important;
  outline-offset: 5px !important;
}
/* Native minimum-purchase warning must fit the button/block, not a 120% overlay. */
html body :is(#tc-container, #tc-container-mobile) #confirm_order.minimal-purchase-error .minimal-purchase-error-msg {
  box-sizing: border-box !important;
  position: static !important; inset: auto !important;
  width: 100% !important; min-height: 0 !important;
  margin: 0 0 10px !important; padding: 10px 12px !important;
  border: 1px solid #e3b5ad !important; border-radius: 2px !important;
  background: var(--ef-error-soft) !important; color: #862d25 !important;
  font: 400 13px/1.5 Arial, Helvetica, sans-serif !important;
  text-transform: none !important; letter-spacing: normal !important;
  white-space: normal !important; overflow-wrap: anywhere !important;
}

/* Choice-control selectors also beat the native themed radio focus ring. */
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio > input[type="radio"].emes-fc-v-control,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"].emes-fc-v-control,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-shipping .delivery-option-row > .shipping-radio > .custom-radio > input[type="radio"].emes-fc-v-control:focus-visible,
html body :is(#tc-container, #tc-container-mobile) #thecheckout-payment .payment-option > .custom-radio > input[type="radio"].emes-fc-v-control:focus-visible {
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
  accent-color: var(--ef-error) !important;
  outline: 2px solid var(--ef-error-line) !important;
  outline-offset: 3px !important;
}
