/* ET-029. Regla única de títulos. La capa importante prevalece sobre los
   estilos heredados sin capa de Elementor, Astra y las recuperaciones previas. */
@font-face{font-family:Karla;font-style:normal;font-weight:500;font-display:swap;src:url('fonts/karla-500.ttf') format('truetype')}
@layer eternity-typography {
  :root{--eternity-title-size:28px}
  body,button,input,select,textarea{font-family:Karla,sans-serif!important}
  :is(h1,h2,h3,h4,h5,h6,p,a,span,label,li,dt,dd,th,td,figcaption,.elementor-heading-title,.elementor-icon-box-title,.elementor-image-box-title,.entry-title,.widget-title,.product-title,.product_title,.woocommerce-loop-product__title,.sp-wcsp-cat-name){font-family:Karla,sans-serif!important}
  :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title,.elementor-icon-box-title,.elementor-image-box-title,.entry-title,.widget-title,.product-title,.product_title,.woocommerce-loop-product__title,.sp-wcsp-cat-name,.eternity-store-eyebrow,.eternity-store figcaption),
  :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title,.elementor-icon-box-title,.elementor-image-box-title,.entry-title,.widget-title,.product-title,.product_title,.woocommerce-loop-product__title,.sp-wcsp-cat-name,.eternity-store figcaption) :is(a,span,strong,em){
    font-family:Karla,sans-serif!important;font-size:var(--eternity-title-size)!important;font-weight:500!important;line-height:1.3!important;letter-spacing:normal!important;white-space:normal!important;overflow-wrap:anywhere!important;
  }
  /* ET-030: mismo interlineado proporcional en todos los párrafos y formatos. */
  :root{--eternity-paragraph-line-height:1.6}
  p,.elementor-widget-text-editor,.elementor-icon-box-description,.elementor-image-box-description,.woocommerce-product-details__short-description{
    line-height:var(--eternity-paragraph-line-height)!important;
  }
  p :is(span,a,strong,em,b,i,u,small){line-height:inherit!important}
  /* Las fuentes de iconos no son texto y deben conservar sus glifos. */
  :is(.fa,.fas,.far,.fab,.eicon,[class*="eicon-"],.dashicons,.material-icons,.star-rating,.star-rating span,.shopengine-icon){font-family:revert-layer!important}
  @media(max-width:1024px){:root{--eternity-title-size:26px}}
  @media(max-width:767px){:root{--eternity-title-size:24px}}
}

/* ET-031: mismo gris existente para los enunciados de sección.
   La franja promocional no es un enunciado de sección. */
@layer eternity-typography {
  :root{--eternity-section-label-color:#6f6f6f}
  .eternity-store-eyebrow,
  .elementor-widget-heading:not(.elementor-element-e9927b8) h5.elementor-heading-title,
  .elementor-widget-heading:not(.elementor-element-e9927b8) h5.elementor-heading-title :is(span,a,font){color:var(--eternity-section-label-color)!important}
}

/* ET-032: exception autorisée pour les titres des cartes de produits de la home. */
@layer eternity-typography {
 body.home .elementor-element-409605c .woocommerce-loop-product__title,
 body.home .elementor-element-409605c .woocommerce-loop-product__title :is(a,span,strong){font-size:calc(var(--eternity-title-size) * .7)!important}
 body.home .elementor-element-409605c ul.products{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:24px 18px!important;margin:0!important;padding:0!important;align-items:start}
 body.home .elementor-element-409605c ul.products::before,body.home .elementor-element-409605c ul.products::after{display:none!important}
 body.home .elementor-element-409605c ul.products li.product{width:auto!important;min-width:0!important;margin:0!important;padding:0!important;float:none!important;height:auto!important}
 body.home .elementor-element-409605c .astra-shop-thumbnail-wrap{margin-bottom:8px!important}
 body.home .elementor-element-409605c .astra-shop-thumbnail-wrap img{aspect-ratio:1;object-fit:contain;margin-bottom:0!important}
 body.home .elementor-element-409605c .astra-shop-summary-wrap{padding:0!important}
 body.home .elementor-element-409605c .woocommerce-loop-product__title{margin:6px 0!important;padding:0!important}
 body.home .elementor-element-409605c .price{margin:6px 0!important;font-size:14px!important}
 body.home .elementor-element-409605c .astra-shop-summary-wrap>.button{padding:10px 6px!important;margin:6px 0!important;min-height:44px;white-space:normal!important;line-height:1.3!important;letter-spacing:.5px!important;width:100%;box-sizing:border-box}
 body.home .elementor-element-409605c .eternity-product-actions{margin:4px 0!important;gap:2px!important}
 body.home .elementor-element-409605c li.product p{margin:6px 0 0!important}
 @media(max-width:1024px){body.home .elementor-element-409605c ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px 16px!important}}
 @media(max-width:767px){body.home .elementor-element-409605c ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 12px!important}}
}

