/** Shopify CDN: Minification failed

Line 88:13 Expected identifier but found whitespace
Line 88:14 Unexpected "linear-gradient("

**/
:root {
  --th-bg: #f7f4ef;
  --th-surface: #ffffff;
  --th-text: #1e1e1b;
  --th-muted: #6a6a63;
  --th-line: rgba(30, 30, 27, 0.10);
  --th-accent: #b48a5a;
  --th-radius-lg: 28px;
  --th-radius-md: 18px;
  --th-shadow: 0 10px 30px rgba(18, 18, 18, 0.06);
  --th-max: 1360px;
}

.th-section {
  padding: 72px 20px;
}

.th-container {
  max-width: var(--th-max);
  margin: 0 auto;
}

.th-eyebrow {
  margin: 0 0 10px;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--th-muted);
}

.th-title {
  margin: 0;
  font-size: clamp(34px, 4vw, 60px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  color: var(--th-text);
}

.th-text {
  color: var(--th-muted);
  font-size: 16px;
  line-height: 1.7;
}

.th-btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.th-btn,
.th-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
  transition: transform 0.22s ease, opacity 0.22s ease;
}

.th-btn {
  background: var(--th-text);
  color: #fff;
}

.th-btn-secondary {
  background: transparent;
  color: var(--th-text);
  border: 1px solid var(--th-line);
}

.th-btn:hover,
.th-btn-secondary:hover {
  transform: translateY(-1px);
  opacity: 0.95;
}

  background: linear-gradient(180deg, #f8f5ef 0%, #ffffff 100%);
}
.th-badge {
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,0.82);
  backdrop-filter: blur(8px);
  color: var(--th-text);
  font-size: 13px;
  border: 1px solid rgba(0,0,0,0.05);
}

.th-trust-wrap {
  padding: 0 20px 28px;
}

.th-trust-bar {
  max-width: var(--th-max);
  margin: -20px auto 0;
  background: rgba(255,255,255,0.92);
  border: 1px solid var(--th-line);
  border-radius: 22px;
  box-shadow: var(--th-shadow);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
}

.th-trust-item {
  padding: 22px 18px;
  border-right: 1px solid var(--th-line);
}

.th-trust-item:last-child {
  border-right: 0;
}

.th-trust-title {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
  color: var(--th-text);
}

.th-trust-copy {
  margin: 0;
  color: var(--th-muted);
  font-size: 14px;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .th-trust-bar {
    grid-template-columns: repeat(2, 1fr);
  }

  .th-trust-item:nth-child(2) {
    border-right: 0;
  }

  .th-trust-item:nth-child(-n+2) {
    border-bottom: 1px solid var(--th-line);
  }
}

@media (max-width: 768px) {
  .th-section {
    padding: 50px 16px;
  }

  .th-trust-bar {
    grid-template-columns: 1fr;
  }

  .th-trust-item,
  .th-trust-item:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid var(--th-line);
  }

  .th-trust-item:last-child {
    border-bottom: 0;
  }
}
.th-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}

.th-category-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.th-cat-card {
  position: relative;
  min-height: 350px;
  border-radius: 24px;
  overflow: hidden;
  text-decoration: none;
  color: #fff;
  box-shadow: var(--th-shadow);
}

.th-cat-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.th-cat-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.06) 0%, rgba(0,0,0,0.45) 100%);
}

.th-cat-content {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 2;
}

.th-cat-title {
  margin: 0;
  font-size: 28px;
  line-height: 1.05;
}

.th-cat-sub {
  margin: 8px 0 0;
  font-size: 14px;
  opacity: 0.92;
}

.th-featured-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.th-product-card {
  background: var(--th-surface);
  border: 1px solid var(--th-line);
  border-radius: 24px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 6px 18px rgba(18,18,18,0.03);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.th-product-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(18,18,18,0.07);
}

.th-product-media {
  aspect-ratio: 1 / 1;
  background: #f7f5f1;
}

.th-product-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.th-product-body {
  padding: 18px;
}

.th-product-title {
  margin: 0 0 10px;
  color: var(--th-text);
  font-size: 16px;
  line-height: 1.4;
}

.th-product-price {
  color: var(--th-text);
  font-size: 18px;
  font-weight: 700;
}

.th-product-compare {
  margin-left: 8px;
  color: #8a8a84;
  text-decoration: line-through;
  font-size: 14px;
  font-weight: 500;
}

.th-split-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
  align-items: stretch;
}

.th-split-card,
.th-split-media {
  border-radius: 28px;
  overflow: hidden;
}

.th-split-card {
  background: #f6f1ea;
  padding: 42px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.th-split-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.th-footer-note {
  margin-top: 16px;
  font-size: 14px;
  color: var(--th-muted);
}

@media (max-width: 1100px) {
  .th-category-grid,
  .th-featured-grid,
  .th-split-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .th-section-head {
    flex-direction: column;
    align-items: start;
  }

  .th-category-grid,
  .th-featured-grid,
  .th-split-grid {
    grid-template-columns: 1fr;
  }

  .th-split-card {
    padding: 28px;
  }
}
/* =========================
   FOOTER PREMIUM DAWN
========================= */

.footer {
  background: #f6f1ea;
  border-top: 1px solid rgba(30, 30, 27, 0.08);
  margin-top: 0;
}

.footer__content-top {
  padding-top: 56px;
  padding-bottom: 30px;
}

.footer__content-bottom {
  border-top: 1px solid rgba(30, 30, 27, 0.08);
  padding-top: 20px;
  padding-bottom: 24px;
}

.footer-block__heading {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--th-text);
  margin-bottom: 16px;
}

.footer-block__details-content .list-menu__item--link,
.footer-block__details-content .link,
.footer__content-bottom a,
.footer .copyright__content,
.footer .policies li a {
  color: var(--th-muted);
  transition: color 0.2s ease, opacity 0.2s ease;
}

.footer-block__details-content .list-menu__item--link:hover,
.footer-block__details-content .link:hover,
.footer__content-bottom a:hover,
.footer .policies li a:hover {
  color: var(--th-text);
}

.footer .newsletter-form__field-wrapper .field__input,
.footer .field__input {
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(30, 30, 27, 0.10);
  border-radius: 16px;
}

.footer .newsletter-form__button,
.footer .field__button {
  color: var(--th-text);
}

.footer__payment {
  opacity: 0.9;
}

/* =========================
   COLLECTION PREMIUM DAWN
========================= */

