/* Contenedor principal */
.cmp-bentoGrid .itm-container__content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 300px);
  gap: 20px;
}

/* Regla para la Card Grande (La primera) */
.cmp-bentoGrid .cmp-teaser--featured {
  grid-column: 1 / 3;
  grid-row: 1 / 3;
}

/* Reglas para las Cards Pequeñas */
.cmp-bentoGrid .cmp-teaser--standard {
  grid-column: span 1;
  grid-row: span 1;
}

/* Estilo visual de la Card (Teaser) */
.cmp-bentoGrid .cmp-teaser {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.cmp-bentoGrid .cmp-teaser__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  object-fit: cover;
}

.cmp-bentoGrid .cmp-teaser__content {
  position: relative;
  z-index: 2;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
  padding: 20px;
  color: white;
}

.cmp-bentoGrid .cmp-teaser--tag-blue .cmp-teaser__pretitle {
  background-color: #004a80;
  padding: 4px 12px;
  border-radius: 5px;
  display: inline-block;
}

.que-hay-de-nuevo {
  position: relative;
  padding-block-start: var(--space-10);
  padding-block-end: calc(var(--space-10) + 3.125rem);
  /*background-color: var(--color-white);*/
  overflow-x: clip;
}

.que-hay-de-nuevo::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 100vw;
  height: 34.25rem;
  background-color: var(--Primario-500-Marca, #005288);
  z-index: 0;
}
.que-hay-de-nuevo__no-color::before {
  background-color: var(--color-white);
}

.que-hay-de-nuevo.que-hay-de-nuevo--no-bg {
  padding-block: var(--space-6);
}

.que-hay-de-nuevo--no-bg::before {
  content: none;
}

.que-hay-de-nuevo--show-bg.que-hay-de-nuevo__no-color::before {
  background-color: var(--Primario-500-Marca, #005288);
}

.que-hay-de-nuevo__bands {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 100vw;
  display: flex;
  flex-direction: column;
  z-index: 0;
}

.que-hay-de-nuevo__band {
  width: 100%;
  height: 2rem;
}

.que-hay-de-nuevo__band--light {
  background-color: var(--Celeste-100, #b7d4e6);
}

.que-hay-de-nuevo__band--dark {
  background-color: var(--Celeste-300, #64a2c8);
}

.que-hay-de-nuevo__inner {
  max-width: var(--especiales-max-width-desktop);
  margin-inline: auto;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.que-hay-de-nuevo__header {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.cmp-bentoGrid__icon {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: var(--radius-20);
  background: var(--icon-bg-color);
  padding: var(--space-6);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 4.5625rem;
}

.que-hay-de-nuevo--no-bg .cmp-bentoGrid__icon {
  margin-top: 0;
}

.cmp-bentoGrid__icon::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-color: var(--icon-color);
  -webkit-mask: var(--icon-url) no-repeat center;
  -webkit-mask-size: contain;
  mask: var(--icon-url) no-repeat center;
  mask-size: contain;
}

.cmp-bentoGrid__icon-image {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  height: 3.5rem;
  width: 6rem;
  margin-top: 2.5625rem;
}

.cmp-bentoGrid__icon-image .cmp-image,
.cmp-bentoGrid__icon-image .cmp-image__image {
  height: 100%;
  width: auto;
}

.cmp-bentoGrid--smallicon .cmp-bentoGrid__icon {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 0.795rem;
  padding: 1rem;
  margin-top: 4.5625rem;
}

.que-hay-de-nuevo__title .cmp-title__text {
  margin: 0;
  font-family: var(--font-family-display);
  font-size: var(--fs-whats-new-title);
  line-height: var(--lh-whats-new-title);
  font-weight: var(--fw-bold);
  letter-spacing: -0.01875rem;
  color: var(--color-celeste-50);
}

.que-hay-de-nuevo--no-bg .que-hay-de-nuevo__title .cmp-title__text {
  color:var(--card-title-color, #02045E);
}

.que-hay-de-nuevo__title div {
  display: contents;
}

.que-hay-de-nuevo__description p {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--fs-whats-new-description);
  line-height: var(--lh-whats-new-description);
  font-weight: var(--fw-regular);
  color: var(--color-primario-50);
}

.que-hay-de-nuevo--no-bg .que-hay-de-nuevo__description p {
  color:var(--Neutros-700, #585a5d);
}

.que-hay-de-nuevo__description div {
  display: contents;
}

.que-hay-de-nuevo__link {
  font-family: var(--font-family-display);
  font-size: 1rem;
  line-height: 1.5rem;
  color: var(--color-primario-50);
  text-decoration: underline;
  width: fit-content;
}

.que-hay-de-nuevo__link:focus-visible {
  outline: 0.1875rem solid var(--color-accent);
  outline-offset: 0.25rem;
}

.que-hay-de-nuevo__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

/* Carousel / grid */
.que-hay-de-nuevo__carousel {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.que-hay-de-nuevo__carousel-track > .cmp-container {
  --qhdn-card-w: max(18.75rem, 78vw);
  --qhdn-card-h: 30rem;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: var(--qhdn-card-w);
  gap: var(--space-8);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: calc((100% - var(--qhdn-card-w)) / 2);
  padding-block: 0.25rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.que-hay-de-nuevo__carousel-track::-webkit-scrollbar > .cmp-container {
  display: none;
}

.que-hay-de-nuevo__carousel-track .bentoGridCard.qhdn-card {
  width: 100%;
  scroll-snap-align: center;
}

.que-hay-de-nuevo__carousel-track .bentoGridCard.qhdn-card > article {
  display: block;
  height: 100%;
}

.qhdn-card > article > a,
.qhdn-card > article > .qhdn-card__surface,
.qhdn-card > a,
.qhdn-card > .qhdn-card__surface {
  position: relative;
  border-radius: var(--radius-md);
  padding: var(--space-8);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--space-2);
  min-height: var(--qhdn-card-h);
  text-decoration: none;
  color: inherit;
  box-shadow: var(--shadow-elev-1);
  isolation: isolate;
}

.qhdn-card > article > a:focus-visible,
.qhdn-card > article > .qhdn-card__surface:focus-visible,
.qhdn-card > a:focus-visible {
  outline: 0.1875rem solid var(--color-accent);
  outline-offset: 0.25rem;
}

.bentoGridCard.qhdn-card > article:not(:has(a)) {
  position: relative;
  padding: var(--space-8);
  display: flex;
  flex-direction: column;
  align-content: flex-end;
}

.qhdn-card__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius-md);
  z-index: -2;
}

.qhdn-card__overlay {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  z-index: -1;
}

.qhdn-card__overlay--sm {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.195) 0%, rgba(0, 0, 0, 0.65) 100%);
}

.qhdn-card__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-3);
  width: fit-content;
  min-height: 1.75rem;
  border-radius: var(--radius-sm);
  background-color: var(--color-accent-soft);
  border: var(--border-tag) solid var(--color-brand-turquoise-500);
}

