/* ==========================================================================
   WOMS Academy · Home 2026 (propuesta visual "todas las secciones en orden")
   Se carga después de styles.css y solo aplica con body.home-2026
   ========================================================================== */

.home-2026 {
  --h-ink: #2e0a6b;
  --h-purple: #4b1fa6;
  --h-purple-strong: #350c7f;
  --h-violet: #7c3aed;
  --h-lilac: #ede7fb;
  --h-lilac-2: #f5f1fc;
  --h-lilac-3: #faf8fe;
  --h-line: rgba(53, 12, 127, 0.1);
  --h-shadow: 0 10px 30px rgba(53, 12, 127, 0.08);
  --h-shadow-lg: 0 24px 60px rgba(53, 12, 127, 0.14);
  --h-radius: 22px;
  background: #fff;
  color: #4f4e50;
}

.home-2026 .container {
  max-width: 1180px;
}

/* ---------- Nav (ajuste ligero al mockup) ---------- */
.home-2026 .nav {
  background: var(--h-purple-strong);
}

.home-2026 .nav-links a {
  font-weight: 600;
  position: relative;
}

.home-2026 .nav-links a.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 2px;
  height: 2px;
  border-radius: 2px;
  background: #fff;
}

/* ---------- Tipografía y utilidades ---------- */
.home-2026 .h-title {
  color: var(--h-ink);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 800;
  font-style: normal;
  line-height: 1.12;
  letter-spacing: -0.01em;
  margin: 0 0 10px;
}

.home-2026 .h-title-xl {
  font-size: clamp(34px, 4.2vw, 52px);
}

.home-2026 .h-lead {
  color: #6b6478;
  font-size: clamp(15px, 1.35vw, 18px);
  line-height: 1.55;
  margin: 0 0 8px;
  max-width: 640px;
}

.home-2026 .h-eyebrow {
  color: var(--h-violet);
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 8px;
}

.home-2026 .h-eyebrow-spaced {
  letter-spacing: 0.22em;
  color: #8a7fa3;
}

.home-2026 .h-sub {
  color: var(--h-ink);
  font-weight: 800;
  font-size: 18px;
  margin: 26px 0 14px;
}

.home-2026 .h-kicker {
  color: var(--h-violet);
  font-size: clamp(16px, 1.6vw, 20px);
  font-weight: 700;
  font-style: italic;
  margin: 0 0 14px;
}

.home-2026 .h-center {
  text-align: center;
  margin-top: 26px;
}

.home-2026 .h-fine {
  color: #7b7590;
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.home-2026 .h-fine svg {
  width: 18px;
  height: 18px;
  color: var(--h-violet);
  flex: 0 0 auto;
}

.home-2026 .h-fine-center {
  justify-content: center;
  margin-top: 26px;
}

.home-2026 .h-fine-lines::before,
.home-2026 .h-fine-lines::after {
  content: "";
  width: 44px;
  height: 1px;
  background: var(--h-line);
}

.home-2026 .h-arrow {
  display: inline-block;
  margin-left: 6px;
  transition: transform 0.2s;
}

.home-2026 a:hover .h-arrow,
.home-2026 button:hover .h-arrow {
  transform: translateX(3px);
}

/* Botones */
.home-2026 .h-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 14px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: transform 0.15s, box-shadow 0.15s, background 0.15s, color 0.15s;
  width: auto;
  height: auto;
}

.home-2026 .h-btn:hover {
  transform: translateY(-1px);
}

.home-2026 .h-btn-primary {
  background: var(--h-purple);
  color: #fff;
  box-shadow: 0 10px 22px rgba(75, 31, 166, 0.25);
}

.home-2026 .h-btn-primary:hover {
  background: #5a2bc2;
}

.home-2026 .h-btn-dark {
  background: var(--h-purple-strong);
  color: #fff;
}

.home-2026 .h-btn-outline {
  background: #fff;
  color: var(--h-purple);
  border: 1.5px solid rgba(75, 31, 166, 0.45);
}

.home-2026 .h-btn-outline:hover {
  background: var(--h-lilac-2);
}

.home-2026 .h-btn-ghost {
  background: transparent;
  color: #fff;
  border: 1.5px solid rgba(255, 255, 255, 0.6);
  min-height: 42px;
}

.home-2026 .h-btn-sm {
  min-height: 40px;
  padding: 0 16px;
  font-size: 14px;
  border-radius: 12px;
}

.home-2026 .h-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

/* Chips */
.home-2026 .h-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0 22px;
}

.home-2026 .h-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 18px;
  border-radius: 999px;
  background: var(--h-lilac);
  color: var(--h-purple);
  font-weight: 700;
  font-size: 14px;
  transition: background 0.15s, color 0.15s;
}

.home-2026 .h-chip svg {
  width: 17px;
  height: 17px;
}

.home-2026 .h-chip:hover {
  background: #e2d8f8;
}

.home-2026 .h-chip.is-active {
  background: var(--h-violet);
  color: #fff;
}

.home-2026 .h-chip-soft {
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: 0 2px 10px rgba(53, 12, 127, 0.05);
}

/* Cabeceras de sección */
.home-2026 .h-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 10px;
}

.home-2026 .h-head-tight {
  align-items: center;
  margin-bottom: 22px;
}

.home-2026 .h-head .h-btn {
  flex: 0 0 auto;
}

/* Iconos redondos */
.home-2026 .h-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--h-lilac);
  color: var(--h-purple);
  flex: 0 0 auto;
}

.home-2026 .h-icon svg {
  width: 24px;
  height: 24px;
}

.home-2026 .h-icon-lg {
  width: 68px;
  height: 68px;
}

.home-2026 .h-icon-lg svg {
  width: 30px;
  height: 30px;
}

.home-2026 .h-icon-sm {
  width: 36px;
  height: 36px;
}

.home-2026 .h-icon-sm svg {
  width: 18px;
  height: 18px;
}

