/*
Theme Name: Astra Child - Alimentos Europeos
Theme URI: https://alimentoeuropeos.com
Description: Home premium para Alimentos Europeos
Author: Gerardo Aguilar
Template: astra
Version: 2.0.0
Text Domain: astra-child-alimentos-europeos
*/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@1,700;1,800&display=swap');

/* =========================================================
   ALIMENTOS EUROPEOS / EUROPA EN TU MESA
   CSS REHECHO DESDE CERO
   Objetivo: limpio, consistente y estable
========================================================= */

:root {
  --ae-bg: #050505;
  --ae-bg-soft: #0b0b0b;
  --ae-surface: #090909;
  --ae-surface-2: #101010;
  --ae-card: rgba(255,255,255,0.03);
  --ae-card-2: rgba(255,255,255,0.04);
  --ae-gold: #d8ab63;
  --ae-gold-2: #efc27a;
  --ae-gold-soft: #ead8b8;
  --ae-ivory: #f6efe4;
  --ae-text: #f3ebdf;
  --ae-muted: #cbb99c;
  --ae-line: rgba(216, 171, 99, 0.18);
  --ae-line-strong: rgba(216, 171, 99, 0.3);
  --ae-green: #25d366;
  --ae-green-soft: #d7f7e3;
  --ae-green-bg: rgba(37, 211, 102, 0.06);
  --ae-radius-xl: 32px;
  --ae-radius-lg: 26px;
  --ae-radius-md: 20px;
  --ae-radius-sm: 16px;
  --ae-shadow: 0 20px 60px rgba(0,0,0,.35);
  --ae-shadow-soft: 0 18px 44px rgba(0,0,0,.34);
  --ae-container: 1280px;
  --ae-shop-width: 1120px;
  --ae-single-width: 1240px;
  --ae-ease: .28s ease;
}

/* =========================================================
   BASE GENERAL
========================================================= */
html {
  scroll-behavior: smooth;
}

body,
body.home,
body.page,
body.woocommerce,
body.woocommerce-page,
body.single-product,
body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
  background: var(--ae-bg);
  color: var(--ae-text);
}

body,
body p,
body li,
body a,
body span,
body input,
body textarea,
body select,
body button {
  font-family: Arial, Helvetica, sans-serif;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
.ae-logo-wordmark,
.ae-kicker,
.ae-quote,
.ae-footer__wordmark,
.ae-header__wordmark {
  font-family: Georgia, "Times New Roman", serif;
}

body .site,
body .site-content,
body .content-area,
body .ast-container,
body .entry-content,
body .site-main,
body .main-header-bar,
body .ast-builder-grid-row-container,
body .ast-builder-layout-element,
body .site-primary-footer-wrap {
  background: transparent;
}

body .entry-content > .wp-block-group,
body .entry-content > .wp-block-cover,
body .entry-content > .wp-block-columns {
  margin-bottom: 0;
}

body .woocommerce-notices-wrapper:empty {
  display: none !important;
}

.ae-home *,
.ae-site-header *,
.ae-site-footer *,
.ae-shop-wrap *,
.ae-contact-form-wrap * {
  box-sizing: border-box;
}

.ae-container {
  width: min(100% - 40px, var(--ae-container));
  margin-inline: auto;
}

.ae-section {
  position: relative;
  padding: clamp(60px, 6vw, 80px) 0;
}

.ae-section--tight {
  padding: 50px 0;
}

.ae-section__head {
  max-width: 780px;
  margin-bottom: 28px;
}

.ae-kicker {
  display: inline-block;
  margin-bottom: 16px;
  font-size: .82rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ae-gold);
}

.ae-section__head h2 {
  margin: 0 0 16px;
  color: var(--ae-ivory);
  font-size: clamp(2.2rem, 5vw, 4.25rem);
  line-height: 1.02;
  font-weight: 400;
  letter-spacing: -.03em;
}

.ae-section__head p {
  margin: 0;
  color: var(--ae-muted);
  font-size: 1.04rem;
  line-height: 1.8;
}

.ae-divider {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--ae-line), transparent);
}

/* =========================================================
   BOTONES
========================================================= */
.ae-btn-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

.ae-btn,
a.button.ae-btn,
button.ae-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1px solid transparent;
  text-decoration: none !important;
  font-size: .95rem;
  letter-spacing: .04em;
  transition: all var(--ae-ease);
}

.ae-btn--gold {
  background: var(--ae-gold);
  border-color: var(--ae-gold);
  color: #111 !important;
  font-weight: 700;
}

.ae-btn--gold:hover {
  background: var(--ae-gold-2);
  border-color: var(--ae-gold-2);
  color: #111 !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(216,171,99,.28);
}

.ae-btn--ghost {
  background: transparent;
  border-color: var(--ae-line);
  color: var(--ae-ivory) !important;
}

.ae-btn--ghost:hover {
  border-color: var(--ae-gold);
  color: var(--ae-gold) !important;
}

.ae-btn--line {
  background: rgba(255,255,255,.02);
  border-color: rgba(255,255,255,.08);
  color: var(--ae-gold-soft) !important;
}

.ae-btn--line:hover {
  border-color: var(--ae-gold);
  color: var(--ae-ivory) !important;
}

/* =========================================================
   HEADER PREMIUM
========================================================= */
.ae-site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(5,5,5,.82);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--ae-line);
}

.ae-header__inner {
  min-height: 92px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 26px;
}

.ae-header__logo-link {
  text-decoration: none !important;
}

.ae-header__logo {
  display: block;
  max-height: 80px;
  width: auto;
}

.ae-header__wordmark {
  display: inline-flex;
  flex-direction: column;
  color: var(--ae-ivory);
  text-decoration: none;
  line-height: 1;
  font-size: 1.18rem;
}

.ae-header__nav {
  display: flex;
  justify-content: center;
}

.ae-menu {
  display: flex;
  align-items: center;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.ae-menu li {
  margin: 0;
}

.ae-menu a {
  color: var(--ae-ivory);
  text-decoration: none;
  font-size: .96rem;
  transition: color var(--ae-ease);
}

.ae-menu a:hover,
.ae-menu .current-menu-item > a {
  color: var(--ae-gold);
}

.ae-header__actions {
  display: flex;
  align-items: center;
  gap: 14px;
}

.ae-header__cart {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid var(--ae-line);
  background: rgba(255,255,255,.02);
  color: var(--ae-gold-soft);
  text-decoration: none !important;
}

.ae-header__cart:hover {
  border-color: var(--ae-gold);
  color: var(--ae-ivory);
}

.ae-header__cart-count {
  min-width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: var(--ae-gold);
  color: #111;
  font-size: .78rem;
  font-weight: 700;
}

.ae-mobile-toggle {
  display: none;
  width: 48px;
  height: 48px;
  padding: 10px;
  border: 1px solid var(--ae-line);
  border-radius: 12px;
  background: transparent;
  cursor: pointer;
}

.ae-mobile-toggle span {
  display: block;
  height: 2px;
  margin: 5px 0;
  background: var(--ae-ivory);
}

.ae-mobile-panel {
  display: none;
  border-top: 1px solid var(--ae-line);
  background: #080808;
}

.ae-mobile-menu {
  list-style: none;
  margin: 0;
  padding: 18px 0;
}

.ae-mobile-menu li {
  margin: 0;
}

.ae-mobile-menu a {
  display: block;
  padding: 12px 0;
  color: var(--ae-ivory);
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.05);
}

.ae-mobile-panel__cta {
  padding-bottom: 20px;
}

/* =========================================================
   AJUSTES HEADER DEL TEMA / ASTRA
========================================================= */
body .site-header {
  position: relative;
  z-index: 30;
}

body .ast-primary-header-bar,
body .ast-builder-menu-1 {
  background: transparent !important;
}

body .main-header-menu .menu-link,
body .ast-header-custom-item,
body .site-title a {
  color: var(--ae-ivory) !important;
}

body .main-header-menu .menu-link:hover {
  color: var(--ae-gold) !important;
}

/* =========================================================
   HERO HOME
========================================================= */
.ae-hero {
  position: relative;
  overflow: hidden;
  padding: 110px 0 90px;
  border-bottom: 1px solid var(--ae-line);
  background:
    radial-gradient(circle at top right, rgba(216,171,99,.16), transparent 28%),
    radial-gradient(circle at left center, rgba(216,171,99,.08), transparent 35%),
    linear-gradient(180deg, #0b0b0b 0%, #050505 100%);
}

.ae-hero__grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 54px;
  align-items: center;
}

.ae-hero__copy h1 {
  margin: 0 0 18px;
  color: var(--ae-ivory);
  font-size: clamp(3rem, 7vw, 6.4rem);
  line-height: .94;
  letter-spacing: -.05em;
  font-weight: 400;
}

.ae-hero__copy p {
  max-width: 680px;
  margin: 0;
  color: var(--ae-muted);
  font-size: 1.08rem;
  line-height: 1.8;
}

.ae-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.ae-chip {
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid var(--ae-line);
  background: rgba(255,255,255,.02);
  color: var(--ae-gold-soft);
  font-size: .92rem;
}

.ae-hero__visual {
  position: relative;
}

.ae-hero__card {
  position: relative;
  min-height: 590px;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.06);
  box-shadow: var(--ae-shadow);
  background:
    linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.44)),
    url('https://images.unsplash.com/photo-1544025162-d76694265947?auto=format&fit=crop&w=1400&q=80') center/cover no-repeat;
}

.ae-hero__badge {
  position: absolute;
  left: 24px;
  right: auto;
  bottom: 24px;
  max-width: 340px;
  padding: 18px 20px;
  border-radius: 22px;
  border: 1px solid rgba(216,171,99,.20);
  background: rgba(8,8,8,.72);
  backdrop-filter: blur(10px);
}

.ae-hero__badge strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ae-ivory);
  font-size: 1rem;
}

.ae-hero__badge span {
  display: block;
  color: var(--ae-muted);
  font-size: .92rem;
  line-height: 1.55;
}

/* =========================================================
   CATEGORÍAS HOME
========================================================= */
.ae-cats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

.ae-cat {
  position: relative;
  min-height: 360px;
  overflow: hidden;
  border-radius: var(--ae-radius-lg);
  border: 1px solid rgba(255,255,255,.06);
  box-shadow: var(--ae-shadow);
  background: #111;
}

.ae-cat img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

.ae-cat:hover img {
  transform: scale(1.04);
}

.ae-cat__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: end;
  padding: 24px;
  background: linear-gradient(180deg, transparent 25%, rgba(0,0,0,.84) 100%);
}

.ae-cat__overlay h3 {
  margin: 0 0 8px;
  color: var(--ae-ivory);
  font-size: 1.6rem;
  line-height: 1.05;
  font-weight: 400;
}

.ae-cat__overlay p {
  margin: 0;
  color: var(--ae-gold-soft);
  font-size: .94rem;
  line-height: 1.6;
}

/* =========================================================
   BLOQUES HOME
========================================================= */
.ae-brand,
.ae-featured {
  display: grid;
  gap: 40px;
  align-items: center;
}

.ae-brand {
  grid-template-columns: .92fr 1.08fr;
}

.ae-brand__box,
.ae-featured__content,
.ae-service,
.ae-cta,
.ae-contact-form-card {
  border: 1px solid var(--ae-line);
  box-shadow: var(--ae-shadow);
}

.ae-brand__box {
  padding: 38px;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}

.ae-quote {
  margin: 0;
  color: var(--ae-ivory);
  font-size: clamp(2rem, 4vw, 3.7rem);
  line-height: 1.08;
  letter-spacing: -.03em;
  font-weight: 400;
}

.ae-brand__copy p {
  margin: 0 0 18px;
  color: var(--ae-muted);
  line-height: 1.8;
  font-size: 1.02rem;
}

.ae-brand__copy p:last-child {
  margin-bottom: 0;
}

.ae-featured {
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
}

.ae-featured__media {
  min-height: 520px;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.06);
  box-shadow: var(--ae-shadow);
}

.ae-featured__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ae-featured__content {
  padding: 38px;
  border-radius: 28px;
  background: var(--ae-card);
}

.ae-featured__eyebrow {
  color: var(--ae-gold);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.ae-featured__content h3 {
  margin: 12px 0 16px;
  color: var(--ae-ivory);
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 1.02;
  font-weight: 400;
}

.ae-featured__content p {
  margin: 0;
  color: var(--ae-muted);
  line-height: 1.82;
}

.ae-featured__list {
  list-style: none;
  margin: 24px 0 0;
  padding: 0;
}

.ae-featured__list li {
  position: relative;
  margin-bottom: 14px;
  padding-left: 22px;
  color: var(--ae-text);
  line-height: 1.7;
}

.ae-featured__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ae-gold);
}

.ae-services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.ae-service {
  padding: 30px;
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  min-height: 100%;
}

.ae-service h3 {
  margin: 0 0 12px;
  color: var(--ae-ivory);
  font-size: 1.55rem;
  line-height: 1.08;
  font-weight: 400;
}

.ae-service p {
  margin: 0;
  color: var(--ae-muted);
  line-height: 1.85;
  font-size: 1rem;
}

.ae-service p strong {
  color: var(--ae-gold-soft);
  font-weight: 700;
}

.ae-service__icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 50%;
  border: 1px solid var(--ae-line);
  color: var(--ae-gold);
  font-size: 1.15rem;
}

.ae-service h3 {
  margin: 0 0 10px;
  color: var(--ae-ivory);
  font-size: 1.55rem;
  line-height: 1.05;
  font-weight: 400;
}

.ae-service p {
  margin: 0;
  color: var(--ae-muted);
  line-height: 1.75;
}