.qhdn-card__tag-icon {
  width: 1rem;
  height: 1rem;
  display: block;
}

.qhdn-card__tag-label {
  font-family: var(--font-family-body);
  font-size: var(--fs-label);
  line-height: var(--lh-label);
  font-weight: var(--fw-bold);
  letter-spacing: -0.0075em;
  color: var(--color-accent-strong);
}

.qhdn-card__title {
  margin: 0;
  font-family: var(--font-family-display);
  color: var(--color-neutros-200);
  display: flex;
  flex-direction: column;
}

.qhdn-card__title--lg {
  font-size: var(--fs-whats-new-card-title-lg);
  line-height: var(--lh-whats-new-card-title-lg);
  letter-spacing: -0.0125rem;
}

.qhdn-card__title--sm {
  font-size: var(--fs-whats-new-card-title-sm);
  line-height: var(--lh-whats-new-card-title-sm);
  font-weight: var(--fw-semibold);
}

/* Slider controls (mobile) */
.que-hay-de-nuevo__carousel-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-6);
}

.qhdn-nav-button {
  --btn-size: 2.5rem;
  width: var(--btn-size);
  height: var(--btn-size);
  border: none;
  border-radius: var(--radius-md);
  background-color: var(--color-white);
  box-shadow: var(--shadow-elev-1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 120ms ease, box-shadow 120ms ease;
}

.qhdn-nav-button img {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
}

.qhdn-nav-button:hover {
  transform: translateY(-0.125rem);
}

.qhdn-nav-button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  transform: none;
}

.qhdn-nav-button:focus-visible {
  outline: 0.1875rem solid var(--color-accent);
  outline-offset: 0.25rem;
}

.qhdn-dots {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}

.qhdn-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: var(--radius-full);
  border: 0.0625rem solid var(--color-aprende-dot-border);
  background-color: transparent;
  cursor: pointer;
  transition: all 150ms ease;
}

.qhdn-dot[aria-current="true"] {
  width: 1.25rem;
  background-color: var(--color-white);
}

.qhdn-dot:focus-visible {
  outline: 0.1875rem solid var(--color-accent);
  outline-offset: 0.25rem;
}

/* CTAs */
.que-hay-de-nuevo__cta-grid > .cmp-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
}

