:root {
  --mss-blue: #2557f5;
  --mss-blue-dark: #1744d6;
  --mss-ink: #28263a;
  --mss-muted: #6f7280;
  --mss-line: #e7e9ef;
  --mss-soft: #f7f8fb;
  --mss-white: #ffffff;
  --mss-radius: 14px;
  --mss-shadow: 0 18px 50px rgba(34, 42, 72, 0.12);
}

.macipa-shop-suite,
.macipa-shop-suite button,
.macipa-shop-suite input,
.macipa-shop-suite select,
.macipa-shop-suite textarea {
  -webkit-font-smoothing: antialiased;
}

/* --------------------------------------------------------------------------
   My Account registration B2C/B2B
   -------------------------------------------------------------------------- */
.macipa-shop-suite .mss-registration-type {
  margin: 0 0 22px;
}

.macipa-shop-suite .mss-registration-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.macipa-shop-suite .mss-registration-tab {
  display: flex;
  gap: 11px;
  align-items: center;
  width: 100%;
  min-height: 68px;
  padding: 13px 14px;
  border: 1px solid var(--mss-line);
  border-radius: 11px;
  background: #fff;
  color: var(--mss-ink);
  text-align: left;
  cursor: pointer;
}

.macipa-shop-suite .mss-registration-tab.is-active {
  border-color: var(--mss-blue);
  background: #f4f7ff;
  box-shadow: inset 0 0 0 1px var(--mss-blue);
}

.macipa-shop-suite .mss-registration-tab__icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  flex: 0 0 34px;
  border-radius: 9px;
  background: #eef2ff;
  color: var(--mss-blue);
}

.macipa-shop-suite .mss-registration-tab strong,
.macipa-shop-suite .mss-registration-tab small {
  display: block;
}

.macipa-shop-suite .mss-registration-tab strong {
  font-size: 14px;
  line-height: 1.25;
}

.macipa-shop-suite .mss-registration-tab small {
  margin-top: 3px;
  color: var(--mss-muted);
  font-size: 12px;
  font-weight: 500;
}

.macipa-shop-suite .mss-registration-business-fields[hidden] {
  display: none !important;
}

/* --------------------------------------------------------------------------
   Return form
   -------------------------------------------------------------------------- */
.macipa-shop-suite .mss-return-section {
  max-width: 980px;
  margin: 52px auto 20px;
  padding-top: 8px;
  scroll-margin-top: 110px;
}

.macipa-shop-suite .mss-return-heading {
  margin-bottom: 24px;
}

.macipa-shop-suite .mss-eyebrow {
  display: inline-block;
  margin-bottom: 7px;
  color: var(--mss-blue);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.macipa-shop-suite .mss-return-heading h2 {
  margin: 0 0 8px;
  color: var(--mss-ink);
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.12;
}

.macipa-shop-suite .mss-return-heading p {
  max-width: 700px;
  margin: 0;
  color: var(--mss-muted);
}

.macipa-shop-suite .mss-return-form {
  display: grid;
  gap: 14px;
}

.macipa-shop-suite .mss-form-card {
  padding: 22px;
  border: 1px solid var(--mss-line);
  border-radius: var(--mss-radius);
  background: #fff;
  box-shadow: 0 8px 28px rgba(31, 38, 66, .04);
}

.macipa-shop-suite .mss-form-card__title {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 18px;
}

.macipa-shop-suite .mss-form-card__title > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  flex: 0 0 34px;
  border-radius: 9px;
  background: var(--mss-blue);
  color: #fff;
  font-weight: 850;
}

.macipa-shop-suite .mss-form-card__title strong,
.macipa-shop-suite .mss-form-card__title small {
  display: block;
}

.macipa-shop-suite .mss-form-card__title strong {
  color: var(--mss-ink);
  font-size: 16px;
}

.macipa-shop-suite .mss-form-card__title small {
  margin-top: 2px;
  color: var(--mss-muted);
  font-size: 12px;
}

