/**
 * Presets estructurales del Diseñador de plantillas.
 */
.sytec-template-header {
  position: relative;
  display: grid;
  min-height: var(--sytec-page-header-height);
  padding-block: var(--sytec-page-header-padding);
  place-items: center;
  overflow: hidden;
  color: var(--sytec-page-header-text);
  background-color: var(--sytec-page-header-bg);
  background-image: var(--sytec-page-header-image, none);
  background-position: center;
  background-repeat: no-repeat;
  isolation: isolate;
}

.sytec-template-header--position-top {
  background-position: top;
}

.sytec-template-header--position-bottom {
  background-position: bottom;
}

.sytec-template-header--position-left {
  background-position: left;
}

.sytec-template-header--position-right {
  background-position: right;
}

.sytec-template-header--size-cover {
  background-size: cover;
}

.sytec-template-header--size-contain {
  background-size: contain;
}

.sytec-template-header__overlay {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: var(--sytec-page-header-overlay);
  opacity: var(--sytec-page-header-opacity);
}

.sytec-template-header--color .sytec-template-header__overlay {
  display: none;
}

.sytec-template-header__inner {
  width: 100%;
  padding-inline: clamp(20px, 5vw, 72px);
}

.sytec-template-header--align-left .sytec-template-header__inner {
  text-align: left;
}

.sytec-template-header--align-center .sytec-template-header__inner {
  text-align: center;
}

.sytec-template-header--align-right .sytec-template-header__inner {
  text-align: right;
}

.sytec-template-header h1 {
  max-width: 22ch;
  margin: 0;
  color: var(--sytec-page-header-title);
  font-size: clamp(2rem, 5vw, 4.5rem);
  line-height: 1.05;
}

.sytec-template-header-below {
  padding: clamp(24px, 4vw, 56px) 0;
  color: var(--sytec-page-header-text);
  background: var(--sytec-color-background);
}

.sytec-template-header-below__full {
  padding-inline: clamp(20px, 5vw, 72px);
}

.sytec-template-header-below h1 {
  margin: 0;
  color: var(--sytec-page-header-title);
}

.sytec-template-header-below--align-center {
  text-align: center;
}

.sytec-template-header-below--align-right {
  text-align: right;
}

.sytec-template-header--align-center h1 {
  margin-inline: auto;
}

.sytec-template-header--align-right h1 {
  margin-left: auto;
}

.sytec-template-header p,
.sytec-template-header__description {
  max-width: 70ch;
  margin: 1rem 0 0;
}

.sytec-template-header--align-center p,
.sytec-template-header--align-center .sytec-template-header__description {
  margin-inline: auto;
}

.sytec-template-header--align-right p,
.sytec-template-header--align-right .sytec-template-header__description {
  margin-left: auto;
}

.sytec-page-breadcrumbs {
  display: flex;
  margin-bottom: 1rem;
  gap: 0.55rem;
  flex-wrap: wrap;
  justify-content: inherit;
  font-size: 0.875rem;
}

.sytec-page-breadcrumbs,
.sytec-page-breadcrumbs a {
  color: inherit;
}

body,
.sytec-site {
  background-color: var(--sytec-body-background, transparent);
  background-image: var(--sytec-body-background-image, none);
  background-position: var(--sytec-body-background-position, center);
  background-size: var(--sytec-body-background-size, cover);
  background-repeat: var(--sytec-body-background-repeat, no-repeat);
  color: var(--sytec-body-text-color, #111827);
  text-align: var(--sytec-body-text-align, left);
}

body,
.sytec-page-main {
  color: var(--sytec-body-color);
  font-family: var(--sytec-body-font-family);
  font-size: var(--sytec-body-size-desktop);
  font-style: var(--sytec-body-style);
  font-weight: var(--sytec-body-weight);
  line-height: var(--sytec-body-line-height);
  letter-spacing: var(--sytec-body-letter-spacing);
  text-align: var(--sytec-body-alignment);
  text-transform: var(--sytec-body-text-transform);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description)) {
  margin-top: var(--sytec-paragraph-margin-top);
  margin-bottom: var(--sytec-paragraph-margin-bottom);
  font-style: var(--sytec-paragraph-style);
  font-weight: var(--sytec-paragraph-weight);
  line-height: var(--sytec-paragraph-line-height);
  letter-spacing: var(--sytec-paragraph-letter-spacing);
  text-transform: var(--sytec-paragraph-text-transform);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-paragraph-color);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-paragraph-font-family);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-paragraph-size-desktop);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-paragraph-alignment);
}

.sytec-page-main a:not(.wp-block-sytec-button):not(.sytec-card-button):not(.wp-block-button__link) {
  margin-top: var(--sytec-link-margin-top);
  margin-bottom: var(--sytec-link-margin-bottom);
  color: var(--sytec-link-color);
  font-family: var(--sytec-link-font-family);
  font-size: var(--sytec-link-size-desktop);
  font-style: var(--sytec-link-style);
  font-weight: var(--sytec-link-weight);
  line-height: var(--sytec-link-line-height);
  letter-spacing: var(--sytec-link-letter-spacing);
  text-align: var(--sytec-link-alignment);
  text-decoration: var(--sytec-link-decoration);
  text-transform: var(--sytec-link-text-transform);
}

.sytec-page-main a:not(.wp-block-sytec-button):not(.sytec-card-button):not(.wp-block-button__link):hover {
  color: var(--sytec-link-hover-color);
  text-decoration: var(--sytec-link-hover-decoration);
}

:is(body, .sytec-page-main) h1 {
  --sytec-heading-token: h1;
}

:is(body, .sytec-page-main) h2 {
  --sytec-heading-token: h2;
}

:is(body, .sytec-page-main) h3 {
  --sytec-heading-token: h3;
}

:is(body, .sytec-page-main) h4 {
  --sytec-heading-token: h4;
}

:is(body, .sytec-page-main) h5 {
  --sytec-heading-token: h5;
}

:is(body, .sytec-page-main) h6 {
  --sytec-heading-token: h6;
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title)) {
  margin-top: var(--sytec-h1-margin-top);
  margin-bottom: var(--sytec-h1-margin-bottom);
  font-style: var(--sytec-h1-style);
  font-weight: var(--sytec-h1-weight);
  line-height: var(--sytec-h1-line-height);
  letter-spacing: var(--sytec-h1-letter-spacing);
  text-transform: var(--sytec-h1-text-transform);
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h1-color);
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h1-font-family);
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h1-size-desktop);
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h1-alignment);
}

.sytec-page-main .woocommerce div.product .product_title,
.sytec-page-main .woocommerce div.product .sytec-product-summary .product_title {
  margin-top: var(--sytec-h1-margin-top);
  margin-bottom: var(--sytec-h1-margin-bottom);
  color: var(--sytec-h1-color);
  font-family: var(--sytec-h1-font-family);
  font-size: var(--sytec-h1-size-desktop);
  font-style: var(--sytec-h1-style);
  font-weight: var(--sytec-h1-weight);
  line-height: var(--sytec-h1-line-height);
  letter-spacing: var(--sytec-h1-letter-spacing);
  text-align: var(--sytec-h1-alignment);
  text-transform: var(--sytec-h1-text-transform);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title)) {
  margin-top: var(--sytec-h2-margin-top);
  margin-bottom: var(--sytec-h2-margin-bottom);
  font-style: var(--sytec-h2-style);
  font-weight: var(--sytec-h2-weight);
  line-height: var(--sytec-h2-line-height);
  letter-spacing: var(--sytec-h2-letter-spacing);
  text-transform: var(--sytec-h2-text-transform);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h2-color);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h2-font-family);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h2-size-desktop);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h2-alignment);
}

/* H2 de componentes específicos del tema/WooCommerce.
 * Conservan el comportamiento actual.
 */
.sytec-page-main .woocommerce-tabs h2,
.sytec-page-main .cart_totals h2,
.sytec-page-main .woocommerce-MyAccount-content h2,
.sytec-page-main .sytec-product-section > h2 {
  margin-top: var(--sytec-h2-margin-top);
  margin-bottom: var(--sytec-h2-margin-bottom);
  color: var(--sytec-h2-color);
  font-family: var(--sytec-h2-font-family);
  font-size: var(--sytec-h2-size-desktop);
  font-style: var(--sytec-h2-style);
  font-weight: var(--sytec-h2-weight);
  line-height: var(--sytec-h2-line-height);
  letter-spacing: var(--sytec-h2-letter-spacing);
  text-align: var(--sytec-h2-alignment);
  text-transform: var(--sytec-h2-text-transform);
}

:where(body, .sytec-page-main) h3 {
  margin-top: var(--sytec-h3-margin-top);
  margin-bottom: var(--sytec-h3-margin-bottom);
  font-style: var(--sytec-h3-style);
  font-weight: var(--sytec-h3-weight);
  line-height: var(--sytec-h3-line-height);
  letter-spacing: var(--sytec-h3-letter-spacing);
  text-transform: var(--sytec-h3-text-transform);
}

:where(body, .sytec-page-main) h3:where(:not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h3-color);
}

:where(body, .sytec-page-main) h3:where(:not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h3-font-family);
}

:where(body, .sytec-page-main) h3:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h3-size-desktop);
}

:where(body, .sytec-page-main) h3:where(:not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h3-alignment);
}

.sytec-page-main .woocommerce-loop-product__title,
.sytec-page-main .woocommerce-checkout h3,
.sytec-page-main .woocommerce ul.products li.product .woocommerce-loop-product__title {
  margin-top: var(--sytec-h3-margin-top);
  margin-bottom: var(--sytec-h3-margin-bottom);
  color: var(--sytec-h3-color);
  font-family: var(--sytec-h3-font-family);
  font-size: var(--sytec-h3-size-desktop);
  font-style: var(--sytec-h3-style);
  font-weight: var(--sytec-h3-weight);
  line-height: var(--sytec-h3-line-height);
  letter-spacing: var(--sytec-h3-letter-spacing);
  text-align: var(--sytec-h3-alignment);
  text-transform: var(--sytec-h3-text-transform);
}

:where(body, .sytec-page-main) h4 {
  margin-top: var(--sytec-h4-margin-top);
  margin-bottom: var(--sytec-h4-margin-bottom);
  font-style: var(--sytec-h4-style);
  font-weight: var(--sytec-h4-weight);
  line-height: var(--sytec-h4-line-height);
  letter-spacing: var(--sytec-h4-letter-spacing);
  text-transform: var(--sytec-h4-text-transform);
}

:where(body, .sytec-page-main) h4:where(:not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h4-color);
}

:where(body, .sytec-page-main) h4:where(:not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h4-font-family);
}

:where(body, .sytec-page-main) h4:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h4-size-desktop);
}

:where(body, .sytec-page-main) h4:where(:not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h4-alignment);
}

:where(body, .sytec-page-main) h5 {
  margin-top: var(--sytec-h5-margin-top);
  margin-bottom: var(--sytec-h5-margin-bottom);
  font-style: var(--sytec-h5-style);
  font-weight: var(--sytec-h5-weight);
  line-height: var(--sytec-h5-line-height);
  letter-spacing: var(--sytec-h5-letter-spacing);
  text-transform: var(--sytec-h5-text-transform);
}

:where(body, .sytec-page-main) h5:where(:not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h5-color);
}

:where(body, .sytec-page-main) h5:where(:not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h5-font-family);
}

:where(body, .sytec-page-main) h5:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h5-size-desktop);
}

:where(body, .sytec-page-main) h5:where(:not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h5-alignment);
}

:where(body, .sytec-page-main) h6 {
  margin-top: var(--sytec-h6-margin-top);
  margin-bottom: var(--sytec-h6-margin-bottom);
  font-style: var(--sytec-h6-style);
  font-weight: var(--sytec-h6-weight);
  line-height: var(--sytec-h6-line-height);
  letter-spacing: var(--sytec-h6-letter-spacing);
  text-transform: var(--sytec-h6-text-transform);
}

:where(body, .sytec-page-main) h6:where(:not(.has-text-color):not([class*="sytec-"])) {
  color: var(--sytec-h6-color);
}

:where(body, .sytec-page-main) h6:where(:not([class*="has-"][class*="-font-family"])) {
  font-family: var(--sytec-h6-font-family);
}

:where(body, .sytec-page-main) h6:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
  font-size: var(--sytec-h6-size-desktop);
}

:where(body, .sytec-page-main) h6:where(:not(.has-text-align-left):not(.has-text-align-center):not(.has-text-align-right)) {
  text-align: var(--sytec-h6-alignment);
}

:is(body, .sytec-page-main) :is(ul, ol):not(.sytec-menu):not(.sytec-footer-menu) {
  margin-top: var(--sytec-list-margin-top);
  margin-bottom: var(--sytec-list-margin-bottom);
  color: var(--sytec-list-color);
  font-family: var(--sytec-list-font-family);
  font-size: var(--sytec-list-size-desktop);
  font-style: var(--sytec-list-style);
  font-weight: var(--sytec-list-weight);
  line-height: var(--sytec-list-line-height);
  letter-spacing: var(--sytec-list-letter-spacing);
  text-align: var(--sytec-list-alignment);
  text-transform: var(--sytec-list-text-transform);
}

:is(body, .sytec-page-main) small {
  margin-top: var(--sytec-small-margin-top);
  margin-bottom: var(--sytec-small-margin-bottom);
  color: var(--sytec-small-color);
  font-family: var(--sytec-small-font-family);
  font-size: var(--sytec-small-size-desktop);
  font-style: var(--sytec-small-style);
  font-weight: var(--sytec-small-weight);
  line-height: var(--sytec-small-line-height);
  letter-spacing: var(--sytec-small-letter-spacing);
  text-align: var(--sytec-small-alignment);
  text-transform: var(--sytec-small-text-transform);
}

:is(body, .sytec-page-main) blockquote {
  margin-top: var(--sytec-blockquote-margin-top);
  margin-bottom: var(--sytec-blockquote-margin-bottom);
  color: var(--sytec-blockquote-color);
  font-family: var(--sytec-blockquote-font-family);
  font-size: var(--sytec-blockquote-size-desktop);
  font-style: var(--sytec-blockquote-style);
  font-weight: var(--sytec-blockquote-weight);
  line-height: var(--sytec-blockquote-line-height);
  letter-spacing: var(--sytec-blockquote-letter-spacing);
  text-align: var(--sytec-blockquote-alignment);
  text-transform: var(--sytec-blockquote-text-transform);
}