.qhdn-cta {
  text-decoration: none;
  color: inherit;
  background-color: var(--color-search-bg);
  border-radius: var(--radius-md);
  padding: var(--space-6);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.qhdn-cta:focus-visible {
  outline: 0.1875rem solid var(--color-accent);
  outline-offset: 0.25rem;
}

.qhdn-cta__title {
  margin: 0;
  font-family: var(--font-family-display);
  font-size: var(--fs-whats-new-cta-title);
  line-height: var(--lh-whats-new-cta-title);
  font-weight: var(--fw-bold);
  letter-spacing: -0.009375rem;
  color: var(--color-celeste-900);
}

.qhdn-cta__body {
  display: flex;
  align-items: flex-end;
  gap: var(--space-4);
  justify-content: space-between;
}

.qhdn-cta__description, .qhdn-cta__body p {
  margin: 0;
  font-family: var(--font-family-body);
  font-size: var(--fs-whats-new-cta-body);
  line-height: var(--lh-whats-new-cta-body);
  font-weight: 500;
  color: var(--color-secondary);
  flex: 1;
}

.qhdn-cta__icon {
  width: 2.75rem;
  height: 2.75rem;
  padding: var(--space-2);
  border-radius: var(--radius-md);
  background-color: var(--color-accent-soft, #e7f8fa);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
}

.qhdn-cta__icon img {
  width: 1.5rem;
  height: 1.5rem;
  display: block;
}

@media (min-width: 64rem) {
  .que-hay-de-nuevo {
    padding-block-start: var(--space-7);
    padding-block-end: var(--space-7);  
  }

  .que-hay-de-nuevo::before {
    top: 0;
    height: 30.6875rem;
  }

  .que-hay-de-nuevo.que-hay-de-nuevo--no-bg {
    padding-block: var(--space-11-5);
  }

  .que-hay-de-nuevo__carousel-nav {
    display: none;
  }

  .que-hay-de-nuevo__carousel-track > .cmp-container {
    grid-auto-flow: initial;
    overflow: visible;
    padding-inline: 0;
    scroll-padding-inline: 0;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: 17.5rem 17.5rem;
    column-gap: var(--space-4);
    row-gap: 0.875rem;
  }

  .que-hay-de-nuevo__carousel-track .bentoGridCard.qhdn-card {
    scroll-snap-align: unset;
  }

  .qhdn-card > article > a,
  .qhdn-card > article > .qhdn-card__surface,
  .qhdn-card > a,
  .qhdn-card > .qhdn-card__surface {
    min-height: unset;
  }

  .qhdn-card--feature > article > a,
  .qhdn-card--feature > article > .qhdn-card__surface,
  .qhdn-card--feature > a,
  .qhdn-card--feature > .qhdn-card__surface {
    grid-column: 1;
    grid-row: 1 / span 2;
    padding: var(--space-8);
    height: 36rem;
  }

  .qhdn-card--feature {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .qhdn-card--sm > article > a,
  .qhdn-card--sm > article > .qhdn-card__surface,
  .qhdn-card--sm > a,
  .qhdn-card--sm > .qhdn-card__surface {
    height: 17.5rem;
    padding: var(--space-8);
  }

  .qhdn-card--sm:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
  }

  .qhdn-card--sm:nth-child(3) {
    grid-column: 3;
    grid-row: 1;
  }

  .qhdn-card--sm:nth-child(4) {
    grid-column: 2;
    grid-row: 2;
  }

  .qhdn-card--sm:nth-child(5) {
    grid-column: 3;
    grid-row: 2;
  }

  .qhdn-card__overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
  }

  .que-hay-de-nuevo__cta-grid > .cmp-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-4);
  }

  .qhdn-cta__icon {
    background-color: var(--color-accent-soft, #e7f8fa);
  }
}

@media (prefers-reduced-motion: reduce) {
  .que-hay-de-nuevo__carousel-track > .cmp-container {
    scroll-behavior: auto;
  }
}