.collection-hero {
  background: linear-gradient(180deg, #f8f5ef 0%, #ffffff 100%);
  border-bottom: 1px solid rgba(30, 30, 27, 0.06);
}

.collection-hero__inner {
  padding-top: 36px;
  padding-bottom: 36px;
}

.collection-hero__title {
  color: var(--th-text);
  letter-spacing: -0.03em;
}

.collection-hero__description {
  color: var(--th-muted);
  max-width: 760px;
  line-height: 1.7;
}

.facets-container {
  background: #fff;
  border: 1px solid rgba(30, 30, 27, 0.08);
  border-radius: 20px;
  padding: 14px 18px;
  box-shadow: 0 6px 18px rgba(18,18,18,0.03);
  margin-bottom: 24px;
}

.facet-filters__label,
.facets__label,
.facets__summary,
.facets__heading,
.product-count__text {
  color: var(--th-text);
}

.facets__disclosure,
.facet-filters__field .select,
.facets .select,
.mobile-facets__open {
  border-radius: 14px;
}

.product-grid .grid__item .card-wrapper {
  height: 100%;
}

.product-grid .card,
.collection .card {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(30, 30, 27, 0.08);
  background: #fff;
  box-shadow: 0 6px 18px rgba(18,18,18,0.03);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.product-grid .card:hover,
.collection .card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(18,18,18,0.07);
}

.product-grid .card > .card__content,
.collection .card > .card__content {
  padding: 8px 6px 2px;
}

.card-information__text,
.card__heading {
  color: var(--th-text);
}

.card-information__text a,
.card__heading a {
  text-decoration: none;
}

.price {
  color: var(--th-text);
  font-weight: 700;
}

.price--on-sale .price-item--regular {
  color: #8a8a84;
}

.collection .pagination-wrapper {
  margin-top: 36px;
}

/* =========================
   COLLECTION INTRO SECTION
========================= */

.th-collection-intro-wrap {
  padding: 28px 20px 0;
}

.th-collection-intro {
  max-width: var(--th-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: stretch;
}

.th-collection-intro__card,
.th-collection-intro__media {
  border-radius: 28px;
  overflow: hidden;
}

.th-collection-intro__card {
  background: #f6f1ea;
  padding: 38px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.th-collection-intro__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.th-collection-intro__text {
  margin-top: 16px;
  color: var(--th-muted);
  line-height: 1.7;
}

@media (max-width: 768px) {
  .th-collection-intro {
    grid-template-columns: 1fr;
  }

  .th-collection-intro__card {
    padding: 26px;
  }

  .facets-container {
    padding: 12px 14px;
    border-radius: 16px;
  }
}
/* =========================
   PRODUCT PREMIUM BLOCKS
========================= */

.th-product-info-wrap {
  padding: 20px;
}

.th-product-info-grid {
  max-width: var(--th-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.th-product-info-card {
  background: #fff;
  border: 1px solid rgba(30, 30, 27, 0.08);
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 6px 18px rgba(18,18,18,0.03);
}

.th-product-info-title {
  margin: 0 0 10px;
  font-size: 18px;
  color: var(--th-text);
}

.th-product-info-text {
  margin: 0;
  color: var(--th-muted);
  line-height: 1.65;
  font-size: 15px;
}

.th-benefits-wrap {
  padding: 10px 20px 20px;
}

.th-benefits {
  max-width: var(--th-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.th-benefit {
  background: #f8f5ef;
  border-radius: 22px;
  padding: 22px 18px;
  border: 1px solid rgba(30, 30, 27, 0.06);
}

.th-benefit-title {
  margin: 0 0 8px;
  font-size: 16px;
  color: var(--th-text);
}

.th-benefit-text {
  margin: 0;
  color: var(--th-muted);
  font-size: 14px;
  line-height: 1.6;
}

.th-faq-wrap {
  padding: 20px;
}

.th-faq {
  max-width: var(--th-max);
  margin: 0 auto;
  background: #fff;
  border: 1px solid rgba(30, 30, 27, 0.08);
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(18,18,18,0.03);
}

.th-faq-head {
  padding: 28px 28px 10px;
}

.th-faq-item {
  border-top: 1px solid rgba(30, 30, 27, 0.08);
}

.th-faq-question {
  width: 100%;
  background: transparent;
  border: 0;
  text-align: left;
  padding: 20px 28px;
  font-size: 16px;
  font-weight: 600;
  color: var(--th-text);
  cursor: pointer;
}

.th-faq-answer {
  padding: 0 28px 22px;
  color: var(--th-muted);
  line-height: 1.7;
  display: none;
}

.th-faq-item.is-open .th-faq-answer {
  display: block;
}

@media (max-width: 990px) {
  .th-product-info-grid,
  .th-benefits {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .th-product-info-grid,
  .th-benefits {
    grid-template-columns: 1fr;
  }

  .th-product-info-card,
  .th-benefit {
    padding: 20px;
  }

  .th-faq-head,
  .th-faq-question,
  .th-faq-answer {
    padding-left: 20px;
    padding-right: 20px;
  }
}
/* =========================
   HEADER DESKTOP POLISH
========================= */

@media (min-width: 990px) {
  .th-header-search-shell,
  .th-header-search__form {
    display: block !important;
  }

  .th-header-search-rail .th-header-search {
    display: flex !important;
  }

  details-modal.header__search,
  .section-header .header__search {
    display: none !important;
  }
}

/* quitamos el desbalance visual más fuerte */
.header {
  column-gap: 0 !important;
  row-gap: 0 !important;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.header__inline-menu {
  grid-column: auto !important;
  width: auto !important;
  justify-self: auto !important;
  margin: 0 !important;
  padding-top: 0 !important;
  display: block !important;
}

.list-menu--inline {
  justify-content: flex-start !important;
  gap: 0 !important;
  flex-wrap: nowrap !important;
}

.header__icons {
  gap: 0 !important;
  justify-self: end !important;
}

.header__heading-logo {
  max-height: 44px !important;
  width: auto !important;
}
/* =========================
   TOTALHOME WARM SYSTEM RESTORE
========================= */

:root {
  --th-bg: #f7f4ef;
  --th-surface: #ffffff;
  --th-text: #1e1e1b;
  --th-muted: #6a6a63;
  --th-line: rgba(30, 30, 27, 0.10);
  --th-accent: #b48a5a;
  --th-accent-dark: #8d6840;
  --th-radius-lg: 28px;
  --th-radius-md: 18px;
  --th-shadow: 0 10px 30px rgba(18, 18, 18, 0.06);
  --th-max: 1360px;
}

/* base general */
body,
.gradient,
.color-background-1,
.background-none {
  background: var(--th-bg) !important;
}

.th-badge {
  background: rgba(255,255,255,0.82) !important;
}

/* trust */
.th-trust-bar {
  background: rgba(255,255,255,0.92) !important;
}

/* editorial */
.th-split-card {
  background: #f6f1ea !important;
  border: 0 !important;
}

/* product cards */
.th-product-card {
  background: #ffffff !important;
}

.th-product-media {
  background: #f7f5f1 !important;
}

/* benefits / product info */
.th-benefit {
  background: #f8f5ef !important;
  border: 1px solid rgba(30, 30, 27, 0.06) !important;
}

.th-product-info-card {
  background: #ffffff !important;
}

/* collection intro */
.th-collection-intro__card {
  background: #f6f1ea !important;
  border: 0 !important;
}

/* collection hero */
.collection-hero {
  background: linear-gradient(180deg, #f8f5ef 0%, #ffffff 100%) !important;
}

/* filtros */
.facets-container {
  background: #ffffff !important;
}

/* footer */
.footer {
  background: #f6f1ea !important;
}

/* product main */
.template-product .product__media-list {
  background: #f8f5ef !important;
}

.template-product .product__info-container {
  background: #ffffff !important;
}

.template-product .accordion {
  background: #ffffff !important;
}

/* related products */
.template-product .related-products .card,
.template-product .related-products .card-wrapper .card {
  background: #ffffff !important;
}

/* botones */
.th-btn {
  background: var(--th-text) !important;
  color: #ffffff !important;
}

.th-btn-secondary {
  background: transparent !important;
  color: var(--th-text) !important;
  border: 1px solid var(--th-line) !important;
}

.template-product .product-form__submit {
  background: var(--th-text) !important;
  color: #ffffff !important;
}
/* =========================
   TOTALHOME DARK TEXT FIX
========================= */

/* texto oscuro en bloques claros */
.th-trust-bar,
.th-split-card,
.th-product-card,
.th-product-body,
.th-product-info-card,
.th-benefit,
.th-faq,
.th-collection-intro__card,
.collection-hero,
.facets-container,
.footer,
.template-product .product__info-container,
.template-product .accordion,
.template-product .related-products .card,
.template-product .related-products .card__content,
.template-product .related-products .card-information,
.template-product .card-information,
.template-product .price,
.collection .card,
.collection .card__content,
.collection .card-information,
.collection .price {
  color: var(--th-text) !important;
}

/* títulos */
.th-title,
.th-eyebrow,
.th-text,
.th-trust-title,
.th-trust-copy,
.th-product-title,
.th-product-price,
.th-product-compare,
.th-product-info-title,
.th-product-info-text,
.th-benefit-title,
.th-benefit-text,
.th-faq-head,
.th-faq-question,
.th-faq-answer,
.th-collection-intro__text,
.collection-hero__title,
.collection-hero__description,
.card__heading,
.card__heading a,
.card-information__text,
.card-information__text a,
.price,
.price-item,
.footer-block__heading,
.footer .link,
.footer p,
.footer li,
.footer a,
.facets__label,
.facets__summary,
.facets__heading,
.facet-filters__label,
.product-count__text,
.template-product .product__title,
.template-product .product__title h1,
.template-product .product__description,
.template-product .product__text,
.template-product .product__tax,
.template-product .caption-with-letter-spacing,
.template-product .product__sku,
.template-product .inventory,
.template-product .accordion summary,
.template-product .accordion__content,
.template-product .price,
.template-product .price-item {
  color: var(--th-text) !important;
}

/* textos secundarios */
.th-text,
.th-trust-copy,
.th-product-info-text,
.th-benefit-text,
.th-collection-intro__text,
.collection-hero__description,
.footer .copyright__content,
.footer .policies li a,
.template-product .product__description,
.template-product .product__text,
.template-product .product__tax,
.template-product .caption-with-letter-spacing,
.template-product .product__sku,
.template-product .inventory,
.template-product .accordion__content {
  color: var(--th-muted) !important;
}

/* no tocar botones */
.th-btn,
.th-btn *,
.template-product .product-form__submit,
.template-product .product-form__submit *,
.shopify-payment-button__button,
.shopify-payment-button__button * {
  color: #ffffff !important;
}

/* mantener categorías con imagen */
.th-cat-title,
.th-cat-sub {
  color: #ffffff !important;
}
/* =========================
   TOTALHOME NO WHITE TEXT
========================= */

:root {
  --th-text: #1e1e1b;
  --th-muted: #6a6a63;
}

/* todo texto oscuro en bloques principales */
body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
span,
small,
label,
summary,
a,
li,
strong,
em,
input,
textarea,
select,
option,
button {
  color: var(--th-text);
}

/* sistema TH */
.th-title,
.th-eyebrow,
.th-text,
.th-trust-title,
.th-trust-copy,
.th-product-title,
.th-product-price,
.th-product-compare,
.th-product-info-title,
.th-product-info-text,
.th-benefit-title,
.th-benefit-text,
.th-faq-head,
.th-faq-question,
.th-faq-answer,
.th-collection-intro__text,
.th-badge,
.th-cat-title,
.th-cat-sub {
  color: var(--th-text) !important;
}

/* textos secundarios */
.th-text,
.th-trust-copy,
.th-product-info-text,
.th-benefit-text,
.th-faq-answer,
.th-collection-intro__text {
  color: var(--th-muted) !important;
}

/* dawn / colección / producto / footer */
.collection-hero__title,
.collection-hero__description,
.card__heading,
.card__heading a,
.card-information__text,
.card-information__text a,
.price,
.price-item,
.footer-block__heading,
.footer .link,
.footer p,
.footer li,
.footer a,
.footer .copyright__content,
.footer .policies li a,
.facets__label,
.facets__summary,
.facets__heading,
.facet-filters__label,
.product-count__text,
.template-product .product__title,
.template-product .product__title h1,
.template-product .product__description,
.template-product .product__text,
.template-product .product__tax,
.template-product .caption-with-letter-spacing,
.template-product .product__sku,
.template-product .inventory,
.template-product .accordion summary,
.template-product .accordion__content,
.template-product .price,
.template-product .price-item,
.template-product variant-selects,
.template-product variant-radios,
.template-product .product-form__input,
.collection .card,
.collection .card__content,
.collection .card-information,
.collection .price {
  color: var(--th-text) !important;
}

.template-product .product__description,
.template-product .product__text,
.template-product .product__tax,
.template-product .caption-with-letter-spacing,
.template-product .product__sku,
.template-product .inventory,
.template-product .accordion__content,
.collection-hero__description,
.footer .copyright__content,
.footer .policies li a {
  color: var(--th-muted) !important;
}

/* hero y categorías: sin texto blanco */
.th-badge {
  background: rgba(255,255,255,0.88) !important;
}

.th-cat-overlay {
  background: linear-gradient(180deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.22) 100%) !important;
}

.th-cat-content {
  background: rgba(247, 244, 239, 0.88);
  backdrop-filter: blur(6px);
  border-radius: 18px;
  padding: 14px 16px;
  left: 16px;
  right: 16px;
  bottom: 16px;
}

/* botones SIN letra blanca */
.th-btn,
.th-btn-secondary,
.template-product .product-form__submit,
.shopify-payment-button__button,
.shopify-payment-button__button--unbranded,
.th-header-search-button {
  background: #efe8dd !important;
  color: var(--th-text) !important;
  border: 1px solid rgba(30, 30, 27, 0.10) !important;
  box-shadow: none !important;
}

.th-btn *,
.th-btn-secondary *,
.template-product .product-form__submit *,
.shopify-payment-button__button *,
.shopify-payment-button__button--unbranded *,
.th-header-search-button * {
  color: var(--th-text) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* contador carrito */
.cart-count-bubble {
  background: #efe8dd !important;
  color: var(--th-text) !important;
}

/* radios y pills */
.template-product .product-form__input input[type='radio'] + label {
  color: var(--th-text) !important;
}

/* menú y header */
.header__menu-item,
.header__active-menu-item,
.header__icon,
.utility-bar .announcement-bar__message,
.announcement-bar .announcement-bar__message {
  color: var(--th-text) !important;
}

/* placeholders */
input::placeholder,
textarea::placeholder {
  color: var(--th-muted) !important;
  opacity: 1;
}
/* =========================
   TOTALHOME CLEAN WHITE OVERRIDE V2
========================= */

:root {
  --th-bg: #ffffff;
  --th-surface: #ffffff;
  --th-text: #111111;
  --th-muted: #6b6b6b;
  --th-line: rgba(17, 17, 17, 0.08);
  --th-accent: #e31e24;
  --th-accent-dark: #c8191f;
  --th-radius-lg: 24px;
  --th-radius-md: 16px;
  --th-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
  --th-max: 1360px;
}

/* base */
html,
body,
body.gradient,
.gradient,
.color-background-1,
.background-none,
#MainContent,
main {
  background: #ffffff !important;
  color: var(--th-text) !important;
}

/* textos generales */
body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
span,
small,
label,
summary,
a,
li,
strong,
em {
  color: var(--th-text);
}

/* secciones TH */
.th-section,
.th-trust-wrap,
.th-benefits-wrap,
.th-product-info-wrap,
.th-faq-wrap,
.th-collection-intro-wrap {
  background: #ffffff !important;
}

.th-trust-bar,
.th-product-card,
.th-product-info-card,
.th-faq,
.th-collection-intro__card,
.th-split-card,
.th-benefit {
  background: #ffffff !important;
  border: 1px solid var(--th-line) !important;
  box-shadow: var(--th-shadow) !important;
}
.template-product .product__info-container,
.template-product .accordion,
.template-product .related-products .card,
.template-product .related-products .card-wrapper .card,
.product-grid .card,
.collection .card,
.facets-container,
.footer,
.collection-hero {
  background: #ffffff !important;
  border-color: var(--th-line) !important;
}

/* textos TH */
.th-title,
.th-eyebrow,
.th-text,
.th-badge,
.th-trust-title,
.th-trust-copy,
.th-product-title,
.th-product-price,
.th-product-compare,
.th-product-info-title,
.th-product-info-text,
.th-benefit-title,
.th-benefit-text,
.th-faq-head,
.th-faq-question,
.th-faq-answer,
.th-collection-intro__text {
  color: var(--th-text) !important;
}

.th-text,
.th-trust-copy,
.th-product-info-text,
.th-benefit-text,
.th-faq-answer,
.th-collection-intro__text,
.collection-hero__description,
.template-product .product__description,
.template-product .product__text,
.template-product .product__tax,
.template-product .caption-with-letter-spacing,
.template-product .product__sku,
.template-product .inventory,
.template-product .accordion__content,
.footer .copyright__content,
.footer .policies li a {
  color: var(--th-muted) !important;
}

/* categorías con imagen */
.th-cat-overlay {
  background: linear-gradient(180deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.18) 100%) !important;
}

.th-cat-content {
  background: rgba(255,255,255,0.92) !important;
  backdrop-filter: blur(6px);
  border-radius: 16px;
  padding: 14px 16px;
  left: 16px;
  right: 16px;
  bottom: 16px;
}

.th-cat-title,
.th-cat-sub {
  color: var(--th-text) !important;
}

/* botones */
.th-btn,
.template-product .product-form__submit,
.shopify-payment-button__button,
.shopify-payment-button__button--unbranded {
  background: #111111 !important;
  color: #ffffff !important;
  border: 0 !important;
}

.th-btn *,
.template-product .product-form__submit *,
.shopify-payment-button__button *,
.shopify-payment-button__button--unbranded * {
  color: #ffffff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.th-btn-secondary {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid var(--th-line) !important;
}

.th-btn-secondary * {
  color: #111111 !important;
}

/* badges / acentos */
.th-badge {
  background: #ffffff !important;
  border: 1px solid var(--th-line) !important;
}

.price,
.price-item,
.template-product .price,
.template-product .price-item,
.card-information__text,
.card-information__text a,
.card__heading,
.card__heading a,
.collection-hero__title,
.footer-block__heading,
.footer .link,
.footer p,
.footer li,
.footer a,
.facets__label,
.facets__summary,
.facets__heading,
.facet-filters__label,
.product-count__text,
.template-product .product__title,
.template-product .product__title h1,
.template-product .accordion summary {
  color: var(--th-text) !important;
}

/* precios oferta en rojo */
.price-item--sale,
.price--on-sale .price-item,
.th-product-price {
  color: var(--th-accent) !important;
}

.price--on-sale .price-item--regular,
.th-product-compare {
  color: #9a9a9a !important;
}

/* header y footer blancos */
.utility-bar,
.announcement-bar,
.header-wrapper,
.shopify-section-header-sticky,
.shopify-section-group-header-group,
#shopify-section-sections--header,
.footer {
  background: #ffffff !important;
}

.header-wrapper,
.footer,
.utility-bar,
.announcement-bar {
  border-color: var(--th-line) !important;
}

.header-wrapper--border-bottom {
  border-bottom-color: #ffffff !important;
}

.header__menu-item,
.header__active-menu-item,
.header__icon,
.utility-bar .announcement-bar__message,
.announcement-bar .announcement-bar__message {
  color: var(--th-text) !important;
}

/* contador carrito */
.cart-count-bubble {
  background: var(--th-accent) !important;
  color: #ffffff !important;
}

/* buscadores e inputs */
input,
textarea,
select,
.search__input.field__input,
.search-modal__form .field__input,
.th-header-search-input {
  background: #ffffff !important;
  color: var(--th-text) !important;
  border-color: var(--th-line) !important;
}

input::placeholder,
textarea::placeholder {
  color: var(--th-muted) !important;
  opacity: 1;
}
/* =========================
   TOTALHOME CART + CARD POLISH
========================= */

/* ESPACIADO GENERAL */
.shopify-section,
.section,
.th-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.th-section {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}

@media (max-width: 768px) {
  .th-section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
}

/* TITULOS */
.th-title,
h1,
h2.section__heading,
.title,
.main-page-title {
  letter-spacing: -0.03em !important;
}

/* CARDS DE PRODUCTO MÁS LIMPIAS */
.card,
.card-wrapper .card,
.product-grid .card,
.collection .card,
.th-product-card {
  border-radius: 20px !important;
  border: 1px solid rgba(17, 17, 17, 0.07) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.04) !important;
  background: #ffffff !important;
}

.card > .card__content,
.th-product-body {
  padding: 14px 14px 16px !important;
}

.card-information,
.card-information > * + *,
.th-product-body > * + * {
  margin-top: 6px !important;
}

.card__heading,
.card__heading a,
.card-information__text,
.card-information__text a,
.th-product-title {
  color: #111111 !important;
  text-decoration: none !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
}

.price,
.price-item,
.th-product-price {
  font-weight: 700 !important;
  font-size: 17px !important;
}

.price-item--sale,
.price--on-sale .price-item,
.th-product-price {
  color: #e31e24 !important;
}

.price--on-sale .price-item--regular,
.th-product-compare {
  color: #9a9a9a !important;
  text-decoration: line-through !important;
}

/* BADGES */
.badge,
.card__badge span,
.th-badge {
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  background: #e31e24 !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* BOTONES TIPO CARD */
.quick-add__submit,
.card .button,
.card-wrapper .button,
.product-form__submit,
.cart__checkout-button,
.cart__checkout-button.button,
.drawer__footer .button,
.cart-drawer .button,
.th-btn {
  border-radius: 12px !important;
  min-height: 46px !important;
  background: #111111 !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}

.quick-add__submit *,
.card .button *,
.card-wrapper .button *,
.product-form__submit *,
.cart__checkout-button *,
.drawer__footer .button *,
.cart-drawer .button *,
.th-btn * {
  color: #ffffff !important;
}

.button--secondary,
.th-btn-secondary {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid rgba(17,17,17,0.08) !important;
}

.button--secondary * ,
.th-btn-secondary * {
  color: #111111 !important;
}

/* CARRITO LATERAL / DRAWER */
.cart-drawer,
.drawer,
cart-drawer .drawer,
.cart-drawer .drawer__inner {
  background: #ffffff !important;
}

.cart-drawer .drawer__inner,
.drawer__inner {
  border-left: 1px solid rgba(17,17,17,0.08) !important;
}

.drawer__header,
.cart-drawer__warnings,
.drawer__footer {
  background: #ffffff !important;
}

.drawer__header {
  border-bottom: 1px solid rgba(17,17,17,0.08) !important;
  padding: 18px 20px !important;
}

.drawer__heading {
  color: #111111 !important;
  font-size: 22px !important;
  letter-spacing: -0.02em !important;
}

.drawer__close,
.drawer__close svg {
  color: #111111 !important;
}

.cart-drawer .cart-items,
.cart-drawer .cart-item,
cart-drawer-items {
  background: #ffffff !important;
}

.cart-drawer .cart-item {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(17,17,17,0.06) !important;
}

.cart-drawer .cart-item__media,
.cart-items .cart-item__media {
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

.cart-item__name,
.cart-item__name:hover,
.cart-drawer .cart-item__name {
  color: #111111 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}

.cart-item__details,
.product-option,
.totals,
.totals__total,
.tax-note,
.cart__note {
  color: #111111 !important;
}

.cart-drawer .quantity,
.cart-items .quantity {
  border-radius: 12px !important;
  border: 1px solid rgba(17,17,17,0.08) !important;
  min-height: 42px !important;
}

.cart-drawer .quantity__button,
.cart-items .quantity__button {
  color: #111111 !important;
}

.drawer__footer {
  border-top: 1px solid rgba(17,17,17,0.08) !important;
  padding: 18px 20px 20px !important;
}

.totals {
  margin-bottom: 14px !important;
}

.totals__total-value,
.totals__total {
  font-size: 18px !important;
  font-weight: 700 !important;
}

.cart-drawer .button,
.drawer__footer .button {
  width: 100% !important;
}

/* PÁGINA DE CARRITO */
.cart-items thead th,
.cart__footer,
.cart__blocks,
.cart__warnings,
.cart__empty-text {
  color: #111111 !important;
}

.cart-item {
  border-bottom: 1px solid rgba(17,17,17,0.06) !important;
}

.cart-item__image {
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

.cart__checkout-button {
  width: 100% !important;
}

.cart__footer {
  background: #ffffff !important;
  border: 1px solid rgba(17,17,17,0.08) !important;
  border-radius: 18px !important;
  padding: 20px !important;
}

/* PRODUCTOS RELACIONADOS */
.related-products,
.product-recommendations {
  padding-top: 12px !important;
}

.related-products .card,
.product-recommendations .card {
  border-radius: 20px !important;
  overflow: hidden !important;
}

/* FAQ / INFO / BENEFITS MÁS FINOS */
.th-benefit,
.th-product-info-card,
.th-faq {
  border-radius: 20px !important;
}

.th-faq-question {
  font-size: 15px !important;
}

/* BOTONES HOVER */
.button:hover,
.quick-add__submit:hover,
.product-form__submit:hover,
.cart__checkout-button:hover,
.drawer__footer .button:hover,
.th-btn:hover {
  opacity: 0.94 !important;
  transform: none !important;
}

/* MOBILE */
@media (max-width: 768px) {
  .card__content,
  .th-product-body {
    padding: 12px 12px 14px !important;
  }

  .drawer__header,
  .drawer__footer {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .cart__footer {
    padding: 16px !important;
    border-radius: 16px !important;
  }
}
/* =========================
   TOTALHOME FOOTER PREMIUM
========================= */

.footer {
  background: #ffffff !important;
  border-top: 1px solid rgba(17, 17, 17, 0.08) !important;
  margin-top: 0 !important;
}

.footer__content-top {
  padding-top: 56px !important;
  padding-bottom: 28px !important;
}

.footer__blocks-wrapper {
  row-gap: 28px !important;
  column-gap: 28px !important;
}

.footer-block.grid__item {
  padding: 0 !important;
}

.footer-block__heading {
  color: #111111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  margin-bottom: 14px !important;
}

.footer-block__details-content,
.footer-block__details-content p,
.footer-block__details-content li,
.footer-block__details-content a,
.footer .link,
.footer .list-menu__item--link {
  color: #6b6b6b !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  text-decoration: none !important;
}

.footer-block__details-content a:hover,
.footer .link:hover,
.footer .list-menu__item--link:hover {
  color: #111111 !important;
}

.footer-block__details-content .list-menu__item--link {
  padding: 0.3rem 0 !important;
}

/* newsletter */
.footer .newsletter-form__field-wrapper,
.footer .field {
  max-width: 100% !important;
}

.footer .field__input,
.footer .newsletter-form__field-wrapper .field__input {
  background: #ffffff !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
  border-radius: 14px !important;
  min-height: 48px !important;
  box-shadow: none !important;
  color: #111111 !important;
}

.footer .field__input::placeholder {
  color: #8a8a8a !important;
  opacity: 1;
}

.footer .newsletter-form__button,
.footer .field__button {
  color: #111111 !important;
}

.footer .newsletter-form__message {
  color: #6b6b6b !important;
  font-size: 13px !important;
}

/* social */
.footer .list-social {
  gap: 10px !important;
}

.footer .list-social__link {
  width: 38px !important;
  height: 38px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.footer .list-social__link:hover {
  background: rgba(17, 17, 17, 0.03) !important;
}

.footer .icon {
  color: #111111 !important;
}

/* línea inferior */
.footer__content-bottom {
  border-top: 1px solid rgba(17, 17, 17, 0.08) !important;
  padding-top: 18px !important;
  padding-bottom: 20px !important;
}

.footer__content-bottom-wrapper {
  row-gap: 12px !important;
}

.footer .copyright__content,
.footer .copyright__content a,
.footer .policies li a {
  color: #6b6b6b !important;
  font-size: 13px !important;
  text-decoration: none !important;
}

.footer .copyright__content a:hover,
.footer .policies li a:hover {
  color: #111111 !important;
}

.footer .policies {
  gap: 14px !important;
}

/* pagos */
.footer__payment {
  opacity: 1 !important;
}

.footer__payment .list-payment {
  gap: 8px !important;
}

.footer__payment .list-payment__item {
  filter: grayscale(0%);
}

/* mobile */
@media (max-width: 768px) {
  .footer__content-top {
    padding-top: 38px !important;
    padding-bottom: 18px !important;
  }

  .footer__blocks-wrapper {
    row-gap: 18px !important;
  }

  .footer-block__heading {
    margin-bottom: 10px !important;
  }

  .footer .field__input,
  .footer .newsletter-form__field-wrapper .field__input {
    min-height: 46px !important;
  }
}
/* =========================================================
   TH TOTALHOME - LIMPIEZA VISUAL FINAL
   (solo contenido principal, no header)
========================================================= */

#MainContent {
  background: #ffffff;
}

#MainContent .shopify-section {
  background: #ffffff;
}

#MainContent .shopify-section .page-width {
  max-width: 1400px;
}

#MainContent h1,
#MainContent h2,
#MainContent h3,
#MainContent h4,
#MainContent h5,
#MainContent h6,
#MainContent p,
#MainContent li,
#MainContent label,
#MainContent summary,
#MainContent .rte,
#MainContent .caption,
#MainContent .product__text,
#MainContent .product__description,
#MainContent .card__heading,
#MainContent .card__heading a,
#MainContent .full-unstyled-link,
#MainContent .collection-hero__title,
#MainContent .collection-hero__description,
#MainContent .price,
#MainContent .price-item,
#MainContent .product__title,
#MainContent .product__tax,
#MainContent .product__inventory,
#MainContent .breadcrumb,
#MainContent .breadcrumbs {
  color: #111111 !important;
}

#MainContent .gradient,
#MainContent .color-background-1,
#MainContent .color-background-2,
#MainContent .color-inverse,
#MainContent .background-secondary {
  background: #ffffff !important;
  color: #111111 !important;
}

#MainContent .card,
#MainContent .card-wrapper,
#MainContent .product-form,
#MainContent .product__info-container,
#MainContent .facet-filters,
#MainContent .facets-container,
#MainContent .collection-hero,
#MainContent .related-products,
#MainContent .shopify-policy__body {
  background: #ffffff !important;
}

#MainContent .shopify-section *::placeholder {
  color: #6b7280;
  opacity: 1;
}

#MainContent a:not(.button):not(.button--secondary) {
  color: #111111;
}

#MainContent a:not(.button):not(.button--secondary):hover {
  color: #c5161d;
}

#MainContent .title-wrapper-with-link,
#MainContent .product__info-wrapper > * + *,
#MainContent .card-information > * + * {
  margin-top: 0.8rem;
}

#MainContent .shopify-section + .shopify-section {
  margin-top: 0;
}

#MainContent .shopify-section .button {
  border-radius: 12px;
}

#MainContent .card,
#MainContent .product__info-container,
#MainContent .facet-filters {
  border-radius: 16px;
}
/* =========================================================
   TH TOTALHOME - REFINAMIENTO FINAL
   no tocar header
========================================================= */

/* ---------- Base visual general ---------- */
#MainContent {
  background: #ffffff;
}

#MainContent .page-width {
  max-width: 1400px;
}