/* Decoración: cintas y blobs */
.home-2026 .h-ribbon {
  position: absolute;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.home-2026 .h-blob {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 40%, #e9dffb 0%, #efe8fc 55%, rgba(239, 232, 252, 0) 100%);
  pointer-events: none;
  z-index: 0;
}

.home-2026 .h-handwrite {
  font-family: "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;
  color: var(--h-purple);
  font-size: 18px;
  line-height: 1.2;
  text-align: center;
  transform: rotate(-6deg);
  display: inline-block;
}

/* ==========================================================================
   01 · HERO
   ========================================================================== */
.home-2026 .h-hero {
  position: relative;
  padding-top: 66px;
  background:
    radial-gradient(ellipse at 78% 55%, #efe8fc 0%, rgba(239, 232, 252, 0) 45%),
    linear-gradient(180deg, #fbfaff 0%, #ffffff 100%);
  overflow: hidden;
}

.home-2026 .h-hero-inner {
  position: relative;
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(28px, 4vw, 56px) var(--woms-gutter) 0;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(20px, 3vw, 48px);
  min-height: 560px;
}

.home-2026 .h-hero-copy {
  position: relative;
  z-index: 2;
  padding-bottom: clamp(28px, 4vw, 56px);
}

.home-2026 .h-hero-title {
  color: var(--h-ink);
  font-size: clamp(40px, 5.2vw, 66px);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.015em;
  margin: 0 0 20px;
  max-width: 11ch;
}

.home-2026 .h-hero-text {
  color: #6b6478;
  font-size: clamp(16px, 1.4vw, 19px);
  line-height: 1.55;
  max-width: 520px;
}

.home-2026 .h-hero-text strong {
  display: block;
  margin-top: 8px;
  color: var(--h-purple);
  font-weight: 700;
}

.home-2026 .h-hero-micro {
  margin-top: 16px;
  color: #8a7fa3;
  font-size: 13px;
}

.home-2026 .h-hero-visual {
  position: relative;
  z-index: 1;
  align-self: end;
  height: 100%;
  min-height: 520px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.home-2026 .h-hero-visual .h-blob {
  width: 118%;
  aspect-ratio: 1;
  left: -6%;
  bottom: -18%;
  background: radial-gradient(circle at 50% 45%, #e6dcfa 0%, #ede6fb 60%, rgba(237, 230, 251, 0) 100%);
}

.home-2026 .h-ribbon-hero {
  width: 78%;
  right: -22%;
  top: -6%;
  transform: rotate(8deg);
  opacity: 0.95;
}

.home-2026 .h-hero-photo {
  position: relative;
  z-index: 2;
  width: min(100%, 470px);
  height: auto;
  max-height: 620px;
  object-fit: cover;
  object-position: top center;
  display: block;
  /* fondo de la foto es blanco-gris: suavizamos borde inferior para integrar */
  -webkit-mask-image: linear-gradient(180deg, #000 82%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(180deg, #000 82%, rgba(0, 0, 0, 0) 100%);
  filter: drop-shadow(0 30px 40px rgba(53, 12, 127, 0.12));
}

.home-2026 .h-hero-badge {
  position: absolute;
  z-index: 3;
  right: 4%;
  bottom: 12%;
  background: #fff;
  color: #6b6478;
  font-size: 13px;
  padding: 10px 16px;
  border-radius: 999px;
  box-shadow: var(--h-shadow);
  white-space: nowrap;
}

.home-2026 .h-hero-badge strong {
  color: var(--h-purple);
  font-weight: 800;
}

.home-2026 .h-hero-strip {
  position: relative;
  z-index: 3;
  background: var(--h-lilac-2);
  border-top: 1px solid var(--h-line);
}

.home-2026 .h-strip-inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding-top: 18px;
  padding-bottom: 18px;
}

.home-2026 .h-strip-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: var(--h-ink);
  font-weight: 700;
  font-size: 15px;
  padding: 4px 12px;
}

.home-2026 .h-strip-item + .h-strip-item {
  border-left: 1px solid var(--h-line);
}

.home-2026 .h-strip-item svg {
  width: 30px;
  height: 30px;
  color: var(--h-purple);
}

/* ==========================================================================
   02 · NOTICIAS
   ========================================================================== */
.home-2026 .h-news {
  background: #fff;
  padding: clamp(28px, 4vw, 48px) 0 clamp(36px, 5vw, 64px);
}

.home-2026 .h-promo {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 26px 34px;
  border-radius: var(--h-radius);
  background: var(--h-lilac-2);
  overflow: hidden;
  margin-bottom: clamp(30px, 4vw, 48px);
}

.home-2026 .h-promo-copy h2 {
  color: var(--h-ink);
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 800;
  margin: 0 0 4px;
}

.home-2026 .h-promo-copy p {
  color: #6b6478;
  margin: 0;
}

.home-2026 .h-promo .h-btn {
  position: relative;
  z-index: 1;
  margin-right: 130px;
}

.home-2026 .h-ribbon-promo {
  width: 190px;
  right: -20px;
  top: -30px;
  transform: rotate(-20deg);
}

.home-2026 .home-news-grid {
  gap: 22px;
}

.home-2026 .hn-card {
  background: #fff;
  border: 1px solid var(--h-line);
  border-radius: 20px;
  box-shadow: var(--h-shadow);
  transition: transform 0.2s, box-shadow 0.2s;
}

.home-2026 .hn-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--h-shadow-lg);
}

.home-2026 .hn-thumb {
  height: 190px;
  margin: 10px 10px 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #e6dcfa, #f6e9f3);
}

.home-2026 .hn-body {
  padding: 16px 18px 20px;
}

.home-2026 .hn-meta {
  color: var(--h-violet);
}

.home-2026 .hn-card h3 {
  color: var(--h-ink);
  font-size: 17px;
}

/* ==========================================================================
   03 · BLOG
   ========================================================================== */
.home-2026 .h-blog {
  position: relative;
  background: var(--h-lilac-3);
  padding: clamp(36px, 5vw, 64px) 0;
  overflow: hidden;
}

.home-2026 .h-ribbon-blog {
  width: 300px;
  right: -90px;
  bottom: -110px;
  transform: rotate(-14deg);
  opacity: 0.9;
}

.home-2026 .h-notice {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 22px;
  border-radius: 16px;
  background: var(--h-lilac);
  margin-bottom: clamp(26px, 3.5vw, 40px);
  color: inherit;
}

.home-2026 .h-notice > svg {
  width: 28px;
  height: 28px;
  color: var(--h-purple);
  flex: 0 0 auto;
}

.home-2026 .h-notice-copy {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.home-2026 .h-notice-copy strong {
  color: var(--h-ink);
  font-size: 15px;
}

.home-2026 .h-notice-copy small {
  color: #6b6478;
  font-size: 13px;
}

.home-2026 .h-notice-link {
  color: var(--h-purple);
  font-weight: 800;
  font-size: 14px;
  white-space: nowrap;
}

.home-2026 .home-blog-section .blog-card {
  border-radius: 20px;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
}

.home-2026 .home-blog-section .blog-card-img {
  height: 210px;
  max-height: 210px;
  margin: 10px 10px 0;
  border-radius: 14px;
}

.home-2026 .home-blog-section .blog-cat {
  color: var(--h-violet);
}

.home-2026 .home-blog-section .blog-card-body h3 {
  color: var(--h-ink);
  font-size: 1.12rem;
}

.home-2026 .home-blog-section .blog-card-body::after {
  content: "Leer artículo  →";
  margin-top: auto;
  padding-top: 8px;
  color: var(--h-purple);
  font-weight: 800;
  font-size: 14px;
}

/* ==========================================================================
   04 · OFERTAS DE LA COMUNIDAD
   ========================================================================== */
.home-2026 .h-offers {
  position: relative;
  background: #fff;
  padding: clamp(36px, 5vw, 64px) 0;
  overflow: hidden;
}

.home-2026 .h-blob-offers {
  width: 520px;
  height: 520px;
  right: -200px;
  top: -140px;
}

.home-2026 .h-offers .container {
  position: relative;
  z-index: 1;
}

.home-2026 .featured-head {
  margin-bottom: 4px;
}

.home-2026 .h-offers .btn-lavender {
  background: var(--h-purple);
}

.home-2026 .track {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.home-2026 .course-card {
  background: #fff;
  border: 1px solid var(--h-line);
  border-radius: 20px;
  box-shadow: var(--h-shadow);
  transition: transform 0.2s, box-shadow 0.2s;
  display: flex;
  flex-direction: column;
}

.home-2026 .course-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--h-shadow-lg);
}

.home-2026 .course-card .thumb {
  height: 170px;
  margin: 10px 10px 0;
  border-radius: 14px;
}

.home-2026 .course-card .meta {
  background: #fff;
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 0;
  flex: 1 1 auto;
}

.home-2026 .course-card .meta::before {
  content: "Propuesta";
  align-self: flex-start;
  background: var(--h-lilac);
  color: var(--h-purple);
  font-size: 11px;
  font-weight: 800;
  padding: 4px 10px;
  border-radius: 999px;
  margin-bottom: 4px;
}

.home-2026 .course-card h3 {
  color: var(--h-ink);
  font-size: 16px;
}

.home-2026 .course-card span {
  color: #6b6478;
  font-size: 13px;
}

.home-2026 .course-card .meta::after {
  content: "Ver propuesta  →";
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border-radius: 10px;
  border: 1.5px solid rgba(75, 31, 166, 0.45);
  color: var(--h-purple);
  font-weight: 800;
  font-size: 14px;
}

/* ==========================================================================
   05 · BENEFICIOS + PAUSA
   ========================================================================== */
.home-2026 .h-benefits {
  background: var(--h-lilac-3);
  padding: clamp(28px, 4vw, 48px) 0 0;
}

.home-2026 .h-benefit-grid {
  gap: 20px;
  text-align: left;
}

.home-2026 .h-benefit {
  flex-direction: row;
  align-items: center;
  gap: 16px;
  padding: 22px 24px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
}

.home-2026 .h-benefit h3 {
  color: var(--h-ink);
  font-size: 17px;
  font-weight: 800;
  margin: 0 0 4px;
}

.home-2026 .h-benefit p {
  color: #6b6478;
  font-size: 14px;
  line-height: 1.5;
}

.home-2026 .h-pause {
  position: relative;
  background: var(--h-lilac-3);
  padding: clamp(36px, 5vw, 60px) 0 clamp(36px, 5vw, 56px);
  overflow: hidden;
}

.home-2026 .h-ribbon-pause-l {
  width: 320px;
  left: -140px;
  bottom: -60px;
  transform: rotate(160deg);
  opacity: 0.8;
}

.home-2026 .h-ribbon-pause-r {
  width: 320px;
  right: -140px;
  top: -80px;
  transform: rotate(-10deg);
  opacity: 0.8;
}

.home-2026 .h-pause .container {
  position: relative;
  z-index: 1;
}

.home-2026 .dq-kicker {
  color: var(--h-purple);
  letter-spacing: 0.3em;
}

.home-2026 .oracle-title {
  color: var(--h-ink);
  font-style: normal;
  font-size: clamp(30px, 4vw, 46px);
}

.home-2026 .oracle-ask {
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  max-width: 720px;
}

.home-2026 .h-ask-label {
  color: var(--h-ink);
  font-weight: 700;
  font-size: 14px;
}

.home-2026 .h-ask-label span {
  color: #8a7fa3;
  font-weight: 500;
}

.home-2026 .h-ask-row {
  display: flex;
  gap: 10px;
}

.home-2026 .h-ask-row input {
  flex: 1 1 auto;
  border-radius: 14px;
  border: 1px solid var(--h-line);
}

.home-2026 .oracle-ask-btn {
  border-radius: 14px;
  background: var(--h-purple-strong);
}

.home-2026 .oracle-back,
.home-2026 .oracle-face {
  border-radius: 18px;
}

/* ==========================================================================
   07 · CÓMO FUNCIONA + VIDEO
   ========================================================================== */
.home-2026 .h-how {
  background: #fff;
  padding: clamp(36px, 5vw, 64px) 0;
}

.home-2026 .h-how .h-eyebrow {
  text-transform: none;
  letter-spacing: 0;
  font-size: 18px;
  color: var(--h-purple);
}

.home-2026 .h-steps {
  margin-top: 26px;
  gap: 20px;
}

.home-2026 .h-step {
  background: #fff;
  border: 1px solid var(--h-line);
  border-radius: 20px;
  padding: 26px 26px 28px;
  box-shadow: var(--h-shadow);
}

.home-2026 .h-step-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.home-2026 .h-step-num {
  color: var(--h-violet);
  font-size: 26px;
  font-weight: 800;
}

.home-2026 .h-step h3 {
  color: var(--h-ink);
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 8px;
}

.home-2026 .h-step p {
  color: #6b6478;
  line-height: 1.55;
  margin: 0;
  max-width: none;
}

.home-2026 .h-video-row {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: clamp(24px, 3.5vw, 48px);
  align-items: center;
  margin-top: clamp(30px, 4vw, 48px);
  padding: 0;
  background: transparent;
}

.home-2026 .h-video-box {
  position: relative;
  max-width: none;
  padding: 0;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: var(--h-shadow-lg);
  aspect-ratio: 16 / 10;
  background: #000;
}

.home-2026 .h-video-box video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-2026 .h-video-play {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #fff;
  background: linear-gradient(180deg, rgba(20, 5, 50, 0.1), rgba(20, 5, 50, 0.55));
  text-align: center;
  transition: opacity 0.25s;
}

.home-2026 .h-video-play.is-hidden {
  opacity: 0;
  pointer-events: none;
}

.home-2026 .h-play-ring {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  background: var(--h-purple);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
  margin-bottom: 18px;
}

.home-2026 .h-play-ring svg {
  width: 32px;
  height: 32px;
  margin-left: 3px;
}

.home-2026 .h-video-title {
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 800;
  letter-spacing: -0.01em;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
}

.home-2026 .h-video-brand {
  font-size: 18px;
  opacity: 0.95;
}

.home-2026 .h-video-copy {
  position: relative;
}

.home-2026 .h-ribbon-video {
  width: 300px;
  right: -140px;
  top: -80px;
  transform: rotate(-12deg);
  opacity: 0.85;
}

.home-2026 .h-video-copy .h-title,
.home-2026 .h-video-copy .h-lead,
.home-2026 .h-video-copy .h-btn {
  position: relative;
  z-index: 1;
}

.home-2026 .h-video-copy .h-btn {
  margin-top: 10px;
}

/* ==========================================================================
   08 · CATEGORÍAS
   ========================================================================== */
.home-2026 .h-cats {
  position: relative;
  background: var(--h-lilac-3);
  padding: clamp(36px, 5vw, 64px) 0;
  overflow: hidden;
}

.home-2026 .h-cats .center {
  margin-bottom: 30px;
}

.home-2026 .h-cats .center .h-lead {
  margin: 0 auto;
}

.home-2026 .h-cats h2 {
  color: var(--h-ink);
  font-style: normal;
}

.home-2026 .h-ribbon-cats {
  width: 380px;
  right: -150px;
  top: -40px;
  transform: rotate(-8deg);
}

.home-2026 .h-blob-cats {
  width: 420px;
  height: 420px;
  left: -220px;
  bottom: -100px;
}

.home-2026 .h-cats .container {
  position: relative;
  z-index: 1;
}

.home-2026 .h-cat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.home-2026 .h-cat {
  width: auto;
  max-width: none;
  height: auto;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
  transition: transform 0.2s, box-shadow 0.2s;
}

.home-2026 .h-cat:hover {
  transform: translateY(-3px);
  box-shadow: var(--h-shadow-lg);
}

.home-2026 .h-cat img {
  height: 230px;
  margin: 10px 10px 0;
  width: calc(100% - 20px);
  border-radius: 14px;
}

.home-2026 .h-cat:hover img {
  transform: none;
}

.home-2026 .h-cat-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px 20px 18px;
}

.home-2026 .h-cat h3 {
  position: static;
  color: var(--h-ink);
  font-size: 19px;
  font-weight: 800;
  margin: 0 0 2px;
}

.home-2026 .h-cat span {
  color: #6b6478;
  font-size: 14px;
}

.home-2026 .h-round-arrow {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1.5px solid rgba(75, 31, 166, 0.35);
  color: var(--h-purple);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-weight: 800;
  flex: 0 0 auto;
}

.home-2026 .h-cat-chips {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 26px;
}

/* ==========================================================================
   09 · QUIENES COMPARTEN + FUNDADORA
   ========================================================================== */
.home-2026 .h-speakers {
  background: #fff;
  padding: clamp(36px, 5vw, 64px) 0;
}

.home-2026 .h-speakers .center {
  margin-bottom: 28px;
}

.home-2026 .h-speakers .center .h-lead {
  margin: 0 auto;
}

.home-2026 .h-speakers h2 {
  font-size: clamp(28px, 3.4vw, 40px);
  color: var(--h-ink);
  margin-bottom: 10px;
}

.home-2026 .h-speaker-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.home-2026 .h-speaker {
  height: auto;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
  overflow: hidden;
  transition: transform 0.2s;
}

.home-2026 .h-speaker:hover {
  transform: translateY(-3px);
}

.home-2026 .h-speaker-photo {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 14px;
  margin: 10px 10px 0;
}

.home-2026 .h-speaker-photo img:first-child {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-2026 .h-ribbon-mini {
  width: 90%;
  left: -30%;
  bottom: -35%;
  transform: rotate(20deg);
  opacity: 0.85;
  mix-blend-mode: multiply;
}

.home-2026 .h-speaker-body {
  padding: 14px 16px 16px;
}

.home-2026 .h-speaker-body h3 {
  color: var(--h-ink);
  font-size: 17px;
  font-weight: 800;
  margin: 0 0 4px;
}

.home-2026 .h-speaker-body span {
  color: var(--h-purple);
  font-weight: 800;
  font-size: 14px;
}

.home-2026 .h-conf-link {
  margin-top: 18px;
}

.home-2026 .h-conf-link a {
  color: var(--h-purple);
  font-weight: 800;
}

.home-2026 .h-founder {
  position: relative;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) 260px;
  align-items: center;
  gap: 24px;
  margin-top: clamp(30px, 4vw, 48px);
  padding: 0 40px 0 0;
  border-radius: var(--h-radius);
  background: var(--h-lilac-2);
  overflow: hidden;
  min-height: 250px;
}

.home-2026 .h-ribbon-founder-l {
  width: 260px;
  left: -110px;
  bottom: -100px;
  transform: rotate(170deg);
  opacity: 0.9;
}

.home-2026 .h-founder-photo {
  position: relative;
  align-self: end;
  height: 100%;
  min-height: 250px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.home-2026 .h-blob-founder {
  width: 240px;
  height: 240px;
  left: 30px;
  bottom: -60px;
  background: radial-gradient(circle, #e3d8fa 0%, rgba(227, 216, 250, 0) 72%);
}

.home-2026 .h-founder-photo img {
  position: relative;
  z-index: 1;
  width: 230px;
  height: 250px;
  object-fit: cover;
  object-position: top center;
  -webkit-mask-image: linear-gradient(180deg, #000 78%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(180deg, #000 78%, rgba(0, 0, 0, 0) 100%);
}

.home-2026 .h-founder-copy {
  position: relative;
  z-index: 1;
  padding: 28px 0;
}

.home-2026 .h-founder-copy .h-title {
  font-size: clamp(26px, 2.8vw, 34px);
}

.home-2026 .h-founder-copy .h-btn {
  margin-top: 10px;
}

.home-2026 .h-founder-quote {
  position: relative;
  z-index: 1;
  border-left: 1px solid var(--h-line);
  padding-left: 30px;
}

.home-2026 .h-founder-quote p {
  font-family: "Bradley Hand", "Segoe Print", "Comic Sans MS", cursive;
  color: var(--h-ink);
  font-size: 19px;
  line-height: 1.5;
  margin: 0;
}

.home-2026 .h-ribbon-founder-r {
  width: 260px;
  right: -170px;
  top: -40px;
  transform: rotate(-16deg);
  opacity: 0.85;
}

/* ==========================================================================
   10 · COMUNIDAD Y MEMBRESÍA
   ========================================================================== */
.home-2026 .h-community {
  background: #fff;
  padding: clamp(36px, 5vw, 64px) 0;
}

.home-2026 .h-experience {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) auto 300px;
  align-items: center;
  gap: 24px;
  padding: 0 0 0 36px;
  border-radius: var(--h-radius);
  background: var(--h-lilac-2);
  overflow: hidden;
  min-height: 190px;
}

.home-2026 .h-experience-copy h2 {
  color: var(--h-ink);
  font-size: clamp(22px, 2.3vw, 30px);
  font-weight: 800;
  line-height: 1.15;
  margin: 0;
}

.home-2026 .h-experience-copy .h-eyebrow {
  text-transform: none;
  letter-spacing: 0;
  font-size: 17px;
}

.home-2026 .h-experience-photo {
  position: relative;
  height: 100%;
  min-height: 190px;
  align-self: end;
}

.home-2026 .h-experience-photo img:first-child {
  position: absolute;
  z-index: 2;
  left: 10px;
  bottom: 0;
  width: 170px;
  height: 190px;
  object-fit: cover;
  object-position: top center;
  -webkit-mask-image: linear-gradient(180deg, #000 85%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(180deg, #000 85%, rgba(0, 0, 0, 0) 100%);
}

.home-2026 .h-ribbon-exp {
  width: 230px;
  right: -60px;
  top: -70px;
  transform: rotate(-10deg);
  z-index: 1;
}

.home-2026 .h-experience-photo .h-handwrite {
  position: absolute;
  z-index: 3;
  right: 22px;
  bottom: 26px;
  font-size: 15px;
}

.home-2026 .h-membership-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, 380px);
  gap: clamp(28px, 4vw, 60px);
  align-items: center;
  margin-top: clamp(32px, 4.5vw, 56px);
}

.home-2026 .h-membership-copy {
  position: relative;
}

.home-2026 .h-ribbon-member {
  width: 320px;
  left: -230px;
  bottom: -160px;
  transform: rotate(150deg);
  opacity: 0.85;
}

.home-2026 .h-membership-copy > * {
  position: relative;
  z-index: 1;
}

.home-2026 .h-membership-copy .h-title {
  font-size: clamp(30px, 3.6vw, 44px);
}

.home-2026 .h-pillars {
  display: flex;
  gap: 40px;
  margin-top: 30px;
}

.home-2026 .h-pillar {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
  max-width: 130px;
}

.home-2026 .h-pillar h3 {
  color: var(--h-ink);
  font-size: 15px;
  font-weight: 800;
  margin: 0;
}

.home-2026 .h-plan {
  border-radius: 22px;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow-lg);
  padding: 30px 30px 26px;
  text-align: center;
}

.home-2026 .h-plan h4 {
  color: var(--h-ink);
  margin-bottom: 4px;
}

.home-2026 .h-plan .price {
  color: var(--h-ink);
  font-size: 56px;
  margin-bottom: 10px;
}

.home-2026 .h-plan .free-note {
  color: var(--h-ink);
  margin: 0 0 20px;
}

.home-2026 .h-plan ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 26px;
}

