/* ─────────────────────────────────────────────
   SECCIÓN: RECURSOS — El ciclo lunar
   ───────────────────────────────────────────── */

/* Grid 4 columnas */
#brxe-lr_g101 {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 32px !important;
  margin-top: 60px !important;
}

#brxe-lr_g101 > * {
  width: 100% !important;
  max-width: 100% !important;
}

/* Card de fase */
.sy-lunar-card {
  text-align: center !important;
  padding: 24px !important;
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 12px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* Icono de luna */
.sy-lunar-icon {
  font-size: 40px !important;
  line-height: 1 !important;
  margin-bottom: 16px !important;
  display: inline-block !important;
}

/* H3 de títulos de fase */
#brxe-lr_g101 h3 {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 0 0 12px 0 !important;
}

/* Descripción en cards */
#brxe-lr_g101 p {
  font-family: var(--sy-font-body, 'Jost', sans-serif) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #666666 !important;
  margin: 0 !important;
}

/* H1 sección */
#brxe-lr_h101 {
  text-align: center !important;
  font-size: clamp(32px, 5vw, 48px) !important;
  margin: 0 0 16px 0 !important;
  color: var(--sy-dark, #1B1B1B) !important;
}

/* Subtítulo */
#brxe-lr_sub1 {
  text-align: center !important;
  max-width: 800px !important;
  margin: 0 auto 0 auto !important;
  font-size: 16px !important;
  color: #666666 !important;
}

#brxe-lr_sub1 p {
  margin: 0 !important;
  font-size: 16px !important;
}

/* ─────────────────────────────────────────────
   RESPONSIVE — Tablet (991px y menos)
   ───────────────────────────────────────────── */
@media (max-width: 991px) {
  #brxe-lr_g101 {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
}

/* ─────────────────────────────────────────────
   RESPONSIVE — Mobile (768px y menos)
   ───────────────────────────────────────────── */
@media (max-width: 768px) {
  #brxe-lr_g101 {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  #brxe-lr_cont {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .sy-lunar-card {
    padding: 20px !important;
  }

  #brxe-lr_h101 {
    font-size: clamp(24px, 5vw, 32px) !important;
  }

  #brxe-lr_sub1 {
    font-size: 14px !important;
  }

  #brxe-lr_g101 h3 {
    font-size: 16px !important;
  }

  #brxe-lr_g101 p {
    font-size: 13px !important;
  }
}
/* ══════════════════════════════════════════════════════════════
   SacredYoni — sections.css
   Estilos de layout para todas las secciones de la homepage.
   ══════════════════════════════════════════════════════════════ */

:root {
  --sy-cream: #FAF8F1;
  --sy-dark: #1B1B1B;
  --sy-taupe: #5E574D;
  --sy-blue-gray: #839EB6;
  --sy-white: #FFFFFF;
  --sy-border: #E7E2D8;
  --sy-tan: #9D9979;
  --sy-light: #F5F0E8;
  --sy-footer-bg: #2C2C2C;
  --sy-card-tint: rgba(131, 158, 182, 0.10);
  --sy-font-display: 'Cormorant Garamond', Georgia, serif;
  --sy-font-body: 'Inter', system-ui, sans-serif;
}

/* ── Base resets ───────────────────────────────────────────── */

body { background: var(--sy-cream); }

.brxe-section { width: 100%; }


/* ── HEADER (sticky) ──────────────────────────────────────── */

.sy-header {
  background: var(--sy-white) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.06);
}

/* WP admin bar offset */
.admin-bar .sy-header {
  top: 32px !important;
}

.sy-header__inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px;
}

.sy-header__logo {
  flex-shrink: 0;
  line-height: 0;
}

.sy-header__logo img {
  height: 37px !important;
  width: auto !important;
  display: block;
}

.sy-header__logo a {
  display: block;
  line-height: 0;
}

.sy-header__nav {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 32px !important;
  flex: 1;
}

.sy-header__link {
  font-family: var(--sy-font-body) !important;
  font-size: 15px !important;
  color: var(--sy-dark) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: opacity 0.2s;
}

.sy-header__link:hover,
.sy-header__link a:hover {
  opacity: 0.6;
}

.sy-header__link a {
  color: inherit !important;
  text-decoration: none !important;
}

.sy-header__actions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}

.sy-header__cart {
  font-size: 20px;
  color: var(--sy-dark);
  cursor: pointer;
}

.sy-header__cart a {
  color: var(--sy-dark) !important;
  text-decoration: none !important;
}

/* Mobile hamburger toggle - hidden on desktop */
.sy-header__toggle {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  padding: 4px;
}

.sy-header__toggle-line {
  width: 22px;
  height: 2px;
  background: var(--sy-dark);
  border-radius: 2px;
}

/* Mobile menu — fullscreen overlay */
@media (max-width: 991px) {
  .sy-header__cta { display: none !important; }

  .sy-header__nav {
    display: none !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: var(--sy-white);
    z-index: 9999;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 !important;
  }

  .sy-header__nav.sy-nav--open {
    display: flex !important;
  }

  .sy-header__nav .sy-header__link {
    padding: 20px 0 !important;
    font-size: 22px !important;
    font-family: var(--sy-font-display) !important;
    font-weight: 500 !important;
    text-align: center;
    width: 80%;
    border-bottom: 1px solid var(--sy-border);
  }

  .sy-header__nav .sy-header__link:last-child {
    border-bottom: none;
  }

  /* Toggle stays above overlay */
  .sy-header__toggle {
    z-index: 10000;
    position: relative;
  }

  /* Hamburger X animation */
  .sy-toggle--active .sy-header__toggle-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }
  .sy-toggle--active .sy-header__toggle-line:nth-child(2) {
    opacity: 0;
  }
  .sy-toggle--active .sy-header__toggle-line:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
  }

  .sy-header__toggle-line {
    transition: transform 0.3s, opacity 0.3s;
  }
}

/* ── 1. HERO ──────────────────────────────────────────────── */

.sy-hero {
  background: var(--sy-cream);
}

.sy-hero__grid {
  display: grid !important;
  grid-template-columns: 55fr 45fr;
  gap: 48px;
  align-items: center;
}

.sy-hero__text {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.sy-hero__buttons {
  display: flex;
  flex-direction: row;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.sy-hero__image {
  width: 100%;
}

.sy-hero__image img,
.sy-hero__img img {
  width: 100%;
  height: auto;
  border-radius: 16px;
  object-fit: cover;
  display: block;
}


/* ── 2. CTA STRIP ─────────────────────────────────────────── */

.sy-cta-strip {
  background: transparent;
}

.sy-cta-strip__inner {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  padding: 48px 80px !important;
  text-align: center;
}

.sy-cta-strip__buttons {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
}


/* ── 3. TRES CAMINOS ──────────────────────────────────────── */

.sy-caminos {
  background: var(--sy-cream);
}

.sy-caminos__inner {
  display: flex !important;
  flex-direction: column;
  gap: 32px;
  align-items: center;
}

.sy-section-title {
  text-align: center;
}

.sy-section-subtitle {
  text-align: center;
  max-width: 600px;
  opacity: 0.8;
}

.sy-caminos__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  width: 100%;
  margin-top: 16px;
}

.sy-caminos__card {
  background: var(--sy-card-tint);
  border-radius: 16px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sy-caminos__badge {
  color: var(--sy-tan);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 13px;
  font-weight: 600;
}

.sy-caminos__card-title {
  margin: 0;
}

.sy-caminos__card-desc {
  opacity: 0.75;
  line-height: 1.6;
  flex: 1;
}

.sy-caminos__card .sy-btn {
  align-self: flex-start;
  margin-top: auto;
}


/* ── 4. CATÁLOGO ──────────────────────────────────────────── */

.sy-catalogo {
  background: var(--sy-cream);
}

.sy-catalogo__inner {
  display: flex !important;
  flex-direction: column;
  gap: 32px;
  align-items: center;
}

.sy-catalogo__products {
  width: 100%;
}

/* WooCommerce Grid Override */
ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

body ul.products li.product,
.woocommerce ul.products li.product {
  background: var(--sy-white) !important;
  border-radius: 16px !important;
  border: 1.5px solid var(--sy-border) !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  list-style: none !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.03) !important;
  width: 100% !important;
  float: none !important;
}

body ul.products li.product .woocommerce-loop-product__link {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  text-decoration: none !important;
}

body ul.products li.product img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

body ul.products li.product .woocommerce-loop-product__title,
body ul.products li.product h2 {
  font-family: var(--sy-font-display) !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  padding: 20px 24px 8px !important;
  color: var(--sy-dark) !important;
  margin: 0 !important;
}

body ul.products li.product .price {
  padding: 0 24px 20px !important;
  font-size: 22px !important;
  color: var(--sy-dark) !important;
  font-weight: 600 !important;
  margin-bottom: auto !important;
  display: block !important;
}

body ul.products li.product .button,
body ul.products li.product .add_to_cart_button {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  border-radius: 999px !important;
  padding: 10px 24px !important;
  margin: 0 24px 24px !important;
  font-size: 14px !important;
  font-family: var(--sy-font-body) !important;
  text-transform: none !important;
  width: fit-content !important;
  display: inline-block !important;
  border: none !important;
  line-height: 1.4 !important;
  height: auto !important;
  cursor: pointer;
  transition: opacity 0.2s, transform 0.2s;
}

body ul.products li.product .button:hover {
  opacity: 0.9 !important;
  transform: translateY(-1px) !important;
}


/* ── 5. SOBRE IRENE ───────────────────────────────────────── */

.sy-irene {
  background: var(--sy-cream);
}

.sy-irene__grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}

