

/* Imagen de respaldo: primer fotograma REAL del vídeo Apertura.mp4.

   Aplicación inicial a PC; adaptación móvil añadida debajo. */

@media (min-width: 1200px) {

  body.home .m-home-hero__media {

    background-color: #24221f !important;

    background-image: url('/wp-content/uploads/2026/10/lonjeba_apertura_portada.webp') !important;

    background-position: center center !important;

    background-size: cover !important;

    background-repeat: no-repeat !important;

  }

  /* Ocultar visualmente la fotografía antigua desde el primer render,

     no esperar a que se reproduzca el primer vídeo. */

  body.home .m-home-hero__media > img,

  body.home .m-home-hero__media > picture,

  body.home .m-home-hero__media > picture img {

    visibility: hidden !important;

  }

}

/* Portada idéntica al primer fotograma en móvil, sin mostrar el ADN anterior. */

@media (max-width: 1199px) {

  body.home .m-home-hero__media {

    background-color: #211915 !important;

    background-image: url('/wp-content/uploads/2026/10/lonjeba_apertura_portada.webp') !important;

    background-size: cover !important;

    background-position: center center !important;

    background-repeat: no-repeat !important;

  }

  body.home .m-home-hero__media > img,

  body.home .m-home-hero__media > picture,

  body.home .m-home-hero__media > picture img {

    visibility: hidden !important;

  }

}

body.home .m-home-hero__frame { position: relative; isolation: isolate; }

body.home .m-home-hero__media { overflow: hidden !important; }

body.home .m-home-hero__media > video.lj-v15-video {

    position: absolute !important;

    inset: 0 !important;

    display: block !important;

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    object-position: center center !important;

    opacity: 0;

    visibility: hidden;

    pointer-events: none !important;

    transition: none !important;

    background: #24221f;

}

/* La portada queda detrás del vídeo y reaparece si no puede reproducirse. */

@media (prefers-reduced-motion: reduce) {

    body.home .m-home-hero__media > video.lj-v15-video { display: none !important; }

}




