/* Burnigan Core 1.6 — split legacy compatibility bundle.
   Generated from legacy v1.1.6 without changing rule contents. */

/* =========================================================
   01. DESIGN TOKENS
   ========================================================= */

:root {
  --burnigan-black: #080808;
  --burnigan-black-soft: #171717;
  --burnigan-white: #ffffff;
  --burnigan-bg: #f4f4f1;
  --burnigan-bg-alt: #ecece8;
  --burnigan-border: rgba(8, 8, 8, 0.16);
  --burnigan-muted: #70706b;
  --burnigan-max: 1320px;
  --burnigan-font: Arial, Helvetica, sans-serif;
}

/* =========================================================
   02. GLOBAL WOOCOMMERCE FOUNDATION
   ========================================================= */

body.woocommerce,
body.woocommerce-page {
  /* v36: `clip` instead of `hidden`. `hidden` makes the body a
     scroll container, which silently disables position:sticky on
     the desktop account sidebar. `clip` prevents the same
     horizontal overflow without that side effect. */
  overflow-x: clip;
  background: var(--burnigan-bg);
}

body.woocommerce main#main,
body.woocommerce-page main#main {
  background: var(--burnigan-bg);
}

body.woocommerce a,
body.woocommerce-page a {
  text-underline-offset: 3px;
}

body.woocommerce button,
body.woocommerce input,
body.woocommerce select,
body.woocommerce textarea,
body.woocommerce-page button,
body.woocommerce-page input,
body.woocommerce-page select,
body.woocommerce-page textarea {
  font-family: var(--burnigan-font);
}

body.woocommerce input:not([type="checkbox"]):not([type="radio"]),
body.woocommerce select,
body.woocommerce textarea,
body.woocommerce-page input:not([type="checkbox"]):not([type="radio"]),
body.woocommerce-page select,
body.woocommerce-page textarea {
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.woocommerce .woocommerce-notices-wrapper:empty,
body.woocommerce .blocksy-woo-messages-default:empty,
body.woocommerce-page .woocommerce-notices-wrapper:empty,
body.woocommerce-page .blocksy-woo-messages-default:empty {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Notices */
body.woocommerce .woocommerce-message,
body.woocommerce .woocommerce-info,
body.woocommerce .woocommerce-error,
body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .woocommerce-error,
body.woocommerce .wc-block-components-notice-banner,
body.woocommerce-page .wc-block-components-notice-banner {
  margin: 0 0 28px !important;
  padding: 18px 20px !important;
  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  box-shadow: none !important;
}

body.woocommerce .woocommerce-error,
body.woocommerce-page .woocommerce-error,
body.woocommerce .wc-block-components-notice-banner.is-error,
body.woocommerce-page .wc-block-components-notice-banner.is-error {
  border-color: #9f1d1d !important;
}

body.woocommerce .woocommerce-message::before,
body.woocommerce .woocommerce-info::before,
body.woocommerce-page .woocommerce-message::before,
body.woocommerce-page .woocommerce-info::before {
  color: var(--burnigan-black) !important;
}

body.woocommerce .woocommerce-message a.button,
body.woocommerce .woocommerce-info a.button,
body.woocommerce-page .woocommerce-message a.button,
body.woocommerce-page .woocommerce-info a.button {
  float: right;
  border: 0 !important;
  background: transparent !important;
  color: var(--burnigan-black) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Shared primary buttons */
body.woocommerce a.button,
body.woocommerce button.button,
body.woocommerce input.button,
body.woocommerce-page a.button,
body.woocommerce-page button.button,
body.woocommerce-page input.button,
body.woocommerce .wc-block-components-button,
body.woocommerce-page .wc-block-components-button {
  min-height: 48px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 14px 22px !important;
  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
  background: var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;
  box-shadow: none !important;
  font-family: var(--burnigan-font) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.14em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

body.woocommerce a.button:hover,
body.woocommerce a.button:focus-visible,
body.woocommerce button.button:hover,
body.woocommerce button.button:focus-visible,
body.woocommerce-page a.button:hover,
body.woocommerce-page a.button:focus-visible,
body.woocommerce-page button.button:hover,
body.woocommerce-page button.button:focus-visible,
body.woocommerce .wc-block-components-button:hover,
body.woocommerce .wc-block-components-button:focus-visible,
body.woocommerce-page .wc-block-components-button:hover,
body.woocommerce-page .wc-block-components-button:focus-visible {
  background: transparent !important;
  color: var(--burnigan-black) !important;
  transform: translateY(-2px);
}

/* Shared page-title hero for WooCommerce utility pages */
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .hero-section {
  position: relative;
  min-height: 220px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 50px 24px !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 45%, rgba(255, 255, 255, 0.08), transparent 38%),
    var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;
  text-align: center;
}

body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.25;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: 42px 42px;
}

body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .hero-section > * {
  position: relative;
  z-index: 1;
}

body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .hero-section h1 {
  margin: 0 !important;
  color: var(--burnigan-white) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(46px, 6vw, 78px) !important;
  font-weight: 900 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.055em !important;
  text-transform: uppercase !important;
}

/* =========================================================
   05. CART — BASE LAYOUT (grid is finalized in Section 10)
   ========================================================= */

body.woocommerce-cart main#main {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--burnigan-bg) !important;
}

body.woocommerce-cart :is(.entry-content, .woocommerce) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.woocommerce-cart .woocommerce > :is(
  .woocommerce-notices-wrapper,
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error
) {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1100px !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-cart .woocommerce-cart-form {
  grid-column: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/*
  NOTE: sizing/position/float for .cart-collaterals and .cart_totals is
  intentionally NOT declared here anymore (v4). It previously conflicted
  with Section 10's values (390px/92px vs 400px/90px) and — critically —
  was the ONLY place `float: none` was ever set on these elements, at a
  specificity too low to reliably beat Blocksy's core float rules. That
  conflict caused the Cart Totals box to detach from its grid column and
  overlap the product table. All final positioning now lives in Section 10.
*/

/* Cart table */
body.woocommerce-cart table.shop_table {
  width: 100% !important;
  table-layout: auto !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-cart table.shop_table thead th {
  padding: 0 8px 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--burnigan-black) !important;
  background: transparent !important;
  color: var(--burnigan-muted) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart table.shop_table tbody td {
  padding: 20px 8px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--burnigan-border) !important;
  background: transparent !important;
  vertical-align: middle !important;
}

body.woocommerce-cart td.product-remove {
  width: 36px !important;
  min-width: 36px !important;
  text-align: center !important;
}

body.woocommerce-cart td.product-remove a.remove {
  width: 30px !important;
  height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(8, 8, 8, 0.24) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--burnigan-black) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

body.woocommerce-cart td.product-remove a.remove:hover {
  background: var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;
}

/* Force useful thumbnail width; prevents Blocksy from collapsing it */
body.woocommerce-cart td.product-thumbnail {
  display: table-cell !important;
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
}

body.woocommerce-cart td.product-thumbnail a {
  display: block !important;
  width: 96px !important;
  min-width: 96px !important;
}

body.woocommerce-cart td.product-thumbnail img,
body.woocommerce-cart .woocommerce-cart-form__cart-item .product-thumbnail img {
  display: block !important;
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  height: 118px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  background: #e8e8e4 !important;
}

body.woocommerce-cart td.product-name {
  width: auto !important;
  min-width: 185px !important;
  padding-left: 4px !important;
}

body.woocommerce-cart td.product-name a {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart td.product-name a:hover {
  opacity: 0.58 !important;
}

body.woocommerce-cart td.product-name :is(dl.variation, .variation) {
  margin: 8px 0 0 !important;
  color: #666660 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
}

body.woocommerce-cart td.product-price,
body.woocommerce-cart td.product-subtotal {
  width: 108px !important;
  min-width: 108px !important;
  white-space: nowrap !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.woocommerce-cart td.product-quantity {
  width: 124px !important;
  min-width: 124px !important;
}

body.woocommerce-cart .quantity {
  width: 112px !important;
  min-width: 112px !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.woocommerce-cart .quantity input.qty {
  width: 100% !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* Coupon + update */
body.woocommerce-cart td.actions {
  padding: 22px 0 0 !important;
  border-bottom: 0 !important;
}

body.woocommerce-cart td.actions .coupon {
  display: grid !important;
  grid-template-columns: minmax(170px, 220px) auto !important;
  gap: 9px !important;
  float: left !important;
}

body.woocommerce-cart td.actions .coupon input.input-text {
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  box-shadow: none !important;
}

body.woocommerce-cart td.actions button[name="update_cart"] {
  float: right !important;
}

body.woocommerce-cart td.actions button:disabled {
  opacity: 0.42 !important;
  cursor: not-allowed !important;
}

/* Cart totals: typography only. Box model/position is Section 10. */
body.woocommerce-cart .cart_totals {
  border: 1px solid var(--burnigan-black) !important;
  background: var(--burnigan-white) !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .cart_totals h2 {
  width: 100% !important;
  margin: 0 0 24px !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(32px, 3vw, 46px) !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.05em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

body.woocommerce-cart .cart_totals table {
  width: 100% !important;
  table-layout: fixed !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
}

body.woocommerce-cart .cart_totals table :is(th, td) {
  padding: 16px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--burnigan-border) !important;
  vertical-align: top !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

body.woocommerce-cart .cart_totals table th {
  width: 35% !important;
  padding-right: 14px !important;
  color: var(--burnigan-muted) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .cart_totals table td {
  width: 65% !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.woocommerce-cart .cart_totals tr.order-total td {
  font-size: 19px !important;
  font-weight: 900 !important;
}

body.woocommerce-cart ul#shipping_method {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart ul#shipping_method li {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  gap: 9px !important;
  align-items: start !important;
  margin: 0 0 12px !important;
}

body.woocommerce-cart ul#shipping_method input[type="radio"] {
  width: 16px !important;
  height: 16px !important;
  margin: 3px 0 0 !important;
  accent-color: var(--burnigan-black) !important;
}

body.woocommerce-cart ul#shipping_method label {
  margin: 0 !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

body.woocommerce-cart :is(.woocommerce-shipping-destination, .woocommerce-shipping-calculator) {
  color: #555550 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}

body.woocommerce-cart .shipping-calculator-button {
  color: var(--burnigan-black) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

body.woocommerce-cart .wc-proceed-to-checkout {
  margin: 26px 0 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
}

/* Cart block */
body.woocommerce-cart .wc-block-cart {
  max-width: 1100px !important;
  margin: 0 auto !important;
  gap: 36px !important;
}

body.woocommerce-cart .wc-block-cart-items {
  border-collapse: collapse !important;
}

body.woocommerce-cart .wc-block-cart-items th {
  border-bottom: 1px solid var(--burnigan-black) !important;
  color: var(--burnigan-muted) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-cart-items td {
  padding-top: 22px !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid var(--burnigan-border) !important;
}

body.woocommerce-cart .wc-block-components-product-name {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar {
  min-width: 0 !important;
  padding: 28px !important;
  border: 1px solid var(--burnigan-black) !important;
  background: var(--burnigan-white) !important;
}

body.woocommerce-cart .wc-block-cart__totals-title {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 26px !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-cart__submit-button {
  width: 100% !important;
}

/* Empty cart */
body.woocommerce-cart :is(.cart-empty, .wc-block-cart__empty-cart__title) {
  margin: 0 0 24px !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(34px, 5vw, 58px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .return-to-shop {
  margin-top: 25px !important;
}

/* =========================================================
   06. CHECKOUT — CLASSIC + CHECKOUT BLOCK
   ========================================================= */

body.woocommerce-checkout main#main > :is(.ct-container, .ct-container-full) {
  width: 100% !important;
  max-width: var(--burnigan-max) !important;
  margin: 0 auto !important;
  padding: 70px 28px 95px !important;
}

/* Classic checkout */
body.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr) !important;
  gap: 55px !important;
  align-items: start;
}

body.woocommerce-checkout form.checkout > :is(#customer_details, #order_review_heading, #order_review) {
  width: 100% !important;
}

body.woocommerce-checkout #customer_details {
  grid-column: 1;
  grid-row: 1 / span 2;
}

body.woocommerce-checkout #order_review_heading {
  grid-column: 2;
  margin: 0 !important;
  padding: 0 0 18px !important;
}

body.woocommerce-checkout #order_review {
  grid-column: 2;
  padding: 30px !important;
  border: 1px solid var(--burnigan-black);
  background: var(--burnigan-white);
}

body.woocommerce-checkout :is(
  .woocommerce-billing-fields > h3,
  .woocommerce-shipping-fields h3,
  #order_review_heading
) {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .form-row {
  margin-bottom: 18px !important;
}

body.woocommerce-checkout .form-row label {
  margin-bottom: 7px !important;
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .form-row :is(input, select, textarea),
body.woocommerce-checkout .select2-container .select2-selection {
  min-height: 50px !important;
  border: 1px solid #c9c9c4 !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
}

body.woocommerce-checkout #payment {
  border-radius: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  padding: 0 0 22px !important;
  border-bottom: 1px solid var(--burnigan-border) !important;
}

body.woocommerce-checkout #place_order {
  width: 100% !important;
  margin-top: 20px !important;
}

/* Checkout block */
body.woocommerce-checkout .wc-block-checkout {
  gap: 50px !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step {
  margin-bottom: 28px !important;
  padding: 28px !important;
  border: 1px solid var(--burnigan-border);
  background: var(--burnigan-white);
}

body.woocommerce-checkout .wc-block-components-checkout-step__heading h2 {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout :is(
  .wc-block-components-text-input input,
  .wc-block-components-combobox-control input,
  .wc-block-components-textarea
) {
  border: 1px solid #c9c9c4 !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
}

body.woocommerce-checkout .wc-block-components-sidebar {
  padding: 30px !important;
  border: 1px solid var(--burnigan-black);
  background: var(--burnigan-white);
}

body.woocommerce-checkout .wc-block-components-order-summary__button-text,
body.woocommerce-checkout .wc-block-components-totals-wrapper {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
  width: 100% !important;
}

/* =========================================================
   08. ORDER RECEIVED / THANK-YOU PAGE
   ========================================================= */

body.woocommerce-order-received .woocommerce-order {
  max-width: 1000px;
  margin: 0 auto;
}

body.woocommerce-order-received .woocommerce-thankyou-order-received {
  margin: 0 0 35px !important;
  padding: 30px !important;
  border: 1px solid var(--burnigan-black);
  background: var(--burnigan-white);
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(24px, 3vw, 38px) !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.woocommerce-order-received .woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 0 0 40px !important;
  padding: 1px !important;
  border: 0 !important;
  background: var(--burnigan-border);
}

body.woocommerce-order-received .woocommerce-order-overview li {
  margin: 0 !important;
  padding: 20px !important;
  border: 0 !important;
  background: var(--burnigan-white);
}

body.woocommerce-order-received .woocommerce-order-overview li,
body.woocommerce-order-received .woocommerce-order-overview strong {
  font-family: var(--burnigan-font) !important;
}

body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details {
  margin-top: 45px !important;
}

body.woocommerce-order-received :is(
  .woocommerce-order-details__title,
  .woocommerce-column__title
) {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

/* =========================================================
   09. RESPONSIVE RULES
   ========================================================= */

@media (max-width: 1050px) {
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.single-product div.product {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr) !important;
    column-gap: 38px !important;
  }

  body.single-product div.product > .summary {
    position: static !important;
  }

  body.single-product .summary .product_title {
    font-size: 40px !important;
  }

  body.woocommerce-checkout form.checkout {
    gap: 35px !important;
  }

  body.woocommerce-account .woocommerce {
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 30px;
  }
}

@media (max-width: 850px) {
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main > :is(.ct-container, .ct-container-full) {
    padding: 50px 22px 75px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.single-product main#main > :is(.ct-container, .ct-container-full) {
    padding: 24px 22px 80px !important;
  }

  body.single-product div.product {
    display: block !important;
  }

  body.single-product div.product > .woocommerce-product-gallery {
    margin-bottom: 36px !important;
  }

  body.single-product div.product > .woocommerce-tabs {
    margin-top: 60px !important;
    padding-top: 45px !important;
  }

  body.single-product :is(.related.products, .upsells.products) {
    margin-top: 60px !important;
  }

  body.single-product :is(.related.products, .upsells.products) ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.single-product #reviews {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  body.woocommerce-checkout form.checkout {
    display: block !important;
  }

  body.woocommerce-checkout #order_review_heading {
    margin-top: 50px !important;
  }

  body.woocommerce-account .woocommerce {
    display: block;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    margin-bottom: 28px;
  }

  body.woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-account) .hero-section {
    min-height: 175px !important;
    padding: 40px 18px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .hero-section {
    min-height: 190px !important;
    padding: 42px 20px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .hero-section :is(h1, .page-title) {
    font-size: 48px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main > :is(.ct-container, .ct-container-full) {
    padding: 38px 18px 60px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-result-count,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-ordering {
    width: 100% !important;
    float: none !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-result-count {
    margin: 0 0 15px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-ordering {
    margin: 0 0 32px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-ordering select {
    width: 100% !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products,
  body.single-product :is(.related.products, .upsells.products) ul.products {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  body.single-product main#main > :is(.ct-container, .ct-container-full) {
    padding: 18px 18px 65px !important;
  }

  body.single-product .woocommerce-breadcrumb {
    margin-bottom: 22px !important;
  }

  body.single-product .summary .product_title {
    font-size: 38px !important;
  }

  body.single-product .summary form.cart {
    grid-template-columns: 1fr !important;
  }

  body.single-product .woocommerce-tabs ul.tabs {
    gap: 22px !important;
  }

  body.single-product :is(.related.products, .upsells.products) > h2 {
    font-size: 40px !important;
  }

  body.woocommerce-checkout main#main > :is(.ct-container, .ct-container-full),
  body.woocommerce-account main#main > :is(.ct-container, .ct-container-full) {
    padding: 45px 18px 65px !important;
  }

  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-components-sidebar,
  body.woocommerce-checkout #order_review {
    padding: 22px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    padding: 24px !important;
  }

  body.woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.woocommerce *,
  body.woocommerce-page * {
    scroll-behavior: auto !important;
  }

  body.woocommerce li.product img,
  body.woocommerce li.product .button,
  body.woocommerce-page li.product img,
  body.woocommerce-page li.product .button {
    transition: none !important;
  }
}

/* =========================================================
   10. FINAL CART + CHECKOUT LAYOUT OVERRIDES
   Keep this section last. It deliberately overrides Blocksy
   float widths and earlier WooCommerce layout declarations.

   v4: `.cart-collaterals` and `.cart-collaterals .cart_totals`
   now BOTH explicitly force `float: none !important` and
   `display: block !important` at the `#main`-qualified
   specificity used throughout this section. This is the fix —
   previously only `.cart-collaterals` (not `.cart_totals`
   itself) was locked down here, so Blocksy's core float rule
   on `.cart_totals` could still win and pull the box out of
   the grid track, producing the overlapping panel seen on the
   live cart page.
   ========================================================= */

/* ---------- CART: centered desktop layout ---------- */
body.woocommerce-cart {
  --theme-normal-container-max-width: 1240px !important;
  --theme-content-vertical-spacing: 0px !important;
}

body.woocommerce-cart #main,
body.woocommerce-cart #main > .ct-container,
body.woocommerce-cart #main > .ct-container-full,
body.woocommerce-cart #main article,
body.woocommerce-cart #main .entry-content {
  box-sizing: border-box !important;
}

body.woocommerce-cart #main > .ct-container,
body.woocommerce-cart #main > .ct-container-full {
  width: calc(100% - 40px) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
  padding: 52px 0 92px !important;
}

body.woocommerce-cart #main article,
body.woocommerce-cart #main .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-inline: 0 !important;
}

body.woocommerce-cart #main .woocommerce {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

body.woocommerce-cart #main .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart #main .woocommerce > .woocommerce-message,
body.woocommerce-cart #main .woocommerce > .woocommerce-info,
body.woocommerce-cart #main .woocommerce > .woocommerce-error {
  width: 100% !important;
  max-width: 1142px !important;
  margin: 0 auto 24px !important;
}

/*
  ACTUAL FIX (v5): Blocksy does not render a `.cart-collaterals`
  wrapper. The real DOM is:

    .woocommerce
      > .woocommerce-notices-wrapper
      > .ct-woocommerce-cart-form        <-- Blocksy's own wrapper
          > form.woocommerce-cart-form   <-- the table
          > .cart_totals                 <-- totals, direct sibling of the form

  `.cart-collaterals` never matched anything, which is why earlier
  fixes targeting it had zero effect. The grid must be applied to
  `.ct-woocommerce-cart-form`, and `.woocommerce-cart-form` /
  `.cart_totals` must be the grid items directly.
*/
body.woocommerce-cart #main .ct-woocommerce-cart-form {
  display: grid !important;
  grid-template-columns: minmax(0, 700px) 400px !important;
  align-items: start !important;
  gap: 42px !important;
  width: 100% !important;
  max-width: 1142px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
}

body.woocommerce-cart #main .ct-woocommerce-cart-form .woocommerce-cart-form {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
}

body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
  grid-column: 2 !important;
  grid-row: 1 !important;
  float: none !important;
  clear: none !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 400px !important;
  margin: 0 !important;
  padding: 34px 32px !important;
  box-sizing: border-box !important;
  position: sticky !important;
  top: 90px !important;
}

body.woocommerce-cart #main .cart_totals h2 {
  font-size: 44px !important;
  line-height: 0.92 !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

body.woocommerce-cart #main .cart_totals table {
  width: 100% !important;
  table-layout: auto !important;
}

body.woocommerce-cart #main .cart_totals table th {
  width: 34% !important;
  min-width: 86px !important;
}

body.woocommerce-cart #main .cart_totals table td {
  width: 66% !important;
  min-width: 0 !important;
  text-align: right !important;
}

body.woocommerce-cart #main .cart_totals ul#shipping_method,
body.woocommerce-cart #main .cart_totals ul#shipping_method li,
body.woocommerce-cart #main .cart_totals ul#shipping_method label {
  width: 100% !important;
  max-width: none !important;
}

body.woocommerce-cart #main td.product-thumbnail {
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
}

body.woocommerce-cart #main td.product-thumbnail a,
body.woocommerce-cart #main td.product-thumbnail img {
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
}

body.woocommerce-cart #main td.product-thumbnail img {
  height: 118px !important;
  object-fit: cover !important;
}

body.woocommerce-cart #main td.actions {
  white-space: normal !important;
}