.sy-irene__text {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sy-irene__bio {
  opacity: 0.85;
}

.sy-irene__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 8px;
}

.sy-irene__tag {
  font-size: 14px;
  color: var(--sy-tan);
  font-family: var(--sy-font-body);
}

.sy-irene__image {
  width: 100%;
}

.sy-irene__image img {
  width: 100%;
  height: auto;
  border-radius: 16px;
  object-fit: cover;
  display: block;
}


/* ── 6. SEGURIDAD ─────────────────────────────────────────── */

.sy-seguridad {
  background: var(--sy-taupe);
  border-radius: 24px;
  max-width: 1200px;
  margin: 40px auto;
  padding: 64px 80px;
  width: calc(100% - 80px);
}

.sy-seguridad__inner {
  display: flex !important;
  flex-direction: column;
  gap: 24px;
}

.sy-seguridad__badge {
  display: inline-block;
  background: rgba(157, 153, 121, 0.3);
  color: var(--sy-light);
  padding: 6px 16px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  width: fit-content;
}

.sy-seguridad__title {
  color: var(--sy-light) !important;
}

.sy-seguridad__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 8px 0;
}

.sy-seguridad__item {
  color: var(--sy-light);
  opacity: 0.85;
  padding-left: 20px;
  position: relative;
  line-height: 1.6;
}

.sy-seguridad__item::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--sy-light);
  opacity: 0.5;
}


/* ── 7. FAQ ───────────────────────────────────────────────── */

.sy-faq {
  background: var(--sy-cream);
}

.sy-faq__inner {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
}

/* FAQ accordion card */
.sy-faq__accordion-wrap {
  background: var(--sy-white);
  border-radius: 16px;
  padding: 16px 32px;
  width: 100%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.sy-faq__item {
  border-bottom: 1px solid var(--sy-border);
  padding: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.sy-faq__item:last-child {
  border-bottom: none;
}

.sy-faq__question {
  font-family: var(--sy-font-display) !important;
  font-weight: 400 !important;
  font-size: 22px !important;
  color: var(--sy-dark);
  margin: 0;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  user-select: none;
}

.sy-faq__question::after {
  content: '';
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--sy-dark);
  border-bottom: 2px solid var(--sy-dark);
  transform: rotate(45deg);
  flex-shrink: 0;
  opacity: 0.4;
  transition: transform 0.3s;
}

.sy-faq__item.open .sy-faq__question::after {
  transform: rotate(-135deg);
}

.sy-faq__answer {
  font-family: var(--sy-font-body);
  font-size: 16px;
  line-height: 1.7;
  color: var(--sy-dark);
  opacity: 0.7;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding-top: 0;
}

.sy-faq__item.open .sy-faq__answer {
  max-height: 300px;
  padding-top: 12px;
}


/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 991px) {
  /* Header mobile */
  .sy-header__nav { display: none !important; }
  .sy-header__toggle { display: flex !important; }
  .sy-header__inner { padding-left: 24px !important; padding-right: 24px !important; }

  .sy-hero__grid {
    grid-template-columns: 1fr !important;
    gap: 32px;
  }
  .sy-hero__image { order: -1; }

  .sy-caminos__grid {
    grid-template-columns: 1fr;
  }

  ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .sy-irene__grid {
    grid-template-columns: 1fr !important;
  }
  .sy-irene__image { order: -1; }

  .sy-seguridad {
    margin: 32px 40px;
    padding: 48px 40px;
  }

  .sy-cta-strip__inner {
    padding: 40px !important;
  }

  .sy-hero__grid,
  .sy-caminos__inner,
  .sy-catalogo__inner,
  .sy-irene__grid,
  .sy-faq__inner {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}

@media (max-width: 600px) {
  .sy-hero__grid,
  .sy-caminos__inner,
  .sy-catalogo__inner,
  .sy-irene__grid,
  .sy-faq__inner {
    padding: 40px 24px !important;
  }

  .sy-hero__title {
    font-size: 36px !important;
  }

  .sy-hero__buttons {
    flex-direction: column;
  }
  .sy-hero__buttons .sy-btn {
    text-align: center;
  }

  ul.products {
    grid-template-columns: 1fr !important;
  }

  .sy-caminos__grid {
    gap: 16px;
  }

  .sy-caminos__card {
    padding: 24px;
  }

  .sy-seguridad {
    margin: 24px 16px;
    padding: 40px 24px;
    border-radius: 16px;
  }

  .sy-cta-strip__inner {
    padding: 32px 24px !important;
  }

  .sy-cta-strip__title {
    font-size: 24px !important;
  }

  .sy-section-title {
    font-size: 28px !important;
  }
}

/* ── FOOTER ────────────────────────────────────────────────── */

.sy-footer {
  background: var(--sy-footer-bg) !important;
  color: var(--sy-light);
}

.sy-footer__inner {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
}

.sy-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: 40px;
}