.ae-cta {
  padding: 50px;
  border-radius: var(--ae-radius-xl);
  text-align: center;
  background:
    radial-gradient(circle at top right, rgba(216,171,99,.16), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
}

.ae-cta h2 {
  margin: 0 0 14px;
  color: var(--ae-ivory);
  font-size: clamp(2.2rem, 5vw, 4rem);
  line-height: 1.02;
  font-weight: 400;
}

.ae-cta p {
  max-width: 760px;
  margin: 0 auto;
  color: var(--ae-muted);
  font-size: 1.03rem;
  line-height: 1.8;
}

.ae-cta .ae-btn-wrap {
  justify-content: center;
}

.ae-watermark {
  position: absolute;
  right: 4%;
  bottom: 0;
  width: 240px;
  opacity: .04;
  pointer-events: none;
  filter: grayscale(100%);
}

/* =========================================================
   FOOTER PREMIUM
========================================================= */
.ae-site-footer {
  margin-top: 40px;
  padding: 52px 0 20px;
  background: #050505;
  border-top: 1px solid var(--ae-line);
}

.ae-footer__top {
  display: grid;
  grid-template-columns: 1.3fr .7fr .7fr .7fr;
  gap: 34px;
  padding-bottom: 30px;
}

.ae-footer__logo {
  display: block;
  max-width: 120px;
  height: auto;
  margin-bottom: 16px;
}

.ae-footer__wordmark {
  margin-bottom: 12px;
  color: var(--ae-ivory);
  font-size: 1.8rem;
}

.ae-footer__tagline {
  margin: 0 0 10px;
  color: var(--ae-gold);
  font-size: .95rem;
}

.ae-footer__copy {
  max-width: 440px;
  margin: 0;
  color: var(--ae-muted);
  line-height: 1.8;
}

.ae-footer__col h4 {
  margin: 0 0 14px;
  color: var(--ae-ivory);
  font-size: 1.2rem;
  font-weight: 400;
}

.ae-footer__col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ae-footer__col li {
  margin: 0 0 10px;
  color: var(--ae-muted);
}

.ae-footer__col a {
  color: var(--ae-muted);
  text-decoration: none;
}

.ae-footer__col a:hover {
  color: var(--ae-gold);
}

.ae-footer__bottom {
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.06);
  text-align: center;
}

.ae-footer__bottom p {
  margin: 0;
  color: var(--ae-muted);
  font-size: .92rem;
}

body .site-footer {
  background: #050505;
  color: var(--ae-muted);
  border-top: 1px solid var(--ae-line);
}

/* =========================================================
   SHOP HERO + CATEGORÍAS
========================================================= */
.ae-shop-hero {
  margin: 0 !important;
  padding: 48px 0 34px;
  border-bottom: 1px solid rgba(216,171,99,.12);
  background:
    radial-gradient(circle at top right, rgba(216,171,99,.10), transparent 24%),
    linear-gradient(180deg, #080808 0%, #050505 100%);
}

.ae-shop-hero__inner {
  max-width: 980px;
}

.ae-shop-hero__copy {
  max-width: 760px;
}

.ae-shop-hero__copy h1 {
  margin: 0 0 16px;
  color: var(--ae-ivory);
  font-size: clamp(3rem, 6vw, 5.4rem);
  line-height: .94;
  font-weight: 400;
  letter-spacing: -.045em;
}

.ae-shop-hero__copy p {
  margin: 0;
  color: var(--ae-gold-soft);
  font-size: 1.08rem;
  line-height: 1.9;
}

.ae-shop-cats {
  padding: 18px 0 8px;
  background: #050505;
}

.ae-shop-cats__nav,
.ae-header-cats {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.ae-shop-cats__link,
.ae-header-cats__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(216,171,99,.18);
  background: rgba(255,255,255,.02);
  color: var(--ae-gold-soft);
  text-decoration: none !important;
  font-size: .86rem;
  letter-spacing: .04em;
  transition: all var(--ae-ease);
}

.ae-shop-cats__link:hover,
.ae-header-cats__link:hover {
  border-color: rgba(216,171,99,.38);
  color: var(--ae-ivory);
  transform: translateY(-1px);
}

.ae-shop-cats__link.is-active,
.ae-header-cats__link.is-active {
  background: var(--ae-gold);
  border-color: var(--ae-gold);
  color: #111 !important;
  font-weight: 700;
}

/* =========================================================
   SHOP WRAP / TOOLBAR
========================================================= */
.ae-shop-wrap {
  max-width: var(--ae-shop-width);
  margin: 0 auto 24px;
  padding: 26px 20px 0;
}

.ae-shop-header {
  margin-bottom: 20px;
}

.ae-shop-description {
  max-width: 840px;
  color: var(--ae-muted);
  line-height: 1.85;
}

.ae-shop-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 26px;
  padding: 18px 22px;
  border: 1px solid var(--ae-line);
  border-radius: 20px;
  background: rgba(255,255,255,.02);
}

.ae-shop-toolbar .woocommerce-result-count {
  margin: 0;
  color: var(--ae-gold-soft);
}

.ae-shop-toolbar .woocommerce-ordering {
  margin: 0;
}

.ae-shop-toolbar select {
  min-height: 46px;
  padding: 0 14px;
  border-radius: 14px;
  border: 1px solid var(--ae-line);
  background: #101010;
  color: var(--ae-ivory);
}

/* =========================================================
   GRID DE PRODUCTOS
========================================================= */
.ae-products-grid,
ul.products.ae-products-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: var(--ae-shop-width);
  margin: 0 auto 20px;
  padding: 0;
  list-style: none;
}

.ae-product-card,
li.product.ae-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 0 !important;
  padding: 0 0 16px !important;
  list-style: none;
  background: var(--ae-surface);
  border: 1px solid rgba(216,171,99,.14);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: var(--ae-shadow-soft);
  transition: transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}

.ae-product-card:hover,
li.product.ae-product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 70px rgba(0,0,0,.58);
  border-color: rgba(216,171,99,.32);
}

.ae-product-card__link {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  line-height: 0;
}

.ae-product-card__media {
  position: relative !important;
  width: 100%;
  height: 255px;
  margin: 0 !important;
  padding: 14px !important;
  overflow: hidden;
  background: #e9e3d8 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-bottom: 1px solid rgba(0,0,0,.05);
}

.ae-product-card__media img,
.ae-product-card__media .attachment-woocommerce_thumbnail,
li.product.ae-product-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform .45s ease;
}

.ae-product-card:hover .ae-product-card__media img,
li.product.ae-product-card:hover img {
  transform: scale(1.04);
}

.ae-product-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(18,18,18,.82) !important;
  border: 1px solid rgba(216,171,99,.42) !important;
  color: #f0d19a !important;
  backdrop-filter: blur(8px);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}