body.woocommerce-cart #main td.actions .coupon {
  display: grid !important;
  grid-template-columns: minmax(180px, 230px) auto !important;
  gap: 10px !important;
  align-items: stretch !important;
}

/* ---------- CART: tablet ---------- */
@media (max-width: 1120px) {
  body.woocommerce-cart #main > .ct-container,
  body.woocommerce-cart #main > .ct-container-full {
    width: calc(100% - 32px) !important;
    max-width: 820px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form {
    display: block !important;
    max-width: 780px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form .woocommerce-cart-form {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 0 46px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: static !important;
    width: min(100%, 620px) !important;
    min-width: 0 !important;
    max-width: 620px !important;
    margin: 0 auto !important;
  }
}

/* ---------- CART: mobile cards ---------- */
@media (max-width: 700px) {
  body.woocommerce-cart #main > .ct-container,
  body.woocommerce-cart #main > .ct-container-full {
    width: calc(100% - 24px) !important;
    padding: 30px 0 62px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form {
    gap: 34px !important;
  }

  body.woocommerce-cart #main table.shop_table thead {
    display: none !important;
  }

  body.woocommerce-cart #main table.shop_table,
  body.woocommerce-cart #main table.shop_table tbody {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart #main table.shop_table tr.cart_item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr) !important;
    gap: 8px 14px !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 14px !important;
    border: 1px solid var(--burnigan-border) !important;
    background: var(--burnigan-white) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main table.shop_table tr.cart_item td {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.woocommerce-cart #main td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 5 !important;
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
  }

  body.woocommerce-cart #main td.product-thumbnail a,
  body.woocommerce-cart #main td.product-thumbnail img {
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
  }

  body.woocommerce-cart #main td.product-thumbnail img {
    height: 130px !important;
  }

  body.woocommerce-cart #main td.product-name,
  body.woocommerce-cart #main td.product-price,
  body.woocommerce-cart #main td.product-quantity,
  body.woocommerce-cart #main td.product-subtotal {
    grid-column: 2 !important;
  }

  body.woocommerce-cart #main td.product-remove {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 30px !important;
  }

  body.woocommerce-cart #main td.product-name {
    padding-right: 38px !important;
  }

  /*
    Blocksy embeds a second, mobile-only copy of quantity/price/remove
    inside td.product-name (div.product-mobile-actions, class
    "ct-hidden-lg"). Forcing every td to display:block above also
    un-hides the REAL td.product-quantity / td.product-remove cells
    that Blocksy meant to keep hidden here, producing duplicated
    quantity boxes and an overlapping remove icon. Since we already
    give quantity/price/remove their own dedicated grid cells below,
    hide Blocksy's built-in duplicate entirely.
  */
  body.woocommerce-cart #main td.product-name .product-mobile-actions {
    display: none !important;
  }

  body.woocommerce-cart #main td.actions,
  body.woocommerce-cart #main td.actions .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    float: none !important;
  }

  body.woocommerce-cart #main td.actions .coupon input,
  body.woocommerce-cart #main td.actions .coupon button,
  body.woocommerce-cart #main td.actions button[name="update_cart"] {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
  }

  body.woocommerce-cart #main td.actions button[name="update_cart"] {
    margin-top: 10px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 24px 20px !important;
  }

  body.woocommerce-cart #main .cart_totals h2 {
    font-size: 38px !important;
  }
}

/* ---------- CHECKOUT: centered classic layout ---------- */
body.woocommerce-checkout {
  --theme-normal-container-max-width: 1240px !important;
}

body.woocommerce-checkout #main > .ct-container,
body.woocommerce-checkout #main > .ct-container-full {
  width: calc(100% - 40px) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
  padding: 54px 0 92px !important;
}

body.woocommerce-checkout #main article,
body.woocommerce-checkout #main .entry-content,
body.woocommerce-checkout #main .woocommerce {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout form.checkout.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: minmax(0, 680px) 420px !important;
  grid-template-areas:
    "customer heading"
    "customer review" !important;
  justify-content: center !important;
  align-items: start !important;
  gap: 0 44px !important;
  width: 100% !important;
  max-width: 1144px !important;
  margin: 0 auto !important;
}

body.woocommerce-checkout form.checkout #customer_details {
  grid-area: customer !important;
  width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
}

body.woocommerce-checkout form.checkout #order_review_heading {
  grid-area: heading !important;
  width: 420px !important;
  min-width: 420px !important;
  max-width: 420px !important;
  margin: 0 !important;
  padding: 0 0 18px !important;
}

body.woocommerce-checkout form.checkout #order_review {
  grid-area: review !important;
  width: 420px !important;
  min-width: 420px !important;
  max-width: 420px !important;
  margin: 0 !important;
  padding: 30px !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #order_review table.shop_table {
  width: 100% !important;
  table-layout: auto !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment .payment_box {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Checkout block layout */
body.woocommerce-checkout .wc-block-checkout {
  grid-template-columns: minmax(0, 680px) 420px !important;
  justify-content: center !important;
  gap: 44px !important;
  max-width: 1144px !important;
  margin-inline: auto !important;
}

body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-checkout .wc-block-components-sidebar {
  width: 420px !important;
}

@media (max-width: 1020px) {
  body.woocommerce-checkout #main > .ct-container,
  body.woocommerce-checkout #main > .ct-container-full {
    width: calc(100% - 32px) !important;
    max-width: 760px !important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout,
  body.woocommerce-checkout .wc-block-checkout {
    display: block !important;
    max-width: 720px !important;
  }

  body.woocommerce-checkout form.checkout #customer_details,
  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review,
  body.woocommerce-checkout .wc-block-checkout__sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading {
    margin-top: 48px !important;
  }
}

@media (max-width: 600px) {
  body.woocommerce-checkout #main > .ct-container,
  body.woocommerce-checkout #main > .ct-container-full {
    width: calc(100% - 24px) !important;
    padding: 34px 0 62px !important;
  }

  body.woocommerce-checkout form.checkout #order_review,
  body.woocommerce-checkout .wc-block-components-checkout-step,
  body.woocommerce-checkout .wc-block-components-sidebar {
    padding: 20px !important;
  }
}
/* =========================================================
   11. BURNIGAN MOBILE CART + CHECKOUT STABILITY PATCH — v7
   Keep this section LAST.
   ========================================================= */

body.woocommerce-cart .woocommerce-Price-amount,
body.woocommerce-checkout .woocommerce-Price-amount,
body.woocommerce-cart .amount,
body.woocommerce-checkout .amount {
  display: inline-block !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

body.woocommerce-checkout #order_review table.shop_table th:last-child,
body.woocommerce-checkout #order_review table.shop_table td:last-child {
  width: 96px !important;
  min-width: 96px !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout #order_review table.shop_table th:first-child,
body.woocommerce-checkout #order_review table.shop_table td:first-child {
  width: auto !important;
  min-width: 0 !important;
  padding-right: 18px !important;
}

body.woocommerce-checkout #order_review table.shop_table tr.woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review table.shop_table tr.woocommerce-shipping-totals td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  text-align: left !important;
}

body.woocommerce-checkout #order_review ul#shipping_method {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-checkout #order_review ul#shipping_method li {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;
  width: 100% !important;
  margin: 0 0 12px !important;
}

@media (max-width: 700px) {
  body.woocommerce-cart #main > .ct-container,
  body.woocommerce-cart #main > .ct-container-full,
  body.woocommerce-checkout #main > .ct-container,
  body.woocommerce-checkout #main > .ct-container-full {
    width: 100% !important;
    max-width: none !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form,
  body.woocommerce-cart #main .woocommerce-cart-form,
  body.woocommerce-cart #main .cart_totals {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  body.woocommerce-cart #main table.shop_table tr.cart_item {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
    padding: 14px !important;
  }

  body.woocommerce-cart #main td.product-thumbnail,
  body.woocommerce-cart #main td.product-thumbnail a,
  body.woocommerce-cart #main td.product-thumbnail img {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }

  body.woocommerce-cart #main td.product-thumbnail img { height: 120px !important; }
  body.woocommerce-cart #main td.product-name { padding-right: 34px !important; }
  body.woocommerce-cart #main td.product-name a {
    display: block !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-cart #main td.product-name .product-mobile-actions,
  body.woocommerce-cart #main td.product-name .ct-cart-item-actions {
    display: none !important;
  }

  body.woocommerce-cart #main td.product-remove {
    top: 10px !important;
    right: 10px !important;
    z-index: 5 !important;
  }

  body.woocommerce-cart #main td.product-remove a.remove {
    width: 28px !important;
    height: 28px !important;
    background: #fff !important;
  }

  body.woocommerce-cart #main td.product-price { display: none !important; }
  body.woocommerce-cart #main td.product-quantity,
  body.woocommerce-cart #main td.product-subtotal { grid-column: 2 !important; }
  body.woocommerce-cart #main td.product-subtotal {
    text-align: right !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
  }
  body.woocommerce-cart #main .quantity {
    width: 150px !important;
    max-width: 100% !important;
    height: 48px !important;
  }
  body.woocommerce-cart #main .cart_totals {
    margin-top: 34px !important;
    padding: 24px 18px !important;
  }

  body.woocommerce-checkout form.checkout.woocommerce-checkout,
  body.woocommerce-checkout form.checkout #customer_details,
  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading {
    margin-top: 42px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.woocommerce-checkout form.checkout #order_review {
    padding: 20px 16px !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout #order_review table.shop_table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td {
    padding-left: 0 !important;
    padding-right: 0 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:first-child,
  body.woocommerce-checkout #order_review table.shop_table td:first-child {
    width: auto !important;
    padding-right: 14px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 82px !important;
    min-width: 82px !important;
  }

  body.woocommerce-checkout #order_review .product-name {
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-checkout #order_review .product-total,
  body.woocommerce-checkout #order_review .cart-subtotal td,
  body.woocommerce-checkout #order_review .order-total td {
    white-space: nowrap !important;
  }
}

/* =========================================================
   12. PRODUCTION MOBILE CART REBUILD — v8
   Keep this section at the absolute end of the stylesheet.

   Architecture:
   - The remove control is a real CSS Grid item, not an
     absolutely positioned overlay.
   - Thumbnail, information, quantity and subtotal each have
     an explicit grid location.
   - Blocksy's duplicate mobile action group remains hidden.
   - Prices and currency symbols cannot split across lines.
   ========================================================= */

