/* eSaabParts checkout. Loaded after the PrestaShop theme CSS on order-opc only. */
#order-opc {
  background: #f7f8fa;
  color: #313942;
  font-size: 15px;
}
#order-opc #columns h1, #order-opc #columns h2, #order-opc #columns h3,
#order-opc #columns h4, #order-opc #columns h5, #order-opc #columns h6,
#order-opc #columns p, #order-opc #columns a, #order-opc #columns label,
#order-opc #columns span:not([class^='icon-']):not([class*=' icon-']),
#order-opc #columns input, #order-opc #columns select, #order-opc #columns option,
#order-opc #columns textarea, #order-opc #columns button,
#order-opc #columns table, #order-opc #columns th, #order-opc #columns td, #order-opc #columns li,
#order-opc #columns .button, #order-opc #columns .page-heading, #order-opc #columns .page-subheading,
#order-opc #columns #HOOK_PAYMENT p {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}
/* Some legacy PrestaShop containers set Saab directly with !important. Keep
   the storefront header/footer untouched, but normalize every checkout-content
   container so its plain text inherits the same native OS font stack. */
#order-opc #columns,
#order-opc #columns div,
#order-opc #columns fieldset,
#order-opc #columns legend {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}
#order-opc a { color: #a50000; }
#order-opc a:hover, #order-opc a:focus { color: #790000; }
#order-opc .header-container { background: #fff; box-shadow: 0 2px 10px rgba(24,34,43,.07); }
#order-opc #header > .banner,
#order-opc #header > .nav,
#order-opc #header > .esaab-legacy-logo-row { display: none; }
#order-opc .esaab-checkout-header { background: #fff; }
#order-opc .esaab-checkout-header-main {
  width: min(100% - 40px, 1280px);
  min-height: 80px;
  margin: auto;
  display: flex;
  align-items: center;
  gap: 28px;
}
#order-opc .esaab-checkout-logo { display: block; flex: 0 0 auto; }
#order-opc .esaab-checkout-logo img { display: block; width: 265px; max-width: 100%; height: auto; }
#order-opc .esaab-checkout-search {
  display: flex;
  flex: 1;
  max-width: 540px;
  height: 42px;
  margin-left: auto;
}
#order-opc .esaab-checkout-search input {
  min-width: 0;
  width: 100%;
  border: 1px solid #d7dce2;
  border-right: 0;
  border-radius: 7px 0 0 7px;
  padding: 0 14px;
  background: #fff;
  color: #30363b;
  font-size: 14px;
}
#order-opc .esaab-checkout-search button {
  width: 50px;
  border: 0;
  border-radius: 0 7px 7px 0;
  background: #b50000;
  color: #fff;
  font-size: 17px;
}
#order-opc .esaab-checkout-search button:hover { background: #930000; }
#order-opc .esaab-checkout-header-actions { display: flex; align-items: center; gap: 18px; white-space: nowrap; font-size: 14px; font-weight: 700; }
#order-opc .esaab-checkout-header-actions > a { color: #30363b; }
#order-opc .esaab-checkout-header-actions > a:hover { color: #a50000; }
#order-opc .esaab-checkout-cart-link {
  border: 1px solid #dfe4e9;
  background: #f7f8fa;
  padding: 10px 13px;
  border-radius: 7px;
}
#order-opc .esaab-checkout-cart-link span { display: inline-block; min-width: 21px; line-height: 21px; text-align: center; border-radius: 50%; background: #b50000; color: #fff; font-size: 12px; }
#order-opc .esaab-checkout-nav { min-height: 0; border: 0; background: #30363b; }
#order-opc .esaab-checkout-nav-inner { width: min(100% - 40px, 1280px); min-height: 44px; margin: auto; }
#order-opc .esaab-checkout-menu-toggle { display: none; }
#order-opc .esaab-checkout-nav-collapse { display: flex !important; align-items: center; padding: 0; }
#order-opc .esaab-checkout-nav .navbar-nav { display: flex; float: none; margin: 0; padding: 0; background: transparent !important; list-style: none; }
#order-opc .esaab-checkout-nav .navbar-nav > li { float: none; }
#order-opc .esaab-checkout-nav .navbar-nav > li > a {
  position: relative;
  display: block;
  padding: 13px 15px;
  background: transparent;
  color: #f4f5f6;
  font-size: 13px;
  font-weight: 700;
  line-height: 18px;
}
#order-opc .esaab-checkout-nav .navbar-nav > li > a:hover,
#order-opc .esaab-checkout-nav .navbar-nav > li > a:focus,
#order-opc .esaab-checkout-nav .navbar-nav > .open > a,
#order-opc .esaab-checkout-nav .navbar-nav > .open > a:hover,
#order-opc .esaab-checkout-nav .navbar-nav > .open > a:focus {
  background: #24292e;
  color: #fff;
  text-decoration: none;
}
#order-opc .esaab-checkout-nav .caret {
  margin-left: 6px;
  border-top-color: #9ca4ab !important;
  border-bottom-color: #9ca4ab !important;
}
#order-opc .esaab-checkout-nav .dropdown-menu {
  margin: 0;
  padding: 8px;
  border: 1px solid #d9dde0;
  border-radius: 0 0 9px 9px;
  box-shadow: 0 10px 25px rgba(25,35,45,.16);
}
#order-opc .esaab-checkout-nav .dropdown-menu > li > a {
  padding: 8px 10px;
  border-radius: 5px;
  color: #3f474e;
  font-size: 13px;
}
#order-opc .esaab-checkout-nav .dropdown-menu > li > a:hover,
#order-opc .esaab-checkout-nav .dropdown-menu > li > a:focus { background: #f1f3f4; color: #a90000; }
#order-opc .esaab-checkout-nav .dropdown-header {
  padding: 7px 10px 4px;
  color: #7a8188;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