.ae-product-card__badge--iberico { background: rgba(216,171,99,.18); border: 1px solid rgba(216,171,99,.48); color: #f0d19a; }
.ae-product-card__badge--serrano { background: rgba(176,124,52,.18); border: 1px solid rgba(176,124,52,.42); color: #e6be7a; }
.ae-product-card__badge--reserva { background: rgba(92,28,36,.40); border: 1px solid rgba(154,74,87,.45); color: #f0d5d9; }
.ae-product-card__badge--curado { background: rgba(234,216,184,.14); border: 1px solid rgba(234,216,184,.34); color: #f6efe4; }
.ae-product-card__badge--destacado { background: rgba(24,210,107,.12); border: 1px solid rgba(24,210,107,.35); color: #8ff0ba; }
.ae-product-card__badge--charcuteria { background: rgba(142,86,46,.22); border: 1px solid rgba(190,128,81,.38); color: #efc18e; }
.ae-product-card__badge--queso { background: rgba(244,239,228,.10); border: 1px solid rgba(244,239,228,.28); color: #f6efe4; }
.ae-product-card__badge--gourmet { background: rgba(8,8,8,.82); border: 1px solid rgba(216,171,99,.30); color: #ead8b8; }
.ae-product-card__badge--default { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); color: #f3ebdf; }
.ae-product-card__badge--iberico,
.ae-product-card__badge--serrano,
.ae-product-card__badge--reserva,
.ae-product-card__badge--curado,
.ae-product-card__badge--destacado,
.ae-product-card__badge--charcuteria,
.ae-product-card__badge--queso,
.ae-product-card__badge--gourmet,
.ae-product-card__badge--default {
  background: rgba(18,18,18,.82) !important;
  border: 1px solid rgba(216,171,99,.42) !important;
  color: #f0d19a !important;
}


.ae-product-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 16px 18px 10px;
  text-align: center;
  background: linear-gradient(180deg, rgba(12,12,12,.88), #090909);
}

.ae-product-card__title,
li.product.ae-product-card .woocommerce-loop-product__title {
  margin: 0 !important;
  min-height: 0;
  color: var(--ae-ivory) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.28rem !important;
  line-height: 1.14 !important;
  font-weight: 400 !important;
  text-align: center !important;
}

.ae-product-card__price,
.ae-product-card__price *,
li.product.ae-product-card .price,
li.product.ae-product-card .price * {
  margin: 0 !important;
  color: var(--ae-gold) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.ae-product-card__price del,
.ae-product-card__price del *,
li.product.ae-product-card .price del,
li.product.ae-product-card .price del * {
  color: rgba(244,234,220,.35) !important;
}

.ae-product-card__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 0 18px 18px;
  margin-top: auto;
}

.ae-product-card__shop-btn,
.ae-product-card .ae-wa-btn--loop,
li.product.ae-product-card .button,
li.product.ae-product-card a.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 220px !important;
  min-height: 46px !important;
  padding: 0 16px !important;
  margin: 0 auto !important;
  border-radius: 999px !important;
  text-align: center !important;
  text-decoration: none !important;
  line-height: 1 !important;
  font-size: .9rem !important;
}

.ae-product-card__shop-btn,
li.product.ae-product-card .button {
  border: 1px solid rgba(216,171,99,.75) !important;
  background: transparent !important;
  color: var(--ae-gold) !important;
}

.ae-product-card__shop-btn:hover,
li.product.ae-product-card .button:hover {
  background: var(--ae-gold) !important;
  color: #111 !important;
}

.ae-product-card .ae-wa-btn--loop {
  border: 1px solid var(--ae-green) !important;
  background: rgba(24,210,107,.03) !important;
  color: var(--ae-green) !important;
}

.ae-product-card .ae-wa-btn--loop:hover {
  background: var(--ae-green) !important;
  color: #07120b !important;
}

.ae-product-card .posted_in,
.ae-product-card .product-category,
.ae-product-card .wc-product-category,
.ae-product-card .ast-woo-product-category,
.ae-product-card .star-rating,
.ae-product-card .woocommerce-review-link,
.ae-product-card .added_to_cart,
li.product.ae-product-card .star-rating,
li.product.ae-product-card .added_to_cart {
  display: none !important;
}

/* =========================================================
   SINGLE PRODUCT FINAL ESTABLE
========================================================= */

body.single-product .site-content,
body.single-product .content-area,
body.single-product .site-main,
body.single-product .ast-container,
body.single-product .woocommerce {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.single-product .site-content {
  padding-top: 14px !important;
}

/* =========================================================
   AE - FONDO BLANCO INMEDIATO EN GALERIA PRODUCTO
   ========================================================= */

.single-product div.product div.images,
/* SOLO imágenes, no todo */
.single-product div.product div.images img {
    background: #ffffff !important;
}
.single-product .woocommerce-product-gallery__image img {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery *,
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image,
.single-product .flex-viewport,
.single-product .flex-viewport *,
.single-product .flex-control-thumbs,
.single-product figure.woocommerce-product-gallery__wrapper {
    background-color: #ffffff !important;
}

.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__wrapper {
    background: #ffffff !important;
}

.single-product .woocommerce-product-gallery__image img {
    background: #ffffff !important;
    object-fit: contain !important;
}

.single-product .woocommerce-notices-wrapper,
.single-product .woocommerce-breadcrumb,
.single-product nav.woocommerce-breadcrumb,
.single-product .ast-breadcrumbs-wrapper,
.single-product .entry-header,
.single-product .product_meta,
.single-product .posted_in,
.single-product .tagged_as,
.single-product .sku_wrapper {
  display: none !important;
}

.single-product div.product {
  display: grid !important;
  grid-template-columns: minmax(0, 740px) minmax(420px, 560px) !important;
  gap: 34px !important;
  align-items: start !important;
  justify-content: center !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
}

/* columna galería */
.single-product div.product .woocommerce-product-gallery {
  width: 100% !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}

.single-product .woocommerce-product-gallery__image a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  width: 100% !important;
}

.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image {
  margin: 0 !important;
}

.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 620px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  visibility: visible !important;
  opacity: 1 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.single-product .flex-control-thumbs {
  display: flex !important;
  gap: 12px !important;
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

.single-product .flex-control-thumbs li {
  list-style: none !important;
  width: 84px !important;
  height: 84px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #d9d9d9 !important;
  flex: 0 0 84px !important;
}

.single-product .flex-control-thumbs img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
  cursor: pointer !important;
}

/* columna resumen */
.single-product div.product .summary {
  width: 100% !important;
  max-width: 560px !important;
  margin: 0 !important;
  padding-top: 2px !important;
}

.single-product .product .summary .product_title,
.single-product .product .summary h1.product_title {
  margin: 0 0 12px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.55rem, 1.95vw, 2.7rem) !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: -0.015em !important;
  max-width: 18ch !important;
  text-wrap: balance;
}

.single-product .summary .price,
.single-product .summary .price *,
.single-product .summary .price bdi {
  color: #d8ab63 !important;
  font-size: clamp(1.3rem, 1.8vw, 1.85rem) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
}

.single-product .summary .price {
  margin: 0 0 14px !important;
}

.single-product .woocommerce-product-details__short-description {
  max-width: 100% !important;
  margin: 0 0 18px !important;
  color: #cbb99c !important;
}

.single-product .woocommerce-product-details__short-description p {
  margin: 0 !important;
  color: #d7c19a !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
}

.single-product div.product form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: 460px !important;
  margin: 12px 0 18px !important;
}

.single-product div.product form.cart .quantity {
  flex: 0 0 68px !important;
  width: 68px !important;
  min-width: 68px !important;
  margin: 0 !important;
}

.single-product div.product form.cart .quantity .qty {
  width: 68px !important;
  min-width: 68px !important;
  height: 44px !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: #111 !important;
  color: #f6efe4 !important;
  text-align: center !important;
}

.single-product div.product form.cart .single_add_to_cart_button {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: 210px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid #d8ab63 !important;
  background: #d8ab63 !important;
  color: #111 !important;
  font-size: .92rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

.single-product .ae-wa-btn--single,
.single-product a.ae-wa-btn--single {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 160px !important;
  max-width: 180px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid #25d366 !important;
  background: transparent !important;
  color: #25d366 !important;
  text-decoration: none !important;
  line-height: 1 !important;
  font-size: .9rem !important;
  white-space: nowrap !important;
}

.single-product .ae-wa-btn--single:hover,
.single-product a.ae-wa-btn--single:hover {
  background: #25d366 !important;
  color: #07120b !important;
}

/* bloques laterales */
.single-product .ae-wa-note,
.single-product .ae-product-story,
.single-product .ae-product-premium-card,
.single-product .ae-product-benefits,
.single-product .ae-product-cats-bottom {
  width: 100% !important;
  max-width: 460px !important;
  box-sizing: border-box !important;
  margin-top: 16px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
}

.single-product .ae-wa-note {
  border: 1px solid rgba(37,211,102,.22) !important;
  background: rgba(37,211,102,.06) !important;
  color: #d7f7e3 !important;
  line-height: 1.6 !important;
  font-size: .92rem !important;
}

.single-product .ae-product-story {
  border: 1px solid rgba(216,171,99,.18) !important;
  background: rgba(216,171,99,.05) !important;
  color: #ead8b8 !important;
  line-height: 1.7 !important;
  font-size: .92rem !important;
}

.single-product .ae-product-benefits {
  border: 1px solid rgba(37,211,102,.18) !important;
  background: rgba(37,211,102,.06) !important;
  color: #d7f7e3 !important;
}

.single-product .ae-product-benefits p {
  margin: 0 0 8px !important;
}

.single-product .ae-product-benefits p:last-child {
  margin-bottom: 0 !important;
}

.single-product .ae-product-cats-bottom {
  border: 1px solid rgba(216,171,99,.18) !important;
  background: rgba(216,171,99,.05) !important;
  color: #ead8b8 !important;
  line-height: 1.65 !important;
  font-size: .92rem !important;
}

.single-product .ae-product-cats-bottom strong {
  color: #f6efe4 !important;
}

.single-product .ae-product-cats-bottom a {
  color: #d8ab63 !important;
  text-decoration: none !important;
}

.single-product .ae-product-cats-bottom a:hover {
  color: #efc27a !important;
}

/* tarjeta premium */
.ae-product-premium-card {
  border: 1px solid rgba(216,171,99,.18);
  background: rgba(216,171,99,.05);
  color: #ead8b8;
  line-height: 1.6;
}

.ae-product-premium-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ae-product-premium-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ae-product-premium-label {
  color: rgba(234,216,184,.72);
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ae-product-premium-value {
  color: #f6efe4;
  font-size: 1rem;
  font-weight: 600;
}

.ae-product-premium-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.ae-product-premium-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(216,171,99,.28);
  background: rgba(216,171,99,.10);
  color: #f6efe4;
  font-size: .82rem;
  font-weight: 600;
  white-space: nowrap;
}

/* tabs y descripción larga */
.single-product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 18px auto 0 !important;
  padding-top: 0 !important;
  background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 10px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border-bottom: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: rgba(255,255,255,.02) !important;
  color: #ead8b8 !important;
  text-decoration: none !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  background: #d8ab63 !important;
  border-color: #d8ab63 !important;
  color: #111 !important;
}

.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-Tabs-panel {
  margin: 0 !important;
  padding: 26px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  background: #090909 !important;
  color: #f6efe4 !important;
}

.single-product .woocommerce-tabs .panel p,
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-tabs .panel li,
.single-product .woocommerce-Tabs-panel li {
  color: #d7c19a !important;
  font-size: 1rem !important;
  line-height: 1.75 !important;
}

/* relacionados */
.single-product div.product .related.products,
.single-product div.product .upsells.products {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 56px auto 0 !important;
  clear: both !important;
}

.single-product .related.products > h2,
.single-product .upsells.products > h2 {
  margin: 0 0 24px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(2rem, 3vw, 3rem) !important;
  line-height: 1.04 !important;
  font-weight: 400 !important;
}

.single-product .related.products ul.products,
.single-product .upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-product .related.products ul.products::before,
.single-product .related.products ul.products::after,
.single-product .upsells.products ul.products::before,
.single-product .upsells.products ul.products::after {
  display: none !important;
  content: none !important;
}

.single-product .related.products ul.products li.product,
.single-product .upsells.products ul.products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 0 16px !important;
  background: #090909 !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.34) !important;
  display: flex !important;
  flex-direction: column !important;
}

.single-product .related.products ul.products li.product img,
.single-product .upsells.products ul.products li.product img {
  display: block !important;
  width: 100% !important;
  height: 255px !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #e9e3d8 !important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title {
  margin: 0 !important;
  padding: 16px 18px 8px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.16rem !important;
  line-height: 1.18 !important;
  font-weight: 400 !important;
  text-align: center !important;
  min-height: 88px !important;
}

.single-product .related.products ul.products li.product .price,
.single-product .single-product .related.products ul.products li.product .price *,
.single-product .upsells.products ul.products li.product .price,
.single-product .upsells.products ul.products li.product .price * {
  margin: 0 !important;
  color: #d8ab63 !important;
  font-size: .98rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.single-product .related.products ul.products li.product .button,
.single-product .related.products ul.products li.product a.button,
.single-product .related.products ul.products li.product .ae-wa-btn--loop,
.single-product .upsells.products ul.products li.product .button,
.single-product .upsells.products ul.products li.product a.button,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: calc(100% - 36px) !important;
  max-width: 220px !important;
  min-height: 44px !important;
  margin: 10px auto 0 !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  text-align: center !important;
}

.single-product .related.products ul.products li.product .button,
.single-product .upsells.products ul.products li.product .button {
  border: 1px solid rgba(216,171,99,.75) !important;
  background: transparent !important;
  color: #d8ab63 !important;
}

.single-product .related.products ul.products li.product .button:hover,
.single-product .upsells.products ul.products li.product .button:hover {
  background: #d8ab63 !important;
  color: #111 !important;
}

.single-product .related.products ul.products li.product .ae-wa-btn--loop,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop {
  border: 1px solid #25d366 !important;
  background: rgba(24,210,107,.03) !important;
  color: #25d366 !important;
  margin-bottom: 6px !important;
}

.single-product .related.products ul.products li.product .ae-wa-btn--loop:hover,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop:hover {
  background: #25d366 !important;
  color: #07120b !important;
}

.single-product .related.products .star-rating,
.single-product .related.products .added_to_cart,
.single-product .related.products .product-category,
.single-product .related.products .posted_in,
.single-product .upsells.products .star-rating,
.single-product .upsells.products .added_to_cart,
.single-product .upsells.products .product-category,
.single-product .upsells.products .posted_in {
  display: none !important;
}

@media (max-width: 1100px) {
  .single-product div.product {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    max-width: 100% !important;
  }

  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary {
    max-width: 100% !important;
  }

  .single-product .woocommerce-tabs,
  .single-product div.product .related.products,
  .single-product div.product .upsells.products {
    max-width: 100% !important;
  }

  .single-product .related.products ul.products,
  .single-product .upsells.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .single-product .woocommerce-product-gallery__image a {
    min-height: auto !important;
  }

  .single-product .woocommerce-product-gallery__image img,
  .single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image img {
    max-height: 420px !important;
  }

  .single-product .flex-control-thumbs li {
    width: 72px !important;
    height: 72px !important;
    flex: 0 0 72px !important;
  }

  .single-product .flex-control-thumbs img {
    height: 72px !important;
  }

  .single-product div.product form.cart {
    flex-wrap: wrap !important;
  }

  .single-product div.product form.cart .quantity,
  .single-product div.product form.cart .single_add_to_cart_button,
  .single-product .ae-wa-btn--single,
  .single-product a.ae-wa-btn--single {
    width: 100% !important;
    max-width: 100% !important;
  }

  .single-product .woocommerce-tabs ul.tabs {
    flex-wrap: wrap !important;
  }

  .single-product .related.products ul.products,
  .single-product .upsells.products ul.products {
    grid-template-columns: 1fr !important;
  }

  .single-product .related.products ul.products li.product img,
  .single-product .upsells.products ul.products li.product img {
    height: 230px !important;
  }
}

/* =========================================================
   RELACIONADOS / UPSELLS
========================================================= */
.single-product .related.products,
.single-product .upsells.products {
  width: 100% !important;
  max-width: var(--ae-shop-width) !important;
  margin: 56px auto 0 !important;
  clear: both !important;
}

.single-product .related.products > h2,
.single-product .upsells.products > h2 {
  max-width: var(--ae-shop-width) !important;
  margin: 0 auto 24px !important;
  color: var(--ae-ivory) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(2rem, 3vw, 3rem) !important;
  line-height: 1.04 !important;
  font-weight: 400 !important;
}

.single-product .related.products ul.products,
.single-product .upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  max-width: var(--ae-shop-width) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-product .related.products ul.products::before,
.single-product .related.products ul.products::after,
.single-product .upsells.products ul.products::before,
.single-product .upsells.products ul.products::after {
  display: none !important;
  content: none !important;
}

.single-product .related.products ul.products li.product,
.single-product .upsells.products ul.products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 0 16px !important;
  background: var(--ae-surface) !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow: var(--ae-shadow-soft) !important;
  display: flex !important;
  flex-direction: column !important;
}

.single-product .related.products ul.products li.product img,
.single-product .upsells.products ul.products li.product img {
  display: block !important;
  width: 100% !important;
  height: 255px !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title {
  margin: 0 !important;
  padding: 16px 18px 8px !important;
  color: var(--ae-ivory) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.28rem !important;
  line-height: 1.14 !important;
  font-weight: 400 !important;
  text-align: center !important;
}

.single-product .related.products ul.products li.product .price,
.single-product .related.products ul.products li.product .price *,
.single-product .upsells.products ul.products li.product .price,
.single-product .upsells.products ul.products li.product .price * {
  margin: 0 !important;
  color: var(--ae-gold) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.single-product .related.products ul.products li.product .button,
.single-product .related.products ul.products li.product a.button,
.single-product .related.products ul.products li.product .ae-wa-btn--loop,
.single-product .upsells.products ul.products li.product .button,
.single-product .upsells.products ul.products li.product a.button,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: calc(100% - 36px) !important;
  max-width: 220px !important;
  min-height: 46px !important;
  margin: 10px auto 0 !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  text-align: center !important;
}

.single-product .related.products ul.products li.product .button,
.single-product .upsells.products ul.products li.product .button {
  border: 1px solid rgba(216,171,99,.75) !important;
  background: transparent !important;
  color: var(--ae-gold) !important;
}

.single-product .related.products ul.products li.product .button:hover,
.single-product .upsells.products ul.products li.product .button:hover {
  background: var(--ae-gold) !important;
  color: #111 !important;
}

.single-product .related.products ul.products li.product .ae-wa-btn--loop,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop {
  border: 1px solid var(--ae-green) !important;
  background: rgba(24,210,107,.03) !important;
  color: var(--ae-green) !important;
  margin-bottom: 6px !important;
}

.single-product .related.products ul.products li.product .ae-wa-btn--loop:hover,
.single-product .upsells.products ul.products li.product .ae-wa-btn--loop:hover {
  background: var(--ae-green) !important;
  color: #07120b !important;
}

.single-product .related.products .star-rating,
.single-product .related.products .added_to_cart,
.single-product .related.products .product-category,
.single-product .related.products .posted_in,
.single-product .upsells.products .star-rating,
.single-product .upsells.products .added_to_cart,
.single-product .upsells.products .product-category,
.single-product .upsells.products .posted_in {
  display: none !important;
}

/* =========================================================
   CARRITO PREMIUM
========================================================= */
body.woocommerce-cart .site-content,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-cart .ast-container,
body.woocommerce-cart .woocommerce {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.woocommerce-cart .site-content {
  padding-top: 14px !important;
}

body.woocommerce-cart h1.entry-title,
body.woocommerce-cart .entry-header,
body.woocommerce-cart .woocommerce-notices-wrapper {
  display: none !important;
}

body.woocommerce-cart .woocommerce {
  max-width: var(--ae-shop-width) !important;
  margin: 0 auto !important;
}

.ae-selection-note {
  max-width: var(--ae-shop-width) !important;
  margin: 10px auto 22px !important;
  padding: 18px 22px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: rgba(216,171,99,.05) !important;
  color: #ead8b8 !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}

.woocommerce-cart table.shop_table {
  width: 100% !important;
  margin-bottom: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  background: var(--ae-surface) !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  box-shadow: var(--ae-shadow-soft) !important;
}

.woocommerce-cart table.shop_table thead,
.woocommerce-cart table.shop_table thead tr,
.woocommerce-cart table.shop_table thead th {
  background: rgba(216,171,99,.08) !important;
  color: #ead8b8 !important;
}

.woocommerce-cart table.shop_table thead th {
  border: 0 !important;
  padding: 18px 16px !important;
  font-size: .95rem !important;
  font-weight: 600 !important;
  letter-spacing: .03em !important;
}

.woocommerce-cart table.shop_table tbody td {
  background: var(--ae-surface) !important;
  color: var(--ae-ivory) !important;
  border-top: 1px solid rgba(216,171,99,.08) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  padding: 18px 16px !important;
  vertical-align: middle !important;
}

.woocommerce-cart td.product-thumbnail img {
  display: block !important;
  width: 74px !important;
  min-width: 74px !important;
  border-radius: 14px !important;
}

.woocommerce-cart td.product-name a {
  color: var(--ae-ivory) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

.woocommerce-cart td.product-name a:hover {
  color: var(--ae-gold) !important;
}

.woocommerce-cart td.product-price,
.woocommerce-cart td.product-price *,
.woocommerce-cart td.product-subtotal,
.woocommerce-cart td.product-subtotal * {
  color: var(--ae-gold) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

.woocommerce-cart a.remove {
  width: 34px !important;
  height: 34px !important;
  line-height: 31px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.03) !important;
  color: var(--ae-muted) !important;
  border: 1px solid rgba(216,171,99,.10) !important;
  text-align: center !important;
  font-size: 1.1rem !important;
}

.woocommerce-cart a.remove:hover {
  background: rgba(216,171,99,.12) !important;
  color: var(--ae-ivory) !important;
}

.woocommerce-cart .quantity .qty {
  width: 68px !important;
  min-width: 68px !important;
  height: 44px !important;
  min-height: 44px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: #111 !important;
  color: var(--ae-ivory) !important;
  text-align: center !important;
}

.woocommerce-cart .actions {
  background: var(--ae-surface) !important;
}

.woocommerce-cart .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.woocommerce-cart .coupon #coupon_code {
  min-width: 220px !important;
  height: 46px !important;
  padding: 0 14px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: #111 !important;
  color: var(--ae-ivory) !important;
}

.woocommerce-cart .coupon .button,
.woocommerce-cart .actions .button,
.woocommerce-cart button[name="update_cart"] {
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(216,171,99,.75) !important;
  background: transparent !important;
  color: var(--ae-gold) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.woocommerce-cart .coupon .button:hover,
.woocommerce-cart .actions .button:hover,
.woocommerce-cart button[name="update_cart"]:hover {
  background: var(--ae-gold) !important;
  color: #111 !important;
}

.woocommerce-cart button[name="update_cart"] {
  display: none !important;
}

.woocommerce-cart .cart-collaterals {
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
  margin-top: 18px !important;
  padding-top: 8px !important;
}

.woocommerce-cart .cart_totals {
  width: 100% !important;
  max-width: 460px !important;
  margin: 0 0 8px auto !important;
  padding: 22px 22px 18px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  background: var(--ae-surface) !important;
  box-shadow: var(--ae-shadow-soft) !important;
  text-align: left !important;
}

.woocommerce-cart .cart_totals h2,
.woocommerce-cart .cart_totals > h2,
.woocommerce-cart .cart_totals .wc-block-components-title {
  display: block !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--ae-ivory) !important;
  box-shadow: none !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.75rem !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  text-align: left !important;
}

.woocommerce-cart .cart_totals h2::after {
  content: "";
  display: block;
  width: 48px;
  height: 1px;
  margin: 10px 0 0;
  background: rgba(216,171,99,.4);
}

.woocommerce-cart .cart_totals,
.woocommerce-cart .cart_totals table,
.woocommerce-cart .cart_totals table.shop_table,
.woocommerce-cart .cart_totals table.shop_table tbody,
.woocommerce-cart .cart_totals table.shop_table tr,
.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
  background: var(--ae-surface) !important;
}

.woocommerce-cart .cart_totals table.shop_table {
  max-width: 100% !important;
  margin: 0 0 16px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
  padding: 12px 14px !important;
  text-align: left !important;
  border-top: 1px solid rgba(216,171,99,.08) !important;
}

.woocommerce-cart .cart_totals table.shop_table th {
  color: var(--ae-ivory) !important;
  font-weight: 600 !important;
}

.woocommerce-cart .cart_totals table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table td * {
  color: var(--ae-gold) !important;
  font-weight: 700 !important;
}

.ae-cart-whatsapp-wrap {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.ae-wa-cart-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 50px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 1px solid var(--ae-green) !important;
  background: transparent !important;
  color: var(--ae-green) !important;
  text-decoration: none !important;
  font-size: .95rem !important;
  font-weight: 700 !important;
}

.ae-wa-cart-btn:hover {
  background: var(--ae-green) !important;
  color: #07120b !important;
}

/* =========================================================
   PÁGINA DE CONTACTO
========================================================= */
body.page {
  background: var(--ae-bg) !important;
  color: var(--ae-ivory) !important;
}

body.page .site,
body.page .site-content,
body.page .content-area,
body.page .site-main,
body.page .ast-container {
  background: var(--ae-bg) !important;
  color: var(--ae-ivory) !important;
}

body.page .site-content,
body.page .content-area,
body.page .site-main {
  margin-top: 0 !important;
  padding-top: 10px !important;
}

body.page .entry-header {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.page .entry-title {
  display: none !important;
}

body.page .entry-content {
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
}

.ae-contact-page,
.ae-contact-form-wrap {
  position: relative;
  z-index: 2;
}

.ae-contact-form-wrap {
  max-width: 980px;
  margin: 0 auto !important;
  padding: 10px 0 !important;
}

.ae-contact-form-card {
  padding: 34px !important;
  border-radius: 30px !important;
  background: var(--ae-surface) !important;
}

.ae-contact-form-head {
  margin-bottom: 24px !important;
}

.ae-contact-form-head h2 {
  margin: 0 0 12px !important;
  color: var(--ae-ivory) !important;
  font-size: clamp(2.3rem, 4vw, 3.5rem) !important;
  line-height: 1.02 !important;
  font-weight: 400 !important;
}

.ae-contact-form-head p {
  margin: 0 !important;
  color: var(--ae-muted) !important;
  font-size: 1rem !important;
  line-height: 1.8 !important;
}

.ae-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.ae-field {
  margin-bottom: 16px;
}

.ae-field label {
  display: block;
  margin-bottom: 8px;
  color: #ead8b8 !important;
  font-size: .92rem;
  font-weight: 600;
}

.ae-field input,
.ae-field select {
  width: 100%;
  height: 56px !important;
  min-height: 56px !important;
  padding: 0 16px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(216,171,99,.16) !important;
  background: var(--ae-surface-2) !important;
  color: var(--ae-ivory) !important;
  font-size: .96rem !important;
  box-sizing: border-box;
}

.ae-field textarea {
  width: 100%;
  min-height: 150px !important;
  padding: 14px 16px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(216,171,99,.16) !important;
  background: var(--ae-surface-2) !important;
  color: var(--ae-ivory) !important;
  font-size: .96rem !important;
  line-height: 1.6 !important;
  resize: vertical;
  box-sizing: border-box;
}

.ae-field input::placeholder,
.ae-field textarea::placeholder {
  color: rgba(246,239,228,.42) !important;
}

.ae-field input:focus,
.ae-field select:focus,
.ae-field textarea:focus {
  outline: none !important;
  border-color: rgba(216,171,99,.42) !important;
  box-shadow: 0 0 0 1px rgba(216,171,99,.14) !important;
  transform: translateY(-1px);
  transition: all .15s ease;
}

.ae-field select,
#ae_asunto {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  color: var(--ae-ivory) !important;
  background-color: var(--ae-surface-2) !important;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--ae-gold) 50%),
    linear-gradient(135deg, var(--ae-gold) 50%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 44px !important;
}

.ae-field select option,
#ae_asunto option {
  color: var(--ae-ivory) !important;
  background: var(--ae-surface-2) !important;
}

.ae-contact-actions {
  margin-top: 8px;
}

.ae-contact-actions .ae-btn,
.ae-contact-actions button,
.ae-contact-form button[type="submit"] {
  min-width: 230px !important;
  min-height: 52px !important;
  border-radius: 999px !important;
  border: 1px solid var(--ae-gold) !important;
  background: var(--ae-gold) !important;
  color: #111 !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.ae-contact-actions .ae-btn:hover,
.ae-contact-actions button:hover,
.ae-contact-form button[type="submit"]:hover {
  background: var(--ae-gold-2) !important;
  border-color: var(--ae-gold-2) !important;
  color: #111 !important;
}

.ae-contact-alert {
  margin-bottom: 18px !important;
  padding: 14px 16px;
  border-radius: 16px !important;
  font-size: .95rem;
  line-height: 1.6;
}

.ae-contact-alert--success {
  border: 1px solid rgba(37,211,102,.22);
  background: rgba(37,211,102,.05);
  color: var(--ae-green-soft);
}

.ae-contact-alert--error {
  border: 1px solid rgba(220,80,80,.22);
  background: rgba(220,80,80,.06);
  color: #ffd7d7;
}

/* =========================================================
   WHATSAPP FLOTANTE
========================================================= */
.ae-wa-float {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  max-width: 320px;
  padding: 0 16px;
  margin: 0 !important;
  border-radius: 999px;
  border: 1px solid rgba(37,211,102,.42);
  background: rgba(6,24,12,.96);
  color: #eafff2 !important;
  text-decoration: none !important;
  box-shadow: var(--ae-shadow-soft);
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.ae-wa-float:hover {
  transform: translateY(-2px);
  box-shadow: 0 24px 54px rgba(0,0,0,.42);
  background: rgba(10,32,16,.98);
  color: #fff !important;
}

.ae-wa-float__icon {
  width: 22px;
  height: 22px;
  display: inline-flex;
  flex: 0 0 22px;
  color: var(--ae-green);
}

.ae-wa-float__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.ae-wa-float__text {
  font-size: .88rem;
  line-height: 1.15;
  font-weight: 600;
}

/* =========================================================
   UTILIDADES WOOCOMMERCE
========================================================= */
body.ae-whatsapp-only .woocommerce-cart .checkout-button,
body.ae-whatsapp-only .woocommerce a.checkout-button,
body.ae-whatsapp-only .woocommerce-checkout,
body.ae-whatsapp-only .checkout-button {
  display: none !important;
}

/* =========================================================
   RESPONSIVE GLOBAL
========================================================= */
@media (max-width: 1200px) {
  .ae-header__nav,
  .ae-header-cats {
    display: none;
  }
}

@media (max-width: 1100px) {
  .ae-hero__grid,
  .ae-brand,
  .ae-featured,
  .single-product div.product {
    grid-template-columns: 1fr !important;
  }

  .ae-cats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ae-services,
  .ae-footer__top {
    grid-template-columns: 1fr;
  }

  .ae-products-grid,
  ul.products.ae-products-grid,
  .single-product .related.products ul.products,
  .single-product .upsells.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ae-hero__card {
    min-height: 480px;
  }

  .single-product div.product .woocommerce-product-gallery,
  .single-product div.product .summary,
  .single-product .related.products,
  .single-product .upsells.products,
  .single-product .related.products > h2,
  .single-product .upsells.products > h2,
  .single-product .related.products ul.products,
  .single-product .upsells.products ul.products {
    max-width: 100% !important;
  }

  .single-product .woocommerce-product-gallery__image a {
    min-height: 460px !important;
  }

  .single-product .woocommerce-product-gallery__wrapper img,
  .single-product .woocommerce-product-gallery__image img {
    max-height: 460px !important;
  }
}

@media (max-width: 767px) {
  .ae-container {
    width: min(100% - 26px, var(--ae-container));
  }

  .ae-section {
    padding: 65px 0;
  }

  .ae-hero {
    padding: 72px 0 64px;
  }

  .ae-hero__copy h1 {
    font-size: clamp(2.5rem, 13vw, 4.2rem);
  }

  .ae-cats,
  .ae-products-grid,
  ul.products.ae-products-grid,
  .single-product .related.products ul.products,
  .single-product .upsells.products ul.products,
  .ae-contact-grid {
    grid-template-columns: 1fr !important;
  }

  .ae-cat {
    min-height: 300px;
  }

  .ae-featured__content,
  .ae-brand__box,
  .ae-service,
  .ae-cta,
  .ae-contact-form-card {
    padding: 24px !important;
  }

  .ae-hero__card {
    min-height: 390px;
  }

  .ae-hero__badge {
    left: 16px;
    right: 16px;
    bottom: 16px;
    max-width: none;
  }

  .ae-shop-hero {
    padding: 36px 0 28px;
  }

  .ae-shop-cats {
    padding-top: 12px;
  }

  .ae-shop-cats__link {
    min-height: 40px;
    padding: 0 14px;
    font-size: .84rem;
  }

  .ae-product-card__media,
  .single-product .related.products ul.products li.product img,
  .single-product .upsells.products ul.products li.product img {
    height: 230px !important;
  }

  .ae-mobile-toggle {
    display: inline-block;
  }

  .ae-header__inner {
    grid-template-columns: auto auto;
    justify-content: space-between;
    gap: 16px;
  }

  .ae-header__actions {
    gap: 10px;
  }

  .single-product div.product form.cart {
    flex-wrap: wrap !important;
  }

  .single-product div.product form.cart .quantity,
  .single-product div.product form.cart .single_add_to_cart_button,
  .single-product .ae-wa-btn--single,
  .single-product a.ae-wa-btn--single {
    width: 100% !important;
    max-width: 100% !important;
  }

  .single-product div.product form.cart .single_add_to_cart_button,
  .single-product .ae-wa-btn--single,
  .single-product a.ae-wa-btn--single {
    min-width: 0 !important;
  }

  .single-product .woocommerce-product-gallery__image a {
    min-height: 420px !important;
  }

  .single-product .woocommerce-product-gallery__wrapper img,
  .single-product .woocommerce-product-gallery__image img {
    max-height: 420px !important;
  }

  .single-product .flex-control-thumbs li {
    width: 78px;
  }

  .single-product .flex-control-thumbs img {
    height: 78px;
  }

  .woocommerce-cart .coupon {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .woocommerce-cart .coupon #coupon_code,
  .woocommerce-cart .coupon .button,
  .woocommerce-cart button[name="update_cart"] {
    width: 100% !important;
  }

  .woocommerce-cart .cart-collaterals {
    justify-content: center !important;
    margin-top: 14px !important;
  }

  .woocommerce-cart .cart_totals {
    max-width: 100% !important;
    padding: 20px 18px 16px !important;
  }

  .woocommerce-cart .cart_totals h2,
  .woocommerce-cart .cart_totals > h2 {
    text-align: center !important;
  }

  .woocommerce-cart .cart_totals h2::after {
    margin: 10px auto 0;
  }

  .woocommerce-cart .cart_totals table.shop_table th,
  .woocommerce-cart .cart_totals table.shop_table td {
    text-align: center !important;
  }

  .ae-selection-note {
    margin-bottom: 18px !important;
    padding: 16px !important;
    font-size: .94rem !important;
  }

  .ae-contact-actions .ae-btn,
  .ae-contact-actions button,
  .ae-contact-form button[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
  }

  .ae-wa-float {
    right: 12px;
    bottom: 12px;
    max-width: calc(100vw - 24px);
    min-height: 50px;
    padding: 0 14px;
    gap: 8px;
  }

  .ae-wa-float__text {
    font-size: .82rem;
  }

  .ae-wa-float__icon {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }
}

/* =========================================================
   AJUSTES DE COMPATIBILIDAD FINAL
========================================================= */
.single-product .ae-product-cats-bottom {
  width: 100%;
  max-width: 460px;
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid var(--ae-line);
  background: rgba(255,255,255,.02);
  color: var(--ae-muted);
  line-height: 1.7;
  box-sizing: border-box;
}

.single-product .ae-product-cats-bottom strong {
  color: var(--ae-ivory);
  font-weight: 600;
}

.single-product .ae-product-cats-bottom a {
  color: var(--ae-gold-soft);
  text-decoration: none;
}

.single-product .ae-product-cats-bottom a:hover {
  color: var(--ae-gold);
}

/* limpiar meta y descripción corta en ficha */
.single-product .summary .product_meta,
.single-product .summary .posted_in,
.single-product .summary .tagged_as,
.single-product .summary .sku_wrapper,
.single-product .ae-product-cats-bottom,
.single-product .woocommerce-product-details__short-description {
  display: none !important;
}

.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
  align-self: start !important;
}

.single-product div.product {
  row-gap: 18px !important;
}

.single-product .summary .posted_in,
.single-product .summary .posted_in a {
  color: rgba(200,169,106,0.6) !important;
  font-size: 0.8rem !important;
  text-decoration: none !important;
}

.single-product .summary .posted_in a:hover {
  color: #d8ab63 !important;
}

.single-product .summary .product_meta,
.single-product .summary .posted_in,
.single-product .summary .tagged_as,
.single-product .summary .sku_wrapper,
.single-product .ae-product-cats-bottom,
.single-product .woocommerce-product-details__short-description {
  display: none !important;
}

/* =========================================================
   TABS SINGLE PRODUCT - PREMIUM
========================================================= */

/* contenedor general de tabs */
.single-product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 18px auto 0 !important;
  padding-top: 0 !important;
  background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 12px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border-bottom: 0 !important;
  flex-wrap: wrap !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(216,171,99,.18) !important;
  background: rgba(255,255,255,.02) !important;
  color: #ead8b8 !important;
  text-decoration: none !important;
  font-size: .92rem !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  background: #d8ab63 !important;
  border-color: #d8ab63 !important;
  color: #111 !important;
}

.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-Tabs-panel {
  margin: 0 !important;
  padding: 28px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  background: #090909 !important;
  color: #f6efe4 !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.28) !important;
}

.single-product .woocommerce-tabs .panel p,
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-tabs .panel li,
.single-product .woocommerce-Tabs-panel li {
  color: #d7c19a !important;
  font-size: 1rem !important;
  line-height: 1.8 !important;
}

.single-product .woocommerce-tabs .panel h2,
.single-product .woocommerce-Tabs-panel h2 {
  margin: 0 0 18px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.8rem !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
}

/* =========================================================
   INFORMACIÓN ADICIONAL
========================================================= */

.single-product table.shop_attributes {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  background: #0b0b0b !important;
}

.single-product table.shop_attributes th,
.single-product table.shop_attributes td {
  padding: 18px 20px !important;
  border-bottom: 1px solid rgba(216,171,99,.08) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-top: 0 !important;
}

.single-product table.shop_attributes tr:last-child th,
.single-product table.shop_attributes tr:last-child td {
  border-bottom: 0 !important;
}

.single-product table.shop_attributes th {
  width: 220px !important;
  background: rgba(255,255,255,.01) !important;
  color: rgba(234,216,184,.72) !important;
  font-size: .84rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

.single-product table.shop_attributes td {
  background: transparent !important;
  color: #f6efe4 !important;
  font-size: 1.02rem !important;
  font-weight: 500 !important;
}

.single-product table.shop_attributes td p {
  margin: 0 !important;
  color: #f6efe4 !important;
}

/* =========================================================
   VALORACIONES
========================================================= */

.single-product #reviews,
.single-product .woocommerce-Reviews {
  color: #f6efe4 !important;
}

.single-product .woocommerce-Reviews-title,
.single-product #reviews h2 {
  margin: 0 0 16px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.8rem !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
}

.single-product #reviews #comments ol.commentlist {
  margin: 0 0 28px !important;
  padding: 0 !important;
  list-style: none !important;
}

.single-product #reviews #comments ol.commentlist li {
  margin: 0 0 18px !important;
  padding: 20px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(216,171,99,.12) !important;
  background: #0b0b0b !important;
}

.single-product #reviews #comments .comment-text {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.single-product #reviews #comments .meta {
  margin-bottom: 10px !important;
  color: rgba(234,216,184,.72) !important;
  font-size: .9rem !important;
}

.single-product #reviews #comments .description p {
  color: #d7c19a !important;
  line-height: 1.8 !important;
}

/* formulario de valoración */
.single-product #review_form_wrapper {
  margin-top: 20px !important;
}

