/* Tema Claro por padrão; Dark disponível via [data-bs-theme="dark"] */
:root {
  /* Light */
  --bg-body: #f6f7f9;
  --bg-surface: #ffffff;
  --text: #0b0c0e;
  --border-color: rgba(0,0,0,0.08);
  --teal: #26a68b;
  --teal-hover: #1d8a73;
  --radius: 10px;
  --gradient-hero: radial-gradient(circle at 20% 20%, #e9f7f3, #f6f7f9 70%);
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
}
html, body {background: var(--bg-body); color: var(--text);} 

/* Override para tema escuro opcional */
[data-bs-theme="dark"] {
  --bg-body: #0d0f10;
  --bg-surface: #141618;
  --text: #e5e7eb;
  --border-color: rgba(255,255,255,0.08);
  --gradient-hero: radial-gradient(circle at 20% 20%, #1d2428, #0d0f10 70%);
}
body {display: flex; flex-direction: column; min-height:100vh;}

.hero-section {background: var(--gradient-hero);}
.hero-title {letter-spacing: -0.5px;}

.btn-teal {background: var(--teal); border: none; color:#fff; font-weight:600;}
.btn-teal:hover, .btn-teal:focus {background: var(--teal-hover); color:#fff;}

/* Linkbar (topo simples) */
.agti-linkbar {background:#0b0c0e; color:#fff; font-size:.85rem; line-height:1; border-bottom:1px solid rgba(255,255,255,0.08); position:sticky; top:0; z-index:1030;}
[data-bs-theme="dark"] .agti-linkbar {background:#0b0c0e;} 
.agti-linkbar-list .agti-link {color:#ffffff; text-decoration:none; padding:.45rem .75rem; border-radius:6px; font-weight:500; display:inline-flex; align-items:center; gap:.35rem;}
.agti-linkbar-list .agti-link:hover, .agti-linkbar-list .agti-link:focus {color:#ffffff; background: rgba(255,255,255,.1);} 
.agti-linkbar-list .agti-link:focus-visible {outline:2px solid var(--teal); outline-offset:2px;}
.agti-linkbar-list .list-inline-item {position:relative;}
/* Removido o separador com ponto entre os links do menu superior */
.agti-linkbar-list .list-inline-item + .list-inline-item::before {content:none;}
/* Brand logo */
.agti-brand-img {height:24px; width:auto; display:block;}

.section-heading {font-size: clamp(1.75rem, 4vw, 2.25rem); font-weight:600; letter-spacing:-0.5px;}

/* Cards Expertise */
.expertise-card {background: var(--bg-surface); border:1px solid var(--border-color); padding:1.1rem 1.1rem 1rem; border-radius: var(--radius); transition:.25s ease; position:relative; display:flex; flex-direction:column; min-height:160px;}
.expertise-card.hover {box-shadow:0 0 0 1px var(--teal); transform:translateY(-4px);}
.expertise-card .icon-slot {font-size:1.35rem; margin-bottom:.35rem;}

/* Lists */
.why-list li {margin-bottom:.6rem; position:relative; padding-left:1.25rem;}
.why-list li::before {content:'•'; position:absolute; left:0; color: var(--teal);}

/* Placeholder Graphics */
.placeholder-graphic {width:300px; height:300px; background:#f2f5f6; border:1px solid var(--border-color); border-radius:18px; position:relative; display:flex; align-items:center; justify-content:center;}
.grid-wrapper {display:grid; grid-template-columns: repeat(6, 1fr); grid-template-rows: repeat(6, 1fr); gap:4px; width:80%; height:80%;}
.grid-wrapper span {background:#f7f8fa; border:1px solid #e5e7eb; border-radius:4px;}

.diag-graphic {background:#f0f2f5;}
.diag-line {position:absolute; width:60%; height:2px; background:linear-gradient(90deg,var(--teal),transparent); transform:rotate(42deg); top:50%; left:20%;}
.mini-grid {position:absolute; bottom:14px; right:14px; width:94px; height:94px; border:1px solid var(--border-color); display:flex; align-items:center; justify-content:center;}
.mini-grid-wrapper {display:grid; grid-template-columns: repeat(3,1fr); grid-template-rows: repeat(3,1fr); gap:3px; width:86%; height:86%;}
.mini-grid-wrapper::before {content:''; position:absolute;}
.mini-grid-wrapper span {background:#f7f8fa; border:1px solid #e5e7eb; border-radius:2px;}

/* Why section image */
.why-image-wrapper {max-width:420px; margin:0 auto; position:relative;}
.why-image {width:100%; height:auto; border:none; border-radius:18px; object-fit:cover; box-shadow:none;} 
.why-image-wrapper::after {content:none;}
@media (min-width:1200px){
  .why-image-wrapper {max-width:480px;}
}

/* Espaçamento util */
.py-6 {padding-top:4.5rem !important; padding-bottom:4.5rem !important;}
@media (max-width: 767px){
  .py-6 {padding-top:3.25rem !important; padding-bottom:3.25rem !important;}
}

/* Hero layout refinado */
.hero-section {padding-top:4.5rem; padding-bottom:3.5rem;}
.hero-layout {display:flex; flex-wrap:wrap; align-items:center; gap:2.5rem;}
.hero-layout .hero-content {flex:1 1 420px;}
.hero-layout .hero-art {flex:0 1 380px; display:flex; justify-content:center; position:relative;}
/* Hero image styling (ampliada) */
.hero-image-wrapper {max-width:400px; transition:transform .6s cubic-bezier(.4,.14,.3,1);}
.hero-image {width:100%; height:auto; object-fit:cover; border:none; border-radius:18px; box-shadow:none;} 
.hero-art::after {content:none;}
.hero-image-wrapper:hover {transform:scale(1.03);}
@media (min-width:1200px){
  .hero-image-wrapper {max-width:460px;}
  .hero-layout .hero-art {flex:0 1 460px;}
}
@media (min-width:1400px){
  .hero-image-wrapper {max-width:520px;}
  .hero-layout .hero-art {flex:0 1 520px;}
}
@media (max-width:991px){
  .hero-image-wrapper {max-width:340px;}
}
@media (max-width: 991px){
  .hero-layout {flex-direction:column;}
  .hero-section {padding-top:3.25rem;}
}

/* Ajustes texto cards */
.expertise-card h3 {margin-top:.25rem; margin-bottom:.4rem;}
.expertise-card p {margin-top:auto; font-size:.8rem; line-height:1.3;}

/* Form */
.brevo-form-fallback .form-control {background:#ffffff; border:1px solid #d4d7db; color:var(--text);} 
.why-image {width:100%; height:auto; border:none; border-radius:18px; object-fit:cover; box-shadow:none;} 

footer {font-weight:500;}

/* Media queries */
@media (max-width: 991px){
  .placeholder-graphic, .diag-graphic {display:none;}
  .expertise-card {height:100%;}
}

/* Acessibilidade */
.btn:focus-visible {outline:2px solid var(--teal); outline-offset:2px;}

/* Scroll suave */
html {scroll-behavior:smooth;}

/* ===== Brevo via iframe ===== */
.brevo-iframe-wrap { max-width: 720px; margin: 0 auto; }

/* Evita que o header fixo cubra a âncora ao navegar para seções */
section[id] { scroll-margin-top: 70px; }