#order-opc .esaab-checkout-nav .divider { margin: 6px 4px; background: #e7eaec; }
#order-opc .esaab-checkout-model-menu { min-width: 500px; }
#order-opc .esaab-checkout-nav .open > .esaab-checkout-model-menu { display: grid; grid-template-columns: repeat(2, minmax(220px, 1fr)); }
#order-opc .esaab-checkout-tools-menu { min-width: 300px; max-height: 72vh; overflow-y: auto; }
#order-opc .esaab-checkout-nav-note { margin-left: auto; padding: 0 4px; color: #bfc5ca; font-size: 12px; }

#order-opc .columns-container { background: #f7f8fa; }
#order-opc #columns { width: 100%; max-width: 1320px !important; padding: 30px 20px 60px; }
#order-opc #center_column { float: none; width: 100%; }
#order-opc #cart_title.page-heading,
#order-opc .esaab-empty-cart .page-heading {
  display: flex !important;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 14px;
  padding: 0 0 14px;
  border: 0;
  border-bottom: 1px solid #dfe4e9;
  color: #30363b;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: none;
}
#order-opc #cart_title .heading-counter { float: none; margin: 0; color: #69747f; font-size: 14px; text-transform: none; font-weight: 400; }
#order-opc #cart_title .esaab-cart-heading-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #a50000;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: none;
}
#order-opc #cart_title .esaab-cart-heading-link:hover,
#order-opc #cart_title .esaab-cart-heading-link:focus { color: #790000; text-decoration: none; }
#order-opc #cart_title .esaab-cart-heading-link i { font-size: 14px; }
#order-opc .esaab-continue-shopping { margin: 0 0 18px; }
#order-opc .esaab-continue-shopping a.button-exclusive { display: inline-flex; align-items: center; gap: 9px; padding: 8px 0; border: 0; background: none; color: #a50000; font-size: 14px; font-weight: 700; box-shadow: none; }
#order-opc .esaab-continue-shopping a.button-exclusive i { color: inherit; }

#order-opc #order-detail-content { overflow-x: auto; background: #fff; border: 1px solid #dfe4e9; border-radius: 10px; box-shadow: 0 2px 8px rgba(24,34,43,.035); }
#order-opc #cart_summary { width: 100%; margin-bottom: 0; border: 0; background: #fff; }
#order-opc #cart_summary thead { background: #f6f8fa; }
#order-opc #cart_summary thead th { padding: 14px 12px; border: 0; border-bottom: 1px solid #e2e6ea; color: #5b6670; font-size: 12px; font-weight: 700; text-transform: uppercase; }
#order-opc #cart_summary tbody tr.cart_item { background: #fff; }
#order-opc #cart_summary tbody tr.cart_item td { padding: 19px 12px; vertical-align: middle; border-color: #e9edf0; }
#order-opc #cart_summary tbody td.cart_product { width: 116px; min-width: 116px; text-align: center; }
#order-opc #cart_summary tbody td.cart_product img { display: block; width: 90px; height: 90px; max-width: 90px; margin: auto; object-fit: contain; border: 1px solid #edf0f2; border-radius: 7px; background: #fff; }
#order-opc #cart_summary tbody td.cart_description { min-width: 240px; width: auto; }
#order-opc #cart_summary tbody td.cart_description .product-name a { color: #30363b; font-size: 16px; font-weight: 700; line-height: 1.35; }
#order-opc #cart_summary tbody td.cart_description .product-name a:hover { color: #a50000; }
#order-opc #cart_summary tbody td.cart_description .cart_ref { display: block; margin-top: 6px; color: #69747f; font-size: 12px; }
#order-opc #cart_summary tbody td.cart_unit, #order-opc #cart_summary tbody td.cart_total { white-space: nowrap; }
#order-opc #cart_summary tbody td.cart_unit ul.price { margin: 0; padding: 0; list-style: none; }
#order-opc #cart_summary tbody td.cart_unit .price { color: #30363b; font-size: 16px; font-weight: 700; line-height: 1.2; }
#order-opc #cart_summary tbody td.cart_total .price { color: #30363b; font-weight: 700; font-size: 16px; }
#order-opc #cart_summary tbody td.cart_avail span { background: #e9f6ee; border: 1px solid #b9dfc6; border-radius: 5px; color: #21683d; padding: 5px 8px; font-size: 12px; white-space: nowrap; }
#order-opc #cart_summary tbody td.cart_avail span.label-warning { background: #fff4df; border-color: #eed5a6; color: #805710; }
#order-opc #cart_summary .cart_quantity_input { width: 64px; height: 34px; margin: 0 auto 4px; border-radius: 5px; text-align: center; box-shadow: none; }
#order-opc #cart_summary .cart_quantity_button { display: inline-flex; width: 66px; gap: 4px; vertical-align: middle; }
#order-opc #cart_summary .cart_quantity_button::before,
#order-opc #cart_summary .cart_quantity_button::after { display: none !important; content: none !important; }
#order-opc #cart_summary .cart_quantity_button a { height: 31px; width: 31px; padding: 4px; border-radius: 4px; color: #30363b; }
#order-opc #cart_summary .cart_quantity_button a,
#order-opc #cart_summary .cart_quantity_button a + a { float: none !important; margin: 0 !important; }
#order-opc #cart_summary .cart_quantity_delete { font-size: 18px; color: #7b8790; }
#order-opc #cart_summary .cart_quantity_delete:hover { color: #a50000; }
#order-opc #cart_summary tfoot tr { background: #fff; }
#order-opc #cart_summary tfoot td { padding: 10px 13px; border-color: #e9edf0; }
#order-opc #cart_summary tfoot td.text-right { color: #5b6670; font-weight: 500; }
#order-opc #cart_summary tfoot td.price { color: #30363b; font-weight: 700; }
#order-opc #cart_summary tfoot .total_price_container span, #order-opc #cart_summary tfoot #total_price { color: #30363b; font-weight: 700; }
#order-opc #cart_summary tfoot #total_price_container { background: #f6f8fa; }
#order-opc #cart_summary #cart_voucher { vertical-align: middle !important; background: #fff; }
#order-opc #cart_voucher #voucher { width: min(100%, 430px); margin: 0 auto; }
#order-opc #cart_voucher h4 { color: #30363b; font-size: 14px; text-transform: none; }
#order-opc #voucher .discount_name { width: min(100%, 255px); height: 39px; display: inline-block; border-radius: 5px; }
#order-opc #voucher button {
  min-height: 39px;
  padding: 0 17px !important;
  border: 1px solid #30363b !important;
  border-radius: 5px;
  background: #30363b !important;
  box-shadow: none !important;
  color: #fff !important;
  text-shadow: none !important;
}
#order-opc #voucher button:hover,
#order-opc #voucher button:focus { border-color: #1f252a !important; background: #1f252a !important; }
#order-opc #voucher button span {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  text-shadow: none !important;
}