.home-2026 .h-plan li {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #4f4e50;
  font-size: 14px;
  text-align: left;
}

.home-2026 .h-plan .btn-purple {
  width: 100%;
  font-weight: 700;
}

.home-2026 .h-plan .plan-fine {
  font-size: 12px;
}

/* ==========================================================================
   11 · DESCUBRE, COMPARTE, CONECTA
   ========================================================================== */
.home-2026 .h-dsc {
  position: relative;
  background: var(--h-lilac-3);
  padding: clamp(36px, 5vw, 64px) 0;
  overflow: hidden;
}

.home-2026 .h-ribbon-dsc {
  width: 420px;
  right: -150px;
  top: -140px;
  transform: rotate(-6deg);
}

.home-2026 .h-dsc .container {
  position: relative;
  z-index: 1;
}

.home-2026 .h-dsc-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 26px;
}

.home-2026 .h-handwrite-inline {
  margin-top: 20px;
  margin-right: 220px;
  font-size: 17px;
  text-decoration: underline;
  text-decoration-color: rgba(75, 31, 166, 0.35);
}

.home-2026 .h-dsc-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.home-2026 .h-dsc-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42%;
  min-height: 190px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
  overflow: hidden;
}

.home-2026 .h-dsc-copy {
  padding: 22px 6px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  z-index: 1;
}