/* ET-034: restaurar tamaño del hero anterior a la unificación; conservar Karla. */
@layer eternity-typography {
 body.home .elementor-element-af3fb9f .elementor-heading-title{font-size:98px!important;line-height:100px!important}
 @media(max-width:1024px){body.home .elementor-element-af3fb9f .elementor-heading-title{font-size:64px!important;line-height:1.12!important}}
 @media(max-width:767px){body.home .elementor-element-af3fb9f .elementor-heading-title{font-size:48px!important;line-height:59px!important}}
}

/* ET-054: les étoiles WooCommerce sont des glyphes, pas du texte Karla. */
@layer eternity-typography{
 body .star-rating,
 body .star-rating::before,
 body .star-rating > span,
 body .star-rating > span::before{font-family:WooCommerce!important;font-weight:400!important;font-style:normal!important;letter-spacing:normal!important}
}

/* ET-088: six requested CTAs share the Voir tous les parfums sizing. */
@layer eternity-typography{
 body :is(.elementor-element-4095416 .elementor-button,#masthead .ast-custom-button,.eternity-store-visit,.eternity-reviews-link,.elementor-element-ec8db63 .elementor-button,.elementor-element-c6ab30c .elementor-button,.elementor-element-2479816 .elementor-button,.wpforms-submit){
 font-family:Karla,sans-serif!important;font-size:16px!important;font-weight:600!important;line-height:1!important;letter-spacing:2px!important;text-transform:uppercase!important;padding:16px 31px!important;min-height:50px!important;height:auto!important;border:1px solid #060606!important;border-radius:0!important;box-sizing:border-box!important;max-width:100%!important;white-space:normal!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;
 }
 body :is(.elementor-element-4095416 .elementor-button,#masthead .ast-custom-button,.eternity-store-visit,.eternity-reviews-link,.elementor-element-ec8db63 .elementor-button,.elementor-element-c6ab30c .elementor-button,.elementor-element-2479816 .elementor-button,.wpforms-submit) :is(.elementor-button-text,.elementor-button-content-wrapper){font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}
}

/* ET-094: center within the product column on all catalogue archives. */
body.woocommerce.archive nav.woocommerce-pagination{width:100%;clear:both;text-align:center!important;display:flex!important;justify-content:center!important}
body.woocommerce.archive nav.woocommerce-pagination ul.page-numbers{display:flex!important;flex-wrap:wrap;justify-content:center;float:none!important;width:auto!important;max-width:100%;margin-left:auto!important;margin-right:auto!important;padding:0!important}

/* ET-095: Boutique heading aligned to the product column center. */
body.post-type-archive-product .woocommerce-products-header__title{text-align:center!important;width:100%}

/* ET-097: cover text containers and inline emphasis throughout the storefront.
   Icon font classes retain their own glyph families. */
@layer eternity-typography {
 body :is(div,section,article,blockquote,q,cite,strong,b,em,i,u,small,summary,legend,option,font,code,pre,time,address):not(:is(.fa,.fas,.far,.fab,.eicon,[class*="eicon-"],.dashicons,.material-icons,.shopengine-icon,[class*="shopengine-icon-"],[class*="icon-"])) {font-family:Karla,sans-serif!important}
 :root{--eternity-body-size:16px}
 body.page-id-239 .elementor-icon-box-description,
 body.page-id-239 .elementor-testimonial-content,
 .eternity-category-access p,
 body:is(.page-id-239,.page-id-647,.page-id-1305,.single-post) .elementor-widget-text-editor{
 font-size:var(--eternity-body-size)!important;line-height:var(--eternity-paragraph-line-height)!important;letter-spacing:normal!important;
 }
 body.page-id-239 .elementor-icon-box-description{font-weight:400!important}
}