#order-opc #carrier_area, #order-opc #opc_new_account { margin-top: 26px; }
#order-opc #opc_account, #order-opc #opc_payment_methods { margin-top: 14px; }
#order-opc .page-heading.step-num {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 37px;
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  overflow: visible;
  color: #30363b;
  font-size: 21px;
  font-weight: 700;
  line-height: 37px;
  text-transform: none;
}
#order-opc .page-heading.step-num > span {
  position: static !important;
  float: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 33px;
  width: 33px;
  height: 33px;
  margin: 0 !important;
  padding: 0 !important;
  transform: none;
  border-radius: 50%;
  background: #b50000;
  color: #fff;
  font-size: 17px;
  font-style: normal;
  line-height: 1;
  vertical-align: middle;
}
#order-opc .order_carrier_content.box, #order-opc #login_form.box,
#order-opc #new_account_form > fieldset > .box,
#order-opc .addresses .address.box, #order-opc .paiement_block {
  background: #fff;
  border: 1px solid #dfe4e9;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(24,34,43,.035);
}
#order-opc .order_carrier_content.box, #order-opc #login_form.box,
#order-opc #new_account_form > fieldset > .box, #order-opc .paiement_block { padding: 22px 24px; }
#order-opc .page-subheading { color: #30363b; font-size: 17px; font-weight: 700; text-transform: none; }
#order-opc .carrier_title { color: #5b6670; font-size: 14px; font-weight: 400; line-height: 1.6; }
#order-opc .delivery_option { cursor: pointer; }
#order-opc .delivery_option > div { margin: 0 0 10px; }
#order-opc .delivery_option > div > table.resume {
  height: auto;
  border: 1px solid #dfe4e9;
  border-radius: 7px;
  border-collapse: separate;
  overflow: hidden;
  transition: border-color .15s, background-color .15s;
}
#order-opc .delivery_option:hover > div > table.resume { border-color: #c7cdd3; background: #fbfcfd; }
#order-opc .delivery_option > div > table.resume:has(input.delivery_option_radio:checked) { border-color: #b50000; background: #fff9f9; }
#order-opc .delivery_option > div > table.resume td { padding: 15px 12px; vertical-align: middle; border: 0; color: #424b53; }
#order-opc .delivery_option > div > table.resume td.delivery_option_radio { width: 50px; padding: 15px 10px; }
#order-opc .delivery_option > div > table.resume td.delivery_option_logo { width: 175px; padding: 15px 12px; }
#order-opc .delivery_option > div > table.resume td.delivery_option_logo img { max-width: 100%; max-height: 48px; object-fit: contain; }
#order-opc .delivery_option > div > table.resume td.delivery_option_price { width: 125px; font-weight: 700; color: #30363b; }
#order-opc .delivery_option input[type=radio] { accent-color: #b50000; }
#order-opc #carrier_area .well { padding-bottom: 19px !important; }
#order-opc #carrier_area #message { margin-bottom: 0 !important; }

#order-opc #login_form { margin-bottom: 16px; }
#order-opc #login_form .page-subheading { display: inline-block; margin: 0 18px 0 0; border: 0; }
#order-opc #openLoginFormBlock { display: inline-block; font-weight: 700; }
#order-opc #login_form_content { margin-top: 19px; }
#order-opc #opc_account_choice > div { border-radius: 8px; padding: 14px 20px; }
#order-opc #opc_account_choice .title_block { color: #30363b; font-size: 16px; }
#order-opc #new_account_form > fieldset { min-width: 0; width: 100%; }
#order-opc #opc_account_form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 20px; margin-top: 12px; }
#order-opc #opc_account_form.unvisible { display: none !important; }
#order-opc #opc_account_form .gender-line,
#order-opc #opc_account_form .date-select { display: none !important; }
#order-opc #opc_account_form > .page-subheading, #order-opc #opc_account_form > .gender-line,
#order-opc #opc_account_form > .checkbox, #order-opc #opc_account_form > .inline-infos,
#order-opc #opc_account_form > .submit, #order-opc #opc_account_form > .alert,
#order-opc #opc_account_form > #opc_invoice_address, #order-opc #opc_account_form > .date-select,
#order-opc #opc_account_form > .opc-turnstile-customer { grid-column: 1 / -1; }
#order-opc .opc-turnstile { display: flex; justify-content: center; min-height: 65px; margin: 18px 0 12px; }
#order-opc #opc_account_form .form-group { min-width: 0; max-width: none; margin-bottom: 4px; }
#order-opc #opc_account_form .form-group .form-control,
#order-opc #login_form .form-control { width: 100%; max-width: 100%; height: 42px; border: 1px solid #cfd6dd; border-radius: 5px; box-shadow: none; color: #424b53; font-size: 15px; box-sizing: border-box; }
#order-opc #opc_account_form .form-group .form-control:focus,
#order-opc #login_form .form-control:focus { border-color: #8c0000; box-shadow: 0 0 0 3px rgba(181, 0, 0, .13); }
#order-opc #opc_account_form textarea.form-control { height: 95px !important; min-height: 95px; resize: vertical; }
#order-opc #opc_account_form label, #order-opc #login_form label { color: #424b53; font-size: 13px; font-weight: 700; }
#order-opc #opc_account_form > .page-subheading { margin: 24px 0 0; padding-bottom: 10px; border-bottom: 1px solid #e5e8ec; }
#order-opc #opc_account_form .date-select .form-control { max-width: 100%; }
#order-opc #opc_account_form .opc-field-full { grid-column: 1 / -1; }
#order-opc #opc_invoice_address {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 20px;
  max-width: 100%;
}
#order-opc #opc_invoice_address.unvisible { display: none !important; }
#order-opc #opc_invoice_address > .page-subheading,
#order-opc #opc_invoice_address > .inline-infos { grid-column: 1 / -1; }
#order-opc #opc_invoice_address > .page-subheading { margin: 24px 0 0; padding-bottom: 10px; border-bottom: 1px solid #e5e8ec; }

