.woocommerce ul.products {
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 28px 0 0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
  display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  float: none;
  margin: 0;
  padding: 0;
  width: auto;
}

.woocommerce ul.products li.product .sm-product-card {
  height: 100%;
}

.woocommerce .star-rating {
  color: #f59e0b;
  float: none;
  margin: 0;
}

.woocommerce span.onsale {
  background: var(--sm-color-secondary);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  left: 18px;
  line-height: 1;
  min-height: 0;
  padding: 9px 12px;
  top: 18px;
}

.woocommerce div.product form.cart .variations {
  margin-bottom: 22px;
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
  display: block;
  text-align: left;
  width: 100%;
}

.woocommerce div.product form.cart .variations label {
  color: var(--sm-color-primary);
  font-size: 13px;
  font-weight: 800;
}

.woocommerce div.product form.cart .variations select {
  background: #f7f9fb;
  border: 1px solid rgba(116, 119, 127, .35);
  border-radius: 14px;
  min-height: 50px;
  padding: 10px 14px;
  width: 100%;
}

.woocommerce .quantity .qty {
  border: 1px solid rgba(116, 119, 127, .35);
  border-radius: 14px;
  min-height: 48px;
  width: 72px;
}

.woocommerce div.product div.summary {
  margin-bottom: 0;
}

.woocommerce div.product .woocommerce-tabs {
  padding-top: 40px;
}

.woocommerce div.product .woocommerce-tabs .panel {
  color: var(--sm-color-muted);
  line-height: 1.75;
  padding: 24px 4px;
}

.woocommerce .related.products,
.woocommerce .upsells.products {
  margin-top: 72px;
}

.woocommerce .related.products > h2,
.woocommerce .upsells.products > h2,
.woocommerce .cart_totals h2,
.woocommerce-checkout h3,
.woocommerce-account h2 {
  color: var(--sm-color-primary);
  font-family: Montserrat, sans-serif;
  font-weight: 900;
}

.woocommerce-cart table.cart img {
  border-radius: 12px;
  width: 82px;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
  border: 1px solid rgba(116, 119, 127, .35);
  border-radius: 12px;
  min-height: 46px;
  padding: 10px 14px;
  width: 180px;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
  box-sizing: border-box;
}

@media (min-width: 992px) {
  .woocommerce-checkout form.checkout {
    display: grid;
    gap: 40px;
    grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr);
  }

  .woocommerce-checkout form.checkout > .woocommerce-NoticeGroup,
  .woocommerce-checkout form.checkout > .woocommerce-error {
    grid-column: 1 / -1;
  }

  .woocommerce-checkout form.checkout .col2-set {
    grid-column: 1;
    grid-row: 2 / span 2;
    width: 100%;
  }

  .woocommerce-checkout form.checkout #order_review_heading {
    grid-column: 2;
    grid-row: 2;
    margin: 0 0 12px;
    width: 100%;
  }

  .woocommerce-checkout form.checkout #order_review {
    grid-column: 2;
    grid-row: 3;
    width: 100%;
  }
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  border-radius: 12px;
  color: var(--sm-color-primary);
  display: block;
  font-weight: 700;
  margin-bottom: 5px;
  padding: 12px 14px;
  text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: var(--sm-color-mint);
}

@media (max-width: 991px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .woocommerce ul.products {
    grid-template-columns: 1fr;
  }

  .woocommerce-cart table.cart td.actions .coupon {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
  }

  .woocommerce-cart table.cart td.actions .coupon .input-text {
    width: 100%;
  }
}


