:root { 
  /* Paleta de Cores */
  --leaf-900:#16493C;    /* verde profundo */
  --leaf-700:#1C4D41;    /* verde médio */
  --brain-85: #BD9C54;
  --brain-dark: #4D3F20;
  --sand-50:#FEF3C7;     /* creme quente */
  --mist-100:#F1F5F9;
  --ink-500:#64748B;    /* cinza claro */
  --ink-800:#1F2937;     /* texto */
  --accent:#DC2626;      /* vermelho suave para micro-acento */
  --shadow:0 4px 4px 0 rgba(0, 0, 0, 0.2); 
  --radius:18px;
  --maxw:1100px;
  --minw:300px;
  --font-title:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; 
  --font-text:"Source Sans 3", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  --bg-fundo-grande: url("../img/fundo-prospective-1366.png");
  --bg-fundo-pequeno: url("../img/fundo-prospective-768-400.png");

  --bg-fundo-claro-pequeno: url("../img/fundo-prospective-claro-768-400.png");

  --animate-duration: 1.5s;
}

/* Base */
*, *::before, *::after { box-sizing:border-box }
html { scroll-behavior:smooth; font-size: 100%;}
body { margin:0; background-image: url("../img/fundo-claro-prospective.png"); background-size: cover; background-attachment: fixed; background-position: center; font-family:var(--font-text); color:var(--ink-800); line-height:1.7 }
img { max-width:100%; display:block }
a { color:inherit; text-decoration:none }
:focus-visible { outline:3px solid var(--brain-85); outline-offset:2px }
p {display: block; margin: 12px 0}

