:root {
  --card-bg:#fbfbfb;
  --container:1200px;
  --radius:12px;
  --gap:1.5rem;
  --shadow:0 6px 18px rgba(16,24,40,.06);
  --accent:#06b6d4;
  --muted:#6b7280;
}

/* Layout geral */
.edu-columns,
.bi-columns,
.ia-features {
  display:grid;
  gap:var(--gap);
  margin:3rem 0;
}
.edu-item,
.bi-item,
.feature-item {
  background:var(--card-bg);
  padding:1.5rem;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* =============================
   EDUCAÇÃO CORPORATIVA
============================= */
.education-section h2 {
  font-size:2rem;
  margin-bottom:2rem;
  text-align:center;
}
.edu-columns { grid-template-columns:1fr; }
@media(min-width:640px){
  .edu-columns { grid-template-columns:repeat(2,1fr); }
}

/* =============================
   BUSINESS INTELLIGENCE (BI)
============================= */
.bi-differentials h2 {
  font-size:2rem;
  margin-bottom:1rem;
  text-align:center;
}
.bi-differentials .hero-subtitle {
  max-width:700px;
  margin:0 auto 2.5rem;
  color:var(--muted);
  font-size:1.1rem;
}
.bi-columns { grid-template-columns:1fr; }
.bi-icon { font-size:2rem; margin-bottom:.5rem; }
@media(min-width:768px){
  .bi-columns { grid-template-columns:repeat(3,1fr); }
}

/* =============================
   INTELIGÊNCIA ARTIFICIAL (IA)
============================= */
.ia-differentials {
  padding:4rem 0;
  background:#f8faff;
}
.ia-differentials h2 {
  font-size:2rem;
  text-align:center;
  margin-bottom:1rem;
}
.ia-differentials .hero-subtitle {
  max-width:800px;
  margin:0 auto 3rem;
  color:var(--muted);
}
.ia-features { grid-template-columns:1fr; }

.ia-image {
  margin-top:3rem;
  position:relative;
  min-height:340px;
  border-radius:var(--radius);
  overflow:hidden;
  background:#e0e7ff;
}
.ia-image img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

@media(min-width:640px){
  .ia-features { grid-template-columns:repeat(3,1fr); }
  .ia-image { min-height:420px; }
}

/* =============================
   FAQ
============================= */
.faq-section {
  padding:4rem 0;
}
.faq-section h2 {
  font-size:2rem;
  text-align:center;
  margin-bottom:2.5rem;
}
.faq-item {
  margin-bottom:1rem;
  padding:1.25rem;
  border-left:5px solid var(--accent);
  background:#fff;
  border-radius:8px;
  box-shadow:var(--shadow);
}

/* =============================
   FOOTER
============================= */
footer {
  padding:3rem 0 2rem;
  text-align:center;
  color:var(--muted);
  font-size:.95rem;
  border-top:1px solid #e5e7eb;
  margin-top:4rem;
}

/* =============================
   RESPONSIVO EXTRA
============================= */
@media(min-width:768px){
  .hero-section {
    padding:6rem 0 4rem;
    gap:3rem;
  }
}
@media(min-width:1024px){
  .hero-section {
    grid-template-columns:1fr 520px;
  }
}

/* =============================
   ACESSIBILIDADE & PERFORMANCE
============================= */
img[loading="lazy"] {
  loading:lazy;
}

/* Ajustes de responsividade e contenção do carrossel - outubro/2026 */
html { max-width: 100%; }
body { min-width: 0; }
.clients-marquee-viewport { width: 100%; max-width: 100%; overflow: hidden; }
.clients-marquee-viewport .marquee { width: max-content; }
.hero-section > *, .grid-3 > *, .grid-2 > *, .serve-grid > * { min-width: 0; }
.card, .hero-content, .section { overflow-wrap: break-word; }
@media (max-width: 639px) {
  .container { width: 100%; max-width: 100%; padding-left: 20px; padding-right: 20px; }
  .hero-section { padding-left: 20px; padding-right: 20px; }
  .section { padding-top: 3rem; padding-bottom: 3rem; }
  .card { padding: 1.25rem; }
  .hero-content h1 { font-size: clamp(1.75rem, 7vw, 2.1rem); }
  .hero-buttons .btn { max-width: 100%; white-space: normal; }
  .clients-marquee-viewport > div[style*="width:150px"] { width: 48px !important; }
}