@media (min-width: 1200px) {

  /* Mantener #masthead como hijo de BODY. Al salir del flujo, el hero sube

     automáticamente sin márgenes negativos acumulativos ni huecos blancos. */

  html.lj-premium-v30 body.home { position: relative !important; }

  html.lj-premium-v30 body.home > #masthead {

    position: absolute !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    width: 100% !important;

    height: auto !important;

    z-index: 1000 !important;

    margin: 0 !important;

    border: 0 !important;

    background: transparent !important;

    background-image: none !important;

    box-shadow: none !important;

    backdrop-filter: none !important;

    -webkit-backdrop-filter: none !important;

    transform: none !important;

    overflow: visible !important;

  }

  html.lj-premium-v30 body.home > #masthead::before,

  html.lj-premium-v30 body.home > #masthead::after {

    display: none !important; content: none !important;

  }

  html.lj-premium-v30 body.home > #masthead .header-inner {

    width: 100% !important;

    max-width: 100% !important;

    box-sizing: border-box !important;

    min-height: 78px !important;

    height: auto !important;

    padding: 12px clamp(26px, 3vw, 52px) !important;

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    justify-content: space-between !important;

    gap: clamp(10px, 1.2vw, 20px) !important;

    margin: 0 !important;

    border: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    overflow: visible !important;

  }

  html.lj-premium-v30 body.home #masthead .header-left,

  html.lj-premium-v30 body.home #masthead .header-right {

    flex: 0 0 auto !important;

    min-width: 0 !important;

  }

  html.lj-premium-v30 body.home #masthead .header-center {

    flex: 1 1 auto !important;

    min-width: 0 !important;

    margin: 0 !important;

  }

  html.lj-premium-v30 body.home #masthead nav,

  html.lj-premium-v30 body.home #masthead .primary-navigation {

    width: 100% !important;

    min-width: 0 !important;

    background: transparent !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu {

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    justify-content: center !important;

    gap: clamp(8px, 1.1vw, 16.5px) !important; /* +10 % de separación */

    margin: 0 !important;

    padding: 0 !important;

    width: 100% !important;

    list-style: none !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li {

    white-space: nowrap !important;

    flex: 0 0 auto !important;

    margin: 0 !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(14.3px, 1.177vw, 17.6px) !important; /* +10 % sin cambiar estructura */

    font-weight: 650 !important;

    letter-spacing: 0 !important;

    padding: 9px 3px !important;

    white-space: nowrap !important;

    color: #fff !important;

    -webkit-text-fill-color: #fff !important;

    text-shadow: 0 2px 7px rgba(0,0,0,.58) !important;

  }

  /* Logo completamente visible y con margen real a ambos lados. */

  html.lj-premium-v30 body.home #masthead .logo-link { display: flex !important; align-items: center !important; }

  html.lj-premium-v30 body.home #masthead .site-logo-svg {

    display: block !important;

    width: clamp(150px, 12.6vw, 180px) !important;

    max-width: 180px !important;

    height: auto !important;

    object-fit: contain !important;

    filter: brightness(0) invert(1) !important;

    opacity: 1 !important;

  }

  html.lj-premium-v30 body.home #masthead .header-right img {

    filter: brightness(0) invert(1) !important;

    opacity: 1 !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a[href*="test-de-longevidad"] {

    border: 1.5px solid #fff !important;

    border-radius: 12px !important;

    padding: 8px 12px !important;

    background: transparent !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a[href="/"]::before {

    background-color: #fff !important;

  }

  html.lj-premium-v30 body.home #masthead .sub-menu {

    background: rgba(28,27,25,.98) !important;

    color: #fff !important;

  }

  html.lj-premium-v30 body.home #masthead .sub-menu a {

    color: #fff !important; -webkit-text-fill-color: #fff !important;

  }

  @media (max-width: 1399px) {

    html.lj-premium-v30 body.home #masthead .header-inner {

      padding-left: 24px !important; padding-right: 24px !important;

      gap: 10px !important;

    }

    html.lj-premium-v30 body.home #masthead #primary-menu { gap: 8px !important; }

    html.lj-premium-v30 body.home #masthead #primary-menu > li > a {

      font-size: 14px !important; padding-left: 2px !important; padding-right: 2px !important;

    }

    html.lj-premium-v30 body.home #masthead .site-logo-svg { width: 150px !important; }

  }



  /* Sin espacios blancos reservados encima del vídeo. */

  html.lj-premium-v30 body.home > main#content,

  html.lj-premium-v30 body.home > #content {

    margin-top: 0 !important;

    padding-top: 0 !important;

  }

  html.lj-premium-v30 body.home .m-home-hero {

    position: relative !important;

    margin-top: 0 !important;

    padding-top: 0 !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame {

    position: relative !important;

    isolation: isolate !important;

    box-sizing: border-box !important;

    height: clamp(440px, 37vw, 560px) !important;

    min-height: 440px !important;

    max-height: 560px !important;

    overflow: hidden !important;

    margin: 0 !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__media {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    z-index: 0 !important;

    overflow: hidden !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__media > img,

  html.lj-premium-v30 body.home .m-home-hero__media > video {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

  }

  /* Quitar la máscara anterior que producía bandas y doble contraste. */

  html.lj-premium-v30 body.home .m-home-hero__frame::before,

  html.lj-premium-v30 body.home .m-home-hero__frame::after {

    content: none !important;

    display: none !important;

  }

  /* Una sola máscara continua: contraste arriba, lectura a la izquierda

     y legibilidad blanca abajo. SIN barra gris/negra rectangular. */

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-v30-scrim {

    position: absolute !important;

    inset: 0 !important;

    pointer-events: none !important;

    z-index: 8 !important;

    background:

      linear-gradient(to bottom,rgba(0,0,0,.45) 0%,rgba(0,0,0,.17) 13%,transparent 31%),

      linear-gradient(to top,rgba(0,0,0,.68) 0%,rgba(0,0,0,.25) 85px,transparent 155px),

      linear-gradient(to right,rgba(0,0,0,.60) 0%,rgba(0,0,0,.36) 37%,transparent 84%) !important;

  }

  /* El texto se centra dentro de la zona útil entre menú y canales. */

  html.lj-premium-v30 body.home .m-home-hero__overlay {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    min-height: 0 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    box-sizing: border-box !important;

    margin: 0 !important;

    padding: 86px 0 82px !important;

    background: transparent !important;

    background-image: none !important;

    z-index: 12 !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__overlay > .u-container {

    width: 100% !important;

    max-width: 1520px !important;

    margin: 0 auto !important;

    box-sizing: border-box !important;

    padding: 0 clamp(36px, 4.2vw, 76px) !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__content {

    margin: 0 !important;

    padding: 0 !important;

    max-width: 980px !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__overlay a { pointer-events: auto !important; }



  /* Franja comercial REAL en el interior, sin duplicados. */

  html.lj-premium-v30 body.home .m-home-hero__frame > section.lj-sellos {

    position: absolute !important;

    left: 0 !important; right: 0 !important; bottom: 0 !important;

    top: auto !important;

    width: 100% !important;

    height: 68px !important;

    min-height: 0 !important;

    box-sizing: border-box !important;

    margin: 0 !important;

    padding: 7px 0 !important;

    z-index: 30 !important;

    background: transparent !important;

    background-image: none !important;

    border: 0 !important;

    box-shadow: none !important;

    overflow: visible !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos > .lj-sellos__in {

    box-sizing: border-box !important;

    width: calc(100% - 72px) !important;

    max-width: 1510px !important;

    height: 100% !important;

    min-height: 0 !important;

    margin: 0 auto !important;

    padding: 0 !important;

    display: flex !important;

    flex-wrap: nowrap !important;

    justify-content: space-between !important;

    align-items: center !important;

    gap: 14px !important;

    overflow: visible !important;

    animation: none !important;

    background: transparent !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-sello {

    display: inline-flex !important;

    align-items: center !important;

    gap: 8px !important;

    margin: 0 !important;

    flex: 0 1 auto !important;

    min-width: 0 !important;

    white-space: normal !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(11.5px, .94vw, 14px) !important;

    font-weight: 650 !important;

    line-height: 1.3 !important;

    color: #fff !important;

    text-shadow: 0 1px 6px rgba(0,0,0,.83) !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-sello span {

    color: #fff !important;

    font-family: inherit !important;

    font-size: inherit !important;

    font-weight: inherit !important;

    line-height: inherit !important;

    text-shadow: inherit !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-ico,

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-ico * {

    stroke: #fff !important;

    fill: none !important;

  }

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-sello__eci {

    filter: brightness(0) invert(1) !important;

    opacity: 1 !important;

    width: auto !important;

    height: 21px !important;

    max-width: 135px !important;

  }

  /* El script anterior de HOME duplica los 4 sellos para el ticker móvil.

     En PC estas COPIAS no deben renderizarse nunca. */

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-sellos .lj-sello--dup {

    display: none !important;

    visibility: hidden !important;

  }

  /* Línea blanca fina ENTRE el vídeo y los canales, sin crear una franja. */

  html.lj-premium-v30 body.home .m-home-hero__frame > .lj-v31-separator {

    position: absolute !important;

    z-index: 36 !important;

    left: 0 !important;

    right: 0 !important;

    bottom: 68px !important;

    width: 100% !important;

    height: 1px !important;

    background: linear-gradient(

      90deg,

      rgba(255,255,255,.18) 0%,

      rgba(255,255,255,.72) 8%,

      rgba(255,255,255,.88) 50%,

      rgba(255,255,255,.72) 92%,

      rgba(255,255,255,.18) 100%

    ) !important;

    box-shadow: 0 0 10px rgba(255,255,255,.10),

                0 1px 0 rgba(255,255,255,.12) !important;

    pointer-events: none !important;

  }

}



/* ================================================================

   LONJEBA MOBILE EDITORIAL V3.5 · SOLO TABLET Y MOVIL (<1200px)

   Mantener SIN CAMBIOS la cabecera de escritorio ya aprobada.

   Vídeo panorámico + panel marfil + ticker fino continuo.

   ================================================================ */

@media (max-width: 1199px) {

  html.lj-premium-v30 body.home .m-home-hero {

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    background: #f6f1ea !important;

    overflow: visible !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__frame:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    position: relative !important;

    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;

    height: auto !important;

    min-height: 0 !important;

    max-height: none !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: visible !important;

    background: transparent !important;

    isolation: isolate !important;

  }



  /* Mantener completo el encuadre panorámico del vídeo 16:9. */

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__media:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    position: relative !important;

    inset: auto !important;

    flex: none !important;

    display: block !important;

    width: 100% !important;

    height: auto !important;

    aspect-ratio: 16 / 9 !important;

    min-height: 0 !important;

    max-height: none !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: hidden !important;

    background-color: #271f1b !important;

    background-position: center center !important;

    background-size: cover !important;

  }



  /* Degradado suave para fundir la película con el contenido editorial. */

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__media::after {

    content: '' !important;

    display: block !important;

    position: absolute !important;

    left: 0 !important;

    right: 0 !important;

    bottom: 0 !important;

    height: min(78px, 38%) !important;

    z-index: 7 !important;

    pointer-events: none !important;

    background: linear-gradient(180deg,

      rgba(39,31,27,0) 0%,

      rgba(39,31,27,.18) 44%,

      #f6f1ea 100%) !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__media > video.lj-v15-video {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    object-position: center center !important;

  }



  /* Bloque editorial solapado 28px sobre la transición del vídeo. */

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__overlay:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    position: relative !important;

    inset: auto !important;

    display: block !important;

    flex: none !important;

    width: 100% !important;

    height: auto !important;

    min-height: 0 !important;

    max-height: none !important;

    margin: -28px 0 0 !important;

    padding: 0 0 8px !important;

    background: transparent !important;

    overflow: visible !important;

    color: #2f2723 !important;

    z-index: 10 !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__overlay > .u-container:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    box-sizing: border-box !important;

    width: 100% !important;

    max-width: 680px !important;

    margin: 0 auto !important;

    padding: 0 14px !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__content {

    box-sizing: border-box !important;

    max-width: 100% !important;

    margin: 0 !important;

    padding: 22px 18px 4px !important;

    background: linear-gradient(180deg,#f8f3ed 0%,#f2ebe2 100%) !important;

    border-radius: 22px 22px 0 0 !important;

    box-shadow: 0 -10px 26px rgba(34,25,20,.06),

                0 8px 24px rgba(34,25,20,.03) !important;

    color: #2f2723 !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__tagline:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    color: #896746 !important; /* V3.5: antetítulo un 10 % más intenso (antes #98734e) */

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(10px,2.7vw,12px) !important;

    font-weight: 780 !important;

    letter-spacing: .16em !important;

    line-height: 1.4 !important;

    margin: 0 0 10px !important;

    text-transform: uppercase !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__title:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    color: #2f2723 !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(31px,8vw,40px) !important;

    line-height: 1.07 !important;

    font-weight: 740 !important;

    letter-spacing: -.04em !important;

    text-wrap: balance !important;

    margin: 0 0 12px !important;

    padding: 0 !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__subtitle--overlay:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    display: block !important;

    visibility: visible !important;

    opacity: 1 !important;

    position: static !important;

    max-width: 100% !important;

    color: #564b43 !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(14px,3.9vw,16px) !important;

    font-weight: 470 !important;

    line-height: 1.45 !important;

    margin: 0 !important;

    padding: 0 !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__ctas--overlay:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    display: flex !important;

    visibility: visible !important;

    opacity: 1 !important;

    position: static !important;

    flex-wrap: nowrap !important;

    align-items: stretch !important;

    width: 100% !important;

    margin: 29px 0 0 !important;

    padding: 0 !important;

    gap: 10px !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__ctas--overlay > .btn:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    flex: 1 1 0 !important;

    min-width: 0 !important;

    min-height: 46px !important;

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    box-sizing: border-box !important;

    border-radius: 11px !important;

    padding: 11px 7px !important;

    margin: 0 !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(11.5px,3.1vw,14px) !important;

    font-weight: 740 !important;

    line-height: 1.25 !important;

    text-align: center !important;

    white-space: nowrap !important;

    text-decoration: none !important;

    text-shadow: none !important;

  }



  /* V3.5: botón principal (test) oscuro con texto blanco para que destaque. */

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__ctas--overlay > .btn-white:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    background: #2f2723 !important;

    border: 1px solid #2f2723 !important;

    color: #fff !important;

    -webkit-text-fill-color: #fff !important;

    box-shadow: 0 8px 18px rgba(47,39,35,.22) !important;

  }



  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__ctas--overlay > .btn-ghost-white:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    background: rgba(255,255,255,.55) !important;

    border: 1px solid rgba(139,118,100,.55) !important;

    color: #4d4138 !important;

  }



  /* El texto y botones 'below' del tema no deben repetirse. */

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__below:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    display: none !important;

    height: 0 !important;

    padding: 0 !important;

    margin: 0 !important;

  }



  /* Ticker: banda única y ligera, justo debajo del panel editorial. */

  html.lj-premium-v30 body.home #content > section.lj-sellos:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    position: relative !important;

    display: block !important;

    width: 100% !important;

    overflow: hidden !important;

    background: linear-gradient(180deg,#f2ebe2 0%,#eee5db 100%) !important;

    border: none !important;

    border-top: 1px solid rgba(170,145,119,.24) !important;

    border-bottom: 1px solid rgba(170,145,119,.09) !important;

    box-sizing: border-box !important;

    padding: 11px 0 12px !important;

    margin: -1px 0 0 !important;

    height: auto !important;

    min-height: 0 !important;

  }



  /* V3.5: ticker más lento (32 s) para leerlo con calma. */

  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sellos__in:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    position: relative !important;

    display: flex !important;

    flex-wrap: nowrap !important;

    align-items: center !important;

    justify-content: flex-start !important;

    gap: 24px !important;

    width: max-content !important;

    min-width: max-content !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: visible !important;

    height: auto !important;

    transform: translateX(0);

    animation: lj-mobile-sellos-v34 32s linear infinite !important;

    transition: none !important;

    will-change: transform;

  }



  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sello:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: flex-start !important;

    flex: 0 0 auto !important;

    width: auto !important;

    min-width: auto !important;

    margin: 0 !important;

    padding: 0 !important;

    gap: 8px !important;

    white-space: nowrap !important;

    font-family: Manrope, Inter, sans-serif !important;

    font-size: clamp(11px,2.9vw,12.5px) !important;

    line-height: 1.25 !important;

    font-weight: 700 !important;

    color: #58493d !important;

    animation: none !important;

  }



  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sello span {

    color: #58493d !important;

    text-shadow: none !important;

  }



  /* Las cuatro copias accesiblemente ocultas completan el bucle infinito. */

  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sello--dup:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    display: inline-flex !important;

    visibility: visible !important;

  }



  html.lj-premium-v30 body.home #content > .lj-sellos .lj-ico {

    color: #8b7664 !important;

    stroke: currentColor !important;

    fill: none !important;

    flex: 0 0 16px !important;

    width: 16px !important;

    height: 16px !important;

  }



  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sello__eci {

    filter: brightness(0) saturate(0) opacity(.72) !important;

    height: 15px !important;

    max-width: 28px !important;

    width: auto !important;

    flex: none !important;

  }



  html.lj-premium-v30 body.home .lj-gama {

    margin-top: 0 !important;

  }

}



@media (max-width: 420px) {

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__content {

    padding: 20px 16px 4px !important;

  }

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__title:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    font-size: 29px !important;

  }

}



/* Repetición sin salto: 4 originales + 4 clones, gap 24px. */

@keyframes lj-mobile-sellos-v34 {

  from { transform: translateX(0); }

  to { transform: translateX(calc(-50% - 12px)); }

}



@media (prefers-reduced-motion: reduce) {

  html.lj-premium-v30 body.home #content > .lj-sellos .lj-sellos__in:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    animation: none !important;

    padding: 0 18px !important;

  }

}



@media (min-width: 768px) and (max-width: 1199px) {

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__media:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    max-height: 420px !important;

  }

  html.lj-premium-v30 body.home .m-home-hero .m-home-hero__overlay > .u-container:not(#m1):not(#m2):not(#m3):not(#m4):not(#m5):not(#m6):not(#m7):not(#m8) {

    max-width: 760px !important;

  }

}





