/* ============================================================
   LexIng — Responsive
   Breakpoints:
     Tablet landscape  ≤ 1199px
     Tablet portrait   ≤ 767px
     Mobile            ≤ 479px
   ============================================================ */


/* ════════════════════════════════════════════════════════════════
   TABLET LANDSCAPE  (≤ 1199px)
   ════════════════════════════════════════════════════════════════ */
@media (max-width: 1199px) {

  /* Nav */
  #main-nav {
    padding: var(--space-sm) var(--space-md);
  }

  .nav-logo-img {
    height: 64px;
  }

  /* Hero */
  .hero-logo-img {
    height: clamp(180px, 38vh, 300px);
  }

  .hero-layer--logo  { top: 6vh; }
  .hero-layer--title { top: 56vh; }

  /* Secciones */
  .section {
    padding: var(--space-xl) var(--space-md);
  }

  /* Fundadores */
  .fundadores-grid {
    gap: 0 var(--space-md);
  }

  /* Footer */
  #main-footer {
    padding: var(--space-md);
  }
}


/* ════════════════════════════════════════════════════════════════
   TABLET PORTRAIT  (≤ 767px)
   ════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {

  /* ── Nav ─────────────────────────────────────────────────── */
  #main-nav {
    padding: var(--space-xs) var(--space-sm);
  }

  .nav-logo-img {
    height: 52px;
    transform: translateY(8px);
  }

  .nav-links {
    gap: var(--space-sm);
  }

  .nav-links a {
    font-size: 0.75rem;
    letter-spacing: 0.10em;
  }

  .nav-cta {
    padding: 0.25rem 0.6rem;
  }

  /* ── Hero: video centrado en portrait ───────────────────── */
  #hero-container {
    height: 100svh;
  }

  #hero-canvas {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    min-width: 100%;
    height: 100%;
  }

  .hero-layer {
    padding-inline: var(--space-sm);
  }

  .hero-logo-img {
    height: clamp(160px, 32vh, 240px);
  }

  .hero-layer--logo  { top: 8vh; }
  .hero-layer--title { top: 52vh; }

  .hero-title {
    font-size: clamp(1.25rem, 4.5vw, 2rem);
    letter-spacing: 0.08em;
    padding-left: 0.08em;
  }

  .hero-scroll-hint {
    font-size: 0.625rem;
  }

  /* ── Secciones ───────────────────────────────────────────── */
  .section {
    padding: var(--space-lg) 1.75rem;
  }

  h2 { font-size: clamp(1.5rem, 5vw, 2.5rem); }
  h3 { font-size: clamp(1.125rem, 3.5vw, 1.5rem); }

  .section-intro {
    font-size: 0.9375rem;
  }

  /* ── Secciones full-width: padding-inline → igualado a .section ── */
  .section--fundadores,
  .section--servicios,
  .section--cierre {
    padding-inline: 1.75rem;
  }

  /* ── Fondos más opacos en mobile: el video compite con el texto ── */
  .section--fundadores {
    background: linear-gradient(
      to bottom,
      transparent             0,
      rgba(18, 18, 18, 0.76)  8rem
    );
  }

  .section--servicios {
    background-color: rgba(18, 18, 18, 0.76);
  }

  .section--cierre {
    background-color: rgba(0, 0, 0, 0.74)
  }

  /* ── Fundadores: apilar verticalmente ───────────────────── */
  .fundadores-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .fundadores-divisor {
    flex-direction: row;
    padding: var(--space-md) 0;
  }

  .fundadores-divisor__line {
    flex: 1;
    min-height: auto;
    height: 1px;
    width: auto;
    background: linear-gradient(
      to right,
      transparent,
      rgba(197, 164, 126, 0.50),
      transparent
    );
  }

  .fundador--derecha .fundador-inner {
    text-align: left;
  }

  .fundador--derecha .fundador-linea {
    background: linear-gradient(to right, var(--color-accent), transparent);
    margin-left: 0;
  }

  .fundador-nombre {
    font-size: clamp(1.5rem, 5vw, 2rem);
  }

  .fundador-narrativa {
    max-width: none;
  }

  /* ── Servicios ───────────────────────────────────────────── */
  .servicio {
    grid-template-columns: 3rem 1fr;
    gap: var(--space-xs) var(--space-sm);
  }

  .servicio-nombre {
    font-size: clamp(1.125rem, 4vw, 1.5rem);
  }

  /* ── Fundadores: reset alineación derecha al apilar ────────── */
  .fundador--derecha .fundador-expertise,
  .fundador--derecha .fundador-fuerza {
    text-align: left;
  }

  /* ── Cierre ──────────────────────────────────────────────── */
  .cierre-cita {
    font-size: clamp(1.125rem, 4vw, 1.75rem);
  }

  .cierre-logo-reveal {
    height: clamp(130px, 22vh, 200px);
  }

  .btn-cta {
    padding: 0.875rem 2rem;
    font-size: 0.75rem;
  }

  /* ── Footer: apilar ──────────────────────────────────────── */
  #main-footer {
    grid-template-columns: 1fr;
    text-align: center;
    gap: var(--space-md);
    padding: var(--space-md) 1.75rem;
  }

  .footer-nav {
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-sm);
  }

  .footer-legal {
    text-align: center;
  }
}