#MainContent .shopify-section {
  background: #ffffff;
}

#MainContent h1,
#MainContent h2,
#MainContent h3,
#MainContent h4 {
  color: #111111 !important;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.12;
}

#MainContent p,
#MainContent li,
#MainContent .rte,
#MainContent .product__description,
#MainContent .collection-hero__description,
#MainContent .card-information .price,
#MainContent .price,
#MainContent .price-item {
  color: #222222 !important;
  line-height: 1.6;
}

/* ---------- Ritmo entre secciones ---------- */
.template-index #MainContent .shopify-section,
.template-collection #MainContent .shopify-section,
.template-product #MainContent .shopify-section {
  padding-top: 22px;
  padding-bottom: 22px;
}

.template-index #MainContent .shopify-section:first-child,
.template-collection #MainContent .shopify-section:first-child,
.template-product #MainContent .shopify-section:first-child {
  padding-top: 0;
}

/* ---------- Botones ---------- */
#MainContent .button,
#MainContent .shopify-payment-button__button,
#MainContent .product-form__submit {
  min-height: 48px;
  border-radius: 14px !important;
  font-weight: 700;
  letter-spacing: 0;
  transition: all 0.2s ease;
  box-shadow: none !important;
}

#MainContent .button--primary,
#MainContent .product-form__submit,
#MainContent .shopify-payment-button__button--unbranded {
  background: #111111 !important;
  color: #ffffff !important;
  border: 1px solid #111111 !important;
}