:is(body, .sytec-page-main) label,
.sytec-page-main .woocommerce label {
  margin-top: var(--sytec-label-margin-top);
  margin-bottom: var(--sytec-label-margin-bottom);
  color: var(--sytec-label-color);
  font-family: var(--sytec-label-font-family);
  font-size: var(--sytec-label-size-desktop);
  font-style: var(--sytec-label-style);
  font-weight: var(--sytec-label-weight);
  line-height: var(--sytec-label-line-height);
  letter-spacing: var(--sytec-label-letter-spacing);
  text-align: var(--sytec-label-alignment);
  text-transform: var(--sytec-label-text-transform);
}

.sytec-page-main .woocommerce :is(.price, p.price, span.price),
.sytec-page-main .woocommerce ul.products li.product .price,
.sytec-page-main .woocommerce div.product .sytec-product-purchase-card :is(p.price, span.price) {
  color: var(--sytec-body-color);
  font-family: var(--sytec-body-font-family);
  font-size: var(--sytec-body-size-desktop);
  font-style: var(--sytec-body-style);
  font-weight: 700;
  line-height: var(--sytec-body-line-height);
  letter-spacing: var(--sytec-body-letter-spacing);
}

.sytec-page-main {
  width: 100%;
  min-width: 0;
  background: transparent;
  color: inherit;
  text-align: inherit;
}

@media (max-width: 1024px) {
body,
.sytec-page-main {
	font-size: var(--sytec-body-size-tablet);
}


/* ---------------------------------------------------------
 * PÁRRAFOS
 * El theme actúa como fallback.
 * Gutenberg mantiene prioridad cuando define font-size.
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-paragraph-size-tablet);
}


/* ---------------------------------------------------------
 * ENLACES
 * Se conserva el comportamiento actual del theme.
 * --------------------------------------------------------- */

.sytec-page-main a:not(.wp-block-sytec-button):not(.sytec-card-button):not(.wp-block-button__link) {
	font-size: var(--sytec-link-size-tablet);
}


/* ---------------------------------------------------------
 * H1 — contenido Gutenberg/general
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h1-size-tablet);
}


/* H1 específicos de WooCommerce */
.sytec-page-main .woocommerce div.product .product_title,
.sytec-page-main .woocommerce div.product .sytec-product-summary .product_title {
	font-size: var(--sytec-h1-size-tablet);
}


/* ---------------------------------------------------------
 * H2 — contenido Gutenberg/general
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h2-size-tablet);
}


/* H2 específicos del theme / WooCommerce */
.sytec-page-main :is(
	.woocommerce-tabs,
	.cart_totals,
	.woocommerce-MyAccount-content
) h2,
.sytec-page-main .sytec-product-section > h2 {
	font-size: var(--sytec-h2-size-tablet);
}


/* ---------------------------------------------------------
 * H3 — contenido Gutenberg/general
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h3:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h3-size-tablet);
}


/* H3 específicos de WooCommerce */
.sytec-page-main :is(
	.woocommerce-loop-product__title,
	.woocommerce-checkout h3
),
.sytec-page-main
.woocommerce
ul.products
li.product
.woocommerce-loop-product__title {
	font-size: var(--sytec-h3-size-tablet);
}


/* ---------------------------------------------------------
 * H4
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h4:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h4-size-tablet);
}


/* ---------------------------------------------------------
 * H5
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h5:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h5-size-tablet);
}


/* ---------------------------------------------------------
 * H6
 * --------------------------------------------------------- */

:where(body, .sytec-page-main) h6:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h6-size-tablet);
}


/* ---------------------------------------------------------
 * LISTAS
 * Se conserva comportamiento actual.
 * --------------------------------------------------------- */

:is(body, .sytec-page-main)
:is(ul, ol):not(.sytec-menu):not(.sytec-footer-menu) {
	font-size: var(--sytec-list-size-tablet);
}


/* ---------------------------------------------------------
 * SMALL
 * --------------------------------------------------------- */

:is(body, .sytec-page-main) small {
	font-size: var(--sytec-small-size-tablet);
}


/* ---------------------------------------------------------
 * BLOCKQUOTE
 * --------------------------------------------------------- */

:is(body, .sytec-page-main) blockquote {
	font-size: var(--sytec-blockquote-size-tablet);
}


/* ---------------------------------------------------------
 * LABELS
 * --------------------------------------------------------- */

:is(body, .sytec-page-main) label,
.sytec-page-main .woocommerce label {
	font-size: var(--sytec-label-size-tablet);
}


/* ---------------------------------------------------------
 * PRECIOS WOOCOMMERCE
 * --------------------------------------------------------- */

.sytec-page-main .woocommerce :is(
	.price,
	p.price,
	span.price
),
.sytec-page-main
.woocommerce
ul.products
li.product
.price,
.sytec-page-main
.woocommerce
div.product
.sytec-product-purchase-card
:is(
	p.price,
	span.price
) {
	font-size: var(--sytec-body-size-tablet);
}
}

@media (max-width: 767px) {
body,
.sytec-page-main {
	font-size: var(--sytec-body-size-mobile);
}

:where(body, .sytec-page-main) p:where(:not(.sytec-eyebrow):not(.sytec-hero-description):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-paragraph-size-mobile);
}

.sytec-page-main a:not(.wp-block-sytec-button):not(.sytec-card-button):not(.wp-block-button__link) {
	font-size: var(--sytec-link-size-mobile);
}

:where(body, .sytec-page-main) h1:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h1-size-mobile);
}

.sytec-page-main .woocommerce div.product .product_title,
.sytec-page-main .woocommerce div.product .sytec-product-summary .product_title {
	font-size: var(--sytec-h1-size-mobile);
}

:where(body, .sytec-page-main) h2:where(:not(.sytec-hero-title):not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h2-size-mobile);
}

.sytec-page-main :is(
	.woocommerce-tabs,
	.cart_totals,
	.woocommerce-MyAccount-content
) h2,
.sytec-page-main .sytec-product-section > h2 {
	font-size: var(--sytec-h2-size-mobile);
}

:where(body, .sytec-page-main) h3:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h3-size-mobile);
}

.sytec-page-main :is(
	.woocommerce-loop-product__title,
	.woocommerce-checkout h3
),
.sytec-page-main
.woocommerce
ul.products
li.product
.woocommerce-loop-product__title {
	font-size: var(--sytec-h3-size-mobile);
}

:where(body, .sytec-page-main) h4:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h4-size-mobile);
}

:where(body, .sytec-page-main) h5:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h5-size-mobile);
}

:where(body, .sytec-page-main) h6:where(:not(.has-custom-font-size):not([class*="has-"][class*="-font-size"])) {
	font-size: var(--sytec-h6-size-mobile);
}

:is(body, .sytec-page-main)
:is(ul, ol):not(.sytec-menu):not(.sytec-footer-menu) {
	font-size: var(--sytec-list-size-mobile);
}

:is(body, .sytec-page-main) small {
	font-size: var(--sytec-small-size-mobile);
}

:is(body, .sytec-page-main) blockquote {
	font-size: var(--sytec-blockquote-size-mobile);
}

:is(body, .sytec-page-main) label,
.sytec-page-main .woocommerce label {
	font-size: var(--sytec-label-size-mobile);
}

.sytec-page-main .woocommerce :is(
	.price,
	p.price,
	span.price
),
.sytec-page-main
.woocommerce
ul.products
li.product
.price,
.sytec-page-main
.woocommerce
div.product
.sytec-product-purchase-card
:is(
	p.price,
	span.price
) {
	font-size: var(--sytec-body-size-mobile);
}}

.sytec-page-section {
  width: 100%;
  min-width: 0;
}

.sytec-page-container,
.sytec-page-container.sytec-container {
  box-sizing: border-box;
  width: min(
    calc(100% - (var(--sytec-container-padding) * 2)),
    var(--sytec-container-max-width, var(--sytec-page-max-width, var(--sytec-template-content-width)))
  );
  max-width: none;
  min-width: 0;
  margin: var(--sytec-page-margin-top, 0) auto var(--sytec-page-margin-bottom, 0);
  padding: var(--sytec-container-padding-top, var(--sytec-page-padding-top, var(--sytec-template-padding-top)))
    0
    var(--sytec-container-padding-bottom, var(--sytec-page-padding-bottom, var(--sytec-template-padding-bottom)));
  border: var(--sytec-page-border-width, 0) var(--sytec-page-border-style, solid) var(--sytec-page-border-color, #e5e7eb);
  border-radius: var(--sytec-page-radius, 0);
  background: var(--sytec-page-background, transparent);
  box-shadow: var(--sytec-page-shadow, none);
}

.sytec-page-content {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding-block: 0;
  gap: var(--sytec-content-gap, var(--sytec-page-gap, var(--sytec-template-gap)));
  column-gap: var(--sytec-page-column-gap, var(--sytec-page-gap));
  row-gap: var(--sytec-page-row-gap, var(--sytec-page-gap));
  align-items: var(--sytec-page-align-items, stretch);
  justify-content: var(--sytec-page-justify-content, start);
  background: transparent;
}

.sytec-layout-full .sytec-page-container {
  width: calc(100% - (var(--sytec-container-padding) * 2));
  max-width: none;
}

.sytec-layout-narrow .sytec-page-container {
  max-width: var(--sytec-page-narrow-width, var(--sytec-template-narrow-width));
}

.sytec-template-content {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--sytec-template-gap);
}

.sytec-page-main .sytec-entry-content > :is(.wp-block-sytec-hero, .wp-block-sytec-hero-section).alignfull,
body.sytec-header-overlay .sytec-page-main .sytec-entry-content > :is(.wp-block-sytec-hero, .wp-block-sytec-hero-section):first-child {
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
}

.sytec-page-main:has(.sytec-entry-content > :is(.wp-block-sytec-hero, .wp-block-sytec-hero-section).alignfull),
body.sytec-header-overlay .sytec-page-main:has(.sytec-entry-content > :is(.wp-block-sytec-hero, .wp-block-sytec-hero-section):first-child) {
  overflow-x: clip;
}

.sytec-page-container:has(.sytec-entry-content > :is(.wp-block-sytec-hero, .wp-block-sytec-hero-section, .wp-block-sytec-scenic-hero):first-child) {
  padding-top: 0;
}

.sytec-template-content--full {
  width: 100%;
  max-width: none;
}

.sytec-template-content--narrow {
  width: min(100% - 40px, var(--sytec-template-narrow-width));
  margin-inline: auto;
}

.sytec-page-content > *,
.sytec-woocommerce-container,
.sytec-woocommerce-container .woocommerce,
.sytec-woocommerce-container ul.products {
  min-width: 0;
  max-width: 100%;
}

.sytec-woocommerce-container ul.products,
.woocommerce ul.products {
  width: 100%;
  min-width: 0;
}

/* Botones globales: el selector excluye controles iconográficos y acciones de cierre. */
:is(
  .sytec-button,
  .sytec-page-main .button,
  .sytec-page-main .wp-element-button:not(.wp-block-button__link),
  .sytec-page-main input[type="submit"],
  .sytec-page-main input[type="button"],
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):not(.wp-block-sytec-button):not(.sytec-card-button):not(.sytec-icon-button):not(.sytec-menu-toggle):not(.sytec-mobile-close):not(.sytec-submenu-toggle):not(.sytec-carousel-button):not(.swiper-button-prev):not(.swiper-button-next):not(.slick-arrow):not(.modal-close):not(.dialog-close-button):not(.remove):not(.qty) {
  --sytec-button-current-background: var(--sytec-button-primary-background);
  --sytec-button-current-text: var(--sytec-button-primary-text);
  --sytec-button-current-border: var(--sytec-button-primary-border);
  --sytec-button-current-background-hover: var(--sytec-button-primary-background-hover);
  --sytec-button-current-text-hover: var(--sytec-button-primary-text-hover);
  --sytec-button-current-border-hover: var(--sytec-button-primary-border-hover);
  display: inline-flex;
  min-height: var(--sytec-button-min-height);
  padding: var(--sytec-button-padding-block) var(--sytec-button-padding-inline);
  align-items: center;
  justify-content: center;
  border-width: var(--sytec-button-border-width);
  border-style: var(--sytec-button-border-style);
  border-color: var(--sytec-button-current-border);
  border-radius: var(--sytec-button-radius);
  background: var(--sytec-button-current-background);
  box-shadow: var(--sytec-button-shadow);
  color: var(--sytec-button-current-text);
  cursor: pointer;
  font-size: var(--sytec-button-font-size);
  font-weight: var(--sytec-button-font-weight);
  letter-spacing: var(--sytec-button-letter-spacing);
  line-height: var(--sytec-button-line-height);
  text-decoration: none;
  text-transform: var(--sytec-button-text-transform);
  transition:
    background-color var(--sytec-button-transition),
    border-color var(--sytec-button-transition),
    box-shadow var(--sytec-button-transition),
    color var(--sytec-button-transition),
    transform var(--sytec-button-transition);
}

:is(
  .sytec-button,
  .sytec-page-main .button,
  .sytec-page-main .wp-element-button:not(.wp-block-button__link),
  .sytec-page-main input[type="submit"],
  .sytec-page-main input[type="button"],
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):not(.wp-block-sytec-button):not(.sytec-card-button):not(.sytec-icon-button):not(.sytec-menu-toggle):not(.sytec-mobile-close):not(.sytec-submenu-toggle):not(.sytec-carousel-button):not(.swiper-button-prev):not(.swiper-button-next):not(.slick-arrow):not(.modal-close):not(.dialog-close-button):not(.remove):not(.qty):hover:not(:disabled):not([aria-disabled="true"]) {
  border-color: var(--sytec-button-current-border-hover);
  background: var(--sytec-button-current-background-hover);
  box-shadow: var(--sytec-button-shadow-hover);
  color: var(--sytec-button-current-text-hover);
  transform: translateY(var(--sytec-button-hover-translate-y));
}