.sy-footer__col {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sy-footer__brand {
  font-family: var(--sy-font-display) !important;
  font-size: 22px !important;
  color: var(--sy-light) !important;
  margin-bottom: 4px;
}

.sy-footer__heading {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
  opacity: 0.9;
}

.sy-footer__link {
  color: var(--sy-light) !important;
  opacity: 0.65;
  text-decoration: none !important;
  transition: opacity 0.2s;
}

.sy-footer__link:hover,
.sy-footer__link a:hover {
  opacity: 1;
}

.sy-footer__link a {
  color: inherit !important;
  text-decoration: none !important;
}

.sy-footer__text {
  opacity: 0.65;
}

.sy-footer__bottom {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sy-footer__divider,
.sy-footer__divider hr {
  border: none;
  border-top: 1px solid rgba(245, 240, 232, 0.12);
  margin: 0;
  height: 0;
}

.sy-footer__copyright {
  opacity: 0.45;
  text-align: center;
  line-height: 1.5;
}

@media (max-width: 991px) {
  .sy-footer__grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  .sy-footer__grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .sy-footer__inner {
    padding: 40px 24px 32px !important;
  }
}

/* ── FAQ page /faq/ — same accordion style ────────────────── */

.sy-faq-section {
  background: var(--sy-cream);
  padding: 80px 0;
}

.sy-faq-container {
  background: var(--sy-white);
  border-radius: 16px;
  padding: 16px 32px;
  max-width: 900px;
  margin: 0 auto;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.sy-faq-item {
  border-bottom: 1px solid var(--sy-border);
  padding: 20px 0;
}

.sy-faq-item:last-child {
  border-bottom: none;
}

.sy-faq-toggle {
  font-family: var(--sy-font-display);
  font-weight: 400;
  font-size: 22px;
  color: var(--sy-dark);
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 0;
  line-height: 1.4;
}

/* FAQ icon — CSS-only chevron, no unicode characters */
.sy-faq-icon {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  border-right: 2px solid var(--sy-dark);
  border-bottom: 2px solid var(--sy-dark);
  transform: rotate(45deg);
  opacity: 0.4;
  transition: transform 0.3s, opacity 0.3s;
  display: inline-block;
  margin-left: 4px;
}

.sy-faq-item.active .sy-faq-icon {
  transform: rotate(-135deg);
  opacity: 0.7;
}

.sy-faq-answer {
  display: none;
  font-family: var(--sy-font-body);
  font-size: 16px;
  line-height: 1.7;
  color: var(--sy-dark);
  opacity: 0.7;
  padding-top: 12px;
}

.sy-faq-item.active .sy-faq-answer {
  display: block;
}

/* ── CURSO + RECURSOS — section styles ───────────────────── */

/* Hero centering: override Bricks default left-align */
.sy-hero-curso > .brxe-container,
.sy-hero-recursos > .brxe-container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  gap: 24px !important;
}

.sy-hero-recursos > .brxe-container {
  max-width: 680px !important;
}

/* All Bricks buttons on these pages — pill shape, corporate colors */
.sy-hero-curso .bricks-button,
.sy-hero-recursos .bricks-button,
.sy-para-quien .bricks-button,
.sy-incluye .bricks-button,
.sy-irene-curso .bricks-button,
.sy-recurso-pdf .bricks-button,
.sy-cta-final .bricks-button {
  border-radius: 999px !important;
  font-family: var(--sy-font-body) !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  padding: 14px 32px !important;
  border: none !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  transition: opacity 0.2s, transform 0.2s !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* Primary CTA button — taupe fill */
.sy-hero-curso .bricks-button:first-of-type,
.sy-incluye .bricks-button:first-of-type {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
}

/* Resources download button — tan fill */
.sy-recurso-pdf .bricks-button {
  background-color: var(--sy-tan) !important;
  color: var(--sy-white) !important;
}

/* CTA final section buttons */
.sy-cta-final .bricks-button {
  color: var(--sy-white) !important;
}

.sy-cta-final .bricks-button:first-child {
  background-color: var(--sy-light) !important;
  color: var(--sy-taupe) !important;
}

.sy-cta-final .bricks-button:last-child {
  background-color: transparent !important;
  border: 1.5px solid rgba(255,255,255,0.6) !important;
}

.sy-hero-curso .bricks-button:hover,
.sy-hero-recursos .bricks-button:hover,
.sy-para-quien .bricks-button:hover,
.sy-incluye .bricks-button:hover,
.sy-recurso-pdf .bricks-button:hover,
.sy-cta-final .bricks-button:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
}

/* Para quién — card grid */
.sy-para-quien .brxe-container > .brxe-container {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 32px !important;
  justify-content: center !important;
}

.sy-para-quien .brxe-div {
  flex: 1 !important;
  min-width: 260px !important;
  max-width: 340px !important;
  background: var(--sy-cream) !important;
  border-radius: 16px !important;
  padding: 40px 32px !important;
  text-align: center !important;
}

/* Bloques — card grid */
.sy-bloques .brxe-container > .brxe-container > .brxe-div {
  flex: 1 !important;
  min-width: 260px !important;
  max-width: 360px !important;
}

/* Incluye — centered column */
.sy-incluye > .brxe-container {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* Irene curso — two column */
.sy-irene-curso > .brxe-container {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 48px !important;
  align-items: center !important;
}

/* PDF recursos — two column */
.sy-recurso-pdf > .brxe-container {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 64px !important;
  align-items: center !important;
}

/* Ciclo lunar cards */
.sy-ciclo-lunar .brxe-container > .brxe-container > .brxe-div {
  flex: 1 !important;
  min-width: 200px !important;
  background: var(--sy-white) !important;
  border-radius: 16px !important;
  padding: 32px 24px !important;
  text-align: center !important;
}

/* CTA final — centered column */
.sy-cta-final > .brxe-container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* CTA final — button row */
.sy-cta-final .brxe-container > .brxe-container {
  display: flex !important;
  flex-direction: row !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}

.sy-hero-curso,
.sy-hero-recursos {
  background: var(--sy-cream);
}

.sy-para-quien {
  background: var(--sy-white);
}

.sy-bloques {
  background: var(--sy-cream);
}

.sy-incluye {
  background: #fef6ed;
}

.sy-irene-curso {
  background: var(--sy-cream);
}

.sy-recurso-pdf {
  background: var(--sy-white);
}

.sy-ciclo-lunar {
  background: var(--sy-light);
}

.sy-cta-final {
  background: var(--sy-taupe);
}

.sy-cta-final h2,
.sy-cta-final p {
  color: var(--sy-light) !important;
}

/* Curso block cards on mobile */
@media (max-width: 600px) {
  .sy-bloques .brxe-container > div {
    min-width: 100% !important;
    max-width: 100% !important;
  }
  .sy-para-quien .brxe-container > div {
    min-width: 100% !important;
  }
  .sy-ciclo-lunar .brxe-container > div {
    min-width: 100% !important;
  }
}

/* ── WooCommerce — corporate button styles ────────────────── */

/* General WC buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
body .woocommerce a.button.alt,
body .woocommerce button.button.alt,
body .woocommerce input.button.alt {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  border-radius: 999px !important;
  font-family: var(--sy-font-body) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 12px 28px !important;
  border: none !important;
  line-height: 1.4 !important;
  height: auto !important;
  cursor: pointer !important;
  transition: opacity 0.2s, transform 0.2s !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button:hover {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
}

/* Cart page */
.woocommerce .cart .button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce table.cart td.actions .coupon .button,
.woocommerce table.cart td.actions .button {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  border-radius: 999px !important;
  font-family: var(--sy-font-body) !important;
  font-weight: 500 !important;
  padding: 12px 28px !important;
  border: none !important;
  font-size: 14px !important;
}

/* Checkout page */
.woocommerce #payment #place_order,
.woocommerce-checkout #payment #place_order {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  border-radius: 999px !important;
  font-family: var(--sy-font-body) !important;
  font-weight: 500 !important;
  padding: 14px 32px !important;
  border: none !important;
  font-size: 15px !important;
  width: 100%;
}

/* My account */
.woocommerce-MyAccount-content .woocommerce-Button,
.woocommerce .woocommerce-Button {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
  border-radius: 999px !important;
  padding: 10px 24px !important;
  border: none !important;
}

/* Remove ghost/outline secondary button variant */
.woocommerce a.button.button-2,
.woocommerce button.button.button-2 {
  background: transparent !important;
  color: var(--sy-taupe) !important;
  border: 1.5px solid var(--sy-taupe) !important;
}

/* ══════════════════════════════════════════════════════════════
   AUDIT FIXES — bugs confirmados por computed styles
   ══════════════════════════════════════════════════════════════ */

/* ── FIX 1: Hero secondary button → ghost pill ────────────── */
/* #brxe-h008 "Ver curso online": solid blue-gray → transparent */
#brxe-h008 {
  background-color: transparent !important;
  color: var(--sy-dark) !important;
  border: 1.5px solid var(--sy-taupe) !important;
  box-shadow: none !important;
}
#brxe-h008:hover {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
}

/* ── FIX 2: CTA Strip primary button → taupe ─────────────── */
/* #brxe-c005: orange #C4622D → taupe #5E574D */
#brxe-c005 {
  background-color: var(--sy-taupe) !important;
  color: var(--sy-white) !important;
}
#brxe-c005:hover { opacity: 0.88 !important; }

/* ── FIX 3: CTA Strip ghost button → white transparent ────── */
/* #brxe-c006: solid blue-gray → ghost white on dark bg */
#brxe-c006 {
  background-color: transparent !important;
  color: var(--sy-white) !important;
  border-color: rgba(255,255,255,0.6) !important;
}
#brxe-c006:hover {
  background-color: rgba(255,255,255,0.1) !important;
}

/* ── FIX 4: CTA Strip H2 → white (contrast crítico) ─────── */
/* #brxe-c003: texto oscuro sobre bg oscuro taupe → forzar blanco */
#brxe-c003,
#brxe-c003 * {
  color: #FFFFFF !important;
}
/* Texto adicional dentro del CTA strip también blanco */
.sy-cta-strip__inner .brxe-text-basic,
.sy-cta-strip__inner .brxe-heading,
.sy-cta-strip .brxe-heading,
.sy-cta-strip .brxe-text-basic {
  color: #FFFFFF !important;
}