#MainContent .button--primary:hover,
#MainContent .product-form__submit:hover,
#MainContent .shopify-payment-button__button--unbranded:hover {
  background: #c5161d !important;
  border-color: #c5161d !important;
  transform: translateY(-1px);
}

#MainContent .button--secondary {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #d9d9d9 !important;
}

#MainContent .button--secondary:hover {
  border-color: #111111 !important;
  background: #ffffff !important;
  transform: translateY(-1px);
}

/* ---------- Cards / producto / colección ---------- */
#MainContent .card-wrapper {
  height: 100%;
}

#MainContent .card {
  background: #ffffff !important;
  border: 1px solid #ececec !important;
  border-radius: 18px !important;
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
  box-shadow: 0 6px 20px rgba(17, 17, 17, 0.04);
}

#MainContent .card:hover {
  transform: translateY(-3px);
  border-color: #dfdfdf !important;
  box-shadow: 0 14px 34px rgba(17, 17, 17, 0.08);
}

#MainContent .card__heading {
  font-size: 1rem;
  line-height: 1.3;
  font-weight: 700;
}

#MainContent .card__heading a,
#MainContent .full-unstyled-link {
  color: #111111 !important;
  text-decoration: none !important;
}

#MainContent .card__heading a:hover,
#MainContent .full-unstyled-link:hover {
  color: #111111 !important;
}

#MainContent .card-information {
  padding-top: 12px;
}

#MainContent .price {
  font-weight: 700;
}

/* ---------- Imágenes de producto dentro de cards ---------- */

/* ---------- Sección de colección ---------- */
.template-collection #MainContent .collection-hero {
  border-radius: 22px;
  border: 1px solid #ececec;
  padding: 24px;
  background: #ffffff !important;
}

.template-collection #MainContent .facets-container {
  border-radius: 18px;
  background: #ffffff !important;
  margin-bottom: 18px;
}

.template-collection #MainContent .facet-filters,
.template-collection #MainContent .facets {
  background: #ffffff !important;
}

.template-collection #MainContent .pagination-wrapper {
  margin-top: 28px;
}

/* ---------- Formatos de filtros / selects ---------- */
#MainContent select,
#MainContent input[type="text"],
#MainContent input[type="email"],
#MainContent input[type="search"],
#MainContent input[type="number"],
#MainContent textarea {
  border-radius: 12px !important;
  border: 1px solid #dcdcdc !important;
  background: #ffffff !important;
  color: #111111 !important;
}

#MainContent select:focus,
#MainContent input:focus,
#MainContent textarea:focus {
  outline: none !important;
  border-color: #111111 !important;
  box-shadow: 0 0 0 2px rgba(17, 17, 17, 0.05) !important;
}

/* ---------- Página de producto ---------- */
.template-product #MainContent .product {
  background: #ffffff;
}

.template-product #MainContent .product__title h1,
.template-product #MainContent .product__title {
  font-size: clamp(2rem, 3.5vw, 3rem);
  line-height: 1.05;
  margin-bottom: 8px;
}

.template-product #MainContent .product__info-container > * + * {
  margin-top: 14px;
}

.template-product #MainContent .price--large {
  font-size: 1.6rem;
  font-weight: 800;
}

.template-product #MainContent .product-form__buttons {
  margin-top: 14px;
}

.template-product #MainContent .product-form__submit {
  width: 100%;
}

.template-product #MainContent .quantity {
  border-radius: 14px !important;
  min-height: 48px;
}

.template-product #MainContent .product__accordion,
.template-product #MainContent details,
.template-product #MainContent .accordion {
  background: #ffffff !important;
  border: 1px solid #ececec !important;
  border-radius: 14px !important;
  padding-left: 12px;
  padding-right: 12px;
}

.template-product #MainContent summary {
  font-weight: 700;
  color: #111111 !important;
}

/* ---------- Related products ---------- */
.template-product #MainContent .related-products {
  margin-top: 10px;
}

/* ---------- Bloques custom TotalHome ---------- */
.th-trust-bar,
.th-category-grid,
.th-editorial-split,
.th-featured-products-grid,
.th-collection-intro,
.th-product-benefits,
.th-product-info-cards,
.th-product-faq {
  background: #ffffff !important;
}