#order-opc #opc_account_form > .checkbox label[for='invoice_address'] {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  margin: 5px 0 0;
  padding: 9px 12px;
  border: 1px solid #d9dee4;
  border-radius: 7px;
  background: #f8f9fa;
  cursor: pointer;
}
#order-opc #opc_account_form #uniform-invoice_address,
#order-opc #opc_account_form #uniform-invoice_address > span {
  position: static !important;
  display: block;
  flex: 0 0 22px;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}
#order-opc #opc_account_form #invoice_address {
  position: static !important;
  display: block !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  opacity: 1 !important;
  accent-color: #b50000;
  cursor: pointer;
}

/* Uniform wraps checkout selects in a 27px sprite control. Rebuild that
   wrapper at the same 42px height as the rest of the account form. */
#order-opc #opc_account_form div.selector {
  position: relative !important;
  float: none !important;
  clear: none !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #cfd6dd !important;
  border-radius: 5px !important;
  background: #fff !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
#order-opc #opc_account_form div.selector:focus-within {
  border-color: #8c0000 !important;
  box-shadow: 0 0 0 3px rgba(181, 0, 0, .13) !important;
}
#order-opc #opc_account_form div.selector > span {
  display: block !important;
  width: 100% !important;
  height: 40px !important;
  padding: 0 42px 0 12px !important;
  border: 0 !important;
  background: none !important;
  color: #30363b !important;
  font-size: 15px !important;
  line-height: 40px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#order-opc #opc_account_form div.selector::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: 14px;
  right: 16px;
  width: 9px;
  height: 9px;
  border: solid #727b83;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  pointer-events: none;
}
#order-opc #opc_account_form div.selector select {
  position: absolute !important;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100% !important;
  max-width: none !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  font-size: 15px !important;
  cursor: pointer;
}
#order-opc .opc-add-save {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 4px;
}
#order-opc .opc-add-save .opc-required { float: none !important; margin: 0; order: 2; }
#order-opc .opc-add-save #submitAccount { order: 1; }
#order-opc .addresses .address.box { min-height: 235px; padding: 20px; }
#order-opc .addresses .address .page-subheading { padding-bottom: 11px; border-bottom: 1px solid #e5e8ec; }
#order-opc .addresses .address_delivery .selector,
#order-opc .addresses #address_invoice_form .selector {
  position: relative;
  float: none !important;
  clear: none !important;
  display: block;
  width: 100% !important;
  max-width: 400px;
  height: 42px !important;
  padding: 0 !important;
  border: 1px solid #cfd6dd;
  border-radius: 5px;
  background: #fff !important;
  line-height: 42px !important;
  box-sizing: border-box;
  overflow: hidden;
}
#order-opc .addresses .address_delivery {
  display: block;
  margin-bottom: 16px !important;
}
#order-opc .addresses .address_delivery > label,
#order-opc .addresses #address_invoice_form > label {
  float: none !important;
  clear: none !important;
  display: block;
  margin: 0 0 7px;
}
#order-opc .addresses .address_delivery .selector > span,
#order-opc .addresses #address_invoice_form .selector > span {
  display: block;
  width: 100% !important;
  height: 40px !important;
  padding: 0 42px 0 12px !important;
  border: 0 !important;
  background: none !important;
  line-height: 40px !important;
  box-sizing: border-box;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 15px;
}
#order-opc .addresses .address_delivery .selector::after,
#order-opc .addresses #address_invoice_form .selector::after {
  content: '';
  position: absolute;
  z-index: 1;
  top: 14px;
  right: 16px;
  width: 9px;
  height: 9px;
  border: solid #727b83;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  pointer-events: none;
}
#order-opc .addresses .address_delivery select,
#order-opc .addresses #address_invoice_form select {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 400px;
  height: 42px;
  margin: 0;
  opacity: 0;
  border-radius: 5px;
  font-size: 15px;
}
#order-opc #opc_account .esaab-address-match,
#order-opc .addresses .esaab-address-match {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  float: none;
  width: 100%;
  max-width: 400px;
  min-height: 46px;
  margin: 0 0 6px !important;
  padding: 9px 12px;
  border: 1px solid #d9dee4;
  border-radius: 7px;
  background: #f8f9fa;
}
#order-opc .addresses .esaab-address-match .checker,
#order-opc .addresses #uniform-addressesAreEquals {
  position: relative;
  display: block;
  flex: 0 0 22px;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}
#order-opc .addresses .esaab-address-match .checker span,
#order-opc .addresses #uniform-addressesAreEquals span {
  position: static !important;
  display: block;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}