.home-2026 .h-dsc-copy h3 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--h-ink);
  font-size: 24px;
  font-weight: 800;
  margin: 0;
}

.home-2026 .h-dsc-copy h3 svg {
  width: 22px;
  height: 22px;
  color: var(--h-purple);
}

.home-2026 .h-dsc-copy p {
  color: #6b6478;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 6px;
  flex: 1 1 auto;
}

.home-2026 .h-dsc-copy .h-btn {
  align-self: flex-start;
}

.home-2026 .h-dsc-card > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  background: var(--h-lilac);
}

.home-2026 .h-howbuy {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 26px;
  padding: 24px 30px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
}

.home-2026 .h-howbuy-copy h3 {
  color: var(--h-ink);
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 4px;
}

.home-2026 .h-howbuy-copy p {
  color: #6b6478;
  font-size: 14px;
  margin: 0 0 14px;
}

.home-2026 .h-howbuy-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  list-style: none;
  padding: 0;
  margin: 0;
  color: var(--h-ink);
  font-weight: 700;
  font-size: 14px;
}

.home-2026 .h-howbuy-steps li {
  display: flex;
  align-items: center;
  gap: 10px;
}

.home-2026 .h-howbuy-steps b {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--h-lilac);
  color: var(--h-purple);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
}

.home-2026 .h-howbuy-sep {
  color: #b9aee0;
}