/* --------------------------------------------------------------------------
   Cards Row variant (Style System: cmp-bentoGrid--cardsRow)
   -------------------------------------------------------------------------- */

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo {
  background-color: transparent;
  /*padding: var(--space-6);*/
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo::before {
  content: none;
  display: none;
}

.que-hay-de-nuevo--no-bg::before {
  content: none;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__header {
  gap: var(--space-2);
  max-width: 100%;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__title .cmp-title__text {
  color: #02045e;
  font-family: var(--Heading-Mvil-H3-fontFamily);
  font-size: var(--Heading-Mvil-H3-fontSize);
  font-style: normal;
  font-weight: var(--Weights-SemiBold, 600);
  line-height: var(--Heading-Mvil-H3-lineHeight);
  letter-spacing: var(--Heading-Mvil-H3-letterSpacing);
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__description.cq-Editable-dom {
  min-height: 3rem;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__description p {
  margin: 0;
  color: #585a5d;
  font-family: var(--Body-Body-2-fontFamily);
  font-size: var(--Body-Body-2-fontSize);
  font-style: normal;
  font-weight: var(--Weights-Regular, 400);
  line-height: var(--Body-Body-2-lineHeight);
  letter-spacing: var(--Body-Body-2-letterSpacing);
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__link {
  color: var(--Primario-500-Marca, #005288);
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__carousel-track > .cmp-container {
  --qhdn-card-w: 18rem;
  --qhdn-card-h: 17.5rem;
  gap: 1rem;
  padding-block: 0;
}

.cmp-bentoGrid--cardsRow .qhdn-card > article > a,
.cmp-bentoGrid--cardsRow .qhdn-card > article > .qhdn-card__surface,
.cmp-bentoGrid--cardsRow .qhdn-card > a,
.cmp-bentoGrid--cardsRow .qhdn-card > .qhdn-card__surface {
  min-height: var(--qhdn-card-h);
  padding: 2rem;
  border-radius: 1rem;
}

.cmp-bentoGrid--cardsRow .qhdn-card__tag {
  padding: calc(var(--space-2) / 2) var(--space-2);
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo__cta-grid {
  display: none;
}

.cmp-bentoGrid--cardsRow .new.cq-Editable-dom:nth-of-type(n + 5) {
  display: none;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo[data-card-count="1"] {
  --card-count: 1;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo[data-card-count="2"] {
  --card-count: 2;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo[data-card-count="3"] {
  --card-count: 3;
}

.cmp-bentoGrid--cardsRow .que-hay-de-nuevo[data-card-count="4"] {
  --card-count: 4;
}

.cmp-bentoGrid--cardsRow .qhdn-card__title {
  font-family: var(--Heading-Mvil-H5-fontFamily);
  font-size: var(--Heading-Mvil-H5-fontSize);
  line-height: var(--Heading-Mvil-H5-lineHeight);
  letter-spacing: var(--Heading-Mvil-H5-letterSpacing);
  font-style: normal;
  font-weight: var(--Weights-SemiBold, 600);
}

@media (min-width: 64rem) {
  .cmp-bentoGrid--cardsRow .que-hay-de-nuevo {
    padding-block-start: var(--space-7);
    padding-block-end: var(--space-7);
  }

  .cmp-bentoGrid--cardsRow .que-hay-de-nuevo__title .cmp-title__text {
    font-family: var(--Heading-Escritorio-H3-fontFamily);
    font-size: var(--Heading-Escritorio-H3-fontSize);
    line-height: var(--Heading-Escritorio-H3-lineHeight);
    letter-spacing: var(--Heading-Escritorio-H3-letterSpacing);
  }

  .cmp-bentoGrid--cardsRow .que-hay-de-nuevo__carousel-track > .cmp-container {
    --qhdn-card-w: auto;
    --qhdn-card-h: 17.5rem;
    grid-auto-flow: initial;
    overflow: visible;
    padding-inline: 0;
    scroll-padding-inline: 0;
    grid-template-columns: repeat(var(--card-count, 4), minmax(0, 1fr));
    grid-template-rows: 1fr;
    column-gap: 0.875rem;
    row-gap: 0;
  }

  .cmp-bentoGrid--cardsRow .que-hay-de-nuevo__carousel-track .bentoGridCard.qhdn-card {
    scroll-snap-align: unset;
    grid-column: auto;
    grid-row: auto;
  }

  .cmp-bentoGrid--cardsRow .qhdn-card--feature,
  .cmp-bentoGrid--cardsRow .qhdn-card--sm {
    grid-column: auto;
    grid-row: auto;
  }

  .cmp-bentoGrid--cardsRow .qhdn-card--feature > article > a,
  .cmp-bentoGrid--cardsRow .qhdn-card--feature > article > .qhdn-card__surface,
  .cmp-bentoGrid--cardsRow .qhdn-card--feature > a,
  .cmp-bentoGrid--cardsRow .qhdn-card--feature > .qhdn-card__surface,
  .cmp-bentoGrid--cardsRow .qhdn-card--sm > article > a,
  .cmp-bentoGrid--cardsRow .qhdn-card--sm > article > .qhdn-card__surface,
  .cmp-bentoGrid--cardsRow .qhdn-card--sm > a,
  .cmp-bentoGrid--cardsRow .qhdn-card--sm > .qhdn-card__surface {
    height: 17.5rem;
    min-height: 17.5rem;
    padding: 2rem;
    border-radius: 1rem;
  }

  .cmp-bentoGrid--cardsRow .qhdn-card__title {
    color: var(--color-white);
    font-family: var(--Heading-Escritorio-H5-fontFamily);
    font-size: var(--Heading-Escritorio-H5-fontSize);
    line-height: var(--Heading-Escritorio-H5-lineHeight);
    letter-spacing: var(--Heading-Escritorio-H5-letterSpacing);
  }
}