:is(
  .sytec-button,
  .sytec-page-main .button,
  .sytec-page-main .wp-element-button:not(.wp-block-button__link),
  .sytec-page-main input[type="submit"],
  .sytec-page-main input[type="button"],
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):not(.wp-block-sytec-button):not(.sytec-card-button):not(.sytec-icon-button):not(.sytec-menu-toggle):not(.sytec-mobile-close):not(.sytec-submenu-toggle):not(.sytec-carousel-button):not(.swiper-button-prev):not(.swiper-button-next):not(.slick-arrow):not(.modal-close):not(.dialog-close-button):not(.remove):not(.qty):focus-visible {
  outline: 3px solid var(--sytec-button-focus-color);
  outline-offset: 2px;
}

:is(
  .sytec-button,
  .sytec-page-main .button,
  .sytec-page-main .wp-element-button:not(.wp-block-button__link),
  .sytec-page-main input[type="submit"],
  .sytec-page-main input[type="button"],
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit
):not(.wp-block-sytec-button):not(.sytec-card-button):not(.sytec-icon-button):not(.sytec-menu-toggle):not(.sytec-mobile-close):not(.sytec-submenu-toggle):not(.sytec-carousel-button):not(.swiper-button-prev):not(.swiper-button-next):not(.slick-arrow):not(.modal-close):not(.dialog-close-button):not(.remove):not(.qty):is(:disabled, [aria-disabled="true"]) {
  opacity: var(--sytec-button-disabled-opacity);
  cursor: var(--sytec-button-disabled-cursor);
  transform: none;
}

:is(.sytec-button, .sytec-page-main .button, .sytec-page-main .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button).sytec-button--primary {
  --sytec-button-current-background: var(--sytec-button-primary-background);
  --sytec-button-current-text: var(--sytec-button-primary-text);
  --sytec-button-current-border: var(--sytec-button-primary-border);
  --sytec-button-current-background-hover: var(--sytec-button-primary-background-hover);
  --sytec-button-current-text-hover: var(--sytec-button-primary-text-hover);
  --sytec-button-current-border-hover: var(--sytec-button-primary-border-hover);
}

:is(.sytec-button, .sytec-page-main .button, .sytec-page-main .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button).sytec-button--secondary {
  --sytec-button-current-background: var(--sytec-button-secondary-background);
  --sytec-button-current-text: var(--sytec-button-secondary-text);
  --sytec-button-current-border: var(--sytec-button-secondary-border);
  --sytec-button-current-background-hover: var(--sytec-button-secondary-background-hover);
  --sytec-button-current-text-hover: var(--sytec-button-secondary-text-hover);
  --sytec-button-current-border-hover: var(--sytec-button-secondary-border-hover);
}

:is(.sytec-button, .sytec-page-main .button, .sytec-page-main .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button).sytec-button--outline {
  --sytec-button-current-background: var(--sytec-button-outline-background);
  --sytec-button-current-text: var(--sytec-button-outline-text);
  --sytec-button-current-border: var(--sytec-button-outline-border);
  --sytec-button-current-background-hover: var(--sytec-button-outline-background-hover);
  --sytec-button-current-text-hover: var(--sytec-button-outline-text-hover);
  --sytec-button-current-border-hover: var(--sytec-button-outline-border-hover);
}

:is(.sytec-button, .sytec-page-main .button, .sytec-page-main .wp-element-button, .woocommerce a.button).sytec-button--link {
  min-height: auto;
  padding-inline: 0;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  color: var(--sytec-button-primary-background);
}

:is(.sytec-button, .sytec-page-main .button, .sytec-page-main .wp-element-button, .woocommerce a.button).sytec-button--link:hover {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  color: var(--sytec-button-primary-background-hover);
  transform: none;
}

.sytec-template-grid,
.sytec-template-blog-grid {
  display: grid;
  grid-template-columns: repeat(var(--sytec-template-columns), minmax(0, 1fr));
  gap: var(--sytec-template-gap);
}

.sytec-template-display-list .sytec-template-blog-grid,
.sytec-template-display-list .sytec-card-grid {
  grid-template-columns: minmax(0, 1fr);
}

body.sytec-template-blog.sytec-template-display-list .sytec-entry-card {
  display: grid;
  grid-template-columns: minmax(180px, 32%) minmax(0, 1fr);
}

body.sytec-template-blog.sytec-template-display-list .sytec-entry-card__media {
  height: 100%;
  aspect-ratio: auto;
}

body.sytec-template-blog.sytec-template-display-masonry .sytec-template-blog-grid {
  display: block;
  column-count: var(--sytec-template-columns);
  column-gap: var(--sytec-template-gap);
}

body.sytec-template-blog.sytec-template-display-masonry .sytec-entry-card {
  margin-bottom: var(--sytec-template-gap);
  break-inside: avoid;
}

body.sytec-template-blog.sytec-blog-preset-minimal .sytec-entry-card {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.sytec-template-blog.sytec-blog-preset-minimal .sytec-entry-card__body {
  padding-inline: 0;
}

body.sytec-template-blog.sytec-blog-preset-editorial .sytec-entry-card__media {
  aspect-ratio: 3 / 2;
}

body.sytec-template-blog.sytec-blog-preset-editorial .sytec-entry-card h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.55rem, 2.5vw, 2rem);
}

body.sytec-template-blog.sytec-blog-preset-compact .sytec-entry-card__media {
  aspect-ratio: 16 / 7;
}

body.sytec-template-blog.sytec-blog-preset-compact .sytec-entry-card__body {
  padding: 1rem;
}

body.sytec-template-blog.sytec-blog-preset-compact .sytec-entry-card h2 {
  margin-bottom: 0.5rem;
  font-size: 1.2rem;
}

@media (max-width: 1024px) {
  body.sytec-template-blog.sytec-template-display-masonry .sytec-template-blog-grid {
    column-count: 2;
  }

  body.sytec-template-blog.sytec-template-columns-1.sytec-template-display-masonry .sytec-template-blog-grid {
    column-count: 1;
  }
}

.sytec-product-card-classic ul.products li.product,
.sytec-product-card-minimal ul.products li.product,
.sytec-product-card-commercial ul.products li.product,
.sytec-product-card-editorial ul.products li.product,
.sytec-product-card-compact ul.products li.product {
  display: flex;
  padding: var(--sytec-product-card-padding);
  flex-direction: column;
  text-align: inherit;
  border-radius: var(--sytec-product-card-radius);
  overflow: hidden;
  position: relative;
}

.sytec-card-align-center ul.products li.product {
  text-align: center;
}

.sytec-card-align-right ul.products li.product {
  text-align: right;
}

.sytec-product-card-classic ul.products li.product,
.sytec-product-card-commercial ul.products li.product {
  border: 1px solid #e2e8f0;
  background: #fff;
}

.sytec-product-card-commercial ul.products li.product {
	box-shadow: var(--sytec-shadow-small);
}

body:is(
  .sytec-product-card-classic,
  .sytec-product-card-minimal,
  .sytec-product-card-commercial,
  .sytec-product-card-editorial,
  .sytec-product-card-compact
) ul.products li.product.sytec-product-card {
  border-radius: var(--sytec-product-card-radius);
}