.single-product #review_form {
  padding: 26px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(216,171,99,.14) !important;
  background: #0b0b0b !important;
}

.single-product #respond {
  margin: 0 !important;
}

.single-product #reply-title,
.single-product .comment-reply-title {
  display: block !important;
  margin: 0 0 14px !important;
  color: #f6efe4 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.6rem !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
}

.single-product .comment-form-rating label,
.single-product .comment-form-comment label,
.single-product .comment-form-author label,
.single-product .comment-form-email label {
  display: block !important;
  margin-bottom: 8px !important;
  color: rgba(234,216,184,.72) !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
}

.single-product .comment-form-rating,
.single-product .comment-form-comment,
.single-product .comment-form-author,
.single-product .comment-form-email {
  margin-bottom: 18px !important;
}

.single-product #review_form textarea,
.single-product #review_form input[type="text"],
.single-product #review_form input[type="email"] {
  width: 100% !important;
  min-height: 54px !important;
  padding: 14px 16px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(216,171,99,.16) !important;
  background: #111 !important;
  color: #f6efe4 !important;
  font-size: .96rem !important;
  box-sizing: border-box !important;
}

.single-product #review_form textarea {
  min-height: 150px !important;
  resize: vertical !important;
}

.single-product #review_form textarea:focus,
.single-product #review_form input[type="text"]:focus,
.single-product #review_form input[type="email"]:focus {
  outline: none !important;
  border-color: rgba(216,171,99,.42) !important;
  box-shadow: 0 0 0 1px rgba(216,171,99,.14) !important;
}