#order-opc .addresses #addressesAreEquals {
  position: static !important;
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  -webkit-appearance: checkbox !important;
  appearance: auto !important;
  cursor: pointer;
  accent-color: #b50000;
}
#order-opc .addresses label[for='addressesAreEquals'] {
  margin: 0;
  color: #30363b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
}

/* Remove the legacy PrestaShop bevel from the address action buttons. */
#order-opc .address_add {
  margin: 16px 0 18px;
}
#order-opc .address_add a.button,
#order-opc .addresses .address_update a.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  margin: 0;
  padding: 0 16px !important;
  border: 1px solid #a70000 !important;
  border-radius: 6px !important;
  background: #b50000 !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
  text-shadow: none !important;
  transition: background-color .15s ease, border-color .15s ease;
}
#order-opc .address_add a.button span,
#order-opc .addresses .address_update a.button span {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: inherit !important;
  font: inherit;
  line-height: 1 !important;
  text-shadow: none !important;
}
#order-opc .address_add a.button i,
#order-opc .addresses .address_update a.button i {
  margin: 0 !important;
  color: inherit !important;
  font-size: 12px;
}
#order-opc .address_add a.button:hover,
#order-opc .address_add a.button:focus,
#order-opc .addresses .address_update a.button:hover,
#order-opc .addresses .address_update a.button:focus {
  border-color: #870000 !important;
  background: #930000 !important;
  color: #fff !important;
}
#order-opc .addresses .address_update {
  margin-top: 18px;
}
#order-opc input[type=checkbox], #order-opc input[type=radio] { accent-color: #b50000; }
#order-opc #opc_payment_methods .paiement_block { padding-bottom: 20px; }

/* Compact, non-clickable payment acceptance guide shown below the actionable
   payment buttons. Flexible rows avoid the oversized gap created by fixed
   brand columns and allow the marks to wrap cleanly on narrow screens. */
#order-opc .esaab-payment-acceptance {
  margin: 14px 0 0;
  padding: 15px 24px;
  border: 1px solid #dfe4e9;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(24,34,43,.035);
  cursor: default;
  user-select: none;
}
#order-opc .esaab-payment-acceptance-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 14px;
}
#order-opc .esaab-payment-acceptance-row + .esaab-payment-acceptance-row {
  margin-top: 10px;
}
#order-opc .esaab-payment-brand-lockup {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 10px;
}
#order-opc .esaab-payment-brand-lockup > img {
  display: block;
  width: auto;
  height: 28px;
  max-width: 138px;
}
#order-opc .esaab-payment-acceptance-content {
  display: flex;
  min-width: 0;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  color: #30363b;
  font-size: 15px;
  line-height: 1.35;
}
#order-opc .esaab-payment-acceptance-copy {
  font-size: 15px;
  font-weight: 500;
  white-space: nowrap;
}
#order-opc .esaab-payment-mark {
  display: inline-flex;
  height: 36px;
  padding: 2px 8px;
  border: 1px solid #d9dee4;
  border-radius: 7px;
  background: #fff;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  pointer-events: none;
}
#order-opc .esaab-payment-mark img {
  display: block;
  width: auto;
  height: 30px;
  max-width: 118px;
}
#order-opc #opc_payment_methods #HOOK_PAYMENT {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 590px));
  justify-content: center;
  gap: 12px;
}
#order-opc #opc_payment_methods #HOOK_PAYMENT > .row {
  width: 100%;
  margin: 0 !important;
}
#order-opc #opc_payment_methods #HOOK_PAYMENT > .row > [class*='col-'] {
  float: none;
  width: 100%;
  padding: 0;
}
#order-opc #opc_payment_methods #HOOK_PAYMENT > #paypal_payment_form,
#order-opc #opc_payment_methods #HOOK_PAYMENT > script,
#order-opc #opc_payment_methods #HOOK_PAYMENT > style {
  display: none !important;
}
#order-opc #opc_payment_methods #HOOK_PAYMENT > .container,
#order-opc #opc_payment_methods #HOOK_PAYMENT > .container > .row {
  width: 100%;
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
}
#order-opc #opc_payment_methods .payment_module,
#order-opc #opc_payment_methods .esaab-payment-option {
  position: relative;
  width: 100%;
  min-height: 76px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d9dee4;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(31, 38, 45, .04);
  overflow: hidden;
}
#order-opc #opc_payment_methods .payment_module > a,
#order-opc #opc_payment_methods .esaab-payment-option > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 76px;
  padding: 14px 18px;
  color: #30363b;
  background: #fff;
  text-decoration: none;
  transition: background-color .16s ease, border-color .16s ease;
}
#order-opc #opc_payment_methods .payment_module:hover,
#order-opc #opc_payment_methods .payment_module:focus-within {
  border-color: #b6bec7;
  background: #fafbfc;
}
#order-opc #opc_payment_methods .payment_module > a:hover,
#order-opc #opc_payment_methods .payment_module > a:focus {
  color: #20262c;
  background: #fafbfc;
  text-decoration: none;
}
#order-opc #opc_payment_methods .payment_module img {
  width: auto;
  max-width: 190px;
  height: auto;
  max-height: 44px;
  margin: 0 16px 0 0;
  object-fit: contain;
}
#order-opc #opc_payment_methods .esaab-payment-paypal {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 76px;
  padding: 12px !important;
}
#order-opc #opc_payment_methods .esaab-payment-paypal > a {
  width: 100%;
  max-width: 460px;
  min-height: 48px;
  margin: 0 auto;
  padding: 0 18px !important;
  border: 1px solid #e5ad25;
  border-radius: 6px;
  background: #ffc439 !important;
  color: #003087 !important;
  font-size: 0;
  line-height: 1;
  box-shadow: none;
}
#order-opc #opc_payment_methods .esaab-payment-paypal > a::after {
  content: 'PayPal';
  color: #003087;
  font: italic 800 21px/1 Arial, Helvetica, sans-serif;
  letter-spacing: -.8px;
}
#order-opc #opc_payment_methods .esaab-payment-paypal > a:hover,
#order-opc #opc_payment_methods .esaab-payment-paypal > a:focus {
  border-color: #d9a11a;
  background: #f2ba36 !important;
}
#order-opc #opc_payment_methods .esaab-payment-paypal br,
#order-opc #opc_payment_methods .esaab-payment-paypal img { display: none; }
#order-opc #opc_payment_methods .payment_module h3,
#order-opc #opc_payment_methods .payment_module p { margin-top: 0; }
#order-opc #opc_payment_methods .payment_module p:last-child { margin-bottom: 0; }