/* Layout */
.container { min-width: var(--minw); max-width:var(--maxw); margin-inline:auto; padding:0 20px; overflow: hidden; padding: 20px;} 
.section { min-width: var(--minw); padding: 72px 0; }
h1 { font-family:var(--font-title); font-size:2rem; text-align: center; line-height:1.2; margin:.4rem 0 1rem; color:#fff; text-transform:uppercase;} 
h2 { font-family:var(--font-title); font-size:2rem; margin:0 0 8px; color:var(--brain-dark)}
h3 { font-family:var(--font-title); font-size:1rem; margin:0 0 12px; color:var(--brain-dark)}
.icone-flutuante {display: none; width: 75px; border-radius: 25px; }

/* Header com curva orgânica */
.topbar { position:sticky; top:0; z-index:40; background:rgba(255,255,255,.85); backdrop-filter:saturate(180%) blur(6px); border-bottom:1px solid #e5e7eb } 
.topbar-inner { display:flex; align-items:center; justify-content:space-between; height:72px } 
.brand { display:flex; align-items:center; gap:12px } 
.leafmark { width:51px; height:51px; background-image: url("../img/logo-centro-prospective-peq.png"); } 
.brand-name { font-family:var(--font-title); font-weight:600; color: var(--leaf-900) } 
nav ul { display:flex; gap:18px; list-style:none; margin:0; padding:0 } 
nav a { font-weight:600; color:var(--leaf-900) } 
nav a::after {display: flex; content: ""; background: var(--leaf-900);  height: 2px; width: 0; transition: width 0.75s;}
nav a:hover::after {width: 100%;}
.menu-btn { display:none; cursor:pointer }
.menu-icon { position:relative; width:30px; height:2px; background:#000 } 
.menu-icon::before, .menu-icon::after { content:""; position:absolute; width:100%; height:2px; background:#000; } 
.menu-icon::before { top:-8px }
.menu-icon::after { top:8px }

/* Hero */
header { position:relative; box-shadow: var(--shadow); min-height: 100dvh; display: flex; justify-content: center; align-items: center;}
.hero { overflow:hidden; background-image: var(--bg-fundo-grande); background-size: cover; background-position: center; background-repeat: no-repeat; box-shadow: var(--shadow)}
.hero-main { display: block; padding: 20px 0 }
.brain { width: 12.5rem; margin: auto }
.lead { font-size:1.4rem; color: white; text-align: center }

/* Sobre */

.sobre__container { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:center; }
.sobre__titulo { font-family:var(--font-title); margin:0 0 8px}
.sobre__resumo { text-align: justify; }

/* CTA - Call To Action */
.cta { display:inline-flex; align-items:center; gap:10px; background:var(--leaf-700); color:#fff; border-radius:999px; padding:12px 18px; font-weight:600; box-shadow:var(--shadow) } 
.cta:hover { filter:brightness(1.25) } 

/* Serviços com ilustrações leves */
.cards { display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card { background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);padding:20px;box-shadow: var(--shadow); position: relative;}
.card h3 { text-align:center }
.card__tipo { font-size: 0.7rem; color:var(--ink-500); }
.card__espec { font-size: 0.75rem; padding-bottom: 30px; }
.card__link { font-size: 0.9rem; text-align: right; position: absolute; bottom: 5px; right: 30px }

/* Seções check/benefícios */
.checklist{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.check{background:#fff;border:1px solid var(--ink-300);border-radius:14px;padding:16px; box-shadow: var(--shadow);}
.check h3::before{content:"✔";margin-right:8px}

/* Linha do tempo da primeira consulta */
.timeline{ position:relative; padding-left:24px }
.timeline::before{ content:""; position:absolute; left:13px; top:0; bottom:0; width:2px; background:linear-gradient(var(--brain-85),var(--brain-dark))}
.t-step{position:relative;padding: 0 0 16px 8px;color:var(--brain-dark)}
.t-step::before{content:"";position:absolute;left:-16px;top:6px;width:12px;height:12px;border-radius:999px;background:var(--brain-85);border:2px solid #fff;box-shadow:0 0 0 2px var(--brain-dark)}
.t-card { position: absolute; bottom:0; right:0; width: 320px}

/* FAQ */
.faq details{border:1px solid #e5e7eb;border-radius:14px;padding:14px 16px;background:#fff}
.faq details + details{margin-top:12px}
.faq summary{cursor:pointer;font-weight:700;color:#4D3F20}
.faq details:hover{box-shadow: var(--shadow); transition: box-shadow 0.5s}


/* Filtros de publicações */
.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:12px;margin-bottom: 15px;}
.filters input[type=search], .filters select{display: inline; width: 100%; margin: 5px; padding:10px 12px;border:1px solid var(--ink-200);border-radius:12px;font:inherit;color:grey}

/* Form */
.contato { background-image: var(--bg-fundo-grande); background-size: cover; background-attachment: fixed; background-position: center; color:#fff }
.contato h2 { font-family:var(--font-title);margin:0 0 8px}
form{display:grid;gap:12px}
label{display: block; padding-bottom: 5px; font-weight:700;}
input,textarea,select{width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:14px;font:inherit;background:#fff}
input[type=checkbox]{width:auto;}
textarea{min-height:120px;resize:vertical}
.consent{display:flex;gap:10px;align-items:flex-start}

/* Footer */
footer { background:rgba(255,255,255,.85); backdrop-filter:saturate(180%) blur(6px); border-top:1px solid #e5e7eb; line-height: 1.25 }
footer h2 { font-size: 1.6rem }
footer h3 { margin-top:20px }
.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:15px;padding:10px;margin: auto; width: 80% }
.footer__info, .footer__map, .footer__contact { padding: 10px; }
.footer__map ul { list-style:none; padding:12px 0; margin:0; display:grid; gap:10px }
.localizacao { line-height: 1.25 }
.icone, .mail { display: inline-block; color: var(--leaf-900) }
footer strong { font-family:var(--font-title) }
.small { font-size: 0.8rem; font-family:var(--font-title);color:var(--leaf-900) }
#politica-privacidade { padding:10px }

.footer__final { text-align: center }

/* LGPD bar */
.lgpd{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;width:min(96%,var(--maxw));background:#fff;border:1px solid var(--ink-200);box-shadow:var(--shadow);border-radius:14px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}

/* Outros */
.pill{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--mist-100);border:1px solid #e5e7eb;font-weight:600}
.muted{color:#475569}
.desativaLGPDBar{display: none}
.animando__slideIn {animation: slideIn 2s forwards}

@media screen and (max-width:768px) {
  body {background-image: var(--bg-fundo-claro-pequeno)}
  .container {max-width: 768px}
  .icone-flutuante{display: block; position: fixed; bottom: 5px; right: 10px; z-index: 999;}
  nav{display:none}
  .whatsapp{display: none}
  .menu-btn{display:flex}
  .hero, .contato {background-image: var(--bg-fundo-pequeno)}
  .brain {width: 12.5rem}
  .sobre__container{grid-template-columns: 1fr}
  .checklist{grid-template-columns: 1fr}
  .cards{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr; text-align: center}
  .lgpd{flex-direction:column;align-items:flex-start}
}

@media screen and (min-width: 769px) {
  .brain {width: 18.75rem}
  nav ul {gap: 18px}
}

@media screen and (max-width: 960px) {
  .t-card{position: relative; top: 10px; margin: auto}
}

.dadosEnviados {
  animation: enviado 3s;
  transition: background 1s;
}

@keyframes enviado {
  0% {
    background: #16493C;
    color: #fff;
 }
  25% {
    background: #fff;
    color: #16493C;
 }
  75% {
    background: #fff;
    color: #16493C;
 }
  100% {
    background: #16493C;
    color: #16493C;
 }
}