.macipa-shop-suite .mss-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.macipa-shop-suite .mss-return-form label {
  display: block;
  color: #414052;
  font-size: 13px;
  font-weight: 700;
}

.macipa-shop-suite .mss-return-form label em {
  color: #d43f3a;
  font-style: normal;
}

.macipa-shop-suite .mss-return-form label small {
  color: var(--mss-muted);
  font-weight: 500;
}

.macipa-shop-suite .mss-return-form input[type="text"],
.macipa-shop-suite .mss-return-form input[type="email"],
.macipa-shop-suite .mss-return-form input[type="tel"],
.macipa-shop-suite .mss-return-form input[type="date"],
.macipa-shop-suite .mss-return-form select,
.macipa-shop-suite .mss-return-form textarea {
  width: 100%;
  margin-top: 7px;
  padding: 11px 12px;
  border: 1px solid #dfe2e9;
  border-radius: 9px;
  background: #fff;
  color: var(--mss-ink);
  font: inherit;
  font-weight: 500;
  box-shadow: none;
}

.macipa-shop-suite .mss-return-form input:focus,
.macipa-shop-suite .mss-return-form select:focus,
.macipa-shop-suite .mss-return-form textarea:focus {
  border-color: var(--mss-blue);
  box-shadow: 0 0 0 3px rgba(37, 87, 245, .10);
  outline: 0;
}

.macipa-shop-suite .mss-return-form textarea {
  min-height: 110px;
  resize: vertical;
}

.macipa-shop-suite .mss-form-card > label + label {
  margin-top: 14px;
}

.macipa-shop-suite .mss-form-consent {
  padding: 16px 18px;
  border: 1px solid #dfe2e9;
  border-radius: 11px;
  background: var(--mss-soft);
}

.macipa-shop-suite .mss-form-consent label {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 0;
  font-weight: 550;
  line-height: 1.45;
}

.macipa-shop-suite .mss-form-consent input {
  margin-top: 3px;
}

.macipa-shop-suite .mss-return-submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 24px;
  justify-self: start;
  border: 0;
  border-radius: 10px;
  background: var(--mss-blue);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(37, 87, 245, .20);
}

.macipa-shop-suite .mss-return-submit:hover {
  background: var(--mss-blue-dark);
}

.macipa-shop-suite .mss-return-notice {
  display: grid;
  gap: 2px;
  margin-bottom: 16px;
  padding: 15px 17px;
  border-radius: 10px;
}

.macipa-shop-suite .mss-return-notice.is-success {
  border: 1px solid #a7dfba;
  background: #effbf3;
  color: #185f31;
}

.macipa-shop-suite .mss-return-notice.is-error {
  border: 1px solid #f0b7b7;
  background: #fff3f3;
  color: #8f2929;
}

.macipa-shop-suite .mss-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

/* --------------------------------------------------------------------------
   Footer withdrawal CTA
   -------------------------------------------------------------------------- */
.macipa-shop-suite .mss-footer-withdrawal-wrap {
  width: 100%;
  padding: 15px 24px 20px;
  background: #2b293b;
}

.macipa-shop-suite .mss-footer-withdrawal-wrap[hidden] {
  display: none !important;
}

.macipa-shop-suite .mss-footer-withdrawal {
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(1180px, 100%);
  margin: 0 auto;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 11px;
  background: rgba(255,255,255,.055);
  color: #fff !important;
  text-decoration: none !important;
  transition: border-color .15s ease, background .15s ease;
}

.macipa-shop-suite .mss-footer-withdrawal:hover {
  border-color: rgba(255,255,255,.25);
  background: rgba(255,255,255,.09);
}

.macipa-shop-suite .mss-footer-withdrawal__icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  flex: 0 0 36px;
  border-radius: 9px;
  background: var(--mss-blue);
  font-size: 18px;
}

