/* ============================================================
   NEXUS HUB — Camada responsiva (v1.2)
   REVERTIDO ao visual original: todas as regras que sobrescreviam
   hero, botões, tipografia, grids, arena e espaçamentos do
   index.css foram REMOVIDAS. Restam apenas estilos dos
   componentes novos (carrossel coverflow da galeria) e correções de
   comportamento invisíveis (arrasto/seleção).
   ============================================================ */

/* ---------- Seção personalizada: coverflow estilo hero ---------- */
/* 1 img: grid original do index.css; 2+ imgs: JS monta Swiper
   coverflow reutilizando .hero-swiper/.hero-slide-card (visual idêntico). */
.nx-carousel {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: clip;
}
.nx-coverflow-swiper {
  overflow: visible;
}
.nx-coverflow .hero-nav-btn {
  z-index: 30;
}
/* Impede seleção/texto e arrasto nativo durante o swipe (não altera visual) */
.nx-carousel, .arena-stage-viewport, #heroSwiper { user-select: none; -webkit-user-select: none; }
.nx-carousel img, .arena-stage-viewport img, #heroSwiper img { -webkit-user-drag: none; }
.nx-carousel-dots { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 12px 8px 2px; flex-wrap: wrap; }
.nx-carousel-dot { width: 10px; height: 10px; border-radius: 999px; padding: 0; min-width: 0; min-height: 0; }
.nx-carousel-count { text-align: center; font-size: 0.85rem; opacity: 0.75; padding-bottom: 4px; }

/* ---------- Hero: botões mais compactos (tablet/desktop) ---------- */
/* Mobile <=480 mantém o estilo original do index.css (48px, full-width) */
@media (min-width: 481px) {
  .hero-buttons .btn {
    padding: 12px 28px;
    font-size: 0.88rem;
    letter-spacing: 0.06em;
    gap: 8px;
  }
}

/* ---------- Hero: botões menores no celular ---------- */
@media (max-width: 480px) {
  .hero-buttons .btn {
    min-height: 42px;
    padding: 10px 16px;
    font-size: 0.85rem;
    letter-spacing: 0.04em;
    gap: 8px;
  }
}

/* ---------- Ticker: conter rotate(-1deg) scale(1.02) sem mudar o visual ----------
   O scale(1.02) estourava o scroll horizontal em toda tela >1024px
   (rect do ticker ia ~1% além da viewport em cada lado). O wrapper
   clipa na borda da viewport (= o que o usuário já via) e o
   margin/padding negativo se anula: posição e sobreposição com o
   hero continuam exatas; sombra/rotação cabem na área de padding. */
.ticker-clip {
  overflow: clip;
  padding: 3.5% 0;
  margin: calc(-20px - 3.5%) 0 -3.5%;
}
.ticker-clip > .ticker {
  margin-top: 0;
}
/* Camada própria para o track animado: evita que a banda rotacionada
   (rotate+scale) seja re-rasterizada a cada frame → tremor/shimmer do texto. */
.ticker-clip > .ticker > .ticker-track {
  will-change: transform;
}

/* ============================================================
   CORREÇÕES GLOBAIS PARA MOBILE (Ajuste de Seções Muito Grandes)
   ============================================================ */
@media (max-width: 768px) {
  /* Reduzir o padding excessivo das seções */
  section {
    padding: 40px 0 !important;
  }
  
  /* Ajustar o hero */
  .hero {
    padding-top: 100px !important;
    min-height: auto !important;
  }
  .hero h1 {
    font-size: clamp(2rem, 8vw, 2.5rem) !important;
    margin-bottom: 16px !important;
  }
  .hero-subtitle {
    font-size: 1rem !important;
    margin-bottom: 24px !important;
  }

  /* Títulos de seção menores */
  .section-header h2 {
    font-size: clamp(1.8rem, 6vw, 2.2rem) !important;
  }
  .section-header .subtitle {
    font-size: 1rem !important;
  }

  /* Ticker - Reduzir tamanho no mobile */
  .ticker-item {
    font-size: 0.85rem !important;
    padding: 0 20px !important;
  }
  .ticker-item i {
    font-size: 1rem !important;
  }

  /* Ajuste dos cards de Planos / Preços que podiam estar gigantes */
  .modern-pricing-card {
    padding: 24px 20px !important;
  }
  .pricing-amount {
    font-size: 2.5rem !important;
  }

  /* Ajustar área dos Modelos */
  .models-grid {
    gap: 16px !important;
  }
  .model-card {
    padding: 16px !important;
  }
}