/* Keep official wallet controls intact, but give every provider the same card. */
#order-opc #opc_payment_methods .esaab-payment-wallet {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 12px !important;
}
#order-opc #opc_payment_methods .esaab-payment-wallet #stripe-applepay-form { display: none !important; }
#order-opc #opc_payment_methods .esaab-payment-wallet #payment-request-button {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
}
#order-opc #opc_payment_methods .esaab-payment-wallet button,
#order-opc #opc_payment_methods .esaab-payment-wallet [role=button] {
  min-height: 50px;
  border-radius: 6px !important;
}

/* Stripe's legacy Checkout button gets a restrained Stripe-style treatment. */
#order-opc #opc_payment_methods .esaab-payment-stripe {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 76px;
  padding: 12px !important;
}
#order-opc #opc_payment_methods .esaab-payment-stripe .stripe-button-el,
#order-opc #opc_payment_methods .esaab-payment-stripe button,
#order-opc #opc_payment_methods .esaab-payment-stripe input[type=submit],
#order-opc #opc_payment_methods .esaab-payment-stripe .btn {
  border: 0 !important;
  border-radius: 6px !important;
  background: #635bff !important;
  box-shadow: none !important;
  color: #fff !important;
  text-shadow: none !important;
}
#order-opc #opc_payment_methods .esaab-payment-stripe .stripe-button-el {
  width: 100%;
  max-width: 460px;
  min-height: 48px;
  transition: background-color .16s ease, transform .16s ease;
}
#order-opc #opc_payment_methods .esaab-payment-stripe .stripe-button-el:hover,
#order-opc #opc_payment_methods .esaab-payment-stripe .stripe-button-el:focus {
  background: #5149e8 !important;
}
#order-opc #opc_payment_methods .esaab-payment-stripe .stripe-button-el span {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 48px !important;
  padding: 0 18px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #fff !important;
  text-shadow: none !important;
}
#order-opc #opc_payment_methods #sc_payment_button::after {
  display: none !important;
  content: none !important;
}

/* Keep the modern Stripe Checkout option exactly aligned with PayPal. */
#order-opc #opc_payment_methods .stripecheckout-option {
  min-height: 76px;
  padding: 12px !important;
}
#order-opc #opc_payment_methods .stripecheckout-button {
  height: 48px;
  min-height: 48px;
  padding: 0 18px;
}

#order-opc .button.btn-default, #order-opc button.btn-default, #order-opc .button-exclusive.btn-default {
  border-radius: 6px;
  box-shadow: none;
  text-shadow: none;
}
#order-opc #submitAccount, #order-opc #SubmitLogin,
#order-opc #opc_guestCheckout, #order-opc #opc_createAccount {
  border: 1px solid #a70000;
  background: #b50000;
  color: #fff;
}
#order-opc #submitAccount span, #order-opc #SubmitLogin span,
#order-opc #opc_guestCheckout span, #order-opc #opc_createAccount span { color: #fff; background: none; border: 0; text-shadow: none; }
#order-opc #submitAccount:hover, #order-opc #SubmitLogin:hover,
#order-opc #opc_guestCheckout:hover, #order-opc #opc_createAccount:hover { background: #930000; }
#order-opc input:focus-visible, #order-opc select:focus-visible, #order-opc button:focus-visible, #order-opc a:focus-visible { outline: 2px solid #b50000; outline-offset: 2px; }
#order-opc .esaab-empty-cart { max-width: 760px; margin: 25px auto 50px; padding: 30px; border: 1px solid #dfe4e9; border-radius: 10px; background: #fff; }
#order-opc .esaab-empty-cart p { margin: 8px 0 20px; color: #5b6670; }
#order-opc .esaab-empty-cart .btn { padding: 11px 17px; background: #b50000; border: 0; color: #fff; }
#order-opc .esaab-empty-cart .btn:hover { background: #930000; }
#order-opc .esaab-checkout-footer { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 24px max(20px, calc((100% - 1280px)/2)); background: #30363b; color: #d8dce0; }
#order-opc .esaab-checkout-footer strong { display: block; color: #fff; font-size: 17px; }
#order-opc .esaab-checkout-footer span { font-size: 12px; }
#order-opc .esaab-checkout-footer a { color: #fff; }
#order-opc .footer-container { display: none; }