.single-product #review_form .comment-form-cookies-consent {
  margin: 10px 0 18px !important;
  color: rgba(234,216,184,.72) !important;
  font-size: .9rem !important;
}

.single-product #review_form .comment-form-cookies-consent input {
  margin-right: 8px !important;
}

.single-product #review_form .form-submit {
  margin: 0 !important;
}

.single-product #review_form .submit,
.single-product #review_form input[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  min-height: 48px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1px solid #d8ab63 !important;
  background: #d8ab63 !important;
  color: #111 !important;
  font-size: .95rem !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.single-product #review_form .submit:hover,
.single-product #review_form input[type="submit"]:hover {
  background: #efc27a !important;
  border-color: #efc27a !important;
  color: #111 !important;
}

/* estrellas */
.single-product .star-rating,
.single-product p.stars a,
.single-product .comment-form-rating .stars a {
  color: #d8ab63 !important;
}

@media (max-width: 767px) {
  .single-product .woocommerce-tabs .panel,
  .single-product .woocommerce-Tabs-panel,
  .single-product #review_form {
    padding: 20px !important;
  }

  .single-product table.shop_attributes th,
  .single-product table.shop_attributes td {
    display: block !important;
    width: 100% !important;
  }

  .single-product table.shop_attributes th {
    padding-bottom: 8px !important;
  }

  .single-product table.shop_attributes td {
    padding-top: 0 !important;
  }
}

/* quitar línea azul de tabs WooCommerce */
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce-tabs ul.tabs li.active::before,
.single-product .woocommerce-tabs ul.tabs li.active::after,
.single-product .woocommerce-tabs ul.tabs li a::before,
.single-product .woocommerce-tabs ul.tabs li a::after,
.single-product .woocommerce-tabs ul.tabs li.active a::before,
.single-product .woocommerce-tabs ul.tabs li.active a::after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs li,
.single-product .woocommerce-tabs ul.tabs li.active {
  box-shadow: none !important;
  background-image: none !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  box-shadow: none !important;
  outline: none !important;
}

/* quitar línea azul de tabs WooCommerce */
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after,
.single-product .woocommerce-tabs ul.tabs li.active::before,
.single-product .woocommerce-tabs ul.tabs li.active::after,
.single-product .woocommerce-tabs ul.tabs li a::before,
.single-product .woocommerce-tabs ul.tabs li a::after,
.single-product .woocommerce-tabs ul.tabs li.active a::before,
.single-product .woocommerce-tabs ul.tabs li.active a::after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs li,
.single-product .woocommerce-tabs ul.tabs li.active {
  box-shadow: none !important;
  background-image: none !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
  box-shadow: none !important;
  outline: none !important;
}

/* =========================================================
   INFORMACIÓN ADICIONAL PREMIUM
========================================================= */

.single-product .ae-additional-info-premium {
  width: 100%;
}

.single-product .ae-additional-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.single-product .ae-additional-info-item {
  padding: 18px 20px;
  border-radius: 20px;
  border: 1px solid rgba(216,171,99,.14);
  background: #0b0b0b;
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}

.single-product .ae-additional-info-label {
  display: block;
  margin-bottom: 8px;
  color: rgba(234,216,184,.72);
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 600;
}

.single-product .ae-additional-info-value {
  color: #f6efe4;
  font-size: 1rem;
  line-height: 1.75;
  font-weight: 500;
}

@media (max-width: 767px) {
  .single-product .ae-additional-info-grid {
    grid-template-columns: 1fr;
  }

  .single-product .ae-additional-info-item {
    padding: 16px 18px;
  }
}

.single-product #review_form .comment-form-cookies-consent,
.single-product #review_form .comment-form-cookies-consent label,
.single-product #review_form .comment-form-cookies-consent span,
.single-product #review_form .comment-form-cookies-consent a {
  color: #f6efe4 !important;
  font-size: .9rem !important;
  line-height: 1.6 !important;
  text-decoration: none !important;
}

.single-product #review_form .comment-form-cookies-consent a:hover {
  color: #f6efe4 !important;
}

.ae-product-card__media,
.single-product .related.products ul.products li.product a:first-child,
.single-product .upsells.products ul.products li.product a:first-child {
  background: #f3f3f3 !important;
}

.single-product .related.products ul.products li.product a:first-child,
.single-product .upsells.products ul.products li.product a:first-child {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #e9e3d8 !important;
  padding: 14px !important;
}

/* =========================================
   FONDO EDITORIAL - IMAGEN PRINCIPAL
========================================= */

.single-product .woocommerce-product-gallery .flex-viewport {
  border-radius: 28px !important;
  overflow: hidden !important;
  background: #e7e2d8 !important;
}

.single-product .woocommerce-product-gallery__image a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #e7e2d8 !important;
  width: 100% !important;
}

.ae-product-card__badges {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  z-index: 3;

  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 8px !important;

  max-width: calc(100% - 28px) !important;
  flex-wrap: nowrap !important;
}

.ae-product-card__badges .ae-product-card__badge {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-height: 32px !important;
  padding: 4px 10px !important;

  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;

  font-size: .7rem !important;
  letter-spacing: .08em !important;
}

.ae-product-card__badges .ae-product-card__badge:nth-child(2) {
  opacity: .75;
  font-size: .68rem;
}

.ae-footer-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #25d366 !important;
  text-decoration: none !important;
}

.ae-footer-whatsapp:hover {
  color: #4be081 !important;
}

.ae-footer-whatsapp__icon {
  width: 16px;
  height: 16px;
  display: inline-flex;
  flex: 0 0 16px;
}

.ae-footer-whatsapp__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}


.ae-service__icon {
  width: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
  border-radius: 50%;
  border: 1px solid var(--ae-line);
  color: var(--ae-gold);
  background: rgba(255,255,255,.01);
}

.ae-service__icon svg {
  width: 32px;
  height: 32px;
  display: block;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ae-section + .ae-section {
  margin-top: -20px;
}

.ae-section + .ae-section {
  margin-top: -40px;
}

.ae-section + .ae-section {
  margin-top: -30px;
}

.ae-section__head {
  margin-bottom: 20px;
}

.ae-section__head p {
  margin-bottom: 6px;
}

.ae-section .ae-container > div:last-child {
  margin-top: 10px;
}

.ae-section .ae-service,
.ae-section article {
  margin-bottom: 0;
}

.ae-section {
  overflow: hidden;
}

.ae-cat {
  position: relative;
  min-height: 360px;
  overflow: hidden;
  border-radius: var(--ae-radius-lg);
  border: 1px solid rgba(255,255,255,.06);
  box-shadow: var(--ae-shadow);
  background: #111;
}

.ae-cat img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}

/* =========================================================
   AE CATALOGO - IMAGEN COMPLETA SIN RECORTE + FONDO BLANCO
   ========================================================= */

.ae-product-card .ae-product-card__media,
.ae-card-product .ae-card-product__media,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

/* =========================================================
   AE - IMAGENES PRODUCTOS / CATEGORIAS / RELACIONADOS
   SIN RECORTE Y CON ESPACIO PARA BADGES
   ========================================================= */