@media (max-width: 700px) {

  /* Main mobile cart wrapper */
  body.woocommerce-cart #main .ct-woocommerce-cart-form {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.woocommerce-cart #main .woocommerce-cart-form {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 0 36px !important;
  }

  /* WooCommerce table becomes a clean list of product cards */
  body.woocommerce-cart #main table.shop_table,
  body.woocommerce-cart #main table.shop_table tbody {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.woocommerce-cart #main table.shop_table thead {
    display: none !important;
  }

  /*
   * Three-column card:
   * 96px image | flexible information | 34px remove control
   */
  body.woocommerce-cart #main table.shop_table tr.cart_item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) 34px !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 14px !important;
    row-gap: 12px !important;
    align-items: start !important;

    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 18px !important;
    padding: 16px !important;

    border: 1px solid var(--burnigan-border) !important;
    background: var(--burnigan-white) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main table.shop_table tr.cart_item > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* Product image */
  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    align-self: stretch !important;

    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail a,
  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail img {
    display: block !important;
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail img {
    height: 122px !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 0 !important;
  }

  /* Product title and variation details */
  body.woocommerce-cart #main tr.cart_item > td.product-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    padding: 0 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-name > a {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;

    color: var(--burnigan-black) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.32 !important;
    letter-spacing: -0.01em !important;

    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-name :is(dl.variation, .variation) {
    display: block !important;
    margin: 10px 0 0 !important;
    color: #666660 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-name dl.variation dt,
  body.woocommerce-cart #main tr.cart_item > td.product-name dl.variation dd {
    display: inline !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-name dl.variation dd::after {
    content: "";
    display: block;
  }

  /* Hide Blocksy's duplicate mobile actions */
  body.woocommerce-cart #main tr.cart_item > td.product-name :is(
    .product-mobile-actions,
    .ct-cart-item-actions
  ) {
    display: none !important;
  }

  /*
   * Remove button is now a normal grid item.
   * No absolute positioning and therefore no title overlap.
   */
  body.woocommerce-cart #main tr.cart_item > td.product-remove {
    position: static !important;
    inset: auto !important;

    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: start !important;

    display: block !important;
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
    height: 34px !important;
    z-index: auto !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid rgba(8, 8, 8, 0.22) !important;
    border-radius: 0 !important;
    background: var(--burnigan-white) !important;
    color: var(--burnigan-black) !important;

    font-size: 17px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-remove a.remove:hover,
  body.woocommerce-cart #main tr.cart_item > td.product-remove a.remove:focus-visible {
    border-color: var(--burnigan-black) !important;
    background: var(--burnigan-black) !important;
    color: var(--burnigan-white) !important;
  }

  /* Unit price is redundant in the mobile card */
  body.woocommerce-cart #main tr.cart_item > td.product-price {
    display: none !important;
  }

  /* Quantity */
  body.woocommerce-cart #main tr.cart_item > td.product-quantity {
    grid-column: 2 / span 2 !important;
    grid-row: 2 !important;
    align-self: center !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 150px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 46px !important;
    margin: 0 !important;

    border: 1px solid rgba(8, 8, 8, 0.3) !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity input.qty {
    width: 48px !important;
    min-width: 0 !important;
    height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 700 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--burnigan-black) !important;
  }

  /* Line subtotal */
  body.woocommerce-cart #main tr.cart_item > td.product-subtotal {
    grid-column: 2 / span 2 !important;
    grid-row: 3 !important;
    justify-self: stretch !important;

    padding-top: 2px !important;
    text-align: right !important;
    color: var(--burnigan-black) !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-subtotal :is(
    .amount,
    .woocommerce-Price-amount
  ) {
    display: inline-block !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
  }

  /* Coupon and update-cart row */
  body.woocommerce-cart #main table.shop_table tr:not(.cart_item) {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart #main td.actions {
    display: block !important;
    width: 100% !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart #main td.actions .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;

    width: 100% !important;
    margin: 0 !important;
    float: none !important;
  }

  body.woocommerce-cart #main td.actions .coupon input.input-text,
  body.woocommerce-cart #main td.actions .coupon button,
  body.woocommerce-cart #main td.actions button[name="update_cart"] {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    margin: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main td.actions button[name="update_cart"] {
    margin-top: 10px !important;
  }

  /* Cart totals */
  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 38px 0 0 !important;
    padding: 24px 18px !important;
    float: none !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main .cart_totals h2 {
    margin-bottom: 22px !important;
    font-size: 36px !important;
    line-height: 0.96 !important;
  }

  body.woocommerce-cart #main .cart_totals table {
    width: 100% !important;
    table-layout: auto !important;
  }

  body.woocommerce-cart #main .cart_totals table th {
    width: 42% !important;
    min-width: 0 !important;
    padding-right: 12px !important;
  }

  body.woocommerce-cart #main .cart_totals table td {
    width: 58% !important;
    min-width: 0 !important;
    text-align: right !important;
  }
}

/* Extra-narrow phones */
@media (max-width: 380px) {
  body.woocommerce-cart #main table.shop_table tr.cart_item {
    grid-template-columns: 84px minmax(0, 1fr) 32px !important;
    column-gap: 11px !important;
    padding: 13px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail,
  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail a,
  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail img {
    width: 84px !important;
    min-width: 84px !important;
    max-width: 84px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-thumbnail img {
    height: 108px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-name > a {
    font-size: 14px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-remove,
  body.woocommerce-cart #main tr.cart_item > td.product-remove a.remove {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
  }
}

/* =========================================================
   13. PRODUCTION CART QUANTITY SYSTEM — v9
   Keep this section LAST.

   Goals:
   - Perfect vertical alignment of minus, value and plus
   - Consistent desktop, tablet and mobile dimensions
   - No inherited WooCommerce input padding or line-height
   - Compatible with Blocksy quantity controls
   ========================================================= */

/* ---------- Universal cart quantity reset ---------- */

body.woocommerce-cart #main .quantity {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 42px minmax(44px, 1fr) 42px !important;
  align-items: stretch !important;
  justify-content: stretch !important;

  width: 136px !important;
  min-width: 136px !important;
  max-width: 136px !important;
  height: 46px !important;
  min-height: 46px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid rgba(8, 8, 8, 0.30) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Quantity number */
body.woocommerce-cart #main .quantity input.qty {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: stretch !important;
  justify-self: stretch !important;

  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 44px !important;
  min-height: 44px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 44px !important;
  text-align: center !important;
  text-indent: 0 !important;

  appearance: textfield !important;
  -moz-appearance: textfield !important;
  box-sizing: border-box !important;
}

/* Hide native browser number arrows */
body.woocommerce-cart #main .quantity input.qty::-webkit-inner-spin-button,
body.woocommerce-cart #main .quantity input.qty::-webkit-outer-spin-button {
  margin: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

/* Blocksy/WooCommerce plus and minus controls */
body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .ct-decrease,
  .plus,
  .minus,
  button
) {
  position: static !important;
  inset: auto !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: stretch !important;
  justify-self: stretch !important;

  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 44px !important;
  min-height: 44px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-align: center !important;

  transform: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

/* Force minus to left and plus to right */
body.woocommerce-cart #main .quantity :is(
  .ct-decrease,
  .minus
) {
  grid-column: 1 !important;
  grid-row: 1 !important;
  border-right: 1px solid rgba(8, 8, 8, 0.12) !important;
}

body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .plus
) {
  grid-column: 3 !important;
  grid-row: 1 !important;
  border-left: 1px solid rgba(8, 8, 8, 0.12) !important;
}

body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .ct-decrease,
  .plus,
  .minus,
  button
):hover,
body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .ct-decrease,
  .plus,
  .minus,
  button
):focus-visible {
  background: var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;
  transform: none !important;
}

/* Prevent pseudo-elements from shifting alignment */
body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .ct-decrease,
  .plus,
  .minus,
  button
)::before,
body.woocommerce-cart #main .quantity :is(
  .ct-increase,
  .ct-decrease,
  .plus,
  .minus,
  button
)::after {
  line-height: 1 !important;
  transform: none !important;
}

/* ---------- Desktop cart refinements ---------- */

@media (min-width: 1121px) {
  body.woocommerce-cart #main td.product-quantity {
    width: 152px !important;
    min-width: 152px !important;
  }

  body.woocommerce-cart #main td.product-subtotal {
    text-align: right !important;
  }
}

/* ---------- Tablet cart refinements ---------- */

@media (min-width: 701px) and (max-width: 1120px) {
  body.woocommerce-cart #main .quantity {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    grid-template-columns: 40px minmax(42px, 1fr) 40px !important;
  }

  body.woocommerce-cart #main .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }
}

/* ---------- Mobile cart refinements ---------- */

@media (max-width: 700px) {
  body.woocommerce-cart #main tr.cart_item > td.product-quantity {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 46px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity {
    grid-template-columns: 44px minmax(48px, 1fr) 44px !important;

    width: 160px !important;
    min-width: 160px !important;
    max-width: 160px !important;
    height: 48px !important;
    min-height: 48px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity input.qty {
    height: 46px !important;
    min-height: 46px !important;
    font-size: 16px !important;
    line-height: 46px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 46px !important;
    min-height: 46px !important;
    font-size: 21px !important;
  }

  /* Keep price visually connected to quantity */
  body.woocommerce-cart #main tr.cart_item > td.product-subtotal {
    margin-top: 2px !important;
    padding-top: 0 !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
  }

  /* Cleaner coupon and action controls */
  body.woocommerce-cart #main td.actions .coupon input.input-text {
    height: 54px !important;
    min-height: 54px !important;
    padding: 0 16px !important;
    font-size: 15px !important;
  }

  body.woocommerce-cart #main td.actions .coupon button,
  body.woocommerce-cart #main td.actions button[name="update_cart"] {
    height: 54px !important;
    min-height: 54px !important;
  }
}

/* Extra-small mobile screens */
@media (max-width: 380px) {
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity {
    grid-template-columns: 40px minmax(44px, 1fr) 40px !important;
    width: 144px !important;
    min-width: 144px !important;
    max-width: 144px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }
}

/* =========================================================
   14. PRODUCTION CHECKOUT ORDER REVIEW — v10
   Keep this section LAST.

   Fixes:
   - "Your order" card alignment on desktop, tablet and mobile
   - Product and subtotal columns
   - Shipping method layout and long labels
   - Payment method box alignment
   - Consistent internal spacing and borders
   - Prevents prices and currency symbols from wrapping
   ========================================================= */

/* ---------- Shared order-review foundation ---------- */

body.woocommerce-checkout #order_review {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 30px !important;

  border: 1px solid var(--burnigan-black) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.woocommerce-checkout #order_review_heading {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 18px !important;
  box-sizing: border-box !important;
}

/* Order table */
body.woocommerce-checkout #order_review table.shop_table {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 26px !important;
  border: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  background: transparent !important;
}

body.woocommerce-checkout #order_review table.shop_table thead,
body.woocommerce-checkout #order_review table.shop_table tbody,
body.woocommerce-checkout #order_review table.shop_table tfoot {
  width: 100% !important;
}

body.woocommerce-checkout #order_review table.shop_table tr {
  width: 100% !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 16px 0 !important;

  border: 0 !important;
  border-bottom: 1px dashed rgba(8, 8, 8, 0.13) !important;
  background: transparent !important;

  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  line-height: 1.5 !important;
  vertical-align: top !important;

  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  box-sizing: border-box !important;
}

/* Product column */
body.woocommerce-checkout #order_review table.shop_table th:first-child,
body.woocommerce-checkout #order_review table.shop_table td:first-child {
  width: auto !important;
  min-width: 0 !important;
  padding-right: 22px !important;
  text-align: left !important;
}

/* Price column */
body.woocommerce-checkout #order_review table.shop_table th:last-child,
body.woocommerce-checkout #order_review table.shop_table td:last-child {
  width: 118px !important;
  min-width: 118px !important;
  padding-left: 12px !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Header row */
body.woocommerce-checkout #order_review table.shop_table thead th {
  padding-top: 0 !important;
  padding-bottom: 18px !important;
  border-bottom: 1px solid var(--burnigan-border) !important;

  color: var(--burnigan-black) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

/* Product line */
body.woocommerce-checkout #order_review td.product-name {
  color: #3f4e63 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout #order_review td.product-name strong.product-quantity {
  color: var(--burnigan-black) !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout #order_review td.product-name dl.variation {
  display: block !important;
  margin: 8px 0 0 !important;
  color: #68717e !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout #order_review td.product-name dl.variation dt,
body.woocommerce-checkout #order_review td.product-name dl.variation dd {
  display: inline !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #order_review td.product-name dl.variation dd::after {
  content: "";
  display: block;
}

/* Totals */
body.woocommerce-checkout #order_review tfoot th {
  color: #3f4e63 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

body.woocommerce-checkout #order_review tfoot td {
  color: #3f4e63 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

body.woocommerce-checkout #order_review tr.order-total th,
body.woocommerce-checkout #order_review tr.order-total td {
  padding-top: 20px !important;
  border-bottom: 0 !important;
  color: var(--burnigan-black) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

body.woocommerce-checkout #order_review :is(
  .amount,
  .woocommerce-Price-amount,
  .woocommerce-Price-currencySymbol
) {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

/* ---------- Shipping row ---------- */

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals {
  display: table-row !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > th {
  width: 100% !important;
  padding: 20px 0 10px !important;
  border-bottom: 0 !important;
  text-align: left !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
  width: 100% !important;
  padding: 0 0 18px !important;
  border-bottom: 1px dashed rgba(8, 8, 8, 0.13) !important;
  text-align: left !important;
  white-space: normal !important;
}

/* Make the shipping title and methods full-width clean blocks */
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals {
  display: grid !important;
  grid-template-columns: 1fr !important;
  width: 100% !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > th,
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

/* Shipping methods */
body.woocommerce-checkout #order_review ul#shipping_method {
  display: grid !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-checkout #order_review ul#shipping_method li {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;

  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  margin: 3px 0 0 !important;
  accent-color: var(--burnigan-black) !important;
}

body.woocommerce-checkout #order_review ul#shipping_method label {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;

  color: #3f4e63 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;

  word-break: normal !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
}

/* ---------- Payment section ---------- */

body.woocommerce-checkout #payment {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 !important;

  border: 1px solid var(--burnigan-border) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment ul.payment_methods > li {
  width: 100% !important;
  margin: 0 !important;
  padding: 18px !important;
  border-bottom: 1px solid var(--burnigan-border) !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment ul.payment_methods > li:last-child {
  border-bottom: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  margin: 2px 10px 0 0 !important;
  vertical-align: top !important;
  accent-color: var(--burnigan-black) !important;
}

body.woocommerce-checkout #payment ul.payment_methods li > label {
  display: inline !important;
  margin: 0 !important;
  color: #3f4e63 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
}

body.woocommerce-checkout #payment .payment_box {
  position: relative !important;
  width: calc(100% + 36px) !important;
  max-width: none !important;
  margin: 18px -18px -18px !important;
  padding: 18px !important;

  border-top: 1px solid var(--burnigan-border) !important;
  border-radius: 0 !important;
  background: #fafaf8 !important;
  color: #3f4e63 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .payment_box::before {
  display: none !important;
  content: none !important;
}

body.woocommerce-checkout #payment .payment_box p {
  margin: 0 !important;
  color: #3f4e63 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

/* Terms and privacy */
body.woocommerce-checkout #payment .place-order {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #payment .woocommerce-privacy-policy-text {
  margin: 0 0 18px !important;
  color: #68717e !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}

body.woocommerce-checkout #place_order {
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
}

/* ---------- Desktop layout ---------- */

@media (min-width: 1021px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    grid-template-columns: minmax(0, 680px) 420px !important;
    gap: 0 44px !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 420px !important;
    min-width: 420px !important;
    max-width: 420px !important;
  }
}

/* ---------- Tablet layout ---------- */

@media (min-width: 601px) and (max-width: 1020px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    display: block !important;
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading {
    width: 100% !important;
    margin-top: 48px !important;
  }

  body.woocommerce-checkout form.checkout #order_review {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 28px !important;
  }
}

/* ---------- Mobile layout ---------- */

@media (max-width: 600px) {
  body.woocommerce-checkout form.checkout #order_review_heading {
    width: 100% !important;
    margin-top: 42px !important;
    padding-bottom: 14px !important;
  }

  body.woocommerce-checkout form.checkout #order_review {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 22px 18px !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout #order_review table.shop_table {
    margin-bottom: 22px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:first-child,
  body.woocommerce-checkout #order_review table.shop_table td:first-child {
    padding-right: 14px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 106px !important;
    min-width: 106px !important;
    padding-left: 8px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table thead th {
    font-size: 12px !important;
  }

  body.woocommerce-checkout #order_review td.product-name {
    font-size: 13px !important;
    line-height: 1.48 !important;
  }

  body.woocommerce-checkout #order_review ul#shipping_method label {
    font-size: 13px !important;
  }

  body.woocommerce-checkout #payment ul.payment_methods > li {
    padding: 16px !important;
  }

  body.woocommerce-checkout #payment .payment_box {
    width: calc(100% + 32px) !important;
    margin: 16px -16px -16px !important;
    padding: 16px !important;
  }
}