/* Menú de escritorio: contorno champán y fondo oscuro al interactuar. */

@media (min-width: 1200px) {

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a {

    background: transparent !important;

    border-radius: 6px !important;

    box-shadow: none !important;

    transition: background-color .18s ease, box-shadow .18s ease !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a:hover,

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a:focus-visible {

    background: rgba(25, 21, 17, .62) !important;

    color: #fff !important;

    -webkit-text-fill-color: #fff !important;

    box-shadow: inset 0 0 0 1px rgba(220, 194, 157, .92),

                0 3px 12px rgba(0, 0, 0, .12) !important;

    text-shadow: 0 1px 3px rgba(0, 0, 0, .65) !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a:focus-visible {

    outline: 2px solid #dcc29d !important;

    outline-offset: 3px !important;

  }

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a[href*="test-de-longevidad"] {

    border-radius: 12px !important;

  }

}

@media (prefers-reduced-motion: reduce) {

  html.lj-premium-v30 body.home #masthead #primary-menu > li > a {

    transition: none !important;

  }

}



/* V3.5: frase clave del subtítulo en su propia línea, con un subrayado

   tipo rotulador champán, suave y que no se confunde con un enlace. */

html.lj-premium-v30 body.home .lj-sub-claim {

  display: block !important;

  font-weight: 650 !important;

  color: inherit !important;

  margin: 0 0 4px !important;

}

html.lj-premium-v30 body.home .lj-sub-mark {

  background-image: linear-gradient(transparent 50%, rgba(220,194,157,.55) 60%, rgba(220,194,157,.55) 90%, transparent 90%) !important;

  padding: 0 2px !important;

  -webkit-box-decoration-break: clone;

  box-decoration-break: clone;

}

@media (max-width: 1199px) {

  html.lj-premium-v30 body.home .lj-sub-claim { color: #2f2723 !important; }

  html.lj-premium-v30 body.home .lj-sub-mark {

    background-image: linear-gradient(transparent 15%, rgba(198,160,122,.80) 15%, rgba(198,160,122,.80) 94%, transparent 94%) !important;

  }

}





.m-home-hero .simple-cristina{display:flex;align-items:center;gap:12px;margin-top:18px;color:#48443d;text-align:left;font-family:Manrope,sans-serif}
.simple-cristina img{width:48px!important;height:48px!important;object-fit:cover;border-radius:50%}
.simple-cristina p{margin:0;font-size:12px;line-height:1.5}.simple-cristina strong,.simple-cristina span{display:block}.simple-cristina strong{font-size:13px}
.simple-logistics{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px;padding:13px 18px;font:13px/1.5 Manrope,sans-serif;color:#48443d;background:#fcfaf3;border-block:1px solid #e7ddcf}
.m-home-hero__ctas>a:not(:first-child){display:none!important}
.m-home-hero__ctas>a:first-child{background:#302923!important;color:#fff!important;border-color:#302923!important}
.simple-test{max-width:900px;margin:40px auto;padding:25px;text-align:center}.simple-test h2{font:600 26px/1.3 Manrope,sans-serif}.simple-test a{display:inline-block;padding:14px 24px;border:1px solid #bfa37c;border-radius:12px;color:#302923}
@media(min-width:1001px){.m-home-hero .simple-cristina,.m-home-hero .simple-cristina p,.m-home-hero .simple-cristina strong,.m-home-hero .simple-cristina span{color:#fff!important;text-shadow:0 1px 5px #000}.m-home-hero__ctas>a:first-child{max-width:420px!important}}

/* Performance 30/10: hero served in its final form (approved-home.php). These rules replace the inline
   styles the script used to add after load, so nothing moves while the page finishes loading. */
body.home .m-home-hero__subtitle .lj-sub-d{display:none}
@media (min-width:1200px){body.home .m-home-hero__subtitle .lj-sub-m{display:none}body.home .m-home-hero__subtitle .lj-sub-d{display:inline}}
body.home .m-home-hero__ctas a{background:#302923!important;color:#fff!important;width:100%!important;flex:1 1 100%!important}
@media (min-width:1200px){body.home .m-home-hero__ctas a{width:auto!important;flex:0 0 auto!important}}
body.home .m-home-hero__frame{width:calc(100% - 28px)!important;max-width:1440px!important;margin-inline:auto!important;border-radius:18px!important;overflow:hidden!important}
@media (min-width:768px){body.home .m-home-hero__frame{width:calc(100% - 48px)!important}}
body.home .m-home-hero__tagline{color:#96713F!important;-webkit-text-fill-color:#96713F!important;opacity:1!important}
/* Same values the legacy inline "CTA HERO 4/6" scripts give the title on phones; they no longer
   recognise it once the lines are served as spans. */
@media (max-width:700px){
 html body.home #home-hero-title:not(#n1):not(#n2):not(#n3):not(#n4):not(#n5):not(#n6):not(#n7):not(#n8):not(#n9):not(#n10){font-size:32px!important;line-height:1.08!important;margin-top:0!important;margin-bottom:10px!important;position:relative!important;top:8px!important}
 html body.home #home-hero-title:not(#n1):not(#n2):not(#n3):not(#n4):not(#n5):not(#n6):not(#n7):not(#n8):not(#n9):not(#n10) .simple-headline-line{font-size:inherit!important;line-height:inherit!important;top:0!important}
 html body.home .m-home-hero__subtitle--overlay:not(#n1):not(#n2):not(#n3):not(#n4):not(#n5):not(#n6):not(#n7):not(#n8):not(#n9):not(#n10){position:relative!important;top:8px!important}
 html body.home .m-home-hero__subtitle:not(#n1):not(#n2):not(#n3):not(#n4):not(#n5):not(#n6):not(#n7):not(#n8):not(#n9):not(#n10) span{position:static!important;top:0!important}
}

/* Owner, 30/10: discreet LONJEBA "bug" (mosca) bottom right, only while the hero video plays (not on the opening photo).
   Kept clear of the floating WhatsApp button. */
.m-home-hero__media.lj-v15-playing:has(video.lj-v15-video[style*="opacity: 1"])::after{content:"";position:absolute;right:30px;bottom:26px;width:112px;height:18px;z-index:6;pointer-events:none;
 background:url(/wp-content/themes/custom-theme-2/assets/svg/logo.svg) no-repeat center/contain;
 filter:brightness(0) invert(1) drop-shadow(0 1px 4px rgba(0,0,0,.35));opacity:.72;animation:lj-mosca-in .8s ease-out both}
@keyframes lj-mosca-in{from{opacity:0}to{opacity:.72}}
@media (max-width:700px){.m-home-hero__media.lj-v15-playing:has(video.lj-v15-video[style*="opacity: 1"])::after{right:16px;bottom:14px;width:84px;height:14px}}
@media (prefers-reduced-motion:reduce){.m-home-hero__media.lj-v15-playing:has(video.lj-v15-video[style*="opacity: 1"])::after{animation:none}}

/* Any language (owner, 31/10): longer texts must never overlap the photo or break the founder line.
   Title lines may wrap when a translation is longer; the founder name stays on one line next to the photo. */
html body .m-home-hero #home-hero-title .simple-headline-line:not(#a):not(#b){white-space:normal!important;overflow-wrap:break-word}
html body .m-home-hero__content:not(#a){min-width:0;max-width:100%}
html body .m-home-hero .simple-cristina p:not(#a):not(#b){flex:1 1 auto!important;min-width:0;max-width:440px}
html body .m-home-hero .simple-cristina strong:not(#a):not(#b){white-space:nowrap!important;display:block!important}

/* Home hero (performance, 01/11): the final title, buttons and Cristina's line are added by approved-home.js a few
   seconds after the first paint, and the hero grew from ~240 px to its final height, pushing the whole page down
   (CLS 0.38 on PageSpeed). The hero now reserves roughly its final height from the start, per screen size. */
.m-home-hero__frame{min-height:530px}
@media (min-width:480px){.m-home-hero__frame{min-height:620px}}
@media (min-width:768px){.m-home-hero__frame{min-height:730px}}
@media (min-width:1200px){.m-home-hero__frame{min-height:585px}}