/* ── FIX 5: Seguridad padding-bottom asimétrico ────────────── */
/* #brxe-s001: padding-bottom 10px → 60px */
#brxe-s001 {
  padding-bottom: 60px !important;
}

/* ── FIX 6: Ensure all dark-bg sections have light text ──── */
.sy-seguridad h1, .sy-seguridad h2, .sy-seguridad h3,
.sy-seguridad p, .sy-seguridad div {
  color: var(--sy-light) !important;
}
.sy-seguridad .brxe-heading { color: var(--sy-light) !important; }
.sy-seguridad .brxe-text-basic { color: var(--sy-light) !important; opacity: 0.9; }

/* ── FIX 7: Footer headings → light color ────────────────── */
.sy-footer .brxe-heading,
.sy-footer h1, .sy-footer h2, .sy-footer h3 {
  color: var(--sy-light) !important;
}

/* ── FIX 8: Catálogo section white bg fix ────────────────── */
/* #brxe-p002 has background-color: white from Bricks — override with cream */
#brxe-p002 {
  background-color: var(--sy-cream) !important;
}

/* ── FIX 9: Global h2/h3 in dark sections always white ────── */
.sy-cta-strip .brxe-heading,
.sy-cta-final .brxe-heading,
.sy-cta-final h2, .sy-cta-final h3,
.sy-cta-final .brxe-text-basic {
  color: var(--sy-light) !important;
}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE POLISH — mejoras generales
   ══════════════════════════════════════════════════════════════ */

/* Touch targets mínimo 44px */
.bricks-button,
.sy-header__link,
.sy-faq-toggle,
.sy-faq__question {
  min-height: 44px;
}
.sy-header__link {
  display: flex;
  align-items: center;
}

/* Secciones con padding horizontal interno ajustado en tablet */
@media (max-width: 1024px) {
  #brxe-h002,
  #brxe-t002,
  #brxe-p002,
  #brxe-i002,
  #brxe-f002 {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  #brxe-s001 {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}

/* Mobile ≤ 768px */
@media (max-width: 768px) {
  /* Header: reducir padding interno */
  #brxe-h002,
  #brxe-t002,
  #brxe-p002,
  #brxe-i002,
  #brxe-f002 {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  #brxe-s001 {
    padding: 40px 24px !important;
  }

  /* Hero: stack columns */
  .sy-hero__grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .sy-hero__image { order: -1; }

  /* Hero title más pequeño */
  .sy-hero__title,
  #brxe-h004 {
    font-size: 38px !important;
    line-height: 1.15 !important;
  }

  /* Hero botones: columna */
  .sy-hero__buttons {
    flex-direction: column !important;
    gap: 12px !important;
  }
  .sy-hero__buttons .bricks-button,
  #brxe-h007, #brxe-h008 {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }

  /* Tres caminos: columna */
  .sy-caminos__grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* Catálogo: 1 columna */
  ul.products {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Irene: columna */
  .sy-irene__grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .sy-irene__image { order: -1; }

  /* Seguridad: ajuste */
  .sy-seguridad {
    margin: 16px !important;
    padding: 40px 24px !important;
    width: auto !important;
    border-radius: 16px !important;
  }

  /* FAQ accordion */
  .sy-faq__accordion-wrap {
    padding: 8px 16px !important;
  }
  .sy-faq__question { font-size: 18px !important; }

  /* Footer: columna */
  .sy-footer__grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  #brxe-ft02 {
    padding: 40px 24px 32px !important;
  }

  /* CTA strip */
  .sy-cta-strip__inner {
    padding: 32px 24px !important;
  }
  .sy-cta-strip__buttons {
    flex-direction: column !important;
    width: 100% !important;
  }
  .sy-cta-strip__buttons .bricks-button,
  #brxe-c005, #brxe-c006 {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
  }

  /* Section titles mobile */
  .sy-section-title,
  .brxe-heading {
    font-size: clamp(26px, 6vw, 36px) !important;
  }
}

/* Mobile pequeño ≤ 480px */
@media (max-width: 480px) {
  .sy-header__inner {
    padding: 0 16px !important;
  }
  .sy-header__logo img {
    height: 30px !important;
  }
  #brxe-h004 {
    font-size: 32px !important;
  }
  .sy-caminos__card {
    padding: 24px 20px !important;
  }
  .sy-faq__question { font-size: 16px !important; }
  .sy-faq-toggle { font-size: 16px !important; }

  /* Curso/recursos pages */
  .sy-hero-curso > .brxe-container,
  .sy-hero-recursos > .brxe-container {
    padding: 0 16px !important;
  }
  .sy-cta-final > .brxe-container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* ── Safety: no horizontal overflow ──────────────────────── */
html { overflow-x: hidden; }

/* ═══════════════════════════════════════════════════════════════
   PÁGINA /CURSO/ — estilos generados por script PHP
   ═══════════════════════════════════════════════════════════════ */

/* Hero: centrar todo el contenido */
#brxe-4df8e12 {
  text-align: center !important;
}
#brxe-4df8e12 .brxe-container {
  text-align: center !important;
  align-items: center !important;
}
#brxe-4df8e12 .brxe-text-basic,
#brxe-4df8e12 .brxe-heading {
  text-align: center !important;
  width: 100% !important;
}
#brxe-4df8e12 .brxe-button {
  border-radius: 30px !important;
  padding: 15px 40px !important;
}

/* Módulos: grid 4 columnas */
#brxe-637ebbf .brxe-block.brx-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  padding-bottom: 0 !important;
}
#brxe-637ebbf .brxe-block.brx-grid > .brxe-container {
  min-width: 0 !important;
  width: 100% !important;
  background-color: #F7F3EE !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 12px !important;
  padding: 28px 24px !important;
}
#brxe-637ebbf .brxe-heading {
  text-align: center !important;
}

/* Pricing: card centrada */
#precio .brxe-container:first-child > .brxe-container {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.1) !important;
}
#precio .brxe-button {
  border-radius: 30px !important;
  width: 100% !important;
  display: block !important;
}

/* FAQ: acordeón */
#brxe-de26cb4 .brxe-heading {
  text-align: center !important;
}

/* ── Responsive /curso/ ────────────────────────────────── */
@media (max-width: 991px) {
  #brxe-637ebbf .brxe-block.brx-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px) {
  #brxe-637ebbf .brxe-block.brx-grid {
    grid-template-columns: 1fr !important;
  }
  #brxe-4df8e12 .brxe-button {
    width: 100% !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   CURSO v2 — Correcciones de diseño según mockups
   ═══════════════════════════════════════════════════════════════ */

/* ── Pricing card: fondo azul-gris, texto blanco ──────────── */
#brxe-0b8bfa4 {
  background: #9AABB8 !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 20px !important;
  color: #FFFFFF !important;
}
#brxe-0b8bfa4 .brxe-heading,
#brxe-0b8bfa4 .brxe-text-basic {
  color: #FFFFFF !important;
}
/* Título 'Curso Completo' en italic serif */
#brxe-1bcaf2d {
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: 22px !important;
}
/* Precio 97€ */
#brxe-267ea5a {
  font-size: 48px !important;
  font-weight: 700 !important;
}

/* Lista de checks: sin border, sin sombra, sin fondo */
#brxe-ec91d85 {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
/* Checks con icono verde */
#brxe-ec91d85 .brxe-text-basic {
  position: relative !important;
  padding-left: 28px !important;
  text-align: left !important;
}

/* Botón 'Acceder al curso' en pricing: blanco con texto oscuro */
#brxe-6f32786 {
  background: #FFFFFF !important;
  color: #3D3530 !important;
  border-radius: 30px !important;
}
#brxe-6f32786 .bricks-button-inner {
  color: #3D3530 !important;
}

/* Oferta especial: fondo semi-transparente blanco */
#brxe-020c56b {
  background: rgba(255,255,255,.15) !important;
  border: 1px solid rgba(255,255,255,.3) !important;
  color: #FFFFFF !important;
}

