/* Approved portrait presentation: a single sharp photo fills the card. */
.archive-carta--reel .social-menu-card__media::before {
  inset: 0;
  filter: none;
  background-size: cover;
  background-position: center;
  transform: scale(1.05);
  animation: aires-reel-float 7s ease-in-out infinite alternate;
  animation-play-state: paused;
}

.archive-carta--reel .social-menu-card__media img {
  opacity: 0;
  animation: none;
}

.archive-carta--reel .social-menu-card__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 0;
  object-fit: cover !important;
}

.archive-carta--reel .is-reel-visible .social-menu-card__media::before {
  animation-play-state: running;
}

.archive-carta--reel.is-reel-paused .social-menu-card__media::before,
.archive-carta--reel.is-reel-hidden .social-menu-card__media::before {
  animation-play-state: paused;
}
.archive-carta--reel .social-menu-card__shade {
  background: linear-gradient(0deg, rgba(0,0,0,.95), rgba(0,0,0,.45) 24%, transparent 48%);
}

.archive-carta--reel .social-menu-card__content {
  width: auto;
  max-height: none;
  overflow: visible;
  scrollbar-width: none;
}

.archive-carta--reel .social-menu-card__options {
  flex-wrap: wrap;
  overflow: visible;
  padding-right: 0;
  scroll-snap-type: none;
}

.archive-carta--reel .social-menu-option {
  min-width: 0;
  max-width: 100% !important;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.3;
}

.reel-motion-toggle {
  position: fixed;
  top: 132px;
  right: 16px;
  z-index: 110;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  background: rgba(8,8,8,.85);
  color: white;
  font: inherit;
  font-size: 12px;
  padding: 9px 14px;
  cursor: pointer;
}

@keyframes aires-reel-float {
  from { transform: translateY(4px) rotate(-.4deg) scale(1.05); }
  to { transform: translateY(-4px) rotate(.4deg) scale(1.08); }
}

@media (min-width: 768px) {
  main.archive-carta--reel.dark .carta-items-container .social-menu-card {
    height: auto;
    aspect-ratio: 9 / 16;
    min-height: calc(var(--reel-content-height, 220px) + 48px);
  }

  .archive-carta--reel .social-menu-card__content { left: 0; right: 0; }
}

@media (max-width: 767px) {
  body.admin-bar:has(.archive-carta--reel) header#main-header { top: 0; }

  main.archive-carta--reel.dark .carta-items-container .social-menu-card {
    min-height: max(calc(100dvh - 68px), calc(var(--reel-content-height, 220px) + 100px));
  }

  .archive-carta--reel .social-menu-card__media::before {
    inset: 72px 8px calc(var(--reel-content-height, 220px) + 40px) 8px;
    background-size: contain;
    background-repeat: no-repeat;
    transform: scale(.98);
    animation-name: aires-reel-mobile-float;
  }

  .archive-carta--reel .social-menu-card__media video {
    top: 72px;
    bottom: auto;
    left: 8px;
    width: calc(100% - 16px);
    height: calc(100% - 112px - var(--reel-content-height, 220px));
    min-height: 0;
    object-fit: contain !important;
  }

  .archive-carta--reel .social-menu-card__shade {
    background: linear-gradient(0deg, rgba(0,0,0,.65), transparent 28%);
  }
}

@keyframes aires-reel-mobile-float {
  from { transform: translateY(3px) scale(.98); }
  to { transform: translateY(-3px) scale(.99); }
}

/* First outpainting trial: original product pixels embedded over extended marble. */
.archive-carta--reel .has-reel-portrait .social-menu-card__media::before {
  inset: 0;
  background-size: cover;
  background-repeat: no-repeat;
  transform: scale(1.02);
  animation-name: aires-reel-portrait-float;
}

@keyframes aires-reel-portrait-float {
  from { transform: translateY(3px) scale(1.02); }
  to { transform: translateY(-3px) scale(1.03); }
}

.archive-carta--reel .has-reel-light-background .social-menu-card__shade {
  background: linear-gradient(0deg, rgba(0,0,0,.94), rgba(0,0,0,.8) 16%, transparent 36%);
}

.archive-carta--reel .has-reel-seamless-original .social-menu-card__media::before {
  inset: -3px 0;
  background-size: 100% 100%;
  transform: translateY(0);
  animation-name: aires-reel-seamless-float;
}

@keyframes aires-reel-seamless-float {
  from { transform: translateY(2px); }
  to { transform: translateY(-2px); }
}

@media (prefers-reduced-motion: reduce) {
  .archive-carta--reel .social-menu-card__media::before { animation: none; }
  .reel-motion-toggle { display: none; }
}


/* Paso vertical animado por JS: sin snap mientras dura, para que no corrija cada fotograma. */
@media (max-width: 767px) {
  html.is-carta-card-scrolling:has(body.page-template-template-carta) { scroll-snap-type: none; }
}

/* Entrada de los textos de cada producto al llegar, con la misma curva que los efectos de la web.
   Se usa «translate» para no pisar transformaciones propias; solo con JS y sin movimiento reducido. */
@media (max-width: 767px) and (prefers-reduced-motion: no-preference) {
  .archive-carta--reel.is-reel-text-on .social-menu-card__content > :not(.social-menu-card__details),
  .archive-carta--reel.is-reel-text-on .social-menu-card .product-badget {
    opacity: 0;
    translate: 0 22px;
    transition: opacity .2s ease, translate .2s ease;
  }
  .archive-carta--reel.is-reel-text-on .social-menu-card__content > .social-menu-card__description {
    transition: opacity .2s ease, translate .2s ease, height .38s ease, color .2s ease;
  }
  .archive-carta--reel.is-reel-text-on .is-current .social-menu-card__content > :not(.social-menu-card__details),
  .archive-carta--reel.is-reel-text-on .is-current .product-badget {
    opacity: 1;
    translate: none;
    transition: opacity .6s cubic-bezier(.23, 1, .32, 1) var(--reel-text-d, 0ms), translate .7s cubic-bezier(.23, 1, .32, 1) var(--reel-text-d, 0ms);
  }
  .archive-carta--reel.is-reel-text-on .is-current .social-menu-card__content > .social-menu-card__description {
    transition: opacity .6s cubic-bezier(.23, 1, .32, 1) var(--reel-text-d, 0ms), translate .7s cubic-bezier(.23, 1, .32, 1) var(--reel-text-d, 0ms), height .38s ease, color .2s ease;
  }
  .archive-carta--reel .social-menu-card .product-badget { --reel-text-d: 60ms; }
  .archive-carta--reel .social-menu-card__content > :nth-child(1) { --reel-text-d: 120ms; }
  .archive-carta--reel .social-menu-card__content > :nth-child(2) { --reel-text-d: 180ms; }
  .archive-carta--reel .social-menu-card__content > :nth-child(3) { --reel-text-d: 240ms; }
  .archive-carta--reel .social-menu-card__content > :nth-child(4) { --reel-text-d: 300ms; }
  .archive-carta--reel .social-menu-card__content > :nth-child(n+5) { --reel-text-d: 360ms; }
}

/* Distintivo móvil: algo más grande y a 10 px de la barra de categorías (la tarjeta empieza justo debajo). */
@media (max-width: 767px) {
  .archive-carta--reel .social-menu-card > .product-badget {
    top: 10px;
    padding: 8px 14px;
    font-size: 14px;
  }
}