.th-trust-bar h2,
.th-category-grid h2,
.th-editorial-split h2,
.th-featured-products-grid h2,
.th-collection-intro h1,
.th-collection-intro h2,
.th-product-benefits h2,
.th-product-info-cards h2,
.th-product-faq h2 {
  color: #111111 !important;
}

.th-trust-bar p,
.th-category-grid p,
.th-editorial-split p,
.th-featured-products-grid p,
.th-collection-intro p,
.th-product-benefits p,
.th-product-info-cards p,
.th-product-faq p {
  color: #333333 !important;
}

/* ---------- Tarjetas blancas limpias en bloques custom ---------- */
.th-trust-bar .card,
.th-category-grid .card,
.th-editorial-split .card,
.th-featured-products-grid .card,
.th-product-benefits .card,
.th-product-info-cards .card,
.th-product-faq .card {
  background: #ffffff !important;
  border: 1px solid #ececec !important;
  border-radius: 18px !important;
  box-shadow: 0 6px 20px rgba(17, 17, 17, 0.04);
}

/* ---------- Footer: respiración final ---------- */
.footer {
  margin-top: 30px;
}

.footer .footer__content-top,
.footer .footer__content-bottom {
  padding-top: 26px;
  padding-bottom: 26px;
}

/* ---------- Mobile ---------- */
@media screen and (max-width: 989px) {
  .template-index #MainContent .shopify-section,
  .template-collection #MainContent .shopify-section,
  .template-product #MainContent .shopify-section {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .template-product #MainContent .product__title h1,
  .template-product #MainContent .product__title {
    font-size: 2rem;
  }

  #MainContent .card {
    border-radius: 16px !important;
  }

  #MainContent .button,
  #MainContent .product-form__submit,
  #MainContent .shopify-payment-button__button {
    min-height: 46px;
  }

  .template-collection #MainContent .collection-hero {
    padding: 18px;
    border-radius: 18px;
  }
}
/* =========================================================
   TH TOTALHOME - CIERRE FINO FINAL
   coherencia visual + conversión
   no tocar header
========================================================= */

/* ---------- Contenedor general ---------- */
#MainContent .page-width {
  max-width: 1440px;
}

/* ---------- Títulos de sección más consistentes ---------- */
#MainContent .title,
#MainContent .main-page-title,
#MainContent .collection-hero__title,
#MainContent .related-products__heading,
#MainContent .product-recommendations__heading,
#MainContent .th-trust-bar h2,
#MainContent .th-category-grid h2,
#MainContent .th-editorial-split h2,
#MainContent .th-featured-products-grid h2,
#MainContent .th-collection-intro h1,
#MainContent .th-collection-intro h2,
#MainContent .th-product-benefits h2,
#MainContent .th-product-info-cards h2,
#MainContent .th-product-faq h2 {
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  line-height: 1.05;
  margin-bottom: 10px;
  color: #111111 !important;
}

/* ---------- Texto secundario ---------- */
#MainContent .subtitle,
#MainContent .caption-with-letter-spacing,
#MainContent .th-trust-bar p,
#MainContent .th-category-grid p,
#MainContent .th-editorial-split p,
#MainContent .th-featured-products-grid p,
#MainContent .th-collection-intro p,
#MainContent .th-product-benefits p,
#MainContent .th-product-info-cards p,
#MainContent .th-product-faq p {
  color: #3a3a3a !important;
}

/* ---------- Cards de producto más premium ---------- */
#MainContent .card {
  border: 1px solid #ececec !important;
  border-radius: 20px !important;
  overflow: hidden;
}

#MainContent .card > .card__content {
  padding: 14px 14px 16px;
  background: #ffffff !important;
}

#MainContent .card__heading {
  font-size: 0.98rem;
  line-height: 1.32;
  font-weight: 700 !important;
  min-height: 2.6em;
}

#MainContent .card-information {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#MainContent .card-information .price,
#MainContent .card-information .price-item {
  font-size: 1rem;
  font-weight: 800 !important;
  color: #111111 !important;
}

#MainContent .card__badge,
#MainContent .badge {
  border-radius: 999px !important;
  font-weight: 700;
}


/* ---------- Links de cards ---------- */
#MainContent .card__heading a,
#MainContent .full-unstyled-link {
  color: #111111 !important;
  text-decoration: none !important;
}

#MainContent .card__heading a:hover,
#MainContent .full-unstyled-link:hover {
  color: #111111 !important;
}

/* ---------- Botones más finos ---------- */
#MainContent .button,
#MainContent .button--primary,
#MainContent .button--secondary,
#MainContent .product-form__submit,
#MainContent .shopify-payment-button__button {
  border-radius: 14px !important;
  font-weight: 700 !important;
}

#MainContent .button,
#MainContent .product-form__submit,
#MainContent .shopify-payment-button__button--unbranded {
  box-shadow: none !important;
}

/* ---------- Inputs / filtros ---------- */
#MainContent select,
#MainContent input[type="text"],
#MainContent input[type="email"],
#MainContent input[type="search"],
#MainContent input[type="number"],
#MainContent textarea {
  min-height: 46px;
  border-radius: 12px !important;
  border: 1px solid #d9d9d9 !important;
  background: #ffffff !important;
  color: #111111 !important;
}

/* ---------- Colección ---------- */
.template-collection #MainContent .collection-hero {
  margin-bottom: 10px;
}

.template-collection #MainContent .product-grid-container {
  margin-top: 12px;
}

.template-collection #MainContent .facets-container {
  padding: 10px 0 14px;
}

.template-collection #MainContent .facets__summary,
.template-collection #MainContent .facet-filters__label,
.template-collection #MainContent .facet-filters__sort {
  color: #111111 !important;
}

/* ---------- Página de producto ---------- */
.template-product #MainContent .product__media-wrapper,
.template-product #MainContent .product__info-wrapper {
  align-self: start;
}

.template-product #MainContent .product__title h1,
.template-product #MainContent .product__title {
  font-weight: 800 !important;
  letter-spacing: -0.035em;
  color: #111111 !important;
}

.template-product #MainContent .price--large,
.template-product #MainContent .price .price-item {
  font-weight: 800 !important;
  color: #111111 !important;
}

.template-product #MainContent .product__text,
.template-product #MainContent .product__description,
.template-product #MainContent .product__tax,
.template-product #MainContent .product__inventory {
  color: #2f2f2f !important;
}

.template-product #MainContent .product-form__input,
.template-product #MainContent .select,
.template-product #MainContent variant-selects,
.template-product #MainContent .quantity {
  margin-top: 8px;
}

.template-product #MainContent .quantity {
  border-radius: 14px !important;
  overflow: hidden;
}

.template-product #MainContent .product-form__buttons {
  margin-top: 16px;
}

.template-product #MainContent .accordion,
.template-product #MainContent details {
  margin-top: 10px;
}

/* ---------- Beneficios / FAQ / Info Cards ---------- */
.th-product-benefits .card,
.th-product-info-cards .card,
.th-product-faq .card {
  padding: 18px;
}

/* ---------- Editorial split / banners custom ---------- */
.th-editorial-split .button,
.th-collection-intro .button {
  margin-top: 8px;
}

/* ---------- Footer más limpio ---------- */
.footer {
  background: #ffffff !important;
  border-top: 1px solid #ececec;
}

.footer *,
.footer a,
.footer p,
.footer li,
.footer summary,
.footer__content-top,
.footer__content-bottom {
  color: #111111 !important;
}

.footer .list-menu__item--link,
.footer a {
  text-decoration: none;
}

.footer .list-menu__item--link:hover,
.footer a:hover {
  color: #c5161d !important;
}

.footer .footer-block__heading {
  font-weight: 800;
  letter-spacing: -0.02em;
}

/* ---------- Espaciado final móvil ---------- */
@media screen and (max-width: 989px) {
  #MainContent .card > .card__content {
    padding: 12px 12px 14px;
  }

  #MainContent .card__heading {
    font-size: 0.94rem;
  }

  .template-product #MainContent .product__title h1,
  .template-product #MainContent .product__title {
    line-height: 1.08;
  }
}
/* =========================================================
   TH TOTALHOME - PASO 13
   carrito + conversión final
   no tocar header
========================================================= */

/* ---------- Cart Drawer ---------- */
cart-drawer,
.cart-drawer,
.drawer,
.drawer__inner,
.cart-drawer .drawer__inner {
  background: #ffffff !important;
  color: #111111 !important;
}

.cart-drawer .drawer__header,
.cart-drawer__warnings,
.cart-drawer .drawer__footer,
.cart-drawer-items,
.cart-drawer .cart-items {
  background: #ffffff !important;
}

.cart-drawer .drawer__heading,
.cart-drawer h2,
.cart-drawer h3,
.cart-drawer p,
.cart-drawer span,
.cart-drawer a,
.cart-drawer label,
.cart-drawer .totals,
.cart-drawer .totals__subtotal-value,
.cart-drawer .price,
.cart-drawer .price-item {
  color: #111111 !important;
}

.cart-drawer .drawer__close,
.cart-drawer .icon-close,
.cart-drawer .quantity__button,
.cart-drawer .quantity__input {
  color: #111111 !important;
}

.cart-drawer .cart-item {
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ececec;
}

.cart-drawer .cart-item__image,
.cart-drawer .cart-item media,
.cart-drawer .cart-item .media {
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff !important;
}

.cart-drawer .cart-item__name,
.cart-drawer .cart-item__name:hover {
  color: #111111 !important;
  text-decoration: none !important;
  font-weight: 700;
}

.cart-drawer .product-option,
.cart-drawer .cart-item__details .product-option {
  color: #4a4a4a !important;
}

.cart-drawer .quantity {
  border: 1px solid #dcdcdc !important;
  border-radius: 14px !important;
  min-height: 46px;
  overflow: hidden;
  background: #ffffff !important;
}

.cart-drawer .quantity__button {
  background: #ffffff !important;
}

.cart-drawer .quantity__input {
  background: #ffffff !important;
  color: #111111 !important;
}

.cart-drawer .drawer__footer {
  border-top: 1px solid #ececec;
  padding-top: 18px;
}

.cart-drawer .totals {
  align-items: center;
}

.cart-drawer .totals__subtotal {
  color: #111111 !important;
  font-weight: 700;
}

.cart-drawer .totals__subtotal-value {
  font-weight: 800 !important;
  font-size: 1.2rem;
}

.cart-drawer .tax-note,
.cart-drawer .cart-drawer__footer .tax-note,
.cart-drawer small {
  color: #4a4a4a !important;
}