/* Extra narrow phones */
@media (max-width: 380px) {
  body.woocommerce-checkout form.checkout #order_review {
    padding: 18px 14px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 94px !important;
    min-width: 94px !important;
  }

  body.woocommerce-checkout #order_review td.product-name {
    font-size: 12px !important;
  }
}

/* =========================================================
   15. DESKTOP CHECKOUT PROPORTIONS + ALIGNMENT — v11
   Keep this section LAST.

   Fixes:
   - Wider and better-proportioned Your Order column
   - Removes the cramped "box inside a box" appearance
   - Aligns heading, order table, shipping and payment panels
   - Improves desktop/tablet spacing without changing mobile
   ========================================================= */

/* Full checkout canvas */
body.woocommerce-checkout #main > .ct-container,
body.woocommerce-checkout #main > .ct-container-full {
  width: calc(100% - 48px) !important;
  max-width: 1280px !important;
  margin-inline: auto !important;
}

/* Remove unnecessary wrapper borders around the order column */
body.woocommerce-checkout form.checkout #order_review_heading,
body.woocommerce-checkout form.checkout #order_review {
  box-sizing: border-box !important;
}

body.woocommerce-checkout #order_review_heading {
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
}

/* One clean order card */
body.woocommerce-checkout #order_review {
  border: 1px solid rgba(8, 8, 8, 0.18) !important;
  background: #ffffff !important;
  padding: 32px !important;
  box-shadow: none !important;
}

/* Remove nested visual framing from payment section */
body.woocommerce-checkout #payment ul.payment_methods {
  border-color: rgba(8, 8, 8, 0.16) !important;
}

body.woocommerce-checkout #payment .payment_box {
  border-top-color: rgba(8, 8, 8, 0.12) !important;
  background: #f8f8f5 !important;
}

/* Better radio appearance */
body.woocommerce-checkout #order_review input[type="radio"],
body.woocommerce-checkout #payment input[type="radio"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 2px 10px 0 0 !important;
  border: 1px solid #bfc5cc !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 4px #fff !important;
  vertical-align: top !important;
}

body.woocommerce-checkout #order_review input[type="radio"]:checked,
body.woocommerce-checkout #payment input[type="radio"]:checked {
  border-color: #080808 !important;
  background: #080808 !important;
}

/* Desktop */
@media (min-width: 1101px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    grid-template-columns: minmax(0, 720px) 460px !important;
    grid-template-areas:
      "customer heading"
      "customer review" !important;
    justify-content: center !important;
    align-items: start !important;
    column-gap: 50px !important;
    row-gap: 0 !important;
    max-width: 1230px !important;
    margin: 0 auto !important;
  }

  body.woocommerce-checkout form.checkout #customer_details {
    width: 100% !important;
    max-width: 720px !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 460px !important;
    min-width: 460px !important;
    max-width: 460px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 126px !important;
    min-width: 126px !important;
  }
}

/* Medium desktop / landscape tablet */
@media (min-width: 901px) and (max-width: 1100px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    grid-template-columns: minmax(0, 1fr) 400px !important;
    column-gap: 36px !important;
    max-width: 1020px !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 400px !important;
    min-width: 400px !important;
    max-width: 400px !important;
  }

  body.woocommerce-checkout #order_review {
    padding: 28px !important;
  }
}

/* Tablet stacks cleanly */
@media (min-width: 601px) and (max-width: 900px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    display: block !important;
    max-width: 760px !important;
    margin: 0 auto !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading {
    margin-top: 48px !important;
  }
}

/* Mobile refinement */
@media (max-width: 600px) {
  body.woocommerce-checkout #main > .ct-container,
  body.woocommerce-checkout #main > .ct-container-full {
    width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.woocommerce-checkout #order_review {
    padding: 20px 16px !important;
    border-color: rgba(8, 8, 8, 0.18) !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 104px !important;
    min-width: 104px !important;
  }
}

/* =========================================================
   16. PREMIUM CHECKOUT ORDER CARD — v12
   Keep this section LAST.

   Purpose:
   - Remove the default WooCommerce "box inside a box" look
   - Create a single premium order-summary card
   - Rebuild shipping/payment radios consistently
   - Improve desktop, tablet and mobile hierarchy
   ========================================================= */

/* ---------- Remove theme wrapper framing ---------- */

body.woocommerce-checkout :is(
  .woocommerce-checkout-review-order-container,
  .woocommerce-checkout-review-order-wrapper,
  .ct-order-review,
  .ct-checkout-order-review,
  .checkout-order-review
) {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* ---------- Order column heading ---------- */

body.woocommerce-checkout #order_review_heading {
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;

  color: var(--burnigan-black) !important;
  font-size: clamp(34px, 3vw, 48px) !important;
  font-weight: 900 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.045em !important;
  text-transform: uppercase !important;
}

/* ---------- Single premium order card ---------- */

body.woocommerce-checkout #order_review {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 30px !important;

  border: 1px solid rgba(8, 8, 8, 0.14) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 16px 45px rgba(8, 8, 8, 0.05) !important;

  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Remove the old nested rectangle */
body.woocommerce-checkout #order_review > table.shop_table,
body.woocommerce-checkout #order_review table.woocommerce-checkout-review-order-table {
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: 0 !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  border-collapse: collapse !important;
  table-layout: fixed !important;
}

/* ---------- Order table typography ---------- */

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td {
  border: 0 !important;
  border-bottom: 1px solid rgba(8, 8, 8, 0.10) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout #order_review table.shop_table thead th {
  padding: 0 0 16px !important;
  color: var(--burnigan-black) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout #order_review table.shop_table th:first-child,
body.woocommerce-checkout #order_review table.shop_table td:first-child {
  width: auto !important;
  min-width: 0 !important;
  padding-right: 18px !important;
  text-align: left !important;
}

body.woocommerce-checkout #order_review table.shop_table th:last-child,
body.woocommerce-checkout #order_review table.shop_table td:last-child {
  width: 120px !important;
  min-width: 120px !important;
  padding-left: 12px !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout #order_review td.product-name {
  padding-top: 18px !important;
  padding-bottom: 18px !important;

  color: #303030 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout #order_review td.product-total {
  padding-top: 18px !important;
  padding-bottom: 18px !important;

  color: var(--burnigan-black) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

body.woocommerce-checkout #order_review td.product-name strong.product-quantity {
  display: inline-block !important;
  margin-left: 4px !important;
  color: var(--burnigan-black) !important;
  font-weight: 900 !important;
}

body.woocommerce-checkout #order_review td.product-name dl.variation {
  margin: 9px 0 0 !important;
  color: #777772 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout #order_review tfoot th,
body.woocommerce-checkout #order_review tfoot td {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

body.woocommerce-checkout #order_review tfoot th {
  color: #444440 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
}

body.woocommerce-checkout #order_review tfoot td {
  color: var(--burnigan-black) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

body.woocommerce-checkout #order_review tr.order-total th,
body.woocommerce-checkout #order_review tr.order-total td {
  padding-top: 22px !important;
  padding-bottom: 4px !important;
  border-bottom: 0 !important;

  color: var(--burnigan-black) !important;
  font-size: 19px !important;
  font-weight: 900 !important;
}

/* ---------- Premium shipping methods ---------- */

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals {
  display: grid !important;
  grid-template-columns: 1fr !important;
  width: 100% !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > th,
body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > th {
  padding-top: 18px !important;
  padding-bottom: 10px !important;
  border-bottom: 0 !important;

  color: var(--burnigan-black) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td {
  padding-top: 0 !important;
  padding-bottom: 18px !important;
}

body.woocommerce-checkout #order_review ul#shipping_method {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #order_review ul#shipping_method li {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide native shipping radio */
body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Shipping option card */
body.woocommerce-checkout #order_review ul#shipping_method label {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 14px 14px 14px 46px !important;

  border: 1px solid rgba(8, 8, 8, 0.12) !important;
  background: #fafaf8 !important;

  color: #343434 !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;

  cursor: pointer !important;
  box-sizing: border-box !important;
}

/* Shipping radio ring */
body.woocommerce-checkout #order_review ul#shipping_method label::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 16px !important;

  width: 17px !important;
  height: 17px !important;

  border: 1px solid #aeb3b8 !important;
  border-radius: 50% !important;
  background: #ffffff !important;

  transform: translateY(-50%) !important;
  box-sizing: border-box !important;
}

/* Shipping selected dot */
body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"]:checked + label {
  border-color: var(--burnigan-black) !important;
  background: #ffffff !important;
}

body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"]:checked + label::before {
  border-color: var(--burnigan-black) !important;
  box-shadow: inset 0 0 0 5px #ffffff !important;
  background: var(--burnigan-black) !important;
}

/* ---------- Premium payment method card ---------- */

body.woocommerce-checkout #payment {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  width: 100% !important;
  margin: 24px 0 22px !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout #payment ul.payment_methods > li {
  position: relative !important;
  display: block !important;
  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid rgba(8, 8, 8, 0.14) !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

/* Hide native payment radio */
body.woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Payment label */
body.woocommerce-checkout #payment ul.payment_methods > li > label {
  position: relative !important;
  display: block !important;
  width: 100% !important;

  margin: 0 !important;
  padding: 18px 18px 18px 52px !important;

  color: var(--burnigan-black) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;

  cursor: pointer !important;
  box-sizing: border-box !important;
}

/* Payment radio ring */
body.woocommerce-checkout #payment ul.payment_methods > li > label::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 18px !important;

  width: 18px !important;
  height: 18px !important;

  border: 1px solid #aeb3b8 !important;
  border-radius: 50% !important;
  background: #ffffff !important;

  transform: translateY(-50%) !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"]:checked + label::before {
  border-color: var(--burnigan-black) !important;
  background: var(--burnigan-black) !important;
  box-shadow: inset 0 0 0 5px #ffffff !important;
}

/* Payment description */
body.woocommerce-checkout #payment .payment_box {
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 18px !important;

  border: 0 !important;
  border-top: 1px solid rgba(8, 8, 8, 0.10) !important;
  background: #f7f7f4 !important;

  color: #555550 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .payment_box::before {
  display: none !important;
  content: none !important;
}

body.woocommerce-checkout #payment .payment_box p {
  margin: 0 !important;
  color: #555550 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}

/* Privacy and order button */
body.woocommerce-checkout #payment .place-order {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #payment .woocommerce-privacy-policy-text {
  margin: 0 0 18px !important;
  padding: 0 !important;

  color: #6d6d68 !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
}

body.woocommerce-checkout #place_order {
  width: 100% !important;
  min-height: 56px !important;
  margin: 0 !important;

  background: var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus-visible {
  background: transparent !important;
  color: var(--burnigan-black) !important;
}

/* ---------- Desktop ---------- */

@media (min-width: 1101px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    grid-template-columns: minmax(0, 720px) 470px !important;
    column-gap: 54px !important;
    max-width: 1244px !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 470px !important;
    min-width: 470px !important;
    max-width: 470px !important;
  }
}

/* ---------- Tablet ---------- */

@media (min-width: 701px) and (max-width: 1100px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    display: block !important;
    max-width: 780px !important;
    margin: 0 auto !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.woocommerce-checkout form.checkout #order_review_heading {
    margin-top: 50px !important;
  }
}

/* ---------- Mobile ---------- */

@media (max-width: 700px) {
  body.woocommerce-checkout #order_review {
    padding: 22px 16px !important;
    box-shadow: none !important;
  }

  body.woocommerce-checkout #order_review_heading {
    font-size: 36px !important;
    margin-bottom: 14px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 104px !important;
    min-width: 104px !important;
  }

  body.woocommerce-checkout #order_review ul#shipping_method label {
    padding: 13px 12px 13px 44px !important;
    font-size: 12px !important;
  }

  body.woocommerce-checkout #payment ul.payment_methods > li > label {
    padding: 16px 14px 16px 48px !important;
    font-size: 13px !important;
  }

  body.woocommerce-checkout #payment .payment_box {
    padding: 14px !important;
  }
}

/* ---------- Very narrow phones ---------- */

@media (max-width: 380px) {
  body.woocommerce-checkout #order_review {
    padding: 18px 13px !important;
  }

  body.woocommerce-checkout #order_review table.shop_table th:last-child,
  body.woocommerce-checkout #order_review table.shop_table td:last-child {
    width: 92px !important;
    min-width: 92px !important;
  }
}

/* =========================================================
   17. FINAL MOBILE QUANTITY + WIDE CART TOTALS — v13
   Keep this section LAST.

   Fixes:
   - Forces visual order to: minus | quantity | plus
   - Centers the quantity value vertically and horizontally
   - Adds fallback ordering for Blocksy markup variations
   - Makes Cart Totals wider on mobile
   - Improves mobile totals row spacing and readability
   ========================================================= */

@media (max-width: 700px) {

  /* ---------- QUANTITY: authoritative mobile layout ---------- */

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: stretch !important;

    width: 160px !important;
    min-width: 160px !important;
    max-width: 160px !important;
    height: 48px !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid rgba(8, 8, 8, 0.30) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  /* Quantity value must always be in the center */
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity input.qty {
    order: 2 !important;
    flex: 1 1 auto !important;

    display: block !important;
    width: auto !important;
    min-width: 48px !important;
    max-width: none !important;
    height: 46px !important;
    min-height: 46px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    color: var(--burnigan-black) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 46px !important;
    text-align: center !important;
    text-indent: 0 !important;

    appearance: textfield !important;
    -webkit-appearance: none !important;
    -moz-appearance: textfield !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity input.qty::-webkit-inner-spin-button,
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity input.qty::-webkit-outer-spin-button {
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
  }

  /* Shared plus/minus control reset */
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    position: static !important;
    inset: auto !important;

    flex: 0 0 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 46px !important;
    min-height: 46px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    color: var(--burnigan-black) !important;
    font-size: 21px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;

    transform: none !important;
    box-sizing: border-box !important;
  }

  /* Correct semantic order */
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-decrease,
    .minus
  ) {
    order: 1 !important;
    border-right: 1px solid rgba(8, 8, 8, 0.12) !important;
    border-left: 0 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .plus
  ) {
    order: 3 !important;
    border-left: 1px solid rgba(8, 8, 8, 0.12) !important;
    border-right: 0 !important;
  }

  /*
   * Blocksy fallback:
   * On the current cart HTML the first generic button renders as plus
   * and the second as minus. These rules force the correct visual order
   * even if the semantic classes are absent or changed.
   */
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity > button:first-of-type {
    order: 3 !important;
    border-left: 1px solid rgba(8, 8, 8, 0.12) !important;
    border-right: 0 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity > button:nth-of-type(2) {
    order: 1 !important;
    border-right: 1px solid rgba(8, 8, 8, 0.12) !important;
    border-left: 0 !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ):hover,
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ):focus-visible {
    background: var(--burnigan-black) !important;
    color: var(--burnigan-white) !important;
    transform: none !important;
  }

  /* ---------- CART TOTALS: wider premium mobile card ---------- */

  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    width: calc(100vw - 20px) !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 42px 0 0 !important;
    padding: 26px 20px 28px !important;

    border: 1px solid var(--burnigan-black) !important;
    background: var(--burnigan-white) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart #main .cart_totals h2 {
    margin: 0 0 26px !important;
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 0.95 !important;
    letter-spacing: -0.045em !important;
  }

  body.woocommerce-cart #main .cart_totals table {
    width: 100% !important;
    table-layout: auto !important;
    border-collapse: collapse !important;
  }

  body.woocommerce-cart #main .cart_totals table th,
  body.woocommerce-cart #main .cart_totals table td {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    vertical-align: top !important;
  }

  body.woocommerce-cart #main .cart_totals table th {
    width: 38% !important;
    min-width: 0 !important;
    padding-right: 14px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  body.woocommerce-cart #main .cart_totals table td {
    width: 62% !important;
    min-width: 0 !important;
    text-align: right !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  body.woocommerce-cart #main .cart_totals tr.order-total th,
  body.woocommerce-cart #main .cart_totals tr.order-total td {
    padding-top: 20px !important;
    font-size: 18px !important;
    font-weight: 900 !important;
  }

  body.woocommerce-cart #main .cart_totals ul#shipping_method {
    width: 100% !important;
  }

  body.woocommerce-cart #main .cart_totals ul#shipping_method li {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    width: 100% !important;
  }

  body.woocommerce-cart #main .cart_totals ul#shipping_method label {
    width: 100% !important;
    min-width: 0 !important;
    text-align: left !important;
    font-size: 13px !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-cart #main .wc-proceed-to-checkout .checkout-button {
    min-height: 56px !important;
    font-size: 11px !important;
  }
}