.macipa-shop-suite .mss-footer-withdrawal strong,
.macipa-shop-suite .mss-footer-withdrawal small {
  display: block;
}

.macipa-shop-suite .mss-footer-withdrawal strong {
  font-size: 14px;
}

.macipa-shop-suite .mss-footer-withdrawal small {
  margin-top: 1px;
  color: rgba(255,255,255,.64);
  font-size: 12px;
}

.macipa-shop-suite .mss-footer-withdrawal__arrow {
  margin-left: auto;
  font-size: 20px;
}


/* --------------------------------------------------------------------------
   Header / Kadence
   -------------------------------------------------------------------------- */
.macipa-shop-suite .mss-header,
.macipa-shop-suite #masthead,
.macipa-shop-suite .site-header {
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid var(--mss-line);
  box-shadow: 0 6px 24px rgba(27, 34, 58, 0.055);
  position: relative;
  z-index: 120;
}

.macipa-shop-suite .site-main-header-wrap .site-header-row-container-inner,
.macipa-shop-suite .site-main-header-inner-wrap,
.macipa-shop-suite .site-header-row-container-inner {
  min-height: 78px;
}

.macipa-shop-suite .site-branding img,
.macipa-shop-suite .custom-logo-link img {
  max-height: 52px;
  width: auto;
}

.macipa-shop-suite .header-navigation .header-menu-container > ul > li > a,
.macipa-shop-suite .primary-menu-container > ul > li > a,
.macipa-shop-suite #primary-menu > li > a {
  color: var(--mss-ink);
  font-weight: 650;
  letter-spacing: .02em;
  padding-inline: 15px;
  transition: color .18s ease;
}

.macipa-shop-suite .header-navigation .header-menu-container > ul > li > a:hover,
.macipa-shop-suite .header-navigation .header-menu-container > ul > li.current-menu-item > a,
.macipa-shop-suite .primary-menu-container > ul > li > a:hover,
.macipa-shop-suite .mss-products-root > a {
  color: var(--mss-blue);
}

.macipa-shop-suite .mss-products-root > a {
  position: relative;
}

.macipa-shop-suite .mss-products-root > a::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 0;
  height: 2px;
  border-radius: 2px;
  background: var(--mss-blue);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .18s ease;
}

.macipa-shop-suite .mss-products-root:hover > a::after,
.macipa-shop-suite .mss-products-root.current-menu-item > a::after {
  transform: scaleX(1);
}

.macipa-shop-suite .header-search-bar form,
.macipa-shop-suite .header-search-bar .search-form,
.macipa-shop-suite .site-header .search-form,
.macipa-shop-suite .site-header .dgwt-wcas-search-wrapp {
  border-radius: 10px;
}