.cart-drawer .button,
.cart-drawer .button--primary,
.cart-drawer #CartDrawer-Checkout,
.cart-drawer .cart__checkout-button {
  min-height: 50px;
  border-radius: 14px !important;
  background: #111111 !important;
  color: #ffffff !important;
  border: 1px solid #111111 !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.cart-drawer .button:hover,
.cart-drawer .button--primary:hover,
.cart-drawer #CartDrawer-Checkout:hover,
.cart-drawer .cart__checkout-button:hover {
  background: #c5161d !important;
  border-color: #c5161d !important;
}

.cart-drawer .button--secondary,
.cart-drawer a.button.button--secondary {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #dcdcdc !important;
}

.cart-drawer .button--secondary:hover,
.cart-drawer a.button.button--secondary:hover {
  border-color: #111111 !important;
  background: #ffffff !important;
}

.cart-drawer .cart-drawer__empty-content,
.cart-drawer .drawer__inner-empty {
  background: #ffffff !important;
}

.cart-drawer .cart-drawer__empty-content .button,
.cart-drawer .drawer__inner-empty .button {
  margin-top: 10px;
}

/* ---------- Página carrito ---------- */
.template-cart #MainContent,
.template-cart #MainContent .shopify-section,
.template-cart #MainContent .cart,
.template-cart #MainContent .cart__warnings,
.template-cart #MainContent .cart__footer,
.template-cart #MainContent .cart__blocks,
.template-cart #MainContent .cart-items,
.template-cart #MainContent .totals {
  background: #ffffff !important;
  color: #111111 !important;
}

.template-cart #MainContent .title,
.template-cart #MainContent h1,
.template-cart #MainContent h2,
.template-cart #MainContent h3,
.template-cart #MainContent p,
.template-cart #MainContent span,
.template-cart #MainContent a,
.template-cart #MainContent label,
.template-cart #MainContent .price,
.template-cart #MainContent .price-item,
.template-cart #MainContent .totals__subtotal-value {
  color: #111111 !important;
}

.template-cart #MainContent .cart-item {
  border-bottom: 1px solid #ececec;
}

.template-cart #MainContent .cart-item__name,
.template-cart #MainContent .cart-item__name:hover {
  color: #111111 !important;
  text-decoration: none !important;
  font-weight: 700;
}

.template-cart #MainContent .product-option,
.template-cart #MainContent .tax-note,
.template-cart #MainContent .cart__note,
.template-cart #MainContent .cart-note__text {
  color: #4a4a4a !important;
}

.template-cart #MainContent .cart-item__image,
.template-cart #MainContent .cart-item media,
.template-cart #MainContent .cart-item .media {
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff !important;
}

.template-cart #MainContent .quantity {
  border: 1px solid #dcdcdc !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  min-height: 46px;
  overflow: hidden;
}

.template-cart #MainContent .quantity__button,
.template-cart #MainContent .quantity__input {
  background: #ffffff !important;
  color: #111111 !important;
}

.template-cart #MainContent .cart__footer {
  margin-top: 24px;
}

.template-cart #MainContent .cart__blocks {
  border: 1px solid #ececec;
  border-radius: 20px;
  padding: 22px;
  background: #ffffff !important;
}

.template-cart #MainContent .totals {
  margin-bottom: 10px;
}

.template-cart #MainContent .totals__subtotal {
  font-weight: 700;
}

.template-cart #MainContent .totals__subtotal-value {
  font-size: 1.3rem;
  font-weight: 800 !important;
}

.template-cart #MainContent .cart__checkout-button,
.template-cart #MainContent .button--primary,
.template-cart #MainContent [name="checkout"] {
  min-height: 52px;
  border-radius: 14px !important;
  background: #111111 !important;
  color: #ffffff !important;
  border: 1px solid #111111 !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.template-cart #MainContent .cart__checkout-button:hover,
.template-cart #MainContent .button--primary:hover,
.template-cart #MainContent [name="checkout"]:hover {
  background: #c5161d !important;
  border-color: #c5161d !important;
}

.template-cart #MainContent .button--secondary,
.template-cart #MainContent .cart__note-button {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #dcdcdc !important;
  border-radius: 14px !important;
}

.template-cart #MainContent .button--secondary:hover,
.template-cart #MainContent .cart__note-button:hover {
  border-color: #111111 !important;
  background: #ffffff !important;
}

/* ---------- Nota del carrito ---------- */
.template-cart #MainContent .cart__note textarea,
.cart-drawer textarea,
#CartDrawer-Note {
  border: 1px solid #dcdcdc !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #111111 !important;
}

.template-cart #MainContent .cart__note textarea:focus,
.cart-drawer textarea:focus,
#CartDrawer-Note:focus {
  outline: none !important;
  border-color: #111111 !important;
  box-shadow: 0 0 0 2px rgba(17, 17, 17, 0.05) !important;
}

/* ---------- Carrito vacío ---------- */
.template-cart #MainContent .cart__warnings,
.template-cart #MainContent .cart__empty-text,
.template-cart #MainContent .is-empty,
.cart-drawer .is-empty {
  text-align: center;
}

.template-cart #MainContent .cart__warnings .button,
.template-cart #MainContent .cart__empty-text .button,
.cart-drawer .is-empty .button {
  margin-top: 12px;
}

/* ---------- Badges / descuentos ---------- */
.template-cart #MainContent .discounts,
.template-cart #MainContent .discounts__discount,
.cart-drawer .discounts,
.cart-drawer .discounts__discount {
  color: #c5161d !important;
  font-weight: 700;
}

/* ---------- Overlay drawer ---------- */
.cart-drawer-overlay,
.drawer__overlay {
  background: rgba(17, 17, 17, 0.28) !important;
}