/* ── Iconos de módulos (pseudo-elements) ──────────────────── */
#brxe-637ebbf .brxe-block.brx-grid > .brxe-container {
  position: relative !important;
  padding-top: 60px !important;
}
/* Cada módulo tiene un icono encima del número */
#brxe-637ebbf .brxe-block.brx-grid > .brxe-container::before {
  content: '';
  position: absolute;
  top: 24px;
  left: 24px;
  width: 32px;
  height: 32px;
  font-size: 24px;
  line-height: 32px;
  color: #8C7B6B;
  opacity: .6;
}
/* Iconos específicos por card (Unicode) */
#brxe-9c8e317::before { content: '📋' !important; }
#brxe-65ea850::before { content: '♡' !important; font-size: 28px !important; }
#brxe-d5dadb8::before { content: '◉' !important; font-size: 28px !important; }
#brxe-391d928::before { content: '☰' !important; font-size: 28px !important; }
#brxe-d97a546::before { content: '⊞' !important; font-size: 28px !important; }
#brxe-f2309fa::before { content: '♪' !important; font-size: 28px !important; }
#brxe-cc94264::before { content: '◎' !important; font-size: 28px !important; }
#brxe-abf6a5b::before { content: '✦' !important; font-size: 28px !important; }
/* Ocultar número 01, 02... ya que el icono reemplaza */
#brxe-637ebbf .brxe-block.brx-grid > .brxe-container > .brxe-text-basic:first-child {
  display: none !important;
}

/* ── FAQ: wrapper con borde redondeado ────────────────────── */
#brxe-6486bec {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  padding: 16px 32px !important;
}
/* Items FAQ: separador entre items */
#brxe-6486bec > .brxe-text-basic {
  border-bottom: 1px solid #E8E0D8 !important;
  padding: 20px 0 !important;
}
#brxe-6486bec > .brxe-text-basic:last-child {
  border-bottom: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   CURSO v3 — Override con mayor especificidad (#brx-content)
   ═══════════════════════════════════════════════════════════════ */

/* Pricing card: fondo azul-gris */
#brx-content #brxe-0b8bfa4,
body #brxe-0b8bfa4 {
  background: #9AABB8 !important;
  background-color: #9AABB8 !important;
  border: none !important;
  border-style: none !important;
  box-shadow: none !important;
}
#brx-content #brxe-0b8bfa4 .brxe-heading,
#brx-content #brxe-0b8bfa4 .brxe-text-basic {
  color: #FFFFFF !important;
}
/* Titulo pricing italic */
#brx-content #brxe-1bcaf2d {
  font-style: italic !important;
  font-weight: 400 !important;
}
/* Precio grande */
#brx-content #brxe-267ea5a {
  font-size: 48px !important;
  font-weight: 700 !important;
}
/* Lista sin borde ni sombra */
#brx-content #brxe-ec91d85 {
  border: none !important;
  border-style: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
/* Botón pricing blanco */
#brx-content #brxe-6f32786 {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  color: #3D3530 !important;
  border-radius: 30px !important;
}
#brx-content #brxe-6f32786 .bricks-button-inner {
  color: #3D3530 !important;
}
/* Oferta especial */
#brx-content #brxe-020c56b {
  background: rgba(255,255,255,.15) !important;
  border: 1px solid rgba(255,255,255,.3) !important;
  border-radius: 8px !important;
  color: #FFFFFF !important;
}
/* Sección pricing: fondo light */
#brx-content #precio {
  background: #F7F3EE !important;
}

/* ── Module cards: quitar borde/sombra de Bricks ──────────── */
#brx-content #brxe-637ebbf .brx-grid > .brxe-container {
  border: 1px solid #E8E0D8 !important;
  border-style: solid !important;
  box-shadow: none !important;
  background: #F7F3EE !important;
}

/* ═══════════════════════════════════════════════════════════════
   CURSO v4 — Ajustes finales hero + spacing
   ═══════════════════════════════════════════════════════════════ */

/* Badge 'Formación online': inline pill, no full-width */
#brx-content #brxe-bafadc9 {
  display: inline-block !important;
  width: auto !important;
  max-width: fit-content !important;
  padding: 6px 18px !important;
  background: #EDE8E3 !important;
  border-radius: 30px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  color: #8C7B6B !important;
}

/* Botón hero: compact pill, not full-width */
#brx-content #brxe-1301ea1 {
  display: inline-block !important;
  width: auto !important;
  max-width: fit-content !important;
  padding: 15px 40px !important;
  border-radius: 30px !important;
}

/* Hero: reducir padding inferior */
#brx-content #brxe-4df8e12 {
  padding-bottom: 60px !important;
}

/* Módulos: reducir padding superior */
#brx-content #brxe-637ebbf {
  padding-top: 60px !important;
}

/* Heading 'Contenido del curso' centrado */
#brx-content #brxe-eeffa65 {
  text-align: center !important;
  width: 100% !important;
}

/* Cards módulo: mejorar tamaño icono */
#brx-content #brxe-637ebbf .brx-grid > .brxe-container::before {
  font-size: 24px !important;
  opacity: 0.5 !important;
}

/* ═══════════════════════════════════════════════════════════════
   CURSO v5 — FAQ toggle + Pricing card width
   ═══════════════════════════════════════════════════════════════ */

/* A. FAQ: ocultar el texto "+" del span, usar solo chevron CSS */
.sy-faq-icon {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}

/* FAQ: respuestas ocultas por defecto */
.sy-faq-content {
  display: none !important;
  font-family: var(--sy-font-body, sans-serif);
  font-size: 16px;
  line-height: 1.7;
  color: var(--sy-dark, #3D3530);
  opacity: 0.7;
  padding-top: 12px;
}
.sy-faq-item.active .sy-faq-content {
  display: block !important;
}

/* FAQ items: separador limpio */
.sy-faq-item {
  border-bottom: 1px solid #E8E0D8;
  padding: 20px 0;
}
.sy-faq-item:last-child {
  border-bottom: none;
}

/* B. Pricing card: ancho limitado y centrado en desktop */
#brx-content #brxe-0b8bfa4,
body #brxe-0b8bfa4 {
  max-width: 480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* El container padre de pricing debe centrar */
#brx-content #brxe-868fc7f {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}


/* ═══════════════════════════════════════════════════════════════
   ACOMPAÑAMIENTO — Page styles
   ═══════════════════════════════════════════════════════════════ */

/* Hero badge */
#brxe-ac_hb01 .sy-badge {
  display: inline-block;
  background: transparent;
  border: 1px solid rgba(61,53,48,.25);
  border-radius: 30px;
  padding: 6px 18px;
  font-size: 13px;
  letter-spacing: .06em;
  color: var(--sy-dark, #3D3530);
}
#brxe-ac_hh01 { font-size: clamp(32px, 4vw, 52px) !important; line-height: 1.15 !important; }
#brxe-ac_hs02 { color: rgba(61,53,48,.65); font-size: 18px; max-width: 620px; margin: 0 auto; }
#brxe-ac_hbt1 { border-radius: 30px !important; background: #6B6059 !important; color: #fff !important; padding: 14px 32px !important; }

/* Modalidades grid: 2 columnas */
#brxe-ac_mg01 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 700px !important;
  margin: 0 auto !important;
}

/* Modalidades cards */
#brxe-ac_cow1,
#brxe-ac_cpw1 {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  padding: 40px 32px !important;
}

/* Modalidad icon circle */
.sy-acomp-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  background: #F0EBE5;
  border-radius: 50%;
  font-size: 22px;
  margin: 0 auto 8px;
}

/* Modalidades headings */
#brxe-ac_cot1,
#brxe-ac_cpt1 {
  font-size: 20px !important;
  font-weight: 500 !important;
}

/* Ámbitos grid: 3 columnas */
#brxe-ac_ag01 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
}

/* Ámbito cards */
#brxe-ac_amb1, #brxe-ac_amb2, #brxe-ac_amb3,
#brxe-ac_amb4, #brxe-ac_amb5, #brxe-ac_amb6 {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 12px !important;
  padding: 32px 24px !important;
}

/* Ámbito icon */
.sy-acomp-amb-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #EEE9E4;
  border-radius: 50%;
  font-size: 20px;
  margin: 0 auto 8px;
  color: #7A8FA0;
}

.sy-acomp-amb-label {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--sy-dark, #3D3530) !important;
  margin: 0 !important;
}