@media (max-width: 900px) {
  #order-opc .esaab-checkout-header-main { gap: 16px; }
  #order-opc .esaab-checkout-logo img { width: 210px; }
  #order-opc .esaab-checkout-nav-note { display: none; }
  #order-opc #cart_summary tbody td.cart_description { min-width: 200px; }
  #order-opc #opc_payment_methods #HOOK_PAYMENT { grid-template-columns: 1fr; }
}
@media (min-width: 769px) {
  #order-opc #esaab-checkout-main-nav.collapse { display: flex !important; height: auto !important; }
}
@media (max-width: 768px) {
  #order-opc .esaab-checkout-header-main { width: auto; min-height: 0; padding: 14px 16px; display: grid; grid-template-columns: 1fr auto; gap: 13px; }
  #order-opc .esaab-checkout-logo img { width: min(230px, 100%); }
  #order-opc .esaab-checkout-header-actions { gap: 8px; }
  #order-opc .esaab-checkout-header-actions > a:first-child { display: none; }
  #order-opc .esaab-checkout-search { grid-column: 1 / -1; grid-row: 2; margin: 0; max-width: none; }
  #order-opc .esaab-checkout-nav-inner { width: auto; min-height: 0; padding: 7px 10px 10px; }
  #order-opc .esaab-checkout-menu-toggle {
    display: block;
    float: none;
    margin: 0;
    padding: 8px 10px;
    border: 1px solid #596068;
    border-radius: 6px;
    background: #fff;
    color: #30363b;
    font-size: 13px;
    font-weight: 700;
  }
  #order-opc .esaab-checkout-menu-toggle i { margin-right: 5px; color: #a90000; }
  #order-opc .esaab-checkout-nav-collapse {
    display: none !important;
    width: 100%;
    margin: 7px 0 0;
    padding: 0;
    border: 0;
    box-shadow: none;
    overflow: visible;
  }
  #order-opc .esaab-checkout-nav-collapse.in { display: block !important; }
  #order-opc .esaab-checkout-nav .navbar-nav { display: block; width: 100%; margin: 0; }
  #order-opc .esaab-checkout-nav .navbar-nav > li { float: none; }
  #order-opc .esaab-checkout-nav .navbar-nav > li > a { padding: 11px 12px; border-radius: 6px; }
  #order-opc .esaab-checkout-nav .dropdown-menu {
    position: static;
    float: none;
    width: 100%;
    margin: 2px 0 8px;
    border-radius: 7px;
    background: #fff;
    box-shadow: none;
  }
  #order-opc .esaab-checkout-nav .open > .esaab-checkout-model-menu { display: block; min-width: 0; }
  #order-opc .esaab-checkout-tools-menu { min-width: 0; }
  #order-opc .esaab-checkout-nav-note { display: block; margin: 0; padding: 9px 12px 4px; }
  #order-opc #columns { padding: 24px 15px 45px; }
  #order-opc #columns > .row,
  #order-opc .addresses > .row { margin-right: 0; margin-left: 0; }
  #order-opc #center_column,
  #order-opc .addresses > .row > [class*='col-'] { padding-right: 0; padding-left: 0; }
  #order-opc #cart_title.page-heading { flex-direction: column; gap: 4px; font-size: 24px; }
  #order-opc #cart_title .heading-counter { padding-top: 0 !important; }
  #order-opc .esaab-continue-shopping a.button-exclusive { margin-top: 0 !important; }
  #order-opc .esaab-continue-shopping a.button-exclusive i { margin-right: 0 !important; }
  #order-opc .page-heading.step-num { font-size: 18px; line-height: 1.35; }
  #order-opc .esaab-payment-acceptance { padding: 13px; }
  #order-opc .esaab-payment-acceptance-row {
    gap: 8px 10px;
  }
  #order-opc .esaab-payment-brand-lockup { gap: 8px; }
  #order-opc .esaab-payment-brand-lockup > img {
    height: 23px;
    max-width: 92px;
  }
  #order-opc .esaab-payment-acceptance-content {
    gap: 7px;
    font-size: 14px;
  }
  #order-opc .esaab-payment-acceptance-copy { font-size: 14px; }
  #order-opc .esaab-payment-mark {
    height: 33px;
    padding: 1px 6px;
  }
  #order-opc .esaab-payment-mark img {
    height: 28px;
    max-width: 105px;
  }
  #order-opc .order_carrier_content.box, #order-opc #login_form.box,
  #order-opc #new_account_form > fieldset > .box, #order-opc .paiement_block { padding: 18px 16px; }
  #order-opc #opc_payment_methods .payment_module > a,
  #order-opc #opc_payment_methods .esaab-payment-option > a { min-height: 70px; padding: 12px 14px; }
  #order-opc #opc_payment_methods .esaab-payment-paypal > a { min-height: 48px !important; padding: 0 18px !important; }
  #order-opc #opc_payment_methods .payment_module img { max-width: 150px; max-height: 38px; margin-right: 10px; }
  #order-opc #opc_payment_methods .esaab-payment-paypal a { flex-direction: column; gap: 7px; text-align: center; }
  #order-opc #opc_payment_methods .esaab-payment-paypal img { margin: 0; }
  #order-opc #opc_account_form { grid-template-columns: 1fr; }
  #order-opc #opc_invoice_address { grid-template-columns: 1fr; }
  #order-opc #opc_account_form .form-group .form-control,
  #order-opc #login_form .form-control { font-size: 16px; }
  #order-opc #opc_account_form > .page-subheading, #order-opc #opc_account_form > .gender-line,
  #order-opc #opc_account_form > .checkbox, #order-opc #opc_account_form > .inline-infos,
  #order-opc #opc_account_form > .submit, #order-opc #opc_account_form > .alert,
  #order-opc #opc_account_form > #opc_invoice_address, #order-opc #opc_account_form > .date-select,
  #order-opc #opc_account_form > .opc-turnstile-customer { grid-column: auto; }
  #order-opc #opc_account_form .opc-field-full { grid-column: auto; }
  #order-opc .opc-add-save { align-items: stretch; flex-direction: column; }
  #order-opc .opc-add-save #submitAccount { width: 100%; }
  #order-opc .opc-add-save .opc-required { align-self: flex-end; }
  #order-opc #cart_summary th,
  #order-opc #cart_summary td { white-space: normal !important; }
  #order-opc #cart_summary thead tr { position: absolute; top: -9999px; left: -9999px; }
  #order-opc #order-detail-content #cart_summary tbody tr.cart_item { display: grid; grid-template-columns: 88px minmax(0,1fr); padding: 14px; border-bottom: 1px solid #e5e8ec; gap: 0 12px; }
  #order-opc #order-detail-content #cart_summary tbody tr.cart_item td { display: block; float: none; width: auto; min-width: 0; min-height: 0; padding: 5px 0; border: 0; text-align: left; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_product { grid-column: 1; grid-row: 1 / 4; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_product img { width: 80px; height: 80px; max-width: 80px; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_description { grid-column: 2; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_description .product-name a { font-size: 14px; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_avail { display: block; grid-column: 2; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_unit,
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity,
  #order-opc #order-detail-content #cart_summary tbody td.cart_total { grid-column: 2; width: 100%; border: 0; }
  #order-opc #order-detail-content #cart_summary tbody tr.cart_item td.cart_delete { grid-column: 2; position: static; text-align: right; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_unit,
  #order-opc #order-detail-content #cart_summary tbody td.cart_total {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    align-items: center;
    column-gap: 8px;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_unit .price,
  #order-opc #order-detail-content #cart_summary tbody td.cart_total .price {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    text-align: right;
    justify-self: end;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_unit ul.price {
    list-style: none;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity {
    display: grid;
    grid-template-columns: auto 56px 66px;
    align-items: center;
    justify-content: start;
    gap: 0 6px;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity .cart_quantity_input {
    display: block;
    width: 56px;
    margin: 0;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity .cart_quantity_button {
    display: inline-flex;
    width: 66px;
    margin-top: 0;
    vertical-align: middle;
    gap: 4px;
  }
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity .cart_quantity_button::before,
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity .cart_quantity_button::after { display: none !important; content: none !important; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity .cart_quantity_button a { float: none; margin: 0; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_unit:before,
  #order-opc #order-detail-content #cart_summary tbody td.cart_quantity:before,
  #order-opc #order-detail-content #cart_summary tbody td.cart_total:before { display: block; width: auto; color: #69747f; font-size: 12px; }
  #order-opc #order-detail-content #cart_summary tbody td.cart_product:before,
  #order-opc #order-detail-content #cart_summary tbody td.cart_description:before,
  #order-opc #order-detail-content #cart_summary tbody td.cart_avail:before { display: none; }
  #order-opc #cart_summary tfoot tr { display: flex; flex-wrap: wrap; padding: 0 12px; }
  #order-opc #cart_summary tfoot td { float: none; width: 50%; border: 0; }
  #order-opc #cart_summary tfoot td#cart_voucher { width: 100%; }
  #order-opc #cart_summary tfoot tr.freeshipping > td:first-child { flex: 1 1 0; width: auto; }
  #order-opc #cart_summary tfoot tr.freeshipping > td:last-child { flex: 0 0 auto; width: auto; }
  #order-opc #cart_summary tfoot td.text-right { text-align: left; }
  #order-opc #cart_summary tfoot td.price { text-align: right; }
  #order-opc #cart_summary tfoot td:before { display: none; }
  #order-opc #voucher fieldset { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  #order-opc #voucher .discount_name,
  #order-opc #voucher #discount_name { float: none; flex: 1 1 180px; width: auto; min-width: 0; margin: 0; }
  #order-opc #voucher button { flex: 0 0 auto; margin: 0; }
  #order-opc .delivery_option > div > table.resume { width: 100%; }
  #order-opc .delivery_option > div > table.resume tr { display: grid; grid-template-columns: 34px 82px minmax(0, 1fr); align-items: center; padding: 9px; }
  #order-opc .delivery_option > div > table.resume td,
  #order-opc .delivery_option > div > table.resume td.delivery_option_logo,
  #order-opc .delivery_option > div > table.resume td.delivery_option_radio,
  #order-opc .delivery_option > div > table.resume td.delivery_option_price { display: block; width: auto; padding: 7px; }
  #order-opc .delivery_option > div > table.resume td.delivery_option_radio { grid-column: 1; grid-row: 1 / 3; padding-left: 2px; }
  #order-opc .delivery_option > div > table.resume td.delivery_option_logo { grid-column: 2; grid-row: 1 / 3; padding-right: 8px; }
  #order-opc .delivery_option > div > table.resume td.delivery_option_logo img { width: auto; max-width: 74px; }
  #order-opc .delivery_option > div > table.resume tr > td:nth-child(3) { grid-column: 3; grid-row: 1; min-width: 0; }
  #order-opc .delivery_option > div > table.resume td.delivery_option_price { grid-column: 3; grid-row: 2; justify-self: end; margin: 0; padding-top: 2px; text-align: right; }
  #order-opc .addresses .address.box { min-height: 0; }
  #order-opc .esaab-checkout-footer { padding: 22px 16px; }
}

/* Shared */
#order-opc #cart_summary tbody td.cart_avail span.label-warning[class*="stock-status-"] {
    border: 1px solid;
}

/* SWE */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-1 {
    background: #005293;
    border-color: #003f73;
    color: #fecc02;
}
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-2 {
    background: #005293;
    border-color: #003f73;
    color: #fecc02;
}
/* OD7 */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-3 {
    background: #fff6d6;
    border-color: #ead48a;
    color: #6b5200;
}

/* OD14 */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-4 {
    background: #ffe9d2;
    border-color: #f0b47a;
    color: #8a4300;
}

/* OD30 */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-5 {
    background: #fde4e4;
    border-color: #e9a3a3;
    color: #9b1c1c;
}

/* ECU7 */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-6 {
    background: #e5effc;
    border-color: #a9c6ee;
    color: #1f4f8f;
}

/* ECU14 */
#order-opc #cart_summary tbody td.cart_avail
span.label-warning.stock-status-7 {
    background: #ece8fb;
    border-color: #bfb3ec;
    color: #4b3a8c;
}