/* ==========================================================================
   12 · FAQ
   ========================================================================== */
.home-2026 .h-faq {
  background: #fff;
  padding: clamp(36px, 5vw, 64px) 0;
}

.home-2026 .h-faq-row {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}

.home-2026 .h-faq-side {
  position: relative;
}

.home-2026 .h-faq-side .h-eyebrow {
  text-transform: none;
  letter-spacing: 0;
  font-size: 17px;
}

.home-2026 .h-help {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 16px;
  background: var(--h-lilac-2);
  margin-top: 18px;
  font-size: 14px;
  color: #4f4e50;
}

.home-2026 .h-help strong {
  color: var(--h-ink);
}

.home-2026 .h-help a {
  color: var(--h-purple);
  font-weight: 700;
}

.home-2026 .h-faq-photo {
  position: relative;
  margin-top: 12px;
  height: 250px;
  overflow: hidden;
}

.home-2026 .h-ribbon-faq {
  width: 260px;
  left: -90px;
  top: -20px;
  transform: rotate(160deg);
}

.home-2026 .h-blob-faq {
  width: 260px;
  height: 260px;
  left: 60px;
  bottom: -90px;
  background: radial-gradient(circle, #e3d8fa 0%, rgba(227, 216, 250, 0) 72%);
}

.home-2026 .h-faq-photo > img:last-child {
  position: absolute;
  z-index: 1;
  left: 50px;
  bottom: 0;
  width: 240px;
  height: 250px;
  object-fit: cover;
  object-position: top center;
  -webkit-mask-image: linear-gradient(180deg, #000 80%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(180deg, #000 80%, rgba(0, 0, 0, 0) 100%);
}

.home-2026 .h-faq-main {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home-2026 .h-faq-item {
  border-radius: 16px;
  border: 1px solid var(--h-line);
  background: #fff;
  box-shadow: 0 2px 10px rgba(53, 12, 127, 0.04);
  transition: background 0.2s;
}

.home-2026 .h-faq-item[open] {
  background: var(--h-lilac-2);
}

.home-2026 .h-faq-item summary {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 22px;
  cursor: pointer;
  list-style: none;
}

.home-2026 .h-faq-item summary::-webkit-details-marker {
  display: none;
}

.home-2026 .h-faq-item summary::after {
  content: "";
  margin-left: auto;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--h-purple);
  border-bottom: 2px solid var(--h-purple);
  transform: rotate(45deg);
  transition: transform 0.2s;
  flex: 0 0 auto;
}

.home-2026 .h-faq-item[open] summary::after {
  transform: rotate(-135deg);
}

.home-2026 .h-faq-plus {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--h-lilac);
  flex: 0 0 auto;
}

.home-2026 .h-faq-item[open] .h-faq-plus {
  background: var(--h-violet);
}

.home-2026 .h-faq-plus::before,
.home-2026 .h-faq-plus::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 2px;
  background: var(--h-purple);
  transform: translate(-50%, -50%);
}

