
    /* ── HERO WRAPPER ── */
    .hero-404 {
      position: relative;
      width: 100%;
      min-height: 480px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 1.2rem;
      padding: 3rem 1rem;
      overflow: hidden;
      background: #f5f5f8;
    }

    /* fondo difuminado con portadas */
    .hero-404__bg {
      position: absolute;
      inset: 0;
      background-image: url('https://images.unsplash.com/photo-1538481199705-c710c4e965fc?w=1600&q=80');
      background-size: cover;
      background-position: center;
      filter: blur(0px) brightness(1.05);
      opacity: 0.22;
    }

    /* overlay blanco suave */
    .hero-404__overlay {
      position: absolute;
      inset: 0;
      background: rgba(245, 245, 248, 0.60);
    }

    /* todo el contenido va sobre el bg */
    .hero-404__content {
      position: relative;
      z-index: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 1rem;
      text-align: center;
    }

    /* ── TÍTULO ── */
    .hero-404__title {
      font-family: 'Inter', sans-serif;
      font-size: clamp(1.4rem, 3.5vw, 2rem);
      font-weight: 700;
      color: #4a9eff;
      letter-spacing: 0.01em;
    }

    /* ── SUBTÍTULO ── */
    .hero-404__sub {
      font-family: 'Inter', sans-serif;
      font-size: clamp(0.8rem, 1.8vw, 0.95rem);
      color: #555;
      max-width: 440px;
      line-height: 1.6;
    }

    /* ── DÍGITOS 404 ── */
    .digits {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      /* la imagen de portadas se recorta dentro del texto */
      background-image: url('https://images.unsplash.com/photo-1538481199705-c710c4e965fc?w=1200&q=80');
      background-size: cover;
      background-position: center;
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      font-family: 'Inter', sans-serif;
      font-size: clamp(8rem, 20vw, 14rem);
      font-weight: 900;
      line-height: 1;
      letter-spacing: -0.02em;
      /* sombra interior para simular la profundidad del diseño */
      filter: drop-shadow(0 4px 24px rgba(0,0,0,0.18));
      user-select: none;
    }

    /* ── BOTÓN ── */
    .hero-404__btn {
      display: inline-block;
      padding: 0.65rem 2.4rem;
      background: #4a9eff;
      color: #fff;
      font-family: 'Inter', sans-serif;
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      text-decoration: none;
      border: none;
      border-radius: 3px;
      cursor: pointer;
      transition: background 0.2s, transform 0.1s;
      margin-top: 0.4rem;
    }

    .hero-404__btn:hover {
      background: #2180e0;
      transform: translateY(-2px);
    }

    .hero-404__btn:active {
      transform: translateY(0);
    }

    /* ── RESPONSIVE ── */
    @media (max-width: 480px) {
      .hero-404 { min-height: 320px; }
    }