:root{ --bg:#fff; --fg:#0f172a; --muted:#64748b; --brand:#22c55e; --brand-800:#166534; }
*{box-sizing:border-box} 
html,body{margin:0;padding:0;font-family:Inter,system-ui,Arial;color:var(--fg);background:var(--bg)}
img{max-width:100%;display:block}
.container{width:min(1120px,92%);margin-inline:auto}

/* ==== HEADER ==== */
.site-header{
  position:sticky; top:0; background:#fff; border-bottom:1px solid #eef2f7;
  /* Correção: header estável e acima de tudo */
  --header-h: 64px;
  z-index:1000;
}
.header-inner{
  display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 0;
  /* Correção: altura mínima consistente */
  min-height: var(--header-h);
}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);font-weight:700}
.logo img{width:28px;height:28px}
.nav{display:flex;gap:20px;align-items:center}
.nav a{color:var(--fg);text-decoration:none;font-weight:600}
.nav .btn{color:#fff}
.menu-toggle{display:none;background:transparent;border:0;font-size:22px}

/* ==== BOTÕES ==== */
.btn{background:var(--brand);border:2px solid var(--brand);color:#fff;
  padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:700;display:inline-block}
.btn:hover{background:var(--brand-800);border-color:var(--brand-800);cursor:pointer}
.btn-outline{background:transparent;color:var(--brand)}
.btn-sm{padding:8px 12px;border-radius:8px}

/* ==== HERO GLOBAL ==== */
.hero {
    padding: 56px 0;
    background: linear-gradient(180deg, #f8fff9, #fff);
}

.grid-2 {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 36px;
    align-items: center;
}

.badges {
    display: flex;
    gap: 16px;
    flex-wrap: nowrap; /* Mude de wrap para nowrap */
    padding: 0;
    margin: 16px 0 0;
    list-style: none;
    color: var(--muted);
    white-space: nowrap; /* Impede quebra de texto */
    overflow-x: auto; /* Permite scroll se necessário */
}

.hero h1 {
    font-size: 44px;
    line-height: 1.1;
    margin: 0 0 12px;
    background: linear-gradient(180deg, var(--brand-800), var(--brand));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.hero p {
    font-size: 18px;
    color: var(--muted);
}

.cta-group {
    display: flex;
    gap: 12px;
    margin-top: 16px;
}

/* Oculta as badges em mobile */
@media (max-width: 768px) {
    .badges {
        display: none;
    }
}

/* ==== SEÇÕES ==== */
.section{padding:64px 0}
.section.alt{background:#fafafa}
.section h2{font-size:32px;margin:0 0 24px}

/* ==== CARDS ==== */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{border:1px solid #eef2f7;border-radius:16px;padding:20px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.card h3{margin-top:0}
.rounded{border-radius:14px}

/* ==== FORM CONTATO ==== */
.contact{display:grid;gap:12px}
.contact label{display:grid;gap:6px;font-weight:600}
input,textarea{padding:12px 14px;border:1px solid #e5e7eb;border-radius:10px;font:inherit}
.status{margin-top:8px;color:var(--brand-800);font-weight:600}
.contact-alt{margin-top:10px;color:var(--muted)}

/* ==== FOOTER ==== */
.site-footer{border-top:1px solid #eef2f7;padding:18px 0;margin-top:24px}
.footer-inner{display:flex;align-items:center;justify-content:space-between}

/* ==== RESPONSIVO GLOBAL ==== */
@media (max-width:900px){
  .grid-2{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .nav{display:none}
  .menu-toggle{display:block}
  .nav.open{display:flex;flex-direction:column;position:absolute;right:4%;top:62px;background:#fff;
    border:1px solid #eef2f7;border-radius:12px;padding:12px;gap:12px;box-shadow:0 6px 20px rgba(0,0,0,.08)}
}

/* ==== NAVBAR LEGACY ==== */
.legacy-header{border-bottom:2px solid #4CAF50;background:#fff}
.legacy-nav ul{list-style:none;display:flex;align-items:center;gap:24px;margin:0;padding:0}
.legacy-nav ul li{position:relative}

/* Correção: borda-base transparente para evitar "pulo" no hover */
.legacy-nav a{
  color:#228B22; text-decoration:none; font-weight:600; padding:10px 6px;
  border-bottom:2px solid transparent;
}
.legacy-nav a:hover{color:#4CAF50; border-bottom-color:#4CAF50}

.painel-btn{
  background:#4CAF50;border-color:#4CAF50;
  /* Correção: alinhamento consistente */
  align-self:center; line-height:1;
}
.painel-btn:hover{background:#45a049;border-color:#45a049}

/* Dropdown desktop */
/* Correção: posição e z-index acima do conteúdo */
.dropdown .dropdown-menu{
  display:none; position:absolute; top:calc(100% + 8px); left:0; background:#fff;
  border:1px solid #e5e7eb; border-radius:10px; min-width:240px;
  box-shadow:0 8px 20px rgba(0,0,0,.08); padding:8px 0; z-index:1100;
}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu li a{display:block;padding:10px 14px;border-bottom:1px solid #f3f4f6}
.dropdown-menu li:last-child a{border-bottom:0}
.dropbtn::after{content:" ▼";font-size:12px;color:#4CAF50}

/* Hamburger */
.hamburger{display:none;flex-direction:column;gap:4px;background:transparent;border:0}
.hamburger span{width:26px;height:3px;background:#4CAF50;border-radius:2px}

/* Mobile menu */
/* Correção: fixa e alinha logo abaixo do header */
.menu-mobile{
  display:none; position:fixed; top:var(--header-h, 64px); left:0; right:0; background:#fff;
  border-top:2px solid #4CAF50; box-shadow:0 10px 24px rgba(0,0,0,.12); z-index:1000;
}
.menu-mobile ul{list-style:none;margin:0;padding:10px}
.menu-mobile li{padding:6px 0;text-align:center}
.menu-mobile a{color:#228B22;text-decoration:none;font-size:14px;display:block;padding:10px 0}
.menu-mobile a:hover{background:#4CAF50;color:#fff;border-radius:8px}
.menu-mobile.open{display:block}
.submenu-toggle{background:transparent;border:0;color:#228B22;font-weight:700;cursor:pointer;padding:10px 0}
.dropdown-menu-m{display:none;border-top:1px solid #e5e7eb}
.dropdown-menu-m.open{display:block}

/* Responsivo header */
@media (max-width: 900px){
  .legacy-nav{display:none}
  .hamburger{display:flex}
}

/* ==== FOOTER LEGACY ==== */
.legacy-footer{background:#E7F7CD}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:24px 0}
.foot-brand{display:grid;gap:12px;align-content:start}
.foot-logo{width:120px}
.foot-socials{display:flex;gap:12px;align-items:center}
.icon{width:32px;height:32px;display:inline-block;border-radius:6px;background:#dff0bf}
.foot-col{display:grid;gap:8px}
.foot-col h4{margin:0 0 8px;color:#1f6f1f}
.foot-col a{color:#145214;text-decoration:none}
.foot-col a:hover{text-decoration:underline}
.foot-copy{border-top:1px solid #cfe7a8;padding:10px 0}
.copy-desktop{display:block;text-align:center;color:#145214}
.copy-mobile{display:none;text-align:center}
.copy-mobile .copy-text{margin-top:6px;color:#145214}
.foot-socials.center{justify-content:center}

/* Responsivo footer */
@media (max-width: 900px){
  .legacy-footer .footer-grid{ display:none; }
  .legacy-footer .copy-desktop{ display:none; }
  .legacy-footer .copy-mobile{ display:block; text-align:center; }
  .legacy-footer .foot-socials.center{ justify-content:center; gap:16px; }
  .legacy-footer .foot-socials.center .icon{ width:36px; height:36px; border-radius:8px; }
  .legacy-footer .copy-mobile .copy-text{ margin-top:8px; line-height:1.3; }
}

/* ==== HOME SEÇÕES EXTRAS ==== */
.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.trust-item{background:#fff;border:1px solid #eef2f7;border-radius:12px;padding:14px;text-align:center;color:var(--muted);font-weight:600}
@media (max-width:900px){ .trust-row{grid-template-columns:1fr} }

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{border:1px solid #eef2f7;border-radius:16px;background:#fff;padding:20px}
.step h3{margin:6px 0 8px}
.step-num{width:36px;height:36px;border-radius:10px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700}
@media (max-width:900px){ .steps{grid-template-columns:1fr} }

.metrics{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0;margin:0}
.metric{border:1px solid #eef2f7;border-radius:16px;background:#fff;padding:24px;text-align:center}
.metric strong{display:block;font-size:34px;line-height:1;color:var(--brand-800)}
.metric span{color:var(--muted)}
@media (max-width:900px){ .metrics{grid-template-columns:1fr} }

.faq details{border:1px solid #eef2f7;border-radius:12px;background:#fff;padding:12px 14px;margin-bottom:10px}
.faq summary{font-weight:700;cursor:pointer}
.faq p{margin:8px 0 0;color:var(--muted)}

.cta-final-box{display:grid;place-items:center;text-align:center;gap:12px;border:1px solid #eef2f7;border-radius:16px;background:#fff;padding:28px}

.fab-whats{
  position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;
  background:var(--brand);color:#fff;display:grid;place-items:center;
  text-decoration:none;font-size:22px;box-shadow:0 6px 20px rgba(0,0,0,.18);z-index:60
}
.fab-whats:hover{background:var(--brand-800)}

/* ==== CHATBOT WHATSAPP (PÁGINA) ==== */
.chatbot-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;padding:36px 0}
.chatbot-hero h1{font-size:clamp(28px,3.6vw,46px);line-height:1.15;margin:0 0 14px;color:var(--brand-800)}
.chatbot-hero .lead{font-size:1.075rem;color:#1f2937}
.chatbot-hero .cta-row{margin-top:18px}
.chatbot-hero img{width:100%;max-width:520px;aspect-ratio:4/3;object-fit:contain;margin-inline:auto;display:block}

.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:28px}
.feature-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:8px;text-align:center}
.feature-card .icon{font-size:36px;margin-bottom:6px}
.feature-card h3{font-size:18px;margin:0}
.feature-card p{margin:0;color:var(--muted)}

.plans{background:linear-gradient(180deg,#ffffff 0%,#f6fff9 100%)}
.plans-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:36px;align-items:center}
.plans-copy h3{margin:0 0 12px;font-size:24px}
.plans-copy p{color:#1f2937}
.plans-illustration{width:100%;max-width:520px;aspect-ratio:4/3;object-fit:contain;display:block;margin-inline:auto}

@media (max-width: 980px){
  .chatbot-hero{grid-template-columns:1fr;gap:20px}
  .chatbot-hero .hero-media{order:-1}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .plans-wrap{grid-template-columns:1fr}
}
@media (max-width: 560px){
  .feature-grid{grid-template-columns:1fr}
  .btn{width:100%}
}

/* ==== ECOSSISTEMA (hero com logo central + ícones em órbita) ==== */
.ecosystem{
  --brand-main: var(--brand);
  --brand-dark: var(--brand-800);
  --brand-rgb: 34,197,94;

  --card-bg-1: color-mix(in oklab, var(--brand-main) 12%, white);
  --card-bg-2: color-mix(in oklab, var(--brand-main) 22%, white);
  --card-border: color-mix(in oklab, var(--brand-main) 35%, transparent);
  --card-icon: var(--brand-dark);
  --card-hover-1: color-mix(in oklab, var(--brand-main) 65%, white 35%);
  --card-hover-2: color-mix(in oklab, var(--brand-main) 78%, white 22%);
  --card-hover-glow: rgba(var(--brand-rgb), .46);

  --ring-offset-x: -48px;
  --ring-offset-y: 0px;
  --logo-offset-x: 0px;
  --logo-offset-y: 18px;

  position:relative;display:grid;place-items:center;min-height:420px;
}
@supports not (color: color-mix(in oklab, white, black)){
  .ecosystem{
    --card-bg-1: #e9f9f0;
    --card-bg-2: #d6f6e4;
    --card-border: rgba(34,197,94,.35);
    --card-icon: #166534;
    --card-hover-1: #56d68e;
    --card-hover-2: #2fc06d;
    --card-hover-glow: rgba(34,197,94,.46);
  }
}
.ecosystem-center{
  position:absolute;top:50%;left:50%;
  transform:translate(calc(-50% + var(--logo-offset-x)), calc(-50% + var(--logo-offset-y)));
  z-index:2;
}
.ecosystem-logo{
  width:180px;height:auto;opacity:0;transform:scale(.82);
  animation:logoIntro .7s cubic-bezier(.2,.9,.2,1) .05s forwards,
             floatY 5.2s ease-in-out 1s infinite alternate,
             pulseGlow 6.5s ease-in-out 1s infinite;
}
@keyframes logoIntro{0%{opacity:0;transform:scale(.82)}60%{opacity:1;transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}
@keyframes floatY{0%{transform:translateY(0) scale(1)}100%{transform:translateY(-8px) scale(1)}}
@keyframes pulseGlow{0%{filter:drop-shadow(0 6px 16px rgba(0,0,0,.10))}50%{filter:drop-shadow(0 10px 28px rgba(0,0,0,.18))}100%{filter:drop-shadow(0 6px 16px rgba(0,0,0,.10))}}
.ecosystem-icons{
  --r: 200px;
  position:absolute; top:50%; left:50%;
  transform: translate(calc(-50% + var(--ring-offset-x)), calc(-50% + var(--ring-offset-y)));
  width:460px;height:460px;border-radius:50%;
}
.ecosystem-icon{
  position:absolute;top:50%;left:50%;
  width:76px;height:76px;border-radius:20px;
  background:linear-gradient(180deg, var(--card-bg-1), var(--card-bg-2));
  border:1px solid var(--card-border);
  display:grid;place-items:center;
  box-shadow:0 10px 24px rgba(0,0,0,.08), 0 1px 0 rgba(255,255,255,.55) inset;
  opacity:0;
  transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1*var(--a))) scale(.5);
  animation:iconPop .6s ease forwards;
  transition:background .25s ease, box-shadow .25s ease, transform .25s ease, filter .25s ease;
}
.ecosystem-icon svg{display:block}
.ecosystem-icon svg path{ fill: var(--card-icon) !important; }
@keyframes iconPop{
  from{opacity:0;transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1*var(--a))) scale(.5)}
  to  {opacity:1;transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1*var(--a))) scale(1)}
}
.ecosystem-icon:hover{
  transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1*var(--a))) scale(1.15);
  background:linear-gradient(180deg, var(--card-hover-1), var(--card-hover-2));
  box-shadow:
    0 14px 36px var(--card-hover-glow),
    0 0 0 6px color-mix(in oklab, var(--brand-main) 18%, transparent),
    0 1px 0 rgba(255,255,255,.55) inset;
}
@supports not (color: color-mix(in oklab, white, black)){
  .ecosystem-icon:hover{
    box-shadow:
      0 14px 36px var(--card-hover-glow),
      0 0 0 6px rgba(var(--brand-rgb), .18),
      0 1px 0 rgba(255,255,255,.55) inset;
  }
}
.ecosystem-icon:hover svg path{ fill:#fff !important; }
.i1{ --a:   0deg;  animation-delay: 1.0s; }
.i2{ --a:  45deg;  animation-delay: 1.2s; }
.i3{ --a:  90deg;  animation-delay: 1.4s; }
.i4{ --a: 135deg;  animation-delay: 1.6s; }
.i5{ --a: 180deg;  animation-delay: 1.8s; }
.i6{ --a: 225deg;  animation-delay: 2.0s; }
.i7{ --a: 270deg;  animation-delay: 2.2s; }
.i8{ --a: 315deg;  animation-delay: 2.4s; }
@media (max-width: 900px){
  .ecosystem{
    min-height:340px;
    --ring-offset-x:-32px; --ring-offset-y:0px;
    --logo-offset-x: 0px;  --logo-offset-y: 14px;
  }
  .ecosystem-logo{width:140px}
  .ecosystem-icons{width:360px;height:360px;--r:160px}
  .ecosystem-icon{width:64px;height:64px;border-radius:16px}
}
@media (max-width: 560px){
  .ecosystem{
    min-height:300px;
    --ring-offset-x:-22px; --ring-offset-y:0px;
    --logo-offset-x: 0px;  --logo-offset-y: 10px;
  }
  .ecosystem-logo{width:120px}
  .ecosystem-icons{width:300px;height:300px;--r:130px}
  .ecosystem-icon{width:56px;height:56px}
}
@media (prefers-reduced-motion: reduce){
  .ecosystem-logo, .ecosystem-icon{animation:none}
  .ecosystem-logo{opacity:1;transform:none}
}

/* Marca no header */
.logo .brand{
  color: var(--brand-800);
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: .3px;
}
.logo:hover .brand{ color: var(--brand); }

/* ====== PRODUTOS (SHELF) ====== */
.produtos-shelf { margin-top:8px; padding:8px 0 0; }
.produtos-shelf h2 { text-align:center; margin-bottom:6px; }
.produtos-lead { text-align:center; color:var(--muted); margin:-6px auto 22px; max-width:820px; }

.produtos-grid { display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }
@media (max-width:1024px){ .produtos-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:720px){ .produtos-grid{ grid-template-columns:1fr; } }

.p-card{
  position:relative; overflow:hidden; border-radius:16px;
  background: radial-gradient(600px 220px at 110% -20%, rgba(34,197,94,.08), transparent), #ffffff;
  border:1px solid #e9eef5; box-shadow:0 8px 26px rgba(2,6,23,.06);
  padding:40px 18px 16px;   /* espaço para o selo */
  color: var(--fg);         /* garante texto visível */
  isolation: isolate;       /* controla empilhamento interno */
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.p-card:hover{ transform:translateY(-3px); border-color:rgba(34,197,94,.35); box-shadow:0 14px 36px rgba(2,6,23,.10); }

/* Filete colorido à esquerda */
.p-card::before{
  content:""; position:absolute; inset:0 auto 0 0; width:6px;
  background:linear-gradient(180deg, rgba(34,197,94,.55), rgba(34,197,94,0));
  border-radius:16px 0 0 16px; opacity:.8;
}
.p-card.pro::before{ background:linear-gradient(180deg,#22c55e,#16a34a); }
/* renomeado para evitar conflito de .new */
.p-card.is-new::before{ background:linear-gradient(180deg,#22c55e,#0ea5e9); }
/* renomeado (opcional) */
.p-card.pcard--new::before{ background:linear-gradient(180deg,#22c55e,#0ea5e9); }

/* Selo estilo pílula */
.ribbon{
  position:absolute; top:10px; left:12px; right:auto; transform:none;
  border-radius:999px; background:#22c55e; color:#fff;
  padding:4px 10px; font-weight:800; font-size:11px; line-height:1;
  box-shadow:0 6px 14px rgba(34,197,94,.28);
  pointer-events:none; z-index:5;
}
.ribbon.alt{ background:#16a34a; }
.ribbon.is-new{ background:#0ea5e9; }
/* renomeado (opcional) */
.ribbon.ribbon--new{ background:#0ea5e9; }

.p-head{ display:flex; align-items:center; gap:12px; margin-bottom:6px; }
.p-ico{
  width:44px; height:44px; border-radius:12px; flex:none; display:grid; place-items:center;
  background:rgba(34,197,94,.12); border:1px solid rgba(34,197,94,.35); color:var(--brand-800);
}
.p-title h3{ margin:0; font-size:18px; line-height:1.15; }
.p-title small{ color:var(--muted); }

.p-desc{ color:var(--fg); margin:8px 0 8px; }
.p-bullets{ margin:0 0 14px; padding-left:0; list-style:none; display:grid; gap:8px; }
.p-bullets li{ display:flex; gap:8px; align-items:flex-start; color:var(--fg); }
.p-bullets li::before{
  content:"✓"; display:grid; place-items:center; flex:none;
  width:18px; height:18px; border-radius:50%;
  background:rgba(34,197,94,.14); border:1px solid rgba(34,197,94,.35);
  color:var(--brand-800); font-size:12px; font-weight:900;
  box-shadow:inset 0 0 0 2px rgba(34,197,94,.12);
}

.p-ctas{ display:flex; gap:10px; flex-wrap:wrap; }

.p-bg-deco{
  position:absolute; right:-40px; bottom:-40px; width:220px; height:220px;
  background:radial-gradient(closest-side, rgba(34,197,94,.14), transparent 72%);
  filter:blur(2px); pointer-events:none; z-index:1;
}
.p-card > *:not(.p-bg-deco){ position:relative; z-index:2; }

.produtos-more{ margin-top:16px; text-align:left; }

/* ==== FIX 1 (leve): garantir visibilidade no "Novo" ==== */
.p-card.is-new { color: var(--fg); }
.p-card.is-new * { opacity: 1 !important; visibility: visible !important; }
.p-card.is-new .p-title h3,
.p-card.is-new .p-title small,
.p-card.is-new .p-desc,
.p-card.is-new .p-bullets li { color: var(--fg) !important; }
.p-card.is-new .p-bullets li::before {
  background: rgba(34,197,94,.14);
  border: 1px solid rgba(34,197,94,.35);
  color: var(--brand-800);
}
.p-card.is-new .btn { color: #fff; }
.p-card.is-new .btn.btn-outline { color: var(--brand) !important; }

/* ==== FIX 2 (forte): neutraliza regras externas (display/transform/filter etc.) ==== */
.p-card.is-new,
.p-card.is-new *{
  -webkit-text-fill-color: currentColor !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  animation: none !important;
  transition: none !important;
  transform: none !important;
}
.p-card.is-new .p-title,
.p-card.is-new .p-desc,
.p-card.is-new .p-bullets,
.p-card.is-new .p-ctas{ display: block !important; }
.p-card.is-new .p-title{ display: grid !important; gap: 2px !important; }
.p-card.is-new .p-bullets{ display: grid !important; }
.p-card.is-new .p-bullets li{ display: flex !important; }
.p-card.is-new .btn{ display: inline-block !important; }

/* --- Anti-colisão do header com CSS de páginas --- */
.legacy-header .btn { 
  width: auto !important; 
  line-height: 1 !important;
  padding-inline: 18px;
}

.legacy-nav a{
  line-height: 1.1 !important;  /* ignora line-height global 1.6 */
  border-bottom: 2px solid transparent; /* evita "pulo" no hover */
}
.legacy-nav a:hover{
  border-bottom-color:#4CAF50;
  color:#4CAF50;
}

/* mantém o caret na mesma linha */
.legacy-nav .dropbtn{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.legacy-nav .dropbtn::after{
  content: "▼";            /* sem espaço antes */
  font-size: 12px;
  line-height: 1;
  color: #4CAF50;
}

.cta-photo{
  position:relative;
  margin:0 auto;
  display:grid;
  place-items:center;
  max-width:380px;
  /* removido fundo e borda */
  background:none;      
  border-radius:0;      
  padding:0;
}

.cta-photo img{
  width:100%;
  height:auto;
  border-radius:24px; /* pode manter se quiser cantos arredondados */
  box-shadow:0 12px 36px rgba(2,6,23,.25); /* sombra só na imagem */
  object-fit:cover;
  object-position:center;
}

/* ====== SERVICES (bloco do site antigo) ====== */
.services { padding: 72px 0; }
.services-title{
  text-align:center;
  font-weight:800;
  color:#166534;
  font-size: clamp(24px, 3vw, 38px);
  margin: 0 0 36px;
}
.services-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}
.service-card{
  background:#fff;
  border:1px solid #e5efe7;
  border-radius:18px;
  padding: 26px 22px;
  text-align:center;
  box-shadow: 0 8px 20px rgba(22,101,52,0.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.service-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(22,101,52,0.10);
  border-color:#cde7d4;
}
.service-icon{
  width:64px; height:64px; margin: 0 auto 14px;
  display:grid; place-items:center;
  font-size:30px; line-height:1;
  color:#166534; /* verde escuro */
  background: #e8f6ed;     /* fundo verde claro */
  border-radius:16px;
}
.service-card h3{
  margin: 8px 0 10px;
  color:#166534;
  font-weight:800;
  font-size: clamp(16px, 2vw, 20px);
}
.service-card p{
  margin:0;
  color:#1f2937;
  font-size: 0.98rem;
  line-height:1.55;
}

/* Responsivo */
@media (max-width: 1024px){
  .services-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .services-grid{ grid-template-columns: 1fr; }
  .service-card{ text-align:left; }
  .service-icon{ margin:0 0 10px 0; }
}

/* === Títulos das seções em verde === */
#resultados .container > h2,
#como-funciona .container > h2{
  color:#166534;
}

/* === Subtítulos dos cards do "Como funciona" === */
#como-funciona .step h3{
  color:#166534;
}

/* ===== NOSSO TIME ===== */
.team{ background:#ffffff; padding:56px 0; border-top:1px solid var(--ring) }
.team .section-title{ font-size:clamp(22px,3.2vw,30px); margin:0 0 8px; color:var(--ink) }
.team .lead{ color:var(--muted); margin:0 0 22px }

.team-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.member{
  background:#fff;
  border:1px solid var(--ring);
  border-radius:16px;
  padding:16px;
  box-shadow:0 8px 22px rgba(2,6,23,.06);
}

/* depois — proporção de retrato e foco um pouco acima do centro */
.member .photo{
  aspect-ratio: 4 / 5;              /* 👈 fica mais alto que largo */
  border-radius:12px;
  overflow:hidden;
  background:#f1f5f9;
  box-shadow:0 6px 20px rgba(2,6,23,.08);
  --y: 18%;                         /* foco vertical padrão (ajustável) */
}
.member .photo img{
  width:100%; height:100%;
  object-fit: cover;
  object-position: 50% var(--y);    /* 👈 usa a variável para “subir” o enquadramento */
  display:block;
}


.member h3{ margin:12px 0 2px; font-size:18px; color:var(--ink) }
.member .role{ color:var(--muted); font-size:14px }
.member .tag{
  display:inline-block; margin-top:8px; padding:6px 10px;
  border-radius:999px; background:rgba(34,197,94,.08);
  color:var(--brand-800); font-weight:700; font-size:12px;
}

/* responsivo */
@media (max-width: 980px){ .team-grid{ grid-template-columns:repeat(2,1fr) } }
@media (max-width: 600px){ .team-grid{ grid-template-columns:1fr } }

/* Ícones do anel (primeira sessão) */
:root{
  /* mesmo verde dos ícones de telefone/mensagem */
  --eco-glyph-color: #1C7C3A;
}

/* garante que imagens antigas (se existirem) não apareçam */
.ecosystem .ecosystem-icon img{ display:none; }

/* glifo com máscara (aplica a cor acima a todos os SVG externos) */
.eco-glyph{
  /* área clicável */
  display:block;
  width:36px; 
  height:36px;

  /* cor final do ícone */
  background: var(--eco-glyph-color);

  /* transforma o SVG externo em máscara */
  -webkit-mask: var(--ico) no-repeat center / 32px 32px;
          mask: var(--ico) no-repeat center / 32px 32px;
  opacity: .95; /* leve ajuste para combinar com os demais */
}

/* responsivo fino (mantém proporção em telas grandes/pequenas) */
@media (min-width: 1200px){
  .eco-glyph{ -webkit-mask-size:34px 34px; mask-size:34px 34px; }
}
@media (max-width: 640px){
  .eco-glyph{ -webkit-mask-size:28px 28px; mask-size:28px 28px; }
}

.toc ol {
  list-style-position: inside; /* mantém alinhado */
  padding-left: 0;
}

.toc ol li::marker {
  color: var(--brand-800); /* cor dos números */
  font-weight: 700;        /* deixa mais forte */
}