/* Extra-small phones */
@media (max-width: 380px) {
  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity {
    width: 146px !important;
    min-width: 146px !important;
    max-width: 146px !important;
  }

  body.woocommerce-cart #main tr.cart_item > td.product-quantity .quantity :is(
    .ct-increase,
    .ct-decrease,
    .plus,
    .minus,
    button
  ) {
    flex-basis: 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }

  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    width: calc(100vw - 14px) !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* =========================================================
   18. PREMIUM CART TOTALS REBUILD — v14
   Keep this section LAST.

   This section deliberately does NOT touch the quantity picker.
   It rebuilds only Cart Totals for desktop, tablet and mobile.
   ========================================================= */

/* ---------- Shared Cart Totals foundation ---------- */

body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
  position: sticky !important;
  top: 90px !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;

  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 400px !important;

  margin: 0 !important;
  padding: 30px !important;

  border: 1px solid rgba(8, 8, 8, 0.18) !important;
  border-radius: 0 !important;
  background: var(--burnigan-white) !important;
  box-shadow: 0 14px 40px rgba(8, 8, 8, 0.045) !important;

  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Heading */
body.woocommerce-cart #main .cart_totals h2 {
  margin: 0 0 26px !important;
  padding: 0 !important;

  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: clamp(34px, 3.2vw, 44px) !important;
  font-weight: 900 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.045em !important;
  text-transform: uppercase !important;

  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Table reset */
body.woocommerce-cart #main .cart_totals table.shop_table {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-collapse: collapse !important;
  background: transparent !important;
  table-layout: auto !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tbody {
  display: block !important;
  width: 100% !important;
}

/* Standard total rows */
body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal,
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 17px 0 !important;

  border: 0 !important;
  border-bottom: 1px solid rgba(8, 8, 8, 0.12) !important;
  background: transparent !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal > th,
body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal > td,
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > th,
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > td {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal > th,
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > th {
  color: #4f4f4a !important;
  font-family: var(--burnigan-font) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.10em !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal > td,
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > td {
  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Hide WooCommerce responsive duplicate data-title labels */
body.woocommerce-cart #main .cart_totals table.shop_table td::before {
  display: none !important;
  content: none !important;
}

/* ---------- Shipping section ---------- */

body.woocommerce-cart #main .cart_totals table.shop_table tr.woocommerce-shipping-totals {
  display: block !important;
  width: 100% !important;

  margin: 0 !important;
  padding: 22px 0 !important;

  border: 0 !important;
  border-bottom: 1px solid rgba(8, 8, 8, 0.12) !important;
  background: transparent !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.woocommerce-shipping-totals > th,
body.woocommerce-cart #main .cart_totals table.shop_table tr.woocommerce-shipping-totals > td {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.woocommerce-shipping-totals > th {
  margin-bottom: 13px !important;

  color: var(--burnigan-black) !important;
  font-family: var(--burnigan-font) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Shipping choices */
body.woocommerce-cart #main .cart_totals ul#shipping_method {
  display: grid !important;
  gap: 9px !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart #main .cart_totals ul#shipping_method li {
  position: relative !important;
  display: block !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* Visually hide native radio while keeping it accessible */
body.woocommerce-cart #main .cart_totals ul#shipping_method input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Premium shipping option card */
body.woocommerce-cart #main .cart_totals ul#shipping_method label {
  position: relative !important;
  display: block !important;

  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 13px 14px 13px 43px !important;

  border: 1px solid rgba(8, 8, 8, 0.12) !important;
  background: #fafaf8 !important;

  color: #30302d !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.42 !important;
  text-align: left !important;

  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;

  cursor: pointer !important;
  box-sizing: border-box !important;
}

/* Custom radio ring */
body.woocommerce-cart #main .cart_totals ul#shipping_method label::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 14px !important;

  width: 17px !important;
  height: 17px !important;

  border: 1px solid #b4b8bc !important;
  border-radius: 50% !important;
  background: #ffffff !important;

  transform: translateY(-50%) !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart #main .cart_totals ul#shipping_method input[type="radio"]:checked + label {
  border-color: var(--burnigan-black) !important;
  background: #ffffff !important;
}

body.woocommerce-cart #main .cart_totals ul#shipping_method input[type="radio"]:checked + label::before {
  border-color: var(--burnigan-black) !important;
  background: var(--burnigan-black) !important;
  box-shadow: inset 0 0 0 4px #ffffff !important;
}

/* Shipping destination / update message */
body.woocommerce-cart #main .cart_totals :is(
  .woocommerce-shipping-destination,
  .woocommerce-shipping-calculator
) {
  margin: 13px 0 0 !important;
  padding: 0 !important;

  color: #72726d !important;
  font-family: var(--burnigan-font) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

body.woocommerce-cart #main .cart_totals .shipping-calculator-button {
  color: var(--burnigan-black) !important;
  font-weight: 800 !important;
  text-decoration: underline !important;
}

/* Order total emphasis */
body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  border-bottom: 0 !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > th {
  color: var(--burnigan-black) !important;
  font-size: 12px !important;
}

body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > td {
  font-size: 20px !important;
}

/* Checkout button */
body.woocommerce-cart #main .cart_totals .wc-proceed-to-checkout {
  width: 100% !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart #main .cart_totals .wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 17px 18px !important;

  border: 1px solid var(--burnigan-black) !important;
  background: var(--burnigan-black) !important;
  color: var(--burnigan-white) !important;

  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart #main .cart_totals .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart #main .cart_totals .wc-proceed-to-checkout .checkout-button:focus-visible {
  background: transparent !important;
  color: var(--burnigan-black) !important;
}

/* ---------- Desktop ---------- */

@media (min-width: 1121px) {
  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    max-width: 400px !important;
    padding: 30px !important;
  }
}

/* ---------- Tablet ---------- */

@media (min-width: 701px) and (max-width: 1120px) {
  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: static !important;

    width: min(100%, 660px) !important;
    min-width: 0 !important;
    max-width: 660px !important;

    margin: 0 auto !important;
    padding: 30px !important;
  }
}

/* ---------- Mobile ---------- */

@media (max-width: 700px) {
  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 38px 0 0 !important;
    padding: 24px 18px 22px !important;

    box-shadow: none !important;
    overflow: hidden !important;
  }

  body.woocommerce-cart #main .cart_totals h2 {
    margin-bottom: 22px !important;
    font-size: clamp(32px, 9vw, 40px) !important;
    line-height: 0.98 !important;
  }

  body.woocommerce-cart #main .cart_totals table.shop_table tr.cart-subtotal,
  body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 14px !important;
  }

  body.woocommerce-cart #main .cart_totals table.shop_table tr.woocommerce-shipping-totals {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  body.woocommerce-cart #main .cart_totals ul#shipping_method label {
    padding: 13px 12px 13px 42px !important;
    font-size: 12px !important;
  }

  body.woocommerce-cart #main .cart_totals :is(
    .woocommerce-shipping-destination,
    .woocommerce-shipping-calculator
  ) {
    font-size: 10px !important;
  }

  body.woocommerce-cart #main .cart_totals table.shop_table tr.order-total > td {
    font-size: 19px !important;
  }
}

/* ---------- Extra-small phones ---------- */

@media (max-width: 380px) {
  body.woocommerce-cart #main .ct-woocommerce-cart-form .cart_totals {
    padding: 21px 14px 18px !important;
  }

  body.woocommerce-cart #main .cart_totals h2 {
    font-size: 31px !important;
  }

  body.woocommerce-cart #main .cart_totals ul#shipping_method label {
    padding-right: 10px !important;
    padding-left: 40px !important;
  }
}

/* =========================================================
   19. CHECKOUT LOGIN TOGGLE + REMEMBER ME — v15
   Keep this section LAST.

   Fixes:
   - Removes the broken icon before "Returning customer?"
   - Rebuilds the checkout login notice
   - Corrects the stretched Remember Me checkbox
   - Keeps the layout clean on desktop, tablet and mobile
   ========================================================= */

/* ---------- Returning customer notice ---------- */

body.woocommerce-checkout .woocommerce-form-login-toggle {
  width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
}

body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 17px 20px !important;
  border: 1px solid rgba(8, 8, 8, 0.24) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  color: #080808 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info::before,
body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info
.showlogin {
  flex: 0 0 auto !important;
  color: #080808 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  border-bottom: 1px solid #080808 !important;
}

body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info
.showlogin:hover,
body.woocommerce-checkout
.woocommerce-form-login-toggle
.woocommerce-info
.showlogin:focus-visible {
  opacity: 0.55 !important;
}

/* ---------- Open checkout login form ---------- */