/* Pasos grid: 3 columnas */
#brxe-ac_cg01 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
  width: 100% !important;
}

/* Número de paso */
.sy-acomp-paso-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #7A8FA0;
  border-radius: 50%;
  color: #FFFFFF;
  font-size: 20px;
  font-weight: 600;
  margin: 0 auto;
}

#brxe-ac_p1_t, #brxe-ac_p2_t, #brxe-ac_p3_t {
  font-size: 18px !important;
  font-weight: 500 !important;
}

/* Botón Cómo trabajamos */
#brxe-ac_cbt1 {
  border-radius: 30px !important;
  background: #6B6059 !important;
  color: #fff !important;
  padding: 14px 32px !important;
}

/* Sobre Irene: layout 2 columnas */
#brxe-ac_ic01 {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 64px !important;
}
#brxe-ac_ip01 {
  flex: 0 0 340px !important;
  max-width: 340px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
#brxe-ac_ip01 img {
  width: 100% !important;
  height: 420px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
}
#brxe-ac_it01 {
  flex: 1 !important;
}
#brxe-ac_ih01 { font-size: 32px !important; margin-bottom: 8px !important; }
#brxe-ac_ib01 p { font-size: 16px; line-height: 1.75; color: rgba(61,53,48,.75); margin-bottom: 12px; }

/* ── Responsive ────────────────────────────────── */
@media (max-width: 768px) {
  #brxe-ac_mg01 { grid-template-columns: 1fr !important; }
  #brxe-ac_ag01 { grid-template-columns: repeat(2, 1fr) !important; }
  #brxe-ac_cg01 { grid-template-columns: 1fr !important; }
  #brxe-ac_ic01 { flex-direction: column !important; gap: 32px !important; }
  #brxe-ac_ip01 { flex: 0 0 auto !important; max-width: 100% !important; }
  #brxe-ac_ip01 img { height: 280px !important; }
}
@media (max-width: 480px) {
  #brxe-ac_ag01 { grid-template-columns: 1fr !important; }
}

/* ═══════════════════════════════════════════════════════════════
   HEADER MOBILE HEIGHT FIX
   Restaura la altura compacta correcta del header en mobile
   ═══════════════════════════════════════════════════════════════ */

/* El min-height:44px en .sy-header__link infla el nav hidden.
   Forzar el nav a no afectar la altura en mobile */
@media (max-width: 991px) {
  .sy-header__nav {
    min-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  /* Padding compacto en mobile para header */
  #brxe-hd02 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Las acciones (cart + hamburger) no crecen más de lo necesario */
  #brxe-hd10 {
    align-items: center !important;
  }
}

@media (max-width: 480px) {
  #brxe-hd02 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* HEADER FIX PATCH — restaurar menu abierto */
@media (max-width: 991px) {
  .sy-header__nav.sy-nav--open {
    height: 100dvh !important;
    overflow: visible !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   ACOMPAÑAMIENTO — Full layout fix (v2)
   Centra todos los contenedores, corrige textAlign y grids
   ═══════════════════════════════════════════════════════════════ */

/* ── HERO ─────────────────────────────────────────────────── */
#brx-content #brxe-ac_hs01 {
  text-align: center !important;
  padding-top: 100px !important;
  padding-bottom: 80px !important;
  background: #FDFAF7 !important;
}
#brx-content #brxe-ac_hc01 {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}
#brx-content #brxe-ac_hb01 {
  text-align: center !important;
}
#brx-content #brxe-ac_hb01 .sy-badge {
  display: inline-block !important;
  background: transparent !important;
  border: 1px solid rgba(61,53,48,.25) !important;
  border-radius: 30px !important;
  padding: 6px 18px !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  color: #3D3530 !important;
}
#brx-content #brxe-ac_hh01 {
  font-size: clamp(30px, 4vw, 50px) !important;
  line-height: 1.15 !important;
  text-align: center !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_hs02 {
  color: rgba(61,53,48,.65) !important;
  font-size: 17px !important;
  text-align: center !important;
  max-width: 560px !important;
  margin: 0 auto !important;
}
#brx-content #brxe-ac_hbt1 {
  border-radius: 30px !important;
  background: #6B6059 !important;
  color: #fff !important;
  padding: 14px 32px !important;
  align-self: center !important;
}

/* ── MODALIDADES ─────────────────────────────────────────── */
#brx-content #brxe-ac_ms01 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  background: #FFFFFF !important;
}
#brx-content #brxe-ac_mc01 {
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 40px !important;
}
#brx-content #brxe-ac_mt01 {
  text-align: center !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_mg01 {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 700px !important;
}
#brx-content #brxe-ac_cow1,
#brx-content #brxe-ac_cpw1 {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  padding: 40px 32px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
}
#brx-content #brxe-ac_coi1,
#brx-content #brxe-ac_cpi1 {
  display: flex !important;
  justify-content: center !important;
}
#brx-content #brxe-ac_coi1 .sy-acomp-icon,
#brx-content #brxe-ac_cpi1 .sy-acomp-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 56px !important;
  height: 56px !important;
  background: #F0EBE5 !important;
  border-radius: 50% !important;
  font-size: 22px !important;
  margin: 0 auto !important;
}
#brx-content #brxe-ac_cot1,
#brx-content #brxe-ac_cpt1 {
  font-size: 20px !important;
  font-weight: 500 !important;
  text-align: center !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_cotx,
#brx-content #brxe-ac_cptx {
  text-align: center !important;
  color: rgba(61,53,48,.65) !important;
  font-size: 15px !important;
}

/* ── ÁMBITOS ─────────────────────────────────────────────── */
#brx-content #brxe-ac_as01 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  background: #FDFAF7 !important;
}
#brx-content #brxe-ac_ac01 {
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 40px !important;
}
#brx-content #brxe-ac_at01 {
  text-align: center !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_ag01 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
}
#brx-content #brxe-ac_amb1,
#brx-content #brxe-ac_amb2,
#brx-content #brxe-ac_amb3,
#brx-content #brxe-ac_amb4,
#brx-content #brxe-ac_amb5,
#brx-content #brxe-ac_amb6 {
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 12px !important;
  padding: 28px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 8px !important;
}
#brx-content #brxe-ac_amb1_i,
#brx-content #brxe-ac_amb2_i,
#brx-content #brxe-ac_amb3_i,
#brx-content #brxe-ac_amb4_i,
#brx-content #brxe-ac_amb5_i,
#brx-content #brxe-ac_amb6_i {
  display: flex !important;
  justify-content: center !important;
}
.sy-acomp-amb-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  background: #EEE9E4 !important;
  border-radius: 50% !important;
  font-size: 20px !important;
  margin: 0 auto !important;
  color: #7A8FA0 !important;
}
.sy-acomp-amb-label {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #3D3530 !important;
  margin: 0 !important;
  text-align: center !important;
}

/* ── CÓMO TRABAJAMOS ─────────────────────────────────────── */
#brx-content #brxe-ac_cs01 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  background: #FFFFFF !important;
}
#brx-content #brxe-ac_cc01 {
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 40px !important;
}
#brx-content #brxe-ac_ct01 {
  text-align: center !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_cg01 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
  width: 100% !important;
}
#brx-content #brxe-ac_p1,
#brx-content #brxe-ac_p2,
#brx-content #brxe-ac_p3 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 12px !important;
}
#brx-content #brxe-ac_p1_n,
#brx-content #brxe-ac_p2_n,
#brx-content #brxe-ac_p3_n {
  display: flex !important;
  justify-content: center !important;
}
.sy-acomp-paso-num {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  background: #7A8FA0 !important;
  border-radius: 50% !important;
  color: #FFFFFF !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  margin: 0 auto !important;
}
#brx-content #brxe-ac_p1_t,
#brx-content #brxe-ac_p2_t,
#brx-content #brxe-ac_p3_t {
  font-size: 18px !important;
  font-weight: 500 !important;
  text-align: center !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_p1_d,
#brx-content #brxe-ac_p2_d,
#brx-content #brxe-ac_p3_d {
  text-align: center !important;
  color: rgba(61,53,48,.65) !important;
  font-size: 15px !important;
}
#brx-content #brxe-ac_cbt1 {
  border-radius: 30px !important;
  background: #6B6059 !important;
  color: #fff !important;
  padding: 14px 32px !important;
}