.ae-product-card__media,
.ae-product-card .ae-product-card__media,
.ae-card-product__media,
.ae-card-product .ae-card-product__media,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.single-product .related.products ul.products li.product .astra-shop-thumbnail-wrap,
.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link,
.single-product .upsells.products ul.products li.product .astra-shop-thumbnail-wrap,
.single-product .upsells.products ul.products li.product a.woocommerce-LoopProduct-link {
    position: relative !important;
    height: 255px !important;
    min-height: 255px !important;
    padding: 62px 16px 12px 16px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.ae-product-card__media img,
.ae-product-card .ae-product-card__media img,
.ae-card-product__media img,
.ae-card-product .ae-card-product__media img,
.woocommerce ul.products li.product img,
.single-product .related.products ul.products li.product img,
.single-product .upsells.products ul.products li.product img {
    width: auto !important;
    height: auto !important;
    max-width: 86% !important;
    max-height: 185px !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 auto !important;
    display: block !important;
    background: transparent !important;
}

/* =========================================================
   AE PAGINACION CATALOGO - ESTILO PREMIUM DORADO
   ========================================================= */

.woocommerce nav.woocommerce-pagination,
.woocommerce-pagination,
nav.woocommerce-pagination {
    margin: 34px 0 10px !important;
    text-align: center !important;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce-pagination ul,
nav.woocommerce-pagination ul {
    border: none !important;
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-pagination ul li,
nav.woocommerce-pagination ul li {
    border: none !important;
    margin: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span,
nav.woocommerce-pagination ul li a,
nav.woocommerce-pagination ul li span {
    min-width: 46px !important;
    height: 46px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(226, 181, 101, .55) !important;
    background: rgba(8, 8, 8, .96) !important;
    color: #e2b565 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.35) !important;
    transition: all .22s ease !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce-pagination ul li a:hover,
nav.woocommerce-pagination ul li a:hover {
    background: linear-gradient(135deg, #e2b565, #f3d08a) !important;
    color: #090909 !important;
    border-color: #f3d08a !important;
    transform: translateY(-2px) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-pagination ul li span.current,
nav.woocommerce-pagination ul li span.current {
    background: linear-gradient(135deg, #e2b565, #f3d08a) !important;
    color: #080808 !important;
    border-color: #f3d08a !important;
}

/* =========================================================
   AE - STICKY ADD TO CART COMO HEADER PREMIUM
   ========================================================= */

.ae-sticky-cart-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 86px !important;
    background: #050505 !important;
    border-bottom: 1px solid rgba(226, 181, 101, .45);
    box-shadow: 0 10px 30px rgba(0,0,0,.65);
    z-index: 999999;
    transform: translateY(-120%);
    opacity: 0;
    pointer-events: none;
    transition: all .28s ease;
}

.ae-sticky-cart-bar.is-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.ae-sticky-cart-bar__inner {
    max-width: 1180px;
    height: 86px !important;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    gap: 18px;
}

.ae-sticky-cart-bar__image {
    width: 58px;
    height: 58px;
    background: #ffffff;
    border: 2px solid #e2b565;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.ae-sticky-cart-bar__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 5px;
}

.ae-sticky-cart-bar__info {
    flex: 1;
    min-width: 0;
    color: #ffffff;
    line-height: 1.25;
}

.ae-sticky-cart-bar__label {
    color: #c7b28a;
    font-size: 13px;
    margin-right: 5px;
}

.ae-sticky-cart-bar__info strong {
    color: #ffffff;
    font-size: 15px;
    font-weight: 900;
}

.ae-sticky-cart-bar__price {
    margin-top: 5px;
    color: #e2b565;
    font-weight: 900;
    font-size: 15px;
}

.ae-sticky-cart-bar__price del {
    color: rgba(255,255,255,.45);
    margin-right: 6px;
}

.ae-sticky-cart-bar__price ins {
    color: #e2b565;
    text-decoration: none;
}

.ae-sticky-cart-bar__button {
    background: linear-gradient(135deg, #e2b565, #f3d08a) !important;
    color: #070707 !important;
    border: none !important;
    border-radius: 999px !important;
    padding: 15px 30px !important;
    font-weight: 900 !important;
    text-transform: none !important;
    white-space: nowrap;
    min-width: 178px;
    text-align: center;
}

.ae-sticky-cart-bar__cart {
    color: #e2b565 !important;
    border: 1px solid rgba(226,181,101,.65);
    background: #080808 !important;
    border-radius: 999px;
    padding: 14px 24px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.ae-sticky-cart-bar__cart:hover {
    background: #15100a !important;
    color: #f3d08a !important;
}

@media (max-width: 768px) {
    .ae-sticky-cart-bar,
    .ae-sticky-cart-bar__inner {
        height: 74px !important;
    }

    .ae-sticky-cart-bar__inner {
        padding: 0 10px;
        gap: 10px;
    }

    .ae-sticky-cart-bar__image {
        width: 48px;
        height: 48px;
    }

    .ae-sticky-cart-bar__label,
    .ae-sticky-cart-bar__cart {
        display: none;
    }

    .ae-sticky-cart-bar__info strong {
        font-size: 13px;
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .ae-sticky-cart-bar__price {
        font-size: 13px;
    }

    .ae-sticky-cart-bar__button {
        min-width: auto;
        padding: 11px 14px !important;
        font-size: 13px !important;
    }
}

/* Ocultar enlace automático de WooCommerce después de añadir */
.ae-sticky-cart-bar a.added_to_cart,
.ae-sticky-cart-bar .added_to_cart,
.ae-sticky-cart-bar .wc-forward {
    display: none !important;
}

/* Destacar Ver carrito cuando ya se añadió algo */
.ae-sticky-cart-bar__cart {
    background: #10100d !important;
    border: 1px solid #e2b565 !important;
    color: #e2b565 !important;
}

.ae-sticky-cart-bar__cart:hover {
    background: linear-gradient(135deg, #e2b565, #f3d08a) !important;
    color: #070707 !important;
}

/* =========================================================
   AE - FEEDBACK AL AÑADIR AL CARRITO
   ========================================================= */

.ae-sticky-cart-bar__button.is-adding {
    opacity: .78;
    transform: scale(.97);
}

.ae-sticky-cart-bar__button.is-added {
    background: #00c853 !important;
    color: #031207 !important;
    box-shadow: 0 0 0 0 rgba(0, 200, 83, .45);
    animation: aeAddedPulse .75s ease-out;
}

.ae-sticky-cart-bar__cart.is-highlighted {
    background: linear-gradient(135deg, #e2b565, #f3d08a) !important;
    color: #070707 !important;
    border-color: #f3d08a !important;
    animation: aeCartGlow 1.1s ease-in-out 2;
}

@keyframes aeAddedPulse {
    0% {
        transform: scale(.96);
        box-shadow: 0 0 0 0 rgba(0, 200, 83, .45);
    }
    70% {
        transform: scale(1.04);
        box-shadow: 0 0 0 12px rgba(0, 200, 83, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(0, 200, 83, 0);
    }
}

@keyframes aeCartGlow {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-2px);
    }
}

/* =========================================================
   AE - IMAGENES CON PESO VISUAL UNIFORME
   Catalogo / Categorias / Relacionados
   ========================================================= */

/* Evitar zoom que provoca cortes */
.ae-product-card:hover .ae-product-card__media img,
li.product.ae-product-card:hover img,
.woocommerce ul.products li.product:hover img,
.single-product .related.products ul.products li.product:hover img,
.single-product .upsells.products ul.products li.product:hover img {
    transform: none !important;
}

/* Contenedor general */
.ae-product-card__media,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.single-product .related.products ul.products li.product a:first-child,
.single-product .upsells.products ul.products li.product a:first-child {
    height: 270px !important;
    min-height: 270px !important;
    padding: 28px 24px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

/* Imagen ajustada sin corte */
.ae-product-card__media img,
.woocommerce ul.products li.product img,
.single-product .related.products ul.products li.product img,
.single-product .upsells.products ul.products li.product img {
    width: auto !important;
    height: auto !important;
    max-height: 205px !important;
    max-width: 82% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: auto !important;
    display: block !important;
    transform: none !important;
}

/* Productos muy horizontales: que no se vean gigantes */
.woocommerce ul.products li.product img[width],
.ae-product-card__media img[width] {
    object-fit: contain !important;
}

/* =========================================================
   AE - GALERÍA PRODUCTO PREMIUM CON MINIATURAS SEPARADAS
   ========================================================= */

.single-product .woocommerce-product-gallery {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
    background: transparent !important;
    padding-bottom: 0 !important;
}

/* Imagen principal */
.single-product .woocommerce-product-gallery .flex-viewport {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    background: #ffffff !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(216,171,99,.22) !important;
}

/* Miniaturas columna izquierda */
.single-product .flex-control-thumbs {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Contenedor individual miniatura */
.single-product .flex-control-thumbs li {
    width: 74px !important;
    height: 74px !important;
    flex: 0 0 74px !important;
    padding: 5px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid rgba(216,171,99,.28) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.18) !important;
    box-sizing: border-box !important;
}

/* Imagen miniatura recortada al borde */
.single-product .flex-control-thumbs img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    background: #ffffff !important;
    border-radius: 11px !important;
    display: block !important;
}

/* Hover */
.single-product .flex-control-thumbs li:hover {
    border-color: #e2b565 !important;
    transform: translateY(-2px);
}

/* Activa */
.single-product .flex-control-thumbs img.flex-active {
    box-shadow: 0 0 0 2px #e2b565 !important;
}

/* Evitar fondo blanco gigante */
.single-product div.product div.images,
.single-product .woocommerce-product-gallery,
.single-product figure.woocommerce-product-gallery__wrapper {
    background: transparent !important;
}

/* Móvil */
@media (max-width: 767px) {
    .single-product .woocommerce-product-gallery {
        display: block !important;
    }

    .single-product .flex-control-thumbs {
        flex-direction: row !important;
        justify-content: center !important;
        margin-top: 14px !important;
    }
}

/* =========================================================
   AE - QUITAR LIENZO BLANCO ENTRE MINIATURAS
   ========================================================= */

.single-product div.product div.images .flex-control-thumbs,
.single-product div.product div.images .flex-control-thumbs *,
.single-product .woocommerce-product-gallery .flex-control-thumbs,
.single-product .woocommerce-product-gallery .flex-control-thumbs * {
    background: transparent !important;
    background-color: transparent !important;
}

/* Cada tarjeta miniatura sí mantiene su propio fondo blanco */
.single-product div.product div.images .flex-control-thumbs li {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    margin: 0 !important;
}

/* Imagen dentro de cada miniatura */
.single-product div.product div.images .flex-control-thumbs li img {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-radius: 11px !important;
    display: block !important;
}

/* =========================================================
   AE - MINIATURAS INTELIGENTES (ADAPTATIVAS)
   ========================================================= */

/* Contenedor general */
.single-product .woocommerce-product-gallery {
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: center !important;
}

/* Imagen principal intacta */
.single-product .woocommerce-product-gallery .flex-viewport {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Miniaturas columna izquierda */
.single-product .flex-control-thumbs {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important; /* centra si hay pocas */
    gap: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    max-height: 100% !important;
    overflow-y: auto !important; /* 🔥 si hay muchas, scroll */
}

/* Scroll discreto */
.single-product .flex-control-thumbs::-webkit-scrollbar {
    width: 4px;
}
.single-product .flex-control-thumbs::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,.2);
    border-radius: 10px;
}

/* Miniaturas */
.single-product .flex-control-thumbs li {
    width: 72px !important;
    height: 72px !important;
    flex: 0 0 72px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid rgba(216,171,99,.28) !important;
    box-shadow: 0 6px 14px rgba(0,0,0,.12) !important;
}

/* Imagen */
.single-product .flex-control-thumbs img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    padding: 4px !important;
    background: #ffffff !important;
}

/* Hover */
.single-product .flex-control-thumbs li:hover {
    transform: translateY(-2px);
    border-color: #e2b565 !important;
}

/* Activa */
.single-product .flex-control-thumbs img.flex-active {
    box-shadow: 0 0 0 2px #e2b565 !important;
}

/* =========================================================
   AE - SUBMENÚ CATEGORÍAS / TIPOS
   ========================================================= */

.ae-menu li,
.main-header-menu li {
    position: relative;
}

.ae-menu li .sub-menu,
.main-header-menu li .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 210px;
    padding: 10px;
    margin: 0;
    list-style: none;
    background: #080808 !important;
    border: 1px solid rgba(216,171,99,.25);
    border-radius: 18px;
    box-shadow: 0 18px 44px rgba(0,0,0,.42);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all .22s ease;
    z-index: 99999;
}

.ae-menu li:hover > .sub-menu,
.main-header-menu li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.ae-menu li .sub-menu li,
.main-header-menu li .sub-menu li {
    margin: 0 !important;
}

.ae-menu li .sub-menu a,
.main-header-menu li .sub-menu a {
    display: block !important;
    padding: 11px 14px !important;
    border-radius: 12px;
    color: #ead8b8 !important;
    text-decoration: none !important;
    font-size: .92rem;
}

.ae-menu li .sub-menu a:hover,
.main-header-menu li .sub-menu a:hover {
    background: rgba(216,171,99,.12) !important;
    color: #f6efe4 !important;
}

.ae-cat-dropdown {
    position: relative;
    display: inline-flex;
}

.ae-cat-dropdown__menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 190px;
    padding: 8px;
    border-radius: 16px;
    border: 1px solid rgba(216,171,99,.28);
    background: #080808;
    box-shadow: 0 18px 44px rgba(0,0,0,.42);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all .22s ease;
    z-index: 99999;
}

.ae-cat-dropdown:hover .ae-cat-dropdown__menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.ae-cat-dropdown__menu a {
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    color: #ead8b8 !important;
    text-decoration: none !important;
    font-size: .9rem;
    white-space: nowrap;
}

.ae-cat-dropdown__menu a:hover {
    background: rgba(216,171,99,.12);
    color: #ffffff !important;
}

/* =========================================================
   AE SHOP HERO - Fondo gourmet ambiental premium sin recorte
   ========================================================= */

.ae-shop-hero {
    position: relative;
    overflow: hidden;
    background-color: #050505;
    background-image:
        linear-gradient(
            90deg,
            rgba(3, 3, 3, 0.98) 0%,
            rgba(3, 3, 3, 0.94) 32%,
            rgba(3, 3, 3, 0.72) 58%,
            rgba(3, 3, 3, 0.36) 100%
        ),
        url('/wp-content/themes/astra-child-alimentos-europeos/assets/img/hero-gourmet-espanol.jpg');
    background-position: center right;
    background-size: auto 100%;
    background-repeat: no-repeat;
}

.ae-shop-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 72% 42%, rgba(214, 179, 106, 0.13), transparent 34%),
        linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.38));
    pointer-events: none;
    z-index: 1;
}

.ae-shop-hero .ae-container {
    position: relative;
    z-index: 2;
}

.ae-shop-hero__copy {
    max-width: 760px;
}

.ae-shop-hero__copy h1,
.ae-shop-hero__copy p,
.ae-shop-hero__copy .ae-kicker {
    position: relative;
    z-index: 2;
}

@media (max-width: 768px) {
    .ae-shop-hero {
        background-image:
            linear-gradient(
                180deg,
                rgba(3, 3, 3, 0.96) 0%,
                rgba(3, 3, 3, 0.88) 100%
            ),
            url('/wp-content/themes/astra-child-alimentos-europeos/assets/img/hero-gourmet-espanol.jpg');
        background-position: center right;
        background-size: auto 100%;
        background-repeat: no-repeat;
    }
}

/* =========================================================
   AE DROPDOWN - Categorías con segundo nivel premium
   ========================================================= */

.ae-cat-dropdown {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.ae-cat-dropdown__menu {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    min-width: 210px;
    padding: 12px;
    border-radius: 16px;
    background: rgba(5, 5, 5, 0.98);
    border: 1px solid rgba(214, 179, 106, 0.25);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.42);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease;
    z-index: 9999;
}

.ae-cat-dropdown:hover > .ae-cat-dropdown__menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.ae-cat-dropdown__menu a,
.ae-cat-dropdown__item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 11px 14px;
    border-radius: 10px;
    color: #f5ead8 !important;
    text-decoration: none !important;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    box-sizing: border-box;
}

.ae-cat-dropdown__menu a:hover,
.ae-cat-dropdown__item > a:hover {
    background: rgba(214, 179, 106, 0.16);
    color: #e7bd65 !important;
}

.ae-cat-dropdown__item {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}

.ae-cat-dropdown__item + .ae-cat-dropdown__item {
    margin-top: 4px;
}

.ae-cat-dropdown__item.has-submenu > a::after {
    content: "›";
    margin-left: 18px;
    opacity: 0.85;
    font-size: 16px;
    line-height: 1;
}

/* Submenú segundo nivel */
.ae-cat-dropdown__submenu {
    position: absolute;
    top: 0;
    left: calc(100% + 15px);
    min-width: 170px;
    padding: 12px;
    border-radius: 16px;
    background: rgba(5, 5, 5, 0.98);
    border: 1px solid rgba(214, 179, 106, 0.25);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.42);
    opacity: 0;
    visibility: hidden;
    transform: translateX(8px);
    transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease;
    z-index: 10000;
}

.ae-cat-dropdown__item:hover > .ae-cat-dropdown__submenu {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.ae-cat-dropdown__submenu a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 11px 14px;
    border-radius: 10px;
}

.ae-cat-dropdown__submenu a + a {
    margin-top: 4px;
}

/* Evita que los productos tapen o atraviesen el menú */
.ae-shop-cats,
.ae-shop-cats .ae-container,
.ae-shop-cats__nav {
    position: relative;
    z-index: 1000;
}

.ae-shop-wrap,
.ae-products-grid {
    position: relative;
    z-index: 1;
}

@media (max-width: 768px) {
    .ae-cat-dropdown {
        display: inline-flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .ae-cat-dropdown__menu,
    .ae-cat-dropdown__submenu {
        position: static;
        display: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        margin-top: 8px;
        box-shadow: none;
    }

    .ae-cat-dropdown:hover > .ae-cat-dropdown__menu,
    .ae-cat-dropdown__item:hover > .ae-cat-dropdown__submenu {
        display: block;
    }
}

/* =========================================================
   AE - PAGINA NOSOTROS - VERSION ESTABLE
   ========================================================= */

body .ae-nosotros-page {
    background: #f6eddd !important;
    color: #24170f !important;
    overflow-x: hidden !important;
}

/* CONTENEDOR GENERAL */

body .ae-nosotros-page .ae-nosotros-container {
    width: min(1180px, calc(100% - 40px)) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* KICKER */

body .ae-nosotros-page .ae-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
    color: #9a6b2f !important;
}

body .ae-nosotros-page .ae-kicker::before {
    content: "" !important;
    width: 34px !important;
    height: 1px !important;
    background: currentColor !important;
}

/* HERO */

body .ae-nosotros-page .ae-nosotros-hero {
    padding: 76px 0 !important;
    background: linear-gradient(135deg, #f8efdf 0%, #edddc3 100%) !important;
}

body .ae-nosotros-page .ae-nosotros-hero__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 480px !important;
    gap: 54px !important;
    align-items: center !important;
}

body .ae-nosotros-page .ae-nosotros-hero__content {
    max-width: 650px !important;
}

body .ae-nosotros-page .ae-nosotros-hero__content h1 {
    margin: 0 0 18px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(40px, 4.7vw, 68px) !important;
    line-height: .98 !important;
    letter-spacing: -.04em !important;
    color: #24170f !important;
}

body .ae-nosotros-page .ae-nosotros-hero__content p {
    max-width: 620px !important;
    margin: 0 !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
    color: rgba(36, 23, 15, .78) !important;
}

body .ae-nosotros-page .ae-nosotros-hero__actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    margin-top: 32px !important;
}

/* BOTONES */

body .ae-nosotros-page .ae-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    padding: 13px 22px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: .03em !important;
    text-decoration: none !important;
    transition: all .22s ease !important;
}

