/* ═══════════════════════════════════════════════
   the365.space — Responsive CSS Global
   Aplicado em todas as páginas via <link>
   ═══════════════════════════════════════════════ */

/* ── Mobile topbar ── */
@media(max-width:960px) {
  body { padding-top: 56px; }
  .layout { grid-template-columns: 1fr !important; }
  .sidebar { display: none !important; }
  .main {
    padding: 20px 16px !important;
    max-width: 100% !important;
  }
}

/* ── Formulários ── */
@media(max-width:960px) {
  .form-grid { grid-template-columns: 1fr !important; }
  .form-group.full { grid-column: 1 !important; }
  .form-card { padding: 24px 16px !important; }
}

/* ── Grids de conteúdo ── */
@media(max-width:960px) {
  /* 2 colunas → 1 */
  .terapeutas-grid,
  .especiais-grid,
  .chakras-grid,
  .cf-grid,
  .clavys-grid,
  .artigos-grid,
  .blog-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  /* Planetas: 3 col → 2 col */
  .planetas-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
  .planeta-chip { padding: 10px 12px !important; }
}

@media(max-width:480px) {
  .planetas-grid { grid-template-columns: 1fr !important; }
}

/* ── Hero sections ── */
@media(max-width:960px) {
  .hero {
    padding: 32px 20px !important;
  }
  .hero-titulo,
  .mapa-titulo,
  .res-titulo {
    font-size: 24px !important;
  }
  h1 { font-size: 26px !important; }
}

@media(max-width:480px) {
  .hero { padding: 24px 14px !important; }
  .hero-titulo { font-size: 20px !important; }
  h1 { font-size: 22px !important; }
  .hero-bg-svg { opacity: 0.08 !important; }
}

/* ── Cards e seções ── */
@media(max-width:960px) {
  .secao-header { padding: 16px 18px !important; }
  .secao-titulo { font-size: 16px !important; }
  .secao-body { padding: 0 18px 18px !important; }
  .secao-card.open .secao-body { padding-top: 14px !important; }
  .tc-header { padding: 20px 16px !important; gap: 14px !important; }
  .mapa-hero { grid-template-columns: 1fr !important; padding: 24px 20px !important; }
  .como-funciona { padding: 24px 16px !important; }
  .afirmacao-texto { font-size: 17px !important; }
}

@media(max-width:480px) {
  .tc-header { flex-direction: column !important; text-align: center !important; }
  .chakra-card .chakra-header { padding: 14px !important; }
}

/* ── Loading ── */
@media(max-width:960px) {
  .loading { padding: 48px 20px !important; }
  .loading-cosmos { width: 70px !important; height: 70px !important; }
  .loading h3 { font-size: 18px !important; }
}

/* ── Intro cards ── */
@media(max-width:960px) {
  .intro-card { padding: 20px 16px !important; font-size: 14px !important; }
  .res-hero { padding: 24px 20px !important; }
  .res-titulo { font-size: 20px !important; }
  .aura-card { padding: 22px 16px !important; }
  .msg-card { padding: 20px 16px !important; }
}

/* ── Tarot ── */
@media(max-width:960px) {
  /* Não mexer em carta-wrap/carta-inner — quebra o flip 3D preserve-3d */
  .cartas-wrap { gap: 10px !important; }
}

/* ── Index toppage cards ── */
@media(max-width:960px) {
  .tools-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
  .tool-card { padding: 20px 16px !important; }
  .tool-icon-wrap { width: 44px !important; height: 44px !important; }
  .tool-name { font-size: 16px !important; }
}

@media(max-width:480px) {
  .tools-grid { grid-template-columns: 1fr !important; }
}

/* ── CLAVYS pages ── */
@media(max-width:960px) {
  .clavys-hero { padding: 32px 20px !important; }
  .features-grid { grid-template-columns: 1fr !important; }
  .price-card { padding: 28px 20px !important; }
}