.home-2026 .h-faq-plus::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.home-2026 .h-faq-item[open] .h-faq-plus::before,
.home-2026 .h-faq-item[open] .h-faq-plus::after {
  background: #fff;
}

.home-2026 .h-faq-item[open] .h-faq-plus::after {
  display: none;
}

.home-2026 .h-faq-item summary h3 {
  color: var(--h-ink);
  font-size: 17px;
  font-weight: 800;
  margin: 0;
}

.home-2026 .h-faq-item > p {
  padding: 0 22px 20px 64px;
  color: #5e5870;
  line-height: 1.6;
  margin: 0;
}

.home-2026 .h-seo-grid {
  margin-top: clamp(30px, 4vw, 48px);
}

.home-2026 .h-seo-grid article {
  background: var(--h-lilac-2);
  border-radius: 18px;
  padding: 20px;
}

.home-2026 .h-seo-grid h3 {
  color: var(--h-ink);
  margin-top: 0;
}

.home-2026 .h-seo-text {
  color: #7b7590;
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 8px;
}

.home-2026 .h-dirstrip {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 26px;
  padding: 24px 30px;
  border-radius: 20px;
  background: var(--h-lilac-2);
}

.home-2026 .h-dirstrip-copy {
  flex: 1 1 auto;
}

.home-2026 .h-dirstrip-copy h3 {
  color: var(--h-ink);
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 4px;
}

.home-2026 .h-dirstrip-copy p {
  margin: 0;
  color: #6b6478;
  font-size: 14px;
}

.home-2026 .h-dirstrip-copy a {
  color: var(--h-purple);
}

/* ==========================================================================
   13 · CIERRE + FOOTER
   ========================================================================== */
.home-2026 .h-final {
  background: #fff;
  padding: clamp(24px, 3.5vw, 48px) 0 clamp(36px, 5vw, 64px);
}

.home-2026 .h-final-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
  align-items: center;
  gap: 24px;
  padding: 0 0 0 clamp(24px, 4vw, 60px);
  border-radius: 28px;
  background: linear-gradient(135deg, #f7f3fd 0%, #ede5fb 100%);
  overflow: hidden;
  min-height: 360px;
}

.home-2026 .h-final-copy {
  position: relative;
  z-index: 2;
  padding: 36px 0;
}

.home-2026 .h-final-copy h2 {
  color: var(--h-ink);
  font-size: clamp(32px, 4vw, 50px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.01em;
  margin: 0 0 16px;
}

.home-2026 .h-final-copy p {
  color: #6b6478;
  font-size: 17px;
  line-height: 1.55;
  max-width: 460px;
  margin: 0;
}

.home-2026 .h-final .btn-white-lg {
  background: var(--h-purple);
  color: #fff;
}

.home-2026 .h-final-photo {
  position: relative;
  height: 100%;
  min-height: 360px;
  align-self: end;
}

.home-2026 .h-ribbon-final {
  width: 380px;
  right: -110px;
  top: -80px;
  transform: rotate(-10deg);
}

.home-2026 .h-final-photo > img:last-child {
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, 440px);
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
}

.home-2026 .h-foot {
  background: var(--h-purple-strong);
  padding: clamp(40px, 5vw, 64px) 0 28px;
}

.home-2026 .h-foot-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 32px;
  align-items: start;
}

.home-2026 .h-foot-brand img {
  height: 38px;
  width: auto;
  margin-bottom: 16px;
}

.home-2026 .h-foot-brand p {
  color: rgba(255, 255, 255, 0.82);
  font-size: 14px;
  line-height: 1.6;
  max-width: 300px;
  margin: 0 0 20px;
}