/* ---------- Mobile ---------- */
@media screen and (max-width: 989px) {
  .template-cart #MainContent .cart__blocks {
    padding: 18px;
    border-radius: 18px;
  }

  .cart-drawer .cart-item__image,
  .template-cart #MainContent .cart-item__image {
    border-radius: 12px;
  }

  .cart-drawer .button,
  .cart-drawer #CartDrawer-Checkout,
  .template-cart #MainContent .cart__checkout-button {
    min-height: 48px;
  }
}
.th-premium-hero{background:#fff;padding:28px 0;overflow:hidden}.th-hero-slider{overflow:hidden;position:relative}.th-hero-track{display:flex;transition:transform .45s ease}.th-hero-slide{min-width:100%;flex:0 0 100%}.th-hero-split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.th-hero-content{padding:20px 0}.th-hero-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#555;margin:0 0 14px}.th-hero-heading{font-size:clamp(2.3rem,4vw,4.2rem);line-height:1.02;font-weight:800;color:#111;margin:0 0 18px}.th-hero-text,.th-hero-text p{font-size:1.08rem;line-height:1.6;color:#333}.th-hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.th-hero-badges span{padding:10px 14px;border-radius:999px;background:#c5161d;color:#fff;font-weight:700}.th-hero-media{border-radius:28px;overflow:hidden;background:#f5f5f5;min-height:520px}.th-hero-image{width:100%;height:100%;display:block;object-fit:cover}.th-hero-placeholder{min-height:520px;background:#f3f3f3;border:1px solid #e9e9e9;border-radius:28px}.th-hero-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:18px}.th-hero-arrow{width:44px;height:44px;border-radius:999px;border:1px solid #ddd;background:#fff;color:#111;font-size:24px;cursor:pointer}.th-hero-dot{width:10px;height:10px;border-radius:999px;border:0;background:#d1d1d1;cursor:pointer}.th-hero-dot.is-active{background:#c5161d}@media(max-width:989px){.th-hero-split{grid-template-columns:1fr;gap:18px}.th-hero-media,.th-hero-placeholder{min-height:280px}.th-hero-content{padding:8px 0}}
.th-hero-slide{position:relative;overflow:hidden;border-radius:28px}.th-hero-bg{position:absolute;inset:0;z-index:0}.th-hero-bg-image{width:100%;height:100%;object-fit:cover;filter:blur(26px);transform:scale(1.12);opacity:.32}.th-hero-overlay{position:absolute;inset:0;background:rgba(255,255,255,.78);z-index:1}.th-hero-slide .page-width{position:relative;z-index:2}
.th-hero-bg-image{width:100%;height:100%;object-fit:cover;filter:blur(12px);transform:scale(1.12);opacity:.4}
.th-hero-content .button{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:auto!important;min-height:54px!important;padding:14px 24px!important;line-height:1.2!important;overflow:visible!important}.th-hero-content .button:before,.th-hero-content .button:after{display:none!important}
.th-featured-products-grid{background:#fff;padding:28px 0}.th-featured-products__header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.th-featured-products__eyebrow{margin:0 0 8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#555}.th-featured-products__heading{margin:0;color:#111;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.02;font-weight:800}.th-featured-products__button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;background:#c5161d;color:#fff;text-decoration:none;font-weight:700;border:1px solid #c5161d}.th-featured-products__button:hover{background:#111;border-color:#111;color:#fff}.th-featured-carousel{position:relative}.th-featured-carousel__viewport{overflow:hidden}.th-featured-carousel__track{display:flex;gap:18px;will-change:transform}.th-featured-carousel__group{display:flex;gap:18px;flex-shrink:0}.th-featured-product-card{width:302px;flex:0 0 302px}.th-featured-product-card__link{display:block;background:#fff;border:1px solid #ececec;border-radius:22px;overflow:hidden;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.th-featured-product-card__link:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.08);border-color:#ddd}.th-featured-product-card__image-wrap{background:#fff;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:14px}.th-featured-product-card__image{width:100%;height:100%;object-fit:contain;display:block}.th-featured-product-card__placeholder{width:100%;height:100%;background:#f3f3f3;border-radius:16px}.th-featured-product-card__content{padding:0 16px 18px}.th-featured-product-card__title{margin:0 0 12px;color:#111;font-size:1rem;line-height:1.35;font-weight:700}.th-featured-product-card__price-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.th-featured-product-card__price{color:#e02424;font-weight:800;font-size:1.05rem}.th-featured-product-card__compare{color:#8a8a8a;text-decoration:line-through}.th-featured-products__empty{padding:24px;border:1px solid #ececec;border-radius:18px;background:#fff;color:#555}@media(max-width:989px){.th-featured-products__header{align-items:start;flex-direction:column}.th-featured-products__button{min-height:48px}.th-featured-product-card{width:240px;flex:0 0 240px}.th-featured-products__heading{font-size:2.2rem}}
.th-featured-products__button,.th-featured-products__button:visited,.th-featured-products__button:hover{color:#fff!important}.th-featured-product-card__title{font-size:1.12rem;line-height:1.4}.th-featured-product-card__price{font-size:1.12rem}
.th-hero-content .button{background:#111;color:#fff;border:2px solid rgba(255, 255, 255, 0.6);transition:.2s}.th-hero-content .button:hover{background:#c5161d;color:#fff;border-color:#c5161d}
.th-featured-product-card__title{font-size:1.18rem;line-height:1.42;font-weight:700}.th-featured-carousel{position:relative}.th-featured-carousel__nav{position:absolute;top:-74px;right:0;display:flex;gap:10px}.th-featured-carousel__arrow{width:44px;height:44px;border-radius:999px;border:1px solid #d9d9d9;background:#fff;color:#111;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s}.th-featured-carousel__arrow:hover{background:#111;color:#fff;border-color:#111}
.th-featured-carousel{position:relative!important;display:block!important;padding:0 56px!important}.th-featured-carousel__arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;z-index:20!important;width:46px!important;height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important}.th-featured-carousel__arrow--prev{left:0!important;right:auto!important}.th-featured-carousel__arrow--next{right:0!important;left:auto!important}.th-featured-product-card__title{font-size:1.46rem!important;line-height:1.5!important}
.th-category-grid a{display:block;transition:transform .2s ease,box-shadow .2s ease}.th-category-grid a:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.08)}
.th-split-card {
  padding: 28px !important;
}

.th-section {
  padding: 30px 0 !important;
}
/* ===== FIX FOOTER NEWSLETTER (CORREO DUPLICADO) ===== */

/* oculta label flotante */
.footer .field__label {
  display: none !important;
}

/* deja solo el placeholder */
.footer .field__input::placeholder {
  opacity: 1 !important;
}
/* ===== FOOTER NEWSLETTER FIX FINO ===== */

/* ocultar label duplicado */
.footer .field__label {
  display: none !important;
}

/* dejar visible placeholder */
.footer .field__input::placeholder {
  opacity: 1 !important;
}

/* input limpio, pero sin romper hover del contenedor */
.footer .field__input {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  padding-left: 20px !important;
  padding-right: 52px !important;
}

/* quitar solo el borde visual interno duplicado */
.footer .field:before,
.footer .field__input:focus,
.footer .field__input:focus-visible {
  box-shadow: none !important;
}
/* ===== HACER OVALADO EL CAMPO VISIBLE ===== */
.footer .field__input {
  border-radius: 999px !important;
  background: #f5f5f5 !important;
}

.footer .field {
  border-radius: 999px !important;
}
.footer .newsletter-form__field-wrapper {
  border-radius: 999px !important;
}
.footer .field__input {
  border-radius: 999px !important;
}
/* footer newsletter: mismo estilo, pero ovalado */
.footer .newsletter-form__field-wrapper .field,
.footer .newsletter-form__field-wrapper .field:before,
.footer .newsletter-form__field-wrapper .field:after,
.footer .newsletter-form__field-wrapper .field__input {
  border-radius: 999px !important;
}

/* ===== MOBILE ONLY SAFE PASS =====
   Solo ajusta celular/tablet y no toca el diseño de escritorio.
================================== */
@media screen and (max-width: 989px) {
  html,
  body {
    overflow-x: hidden;
  }

  .page-width,
  .page-width-desktop,
  #MainContent .page-width {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  #MainContent h1,
  #MainContent h2,
  #MainContent .title,
  #MainContent .main-page-title,
  #MainContent .collection-hero__title,
  #MainContent .th-title,
  #MainContent .th-hero-heading,
  #MainContent .th-featured-products__heading {
    font-size: clamp(1.85rem, 7.8vw, 2.6rem) !important;
    line-height: 1.08 !important;
  }

  #MainContent p,
  #MainContent li,
  #MainContent .rte,
  #MainContent .th-text,
  #MainContent .collection-hero__description,
  #MainContent .th-collection-intro__text,
  #MainContent .product__description {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .th-section,
  .th-trust-wrap,
  .th-collection-intro-wrap,
  .th-product-info-wrap,
  .th-benefits-wrap,
  .th-faq-wrap {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .th-trust-bar,
  .th-category-grid,
  .th-featured-grid,
  .th-split-grid,
  .th-collection-intro,
  .th-product-info-grid,
  .th-benefits {
    gap: 16px !important;
  }

  .th-trust-bar,
  .th-cat-card,
  .th-product-card,
  .th-split-card,
  .th-split-media,
  .th-collection-intro__card,
  .th-collection-intro__media,
  .th-product-info-card,
  .th-benefit,
  .th-faq,
  #MainContent .card,
  #MainContent .collection-hero,
  #MainContent .facets-container,
  .footer {
    border-radius: 18px !important;
  }

  .button,
  .button--primary,
  .button--secondary,
  .product-form__submit,
  .shopify-payment-button__button,
  .quick-add__submit,
  .th-btn,
  .th-btn-secondary {
    min-height: 48px !important;
  }

  .th-premium-hero {
    padding: 18px 0 22px !important;
  }

  .th-hero-split {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .th-hero-content {
    padding: 6px 0 0 !important;
  }

  .th-hero-heading {
    margin-bottom: 14px !important;
  }

  .th-hero-text,
  .th-hero-text p {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }

  .th-hero-badges {
    margin: 18px 0 !important;
    gap: 8px !important;
  }

  .th-hero-badges span {
    padding: 8px 12px !important;
    font-size: 11px !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 240px !important;
    border-radius: 22px !important;
  }

  .th-hero-controls {
    margin-top: 14px !important;
    gap: 12px !important;
  }

  .th-hero-arrow {
    width: 40px !important;
    height: 40px !important;
    font-size: 20px !important;
  }

  .th-collection-intro {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .th-collection-intro__card,
  .th-split-card {
    padding: 22px !important;
  }

  .th-featured-products__header {
    gap: 12px !important;
    margin-bottom: 18px !important;
  }

  .th-featured-carousel {
    padding: 0 20px !important;
  }

  .th-featured-carousel__arrow {
    width: 38px !important;
    height: 38px !important;
  }

  .th-featured-product-card {
    width: min(78vw, 240px) !important;
    flex: 0 0 min(78vw, 240px) !important;
  }

  .collection-hero__inner {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }

  .facets-container {
    padding: 12px 14px !important;
  }

  #MainContent .card > .card__content,
  #MainContent .card__content {
    padding: 12px 12px 14px !important;
  }

  #MainContent .card-information {
    gap: 6px !important;
  }

  #MainContent .price,
  #MainContent .price-item {
    font-size: 1rem !important;
  }

  .template-product #MainContent .product {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .template-product #MainContent .product__media-wrapper,
  .template-product #MainContent .product__info-wrapper,
  .template-product #MainContent .product__info-container {
    width: 100% !important;
    max-width: none !important;
  }

  .template-product #MainContent .product__info-container {
    padding: 18px !important;
    border-radius: 18px !important;
  }

  .template-product #MainContent .thumbnail-list {
    gap: 8px !important;
  }

  .template-product #MainContent .product__title h1,
  .template-product #MainContent .product__title {
    font-size: clamp(1.9rem, 8vw, 2.45rem) !important;
    line-height: 1.08 !important;
  }

  .template-product #MainContent .product-form__buttons,
  .template-product #MainContent .buy-buttons,
  .template-product #MainContent .product-form__submit,
  .template-product #MainContent .shopify-payment-button,
  .template-product #MainContent .shopify-payment-button__button {
    width: 100% !important;
  }

  .template-collection #MainContent .collection-hero,
  .template-collection #MainContent .facets-container {
    border-radius: 18px !important;
  }

  .template-collection #MainContent .product-grid {
    row-gap: 16px !important;
  }

  .template-cart #MainContent .cart__footer,
  .template-cart #MainContent .cart__blocks {
    padding: 18px !important;
    border-radius: 18px !important;
  }

  .footer__content-top {
    padding-top: 34px !important;
    padding-bottom: 22px !important;
  }

  .footer__blocks-wrapper {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .footer .newsletter-form__field-wrapper,
  .footer .field {
    width: 100% !important;
  }

  .footer .field,
  .footer .field__input,
  .footer .newsletter-form__field-wrapper .field__input {
    min-height: 54px !important;
  }

  .footer .field__input,
  .footer .newsletter-form__field-wrapper .field__input {
    padding-right: 56px !important;
    font-size: 16px !important;
  }

  .footer .newsletter-form__button,
  .footer .field__button {
    width: 46px !important;
  }

  .footer .list-social {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  .footer__content-bottom {
    padding-top: 18px !important;
    padding-bottom: 20px !important;
  }

  .footer__content-bottom-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
  }

  .footer .policies,
  .footer__payment,
  .footer__payment .list-payment {
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 8px 14px !important;
  }
}

@media screen and (max-width: 480px) {
  .page-width,
  .page-width-desktop,
  #MainContent .page-width,
  .th-section,
  .th-trust-wrap,
  .th-collection-intro-wrap,
  .th-product-info-wrap,
  .th-benefits-wrap,
  .th-faq-wrap,
  .footer__content-top,
  .footer__content-bottom {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  #MainContent h1,
  #MainContent h2,
  #MainContent .title,
  #MainContent .main-page-title,
  #MainContent .collection-hero__title,
  #MainContent .th-title,
  #MainContent .th-hero-heading,
  #MainContent .th-featured-products__heading {
    font-size: clamp(1.65rem, 9vw, 2.2rem) !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 210px !important;
  }

  .th-featured-carousel {
    padding: 0 14px !important;
  }

  .th-featured-product-card {
    width: min(82vw, 228px) !important;
    flex: 0 0 min(82vw, 228px) !important;
  }

  #MainContent .card,
  .th-trust-bar,
  .th-cat-card,
  .th-product-card,
  .th-split-card,
  .th-split-media,
  .th-collection-intro__card,
  .th-collection-intro__media,
  .th-product-info-card,
  .th-benefit,
  .th-faq,
  .footer,
  .collection-hero,
  .facets-container {
    border-radius: 16px !important;
  }
}