body .ae-nosotros-page .ae-btn--primary {
    background: #24170f !important;
    color: #fff !important;
    box-shadow: 0 16px 32px rgba(36, 23, 15, .22) !important;
}

body .ae-nosotros-page .ae-btn--outline {
    border: 1px solid rgba(36, 23, 15, .35) !important;
    color: #24170f !important;
    background: rgba(255, 255, 255, .52) !important;
}

body .ae-nosotros-page .ae-btn--light {
    background: #fff !important;
    color: #24170f !important;
}

/* IMAGEN HERO */

body .ae-nosotros-page .ae-nosotros-hero__card {
    position: relative !important;
    width: 100% !important;
    max-width: 480px !important;
    margin: 0 !important;
}

body .ae-nosotros-page .ae-nosotros-hero__image {
    width: 100% !important;
    height: 560px !important;
    max-height: 560px !important;
    overflow: hidden !important;
    border-radius: 30px !important;
    background: #e6d5bb !important;
    box-shadow: 0 28px 60px rgba(52, 32, 18, .22) !important;
}

body .ae-nosotros-page .ae-nosotros-hero__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* BADGE */

body .ae-nosotros-page .ae-nosotros-hero__badge {
    position: absolute !important;
    left: -22px !important;
    bottom: 34px !important;
    max-width: 230px !important;
    padding: 20px 22px !important;
    border-radius: 22px !important;
    background: rgba(36, 23, 15, .94) !important;
    color: #fff !important;
    box-shadow: 0 22px 42px rgba(0, 0, 0, .22) !important;
}

body .ae-nosotros-page .ae-nosotros-hero__badge strong {
    display: block !important;
    margin-bottom: 4px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 32px !important;
    line-height: 1 !important;
    color: #d8ad62 !important;
}

body .ae-nosotros-page .ae-nosotros-hero__badge span {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: rgba(255, 255, 255, .82) !important;
}

/* SECCIONES */

body .ae-nosotros-page .ae-nosotros-section {
    padding: 86px 0 !important;
    background: #f6eddd !important;
}

body .ae-nosotros-page .ae-nosotros-text-block {
    max-width: 880px !important;
}

body .ae-nosotros-page .ae-nosotros-text-block h2,
body .ae-nosotros-page .ae-nosotros-section-head h2,
body .ae-nosotros-page .ae-nosotros-presencia h2,
body .ae-nosotros-page .ae-nosotros-cta h2 {
    margin: 0 0 20px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(32px, 4vw, 52px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
    color: #24170f !important;
}

body .ae-nosotros-page .ae-nosotros-text-block p,
body .ae-nosotros-page .ae-nosotros-section-head p,
body .ae-nosotros-page .ae-nosotros-presencia p,
body .ae-nosotros-page .ae-nosotros-cta p {
    margin: 0 0 18px !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
    color: rgba(36, 23, 15, .76) !important;
}

/* VALORES */

body .ae-nosotros-page .ae-nosotros-values {
    padding: 92px 0 !important;
    background: #24170f !important;
    color: #fff !important;
}

body .ae-nosotros-page .ae-nosotros-section-head {
    max-width: 760px !important;
    margin-bottom: 38px !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-kicker {
    color: #d8ad62 !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-nosotros-section-head h2 {
    color: #fff !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-nosotros-section-head p {
    color: rgba(255, 255, 255, .72) !important;
}

body .ae-nosotros-page .ae-nosotros-values__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
}

body .ae-nosotros-page .ae-nosotros-value-card {
    min-height: 250px !important;
    padding: 30px !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    border-radius: 28px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)) !important;
    box-shadow: 0 24px 50px rgba(0, 0, 0, .18) !important;
}

body .ae-nosotros-page .ae-nosotros-value-card__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    margin-bottom: 24px !important;
    border-radius: 999px !important;
    background: #d8ad62 !important;
    color: #24170f !important;
    font-weight: 900 !important;
    font-size: 13px !important;
}

body .ae-nosotros-page .ae-nosotros-value-card h3 {
    margin: 0 0 12px !important;
    font-size: 22px !important;
    color: #fff !important;
}

body .ae-nosotros-page .ae-nosotros-value-card p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    color: rgba(255, 255, 255, .72) !important;
}

/* PRESENCIA */

body .ae-nosotros-page .ae-nosotros-presencia {
    background: #f1e5d3 !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__grid {
    display: grid !important;
    grid-template-columns: .9fr 1.1fr !important;
    gap: 56px !important;
    align-items: start !important;
}

/* CTA */

body .ae-nosotros-page .ae-nosotros-cta {
    padding: 86px 0 104px !important;
    background: #f6eddd !important;
}