.home-2026 .h-foot h4 {
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 14px;
}

.home-2026 .h-foot .legal {
  flex-direction: column;
  gap: 10px;
}

.home-2026 .h-foot .legal a {
  color: rgba(255, 255, 255, 0.85);
  font-size: 14px;
}

.home-2026 .h-foot-mail {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.home-2026 .h-foot-mail svg {
  width: 18px;
  height: 18px;
}

.home-2026 .h-foot .social {
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.28);
}

.home-2026 .h-foot .social.ig,
.home-2026 .h-foot .social.yt,
.home-2026 .h-foot .social.tt,
.home-2026 .h-foot .social.wa {
  background: rgba(255, 255, 255, 0.12);
}

.home-2026 .h-foot .social:hover {
  background: rgba(255, 255, 255, 0.24);
  opacity: 1;
}

.home-2026 .h-foot-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 36px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.8);
  font-size: 13px;
}

.home-2026 .h-foot-bottom p {
  margin: 0;
}

.home-2026 .h-foot-legal {
  display: flex;
  align-items: center;
  gap: 10px;
}

.home-2026 .h-foot-legal a {
  color: rgba(255, 255, 255, 0.85);
}

.home-2026 .h-footer-mini {
  display: none;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 1100px) {
  .home-2026 .track,
  .home-2026 .h-speaker-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-2026 .h-founder {
    grid-template-columns: 240px minmax(0, 1fr);
    padding-right: 28px;
  }

  .home-2026 .h-founder-quote {
    display: none;
  }

  .home-2026 .h-experience {
    grid-template-columns: minmax(0, 1fr) 240px;
  }

  .home-2026 .h-experience .h-btn {
    grid-column: 1;
    justify-self: start;
    margin-bottom: 24px;
  }

  .home-2026 .h-experience-photo {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  .home-2026 .h-dsc-grid {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-dsc-card {
    grid-template-columns: minmax(0, 1fr) 220px;
  }

  .home-2026 .h-handwrite-inline {
    margin-right: 0;
  }

  .home-2026 .h-foot-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 900px) {
  .home-2026 .h-hero-inner {
    grid-template-columns: 1fr;
    min-height: 0;
    padding-top: 24px;
  }

  /* Móvil: foto arriba, copy debajo (regla WOMS) */
  .home-2026 .h-hero-visual {
    order: -1;
    min-height: 0;
    justify-content: center;
  }

  .home-2026 .h-hero-photo {
    width: min(78%, 360px);
    max-height: 440px;
  }

  .home-2026 .h-hero-visual .h-blob {
    width: 90%;
    left: 5%;
    bottom: -10%;
  }

  .home-2026 .h-ribbon-hero {
    width: 60%;
    right: -12%;
    top: -4%;
  }

  .home-2026 .h-hero-badge {
    right: 6%;
    bottom: 6%;
  }

  .home-2026 .h-hero-title {
    max-width: none;
  }

  .home-2026 .h-strip-inner {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .home-2026 .h-strip-item + .h-strip-item {
    border-left: 0;
    border-top: 1px solid var(--h-line);
    padding-top: 12px;
  }

  .home-2026 .h-strip-item {
    justify-content: flex-start;
  }

  .home-2026 .h-promo {
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
  }

  .home-2026 .h-promo .h-btn {
    margin-right: 0;
  }

  .home-2026 .h-ribbon-promo {
    width: 140px;
    right: -30px;
    top: -50px;
    opacity: 0.6;
  }

  .home-2026 .h-head,
  .home-2026 .h-head-tight,
  .home-2026 .h-dsc-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-2026 .h-notice {
    flex-wrap: wrap;
  }

  .home-2026 .h-benefit-grid,
  .home-2026 .h-steps,
  .home-2026 .h-cat-grid {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-video-row {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-founder {
    grid-template-columns: 1fr;
    padding: 0 24px 24px;
    text-align: center;
  }

  .home-2026 .h-founder-photo {
    min-height: 220px;
  }

  .home-2026 .h-founder-photo img {
    width: 200px;
    height: 220px;
  }

  .home-2026 .h-founder-copy {
    padding-top: 0;
  }

  .home-2026 .h-founder-copy .h-lead {
    margin: 0 auto 8px;
  }

  .home-2026 .h-experience {
    grid-template-columns: 1fr;
    padding: 24px 24px 0;
  }

  .home-2026 .h-experience .h-btn {
    margin-bottom: 0;
  }

  .home-2026 .h-experience-photo {
    grid-column: 1;
    grid-row: auto;
    min-height: 200px;
  }

  .home-2026 .h-experience-photo img:first-child {
    left: 50%;
    transform: translateX(-50%);
  }

  .home-2026 .h-membership-row {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-pillars {
    justify-content: space-between;
    gap: 16px;
  }

  .home-2026 .h-howbuy {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-2026 .h-faq-row {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-faq-photo {
    display: none;
  }

  .home-2026 .h-dirstrip {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-2026 .h-final-card {
    grid-template-columns: 1fr;
    padding: 0 24px;
  }

  .home-2026 .h-final-copy {
    padding-bottom: 12px;
  }

  .home-2026 .h-final-photo {
    min-height: 280px;
  }

  .home-2026 .h-final-photo > img:last-child {
    width: min(100%, 360px);
  }
}

@media (max-width: 640px) {
  .home-2026 .track,
  .home-2026 .h-speaker-grid,
  .home-2026 .h-foot-grid {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-dsc-card {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-dsc-card > img {
    height: 280px;
    order: -1;
  }

  .home-2026 .h-dsc-copy {
    padding: 20px;
  }

  .home-2026 .h-ask-row {
    flex-direction: column;
  }

  .home-2026 .h-pillars {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-2026 .h-pillar {
    flex-direction: row;
    text-align: left;
    max-width: none;
  }

  .home-2026 .h-cta-row .h-btn {
    width: 100%;
  }

  .home-2026 .h-hero-photo {
    width: 88%;
    max-height: 400px;
  }

  .home-2026 .h-faq-item > p {
    padding-left: 22px;
  }

  .home-2026 .h-foot-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ==========================================================================
   ADAPTACIÓN INCREMENTAL · mezcla con el home existente (styles.css)
   Estas reglas van al final para ganar a las anteriores.
   ========================================================================== */

/* Hero: la foto tiene fondo blanco-gris, la enmarcamos en arco lavanda */
.home-2026 .h-hero-photo {
  width: min(100%, 440px);
  height: clamp(420px, 44vw, 580px);
  max-height: none;
  object-fit: cover;
  object-position: top center;
  border-radius: 999px 999px 30px 30px;
  background: var(--h-lilac);
  -webkit-mask-image: none;
  mask-image: none;
  filter: none;
  box-shadow: var(--h-shadow-lg);
}

.home-2026 .h-hero-visual .h-blob {
  width: 100%;
  left: 0;
  bottom: -30%;
}

.home-2026 .h-ribbon-hero {
  width: 60%;
  right: -14%;
  top: -4%;
  opacity: 0.9;
}

.home-2026 .h-hero-badge {
  right: 0;
  bottom: 9%;
}

/* Blog: sección con cinta decorativa */
.home-2026 .home-blog-section {
  position: relative;
  overflow: hidden;
}

.home-2026 .home-blog-section .container {
  position: relative;
  z-index: 1;
}

/* Cursos destacados: subtítulo bajo los títulos */
.home-2026 .featured-head .h-lead {
  margin-top: 8px;
  font-size: 15px;
}

/* Beneficios: en cards horizontales con título */
.home-2026 .h-benefit img {
  width: 60px;
  height: 74px;
  margin: 0;
}

.home-2026 .h-benefit p {
  margin: 0;
}

/* Pausa WOMS (oráculo): solo decoración, no tocamos el comportamiento */
.home-2026 .h-pause {
  background: #fff;
}

.home-2026 .oracle-ask {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  max-width: 640px;
}

.home-2026 .h-ribbon-pause-l,
.home-2026 .h-ribbon-pause-r {
  opacity: 0.55;
}

/* Cómo funciona */
.home-2026 .how .h-eyebrow {
  text-transform: none;
  letter-spacing: 0;
  font-size: 17px;
  color: var(--h-violet);
  margin-bottom: 6px;
}

.home-2026 .how h2 {
  color: var(--h-ink);
  max-width: 760px;
}

.home-2026 .how-grid article {
  background: #fff;
  border: 1px solid var(--h-line);
  box-shadow: var(--h-shadow);
  transition: transform 0.2s;
}

.home-2026 .how-grid article:hover {
  transform: translateY(-3px);
}

.home-2026 .how-grid span {
  background: var(--h-lilac);
  color: var(--h-violet);
}

.home-2026 .how-grid h3 {
  color: var(--h-ink);
}

/* Video: mismo video, ahora a dos columnas con el texto de Daniela */
.home-2026 .h-video-section {
  padding: clamp(36px, 5vw, 64px) 0;
  overflow: hidden;
}

.home-2026 .h-video-section .h-video-row {
  margin-top: 0;
}

.home-2026 .h-video-box {
  aspect-ratio: 16 / 9;
}

.home-2026 .h-video-copy .h-btn {
  margin-top: 14px;
}

/* Speakers: cabecera más contenida + banner de la fundadora */
.home-2026 .speakers h2 {
  font-size: clamp(30px, 4vw, 46px);
  color: var(--h-ink);
  margin-bottom: 36px;
}

.home-2026 .speaker {
  border-radius: 20px;
}

.home-2026 .h-founder-photo img {
  width: 220px;
  height: 250px;
  border-radius: 999px 999px 0 0;
  -webkit-mask-image: none;
  mask-image: none;
}

/* Testimonios: banner "Tu experiencia también cuenta" arriba de la fila */
.home-2026 .h-experience {
  margin-bottom: clamp(32px, 4.5vw, 56px);
}

.home-2026 .h-experience-photo img:first-child {
  border-radius: 999px 999px 0 0;
  -webkit-mask-image: none;
  mask-image: none;
}

/* Precios: "Gratis" como en el mockup */
.home-2026 .h-plan .price {
  font-size: 48px;
  line-height: 1;
}

.home-2026 .h-plan .price small {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #8a7fa3;
  margin-top: 6px;
}

/* FAQ: lateral con ayuda + foto, preguntas a la derecha */
.home-2026 .h-faq-main h2 {
  margin-top: 0;
}

.home-2026 .h-faq-main .seo-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-2026 .h-faq-photo > img:last-child {
  border-radius: 999px 999px 0 0;
  -webkit-mask-image: none;
  mask-image: none;
}

/* Cierre: tarjeta lavanda con la foto del dúo */
.home-2026 .h-final {
  background: #fff;
  color: inherit;
  text-align: left;
}

.home-2026 .h-final-copy h2 span {
  display: block;
  margin-top: 10px;
  font-size: 0.55em;
  font-weight: 700;
  color: var(--h-violet);
  line-height: 1.25;
}

.home-2026 .h-final .btn-white-lg {
  height: 48px;
  border-radius: 14px;
  box-shadow: 0 10px 22px rgba(75, 31, 166, 0.25);
}

.home-2026 .h-final .h-btn-ghost {
  color: var(--h-purple);
  border-color: rgba(75, 31, 166, 0.45);
  min-height: 48px;
}

.home-2026 .h-final-photo > img:last-child {
  width: min(100%, 400px);
  object-fit: cover;
  object-position: top center;
  border-radius: 999px 999px 0 0;
}

.home-2026 .h-ribbon-video {
  right: -200px;
  top: -120px;
  opacity: 0.7;
}

@media (max-width: 900px) {
  .home-2026 .h-hero-photo {
    width: min(80%, 360px);
    height: 440px;
  }

  /* En móvil las cintas decorativas no deben pisar el texto */
  .home-2026 .h-ribbon-video,
  .home-2026 .h-ribbon-founder-l,
  .home-2026 .h-ribbon-founder-r,
  .home-2026 .h-ribbon-blog {
    display: none;
  }

  .home-2026 .h-ribbon-exp,
  .home-2026 .h-ribbon-dsc,
  .home-2026 .h-ribbon-pause-l,
  .home-2026 .h-ribbon-pause-r {
    opacity: 0.35;
  }

  .home-2026 .h-dsc-card > img {
    object-position: 50% 20%;
  }

  .home-2026 .h-faq-main .seo-grid {
    grid-template-columns: 1fr;
  }

  .home-2026 .h-final-photo > img:last-child {
    width: min(100%, 320px);
  }
}

@media (max-width: 640px) {
  .home-2026 .h-hero-photo {
    width: 86%;
    height: 400px;
  }

  .home-2026 .h-benefit {
    flex-direction: column;
    text-align: center;
  }
}