body.woocommerce-checkout form.woocommerce-form-login {
  width: 100% !important;
  margin: 0 0 36px !important;
  padding: 24px !important;
  border: 1px solid rgba(8, 8, 8, 0.14) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
> p:first-child {
  margin: 0 0 22px !important;
  color: #4f4f4a !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.form-row {
  margin-bottom: 18px !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.form-row-first,
body.woocommerce-checkout
form.woocommerce-form-login
.form-row-last {
  width: calc(50% - 12px) !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.form-row-first {
  float: left !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.form-row-last {
  float: right !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.form-row::after {
  display: block;
  clear: both;
  content: "";
}

body.woocommerce-checkout
form.woocommerce-form-login
label:not(.woocommerce-form-login__rememberme) {
  display: block !important;
  margin: 0 0 8px !important;
  color: #080808 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
input.input-text {
  width: 100% !important;
  min-height: 50px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(8, 8, 8, 0.22) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  color: #080808 !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
input.input-text:focus {
  border-color: #080808 !important;
  outline: none !important;
}

/* ---------- Remember Me ---------- */

body.woocommerce-checkout
form.woocommerce-form-login
.woocommerce-form-login__rememberme,
body.woocommerce-checkout
form.woocommerce-form-login
.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 18px 0 0 !important;
  padding: 0 !important;
  color: #080808 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  vertical-align: middle !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
input[type="checkbox"],
body.woocommerce-checkout
form.woocommerce-form-login
#rememberme {
  position: static !important;
  inset: auto !important;
  display: inline-block !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #080808 !important;
  border-radius: 0 !important;
  background-color: #ffffff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 13px 13px !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
  transform: none !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
input[type="checkbox"]:checked,
body.woocommerce-checkout
form.woocommerce-form-login
#rememberme:checked {
  background-color: #080808 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.2' d='M3 8.5l3 3 7-7'/%3E%3C/svg%3E") !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
input[type="checkbox"]:focus-visible,
body.woocommerce-checkout
form.woocommerce-form-login
#rememberme:focus-visible {
  outline: 2px solid #080808 !important;
  outline-offset: 3px !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.woocommerce-form-login__submit {
  min-width: 118px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 13px 22px !important;
  border: 1px solid #080808 !important;
  border-radius: 0 !important;
  background: #080808 !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  vertical-align: middle !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.woocommerce-form-login__submit:hover,
body.woocommerce-checkout
form.woocommerce-form-login
.woocommerce-form-login__submit:focus-visible {
  background: #ffffff !important;
  color: #080808 !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.lost_password {
  clear: both !important;
  margin: 16px 0 0 !important;
}

body.woocommerce-checkout
form.woocommerce-form-login
.lost_password a {
  color: #080808 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

/* ---------- Tablet and mobile ---------- */

@media (max-width: 700px) {
  body.woocommerce-checkout
  .woocommerce-form-login-toggle
  .woocommerce-info {
    display: block !important;
    padding: 15px 16px !important;
    font-size: 12px !important;
  }

  body.woocommerce-checkout
  .woocommerce-form-login-toggle
  .woocommerce-info
  .showlogin {
    display: inline-block !important;
    margin-top: 8px !important;
    font-size: 10px !important;
    white-space: normal !important;
  }

  body.woocommerce-checkout form.woocommerce-form-login {
    margin-bottom: 30px !important;
    padding: 18px 14px !important;
  }

  body.woocommerce-checkout
  form.woocommerce-form-login
  .form-row-first,
  body.woocommerce-checkout
  form.woocommerce-form-login
  .form-row-last {
    float: none !important;
    width: 100% !important;
  }

  body.woocommerce-checkout
  form.woocommerce-form-login
  .woocommerce-form-login__rememberme,
  body.woocommerce-checkout
  form.woocommerce-form-login
  .woocommerce-form__label-for-checkbox {
    display: flex !important;
    width: fit-content !important;
    margin: 0 0 16px !important;
  }

  body.woocommerce-checkout
  form.woocommerce-form-login
  .woocommerce-form-login__submit {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-checkout
  form.woocommerce-form-login
  .lost_password {
    margin-top: 14px !important;
  }
}

/* =========================================================
   20. CHECKOUT VALIDATION NOTICE — v16
   Keep this section LAST.

   Fixes:
   - Makes checkout validation messages black
   - Keeps the notice readable on desktop and mobile
   - Prevents white links/text on a white background
   - Cleans the WooCommerce error-list presentation
   ========================================================= */

body.woocommerce-checkout :is(
  .woocommerce-NoticeGroup,
  .woocommerce-NoticeGroup-checkout,
  .woocommerce-notices-wrapper
) {
  color: #080808 !important;
}

body.woocommerce-checkout :is(
  .woocommerce-error,
  .woocommerce-message,
  .woocommerce-info
) {
  color: #080808 !important;
}

body.woocommerce-checkout .woocommerce-error {
  position: relative !important;

  width: 100% !important;
  margin: 0 0 30px !important;
  padding: 20px 22px 20px 48px !important;

  border: 1px solid #c62828 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;

  color: #080808 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .woocommerce-error::before {
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;

  display: block !important;
  margin: 0 !important;

  color: #c62828 !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

body.woocommerce-checkout .woocommerce-error::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-checkout .woocommerce-error li {
  margin: 0 0 7px !important;
  padding: 0 !important;

  color: #080808 !important;
  background: transparent !important;

  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;

  list-style: none !important;
}

body.woocommerce-checkout .woocommerce-error li:last-child {
  margin-bottom: 0 !important;
}

body.woocommerce-checkout .woocommerce-error :is(
  a,
  strong,
  span,
  p
) {
  color: #080808 !important;
}

body.woocommerce-checkout .woocommerce-error a {
  font-weight: 800 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

body.woocommerce-checkout .woocommerce-error a:hover,
body.woocommerce-checkout .woocommerce-error a:focus-visible {
  color: #080808 !important;
  opacity: 0.65 !important;
}

/* Field-level validation messages below inputs */
body.woocommerce-checkout :is(
  .woocommerce-invalid-required-field,
  .woocommerce-invalid
) :is(
  label,
  .woocommerce-error,
  .error,
  .required
) {
  color: #080808 !important;
}

body.woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
body.woocommerce-checkout .form-row.woocommerce-invalid select,
body.woocommerce-checkout .form-row.woocommerce-invalid textarea {
  border-color: #c62828 !important;
}

/* Mobile */
@media (max-width: 700px) {
  body.woocommerce-checkout .woocommerce-error {
    margin-bottom: 24px !important;
    padding: 17px 15px 17px 42px !important;
  }

  body.woocommerce-checkout .woocommerce-error::before {
    top: 18px !important;
    left: 15px !important;
    font-size: 15px !important;
  }

  body.woocommerce-checkout .woocommerce-error li {
    font-size: 12px !important;
    line-height: 1.48 !important;
  }
}

/* =========================================================
   21. REMOVE BROKEN WOOCOMMERCE NOTICE ICONS — v17
   Keep this section LAST.

   Fixes the yellow/broken glyph shown before:
   - Product removed notices
   - Empty cart message
   - Other cart information notices

   Applies to desktop and mobile.
   ========================================================= */

/* Remove WooCommerce / Blocksy pseudo-icons that depend on icon fonts */
body.woocommerce-cart :is(
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error,
  .cart-empty,
  .wc-block-cart__empty-cart__title
)::before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: inherit !important;
  background: none !important;
}

/* Remove any theme-generated decorative icon wrappers */
body.woocommerce-cart :is(
  .woocommerce-message,
  .woocommerce-info,
  .cart-empty,
  .wc-block-cart__empty-cart__title
) > :is(
  .ct-icon-container,
  .ct-notification-icon,
  .woocommerce-notice-icon
) {
  display: none !important;
}

/* Restore normal padding after removing the icon */
body.woocommerce-cart #main :is(
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error
) {
  padding-left: 20px !important;
}

/* Product-removed notice */
body.woocommerce-cart #main .woocommerce-message {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;

  min-height: 60px !important;
  color: #080808 !important;
}

/* Keep the Undo action aligned and premium */
body.woocommerce-cart #main .woocommerce-message .restore-item,
body.woocommerce-cart #main .woocommerce-message a.button {
  flex: 0 0 auto !important;
  float: none !important;

  margin: 0 !important;
  padding: 11px 15px !important;

  border: 1px solid #080808 !important;
  background: #080808 !important;
  color: #ffffff !important;

  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.10em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart #main .woocommerce-message .restore-item:hover,
body.woocommerce-cart #main .woocommerce-message .restore-item:focus-visible,
body.woocommerce-cart #main .woocommerce-message a.button:hover,
body.woocommerce-cart #main .woocommerce-message a.button:focus-visible {
  background: #ffffff !important;
  color: #080808 !important;
}

/* Empty-cart message: no reserved icon space */
body.woocommerce-cart #main :is(
  .cart-empty,
  .wc-block-cart__empty-cart__title
) {
  padding-left: 20px !important;
  text-indent: 0 !important;
}

/* Mobile */
@media (max-width: 700px) {
  body.woocommerce-cart #main .woocommerce-message {
    display: block !important;
    min-height: 0 !important;
    padding: 16px !important;
  }

  body.woocommerce-cart #main .woocommerce-message .restore-item,
  body.woocommerce-cart #main .woocommerce-message a.button {
    display: block !important;
    width: 100% !important;
    margin-top: 14px !important;
    text-align: center !important;
  }

  body.woocommerce-cart #main :is(
    .cart-empty,
    .wc-block-cart__empty-cart__title
  ) {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* =========================================================
   26. SHIPPING DELIVERY DETAILS — v22
   Keep this section LAST.

   Adds a clean secondary delivery line inside shipping cards
   on the Cart and Checkout pages.
   ========================================================= */

body:is(.woocommerce-cart, .woocommerce-checkout)
.burnigan-shipping-rate {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout)
.burnigan-shipping-rate__title {
  display: block !important;
  color: #080808 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout)
.burnigan-shipping-rate__meta {
  display: block !important;
  color: #73736e !important;
  font-family: var(--burnigan-font) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body:is(.woocommerce-cart, .woocommerce-checkout)
.burnigan-shipping-rate__price {
  color: #080808 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

/* Keep labels visually balanced inside the existing premium cards. */
body.woocommerce-cart #main .cart_totals ul#shipping_method label,
body.woocommerce-checkout #order_review ul#shipping_method label {
  padding-top: 13px !important;
  padding-bottom: 13px !important;
}

/* Mobile */
@media (max-width: 700px) {
  body:is(.woocommerce-cart, .woocommerce-checkout)
  .burnigan-shipping-rate__title {
    font-size: 12px !important;
  }

  body:is(.woocommerce-cart, .woocommerce-checkout)
  .burnigan-shipping-rate__meta {
    font-size: 9px !important;
    line-height: 1.4 !important;
  }
}

/* =========================================================
   27. PREMIUM LOCAL PICKUP LOCATIONS — v23
   Keep this section LAST.

   Adds four selectable pickup-location cards, ordered north
   to south: Tripoli, Koura, Batroun, Rabieh (Matn).
   ========================================================= */

body.woocommerce-checkout .burnigan-pickup-selector {
  width: 100% !important;
  margin: 24px 0 !important;
  padding: 24px !important;

  border: 1px solid rgba(8, 8, 8, 0.14) !important;
  background: #f7f7f4 !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .burnigan-pickup-selector[hidden] {
  display: none !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__header {
  margin: 0 0 18px !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__eyebrow {
  display: block !important;
  margin: 0 0 7px !important;

  color: #777772 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__title {
  margin: 0 !important;

  color: #080808 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__intro {
  margin: 8px 0 0 !important;

  color: #686863 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__options {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;

  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .burnigan-pickup-option {
  position: relative !important;
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* Visually hide the native radio while retaining accessibility. */
body.woocommerce-checkout .burnigan-pickup-option input[type="radio"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.woocommerce-checkout .burnigan-pickup-option__card {
  position: relative !important;
  display: block !important;
  min-height: 86px !important;

  padding: 16px 14px 15px 46px !important;

  border: 1px solid rgba(8, 8, 8, 0.13) !important;
  background: #ffffff !important;

  cursor: pointer !important;
  box-sizing: border-box !important;
  transition:
    border-color 0.22s ease,
    background-color 0.22s ease,
    transform 0.22s ease !important;
}

body.woocommerce-checkout .burnigan-pickup-option__card::before {
  content: "" !important;
  position: absolute !important;
  top: 18px !important;
  left: 16px !important;

  width: 17px !important;
  height: 17px !important;

  border: 1px solid #aaaead !important;
  border-radius: 50% !important;
  background: #ffffff !important;

  box-sizing: border-box !important;
}

body.woocommerce-checkout
.burnigan-pickup-option
input[type="radio"]:checked
+ .burnigan-pickup-option__card {
  border-color: #080808 !important;
  background: #ffffff !important;
}

body.woocommerce-checkout
.burnigan-pickup-option
input[type="radio"]:checked
+ .burnigan-pickup-option__card::before {
  border-color: #080808 !important;
  background: #080808 !important;
  box-shadow: inset 0 0 0 4px #ffffff !important;
}

body.woocommerce-checkout
.burnigan-pickup-option
input[type="radio"]:focus-visible
+ .burnigan-pickup-option__card {
  outline: 2px solid #080808 !important;
  outline-offset: 3px !important;
}

body.woocommerce-checkout .burnigan-pickup-option__card:hover {
  border-color: #080808 !important;
  transform: translateY(-1px) !important;
}

body.woocommerce-checkout .burnigan-pickup-option__city {
  display: block !important;

  color: #080808 !important;
  font-family: var(--burnigan-font) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.3 !important;
}

body.woocommerce-checkout .burnigan-pickup-option__region {
  display: block !important;
  margin-top: 5px !important;

  color: #73736e !important;
  font-family: var(--burnigan-font) !important;
  font-size: 9px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout .burnigan-pickup-selector__error {
  margin: 12px 0 0 !important;
  color: #b42318 !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
}

/* Admin/email/order display helper */
.burnigan-pickup-order-detail {
  margin-top: 12px !important;
}

/* Mobile */
@media (max-width: 700px) {
  body.woocommerce-checkout .burnigan-pickup-selector {
    margin: 20px 0 !important;
    padding: 18px 14px !important;
  }

  body.woocommerce-checkout .burnigan-pickup-selector__title {
    font-size: 16px !important;
  }

  body.woocommerce-checkout .burnigan-pickup-selector__options {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body.woocommerce-checkout .burnigan-pickup-option__card {
    min-height: 76px !important;
    padding: 14px 12px 13px 43px !important;
  }

  body.woocommerce-checkout .burnigan-pickup-option__card::before {
    top: 16px !important;
    left: 14px !important;
  }

  body.woocommerce-checkout .burnigan-pickup-option__city {
    font-size: 12px !important;
  }
}

/* =========================================================
   36. BURNIGAN BLOCKSY HEADER + MOBILE MENU — CLEAN v2
   Keep this section LAST.

   Compatibility-first approach:
   - Blocksy controls layout, panel position and animation.
   - This section changes appearance only.
   - No forced fixed positioning, panel sizing or internal
     display overrides that can hide menu items.
   ========================================================= */

:root {
  --burnigan-header-bg: #ffffff;
  --burnigan-header-text: #080808;
  --burnigan-header-soft: #f4f4f1;
  --burnigan-header-border: rgba(8, 8, 8, 0.10);
  --burnigan-header-shadow: 0 10px 34px rgba(8, 8, 8, 0.08);
  --burnigan-header-transition: 220ms cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Shared header foundation ---------- */

header#header,
header.ct-header,
#header,
.ct-header {
  z-index: 9999;
  width: 100%;
}

header#header [data-row="middle"],
header.ct-header [data-row="middle"],
#header [data-row="middle"],
.ct-header [data-row="middle"] {
  min-height: 78px;
  border-bottom: 1px solid var(--burnigan-header-border);
  background: rgba(255, 255, 255, 0.97);
  transition:
    min-height var(--burnigan-header-transition),
    background-color var(--burnigan-header-transition),
    box-shadow var(--burnigan-header-transition);
}

header#header [data-row="middle"] > div,
header.ct-header [data-row="middle"] > div,
#header [data-row="middle"] > div,
.ct-header [data-row="middle"] > div {
  min-height: inherit;
}

header#header .ct-container,
header.ct-header .ct-container,
#header .ct-container,
.ct-header .ct-container {
  width: 100%;
  max-width: 1380px;
  margin-inline: auto;
  padding-inline: clamp(20px, 2.3vw, 38px);
}

/* Sticky state: retain Blocksy mechanics, add only the finish */
header#header [data-sticky*="yes"],
header.ct-header [data-sticky*="yes"],
#header [data-sticky*="yes"],
.ct-header [data-sticky*="yes"],
header#header .ct-sticky-container,
header.ct-header .ct-sticky-container,
#header .ct-sticky-container,
.ct-header .ct-sticky-container {
  border-bottom-color: transparent;
  background: rgba(255, 255, 255, 0.90) !important;
  -webkit-backdrop-filter: blur(14px) saturate(145%);
  backdrop-filter: blur(14px) saturate(145%);
  box-shadow: var(--burnigan-header-shadow);
}

/* ---------- Logo ---------- */

header#header .site-logo-container,
header.ct-header .site-logo-container,
#header .site-logo-container,
.ct-header .site-logo-container {
  display: inline-flex;
  align-items: center;
}

header#header .site-logo-container img,
header.ct-header .site-logo-container img,
#header .site-logo-container img,
.ct-header .site-logo-container img {
  display: block;
  width: auto !important;
  max-width: 260px !important;
  max-height: 38px !important;
  object-fit: contain;
  transition: transform var(--burnigan-header-transition);
}

header#header .site-logo-container:hover img,
header.ct-header .site-logo-container:hover img,
#header .site-logo-container:hover img,
.ct-header .site-logo-container:hover img {
  transform: scale(1.012);
}

/* ---------- Desktop navigation ---------- */

@media (min-width: 1000px) {
  header#header .menu,
  header.ct-header .menu,
  #header .menu,
  .ct-header .menu {
    display: flex;
    align-items: center;
    gap: clamp(28px, 2.3vw, 44px);
  }

  header#header .menu > li,
  header.ct-header .menu > li,
  #header .menu > li,
  .ct-header .menu > li {
    position: relative;
  }

  header#header .menu > li > a,
  header.ct-header .menu > li > a,
  #header .menu > li > a,
  .ct-header .menu > li > a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 0 !important;
    color: var(--burnigan-header-text) !important;
    font-family: var(--burnigan-font, Arial, Helvetica, sans-serif);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    opacity: 1;
    transition:
      color var(--burnigan-header-transition),
      opacity var(--burnigan-header-transition);
  }

  header#header .menu > li > a::after,
  header.ct-header .menu > li > a::after,
  #header .menu > li > a::after,
  .ct-header .menu > li > a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 7px;
    left: 0;
    height: 2px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: right center;
    transition: transform var(--burnigan-header-transition);
  }

  header#header .menu > li:hover > a::after,
  header#header .menu > li.current-menu-item > a::after,
  header#header .menu > li.current-menu-ancestor > a::after,
  header.ct-header .menu > li:hover > a::after,
  header.ct-header .menu > li.current-menu-item > a::after,
  header.ct-header .menu > li.current-menu-ancestor > a::after,
  #header .menu > li:hover > a::after,
  #header .menu > li.current-menu-item > a::after,
  #header .menu > li.current-menu-ancestor > a::after,
  .ct-header .menu > li:hover > a::after,
  .ct-header .menu > li.current-menu-item > a::after,
  .ct-header .menu > li.current-menu-ancestor > a::after {
    transform: scaleX(1);
    transform-origin: left center;
  }

  header#header .menu > li > a:hover,
  header.ct-header .menu > li > a:hover,
  #header .menu > li > a:hover,
  .ct-header .menu > li > a:hover {
    color: var(--burnigan-header-text) !important;
    opacity: 0.62;
  }

  /* Dropdown appearance only; Blocksy keeps positioning/behavior */
  header#header .sub-menu,
  header.ct-header .sub-menu,
  #header .sub-menu,
  .ct-header .sub-menu {
    padding: 12px;
    border: 1px solid var(--burnigan-header-border);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: var(--burnigan-header-shadow);
  }

  header#header .sub-menu a,
  header.ct-header .sub-menu a,
  #header .sub-menu a,
  .ct-header .sub-menu a {
    padding: 12px 14px;
    color: var(--burnigan-header-text) !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition:
      padding-left var(--burnigan-header-transition),
      background-color var(--burnigan-header-transition);
  }

  header#header .sub-menu a:hover,
  header.ct-header .sub-menu a:hover,
  #header .sub-menu a:hover,
  .ct-header .sub-menu a:hover {
    padding-left: 18px;
    background: var(--burnigan-header-soft);
  }

  header#header [data-column="end"],
  header.ct-header [data-column="end"],
  #header [data-column="end"],
  .ct-header [data-column="end"] {
    gap: 7px;
  }
}

/* ---------- Header action icons ---------- */

header#header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
),
header.ct-header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
),
#header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
),
.ct-header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  border-radius: 999px;
  color: var(--burnigan-header-text) !important;
  transition:
    background-color var(--burnigan-header-transition),
    transform var(--burnigan-header-transition);
}

header#header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
):hover,
header.ct-header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
):hover,
#header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
):hover,
.ct-header :is(
  .ct-header-search,
  .ct-account-item,
  .ct-cart-item,
  .ct-header-trigger
):hover {
  background: var(--burnigan-header-soft);
  transform: translateY(-1px);
}

header#header svg,
header.ct-header svg,
#header svg,
.ct-header svg {
  width: 21px;
  height: 21px;
}

/* ---------- Tablet/mobile header ---------- */

@media (max-width: 999.98px) {
  header#header [data-row="middle"],
  header.ct-header [data-row="middle"],
  #header [data-row="middle"],
  .ct-header [data-row="middle"] {
    min-height: 72px;
  }

  header#header .ct-container,
  header.ct-header .ct-container,
  #header .ct-container,
  .ct-header .ct-container {
    padding-inline: 18px;
  }

  header#header .site-logo-container img,
  header.ct-header .site-logo-container img,
  #header .site-logo-container img,
  .ct-header .site-logo-container img {
    max-width: 205px !important;
    max-height: 29px !important;
  }

  header#header [data-column="end"],
  header.ct-header [data-column="end"],
  #header [data-column="end"],
  .ct-header [data-column="end"] {
    gap: 3px;
  }

  header#header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  header.ct-header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  #header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  .ct-header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ) {
    min-width: 40px;
    min-height: 40px;
    padding: 0;
  }
}

@media (max-width: 420px) {
  header#header .ct-container,
  header.ct-header .ct-container,
  #header .ct-container,
  .ct-header .ct-container {
    padding-inline: 14px;
  }

  header#header .site-logo-container img,
  header.ct-header .site-logo-container img,
  #header .site-logo-container img,
  .ct-header .site-logo-container img {
    max-width: 184px !important;
    max-height: 26px !important;
  }

  header#header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  header.ct-header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  #header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ),
  .ct-header :is(
    .ct-header-search,
    .ct-account-item,
    .ct-cart-item,
    .ct-header-trigger
  ) {
    min-width: 36px;
    min-height: 36px;
  }
}

/* ---------- Native Blocksy mobile menu intentionally unstyled ----------
   Burnigan Independent Mobile Navigation v5 supplies its own
   trigger, markup, panel, animation and accessibility behavior.
   Do not add #offcanvas or .ct-panel layout rules here.
--------------------------------------------------------- */

/* Search overlay */
#search-modal .ct-search-form,
.ct-search-form {
  max-width: 760px;
  margin-inline: auto;
}

#search-modal input[type="search"],
.ct-search-form input[type="search"] {
  min-height: 58px;
  padding-inline: 18px;
  border: 0;
  border-bottom: 1px solid var(--burnigan-header-text);
  border-radius: 0;
  background: transparent;
  font-size: clamp(22px, 3vw, 36px);
  font-weight: 600;
}

/* Accessibility */
header#header :is(a, button):focus-visible,
header.ct-header :is(a, button):focus-visible,
#header :is(a, button):focus-visible,
.ct-header :is(a, button):focus-visible {
  outline: 2px solid var(--burnigan-header-text);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  header#header *,
  header.ct-header *,
  #header *,
  .ct-header * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* =========================================================
   37. BURNIGAN PREMIUM HEADER REFINEMENT — v38
   Keep this section LAST.
   Refines desktop polish and narrows the mobile drawer.
   ========================================================= */

/* ---------- Desktop: stronger premium presence ---------- */
@media (min-width: 1000px) {
  header#header [data-row="middle"],
  header.ct-header [data-row="middle"],
  #header [data-row="middle"],
  .ct-header [data-row="middle"] {
    min-height: 84px !important;
    background: rgba(255,255,255,.98) !important;
  }

  header#header .ct-container,
  header.ct-header .ct-container,
  #header .ct-container,
  .ct-header .ct-container {
    max-width: 1480px !important;
    padding-inline: clamp(28px, 3vw, 54px) !important;
  }

  header#header .site-logo-container img,
  header.ct-header .site-logo-container img,
  #header .site-logo-container img,
  .ct-header .site-logo-container img {
    max-width: 285px !important;
    max-height: 42px !important;
  }

  header#header .menu,
  header.ct-header .menu,
  #header .menu,
  .ct-header .menu {
    gap: clamp(34px, 2.7vw, 52px) !important;
  }

  header#header .menu > li > a,
  header.ct-header .menu > li > a,
  #header .menu > li > a,
  .ct-header .menu > li > a {
    min-height: 52px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
  }

  header#header [data-column="end"],
  header.ct-header [data-column="end"],
  #header [data-column="end"],
  .ct-header [data-column="end"] {
    gap: 10px !important;
  }

  header#header :is(.ct-header-search,.ct-account-item,.ct-cart-item),
  header.ct-header :is(.ct-header-search,.ct-account-item,.ct-cart-item),
  #header :is(.ct-header-search,.ct-account-item,.ct-cart-item),
  .ct-header :is(.ct-header-search,.ct-account-item,.ct-cart-item) {
    min-width: 44px !important;
    min-height: 44px !important;
    border: 1px solid transparent;
  }

  header#header :is(.ct-header-search,.ct-account-item,.ct-cart-item):hover,
  header.ct-header :is(.ct-header-search,.ct-account-item,.ct-cart-item):hover,
  #header :is(.ct-header-search,.ct-account-item,.ct-cart-item):hover,
  .ct-header :is(.ct-header-search,.ct-account-item,.ct-cart-item):hover {
    border-color: rgba(8,8,8,.12);
    background: #fff !important;
  }
}

/* ---------- Sticky desktop: refined glass ---------- */
@media (min-width: 1000px) {
  header#header [data-sticky*="yes"],
  header.ct-header [data-sticky*="yes"],
  #header [data-sticky*="yes"],
  .ct-header [data-sticky*="yes"],
  header#header .ct-sticky-container,
  header.ct-header .ct-sticky-container,
  #header .ct-sticky-container,
  .ct-header .ct-sticky-container {
    background: rgba(255,255,255,.86) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    box-shadow: 0 14px 36px rgba(8,8,8,.09) !important;
  }
}

/* ---------- Mobile header proportions ---------- */
@media (max-width: 999.98px) {
  header#header [data-row="middle"],
  header.ct-header [data-row="middle"],
  #header [data-row="middle"],
  .ct-header [data-row="middle"] {
    min-height: 70px !important;
  }

  header#header .site-logo-container img,
  header.ct-header .site-logo-container img,
  #header .site-logo-container img,
  .ct-header .site-logo-container img {
    max-width: 190px !important;
    max-height: 27px !important;
  }
}

/* ---------- Mobile navigation ----------
   The mobile navigation is intentionally excluded from this
   stylesheet. Use only the independent v5 PHP navigation.
   ========================================================= */

/* =========================================================
   38. INDEPENDENT MOBILE NAVIGATION COMPATIBILITY — v41

   The master stylesheet contains no #offcanvas, .ct-panel,
   #menu-main-menu-1 or legacy .burnigan-mobile-nav rules.

   Mobile navigation is supplied exclusively by:
   Burnigan_Independent_Mobile_Navigation_Final_v5.php
   ========================================================= */

/* =========================================================
   48. PREMIUM HEADER & NAVIGATION — v51
   Blocksy-focused desktop header, sticky state, nav motion,
   account/cart polish, and premium mobile drawer.
   ========================================================= */

:root {
  --burnigan-header-height: 78px;
  --burnigan-header-bg: rgba(255, 255, 255, .94);
  --burnigan-header-bg-solid: #ffffff;
  --burnigan-header-text: #080808;
  --burnigan-header-line: rgba(8, 8, 8, .10);
  --burnigan-header-shadow: 0 10px 30px rgba(0, 0, 0, .055);
  --burnigan-header-blur: 18px;
}

/* Main Blocksy header shell */
#header,
.ct-header {
  position: relative;
  z-index: 9990 !important;
}

#header [data-row],
.ct-header [data-row] {
  transition:
    background-color .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    backdrop-filter .24s ease !important;
}

/* Desktop primary row */
@media (min-width: 1000px) {
  #header [data-device="desktop"] [data-row="middle"],
  .ct-header [data-device="desktop"] [data-row="middle"] {
    min-height: var(--burnigan-header-height) !important;
    border-bottom: 1px solid var(--burnigan-header-line) !important;
    background: var(--burnigan-header-bg) !important;
    backdrop-filter: blur(var(--burnigan-header-blur)) saturate(140%) !important;
    -webkit-backdrop-filter: blur(var(--burnigan-header-blur)) saturate(140%) !important;
  }

  body.burnigan-header-scrolled #header [data-device="desktop"] [data-row="middle"],
  body.burnigan-header-scrolled .ct-header [data-device="desktop"] [data-row="middle"] {
    background: var(--burnigan-header-bg-solid) !important;
    box-shadow: var(--burnigan-header-shadow) !important;
  }

  /* Wider, calmer header canvas */
  #header [data-device="desktop"] .ct-container,
  .ct-header [data-device="desktop"] .ct-container {
    width: calc(100% - 56px) !important;
    max-width: 1440px !important;
    margin-inline: auto !important;
  }

  /* Brand/logo */
  #header [data-device="desktop"] .site-branding,
  .ct-header [data-device="desktop"] .site-branding {
    transition: transform .22s ease !important;
    transform-origin: left center !important;
  }

  body.burnigan-header-scrolled #header [data-device="desktop"] .site-branding,
  body.burnigan-header-scrolled .ct-header [data-device="desktop"] .site-branding {
    transform: scale(.96) !important;
  }

  #header [data-device="desktop"] .site-logo-container img,
  .ct-header [data-device="desktop"] .site-logo-container img {
    max-height: 42px !important;
    width: auto !important;
    object-fit: contain !important;
  }

  /* Primary navigation */
  #header [data-device="desktop"] .menu,
  .ct-header [data-device="desktop"] .menu {
    display: flex !important;
    align-items: center !important;
    gap: clamp(22px, 2vw, 34px) !important;
  }

  #header [data-device="desktop"] .menu > li,
  .ct-header [data-device="desktop"] .menu > li {
    position: relative !important;
  }

  #header [data-device="desktop"] .menu > li > a,
  .ct-header [data-device="desktop"] .menu > li > a {
    position: relative !important;
    min-height: 76px !important;
    padding: 0 !important;
    color: var(--burnigan-header-text) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 76px !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    transition: opacity .18s ease !important;
  }

  #header [data-device="desktop"] .menu > li > a::after,
  .ct-header [data-device="desktop"] .menu > li > a::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    bottom: 20px !important;
    left: 0 !important;
    height: 1px !important;
    background: currentColor !important;
    transform: scaleX(0) !important;
    transform-origin: right center !important;
    transition: transform .22s ease !important;
  }

  #header [data-device="desktop"] .menu > li:hover > a::after,
  #header [data-device="desktop"] .menu > li.current-menu-item > a::after,
  #header [data-device="desktop"] .menu > li.current-menu-ancestor > a::after,
  .ct-header [data-device="desktop"] .menu > li:hover > a::after,
  .ct-header [data-device="desktop"] .menu > li.current-menu-item > a::after,
  .ct-header [data-device="desktop"] .menu > li.current-menu-ancestor > a::after {
    transform: scaleX(1) !important;
    transform-origin: left center !important;
  }

  /* Dropdown menus */
  #header [data-device="desktop"] .sub-menu,
  .ct-header [data-device="desktop"] .sub-menu {
    min-width: 230px !important;
    padding: 14px !important;
    border: 1px solid var(--burnigan-header-line) !important;
    background: #fff !important;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .09) !important;
  }

  #header [data-device="desktop"] .sub-menu a,
  .ct-header [data-device="desktop"] .sub-menu a {
    padding: 12px 14px !important;
    color: #080808 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  #header [data-device="desktop"] .sub-menu a:hover,
  .ct-header [data-device="desktop"] .sub-menu a:hover {
    background: #f3f3ef !important;
  }

  /* Right-side actions */
  #header [data-device="desktop"] :is(
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart,
    .ct-header-wishlist
  ),
  .ct-header [data-device="desktop"] :is(
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart,
    .ct-header-wishlist
  ) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 42px !important;
    min-height: 42px !important;
    border-radius: 50% !important;
    transition:
      background-color .18s ease,
      transform .18s ease !important;
  }

  #header [data-device="desktop"] :is(
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart,
    .ct-header-wishlist
  ):hover,
  .ct-header [data-device="desktop"] :is(
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart,
    .ct-header-wishlist
  ):hover {
    background: #f1f1ed !important;
    transform: translateY(-1px) !important;
  }

  /* Cart count */
  #header [data-device="desktop"] .ct-cart-item,
  .ct-header [data-device="desktop"] .ct-cart-item {
    position: relative !important;
  }

  #header [data-device="desktop"] .ct-cart-item-count,
  .ct-header [data-device="desktop"] .ct-cart-item-count {
    top: -7px !important;
    right: -9px !important;
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #080808 !important;
    color: #fff !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    line-height: 14px !important;
  }
}

/* Homepage header: overlays hero while remaining readable */
@media (min-width: 1000px) {
  body.home:not(.burnigan-header-scrolled) #header,
  body.home:not(.burnigan-header-scrolled) .ct-header {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
  }

  body.home:not(.burnigan-header-scrolled) #header [data-device="desktop"] [data-row="middle"],
  body.home:not(.burnigan-header-scrolled) .ct-header [data-device="desktop"] [data-row="middle"] {
    border-bottom-color: rgba(255,255,255,.25) !important;
    background: linear-gradient(
      to bottom,
      rgba(255,255,255,.90),
      rgba(255,255,255,.72)
    ) !important;
  }
}

/* Mobile header */
@media (max-width: 999px) {
  #header [data-device="mobile"] [data-row="middle"],
  .ct-header [data-device="mobile"] [data-row="middle"] {
    min-height: 66px !important;
    border-bottom: 1px solid var(--burnigan-header-line) !important;
    background: rgba(255,255,255,.96) !important;
    backdrop-filter: blur(16px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(140%) !important;
  }

  body.burnigan-header-scrolled #header [data-device="mobile"] [data-row="middle"],
  body.burnigan-header-scrolled .ct-header [data-device="mobile"] [data-row="middle"] {
    box-shadow: 0 8px 24px rgba(0,0,0,.055) !important;
  }

  #header [data-device="mobile"] .ct-container,
  .ct-header [data-device="mobile"] .ct-container {
    width: 100% !important;
    padding-inline: 16px !important;
  }

  #header [data-device="mobile"] .site-logo-container img,
  .ct-header [data-device="mobile"] .site-logo-container img {
    max-height: 34px !important;
  }

  #header [data-device="mobile"] :is(
    .ct-header-trigger,
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart
  ),
  .ct-header [data-device="mobile"] :is(
    .ct-header-trigger,
    .ct-header-search,
    .ct-header-account,
    .ct-header-cart
  ) {
    min-width: 40px !important;
    min-height: 40px !important;
    border-radius: 50% !important;
  }

  /* Premium mobile off-canvas */
  #offcanvas,
  .ct-panel {
    --side-panel-width: min(88vw, 390px) !important;
  }

  #offcanvas .ct-panel-content,
  .ct-panel .ct-panel-content {
    background: #fff !important;
  }

  #offcanvas .mobile-menu,
  .ct-panel .mobile-menu {
    padding: 28px 22px 36px !important;
  }

  #offcanvas .mobile-menu > li,
  .ct-panel .mobile-menu > li {
    border-bottom: 1px solid rgba(8,8,8,.09) !important;
  }

  #offcanvas .mobile-menu > li > a,
  .ct-panel .mobile-menu > li > a {
    min-height: 58px !important;
    padding: 0 !important;
    color: #080808 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 58px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  #offcanvas .sub-menu,
  .ct-panel .sub-menu {
    padding: 0 0 16px 14px !important;
  }

  #offcanvas .sub-menu a,
  .ct-panel .sub-menu a {
    padding: 9px 0 !important;
    color: #5e5e59 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
  }
}

/* Better keyboard focus */
#header a:focus-visible,
#header button:focus-visible,
.ct-header a:focus-visible,
.ct-header button:focus-visible,
#offcanvas a:focus-visible,
#offcanvas button:focus-visible {
  outline: 2px solid #080808 !important;
  outline-offset: 3px !important;
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce) {
  #header *,
  .ct-header *,
  #offcanvas * {
    transition: none !important;
  }
}

/* =========================================================
   99. MIGRATED CUSTOMIZER CSS — v1.1.2
   Source: Appearance > Customize > Additional CSS
   The user can remove the migrated block from Additional CSS
   after installing this release.
   ========================================================= */
/* Burnigan — Show coupon name inside Cart Totals */
.woocommerce-cart .cart_totals tr.cart-discount th {
	display: table-cell !important;
	visibility: visible !important;
	opacity: 1 !important;
	color: #111 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	text-transform: uppercase !important;
}

/* Keep coupon discount and remove link aligned */
.woocommerce-cart .cart_totals tr.cart-discount td {
	display: table-cell !important;
	visibility: visible !important;
	opacity: 1 !important;
	color: #111 !important;
	font-weight: 700 !important;
	text-align: right !important;
}

/* Prevent duplicate mobile-generated label */
.woocommerce-cart .cart_totals tr.cart-discount td::before {
	display: none !important;
}

@media (max-width: 768px) {
	.woocommerce-cart .cart_totals tr.cart-discount {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 15px;
	}

	.woocommerce-cart .cart_totals tr.cart-discount th,
	.woocommerce-cart .cart_totals tr.cart-discount td {
		display: block !important;
		width: auto !important;
		padding: 14px 0 !important;
	}

	.woocommerce-cart .cart_totals tr.cart-discount th {
		text-align: left !important;
	}

	.woocommerce-cart .cart_totals tr.cart-discount td {
		text-align: right !important;
	}
}

/* =========================================================
   BURNIGAN FOOTER V2
   Desktop: permanently expanded
   Mobile: compact accordion
   ========================================================= */


/* =========================================================
   RESET BLOCKSY FOOTER WRAPPERS
   ========================================================= */

footer.ct-footer,
footer.ct-footer [data-row],
footer.ct-footer [data-row] > div,
footer.ct-footer .ct-footer-row,
footer.ct-footer .ct-container,
footer.ct-footer .ct-footer-column,
footer.ct-footer .ct-widget,
footer.ct-footer .widget,
footer.ct-footer .widget-area,
footer.ct-footer .widget_text,
footer.ct-footer .textwidget {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

footer.ct-footer {
    overflow: hidden;
    background: #050505;
}

footer.ct-footer [data-row] {
    --container-spacing: 0px !important;
    --content-spacing: 0px !important;
}

footer.ct-footer .textwidget > p:empty,
footer.ct-footer .widget_text > p:empty {
    display: none !important;
}


/* =========================================================
   MAIN FOOTER
   ========================================================= */

.burnigan-footer {
    width: 100%;
    margin: 0;
    padding: 28px clamp(28px, 6vw, 110px) 14px;
    box-sizing: border-box;
    background: #050505;
    color: #ffffff;
}

.burnigan-footer__content {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    display: grid;
    grid-template-columns:
        minmax(280px, 1.35fr)
        repeat(3, minmax(170px, 1fr));
    gap: clamp(45px, 7vw, 130px);
    align-items: start;
}


/* =========================================================
   BRAND
   ========================================================= */

.burnigan-footer__brand {
    min-width: 0;
    max-width: 360px;
}

.burnigan-footer__logo {
    display: inline-block;
    width: fit-content;
    margin: 0 0 10px;
    line-height: 0;
    text-decoration: none;
}

.burnigan-footer__logo-crop {
    position: relative;
    display: block;
    width: 245px;
    height: 45px;
    overflow: hidden;
}

.burnigan-footer__logo-crop img {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 245px;
    max-width: none;
    height: 245px;
    object-fit: contain;
    transform: translate(-50%, -50%);
}

.burnigan-footer__brand p {
    max-width: 330px;
    margin: 0;
    color: rgba(255, 255, 255, 0.6);
    font-size: 14px;
    line-height: 1.55;
}


/* =========================================================
   FOOTER SECTIONS — DESKTOP
   ========================================================= */

.burnigan-footer__section {
    min-width: 0;
    margin: 0;
    padding: 0;
}

.burnigan-footer__toggle {
    display: block;
    width: 100%;
    margin: 0 0 13px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: rgba(255, 255, 255, 0.5);
    text-align: left;
    font-family: inherit;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    appearance: none;
    cursor: default;
    pointer-events: none;
}

.burnigan-footer__toggle:hover,
.burnigan-footer__toggle:focus,
.burnigan-footer__toggle:active {
    background: transparent;
    box-shadow: none;
    color: rgba(255, 255, 255, 0.5);
    outline: none;
}

.burnigan-footer__plus {
    display: none;
}

.burnigan-footer__links {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.burnigan-footer__links a {
    display: block;
    width: fit-content;
    color: rgba(255, 255, 255, 0.92);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    transition:
        opacity 0.2s ease,
        transform 0.2s ease;
}

.burnigan-footer__links a:hover {
    color: #ffffff;
    opacity: 0.72;
    transform: translateX(3px);
}


/* =========================================================
   LEGAL ROW
   ========================================================= */

.burnigan-footer__legal {
    width: 100%;
    max-width: 1600px;
    margin: 20px auto 0;
    padding-top: 11px;
    border-top: 1px solid rgba(255, 255, 255, 0.11);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    color: rgba(255, 255, 255, 0.4);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) and (min-width: 690px) {

    .burnigan-footer {
        padding: 24px 28px 12px;
    }

    .burnigan-footer__content {
        grid-template-columns:
            minmax(220px, 1.25fr)
            repeat(3, minmax(135px, 1fr));
        gap: 32px;
    }

    .burnigan-footer__logo-crop {
        width: 205px;
        height: 38px;
    }

    .burnigan-footer__logo-crop img {
        width: 205px;
        height: 205px;
    }

    .burnigan-footer__brand p {
        font-size: 13px;
    }

    .burnigan-footer__toggle {
        font-size: 10px;
    }

    .burnigan-footer__links a {
        font-size: 13px;
    }

    .burnigan-footer__legal {
        font-size: 9px;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 689px) {

    footer.ct-footer {
        width: 100% !important;
        overflow: hidden !important;
        background: #050505 !important;
    }

    .burnigan-footer {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 22px 22px 12px !important;
        background: #050505 !important;
    }

    .burnigan-footer__content {
        display: block;
        width: 100%;
        max-width: none;
        margin: 0;
    }


    /* Brand */

    .burnigan-footer__brand {
        width: 100%;
        max-width: none;
        margin: 0 0 17px;
    }

    .burnigan-footer__logo {
        margin-bottom: 8px;
    }

    .burnigan-footer__logo-crop {
        width: 185px;
        height: 34px;
    }

    .burnigan-footer__logo-crop img {
        width: 185px;
        height: 185px;
    }

    .burnigan-footer__brand p {
        max-width: 330px;
        margin: 0;
        font-size: 12px;
        line-height: 1.5;
    }


    /* Accordion rows */

    .burnigan-footer__section {
        width: 100%;
        border-top: 1px solid rgba(255, 255, 255, 0.13);
    }

    .burnigan-footer__section:last-child {
        border-bottom: 1px solid rgba(255, 255, 255, 0.13);
    }

    .burnigan-footer__toggle {
        position: relative;
        display: flex;
        width: 100%;
        min-height: 0;
        margin: 0;
        padding: 14px 36px 14px 0;
        align-items: center;
        justify-content: space-between;
        border: 0;
        background: transparent;
        color: rgba(255, 255, 255, 0.92);
        box-shadow: none;
        font-size: 11px;
        line-height: 1.3;
        letter-spacing: 0.2em;
        cursor: pointer;
        pointer-events: auto;
    }

    .burnigan-footer__toggle:hover,
    .burnigan-footer__toggle:focus,
    .burnigan-footer__toggle:active {
        background: transparent;
        color: #ffffff;
        box-shadow: none;
        outline: none;
    }


    /* Plus/minus icon */

    .burnigan-footer__plus {
        position: absolute;
        top: 50%;
        right: 1px;
        display: block;
        width: 17px;
        height: 17px;
        transform: translateY(-50%);
    }

    .burnigan-footer__plus::before,
    .burnigan-footer__plus::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 15px;
        height: 1.5px;
        background: rgba(255, 255, 255, 0.78);
        transition: transform 0.2s ease;
    }

    .burnigan-footer__plus::before {
        transform: translate(-50%, -50%);
    }

    .burnigan-footer__plus::after {
        transform: translate(-50%, -50%) rotate(90deg);
    }

    .burnigan-footer__section.is-open
    .burnigan-footer__plus::after {
        transform: translate(-50%, -50%) rotate(0deg);
    }


    /* Closed by default */

    .burnigan-footer__links {
        display: none;
        width: 100%;
        gap: 0;
        padding: 0 0 12px;
    }

    .burnigan-footer__section.is-open
    .burnigan-footer__links {
        display: flex;
    }

    .burnigan-footer__links a {
        display: block;
        width: 100%;
        padding: 6px 0;
        color: rgba(255, 255, 255, 0.82);
        font-size: 12px;
        font-weight: 550;
        line-height: 1.4;
    }

    .burnigan-footer__links a:hover {
        opacity: 0.72;
        transform: none;
    }


    /* Legal row */

    .burnigan-footer__legal {
        width: 100%;
        max-width: none;
        margin: 14px 0 0;
        padding: 10px 0 0;
        border-top: 0;
        display: block;
        text-align: center;
        font-size: 7px;
        line-height: 1.55;
        letter-spacing: 0.13em;
    }

    .burnigan-footer__legal span {
        display: block;
    }

    .burnigan-footer__legal span:last-child {
        margin-top: 2px;
    }
}


/* =========================================================
   100. GLOBAL PAGE SPACING SYSTEM — v1.1.5
   ---------------------------------------------------------
   Single source of truth for the vertical band between the
   Blocksy header and the first page component, and between the
   last component and the footer.

   This section replaces the two earlier, conflicting blocks
   (old "100. GLOBAL COMPACT PAGE RHYTHM" v1.1.2 and
   "101. FULL-BLEED PAGE HERO ALIGNMENT" v1.1.4). Those set the
   variable `--content-vertical-spacing`, which is NOT Blocksy's
   token — Blocksy uses `--theme-content-vertical-spacing` — so
   their variable resets never applied and the header/hero gap
   persisted on About / Contact / FAQ and on the mobile homepage.

   Strategy:
   1. Drive spacing through Blocksy's real container token
      `--theme-content-vertical-spacing` so we cooperate with the
      theme instead of fighting it. This alone removes the gap
      without depending on exact child nesting.
   2. Keep a small, resilient padding fallback on the content
      shell for pages where the token is not honoured.
   3. Scope everything to real Blocksy wrappers
      (main#main / .site-main / .ct-container[-full]) and to
      specific body classes — never the header or footer, never
      global element selectors.

   Keep this block LAST so it wins over legacy page modules
   without needing extra specificity escalation.
   ========================================================= */

:root {
  /* Compact page rhythm. Adjust these two (and the mobile pair
     below) to retune every page's top/bottom spacing at once. */
  --burnigan-page-top-space: 24px;
  --burnigan-page-bottom-space: 24px;
  --burnigan-page-top-space-mobile: 0px;
  --burnigan-page-bottom-space-mobile: 16px;
}

@media (max-width: 689px) {
  :root {
    --burnigan-page-top-space: var(--burnigan-page-top-space-mobile);
    --burnigan-page-bottom-space: var(--burnigan-page-bottom-space-mobile);
  }
}

/* ---------------------------------------------------------
   Homepage: hero sits flush directly beneath the header on
   every device. This removes the desktop band AND the small
   mobile strip between header and hero image.
   --------------------------------------------------------- */
body.home main#main,
body.home .site-main {
  /* Neutralise Blocksy's own top spacing token. */
  --theme-content-vertical-spacing: 0px;
}

body.home main#main > :is(.ct-container, .ct-container-full),
body.home .site-main > :is(.ct-container, .ct-container-full) {
  padding-top: 0 !important;
}

/* First rendered block on the homepage must not add its own top
   margin (covers a hero that is / is not the direct first child). */
body.home main#main .entry-content > :first-child,
body.home main#main > :is(.ct-container, .ct-container-full) > :first-child,
body.home .site-main > :is(.ct-container, .ct-container-full) > :first-child {
  margin-top: 0 !important;
}

/* ---------------------------------------------------------
   Standard content pages (About, Contact, FAQ, etc.):
   compact, consistent top/bottom spacing. Excludes the
   homepage and all WooCommerce pages, which are handled
   separately.
   --------------------------------------------------------- */
body.page:not(.home):not(.woocommerce-page) main#main,
body.page:not(.home):not(.woocommerce-page) .site-main {
  --theme-content-vertical-spacing: var(--burnigan-page-top-space);
}

body.page:not(.home):not(.woocommerce-page) main#main > :is(.ct-container, .ct-container-full),
body.page:not(.home):not(.woocommerce-page) .site-main > :is(.ct-container, .ct-container-full) {
  padding-top: var(--burnigan-page-top-space) !important;
  padding-bottom: var(--burnigan-page-bottom-space) !important;
}

/* A page whose first block is a full-bleed / designed hero should
   sit flush under the header. Opt in by adding the body class
   `burnigan-flush-hero` (Blocksy: Page > Content Type, or a body
   class field) — safer than force-zeroing every page. */
body.page.burnigan-flush-hero:not(.home) main#main,
body.page.burnigan-flush-hero:not(.home) .site-main {
  --theme-content-vertical-spacing: 0px;
}

body.page.burnigan-flush-hero:not(.home) main#main > :is(.ct-container, .ct-container-full),
body.page.burnigan-flush-hero:not(.home) .site-main > :is(.ct-container, .ct-container-full) {
  padding-top: 0 !important;
}

body.page.burnigan-flush-hero:not(.home) main#main .entry-content > :first-child,
body.page.burnigan-flush-hero:not(.home) main#main > :is(.ct-container, .ct-container-full) > :first-child,
body.page.burnigan-flush-hero:not(.home) .site-main > :is(.ct-container, .ct-container-full) > :first-child {
  margin-top: 0 !important;
}

/* ---------------------------------------------------------
   Shop / taxonomy archives: compact top/bottom shell, and the
   product grid ends close to the footer while keeping normal
   row spacing inside the grid. (Overrides the legacy 55px/90px
   archive shell.)
   --------------------------------------------------------- */
body:is(.woocommerce-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag)
main#main > :is(.ct-container, .ct-container-full) {
  padding-top: var(--burnigan-page-top-space) !important;
  padding-bottom: var(--burnigan-page-bottom-space) !important;
}

body:is(.woocommerce-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag)
ul.products,
body:is(.woocommerce-shop, .post-type-archive-product, .tax-product_cat, .tax-product_tag)
.woocommerce-pagination {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ---------------------------------------------------------
   Cart / Checkout: these pages keep their own finalized shells
   defined earlier (Sections 10–21). We only normalise the outer
   top/bottom band so it matches the rest of the site.
   --------------------------------------------------------- */
body.woocommerce-cart #main > :is(.ct-container, .ct-container-full),
body.woocommerce-checkout #main > :is(.ct-container, .ct-container-full) {
  padding-top: var(--burnigan-page-top-space) !important;
  padding-bottom: var(--burnigan-page-bottom-space) !important;
}

/* ---------------------------------------------------------
   My Account: portal grid controls its own inner spacing; we
   only set the outer band.
   --------------------------------------------------------- */
body.woocommerce-account #main .woocommerce {
  margin-top: var(--burnigan-page-top-space) !important;
  margin-bottom: var(--burnigan-page-bottom-space) !important;
}

/* ---------------------------------------------------------
   Trailing space: the last rendered block should not push extra
   margin against the footer. Applies to standard and Woo pages;
   never touches the footer element itself.
   --------------------------------------------------------- */
body:not(.home) main#main > :is(.ct-container, .ct-container-full) > :last-child,
body:not(.home) .site-main > :is(.ct-container, .ct-container-full) > :last-child,
body.woocommerce :is(.woocommerce, .entry-content) > :last-child,
body.woocommerce-page :is(.woocommerce, .entry-content) > :last-child {
  margin-bottom: 0 !important;
}

/* Footer stays flush with the page shell (unchanged behaviour). */
footer.ct-footer {
  margin-top: 0 !important;
}

/* =========================================================
   101. MOBILE HEADER + PAGE GAP CORRECTION — v1.1.6
   ---------------------------------------------------------
   Root cause fixed:
   Earlier header sections assigned a 70px minimum height to
   every Blocksy [data-row]. Empty top/bottom rows therefore
   rendered as blank bands below the visible mobile header.

   This final guard keeps only the middle row height, collapses
   unused row minimums, removes the residual mobile content
   offset, and tightens the shop tabs / sorting / product flow.
   ========================================================= */

@media (max-width: 999.98px) {
  /* Empty Blocksy header rows must not inherit the middle-row height. */
  #header [data-device="mobile"] [data-row]:not([data-row="middle"]),
  .ct-header [data-device="mobile"] [data-row]:not([data-row="middle"]),
  .site-header [data-device="mobile"] [data-row]:not([data-row="middle"]) {
    min-height: 0 !important;
  }

  #header [data-device="mobile"] [data-row]:not([data-row="middle"]) > div,
  .ct-header [data-device="mobile"] [data-row]:not([data-row="middle"]) > div,
  .site-header [data-device="mobile"] [data-row]:not([data-row="middle"]) > div {
    min-height: 0 !important;
  }

  /* No extra outer margin between the header and page shell. */
  body main#main,
  body .site-main {
    margin-top: 0 !important;
  }

  body main#main > :is(.ct-container, .ct-container-full, .ct-container-fluid),
  body .site-main > :is(.ct-container, .ct-container-full, .ct-container-fluid) {
    margin-top: 0 !important;
  }
}

@media (max-width: 700px) {
  /* Homepage and normal pages begin directly below the visible header. */
  body.home main#main,
  body.home .site-main,
  body.page:not(.woocommerce-page) main#main,
  body.page:not(.woocommerce-page) .site-main {
    padding-top: 0 !important;
  }

  body.home main#main > :is(.ct-container, .ct-container-full, .ct-container-fluid),
  body.home .site-main > :is(.ct-container, .ct-container-full, .ct-container-fluid),
  body.page:not(.woocommerce-page) main#main > :is(.ct-container, .ct-container-full, .ct-container-fluid),
  body.page:not(.woocommerce-page) .site-main > :is(.ct-container, .ct-container-full, .ct-container-fluid) {
    padding-top: 0 !important;
  }

  /* Shop: category tabs, toolbar and product grid form one compact flow. */
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .ct-shop-tabs,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .ct-shop-tabs > :is(.ct-container, .ct-container-full, .ct-container-fluid) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main {
    margin: 0 !important;
    padding-top: 0 !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main > :is(.ct-container, .ct-container-full, .ct-container-fluid) {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main .woocommerce {
    margin-top: 0 !important;
    padding-top: 0 !important;
    gap: 0 !important;
  }

  /* Remove legacy generated archive labels/dividers that reserve rows. */
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .ct-shop-tabs > :is(.ct-container, .ct-container-full, .ct-container-fluid)::before,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .ct-shop-tabs > :is(.ct-container, .ct-container-full, .ct-container-fluid)::after,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) main#main > :is(.ct-container, .ct-container-full, .ct-container-fluid)::before,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce::before,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products::before,
  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    clear: none !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) .woocommerce-ordering {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
  }

  body:is(
    .woocommerce-shop,
    .post-type-archive-product,
    .tax-product_cat,
    .tax-product_tag
  ) ul.products {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