/* ── SOBRE IRENE ─────────────────────────────────────────── */
#brx-content #brxe-ac_is01 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  background: #FDFAF7 !important;
}
#brx-content #brxe-ac_ic01 {
  max-width: 960px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 64px !important;
}
#brx-content #brxe-ac_ip01 {
  flex: 0 0 300px !important;
  max-width: 300px !important;
}
#brx-content #brxe-ac_ip01 img {
  width: 100% !important;
  height: 380px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  display: block !important;
}
#brx-content #brxe-ac_it01 {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}
#brx-content #brxe-ac_ih01 {
  font-size: 32px !important;
  margin: 0 !important;
}
#brx-content #brxe-ac_ib01 p {
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: rgba(61,53,48,.75) !important;
  margin-bottom: 12px !important;
}

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 768px) {
  #brx-content #brxe-ac_mg01 { grid-template-columns: 1fr !important; }
  #brx-content #brxe-ac_ag01 { grid-template-columns: repeat(2, 1fr) !important; }
  #brx-content #brxe-ac_cg01 { grid-template-columns: 1fr !important; gap: 24px !important; }
  #brx-content #brxe-ac_ic01 { flex-direction: column !important; gap: 32px !important; }
  #brx-content #brxe-ac_ip01 { flex: 0 0 auto !important; max-width: 100% !important; }
  #brx-content #brxe-ac_ip01 img { height: 260px !important; }
  #brx-content #brxe-ac_hh01 { font-size: 30px !important; }
}
@media (max-width: 480px) {
  #brx-content #brxe-ac_ag01 { grid-template-columns: 1fr !important; }
}

/* ACOMPAÑAMIENTO — Grid columns force fix (Bricks override) */
#brx-content #brxe-ac_mg01.brxe-block,
#brx-content #brxe-ac_mg01 {
  grid-template-columns: repeat(2, 1fr) !important;
}
#brx-content #brxe-ac_ag01.brxe-block,
#brx-content #brxe-ac_ag01 {
  grid-template-columns: repeat(3, 1fr) !important;
}
#brx-content #brxe-ac_cg01.brxe-block,
#brx-content #brxe-ac_cg01 {
  grid-template-columns: repeat(3, 1fr) !important;
}

/* ACOMPAÑAMIENTO — Force grid children to 100% width */
/* Bricks sets parent container _width on children via CSS vars */
#brx-content #brxe-ac_mg01 > * {
  width: 100% !important;
  max-width: 100% !important;
}
#brx-content #brxe-ac_ag01 > * {
  width: 100% !important;
  max-width: 100% !important;
}
#brx-content #brxe-ac_cg01 > * {
  width: 100% !important;
  max-width: 100% !important;
}
/* Also override any Bricks-generated width on the grid containers themselves */
#brx-content #brxe-ac_mg01 {
  width: 100% !important;
  max-width: 700px !important;
}
#brx-content #brxe-ac_ag01 {
  width: 100% !important;
  max-width: 100% !important;
}
#brx-content #brxe-ac_cg01 {
  width: 100% !important;
  max-width: 100% !important;
}

/* ═══════════════════════════════════════════════════════════════
   SOBRE IRENE — Page styles (/sobre-irene/)
   ═══════════════════════════════════════════════════════════════ */

/* ── Sección 1: Hero bio ─────────────────────────────────── */
#brx-content #brxe-si_s101 {
  padding-top: 60px !important;
  padding-bottom: 80px !important;
  background: #FDFAF7 !important;
}
#brx-content #brxe-si_c101 {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 48px !important;
}
#brx-content #brxe-si_h101 {
  text-align: center !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  line-height: 1.15 !important;
  margin: 0 !important;
}

/* Hero row: 2 columnas foto | texto */
#brx-content #brxe-si_r101 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 64px !important;
  width: 100% !important;
  align-items: center !important;
}
#brx-content #brxe-si_r101 > * {
  width: 100% !important;
  max-width: 100% !important;
}

/* Foto */
#brx-content #brxe-si_i101 {
  width: 100% !important;
  max-width: 100% !important;
}
#brx-content #brxe-si_i101 img {
  width: 100% !important;
  height: 520px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  display: block !important;
}

/* Texto bio */
#brx-content #brxe-si_t101 {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
#brx-content #brxe-si_b101 p {
  font-size: 18px !important;
  line-height: 1.8 !important;
  color: rgba(61,53,48,.8) !important;
  margin-bottom: 16px !important;
}
#brx-content #brxe-si_b101 p:last-child {
  margin-bottom: 0 !important;
}

/* ── Sección 2: Valores ─────────────────────────────────── */
#brx-content #brxe-si_s201 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  background: #FDFAF7 !important;
}
#brx-content #brxe-si_c201 {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 48px !important;
  text-align: center !important;
}
#brx-content #brxe-si_h201 {
  text-align: center !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  line-height: 1.15 !important;
  margin: 0 !important;
}

/* Grid 3 cards */
#brx-content #brxe-si_g201 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  width: 100% !important;
}
#brx-content #brxe-si_g201 > * {
  width: 100% !important;
  max-width: 100% !important;
}

/* Valor cards */
#brx-content #brxe-si_v1,
#brx-content #brxe-si_v2,
#brx-content #brxe-si_v3 {
  background: rgba(255,255,255,.6) !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  padding: 40px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 16px !important;
}

/* Valor icon circle */
.si-valor-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 64px !important;
  height: 64px !important;
  background: #EEE9E4 !important;
  border-radius: 50% !important;
  font-size: 24px !important;
  color: #7A8FA0 !important;
  margin: 0 auto 4px !important;
}

/* Valor titles */
#brx-content #brxe-si_v1_t,
#brx-content #brxe-si_v2_t,
#brx-content #brxe-si_v3_t {
  font-size: 22px !important;
  font-weight: 400 !important;
  margin: 0 !important;
}

/* Valor descriptions */
#brx-content #brxe-si_v1_d p,
#brx-content #brxe-si_v2_d p,
#brx-content #brxe-si_v3_d p {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: rgba(61,53,48,.65) !important;
  margin: 0 !important;
}

/* CTA button */
#brx-content #brxe-si_bt01 {
  border-radius: 30px !important;
  background: #6B6059 !important;
  color: #fff !important;
  padding: 16px 40px !important;
  font-size: 16px !important;
}

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 768px) {
  #brx-content #brxe-si_r101 {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  #brx-content #brxe-si_i101 img {
    height: 320px !important;
  }
  #brx-content #brxe-si_g201 {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  #brx-content #brxe-si_h101 {
    font-size: 32px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   FAQ PAGE — Corporate style fix for WordPress-rendered FAQ
   ═══════════════════════════════════════════════════════════════ */

/* Wrapper de la página FAQ (renderizada por WordPress, no Bricks) */
article#brx-content.wordpress.post-333 {
  background: #FDFAF7 !important;
  padding: 60px 24px 80px !important;
}

/* H1 de WordPress: estilo corporativo centrado */
article#brx-content.post-333 > h1 {
  text-align: center !important;
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 0 auto 48px !important;
  max-width: 900px !important;
}

/* Ocultar el H2 duplicado dentro del bloque FAQ */
.sy-faq-section > h2 {
  display: none !important;
}

/* Sección FAQ: quitar fondo propio (ya lo da el article padre) */
article#brx-content.post-333 .sy-faq-section {
  background: transparent !important;
  padding: 0 !important;
}

/* Container FAQ: refinamientos corporativos */
article#brx-content.post-333 .sy-faq-container {
  max-width: 860px !important;
  margin: 0 auto !important;
  background: #FFFFFF !important;
  border: 1px solid #E8E0D8 !important;
  border-radius: 16px !important;
  padding: 16px 32px !important;
  box-shadow: none !important;
}

/* ─────────────────────────────────────────────
   PAGINAS LEGALES — Estilo corporativo
   (post-809 Aviso Legal, post-810 Privacidad, post-811 Cookies)
   ───────────────────────────────────────────── */

/* Wrapper de página legal */
article#brx-content.wordpress.post-809,
article#brx-content.wordpress.post-810,
article#brx-content.wordpress.post-811 {
  background: #FDFAF7 !important;
  padding: 60px 24px 80px !important;
  max-width: 100% !important;
}