/* ===== MOBILE TUNING FROM REAL CAPTURES ===== */
@media screen and (max-width: 989px) {
  .header-wrapper,
  .shopify-section-header-sticky,
  .shopify-section-group-header-group,
  #shopify-section-sections--header,
  .announcement-bar,
  .utility-bar {
    background: #ffffff !important;
  }

  .header {
    grid-template-columns: auto 1fr auto !important;
    align-items: center !important;
    column-gap: 10px !important;
    padding-top: 0.8rem !important;
    padding-bottom: 0.8rem !important;
  }

  .header__inline-menu,
  .list-menu--inline {
    display: none !important;
  }

  .header__heading,
  .header__heading-link {
    justify-self: center !important;
    margin: 0 auto !important;
  }

  .header__heading-logo {
    max-height: 32px !important;
    width: auto !important;
  }

  .header__icons {
    gap: 6px !important;
  }

  .menu-drawer,
  .menu-drawer__inner-container,
  .menu-drawer__navigation,
  .menu-drawer__menu,
  .menu-drawer__submenu {
    background: #ffffff !important;
  }

  .menu-drawer__menu-item,
  .menu-drawer summary,
  .menu-drawer .list-menu__item,
  .menu-drawer .header__menu-item,
  .menu-drawer .header__active-menu-item {
    color: #111111 !important;
  }

  .th-premium-hero,
  .th-featured-products-grid {
    padding-top: 16px !important;
    padding-bottom: 18px !important;
  }

  .th-hero-slide {
    border-radius: 20px !important;
  }

  .th-hero-heading {
    font-size: clamp(1.8rem, 7vw, 2.2rem) !important;
    margin-bottom: 12px !important;
  }

  .th-hero-badges {
    margin: 14px 0 !important;
  }

  .th-hero-badges span {
    font-size: 10px !important;
    padding: 7px 10px !important;
  }

  .th-hero-content .button {
    min-height: 48px !important;
    padding: 12px 18px !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 200px !important;
  }

  .th-trust-wrap {
    padding-bottom: 18px !important;
  }

  .th-trust-item {
    padding: 16px 14px !important;
  }

  .th-trust-title {
    font-size: 15px !important;
    margin-bottom: 6px !important;
  }

  .th-trust-copy {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  .th-featured-products__heading {
    font-size: clamp(1.7rem, 7vw, 2.1rem) !important;
  }

  .th-featured-products__button {
    min-height: 46px !important;
    padding: 0 18px !important;
  }

  .th-featured-product-card {
    width: min(70vw, 220px) !important;
    flex: 0 0 min(70vw, 220px) !important;
  }

  .th-featured-product-card__content {
    padding: 0 12px 14px !important;
  }

  .th-featured-product-card__title {
    font-size: 1rem !important;
    line-height: 1.35 !important;
  }

  .th-cat-card {
    min-height: 250px !important;
    border-radius: 20px !important;
  }

  .th-cat-content {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
  }

  .th-cat-title {
    font-size: 18px !important;
    line-height: 1.08 !important;
  }

  .th-cat-sub {
    margin-top: 4px !important;
    font-size: 13px !important;
  }

  .th-split-grid {
    gap: 14px !important;
  }

  .th-split-card {
    padding: 20px !important;
  }

  .th-split-media {
    border-radius: 20px !important;
  }
}

@media screen and (max-width: 480px) {
  .header__heading-logo {
    max-height: 28px !important;
  }

  .th-hero-heading {
    font-size: clamp(1.65rem, 8vw, 2rem) !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 180px !important;
  }

  .th-featured-product-card {
    width: min(72vw, 210px) !important;
    flex: 0 0 min(72vw, 210px) !important;
  }

  .th-cat-card {
    min-height: 220px !important;
  }
}

/* ===== MOBILE COMPRESSION PASS ===== */
@media screen and (max-width: 768px) {
  .menu-drawer,
  .menu-drawer__inner-container,
  .menu-drawer__navigation,
  .menu-drawer__menu,
  .menu-drawer__submenu {
    background: #ffffff !important;
  }

  .menu-drawer *,
  .menu-drawer a,
  .menu-drawer span,
  .menu-drawer summary,
  .menu-drawer details,
  .menu-drawer .link,
  .menu-drawer .list-menu__item,
  .menu-drawer .header__menu-item,
  .menu-drawer .header__active-menu-item,
  .menu-drawer__menu-item,
  .menu-drawer__utility-links,
  .menu-drawer__close-button,
  .menu-drawer .icon-arrow,
  .menu-drawer .icon-caret,
  .menu-drawer svg,
  .menu-drawer .list-menu__item--active,
  .menu-drawer .menu-drawer__menu-item--active {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    fill: #111111 !important;
    stroke: #111111 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
  }

  .announcement-bar {
    min-height: auto !important;
  }

  .utility-bar .announcement-bar__message,
  .announcement-bar .announcement-bar__message {
    font-size: 12px !important;
    line-height: 1.35 !important;
    padding: 8px 40px !important;
  }

  .header__heading-logo {
    max-height: 38px !important;
  }

  .th-premium-hero {
    padding-top: 12px !important;
    padding-bottom: 14px !important;
  }

  .th-hero-slide .page-width {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .th-hero-heading {
    font-size: clamp(1.55rem, 6.8vw, 1.95rem) !important;
    margin-bottom: 10px !important;
  }

  .th-hero-text,
  .th-hero-text p {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  .th-hero-badges {
    gap: 6px !important;
    margin: 12px 0 !important;
  }

  .th-hero-badges span {
    font-size: 10px !important;
    padding: 6px 9px !important;
  }

  .th-hero-content .button {
    min-height: 44px !important;
    padding: 10px 14px !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 165px !important;
  }

  .th-trust-wrap {
    padding-bottom: 12px !important;
  }

  .th-trust-item {
    padding: 12px !important;
  }

  .th-trust-title {
    font-size: 14px !important;
  }

  .th-trust-copy {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  .th-featured-products__header {
    margin-bottom: 14px !important;
  }

  .th-featured-carousel {
    padding: 0 12px !important;
  }

  .th-featured-carousel__arrow {
    width: 34px !important;
    height: 34px !important;
  }

  .th-featured-product-card {
    width: min(62vw, 190px) !important;
    flex: 0 0 min(62vw, 190px) !important;
  }

  .th-featured-product-card__image-wrap {
    padding: 10px !important;
  }

  .th-featured-product-card__title {
    font-size: 0.94rem !important;
  }

  .th-cat-card {
    min-height: 190px !important;
  }

  .th-cat-content {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
  }

  .th-cat-title {
    font-size: 16px !important;
  }

  .th-cat-sub {
    font-size: 12px !important;
  }

  .th-split-grid {
    gap: 12px !important;
  }

  .th-split-card {
    padding: 18px !important;
  }

  .th-split-media {
    aspect-ratio: 4 / 3 !important;
  }
}

/* ===== HERO MOBILE UX ===== */
@media screen and (max-width: 768px) {
  .th-hero-slider {
    touch-action: pan-y !important;
  }

  .th-hero-track {
    will-change: transform;
  }

  .th-hero-slide {
    user-select: none;
    -webkit-user-select: none;
  }

  .th-premium-hero {
    padding-top: 10px !important;
    padding-bottom: 12px !important;
  }

  .th-hero-slide {
    border-radius: 18px !important;
  }

  .th-hero-slide .page-width {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .th-hero-split {
    gap: 10px !important;
  }

  .th-hero-content {
    padding-top: 2px !important;
  }

  .th-hero-eyebrow {
    margin-bottom: 8px !important;
    font-size: 11px !important;
    letter-spacing: 0.16em !important;
  }

  .th-hero-heading {
    font-size: clamp(1.45rem, 6.2vw, 1.85rem) !important;
    line-height: 1.06 !important;
    margin-bottom: 8px !important;
  }

  .th-hero-text,
  .th-hero-text p {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .th-hero-badges {
    gap: 6px !important;
    margin: 10px 0 !important;
  }

  .th-hero-badges span {
    font-size: 10px !important;
    padding: 6px 8px !important;
  }

  .th-hero-content .button {
    min-height: 42px !important;
    padding: 10px 14px !important;
    border-radius: 14px !important;
  }

  .th-hero-media,
  .th-hero-placeholder {
    min-height: 150px !important;
    border-radius: 18px !important;
  }

  .th-hero-controls {
    margin-top: 10px !important;
    gap: 8px !important;
  }

  .th-hero-arrow {
    width: 32px !important;
    height: 32px !important;
    font-size: 16px !important;
  }

  .th-hero-dot {
    width: 8px !important;
    height: 8px !important;
  }
}
/* Descripcion colapsable en producto */
.template-product .th-readmore-wrap {
  position: relative;
  margin-top: 1rem;
}

.template-product .product__description.th-readmore-content {
  position: relative;
  overflow: hidden;
  max-height: 10.5rem;
  transition: max-height 0.35s ease;
}

.template-product .product__description.th-readmore-content::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4.5rem;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.72) 55%,
    rgba(255, 255, 255, 0.96) 100%
  );
  backdrop-filter: blur(4px);
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.template-product .th-readmore-wrap.is-open .product__description.th-readmore-content {
  max-height: 100rem;
}

.template-product .th-readmore-wrap.is-open .product__description.th-readmore-content::after {
  opacity: 0;
}

.template-product .th-readmore-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 0.9rem;
  padding: 0 16px;
  border-radius: 999px;
  background: #111111;
  color: #ffffff;
  font-weight: 700;
  border: 0;
  cursor: pointer;
}

.template-product .th-readmore-toggle:hover {
  opacity: 0.92;
}
/* Descripcion colapsable en producto */
.template-product .product__description-wrap {
  position: relative;
  margin-top: 1rem;
}

.template-product .product__description-collapsible {
  position: relative;
  overflow: hidden;
  max-height: 9.5rem;
  transition: max-height 0.35s ease;
}

.template-product .product__description-collapsible::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4.5rem;
  background: linear-gradient(
    180deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.7) 55%,
    rgba(255,255,255,0.96) 100%
  );
  backdrop-filter: blur(4px);
  pointer-events: none;
  transition: opacity 0.25s ease;
}

.template-product .product__description-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 0.9rem;
  padding: 0 16px;
  border-radius: 999px;
  background: #111111;
  color: #ffffff;
  font-weight: 700;
  cursor: pointer;
}

.template-product .product__description-toggle-less {
  display: none;
}

.template-product .product__description-toggle-input:checked + .product__description-collapsible {
  max-height: 100rem;
}

.template-product .product__description-toggle-input:checked + .product__description-collapsible::after {
  opacity: 0;
}

.template-product .product__description-toggle-input:checked ~ .product__description-toggle .product__description-toggle-more {
  display: none;
}

.template-product .product__description-toggle-input:checked ~ .product__description-toggle .product__description-toggle-less {
  display: inline;
}

@media screen and (max-width: 768px) {
  .template-product .product__description-collapsible {
    max-height: 7.5rem;
  }
}
/* Botones de compra en producto: bordes redondeados reales */
.template-product .product-form__buttons .product-form__submit,
.template-product .product-form__buttons .product-form__submit::before,
.template-product .product-form__buttons .product-form__submit::after,
.template-product .product-form__buttons .shopify-payment-button__button,
.template-product .product-form__buttons .shopify-payment-button__button::before,
.template-product .product-form__buttons .shopify-payment-button__button::after,
.template-product .product-form__buttons .button,
.template-product .product-form__buttons .button::before,
.template-product .product-form__buttons .button::after {
  border-radius: 18px !important;
}
/* Agregar al carrito: redondeado real en Dawn */
.template-product .product-form__buttons .product-form__submit,
.template-product .product-form__buttons .product-form__submit.button,
.template-product .product-form__buttons .product-form__submit::before,
.template-product .product-form__buttons .product-form__submit::after,
.template-product .product-form__buttons .button--full-width,
.template-product .product-form__buttons .button--full-width::before,
.template-product .product-form__buttons .button--full-width::after,
.template-product .product-form__buttons .button--secondary,
.template-product .product-form__buttons .button--secondary::before,
.template-product .product-form__buttons .button--secondary::after {
  border-radius: 18px !important;
}

.template-product .product-form__buttons .product-form__submit,
.template-product .product-form__buttons .button--full-width,
.template-product .product-form__buttons .button--secondary {
  --buttons-radius: 18px !important;
  --buttons-radius-outset: 19px !important;
  overflow: hidden !important;
}

/* Header search + hero spacing polish */
@media screen and (min-width: 990px) {
  .th-premium-hero {
    padding-top: 12px !important;
  }
}