/* Checkout clarity and post-payment continuation. */
.woocommerce-terms-and-conditions-wrapper{background:#f2f8f7;border:1px solid rgba(0,106,102,.22);border-radius:16px;margin:18px 0;padding:16px}
.woocommerce form .form-row .woocommerce-form__label-for-checkbox{align-items:flex-start;color:var(--sm-color-primary);cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:11px;line-height:1.45}
.woocommerce form .form-row .woocommerce-form__label-for-checkbox input[type=checkbox],
.woocommerce-cart input[type=checkbox]{accent-color:var(--sm-color-secondary);appearance:auto!important;flex:0 0 22px;height:22px;margin:0!important;opacity:1!important;position:static!important;width:22px}
.woocommerce-order-received .woocommerce-order{background:#fff;border:1px solid rgba(3,36,72,.1);border-radius:28px;box-shadow:0 18px 55px rgba(3,36,72,.08);padding:clamp(22px,5vw,48px)}
.woocommerce-thankyou-order-received{background:#e7f7ef;border-radius:16px;color:#17633a;font-size:clamp(18px,3vw,24px);font-weight:900;padding:20px;text-align:center}
.woocommerce-order-overview{background:#f7f9fb;border-radius:16px;padding:18px!important}
.sm-order-next{align-items:flex-start;background:linear-gradient(135deg,#032448,#006a66);border-radius:24px;color:#fff;display:flex;gap:20px;margin-top:32px;padding:clamp(22px,4vw,34px)}
.sm-order-next>.material-symbols-outlined{color:#6bf8f1;font-size:42px}.sm-order-next h2{color:#fff;font-size:clamp(20px,3vw,28px);font-weight:900;margin:0 0 8px}.sm-order-next p{opacity:.82}.sm-order-next__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.sm-order-next__actions .button{background:#fff!important;color:#032448!important}.sm-order-next__actions .button.alt{background:#6bf8f1!important}
@media(max-width:560px){
 .woocommerce .related.products ul.products,.woocommerce .upsells.products ul.products{display:flex;gap:14px;margin-left:-20px;margin-right:-20px;overflow-x:auto;padding:4px 20px 22px;scroll-snap-type:x mandatory;scrollbar-width:none}
 .woocommerce .related.products ul.products li.product,.woocommerce .upsells.products ul.products li.product{flex:0 0 min(66vw,240px);scroll-snap-align:start}
 .woocommerce .related.products .sm-product-card__media,.woocommerce .upsells.products .sm-product-card__media{aspect-ratio:4/3!important}
 .woocommerce .related.products .sm-product-card__body,.woocommerce .upsells.products .sm-product-card__body{padding:13px}
 .woocommerce .related.products .sm-product-card__title,.woocommerce .upsells.products .sm-product-card__title{font-size:13px;line-height:1.35;min-height:36px}
 .woocommerce .related.products .sm-product-card__price,.woocommerce .upsells.products .sm-product-card__price{font-size:15px}
 .sm-order-next{flex-direction:column}.sm-order-next__actions{display:grid;width:100%}.sm-order-next__actions .button{text-align:center}
}
/* WooCommerce Blocks terms control. */
.wc-block-checkout__terms,.wc-block-components-checkbox{color:var(--sm-color-primary)}
.wc-block-checkout__terms{background:#f2f8f7;border:1px solid rgba(0,106,102,.22);border-radius:16px;padding:16px}
.wc-block-components-checkbox .wc-block-components-checkbox__input{accent-color:var(--sm-color-secondary);border:2px solid var(--sm-color-secondary)!important;border-radius:5px!important;height:22px!important;opacity:1!important;width:22px!important}
.wc-block-components-checkbox .wc-block-components-checkbox__label{font-size:14px;font-weight:700;line-height:1.45}
/* Final mobile touch targets across WooCommerce and editorial cards. */
@media(max-width:767px){
 #primary nav[aria-label="Migas de pan"] a{align-items:center;display:inline-flex;min-height:44px;min-width:44px}
 #primary article a[rel~="category"],#primary article a.font-bold.text-primary{align-items:center;display:inline-flex;min-height:44px}
 .woocommerce-breadcrumb a{align-items:center;display:inline-flex;min-height:44px;min-width:44px}
 nav.woocommerce-pagination a,nav.woocommerce-pagination span{align-items:center;display:inline-flex;justify-content:center;min-height:44px;min-width:44px!important}
 .single-product .product_meta a{align-items:center;display:inline-flex;min-height:44px}
}