body ul.products li.product.sytec-product-card--commercial {
  display: flex;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  padding: 0;
  flex-direction: column;
  overflow: hidden;
  border-color: var(--sytec-color-border);
  border-radius: var(--sytec-product-card-radius);
  background: var(--sytec-product-card-background, var(--sytec-color-secondary));
  box-shadow: var(--sytec-product-card-shadow, var(--sytec-shadow-small));
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__media {
  display: flex;
  width: 100%;
  height: var(--sytec-product-image-height, auto);
  flex: 0 0 var(--sytec-product-image-height, auto);
  align-items: center;
  aspect-ratio: var(--sytec-product-image-ratio);
  justify-content: center;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__media > a {
  display: block;
  width: 100%;
  height: 100%;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__media img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: var(--sytec-product-image-fit, cover);
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__body {
  display: flex;
  min-height: 0;
  padding: var(--sytec-product-card-padding);
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__commercial-badges,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__financing,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__promotions,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__shipping,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__actions {
  flex: 0 0 auto;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__commercial-badges:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__discount-badge:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__financing:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__promotions:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__shipping:empty,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__actions:empty {
  display: none;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__commercial-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__commercial-badges > * {
  padding: 0.25rem 0.45rem;
  border-radius: 0.25rem;
  background: var(--sytec-color-accent);
  color: var(--sytec-color-secondary);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__title {
  min-height: 2.7em;
  max-height: 2.7em;
  flex: 0 0 auto;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__title .woocommerce-loop-product__title {
  display: -webkit-box;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing .price {
  display: flex;
  margin: 0;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem;
  color: var(--sytec-color-accent);
  font-size: 1.3rem;
  font-weight: 750;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing .price del {
  color: var(--sytec-color-muted);
  font-size: 0.75em;
  font-weight: 500;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__pricing .price ins {
  color: inherit;
  font-size: 1em;
  text-decoration: none;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__discount-badge {
  padding: 0.2rem 0.4rem;
  border-radius: 0.25rem;
  background: var(--sytec-color-accent);
  color: var(--sytec-color-secondary);
  font-size: 0.7rem;
  font-weight: 700;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__financing,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__promotions,
body ul.products li.product.sytec-product-card--commercial .sytec-product-card__shipping {
  color: var(--sytec-color-muted);
  font-size: 0.82rem;
  line-height: 1.35;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__commercial-details {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__promotions {
  display: grid;
  gap: 0.25rem;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__content {
  flex: 0 0 auto;
}

body ul.products li.product.sytec-product-card--commercial .sytec-product-card__actions {
  margin-top: auto;
}

body ul.products li.product.sytec-product-card--editorial {
  display: flex;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  padding: 0;
  flex-direction: column;
  overflow: hidden;
  border-color: var(--sytec-color-border);
  border-radius: var(--sytec-product-card-radius);
  background: var(--sytec-product-card-background, var(--sytec-color-secondary));
  box-shadow: var(--sytec-product-card-shadow, none);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__media {
  position: relative;
  display: flex;
  width: 100%;
  height: var(--sytec-product-image-height, auto);
  flex: 0 0 var(--sytec-product-image-height, auto);
  align-items: center;
  aspect-ratio: var(--sytec-product-image-ratio);
  justify-content: center;
  overflow: hidden;
  background: var(--sytec-product-image-background);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__media > a {
  display: block;
  width: 100%;
  height: 100%;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__media img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: var(--sytec-product-image-fit, contain);
  transition: transform 180ms ease;
}

body ul.products li.product.sytec-product-card--editorial.sytec-product-card--zoom:hover .sytec-product-card__media img {
  transform: scale(1.02);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__quick-view {
  position: absolute;
  right: var(--sytec-product-card-padding);
  bottom: var(--sytec-product-card-padding);
  left: var(--sytec-product-card-padding);
  z-index: 2;
  opacity: 0;
  transform: translateY(0.35rem);
  transition: opacity 160ms ease, transform 160ms ease;
}

body ul.products li.product.sytec-product-card--editorial:hover .sytec-product-card__quick-view,
body ul.products li.product.sytec-product-card--editorial:focus-within .sytec-product-card__quick-view {
  opacity: 1;
  transform: translateY(0);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__body {
  display: flex;
  min-height: 0;
  padding: var(--sytec-product-card-padding);
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing {
  flex: 0 0 auto;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing:empty,
body ul.products li.product.sytec-product-card--editorial .sytec-product-card__quick-view:empty,
body ul.products li.product.sytec-product-card--editorial .sytec-product-card__actions:empty {
  display: none;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing .price {
  display: flex;
  margin: 0;
  flex-direction: column;
  color: inherit;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.2;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing .price > .amount,
body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing .price ins {
  order: 1;
  color: inherit;
  text-decoration: none;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__pricing .price del {
  order: 2;
  color: var(--sytec-color-muted);
  font-size: 0.75em;
  font-weight: 400;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__title {
  min-height: 2.7em;
  max-height: 2.7em;
  flex: 0 0 auto;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__title .woocommerce-loop-product__title {
  display: -webkit-box;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__rating {
  display: flex;
  min-height: 1rem;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.4rem;
  color: var(--sytec-color-accent);
  font-size: 0.8rem;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__rating .star-rating {
  margin: 0;
  color: currentColor;
  font-size: inherit;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__review-count {
  color: var(--sytec-color-muted);
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__content {
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
}

body ul.products li.product.sytec-product-card--editorial .sytec-product-card__actions {
  margin-top: auto;
  flex: 0 0 auto;
}

@media (hover: none) {
  body ul.products li.product.sytec-product-card--editorial .sytec-product-card__quick-view {
    display: none;
  }
}

body.sytec-card-hover-lift ul.products li.product.sytec-product-card--editorial:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--sytec-color-primary) 10%, transparent);
}

body ul.products li.product.sytec-product-card--food_inline {
  position: relative;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  padding: 0;
  overflow: hidden;
  border-color: var(--sytec-color-border);
  border-radius: var(--sytec-product-card-radius);
  background: var(--sytec-product-card-background, var(--sytec-color-secondary));
  box-shadow: var(--sytec-product-card-shadow, var(--sytec-shadow-small));
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__media {
  position: relative;
  min-height: var(--sytec-product-image-height, 100%);
  overflow: hidden;
  background: var(--sytec-product-image-background, var(--sytec-product-card-background));
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__media > a,
body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__media img {
  object-fit: var(--sytec-product-image-fit, cover);
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__body {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 0;
  padding: var(--sytec-product-card-padding);
  padding-right: calc(var(--sytec-product-card-padding) + 2.75rem);
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
  overflow: auto;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__title {
  max-height: 2.7em;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__title .woocommerce-loop-product__title {
  display: -webkit-box;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__description {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: var(--sytec-color-muted);
  font-size: 0.82rem;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__pricing {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.3rem;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__pricing:empty,
body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__badges:empty,
body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__content:empty,
body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__actions:empty {
  display: none;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__price-prefix {
  color: var(--sytec-color-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__pricing .price {
  margin: 0;
  color: var(--sytec-color-accent);
  font-size: 1rem;
  font-weight: 700;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__badges > * {
  padding: 0.18rem 0.35rem;
  border-radius: 0.25rem;
  background: var(--sytec-color-accent);
  color: var(--sytec-color-secondary);
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

body ul.products li.product.sytec-product-card--food_inline .sytec-product-card__actions {
  position: absolute;
  right: var(--sytec-product-card-padding);
  bottom: var(--sytec-product-card-padding);
  z-index: 2;
}

body ul.products li.product.sytec-product-card--food_inline.sytec-product-card--action-center_right .sytec-product-card__actions {
  top: 50%;
  bottom: auto;
  transform: translateY(-50%);
}

body ul.products li.product.sytec-product-card--food {
  display: flex;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  padding: 0;
  flex-direction: column;
  overflow: hidden;
  border-color: var(--sytec-color-border);
  border-radius: var(--sytec-product-card-radius);
  background: var(--sytec-product-card-background, var(--sytec-color-secondary));
  box-shadow: var(--sytec-product-card-shadow, none);
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__media {
  display: flex;
  width: 100%;
  height: var(--sytec-product-image-height, auto);
  flex: 0 0 var(--sytec-product-image-height, auto);
  align-items: center;
  aspect-ratio: var(--sytec-product-image-ratio);
  justify-content: center;
  overflow: hidden;
  background: var(--sytec-product-image-background);
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__media > a,
body ul.products li.product.sytec-product-card--food .sytec-product-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__media img {
  object-fit: var(--sytec-product-image-fit, contain);
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__body {
  display: flex;
  min-height: 0;
  padding: var(--sytec-product-card-padding);
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__title {
  max-height: 2.7em;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__title .woocommerce-loop-product__title {
  display: -webkit-box;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__pricing .price {
  margin: 0;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__pricing:empty,
body ul.products li.product.sytec-product-card--food .sytec-product-card__content:empty,
body ul.products li.product.sytec-product-card--food .sytec-product-card__actions:empty {
  display: none;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__content {
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
}

body ul.products li.product.sytec-product-card--food .sytec-product-card__actions {
  margin-top: auto;
}

@media (max-width: 767px) {
  body ul.products li.product.sytec-product-card--food .sytec-product-card__media {
    max-height: 240px;
  }

  body ul.products li.product.sytec-product-card--food .sytec-product-card__body {
    padding: min(var(--sytec-product-card-padding), 10px);
  }
}

body ul.products li.product.sytec-product-card--minimal {
  display: flex;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  padding: var(--sytec-product-card-padding);
  gap: var(--sytec-product-card-gap, 0);
  flex-direction: column;
  overflow: hidden;
  border-color: var(--sytec-color-border);
  border-radius: var(--sytec-product-card-radius);
  background: var(--sytec-product-card-background, var(--sytec-color-secondary));
  box-shadow: var(--sytec-product-card-shadow, var(--sytec-shadow-small));
}

body ul.products li.product.sytec-product-card--minimal > a {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__media {
  display: flex;
  width: 100%;
  height: var(--sytec-product-image-height, auto);
  flex: 0 0 var(--sytec-product-image-height, auto);
  align-items: center;
  aspect-ratio: var(--sytec-product-image-ratio);
  justify-content: center;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__media img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: var(--sytec-product-image-fit, contain);
  transition: transform 180ms ease;
}

body ul.products li.product.sytec-product-card--minimal.sytec-product-card--zoom:hover .sytec-product-card__media img {
  transform: scale(1.04);
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__title {
  min-height: calc(2.8em + 1rem);
  max-height: calc(2.8em + 1rem);
  flex: 0 0 auto;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__title .woocommerce-loop-product__title {
  display: -webkit-box;
  overflow: hidden;
  font-weight: 600;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__content {
  min-height: 0;
  flex: 1 1 auto;
  overflow: auto;
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__actions {
  margin-top: auto;
  flex: 0 0 auto;
}

body ul.products li.product.sytec-product-card--minimal .sytec-product-card__actions:empty {
  display: none;
}

/* La disposición estructural es independiente del preset visual. */
body ul.products li.product.sytec-product-card {
  display: grid;
  min-width: 0;
  min-height: var(--sytec-product-card-min-height, auto);
  max-height: var(--sytec-product-card-max-height, none);
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "media"
    "body";
  gap: var(--sytec-product-card-media-gap, 0);
}

body ul.products li.product.sytec-product-card .sytec-product-card__media {
  position: relative;
  min-width: 0;
  grid-area: media;
}

body ul.products li.product.sytec-product-card .sytec-product-card__body {
  display: flex;
  min-width: 0;
  min-height: 0;
  grid-area: body;
  flex-direction: column;
  gap: var(--sytec-product-card-gap, 0);
}

body ul.products li.product.sytec-product-card :is(.sytec-product-card__content-primary, .sytec-product-card__content-cta) {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: var(--sytec-card-box-min-height, 0);
  max-height: var(--sytec-card-box-max-height, none);
  padding: var(--sytec-card-box-desktop-padding, 0);
  box-sizing: border-box;
  flex-direction: var(--sytec-card-box-desktop-direction, column);
  align-items: var(--sytec-card-box-desktop-align, stretch);
  justify-content: var(--sytec-card-box-desktop-justify, flex-start);
  gap: var(--sytec-card-box-desktop-gap, 0);
  overflow: hidden;
  border: var(--sytec-card-box-border-width, 0) solid var(--sytec-card-box-border-color, transparent);
  border-radius: var(--sytec-card-box-radius, 0);
  background: var(--sytec-card-box-background, transparent);
}

body ul.products li.product.sytec-product-card .sytec-product-card__row {
  display: grid;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  padding: var(--sytec-card-row-padding, 0);
  box-sizing: border-box;
  grid-template-columns: var(--sytec-card-row-desktop-columns, minmax(0, 1fr));
  column-gap: var(--sytec-card-row-column-gap, 0);
  row-gap: var(--sytec-card-row-vertical-gap, 0);
  align-items: var(--sytec-card-row-align, start);
  border: var(--sytec-card-row-border-width, 0) solid var(--sytec-card-row-border-color, transparent);
  border-radius: var(--sytec-card-row-radius, 0);
  background: var(--sytec-card-row-background, transparent);
}

body ul.products li.product.sytec-product-card .sytec-product-card__column {
  display: flex;
  width: var(--sytec-card-column-width, 100%);
  min-width: 0;
  max-width: 100%;
  padding: var(--sytec-card-column-padding, 0);
  box-sizing: border-box;
  flex-direction: column;
  align-self: var(--sytec-card-column-vertical, start);
  align-items: var(--sytec-card-column-horizontal, flex-start);
  gap: var(--sytec-card-row-vertical-gap, 0);
  background: var(--sytec-card-column-background, transparent);
  text-align: var(--sytec-card-column-text-align, left);
}

body ul.products li.product.sytec-product-card .sytec-product-card__column > * {
  min-width: 0;
  max-width: 100%;
}

body ul.products li.product.sytec-product-card :is(.sytec-product-card__content-primary, .sytec-product-card__content-cta):empty {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element {
  position: static;
  inset: auto;
  width: var(--sytec-card-element-width, auto);
  min-width: 0;
  max-width: 100%;
  padding: var(--sytec-card-element-padding, 0);
  margin: var(--sytec-card-element-margin, 0);
  box-sizing: border-box;
  overflow-wrap: anywhere;
  border: var(--sytec-card-element-border-width, 0) solid var(--sytec-card-element-border-color, transparent);
  border-radius: var(--sytec-card-element-radius, 0);
  background: var(--sytec-card-element-background, transparent);
  color: var(--sytec-card-element-color, inherit);
  font-size: var(--sytec-card-element-font-size, inherit);
  font-weight: var(--sytec-card-element-font-weight, inherit);
  line-height: var(--sytec-card-element-line-height, inherit);
  text-align: var(--sytec-card-element-align, inherit);
  opacity: 1;
  visibility: visible;
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element:empty {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--title.sytec-product-card__title {
  width: var(--sytec-card-element-width, auto);
  min-width: 0;
  max-width: 100%;
  min-height: 0;
  max-height: none;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--title :is(a, .woocommerce-loop-product__title) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--title .woocommerce-loop-product__title {
  display: -webkit-box;
  padding: 0;
  margin: 0;
  overflow: hidden;
  font: inherit;
  color: inherit;
  line-height: inherit;
  text-align: inherit;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--sytec-card-element-lines, initial);
}

body ul.products li.product.sytec-product-card :is(.sytec-product-card__element--woo-button, .sytec-product-card__element--cta-button) > .button {
  max-width: 100%;
  box-sizing: border-box;
}

body ul.products li.product.sytec-product-card :is(.sytec-product-card__element--woo-button, .sytec-product-card__element--cta-button) {
  width: 100%;
  overflow: hidden;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--woo-button.sytec-product-card__actions {
  position: static;
  inset: auto;
  margin: var(--sytec-card-element-margin, 0);
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button {
  display: inline-flex;
  width: var(--sytec-card-button-width, auto);
  max-width: 100%;
  height: var(--sytec-card-button-height, auto);
  min-width: 0;
  padding: var(--sytec-card-button-padding, 10px 16px);
  margin: var(--sytec-card-button-margin, 0);
  box-sizing: border-box;
  overflow: hidden;
  justify-content: var(--sytec-card-button-justify, center);
  align-items: var(--sytec-card-button-align, center);
  border: var(--sytec-card-button-border-width, 0) var(--sytec-card-button-border-style, solid) var(--sytec-card-button-border, transparent);
  border-radius: var(--sytec-card-button-radius, 6px);
  background: var(--sytec-card-button-background, transparent);
  box-shadow: none;
  color: var(--sytec-card-button-text, inherit);
  font-family: var(--sytec-card-button-font-family, var(--sytec-card-theme-body-family, inherit));
  font-size: var(--sytec-card-button-font-size, 14px);
  font-weight: var(--sytec-card-button-font-weight, 600);
  line-height: var(--sytec-card-button-line-height, 1.4);
  letter-spacing: var(--sytec-card-button-letter-spacing, 0);
  text-align: inherit;
  text-decoration: none;
  text-transform: var(--sytec-card-button-text-transform, none);
  transition: color var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), background-color var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), border-color var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), border-radius var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), transform var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease);
}

body ul.products li.product.sytec-product-card .sytec-card-button__content {
  display: inline-flex;
  min-width: 0;
  max-width: 100%;
  align-items: center;
  gap: var(--sytec-card-button-gap, 8px);
}

body ul.products li.product.sytec-product-card .sytec-card-button__content--icon-right {
  flex-direction: row-reverse;
}

body ul.products li.product.sytec-product-card .sytec-card-button__label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body ul.products li.product.sytec-product-card .sytec-card-button__icon-wrap {
  display: inline-flex;
  color: var(--sytec-card-button-icon, currentColor);
  transition: color var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), transform var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease);
}

body ul.products li.product.sytec-product-card .sytec-card-button__icon {
  width: var(--sytec-card-button-icon-size, 25px);
  height: var(--sytec-card-button-icon-size, 25px);
  flex: 0 0 auto;
}

body ul.products li.product.sytec-product-card .sytec-card-button__images {
  position: relative;
  display: inline-grid;
  width: var(--sytec-card-button-image-width, 25px);
  height: var(--sytec-card-button-image-height, 25px);
  min-width: 0;
  padding: var(--sytec-card-button-image-padding, 0);
  margin: var(--sytec-card-button-image-margin, 0);
  box-sizing: border-box;
  overflow: hidden;
  border-radius: var(--sytec-card-button-image-radius, 0);
}

body ul.products li.product.sytec-product-card .sytec-card-button__image {
  width: 100%;
  height: 100%;
  min-width: 0;
  grid-area: 1 / 1;
  object-fit: var(--sytec-card-button-image-fit, contain);
  transition: opacity var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), transform var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease);
}

body ul.products li.product.sytec-product-card .sytec-card-button__image--hover {
  opacity: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-button__images--none .sytec-card-button__image {
  transition: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images.has-hover-image .sytec-card-button__image--normal { opacity: 0; }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images.has-hover-image .sytec-card-button__image--hover { opacity: 1; }

body ul.products li.product.sytec-product-card .sytec-card-button:hover {
  border-color: var(--sytec-card-button-border-hover, transparent);
  border-radius: var(--sytec-card-button-radius-hover, 6px);
  background: var(--sytec-card-button-background-hover, transparent);
  box-shadow: none;
  color: var(--sytec-card-button-text-hover, inherit);
}

body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__icon-wrap {
  color: var(--sytec-card-button-icon-hover, currentColor);
}

body ul.products li.product.sytec-product-card .sytec-card-button:focus-visible {
  outline: 3px solid currentColor;
  outline-offset: 2px;
}

body ul.products li.product.sytec-product-card .sytec-card-button.loading {
  border-color: var(--sytec-card-button-border, transparent);
  background: var(--sytec-card-button-background, transparent);
  box-shadow: none;
  color: var(--sytec-card-button-text, inherit);
  cursor: wait;
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button--hover-lift:hover { transform: translateY(-2px); }
body ul.products li.product.sytec-product-card .sytec-card-button--hover-scale:hover { transform: scale(1.03); }
body ul.products li.product.sytec-product-card .sytec-card-button--hover-translate:hover { transform: translateX(2px); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__icon-wrap--scale { transform: scale(1.12); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__icon-wrap--rotate { transform: rotate(12deg); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__icon-wrap--translate { transform: translateX(3px); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--fade .sytec-card-button__image--normal { opacity: 0; }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--fade .sytec-card-button__image--hover { opacity: 1; }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--scale .sytec-card-button__image--normal { opacity: 0; transform: scale(.8); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--scale .sytec-card-button__image--hover { opacity: 1; transform: scale(1); }
body ul.products li.product.sytec-product-card .sytec-card-button__images--scale .sytec-card-button__image--hover { transform: scale(1.2); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--slide .sytec-card-button__image--normal { opacity: 0; transform: translateX(-100%); }
body ul.products li.product.sytec-product-card .sytec-card-button:hover .sytec-card-button__images--slide .sytec-card-button__image--hover { opacity: 1; transform: translateX(0); }
body ul.products li.product.sytec-product-card .sytec-card-button__images--slide .sytec-card-button__image--hover { transform: translateX(100%); }

body ul.products li.product.sytec-product-card .sytec-card-button:is([disabled], :disabled, .disabled, [aria-disabled="true"]) {
  border-color: var(--sytec-card-button-disabled-border, var(--sytec-card-button-border, transparent));
  background: var(--sytec-card-button-disabled-background, var(--sytec-card-button-background, transparent));
  color: var(--sytec-card-button-disabled-text, var(--sytec-card-button-text, inherit));
  opacity: var(--sytec-card-button-disabled-opacity, .5);
  cursor: var(--sytec-card-button-disabled-cursor, not-allowed);
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button:is([disabled], :disabled, .disabled, [aria-disabled="true"]) .sytec-card-button__icon-wrap {
  color: currentColor;
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group {
  display: inline-flex;
  flex-wrap: nowrap;
  gap: 0;
  width: var(--sytec-card-button-width, auto);
  max-width: 100%;
  height: var(--sytec-card-button-height, auto);
  min-width: 0;
  padding: 0;
  margin: var(--sytec-card-button-margin, 0);
  box-sizing: border-box;
  overflow: hidden;
  align-items: stretch;
  border: var(--sytec-card-button-border-width, 0) var(--sytec-card-button-border-style, solid) var(--sytec-card-button-border, transparent);
  border-radius: var(--sytec-card-button-radius, 6px);
  background: var(--sytec-card-button-background, transparent);
  color: var(--sytec-card-button-text, inherit);
  font-family: var(--sytec-card-button-font-family, var(--sytec-card-theme-body-family, inherit));
  font-size: var(--sytec-card-button-font-size, 14px);
  font-weight: var(--sytec-card-button-font-weight, 600);
  line-height: var(--sytec-card-button-line-height, 1.4);
  letter-spacing: var(--sytec-card-button-letter-spacing, 0);
  text-transform: var(--sytec-card-button-text-transform, none);
  transition: border-color var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), border-radius var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease), transform var(--sytec-card-button-duration, 180ms) var(--sytec-card-button-timing, ease);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > :is(.sytec-card-woo-action-group__control, .sytec-card-woo-action-group__quantity, .sytec-card-woo-action-group__action) {
  min-width: 0;
  margin: 0;
  border: 0;
  border-inline-end: 1px solid color-mix(in srgb, currentColor 25%, transparent);
  border-radius: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > :last-child,
body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__plus {
  border-inline-end: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--quantity-inline > .sytec-card-woo-action-group__action {
  border-inline-end: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__control {
  display: inline-flex;
  flex: 0 0 auto;
  min-width: 2.5em;
  padding: 0 .65em;
  justify-content: center;
  align-items: center;
  appearance: none;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
  line-height: 1;
  cursor: pointer;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__control:hover:not(:disabled),
body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__control:focus-visible {
  background: color-mix(in srgb, currentColor 10%, transparent);
  color: inherit;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__control:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -3px;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__control:disabled {
  opacity: var(--sytec-card-button-disabled-opacity, .5);
  cursor: var(--sytec-card-button-disabled-cursor, not-allowed);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity {
  display: flex;
  flex: 0 1 3.5em;
  align-items: stretch;
  background: transparent;
  color: inherit;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity[hidden] {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity .quantity {
  display: flex;
  width: 100%;
  min-width: 0;
  margin: 0;
  align-items: stretch;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity-input {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 0 .35em;
  margin: 0;
  appearance: textfield;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-align: center;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity-input::-webkit-inner-spin-button,
body ul.products li.product.sytec-product-card .sytec-card-woo-action-group__quantity-input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__action {
  display: inline-flex;
  flex: 1 1 auto;
  width: auto;
  max-width: 100%;
  height: auto;
  min-height: 0;
  padding: var(--sytec-card-button-padding, 10px 16px);
  align-self: stretch;
  justify-content: var(--sytec-card-button-justify, center);
  align-items: var(--sytec-card-button-align, center);
  background: var(--sytec-card-button-background, transparent);
  color: var(--sytec-card-button-text, inherit);
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__action:hover {
  border-radius: 0;
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__action:focus-visible {
  outline-offset: -3px;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group:has(> .sytec-card-woo-action-group__action:hover) {
  border-color: var(--sytec-card-button-border-hover, transparent);
  border-radius: var(--sytec-card-button-radius-hover, 6px);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--hover-lift:has(> .sytec-card-woo-action-group__action:hover) { transform: translateY(-2px); }
body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--hover-scale:has(> .sytec-card-woo-action-group__action:hover) { transform: scale(1.03); }
body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--hover-translate:has(> .sytec-card-woo-action-group__action:hover) { transform: translateX(2px); }

/* Quantity Style Engine: los segmentos no dependen de su posición en el DOM. */
body ul.products li.product.sytec-product-card .sytec-card-quantity {
  display: inline-flex;
  flex-wrap: nowrap;
  gap: 0;
  width: var(--sytec-card-quantity-width, auto);
  max-width: 100%;
  height: var(--sytec-card-quantity-height, 40px);
  min-width: 0;
  padding: var(--sytec-card-quantity-padding, 0);
  margin: var(--sytec-card-quantity-margin, 0);
  box-sizing: border-box;
  overflow: hidden;
  align-items: stretch;
  border: var(--sytec-card-quantity-border-width, 1px) solid var(--sytec-card-quantity-border, transparent);
  border-radius: var(--sytec-card-quantity-radius, 6px);
  background: var(--sytec-card-quantity-background, transparent);
  color: var(--sytec-card-quantity-color, inherit);
  font-family: var(--sytec-card-quantity-font-family, inherit);
  font-size: var(--sytec-card-quantity-font-size, 14px);
  font-weight: var(--sytec-card-quantity-font-weight, 600);
}

body ul.products li.product.sytec-product-card .sytec-card-quantity__control {
  display: inline-flex;
  flex: 0 0 var(--sytec-card-quantity-control-width, 36px);
  width: var(--sytec-card-quantity-control-width, 36px);
  min-width: 0;
  padding: var(--sytec-card-quantity-control-padding, 0 8px);
  margin: 0;
  justify-content: center;
  align-items: center;
  appearance: none;
  border: 0;
  border-radius: var(--sytec-card-quantity-control-radius, 0);
  background: var(--sytec-card-quantity-control-background, transparent);
  box-shadow: inset 0 0 0 var(--sytec-card-quantity-control-border-width, 0) var(--sytec-card-quantity-control-border, transparent);
  color: var(--sytec-card-quantity-control-color, inherit);
  font-family: var(--sytec-card-quantity-font-family, inherit);
  font-size: var(--sytec-card-quantity-control-font-size, 18px);
  font-weight: var(--sytec-card-quantity-control-font-weight, 600);
  line-height: 1;
  transition: color var(--sytec-card-quantity-control-duration, 160ms) ease, background-color var(--sytec-card-quantity-control-duration, 160ms) ease, box-shadow var(--sytec-card-quantity-control-duration, 160ms) ease, transform var(--sytec-card-quantity-control-duration, 160ms) ease;
}

body ul.products li.product.sytec-product-card .sytec-card-quantity__control:hover:not(:disabled) {
  border-color: transparent;
  background: var(--sytec-card-quantity-control-hover-background, transparent);
  box-shadow: inset 0 0 0 var(--sytec-card-quantity-control-border-width, 0) var(--sytec-card-quantity-control-hover-border, transparent);
  color: var(--sytec-card-quantity-control-hover-color, inherit);
}

body ul.products li.product.sytec-product-card .sytec-card-quantity--control-hover-scale .sytec-card-quantity__minus:hover:not(:disabled),
body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated.sytec-card-quantity--control-hover-scale .sytec-card-quantity__minus:hover:not(:disabled) { transform: scale(1.06); }
body ul.products li.product.sytec-product-card .sytec-card-quantity--control-hover-translate .sytec-card-quantity__minus:hover:not(:disabled),
body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated.sytec-card-quantity--control-hover-translate .sytec-card-quantity__minus:hover:not(:disabled) { transform: translateY(-1px); }

body ul.products li.product.sytec-product-card .sytec-card-quantity__plus {
  flex-basis: var(--sytec-card-quantity-plus-width, var(--sytec-card-quantity-control-width, 36px));
  width: var(--sytec-card-quantity-plus-width, var(--sytec-card-quantity-control-width, 36px));
  padding: var(--sytec-card-quantity-plus-padding, var(--sytec-card-quantity-control-padding, 0 8px));
  border-radius: var(--sytec-card-quantity-plus-radius, var(--sytec-card-quantity-control-radius, 0));
  background: var(--sytec-card-quantity-plus-background, var(--sytec-card-quantity-control-background, transparent));
  box-shadow: inset 0 0 0 var(--sytec-card-quantity-plus-border-width, 0) var(--sytec-card-quantity-plus-border, transparent);
  color: var(--sytec-card-quantity-plus-color, var(--sytec-card-quantity-control-color, inherit));
  font-size: var(--sytec-card-quantity-plus-font-size, var(--sytec-card-quantity-control-font-size, 18px));
  font-weight: var(--sytec-card-quantity-plus-font-weight, var(--sytec-card-quantity-control-font-weight, 600));
  transition-duration: var(--sytec-card-quantity-plus-duration, var(--sytec-card-quantity-control-duration, 160ms));
}

body ul.products li.product.sytec-product-card .sytec-card-quantity__plus:hover:not(:disabled) {
  background: var(--sytec-card-quantity-plus-hover-background, var(--sytec-card-quantity-control-hover-background, transparent));
  box-shadow: inset 0 0 0 var(--sytec-card-quantity-plus-border-width, 0) var(--sytec-card-quantity-plus-hover-border, transparent);
  color: var(--sytec-card-quantity-plus-hover-color, var(--sytec-card-quantity-control-hover-color, inherit));
}

body ul.products li.product.sytec-product-card .sytec-card-quantity--plus-hover-scale .sytec-card-quantity__plus:hover:not(:disabled),
body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated.sytec-card-quantity--plus-hover-scale .sytec-card-quantity__plus:hover:not(:disabled) { transform: scale(1.06); }
body ul.products li.product.sytec-product-card .sytec-card-quantity--plus-hover-translate .sytec-card-quantity__plus:hover:not(:disabled),
body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated.sytec-card-quantity--plus-hover-translate .sytec-card-quantity__plus:hover:not(:disabled) { transform: translateY(-1px); }

body ul.products li.product.sytec-product-card .sytec-card-quantity__value {
  display: flex;
  flex: 0 1 var(--sytec-card-quantity-value-width, 48px);
  width: var(--sytec-card-quantity-value-width, 48px);
  min-width: 0;
  padding: var(--sytec-card-quantity-value-padding, 0 6px);
  align-items: stretch;
  border: 0;
  border-radius: 0;
  background: var(--sytec-card-quantity-value-background, transparent);
  box-shadow: inset 0 0 0 var(--sytec-card-quantity-value-border-width, 0) var(--sytec-card-quantity-value-border, transparent);
  color: var(--sytec-card-quantity-value-color, inherit);
  font-family: var(--sytec-card-quantity-font-family, inherit);
  font-size: var(--sytec-card-quantity-value-font-size, 14px);
  font-weight: var(--sytec-card-quantity-value-font-weight, 600);
}

body ul.products li.product.sytec-product-card .sytec-card-quantity__value .quantity,
body ul.products li.product.sytec-product-card .sytec-card-quantity__value .sytec-card-quantity__value-input {
  width: 100%;
  min-width: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-quantity__value .sytec-card-woo-action-group__quantity-input {
  text-align: var(--sytec-card-quantity-value-align, center);
}

body ul.products li.product.sytec-product-card :is(.sytec-card-quantity, .sytec-card-woo-action--integrated) > :is(.sytec-card-quantity__minus, .sytec-card-quantity__value, .sytec-card-woo-action__button) {
  border-inline-end: var(--sytec-card-quantity-divider-width, 1px) solid var(--sytec-card-quantity-divider, transparent);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--quantity-inline > .sytec-card-woo-action__button {
  border-inline-end: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action-group--quantity-inline > .sytec-card-quantity__plus {
  border-inline-end: var(--sytec-card-quantity-divider-width, 1px) solid var(--sytec-card-quantity-divider, transparent);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated {
  min-height: var(--sytec-card-quantity-height, 40px);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated > :is(.sytec-card-quantity__control, .sytec-card-quantity__value) {
  margin: 0;
  border-radius: 0;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate {
  display: flex;
  width: var(--sytec-card-button-width, 100%);
  max-width: 100%;
  height: auto;
  padding: 0;
  margin: 0;
  gap: var(--sytec-card-quantity-button-gap, 8px);
  overflow: visible;
  align-items: center;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate > .sytec-card-quantity {
  flex: 0 1 var(--sytec-card-quantity-width, auto);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate > .sytec-card-woo-action__button {
  flex: 1 1 auto;
  width: auto;
  height: var(--sytec-card-button-height, auto);
  padding: var(--sytec-card-button-padding, 10px 16px);
  border: var(--sytec-card-button-border-width, 0) var(--sytec-card-button-border-style, solid) var(--sytec-card-button-border, transparent);
  border-radius: var(--sytec-card-button-radius, 6px);
  margin: var(--sytec-card-button-margin, 0);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--quantity-only {
  width: var(--sytec-card-quantity-width, auto);
  height: var(--sytec-card-quantity-height, 40px);
  padding: var(--sytec-card-quantity-padding, 0);
  margin: var(--sytec-card-quantity-margin, 0);
  border: var(--sytec-card-quantity-border-width, 1px) solid var(--sytec-card-quantity-border, transparent);
  border-radius: var(--sytec-card-quantity-radius, 6px);
  background: var(--sytec-card-quantity-background, transparent);
  color: var(--sytec-card-quantity-color, inherit);
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate:has(> .sytec-card-woo-action__button:hover) {
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate > .sytec-card-button--hover-lift:hover { transform: translateY(-2px); }
body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate > .sytec-card-button--hover-scale:hover { transform: scale(1.03); }
body ul.products li.product.sytec-product-card .sytec-card-woo-action--separate > .sytec-card-button--hover-translate:hover { transform: translateX(2px); }

body ul.products li.product.sytec-product-card .sytec-product-card__element > :first-child {
  margin-top: 0;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element > :last-child {
  margin-bottom: 0;
}

/* El Style Engine del Botón Woo debe ganar sobre resets de contenido y botones globales. */
body ul.products li.product.sytec-product-card .sytec-product-card__element--woo-button > .sytec-card-button--woo {
  min-height: 0;
  margin: var(--sytec-card-button-margin, 0);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--woo-button > .sytec-card-button--woo.sytec-card-button--hover-none:hover {
  transform: none;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--description .sytec-product-card__description {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--sytec-card-element-lines, initial);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--category .sytec-product-card__category {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--sytec-card-element-lines, initial);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating {
  display: flex;
  align-items: center;
  gap: var(--sytec-card-rating-gap, 6px);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating .star-rating {
  margin: 0;
  color: var(--sytec-card-rating-star-color, currentColor);
  font-size: var(--sytec-card-rating-star-size, 14px);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating .sytec-product-card__review-count {
  color: var(--sytec-card-rating-text-color, inherit);
  font-size: var(--sytec-card-rating-text-size, 12px);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price .sytec-product-card__pricing,
body ul.products li.product.sytec-product-card .sytec-product-card__element--price .price {
  display: flex;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: var(--sytec-card-price-justify, var(--sytec-card-column-horizontal, flex-start));
  gap: var(--sytec-card-price-gap, 0);
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-align: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price {
  min-width: 0;
  max-width: 100%;
  padding: var(--sytec-card-price-padding, 0);
  margin: var(--sytec-card-price-margin, 0);
  box-sizing: border-box;
  align-self: var(--sytec-card-price-align-self, auto);
  background: var(--sytec-card-price-background, transparent);
  color: var(--sytec-card-price-color, inherit);
  font-size: var(--sytec-card-price-font-size, inherit);
  font-weight: var(--sytec-card-price-font-weight, inherit);
  line-height: var(--sytec-card-price-line-height, inherit);
  text-align: var(--sytec-card-price-text-align, inherit);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price .sytec-product-card__pricing .price,
body ul.products li.product.sytec-product-card .sytec-product-card__element--price .sytec-product-card__pricing .price :is(
  .woocommerce-Price-amount,
  .woocommerce-Price-currencySymbol,
  ins,
  del
) {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price del {
  text-decoration: line-through;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price ins {
  text-decoration: none;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--shortcode,
body ul.products li.product.sytec-product-card .sytec-product-card__element--shortcode > * {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

/*
 * Contrato visual de los elementos internos de Product Card.
 * La variable de la instancia gana al preset; el preset cae en los tokens del
 * Theme Base y, si tampoco existen, conserva la herencia natural.
 */
body ul.products li.product.sytec-product-card {
  --sytec-card-theme-text-color: var(--sytec-body-color, var(--sytec-color-text, inherit));
  --sytec-card-theme-muted-color: var(--sytec-color-muted, var(--sytec-card-theme-text-color));
  --sytec-card-theme-heading-color: var(--sytec-h3-color, var(--sytec-color-primary, var(--sytec-card-theme-text-color)));
  --sytec-card-theme-accent-color: var(--sytec-color-accent, var(--sytec-card-theme-text-color));
  --sytec-card-theme-body-family: var(--sytec-body-font-family, inherit);
  --sytec-card-theme-body-size: var(--sytec-body-font-size, inherit);
  --sytec-card-theme-body-weight: var(--sytec-body-font-weight, inherit);
  --sytec-card-theme-body-line-height: var(--sytec-body-line-height, inherit);
  --sytec-card-theme-heading-family: var(--sytec-h3-font-family, var(--sytec-card-theme-body-family));
  --sytec-card-theme-heading-size: var(--sytec-h3-font-size, var(--sytec-card-theme-body-size));
  --sytec-card-theme-heading-weight: var(--sytec-h3-font-weight, var(--sytec-card-theme-body-weight));
  --sytec-card-theme-heading-line-height: var(--sytec-h3-line-height, var(--sytec-card-theme-body-line-height));
}

body ul.products li.product.sytec-product-card--commercial {
  --sytec-card-preset-title-size: 1rem;
  --sytec-card-preset-title-weight: 600;
  --sytec-card-preset-title-line-height: 1.35;
  --sytec-card-preset-price-size: 1.3rem;
  --sytec-card-preset-price-weight: 750;
  --sytec-card-preset-price-del-color: var(--sytec-card-theme-muted-color);
  --sytec-card-preset-price-del-size: .75em;
  --sytec-card-preset-price-del-weight: 500;
}

body ul.products li.product.sytec-product-card--editorial {
  --sytec-card-preset-title-size: .95rem;
  --sytec-card-preset-title-weight: 500;
  --sytec-card-preset-title-line-height: 1.35;
  --sytec-card-preset-price-size: 1.15rem;
  --sytec-card-preset-price-weight: 600;
  --sytec-card-preset-price-line-height: 1.2;
  --sytec-card-preset-price-del-color: var(--sytec-card-theme-muted-color);
  --sytec-card-preset-price-del-size: .75em;
  --sytec-card-preset-price-del-weight: 400;
  --sytec-card-preset-rating-color: var(--sytec-card-theme-accent-color);
  --sytec-card-preset-rating-size: .8rem;
}

body ul.products li.product.sytec-product-card--food_inline {
  --sytec-card-preset-title-size: 1rem;
  --sytec-card-preset-title-weight: 700;
  --sytec-card-preset-title-line-height: 1.35;
  --sytec-card-preset-description-color: var(--sytec-card-theme-muted-color);
  --sytec-card-preset-description-size: .82rem;
  --sytec-card-preset-description-line-height: 1.35;
  --sytec-card-preset-price-size: 1rem;
  --sytec-card-preset-price-weight: 700;
}

body ul.products li.product.sytec-product-card--food {
  --sytec-card-preset-title-size: 1rem;
  --sytec-card-preset-title-weight: 500;
  --sytec-card-preset-title-line-height: 1.35;
}

body ul.products li.product.sytec-product-card--minimal {
  --sytec-card-preset-title-weight: 600;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--title {
  color: var(--sytec-card-element-color, var(--sytec-card-preset-title-color, var(--sytec-card-theme-heading-color)));
  font-family: var(--sytec-card-preset-title-family, var(--sytec-card-theme-heading-family));
  font-size: var(--sytec-card-element-font-size, var(--sytec-card-preset-title-size, var(--sytec-card-theme-heading-size)));
  font-weight: var(--sytec-card-element-font-weight, var(--sytec-card-preset-title-weight, var(--sytec-card-theme-heading-weight)));
  line-height: var(--sytec-card-element-line-height, var(--sytec-card-preset-title-line-height, var(--sytec-card-theme-heading-line-height)));
}

body ul.products li.product.sytec-product-card :is(
  .sytec-product-card__element--category,
  .sytec-product-card__element--description,
  .sytec-product-card__element--stock,
  .sytec-product-card__element--favorite,
  .sytec-product-card__element--quick_view,
  .sytec-product-card__element--shortcode
) {
  color: var(--sytec-card-element-color, var(--sytec-card-preset-element-color, var(--sytec-card-theme-text-color)));
  font-family: var(--sytec-card-theme-body-family);
  font-size: var(--sytec-card-element-font-size, var(--sytec-card-preset-element-size, var(--sytec-card-theme-body-size)));
  font-weight: var(--sytec-card-element-font-weight, var(--sytec-card-preset-element-weight, var(--sytec-card-theme-body-weight)));
  line-height: var(--sytec-card-element-line-height, var(--sytec-card-preset-element-line-height, var(--sytec-card-theme-body-line-height)));
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--description {
  color: var(--sytec-card-element-color, var(--sytec-card-preset-description-color, var(--sytec-card-theme-muted-color)));
  font-size: var(--sytec-card-element-font-size, var(--sytec-card-preset-description-size, var(--sytec-card-theme-body-size)));
  line-height: var(--sytec-card-element-line-height, var(--sytec-card-preset-description-line-height, var(--sytec-card-theme-body-line-height)));
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating {
  color: var(--sytec-card-element-color, var(--sytec-card-preset-rating-color, var(--sytec-card-theme-accent-color)));
  font-family: var(--sytec-card-theme-body-family);
  font-size: var(--sytec-card-element-font-size, var(--sytec-card-preset-rating-size, var(--sytec-card-theme-body-size)));
  font-weight: var(--sytec-card-element-font-weight, var(--sytec-card-theme-body-weight));
  line-height: var(--sytec-card-element-line-height, var(--sytec-card-theme-body-line-height));
  justify-content: var(--sytec-card-element-justify, var(--sytec-card-column-horizontal, flex-start));
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating .star-rating {
  color: var(--sytec-card-rating-star-color, currentColor);
  font-size: var(--sytec-card-rating-star-size, inherit);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--rating .sytec-product-card__review-count {
  color: var(--sytec-card-rating-text-color, var(--sytec-card-theme-muted-color));
  font-size: var(--sytec-card-rating-text-size, inherit);
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price {
  color: var(--sytec-card-price-color, var(--sytec-card-element-color, var(--sytec-card-preset-price-color, var(--sytec-card-theme-accent-color))));
  font-family: var(--sytec-card-theme-body-family);
  font-size: var(--sytec-card-price-font-size, var(--sytec-card-element-font-size, var(--sytec-card-preset-price-size, var(--sytec-card-theme-body-size))));
  font-weight: var(--sytec-card-price-font-weight, var(--sytec-card-element-font-weight, var(--sytec-card-preset-price-weight, var(--sytec-card-theme-body-weight))));
  line-height: var(--sytec-card-price-line-height, var(--sytec-card-element-line-height, var(--sytec-card-preset-price-line-height, var(--sytec-card-theme-body-line-height))));
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price :is(.price, .woocommerce-Price-amount, .woocommerce-Price-currencySymbol, ins, del),
body ul.products li.product.sytec-product-card .sytec-product-card__element--title :is(a, .woocommerce-loop-product__title),
body ul.products li.product.sytec-product-card .sytec-product-card__element--description .sytec-product-card__description,
body ul.products li.product.sytec-product-card .sytec-product-card__element--category .sytec-product-card__category,
body ul.products li.product.sytec-product-card .sytec-product-card__element--stock :is(.stock, .sytec-product-card__stock-quantity) {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  text-align: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--price del {
  color: var(--sytec-card-price-color, var(--sytec-card-element-color, var(--sytec-card-preset-price-del-color, inherit)));
  font-size: var(--sytec-card-price-font-size, var(--sytec-card-element-font-size, var(--sytec-card-preset-price-del-size, inherit)));
  font-weight: var(--sytec-card-price-font-weight, var(--sytec-card-element-font-weight, var(--sytec-card-preset-price-del-weight, inherit)));
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--quick_view .sytec-product-card__quick-view-trigger {
  width: 100%;
  min-height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: inherit;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  text-align: inherit;
  text-transform: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--favorite :is(a, button) {
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--favorite svg {
  color: inherit;
}

body ul.products li.product.sytec-product-card .sytec-product-card__element--woo-button .added_to_cart.wc-forward {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button--woo.is-sytec-added::after {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button--woo.is-sytec-added[data-sytec-button-presentation="icon"] .sytec-card-button__icon-wrap,
body ul.products li.product.sytec-product-card .sytec-card-button--woo.is-sytec-added[data-sytec-button-presentation="icon-text"] .sytec-card-button__icon-wrap {
  display: none;
}

body ul.products li.product.sytec-product-card .sytec-card-button__success-mark {
  display: inline-flex;
  width: var(--sytec-card-button-icon-size, 25px);
  height: var(--sytec-card-button-icon-size, 25px);
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  color: var(--sytec-card-button-icon, currentColor);
  font-size: var(--sytec-card-button-icon-size, 25px);
  line-height: 1;
}

body ul.products li.product.sytec-product-card .sytec-card-button--woo.is-sytec-added[data-sytec-button-presentation="image"] .sytec-card-button__content {
  position: relative;
}

body ul.products li.product.sytec-product-card .sytec-card-button--woo.is-sytec-added[data-sytec-button-presentation="image"] .sytec-card-button__success-mark {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
}

body ul.products li.product.sytec-product-card .sytec-product-card__element :is(img, video, iframe, table, input, select, textarea, button) {
  max-width: 100%;
}

body ul.products li.product.sytec-product-card--horizontal {
  grid-template-columns: minmax(0, var(--sytec-product-card-media-width, 35%)) minmax(0, 1fr);
  grid-template-areas: "media body";
}

body ul.products li.product.sytec-product-card--horizontal.sytec-product-card--media-right {
  grid-template-columns: minmax(0, 1fr) minmax(0, var(--sytec-product-card-media-width, 35%));
  grid-template-areas: "body media";
}

body ul.products li.product.sytec-product-card--horizontal .sytec-product-card__media {
  width: 100%;
  height: 100%;
  min-height: 0;
  align-self: stretch;
  aspect-ratio: auto;
}

body ul.products li.product.sytec-product-card--horizontal .sytec-product-card__media > a,
body ul.products li.product.sytec-product-card--horizontal .sytec-product-card__media img {
  width: 100%;
  height: 100%;
}

@media (min-width: 1025px) {
  body ul.products li.product.sytec-product-card--vertical .sytec-product-card__media {
    height: auto;
  }

  body ul.products li.product.sytec-product-card--food_inline.sytec-product-card--vertical .sytec-product-card__media {
    min-height: 0;
  }

  body ul.products li.product.sytec-product-card--vertical .sytec-product-card__media > a {
    display: block;
    position: relative;
    height: auto;
  }

  body ul.products li.product.sytec-product-card--vertical .sytec-product-card__media > a > img:first-child:not(.sytec-product-card__second-image) {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
  }
}

@media (max-width: 1024px) {
	body ul.products li.product.sytec-product-card .sytec-card-button {
		width: var(--sytec-card-button-tablet-width, var(--sytec-card-button-width, auto));
		padding: var(--sytec-card-button-tablet-padding, var(--sytec-card-button-padding, 10px 16px));
		font-size: var(--sytec-card-button-tablet-font-size, var(--sytec-card-button-font-size, 14px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action-group {
		width: var(--sytec-card-button-tablet-width, var(--sytec-card-button-width, auto));
		font-size: var(--sytec-card-button-tablet-font-size, var(--sytec-card-button-font-size, 14px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__action {
		width: auto;
		padding: var(--sytec-card-button-tablet-padding, var(--sytec-card-button-padding, 10px 16px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-quantity,
	body ul.products li.product.sytec-product-card .sytec-card-woo-action--quantity-only {
		width: var(--sytec-card-quantity-tablet-width, var(--sytec-card-quantity-width, auto));
		height: var(--sytec-card-quantity-tablet-height, var(--sytec-card-quantity-height, 40px));
		padding: var(--sytec-card-quantity-tablet-padding, var(--sytec-card-quantity-padding, 0));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated { min-height: var(--sytec-card-quantity-tablet-height, var(--sytec-card-quantity-height, 40px)); }
	body ul.products li.product.sytec-product-card .sytec-card-quantity__control {
		flex-basis: var(--sytec-card-quantity-tablet-control-width, var(--sytec-card-quantity-control-width, 36px));
		width: var(--sytec-card-quantity-tablet-control-width, var(--sytec-card-quantity-control-width, 36px));
		font-size: var(--sytec-card-quantity-tablet-control-font-size, var(--sytec-card-quantity-control-font-size, 18px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-quantity__value { font-size: var(--sytec-card-quantity-tablet-value-font-size, var(--sytec-card-quantity-value-font-size, 14px)); }
	body ul.products li.product.sytec-product-card .sytec-card-button__icon { width: var(--sytec-card-button-tablet-icon-size, var(--sytec-card-button-icon-size, 25px)); height: var(--sytec-card-button-tablet-icon-size, var(--sytec-card-button-icon-size, 25px)); }
	body ul.products li.product.sytec-product-card .sytec-card-button__images { width: var(--sytec-card-button-tablet-image-size, var(--sytec-card-button-image-width, 25px)); height: var(--sytec-card-button-tablet-image-size, var(--sytec-card-button-image-height, 25px)); }
	body ul.products li.product.sytec-product-card :is(.sytec-product-card__content-primary, .sytec-product-card__content-cta) {
		padding: var(--sytec-card-box-tablet-padding, 0);
		flex-direction: var(--sytec-card-box-tablet-direction, column);
		align-items: var(--sytec-card-box-tablet-align, stretch);
		justify-content: var(--sytec-card-box-tablet-justify, flex-start);
		gap: var(--sytec-card-box-tablet-gap, 0);
	}

	body ul.products li.product.sytec-product-card .sytec-product-card__row {
		grid-template-columns: var(--sytec-card-row-tablet-columns, minmax(0, 1fr));
	}

  body ul.products li.product.sytec-product-card--tablet-horizontal {
    grid-template-columns: minmax(0, var(--sytec-product-card-media-width, 35%)) minmax(0, 1fr);
    grid-template-areas: "media body";
  }

  body ul.products li.product.sytec-product-card--tablet-horizontal.sytec-product-card--media-right {
    grid-template-columns: minmax(0, 1fr) minmax(0, var(--sytec-product-card-media-width, 35%));
    grid-template-areas: "body media";
  }

  body ul.products li.product.sytec-product-card--tablet-horizontal .sytec-product-card__media {
    width: 100%;
    height: 100%;
    min-height: 0;
    align-self: stretch;
    aspect-ratio: auto;
  }

  body ul.products li.product.sytec-product-card--tablet-horizontal .sytec-product-card__media > a,
  body ul.products li.product.sytec-product-card--tablet-horizontal .sytec-product-card__media img {
    width: 100%;
    height: 100%;
  }

  body ul.products li.product.sytec-product-card--tablet-vertical {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "media"
      "body";
  }

  body ul.products li.product.sytec-product-card--tablet-vertical .sytec-product-card__media {
    width: 100%;
    height: auto;
    align-self: auto;
    aspect-ratio: var(--sytec-product-image-ratio);
  }

}

@media (min-width: 768px) and (max-width: 1024px) {
  body ul.products li.product.sytec-product-card--food_inline.sytec-product-card--tablet-vertical .sytec-product-card__media {
    min-height: 0;
  }

  body ul.products li.product.sytec-product-card--tablet-vertical .sytec-product-card__media > a {
    display: block;
    position: relative;
    height: auto;
  }

  body ul.products li.product.sytec-product-card--tablet-vertical .sytec-product-card__media > a > img:first-child:not(.sytec-product-card__second-image) {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
  }
}

@media (max-width: 767px) {
	body ul.products li.product.sytec-product-card .sytec-card-button {
		width: var(--sytec-card-button-mobile-width, var(--sytec-card-button-width, auto));
		padding: var(--sytec-card-button-mobile-padding, var(--sytec-card-button-padding, 10px 16px));
		font-size: var(--sytec-card-button-mobile-font-size, var(--sytec-card-button-font-size, 14px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action-group {
		width: var(--sytec-card-button-mobile-width, var(--sytec-card-button-width, auto));
		font-size: var(--sytec-card-button-mobile-font-size, var(--sytec-card-button-font-size, 14px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action-group > .sytec-card-woo-action-group__action {
		width: auto;
		padding: var(--sytec-card-button-mobile-padding, var(--sytec-card-button-padding, 10px 16px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-quantity,
	body ul.products li.product.sytec-product-card .sytec-card-woo-action--quantity-only {
		width: var(--sytec-card-quantity-mobile-width, var(--sytec-card-quantity-width, auto));
		height: var(--sytec-card-quantity-mobile-height, var(--sytec-card-quantity-height, 40px));
		padding: var(--sytec-card-quantity-mobile-padding, var(--sytec-card-quantity-padding, 0));
	}
	body ul.products li.product.sytec-product-card .sytec-card-woo-action--integrated { min-height: var(--sytec-card-quantity-mobile-height, var(--sytec-card-quantity-height, 40px)); }
	body ul.products li.product.sytec-product-card .sytec-card-quantity__control {
		flex-basis: var(--sytec-card-quantity-mobile-control-width, var(--sytec-card-quantity-control-width, 36px));
		width: var(--sytec-card-quantity-mobile-control-width, var(--sytec-card-quantity-control-width, 36px));
		font-size: var(--sytec-card-quantity-mobile-control-font-size, var(--sytec-card-quantity-control-font-size, 18px));
	}
	body ul.products li.product.sytec-product-card .sytec-card-quantity__value { font-size: var(--sytec-card-quantity-mobile-value-font-size, var(--sytec-card-quantity-value-font-size, 14px)); }
	body ul.products li.product.sytec-product-card .sytec-card-button__icon { width: var(--sytec-card-button-mobile-icon-size, var(--sytec-card-button-icon-size, 25px)); height: var(--sytec-card-button-mobile-icon-size, var(--sytec-card-button-icon-size, 25px)); }
	body ul.products li.product.sytec-product-card .sytec-card-button__images { width: var(--sytec-card-button-mobile-image-size, var(--sytec-card-button-image-width, 25px)); height: var(--sytec-card-button-mobile-image-size, var(--sytec-card-button-image-height, 25px)); }
	body ul.products li.product.sytec-product-card :is(.sytec-product-card__content-primary, .sytec-product-card__content-cta) {
		padding: var(--sytec-card-box-mobile-padding, 0);
		flex-direction: var(--sytec-card-box-mobile-direction, column);
		align-items: var(--sytec-card-box-mobile-align, stretch);
		justify-content: var(--sytec-card-box-mobile-justify, flex-start);
		gap: var(--sytec-card-box-mobile-gap, 0);
	}

	body ul.products li.product.sytec-product-card .sytec-product-card__row {
		grid-template-columns: var(--sytec-card-row-mobile-columns, minmax(0, 1fr));
	}

body ul.products li.product.sytec-product-card--mobile-horizontal {
	grid-template-columns:
		minmax(0, var(--sytec-product-card-media-width, 35%))
		minmax(0, 1fr);

	grid-template-areas: "media body";
}

body ul.products li.product.sytec-product-card--mobile-horizontal.sytec-product-card--media-right {
	grid-template-columns:
		minmax(0, 1fr)
		minmax(0, var(--sytec-product-card-media-width, 35%));

	grid-template-areas: "body media";
}


/*
 * IMPORTANTE:
 * La media mantiene su ancho,
 * pero deja de crecer verticalmente con la card.
 */
body ul.products li.product.sytec-product-card--mobile-horizontal .sytec-product-card__media {
	width: 100%;

	height: auto;
	min-height: 0;

	align-self: start;

	aspect-ratio: 1 / 1;

	overflow: hidden;
}


/*
 * El enlace ocupa solamente la caja de media.
 */
body ul.products li.product.sytec-product-card--mobile-horizontal .sytec-product-card__media > a {
	display: flex;

	align-items: center;
	justify-content: center;

	width: 100%;
	height: 100%;
}


/*
 * La imagen se adapta dentro de la caja,
 * pero nunca toma la altura completa de la card.
 */
body ul.products li.product.sytec-product-card--mobile-horizontal .sytec-product-card__media img {
	display: block;

	width: 100%;
	height: 100%;

	max-width: 100%;
	max-height: 100%;

	object-fit: contain;
	object-position: center;
}

  body ul.products li.product.sytec-product-card--mobile-vertical {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "media"
      "body";
  }

  body ul.products li.product.sytec-product-card--mobile-vertical .sytec-product-card__media {
    width: 100%;
    height: auto;
    align-self: auto;
    aspect-ratio: var(--sytec-product-image-ratio);
  }

  body ul.products li.product.sytec-product-card--food_inline.sytec-product-card--mobile-vertical .sytec-product-card__media {
    min-height: 0;
  }

  body ul.products li.product.sytec-product-card--mobile-vertical .sytec-product-card__media > a {
    display: block;
    position: relative;
    height: auto;
  }

  body ul.products li.product.sytec-product-card--mobile-vertical .sytec-product-card__media > a > img:first-child:not(.sytec-product-card__second-image) {
    display: block;
    position: relative;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
  }
}

.sytec-product-card-compact ul.products li.product {
  --sytec-product-card-padding: 10px;
}

.sytec-quick-view {
  width: min(920px, calc(100% - 32px));
  max-height: calc(100vh - 32px);
  padding: 0;
  overflow: auto;
  border: 0;
  border-radius: var(--sytec-radius-large, 16px);
  background: var(--sytec-color-secondary, #fff);
  color: var(--sytec-color-text, inherit);
}

.sytec-quick-view::backdrop {
  background: rgba(15, 23, 42, 0.62);
}

.sytec-quick-view__panel {
  position: relative;
  padding: clamp(20px, 4vw, 40px);
}

.sytec-quick-view__close {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 10px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font-size: 28px;
  line-height: 1;
}

.sytec-quick-view__product {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr);
  gap: clamp(20px, 4vw, 40px);
}

.sytec-quick-view__media,
.sytec-quick-view__summary {
  min-width: 0;
  max-width: 100%;
}

.sytec-quick-view__media img {
  width: 100%;
  height: auto;
}

@media (max-width: 700px) {
  .sytec-quick-view__product {
    grid-template-columns: minmax(0, 1fr);
  }
}

body ul.products li.product.sytec-product-card--no-border {
  border-color: transparent;
}

body ul.products li.product.sytec-product-card--no-shadow {
  box-shadow: none;
}

body ul.products li.product.sytec-product-card--equal {
  height: 100%;
}

@media (max-width: 767px) {
  .sytec-template-grid,
  .sytec-template-blog-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.sytec-card-hover-lift ul.products li.product {
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.sytec-card-hover-lift ul.products li.product:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.12);
}

ul.products li.product img {
  aspect-ratio: var(--sytec-product-image-ratio);
  object-fit: cover;
}

.sytec-product-card__second-image {
  position: absolute;
  z-index: 1;
  top: var(--sytec-product-card-padding);
  left: var(--sytec-product-card-padding);
  width: calc(100% - (var(--sytec-product-card-padding) * 2));
  opacity: 0;
  transition: opacity 180ms ease;
}

li.product:hover .sytec-product-card__second-image {
  opacity: 1;
}

.sytec-product-hide-categories .product_meta .posted_in,
.sytec-product-hide-stock div.product .stock {
  display: none;
}

.sytec-card-object-contain ul.products li.product img {
  object-fit: contain;
}

.sytec-single-product-sticky .product .summary,
.sytec-cart-sticky .cart-collaterals,
.sytec-checkout-sticky #order_review {
  position: sticky;
  top: calc(var(--sytec-header-height, 78px) + 24px);
  align-self: start;
}

.sytec-template-single_product div.product div.images {
  width: var(--sytec-product-gallery-width);
}

.sytec-template-single_product div.product div.summary {
  width: calc(96% - var(--sytec-product-gallery-width));
}

.sytec-account-side .woocommerce {
  display: grid;
  grid-template-columns: clamp(240px, var(--sytec-account-menu-width), 280px) minmax(0, 1fr);
  gap: var(--sytec-template-gap);
  align-items: start;
}

.sytec-account-top .woocommerce-MyAccount-navigation {
  grid-column: 1 / -1;
}

.sytec-account-top .woocommerce {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.sytec-checkout-one_column form.checkout {
  display: block;
}

.sytec-checkout-trust {
  padding: 14px 18px;
  border: 1px solid #bbf7d0;
  border-radius: var(--sytec-radius-medium);
  color: #166534;
  background: #f0fdf4;
}

.sytec-checkout-steps {
  display: grid;
  padding: 0;
  margin: 0 0 28px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  list-style: none;
  counter-reset: checkout-step;
}

.sytec-checkout-steps li {
  padding: 10px 14px;
  border-radius: var(--sytec-radius-medium);
  color: #64748b;
  background: #f1f5f9;
}

.sytec-checkout-steps li.is-current {
  color: #fff;
  background: var(--sytec-color-accent);
}

.woocommerce form .form-row.woocommerce-invalid input.input-text {
  border-color: var(--sytec-checkout-validation);
}

.sytec-account-intro {
  display: flex;
  min-width: 0;
  margin: 0;
  gap: 12px;
  align-items: center;
}

.sytec-account-intro img {
  border-radius: 50%;
}

.sytec-account-help {
  padding: 14px 18px;
  margin-top: 24px;
  border-radius: var(--sytec-radius-medium);
  background: #f1f5f9;
}

/* Publicación individual: conecta la plantilla estándar con su diseño resuelto. */
body.sytec-template-single_post .sytec-single-post-shell,
body.sytec-template-single_post .sytec-single-post-content,
body.sytec-template-single_post .sytec-single-post {
  min-width: 0;
  width: 100%;
}

body.sytec-template-single_post .sytec-single-post-content {
  gap: var(--sytec-single-post-section-gap);
}

body.sytec-template-single_post .sytec-single-post__header {
  width: min(100%, var(--sytec-single-post-title-max-width));
  margin-inline: auto;
}

body.sytec-template-single_post .sytec-single-post__meta .sytec-entry-meta,
body.sytec-template-single_post :is(.sytec-template-header, .sytec-template-header-below) .sytec-entry-meta {
  justify-content: var(--sytec-single-post-meta-alignment);
  gap: var(--sytec-single-post-meta-gap);
  color: var(--sytec-single-post-meta-color);
  font-size: var(--sytec-single-post-meta-size);
}

body.sytec-template-single_post .sytec-single-post__content {
  width: 100%;
  min-width: 0;
}

body.sytec-template-single_post .sytec-single-post__content > :not(.alignwide):not(.alignfull) {
  width: min(100%, var(--sytec-single-post-content-width));
  max-width: 100%;
  margin-inline: auto;
}

body.sytec-template-single_post .sytec-single-post__content > .alignwide {
  width: min(100%, var(--sytec-single-post-featured-max-width));
  max-width: 100%;
  margin-inline: auto;
}

body.sytec-template-single_post .sytec-single-post__content > .alignfull {
  width: 100%;
  max-width: 100%;
}

body.sytec-template-single_post .sytec-single-post__content img {
  max-width: 100%;
  height: auto;
}

body.sytec-template-single_post .sytec-single-post__featured-image {
  overflow: hidden;
  margin: var(--sytec-single-post-featured-margin-top) auto var(--sytec-single-post-featured-margin-bottom);
  border-radius: var(--sytec-single-post-featured-radius);
  background: var(--sytec-page-background);
}

body.sytec-template-single_post .sytec-single-post__featured-image--content {
  width: min(100%, var(--sytec-single-post-content-width));
}

body.sytec-template-single_post .sytec-single-post__featured-image--wide {
  width: min(100%, var(--sytec-single-post-featured-max-width));
}

body.sytec-template-single_post .sytec-single-post__featured-image--full {
  width: 100%;
}

body.sytec-template-single_post .sytec-single-post__featured-image:not(.sytec-single-post__featured-image--ratio-original):not(.sytec-single-post__featured-image--ratio-custom):not(.has-fixed-height) {
  aspect-ratio: var(--sytec-single-post-featured-ratio);
}

body.sytec-template-single_post .sytec-single-post__featured-image.has-fixed-height {
  height: min(var(--sytec-single-post-featured-height), 70vw);
}

body.sytec-template-single_post .sytec-single-post__featured-image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: var(--sytec-single-post-featured-fit);
  object-position: var(--sytec-single-post-featured-position);
}

body.sytec-template-single_post .sytec-single-post__featured-image.has-fixed-height img,
body.sytec-template-single_post .sytec-single-post__featured-image:not(.sytec-single-post__featured-image--ratio-original):not(.sytec-single-post__featured-image--ratio-custom):not(.has-fixed-height) img {
  height: 100%;
}

body.sytec-template-single_post .sytec-single-post__title {
  margin-top: var(--sytec-h1-margin-top);
  margin-bottom: var(--sytec-h1-margin-bottom);
  color: var(--sytec-h1-color);
  font-family: var(--sytec-h1-font-family);
  font-size: var(--sytec-h1-size-desktop);
  font-style: var(--sytec-h1-style);
  font-weight: var(--sytec-h1-weight);
  line-height: var(--sytec-h1-line-height);
  letter-spacing: var(--sytec-h1-letter-spacing);
  text-align: var(--sytec-h1-alignment);
  text-transform: var(--sytec-h1-text-transform);
}

body.sytec-template-single_post :is(.sytec-template-header, .sytec-template-header-below) h1 {
  font-family: var(--sytec-h1-font-family);
  font-size: var(--sytec-h1-size-desktop);
  font-style: var(--sytec-h1-style);
  font-weight: var(--sytec-h1-weight);
  line-height: var(--sytec-h1-line-height);
  letter-spacing: var(--sytec-h1-letter-spacing);
  text-transform: var(--sytec-h1-text-transform);
}

body.sytec-template-single_post :is(.sytec-template-header, .sytec-template-header-below) .sytec-entry-meta {
  color: var(--sytec-single-post-meta-color);
}

body.sytec-template-single_post :is(.sytec-template-header--align-center, .sytec-template-header-below--align-center) .sytec-entry-meta {
  justify-content: center;
}

body.sytec-template-single_post :is(.sytec-template-header--align-right, .sytec-template-header-below--align-right) .sytec-entry-meta {
  justify-content: flex-end;
}

body.sytec-template-single_post .sytec-single-post__footer {
  margin-top: var(--sytec-content-gap, 32px);
}

body.sytec-template-single_post .sytec-single-post__navigation {
  width: min(100%, var(--sytec-single-post-content-width));
  margin-inline: auto;
}

body.sytec-template-single_post .sytec-single-post__navigation .post-navigation {
  padding: var(--sytec-single-post-navigation-padding);
  border: 1px solid var(--sytec-single-post-navigation-border);
  border-radius: var(--sytec-single-post-navigation-radius);
  background: var(--sytec-single-post-navigation-background);
}

body.sytec-template-single_post .sytec-single-post__navigation .nav-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sytec-single-post-section-gap);
}

body.sytec-template-single_post .sytec-single-post__navigation :is(.nav-previous, .nav-next) a {
  display: flex;
  color: var(--sytec-single-post-navigation-text);
  flex-direction: column;
  gap: 0.35rem;
  text-decoration: none;
}

body.sytec-template-single_post .sytec-single-post__navigation .nav-next {
  text-align: right;
}

body.sytec-template-single_post .sytec-single-post__navigation a:hover,
body.sytec-template-single_post .sytec-single-post__navigation a:focus-visible {
  color: var(--sytec-single-post-navigation-hover);
}

body.sytec-template-single_post .sytec-single-post__navigation .nav-subtitle {
  color: var(--sytec-single-post-meta-color);
  font-size: var(--sytec-single-post-meta-size);
}

body.sytec-template-single_post .sytec-single-post__navigation .nav-title {
  font-weight: 700;
}

body.sytec-template-single_post .sytec-single-post__comments {
  box-sizing: border-box;
  width: min(100%, var(--sytec-single-post-comments-max-width));
  margin-inline: auto;
  padding: clamp(20px, 4vw, 40px);
  border-radius: var(--sytec-page-radius);
  background: var(--sytec-single-post-comments-background);
  color: var(--sytec-single-post-comments-text);
}

body.sytec-template-single_post .sytec-single-post__comments .sytec-comments {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

body.sytec-template-single_post .sytec-single-post__comments :is(label, .comment-notes) {
  color: var(--sytec-single-post-comments-label);
}

body.sytec-template-single_post .sytec-single-post__comments :is(input:not([type="submit"]):not([type="checkbox"]), textarea, select) {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  border-color: var(--sytec-single-post-comments-field-border);
  border-radius: var(--sytec-single-post-comments-field-radius);
  background: var(--sytec-single-post-comments-field-background);
  color: var(--sytec-single-post-comments-field-text);
}

body.sytec-template-single_post .sytec-single-post__comments .form-submit input[type="submit"] {
  border-color: var(--sytec-single-post-comments-button-background);
  background: var(--sytec-single-post-comments-button-background);
  color: var(--sytec-single-post-comments-button-text);
}

body.sytec-template-single_post .sytec-single-post__comments .form-submit input[type="submit"]:hover,
body.sytec-template-single_post .sytec-single-post__comments .form-submit input[type="submit"]:focus-visible {
  border-color: var(--sytec-single-post-comments-button-hover-background);
  background: var(--sytec-single-post-comments-button-hover-background);
  color: var(--sytec-single-post-comments-button-hover-text);
}

body.sytec-template-single_post .sytec-single-post__minimal-layout,
body.sytec-template-single_post .sytec-single-post__compact-layout,
body.sytec-template-single_post .sytec-single-post__editorial-lead,
body.sytec-template-single_post .sytec-single-post__editorial-body,
body.sytec-template-single_post .sytec-single-post__centered-lead,
body.sytec-template-single_post .sytec-single-post__centered-body,
body.sytec-template-single_post .sytec-single-post__columns,
body.sytec-template-single_post .sytec-single-post__column-main,
body.sytec-template-single_post .sytec-single-post__column-secondary,
body.sytec-template-single_post .sytec-single-post__one-column {
  min-width: 0;
}

body.sytec-template-single_post .sytec-single-post__minimal-layout .sytec-single-post__header {
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--sytec-page-border-color, #e5e7eb);
}

body.sytec-template-single_post .sytec-single-post__minimal-layout .sytec-single-post__featured-image {
  border-radius: 0;
}

body.sytec-template-single_post .sytec-single-post__editorial-lead {
  padding-bottom: clamp(24px, 4vw, 48px);
  border-bottom: 1px solid var(--sytec-page-border-color, #e5e7eb);
}

body.sytec-template-single_post .sytec-single-post__editorial-lead .sytec-single-post__header {
  padding-inline-start: clamp(18px, 3vw, 36px);
  border-inline-start: 4px solid var(--sytec-color-accent, #2563eb);
}

body.sytec-template-single_post .sytec-single-post__editorial-lead .sytec-single-post__title {
  max-width: 20ch;
}

body.sytec-template-single_post .sytec-single-post__editorial-lead .sytec-single-post__featured-image {
  max-width: min(100%, var(--sytec-single-post-featured-max-width));
}

body.sytec-template-single_post .sytec-single-post__editorial-body {
  max-width: min(100%, var(--sytec-single-post-content-width));
  margin-inline: auto;
  padding-top: clamp(24px, 4vw, 48px);
}

body.sytec-template-single_post .sytec-single-post__compact-layout {
  max-width: min(100%, var(--sytec-single-post-content-width));
}

body.sytec-template-single_post .sytec-single-post__compact-layout .sytec-single-post__header {
  margin-bottom: 1.25rem;
}

body.sytec-template-single_post .sytec-single-post__compact-layout .sytec-single-post__featured-image {
  margin-bottom: 1rem;
}

body.sytec-template-single_post .sytec-single-post__centered-lead,
body.sytec-template-single_post .sytec-single-post__centered-body,
body.sytec-template-single_post .sytec-single-post__centered-lead .sytec-single-post__header,
body.sytec-template-single_post .sytec-single-post__centered-body .sytec-single-post__footer {
  text-align: center;
}

body.sytec-template-single_post .sytec-single-post__centered-lead .sytec-entry-meta {
  justify-content: center;
}

body.sytec-template-single_post .sytec-single-post__centered-lead .sytec-single-post__title {
  margin-inline: auto;
  text-align: center;
}

body.sytec-template-single_post .sytec-single-post__centered-body,
body.sytec-template-single_post .sytec-single-post__one-column {
  max-width: min(100%, var(--sytec-single-post-content-width));
  margin-inline: auto;
}

@media (min-width: 900px) {
  body.sytec-template-single_post .sytec-single-post__columns.has-featured-image {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
    column-gap: var(--sytec-page-column-gap, var(--sytec-page-gap, 48px));
    align-items: start;
  }

  body.sytec-template-single_post .sytec-single-post__column-secondary .sytec-single-post__featured-image {
    margin: 0;
  }
}

@media (max-width: 1024px) {
  body.sytec-template-single_post .sytec-single-post__title,
  body.sytec-template-single_post :is(.sytec-template-header, .sytec-template-header-below) h1 {
    font-size: var(--sytec-h1-size-tablet);
  }
}

@media (max-width: 767px) {
  .sytec-template-header {
    min-height: var(--sytec-page-header-height-mobile);
    background-image: var(--sytec-page-header-image-mobile, var(--sytec-page-header-image, none));
  }

  .sytec-template-grid,
  .sytec-template-blog-grid,
  .sytec-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.sytec-template-blog.sytec-template-display-list .sytec-entry-card {
    grid-template-columns: minmax(0, 1fr);
  }

  body.sytec-template-blog.sytec-template-display-list .sytec-entry-card__media {
    aspect-ratio: 16 / 10;
  }

  body.sytec-template-blog.sytec-template-display-masonry .sytec-template-blog-grid {
    column-count: 1;
  }

  .sytec-account-side .woocommerce {
    grid-template-columns: minmax(0, 1fr);
  }

  .sytec-single-product-sticky .product .summary,
  .sytec-cart-sticky .cart-collaterals,
  .sytec-checkout-sticky #order_review {
    position: static;
  }

  .sytec-template-single_product div.product div.images,
  .sytec-template-single_product div.product div.summary {
    width: 100%;
  }

  body.sytec-template-single_post .sytec-single-post__title,
  body.sytec-template-single_post :is(.sytec-template-header, .sytec-template-header-below) h1 {
    font-size: var(--sytec-h1-size-mobile);
  }

  body.sytec-template-single_post .sytec-single-post__navigation .nav-links {
    grid-template-columns: minmax(0, 1fr);
  }

  body.sytec-template-single_post .sytec-single-post__navigation .nav-next {
    text-align: left;
  }

  body.sytec-template-single_post .sytec-single-post__editorial-lead .sytec-single-post__featured-image {
    width: 100%;
  }
}