/* ════════════════════════════════════════════════════════════════
   MOBILE  (≤ 479px)
   ════════════════════════════════════════════════════════════════ */
@media (max-width: 479px) {

  /* ── Nav ─────────────────────────────────────────────────── */
  .nav-logo-img {
    height: 44px;
    transform: translateY(6px);
  }

  /* Ocultar links secundarios, mantener CTA y lang-switcher */
  .nav-links li:not(:nth-last-child(-n+2)) {
    display: none;
  }

  /* ── Hero ────────────────────────────────────────────────── */
  #hero-container {
    height: 100svh;
  }

  .hero-logo-img {
    height: clamp(120px, 28vh, 180px);
  }

  .hero-layer--logo  { top: 10vh; }
  .hero-layer--title { top: 48vh; }

  .hero-title {
    font-size: clamp(1rem, 5.5vw, 1.5rem);
    letter-spacing: 0.06em;
  }

  /* ── Secciones ───────────────────────────────────────────── */
  .section {
    padding: var(--space-md) 1.25rem;
  }

  h2 { font-size: clamp(1.375rem, 6vw, 2rem); }

  .section-label {
    font-size: 0.625rem;
    letter-spacing: 0.22em;
  }

  /* ── Secciones full-width ────────────────────────────────── */
  .section--fundadores,
  .section--servicios,
  .section--cierre {
    padding-inline: 1.25rem;
  }

  /* ── Fundadores ──────────────────────────────────────────── */
  .fundador-nombre {
    font-size: clamp(1.375rem, 6vw, 1.75rem);
  }

  .fundador-expertise {
    font-size: 0.9375rem;
  }

  .fundador-fuerza {
    font-size: 0.8125rem;
  }

  /* ── Cierre ──────────────────────────────────────────────── */
  .cierre-logo-reveal {
    height: clamp(100px, 20vh, 150px);
  }

  /* ── Servicios ───────────────────────────────────────────── */
  .servicio {
    grid-template-columns: 2.5rem 1fr;
  }

  .servicio-num {
    font-size: 0.625rem;
  }

  /* ── Cierre ──────────────────────────────────────────────── */
  .cierre-cita {
    font-size: clamp(1rem, 5vw, 1.375rem);
  }

  .btn-cta {
    width: 100%;
    justify-content: center;
    padding: 1rem;
  }

  /* ── Footer ──────────────────────────────────────────────── */
  .footer-nav {
    gap: var(--space-xs);
  }

  .footer-nav a {
    font-size: 0.6875rem;
  }
}