/* H1 corporativo */
article#brx-content.post-809 > h1,
article#brx-content.post-810 > h1,
article#brx-content.post-811 > h1 {
  text-align: center !important;
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: clamp(28px, 4vw, 44px) !important;
  line-height: 1.2 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 0 auto 40px !important;
  max-width: 800px !important;
  font-weight: 600 !important;
}

/* Ocultar H2 duplicado */
article#brx-content.post-809 > h2:first-of-type,
article#brx-content.post-810 > h2:first-of-type,
article#brx-content.post-811 > h2:first-of-type {
  display: none !important;
}

/* Contenedor del texto legal */
article#brx-content.post-809,
article#brx-content.post-810,
article#brx-content.post-811 {
  font-family: var(--sy-font-body, 'Jost', sans-serif) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #444444 !important;
}

/* Contenido centrado con max-width legible */
article#brx-content.post-809 > *:not(h1),
article#brx-content.post-810 > *:not(h1),
article#brx-content.post-811 > *:not(h1) {
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* H2 y H3 dentro del texto legal */
article#brx-content.post-809 h2,
article#brx-content.post-810 h2,
article#brx-content.post-811 h2 {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 32px auto 12px !important;
  max-width: 800px !important;
}

article#brx-content.post-809 h3,
article#brx-content.post-810 h3,
article#brx-content.post-811 h3 {
  font-family: var(--sy-font-display, 'Cormorant Garamund', serif) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 24px auto 8px !important;
  max-width: 800px !important;
}

/* Párrafos legales */
article#brx-content.post-809 p,
article#brx-content.post-810 p,
article#brx-content.post-811 p {
  margin: 0 auto 12px !important;
  max-width: 800px !important;
}

/* Listas legales */
article#brx-content.post-809 ul,
article#brx-content.post-809 ol,
article#brx-content.post-810 ul,
article#brx-content.post-810 ol,
article#brx-content.post-811 ul,
article#brx-content.post-811 ol {
  max-width: 760px !important;
  margin: 0 auto 16px !important;
  padding-left: 24px !important;
}

/* Links en legal */
article#brx-content.post-809 a,
article#brx-content.post-810 a,
article#brx-content.post-811 a {
  color: var(--sy-blue-gray, #839EB6) !important;
  text-decoration: underline !important;
}

/* ─────────────────────────────────────────────
   RECURSOS — Fix H1 con fuente display corporativa
   ───────────────────────────────────────────── */

#brx-content #brxe-lr_h101 {
  text-align: center !important;
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: clamp(32px, 5vw, 48px) !important;
  font-weight: 600 !important;
  margin: 0 auto 16px !important;
  color: var(--sy-dark, #1B1B1B) !important;
}

/* Responsive legal */
@media (max-width: 768px) {
  article#brx-content.wordpress.post-809,
  article#brx-content.wordpress.post-810,
  article#brx-content.wordpress.post-811 {
    padding: 40px 20px 60px !important;
  }

  article#brx-content.post-809 > h1,
  article#brx-content.post-810 > h1,
  article#brx-content.post-811 > h1 {
    font-size: clamp(24px, 5vw, 32px) !important;
    margin-bottom: 28px !important;
  }
}

/* ─────────────────────────────────────────────
   GLOBAL: Separación antes del footer (80px)
   ───────────────────────────────────────────── */
#brx-content > :last-child,
#brx-content > section:last-of-type,
article#brx-content.wordpress {
  padding-bottom: 80px !important;
}

/* ─────────────────────────────────────────────
   CARRITO — Estilo corporativo
   ───────────────────────────────────────────── */

/* Carrito vacío */
.sy-cart-empty {
  background: #FDFAF7 !important;
  padding: 100px 24px !important;
}

.sy-cart-empty__inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  gap: 16px !important;
}

.sy-cart-empty__title {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: clamp(28px, 4vw, 40px) !important;
  color: var(--sy-dark, #1B1B1B) !important;
  font-weight: 600 !important;
  margin: 0 !important;
}

.sy-cart-empty__text {
  font-family: var(--sy-font-body, 'Jost', sans-serif) !important;
  font-size: 16px !important;
  color: #666666 !important;
  line-height: 1.6 !important;
  margin: 0 0 16px 0 !important;
}

.sy-cart-empty__text p {
  margin: 0 !important;
}

/* Carrito con items */
.sy-cart-section {
  background: #FDFAF7 !important;
  padding: 60px 24px 80px !important;
}

/* WooCommerce table override */
.sy-cart-section .woocommerce-cart-form table,
.woocommerce table.shop_table {
  font-family: var(--sy-font-body, 'Jost', sans-serif) !important;
  border-color: #E8E0D8 !important;
}

.sy-cart-section .woocommerce-cart-form th,
.woocommerce table.shop_table th {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-weight: 600 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  background: #F5F0E8 !important;
}

/* Breadcrumbs in cart */
.sy-cart-empty .breadcrumbs,
.sy-cart-section .breadcrumbs {
  font-size: 13px !important;
  color: #999 !important;
  margin-bottom: 24px !important;
}

.sy-cart-empty .breadcrumbs a,
.sy-cart-section .breadcrumbs a {
  color: var(--sy-blue-gray, #839EB6) !important;
  text-decoration: none !important;
}

/* También te puede interesar */
.sy-cart-section .brxe-heading {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  color: var(--sy-dark, #1B1B1B) !important;
}

/* Responsive */
@media (max-width: 768px) {
  .sy-cart-empty {
    padding: 60px 20px !important;
  }
  .sy-cart-empty__title {
    font-size: clamp(24px, 5vw, 32px) !important;
  }
}

/* ─────────────────────────────────────────────
   BLOG — Grid de artículos corporativo
   ───────────────────────────────────────────── */

.sy-blog-section {
  background: #FFFFFF !important;
}

.sy-blog__title {
  text-align: center !important;
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif) !important;
  font-size: clamp(32px, 5vw, 48px) !important;
  font-weight: 600 !important;
  color: var(--sy-dark, #1B1B1B) !important;
  margin: 0 0 12px 0 !important;
}

.sy-blog__subtitle {
  text-align: center !important;
  max-width: 700px !important;
  margin: 0 auto 48px !important;
  font-size: 16px !important;
  color: #666666 !important;
  line-height: 1.6 !important;
}

.sy-blog__subtitle p {
  margin: 0 !important;
}

/* Grid 3 columnas */
.sy-blog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 32px !important;
}

/* Card */
.sy-blog-card {
  background: #FDFAF7;
  border: 1px solid #E8E0D8;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.sy-blog-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

/* Imagen */
.sy-blog-card__img {
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
}

.sy-blog-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.sy-blog-card:hover .sy-blog-card__img img {
  transform: scale(1.05);
}

/* Body */
.sy-blog-card__body {
  padding: 20px 24px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 8px;
}

/* Categoría */
.sy-blog-card__cat {
  font-family: var(--sy-font-body, 'Jost', sans-serif);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--sy-blue-gray, #839EB6);
}

/* Título */
.sy-blog-card__title {
  font-family: var(--sy-font-display, 'Cormorant Garamond', serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--sy-dark, #1B1B1B);
  margin: 0;
}

.sy-blog-card__title a {
  color: inherit;
  text-decoration: none;
}

.sy-blog-card__title a:hover {
  color: var(--sy-blue-gray, #839EB6);
}

/* Extracto */
.sy-blog-card__excerpt {
  font-family: var(--sy-font-body, 'Jost', sans-serif);
  font-size: 14px;
  line-height: 1.6;
  color: #666666;
  margin: 0;
  flex: 1;
}

/* Fecha */
.sy-blog-card__date {
  font-family: var(--sy-font-body, 'Jost', sans-serif);
  font-size: 12px;
  color: #999999;
  margin-top: 8px;
}

/* Empty state */
.sy-blog-empty {
  text-align: center;
  font-size: 16px;
  color: #999999;
  grid-column: 1 / -1;
  padding: 40px 0;
}

/* Responsive tablet */
@media (max-width: 991px) {
  .sy-blog-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
}

/* Responsive mobile */
@media (max-width: 768px) {
  .sy-blog-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .sy-blog-card__title {
    font-size: 18px;
  }
  .sy-blog__subtitle {
    margin-bottom: 32px !important;
  }
}