body .ae-nosotros-page .ae-nosotros-cta__box {
    padding: clamp(34px, 5vw, 64px) !important;
    border-radius: 36px !important;
    background:
        radial-gradient(circle at top right, rgba(216, 173, 98, .30), transparent 36%),
        linear-gradient(135deg, #2b1b12 0%, #1d120c 100%) !important;
    color: #fff !important;
    box-shadow: 0 30px 70px rgba(49, 31, 19, .22) !important;
}

body .ae-nosotros-page .ae-nosotros-cta .ae-kicker {
    color: #d8ad62 !important;
}

body .ae-nosotros-page .ae-nosotros-cta h2 {
    max-width: 850px !important;
    color: #fff !important;
}

body .ae-nosotros-page .ae-nosotros-cta p {
    max-width: 760px !important;
    color: rgba(255, 255, 255, .78) !important;
}

body .ae-nosotros-page .ae-nosotros-cta .ae-btn {
    margin-top: 16px !important;
}

/* RESPONSIVE */

@media (max-width: 921px) {
    body .ae-nosotros-page .ae-nosotros-hero__grid,
    body .ae-nosotros-page .ae-nosotros-presencia__grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__card {
        max-width: 100% !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__image {
        height: 430px !important;
        max-height: 430px !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__badge {
        left: 18px !important;
        bottom: 18px !important;
    }

    body .ae-nosotros-page .ae-nosotros-values__grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 544px) {
    body .ae-nosotros-page .ae-nosotros-container {
        width: min(100% - 24px, 1180px) !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero {
        padding: 56px 0 !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__actions {
        flex-direction: column !important;
    }

    body .ae-nosotros-page .ae-btn {
        width: 100% !important;
    }

    body .ae-nosotros-page .ae-nosotros-section,
    body .ae-nosotros-page .ae-nosotros-values,
    body .ae-nosotros-page .ae-nosotros-cta {
        padding: 62px 0 !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__image {
        height: 340px !important;
        max-height: 340px !important;
        border-radius: 22px !important;
    }
}

/* =========================================================
   AE - AJUSTES FINOS NOSOTROS
   ========================================================= */

/* Hero más equilibrado */
body .ae-nosotros-page .ae-nosotros-hero {
    padding: 86px 0 92px !important;
}

body .ae-nosotros-page .ae-nosotros-hero__grid {
    grid-template-columns: minmax(0, 1fr) 520px !important;
    gap: 64px !important;
}

body .ae-nosotros-page .ae-nosotros-hero__content h1 {
    max-width: 620px !important;
    font-size: clamp(42px, 4.4vw, 64px) !important;
}

body .ae-nosotros-page .ae-nosotros-hero__content p {
    max-width: 590px !important;
}

/* Imagen un poco más protagonista */
body .ae-nosotros-page .ae-nosotros-hero__card {
    max-width: 520px !important;
}

body .ae-nosotros-page .ae-nosotros-hero__image {
    height: 500px !important;
    max-height: 500px !important;
}

/* Más aire entre bloques */
body .ae-nosotros-page .ae-nosotros-section {
    padding: 96px 0 !important;
}

body .ae-nosotros-page .ae-nosotros-values {
    padding: 100px 0 !important;
}

body .ae-nosotros-page .ae-nosotros-cta {
    padding: 96px 0 112px !important;
}

/* Historia más elegante */
body .ae-nosotros-page .ae-nosotros-text-block {
    max-width: 900px !important;
}

body .ae-nosotros-page .ae-nosotros-text-block p {
    max-width: 820px !important;
}

/* CTA final más limpio */
body .ae-nosotros-page .ae-nosotros-cta__box {
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Tarjetas más parejas */
body .ae-nosotros-page .ae-nosotros-value-card {
    min-height: 270px !important;
}

/* Responsive */
@media (max-width: 921px) {
    body .ae-nosotros-page .ae-nosotros-hero__grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__card {
        max-width: 100% !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__image {
        height: 430px !important;
        max-height: 430px !important;
    }
}

@media (max-width: 544px) {
    body .ae-nosotros-page .ae-nosotros-hero {
        padding: 58px 0 66px !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__content h1 {
        font-size: 38px !important;
    }

    body .ae-nosotros-page .ae-nosotros-hero__image {
        height: 340px !important;
        max-height: 340px !important;
    }

    body .ae-nosotros-page .ae-nosotros-section,
    body .ae-nosotros-page .ae-nosotros-values,
    body .ae-nosotros-page .ae-nosotros-cta {
        padding: 68px 0 !important;
    }
}

/* =========================================================
   AE - NOSOTROS ESTILO PREMIUM UNIFICADO
   ========================================================= */

/* Fondo general más uniforme */
body .ae-nosotros-page {
    background: #f6eddd !important;
}

/* Todas las secciones claras */
body .ae-nosotros-page .ae-nosotros-section,
body .ae-nosotros-page .ae-nosotros-presencia {
    background: #f6eddd !important;
}

/* Hero claro elegante */
body .ae-nosotros-page .ae-nosotros-hero {
    background:
        radial-gradient(circle at top right, rgba(216, 173, 98, .20), transparent 32%),
        linear-gradient(135deg, #f8efdf 0%, #efdfc5 100%) !important;
}

/* =========================================================
   DIFERENCIADORES EN CLARO
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-values {
    background: #ead8bd !important;
    color: #24170f !important;
    padding: 100px 0 !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-kicker {
    color: #9a6b2f !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-nosotros-section-head h2 {
    color: #24170f !important;
}

body .ae-nosotros-page .ae-nosotros-values .ae-nosotros-section-head p {
    color: rgba(36, 23, 15, .75) !important;
}

body .ae-nosotros-page .ae-nosotros-value-card {
    min-height: 270px !important;
    padding: 32px !important;
    border: 1px solid rgba(154, 107, 47, .22) !important;
    border-radius: 28px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,248,235,.62)) !important;
    box-shadow: 0 22px 48px rgba(52, 32, 18, .10) !important;
}

body .ae-nosotros-page .ae-nosotros-value-card__icon {
    background: #24170f !important;
    color: #d8ad62 !important;
}

body .ae-nosotros-page .ae-nosotros-value-card h3 {
    color: #24170f !important;
}

body .ae-nosotros-page .ae-nosotros-value-card p {
    color: rgba(36, 23, 15, .72) !important;
}

/* Hover discreto premium */
body .ae-nosotros-page .ae-nosotros-value-card {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

body .ae-nosotros-page .ae-nosotros-value-card:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(154, 107, 47, .38) !important;
    box-shadow: 0 28px 58px rgba(52, 32, 18, .14) !important;
}

/* =========================================================
   PRESENCIA CON IMAGEN
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-presencia {
    padding: 100px 0 !important;
    background:
        radial-gradient(circle at bottom left, rgba(216, 173, 98, .14), transparent 34%),
        #f6eddd !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__grid {
    display: grid !important;
    grid-template-columns: minmax(0, .95fr) 460px !important;
    gap: 60px !important;
    align-items: center !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__content {
    max-width: 640px !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__content h2 {
    max-width: 560px !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__content p {
    max-width: 620px !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__image {
    width: 100% !important;
    height: 430px !important;
    overflow: hidden !important;
    border-radius: 30px !important;
    background: #e6d5bb !important;
    box-shadow: 0 26px 58px rgba(52, 32, 18, .18) !important;
}

body .ae-nosotros-page .ae-nosotros-presencia__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* =========================================================
   CTA FINAL OSCURO COMO CIERRE
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-cta {
    background: #f6eddd !important;
}

body .ae-nosotros-page .ae-nosotros-cta__box {
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background:
        radial-gradient(circle at top right, rgba(216, 173, 98, .30), transparent 36%),
        linear-gradient(135deg, #2b1b12 0%, #1d120c 100%) !important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 921px) {
    body .ae-nosotros-page .ae-nosotros-presencia__grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    body .ae-nosotros-page .ae-nosotros-presencia__image {
        height: 420px !important;
    }
}

@media (max-width: 544px) {
    body .ae-nosotros-page .ae-nosotros-values,
    body .ae-nosotros-page .ae-nosotros-presencia {
        padding: 68px 0 !important;
    }

    body .ae-nosotros-page .ae-nosotros-presencia__image {
        height: 330px !important;
        border-radius: 22px !important;
    }
}

/* =========================================================
   AE - AJUSTES HERO: DESDE 1987 + WHATSAPP
   ========================================================= */

/* Hacer más grande "Desde 1987" solo en el hero */
body .ae-nosotros-page .ae-nosotros-hero .ae-kicker {
    font-size: 15px !important;
    letter-spacing: .18em !important;
    font-weight: 900 !important;
    color: #9a6b2f !important;
    margin-bottom: 18px !important;
}

/* Botón Solicitar información en verde WhatsApp */
body .ae-nosotros-page .ae-nosotros-hero .ae-btn--outline {
    background: #25D366 !important;
    border-color: #25D366 !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(37, 211, 102, .24) !important;
}

/* Icono de WhatsApp dentro del botón */
body .ae-nosotros-page .ae-nosotros-hero .ae-btn--outline::before {
    content: "☘";
    width: 18px !important;
    height: 18px !important;
    margin-right: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0 !important;
    background-color: #ffffff !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Hover WhatsApp */
body .ae-nosotros-page .ae-nosotros-hero .ae-btn--outline:hover {
    background: #1ebe5d !important;
    border-color: #1ebe5d !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

/* =========================================================
   AE - IMAGEN DECORATIVA HISTORIA SIN MARCA DE AGUA
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-text-block {
    position: relative !important;
    max-width: 1100px !important;
    padding-right: 420px !important;
    overflow: visible !important;
}

/* Mantener texto encima */
body .ae-nosotros-page .ae-nosotros-text-block > * {
    position: relative !important;
    z-index: 2 !important;
}

/* Imagen normal, sin transparencia */
body .ae-nosotros-page .ae-nosotros-text-block::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    transform: translateY(-50%) !important;
    width: 390px !important;
    height: 390px !important;
    background-image: url("/wp-content/themes/astra-child-alimentos-europeos/assets/img/alma-europea.png") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    opacity: 1 !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* Tablet */
@media (max-width: 921px) {
    body .ae-nosotros-page .ae-nosotros-text-block {
        padding-right: 280px !important;
    }

    body .ae-nosotros-page .ae-nosotros-text-block::after {
        width: 260px !important;
        height: 260px !important;
        right: 0 !important;
        opacity: 1 !important;
    }
}

/* Móvil: ocultar para no saturar */
@media (max-width: 767px) {
    body .ae-nosotros-page .ae-nosotros-text-block {
        padding-right: 0 !important;
    }

    body .ae-nosotros-page .ae-nosotros-text-block::after {
        display: none !important;
    }
}

/* =========================================================
   AE - CTA FINAL NOSOTROS CLARO + WHATSAPP
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-cta {
    background:
        radial-gradient(circle at top right, rgba(216, 173, 98, .16), transparent 34%),
        #f6eddd !important;
}

body .ae-nosotros-page .ae-nosotros-cta__box {
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: clamp(34px, 5vw, 62px) !important;
    border-radius: 34px !important;
    border: 1px solid rgba(154, 107, 47, .22) !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.70), rgba(255,248,235,.52)) !important;
    color: #24170f !important;
    box-shadow: 0 24px 58px rgba(52, 32, 18, .12) !important;
}

body .ae-nosotros-page .ae-nosotros-cta .ae-kicker {
    color: #9a6b2f !important;
}

body .ae-nosotros-page .ae-nosotros-cta h2 {
    max-width: 850px !important;
    color: #24170f !important;
}

body .ae-nosotros-page .ae-nosotros-cta p {
    max-width: 760px !important;
    color: rgba(36, 23, 15, .78) !important;
}

/* Botón WhatsApp del CTA final */
body .ae-nosotros-page .ae-nosotros-cta .ae-btn--light {
    background: #25D366 !important;
    border: 1px solid #25D366 !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(37, 211, 102, .24) !important;
}

/* Icono WhatsApp */
body .ae-nosotros-page .ae-nosotros-cta .ae-btn--light::before {
    content: "" !important;
    width: 18px !important;
    height: 18px !important;
    margin-right: 8px !important;
    display: inline-flex !important;
    background-color: #ffffff !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body .ae-nosotros-page .ae-nosotros-cta .ae-btn--light:hover {
    background: #1ebe5d !important;
    border-color: #1ebe5d !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

/* =========================================================
   AE - HEADER DEFINITIVO: LOGO + MENU IZQUIERDA / ACCIONES DERECHA
   ========================================================= */

/* Header sticky estable */
body .ae-site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 99999 !important;
    background: rgba(5, 5, 5, .96) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(216,171,99,.28) !important;
    overflow: visible !important;
}

/* Estructura: logo | menú | espacio flexible + botones */
body .ae-site-header .ae-header__inner {
    min-height: 86px !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: auto auto 1fr !important;
    align-items: center !important;
    gap: 34px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    overflow: visible !important;
}

/* Logo más controlado para que no se corte */
body .ae-site-header .ae-header__logo-link {
    display: flex !important;
    align-items: center !important;
    overflow: visible !important;
}

body .ae-site-header .ae-header__logo {
    display: block !important;
    max-height: 62px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* Menú pegado al logo, no centrado */
body .ae-site-header .ae-header__nav {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    justify-self: start !important;
    margin-left: 8px !important;
}

/* Menú */
body .ae-site-header .ae-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .ae-site-header .ae-menu a {
    color: #f6efe4 !important;
    font-size: .96rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    padding: 8px 0 !important;
}

body .ae-site-header .ae-menu a:hover,
body .ae-site-header .ae-menu .current-menu-item > a {
    color: #d8ab63 !important;
}

/* Acciones siempre a la derecha */
body .ae-site-header .ae-header__actions {
    justify-self: end !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

/* Evitar corte visual al hacer scroll */
body .ae-site-header,
body .ae-site-header *,
body .ae-header__inner,
body .ae-header__logo-link {
    box-sizing: border-box !important;
}

/* Si algún sticky del tema intenta achicar el header */
body .ae-site-header.is-sticky,
body .ae-site-header.sticky,
body .ae-site-header.ast-sticky-active,
body .ae-site-header.element-is-sticky {
    min-height: 76px !important;
    overflow: visible !important;
}

body .ae-site-header.is-sticky .ae-header__inner,
body .ae-site-header.sticky .ae-header__inner,
body .ae-site-header.ast-sticky-active .ae-header__inner,
body .ae-site-header.element-is-sticky .ae-header__inner {
    min-height: 76px !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    overflow: visible !important;
}

body .ae-site-header.is-sticky .ae-header__logo,
body .ae-site-header.sticky .ae-header__logo,
body .ae-site-header.ast-sticky-active .ae-header__logo,
body .ae-site-header.element-is-sticky .ae-header__logo {
    max-height: 56px !important;
}

/* Responsive */
@media (max-width: 1200px) {
    body .ae-site-header .ae-header__inner {
        grid-template-columns: auto 1fr auto !important;
        gap: 22px !important;
    }

    body .ae-site-header .ae-header__nav {
        display: flex !important;
    }

    body .ae-site-header .ae-menu {
        gap: 22px !important;
    }
}

@media (max-width: 767px) {
    body .ae-site-header .ae-header__inner {
        min-height: 74px !important;
        grid-template-columns: auto auto !important;
    }

    body .ae-site-header .ae-header__logo {
        max-height: 52px !important;
    }

    body .ae-site-header .ae-header__nav {
        display: none !important;
    }
}

/* =========================================================
   AE - BAJAR MENU PARA ALINEARLO CON EL LOGO
   ========================================================= */

body .ae-site-header .ae-header__nav {
    align-self: end !important;
    padding-bottom: 3px !important;
}

body .ae-site-header .ae-header__actions {
    align-self: end !important;
    padding-bottom: 10px !important;
}

/* =========================================================
   AE - HERO: HACER MAS PROTAGONICO "DESDE 1987"
   ========================================================= */

body .ae-nosotros-page .ae-nosotros-hero .ae-kicker {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 22px !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: #a56f2a !important;
    line-height: 1 !important;
}

body .ae-nosotros-page .ae-nosotros-hero .ae-kicker::before {
    width: 44px !important;
    height: 2px !important;
    background: #a56f2a !important;
    opacity: 1 !important;
}

/* =========================================================
   AE - FOOTER TAGLINE ESTILO ORO CURSIVA
   ========================================================= */

body .ae-footer__tagline {
    margin: 14px 0 10px !important;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
    font-size: 2rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    letter-spacing: .01em !important;
    color: #c88943 !important;
}

/* =========================================================
   AE - FOOTER LOGO + TAGLINE EQUILIBRADOS
   ========================================================= */

body .ae-footer__logo {
    max-width: 190px !important;
    width: 190px !important;
    height: auto !important;
    margin-bottom: 18px !important;
}

body .ae-footer__tagline {
    margin: 8px 0 12px !important;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
    font-size: 1.65rem !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    letter-spacing: .01em !important;
    color: #c88943 !important;
}

body .ae-footer__copy {
    max-width: 430px !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
}
/* =========================================================
   AE - FORZAR IMAGEN HERO HOME
   ========================================================= */

html body.home main.ae-home .ae-hero .ae-hero__visual .ae-hero__card {
    background: 
        linear-gradient(90deg, rgba(0,0,0,.16), rgba(0,0,0,.04)),
        url("/wp-content/themes/astra-child-alimentos-europeos/assets/img/hero-jamon-premium.png") !important;
    background-size: cover !important;
    background-position: 68% center !important;
    background-repeat: no-repeat !important;
}

/* =========================================================
   AE - AJUSTE FINO HERO JAMON PREMIUM
   ========================================================= */

html body.home main.ae-home .ae-hero .ae-hero__visual .ae-hero__card {
    background:
        linear-gradient(90deg, rgba(0,0,0,.10), rgba(0,0,0,.02)),
        url("/wp-content/themes/astra-child-alimentos-europeos/assets/img/hero-jamon-premium.png") !important;
    background-size: cover !important;
    background-position: 82% center !important;
    background-repeat: no-repeat !important;
}

/* =========================================================
   AE - COLECCIONES HOME COMO LINKS
   ========================================================= */

body .ae-cats .ae-cat-link {
    display: block !important;
    color: inherit !important;
    text-decoration: none !important;
}

body .ae-cats .ae-cat-link:hover {
    color: inherit !important;
    text-decoration: none !important;
}

/* =========================================================
   AE - CONTACTO BOTON WHATSAPP JUNTO A ENVIAR
   ========================================================= */

body .ae-contact-actions {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}

body .ae-contact-whatsapp-action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 52px !important;
    padding: 15px 26px !important;
    border-radius: 999px !important;
    background: #25D366 !important;
    border: 1px solid #25D366 !important;
    color: #ffffff !important;
    font-size: .95rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: 0 16px 34px rgba(37, 211, 102, .25) !important;
    transition: transform .22s ease, box-shadow .22s ease, background .22s ease !important;
}

body .ae-contact-whatsapp-action:hover {
    background: #1ebe5d !important;
    border-color: #1ebe5d !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 20px 42px rgba(37, 211, 102, .34) !important;
}

body .ae-contact-whatsapp-action__icon {
    width: 19px !important;
    height: 19px !important;
    display: inline-block !important;
    background-color: #ffffff !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

@media (max-width: 767px) {
    body .ae-contact-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body .ae-contact-actions .ae-btn,
    body .ae-contact-whatsapp-action {
        width: 100% !important;
    }
}

/* =========================================================
   AE - SINGLE PRODUCT / JAMON SIN DIFUMINADO
   Corrige opacidad de WooCommerce Flexslider y hover
   ========================================================= */

/* Imagen principal del producto */
body.single-product .woocommerce-product-gallery,
body.single-product .woocommerce-product-gallery *,
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery__image a,
body.single-product .woocommerce-product-gallery__image img,
body.single-product .woocommerce-product-gallery .flex-viewport,
body.single-product .woocommerce-product-gallery .flex-viewport img {
    opacity: 1 !important;
    filter: none !important;
    visibility: visible !important;
}

/* Miniaturas laterales: WooCommerce suele ponerlas semi transparentes */
body.single-product .flex-control-thumbs img,
body.single-product .flex-control-thumbs img.flex-active,
body.single-product .flex-control-thumbs li:hover img,
body.single-product div.product div.images .flex-control-thumbs li img {
    opacity: 1 !important;
    filter: none !important;
    visibility: visible !important;
}

/* Evita que el hover cambie la nitidez */
body.single-product .woocommerce-product-gallery__image:hover img,
body.single-product .flex-control-thumbs li:hover img {
    opacity: 1 !important;
    filter: none !important;
}

/* Productos relacionados dentro de la ficha */
body.single-product .related.products ul.products li.product img,
body.single-product .upsells.products ul.products li.product img,
body.single-product .related.products ul.products li.product:hover img,
body.single-product .upsells.products ul.products li.product:hover img {
    opacity: 1 !important;
    filter: none !important;
}

/* =========================================================
   AE - HOME BOTON ATENCION PERSONALIZADA WHATSAPP
   ========================================================= */

body.home .ae-featured__content .ae-btn--line {
    border-color: rgba(37, 211, 102, .38) !important;
    background: rgba(37, 211, 102, .055) !important;
    color: #bff5d2 !important;
    box-shadow: 0 12px 28px rgba(37, 211, 102, .08) !important;
}

body.home .ae-featured__content .ae-btn--line::before {
    content: "" !important;
    width: 18px !important;
    height: 18px !important;
    margin-right: 9px !important;
    display: inline-block !important;
    background-color: currentColor !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M380.9 97.1C339 55.1 283.2 32 223.9 32 101.6 32 2 131.6 2 253.9c0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 221.9-99.6 221.9-221.9 0-59.3-23.1-115.1-65.1-157.1zM223.9 438.7h-.1c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3 18.6-68.1-4.4-7c-18.5-29.4-28.2-63.4-28.2-98.3 0-101 82.2-183.2 183.3-183.2 48.9 0 94.9 19.1 129.5 53.7s53.6 80.6 53.6 129.5c0 101-82.2 183.2-183.2 183.2zm101.6-137.4c-5.6-2.8-33.1-16.3-38.2-18.2-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18.2-17.5 21.9-3.2 3.7-6.5 4.2-12.1 1.4-5.6-2.8-23.6-8.7-44.9-27.7-16.6-14.8-27.8-33.1-31-38.7-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.6-6.5 8.4-9.7 2.8-3.2 3.7-5.6 5.6-9.3 1.9-3.7.9-7-0.5-9.8-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-7-.2-10.7-.2-3.7 0-9.8 1.4-14.9 7-5.1 5.6-19.6 19.1-19.6 46.5s20.1 54 22.9 57.7c2.8 3.7 39.5 60.3 95.7 84.5 13.4 5.8 23.8 9.2 31.9 11.8 13.4 4.3 25.7 3.7 35.4 2.3 10.8-1.6 33.1-13.5 37.8-26.6 4.7-13.1 4.7-24.3 3.3-26.6-1.3-2.5-5-3.9-10.6-6.7z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body.home .ae-featured__content .ae-btn--line:hover {
    border-color: #25D366 !important;
    background: #25D366 !important;
    color: #07120b !important;
    box-shadow: 0 18px 38px rgba(37, 211, 102, .28) !important;
    transform: translateY(-2px) !important;
}