.macipa-shop-suite .site-header input[type="search"],
.macipa-shop-suite .site-header .dgwt-wcas-search-input {
  min-height: 44px;
  border: 1px solid #dfe2e9 !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}

.macipa-shop-suite .site-header button[type="submit"],
.macipa-shop-suite .site-header .search-submit,
.macipa-shop-suite .site-header .dgwt-wcas-search-submit {
  border-radius: 0 10px 10px 0 !important;
  background: var(--mss-blue) !important;
  color: #fff !important;
}

/* Mega menu: retain existing Kadence structure, modernize its presentation. */
@media (min-width: 1025px) {
  .macipa-shop-suite .mss-products-root {
    position: static !important;
  }

  .macipa-shop-suite .mss-products-root > .mss-products-mega {
    width: min(1180px, calc(100vw - 48px)) !important;
    max-width: 1180px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) translateY(8px) !important;
    padding: 28px 30px 30px !important;
    border: 1px solid rgba(37, 87, 245, .10) !important;
    border-radius: 0 0 18px 18px !important;
    background: #fff !important;
    box-shadow: var(--mss-shadow) !important;
    gap: 28px 44px !important;
    overflow: visible !important;
  }

  .macipa-shop-suite .mss-products-root:hover > .mss-products-mega,
  .macipa-shop-suite .mss-products-root.focus > .mss-products-mega,
  .macipa-shop-suite .mss-products-root > .mss-products-mega:hover {
    transform: translateX(-50%) translateY(0) !important;
  }

  .macipa-shop-suite .mss-products-mega > li {
    min-width: 0;
  }

  .macipa-shop-suite .mss-products-mega > li > a,
  .macipa-shop-suite .mss-products-mega .menu-item-has-children > a,
  .macipa-shop-suite .mss-products-mega .kt-nav-label {
    color: var(--mss-blue) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin-bottom: 9px !important;
  }

  .macipa-shop-suite .mss-products-mega li a {
    border-radius: 7px;
    color: #3d3b4e !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    padding: 5px 8px !important;
    transition: background .15s ease, color .15s ease, transform .15s ease;
  }

  .macipa-shop-suite .mss-products-mega li a:hover {
    background: #f2f5ff !important;
    color: var(--mss-blue) !important;
    transform: translateX(2px);
  }

  .macipa-shop-suite .mss-products-mega .sub-menu {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .macipa-shop-suite .mss-products-mega > li:nth-child(n+2) > .sub-menu,
  .macipa-shop-suite .mss-products-mega > li:nth-child(n+2) > ul {
    columns: 2 190px;
    column-gap: 28px;
  }

  .macipa-shop-suite .mss-products-mega > li:nth-child(n+2) li {
    break-inside: avoid;
  }
}


/* v1.3: Scope cart exclusively; no global Woo/ Kadence layout overrides. */
body.macipa-shop-suite.woocommerce-cart #primary,
body.macipa-shop-suite.woocommerce-checkout #primary {
  width:100%; max-width:1380px; margin-inline:auto;
}
body.macipa-shop-suite.woocommerce-cart .entry-content,
body.macipa-shop-suite.woocommerce-checkout .entry-content {max-width:none;width:100%;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout {
  display:grid; grid-template-columns:minmax(0, 1fr) minmax(340px, 370px);
  gap:clamp(18px,2vw,30px);align-items:start; width:100%;
}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout > * {min-width:0;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout > .woocommerce-cart-form {
  width:100%;margin:0;padding:22px;background:#fff;border:1px solid #e2e6ed;border-radius:12px;
}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout > .cart-collaterals {width:100%;margin:0;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .cart_totals {
  float:none;width:100%;margin:0;padding:22px;background:#fff;border:1px solid #e2e6ed;border-radius:12px;
}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .cart_totals h2 {font-size:24px;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .woocommerce-cart-form table {
  width:100%;max-width:100%;table-layout:auto;border-collapse:collapse;
}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table th,
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table td {
  padding:12px 9px;vertical-align:middle;overflow-wrap:anywhere;
}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table .product-name {min-width:180px;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .product-thumbnail img {width:64px;max-width:64px;height:auto;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .cart_totals table {width:100%;table-layout:auto;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .checkout-button {display:block;width:100%;white-space:normal;line-height:1.4;text-align:center;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .quantity {max-width:125px;}
/* Classic checkout: standalone containers, payment summary must never be squeezed. */
body.macipa-shop-suite.woocommerce-checkout form.checkout.woocommerce-checkout {
 display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,.85fr);gap:18px 26px;align-items:start;
 max-width:1320px;width:100%;margin-inline:auto;
}
body.macipa-shop-suite.woocommerce-checkout form.checkout > .col2-set {grid-column:1;grid-row:1/span 3;width:100%!important;float:none!important;min-width:0;}
body.macipa-shop-suite.woocommerce-checkout form.checkout > #order_review_heading {grid-column:2;grid-row:1;width:100%!important;float:none!important;margin:0;}
body.macipa-shop-suite.woocommerce-checkout form.checkout > #order_review {grid-column:2;grid-row:2;width:100%!important;float:none!important;margin:0;min-width:0;padding:22px;border:1px solid #e4e7ed;border-radius:12px;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-checkout form.checkout #payment {width:100%;float:none;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-checkout form.checkout #payment .payment_methods li {float:none;max-width:100%;}
body.macipa-shop-suite.woocommerce-checkout form.checkout #payment .payment_box {width:100%;max-width:100%;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-checkout form.checkout .woocommerce-billing-fields,
body.macipa-shop-suite.woocommerce-checkout form.checkout .woocommerce-shipping-fields,
body.macipa-shop-suite.woocommerce-checkout form.checkout .woocommerce-additional-fields {padding:20px;border:1px solid #e4e7ed;border-radius:12px;margin-bottom:16px;box-sizing:border-box;}
body.macipa-shop-suite.woocommerce-checkout .mss-contact-fields,
body.macipa-shop-suite.woocommerce-checkout .mss-classic-business-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;clear:both;}
body.macipa-shop-suite.woocommerce-checkout .mss-contact-fields h3 {grid-column:1/-1;}
body.macipa-shop-suite.woocommerce-checkout .mss-contact-fields .form-row,
body.macipa-shop-suite.woocommerce-checkout .mss-classic-business-fields .form-row {float:none;width:100%;margin:0;}
body.macipa-shop-suite.woocommerce-checkout .mss-same-billing-label {display:flex;gap:10px;align-items:center;margin:10px 0;padding:12px;background:#f7f8fa;border-radius:8px;}
body.macipa-shop-suite.woocommerce-checkout #order_review table {width:100%;table-layout:auto;}
body.macipa-shop-suite.woocommerce-checkout #order_review * {overflow-wrap:break-word;}
/* Footer CTA: separate full-width row immediately before ORIGINAL badge row. */
body.macipa-shop-suite .mss-footer-withdrawal-wrap {width:100%;max-width:1200px;margin:0 auto 12px;padding:0 12px;background:transparent;box-sizing:border-box;}
body.macipa-shop-suite .mss-footer-withdrawal-wrap[hidden] {display:none!important;}
body.macipa-shop-suite .mss-footer-withdrawal {width:fit-content;max-width:100%;margin:0;padding:9px 14px;gap:10px;min-width:250px;box-sizing:border-box;}
body.macipa-shop-suite .mss-footer-withdrawal strong {font-size:13px;line-height:1.3;}
body.macipa-shop-suite .mss-footer-withdrawal small {font-size:11px;line-height:1.4;}
@media(max-width:1100px) {
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout {grid-template-columns:minmax(0,1fr) 320px;}
 body.macipa-shop-suite.woocommerce-checkout form.checkout.woocommerce-checkout {grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);}
}
@media(max-width:900px) {
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout,
 body.macipa-shop-suite.woocommerce-checkout form.checkout.woocommerce-checkout {display:grid;grid-template-columns:minmax(0,1fr);gap:16px;}
 body.macipa-shop-suite.woocommerce-checkout form.checkout > .col2-set,
 body.macipa-shop-suite.woocommerce-checkout form.checkout > #order_review_heading,
 body.macipa-shop-suite.woocommerce-checkout form.checkout > #order_review {grid-column:1;grid-row:auto;}
}
@media(max-width:650px) {
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout > .woocommerce-cart-form,
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .cart_totals,
 body.macipa-shop-suite.woocommerce-checkout form.checkout > #order_review {padding:14px;}
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table .product-thumbnail {display:none;}
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table .product-name {min-width:0;}
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table th,
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout table.shop_table td {padding:8px 4px;font-size:13px;}
 body.macipa-shop-suite.woocommerce-cart .mss-cart-layout .quantity {max-width:85px;}
 body.macipa-shop-suite.woocommerce-checkout .mss-contact-fields,
 body.macipa-shop-suite.woocommerce-checkout .mss-classic-business-fields {grid-template-columns:1fr;}
}
