/* CD Consultas: landing de captura. Linguagem inspirada na Wise (display pesado, pílulas, fundo tingido), com as cores da marca. */
:root{
  --accent:#0862AF; --accent-strong:#064F8E; --navy:#053B6B; --teal:#B3EFE7; --teal-soft:#E6F7F4;
  --ink:#0F1E2E; --body:#3E4C5C; --muted:#5D6B7B; --line:#DDE5EC;
  --canvas:#F4F8FB; --surface:#FFFFFF; --tint:#EAF2F9;
  --r:24px; --r-sm:14px;
  --font-h:"Sora",system-ui,sans-serif; --font-b:"Inter",system-ui,sans-serif;
  --shadow:0 18px 50px rgba(5,59,107,.10);
}
@media (prefers-color-scheme:dark){
  :root{
    --accent:#5AA9F0; --accent-strong:#86C1F5; --navy:#C9E3FA; --teal:#14453F; --teal-soft:#12312D;
    --ink:#EEF3F8; --body:#C3CEDA; --muted:#9AA8B7; --line:#24364A;
    --canvas:#0B1622; --surface:#112131; --tint:#0F1D2C;
    --shadow:0 18px 50px rgba(0,0,0,.35);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-b);color:var(--body);background:var(--canvas);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--font-h);color:var(--ink);margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:clamp(34px,5.2vw,58px);line-height:1.05;font-weight:800;text-wrap:balance}
.h2{font-size:clamp(26px,3.4vw,40px);line-height:1.12;font-weight:800;max-width:22ch;text-wrap:balance}
h3{font-size:19px;line-height:1.3;font-weight:700}
p{margin:0 0 1em}
a{color:var(--accent)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.muted{color:var(--muted);max-width:60ch}
.kicker{display:block;color:var(--accent);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--accent);color:#fff;padding:10px 16px;border-radius:999px;font-weight:600}
.skip:focus{top:12px}
section[id],main[id]{scroll-margin-top:84px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}


/* topo */
.topo{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--canvas) 88%,transparent);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--line)}
.topo-in{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px}
.logo img{height:28px;width:auto}
.menu{display:none;gap:30px}
.menu a{color:var(--ink);text-decoration:none;font-weight:500;font-size:15px}
.menu a:hover{color:var(--accent)}
@media (min-width:900px){.menu{display:flex}}

/* botões: pílula, um único azul */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;font-family:var(--font-b);border:0;border-radius:999px;padding:14px 26px;font-size:16px;cursor:pointer;touch-action:manipulation;transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s,box-shadow .2s}
.btn:hover{background:var(--accent-strong);box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 30%,transparent)}
.btn:active{transform:translateY(1px) scale(.99)}
.btn:disabled{background:#9AA8B7;cursor:not-allowed;box-shadow:none}
.btn i{font-size:20px}
.btn-sm{padding:10px 18px;font-size:14px}
.btn-sm i{font-size:18px}
.btn-lg{padding:17px 30px;font-size:17px}
.btn-full{width:100%}
.btn-light{background:#fff;color:#053B6B}
.btn-light:hover{background:#EAF2F9;color:#053B6B}
.btn-ghost{display:inline-flex;align-items:center;padding:14px 8px;color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px;text-decoration-color:var(--teal)}
@media (prefers-color-scheme:dark){.btn{color:#06223D}.btn:hover{color:#06223D}}

/* hero */
.hero{padding:40px 0 48px}
.hero-in{display:grid;gap:32px;align-items:center}
.lead{font-size:clamp(17px,1.6vw,20px);color:var(--body);max-width:44ch;margin:18px 0 28px}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.hero-media{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow);background:var(--tint)}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:60% 40%}
@media (min-width:960px){
  .hero{padding:64px 0 72px}
  .hero-in{grid-template-columns:1.05fr .95fr;gap:56px}
  .hero-media{aspect-ratio:5/6;margin-right:-40px}
}

/* fatos */
.fatos{border-block:1px solid var(--line);background:var(--surface)}
.fatos-in{display:grid;grid-template-columns:1fr 1fr;gap:0}
.fato{display:flex;gap:12px;align-items:flex-start;padding:20px 8px}
.fato i{font-size:26px;color:var(--accent);flex-shrink:0;margin-top:2px}
.fato b{display:block;color:var(--ink);font-size:15px;line-height:1.3}
.fato span{font-size:14px;color:var(--muted)}
@media (min-width:900px){.fatos-in{grid-template-columns:repeat(4,1fr)}.fato{padding:26px 16px}.fato+.fato{border-left:1px solid var(--line)}}

/* seções */
.sec{padding:72px 0}
.sec-tint{background:var(--tint)}
@media (min-width:960px){.sec{padding:104px 0}}

/* bento de situações */
.bento{display:grid;gap:16px;margin-top:36px}
.b{border-radius:var(--r);padding:28px;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end}
.b i{font-size:34px;margin-bottom:auto;padding-bottom:28px}
.b p{margin:0;font-size:15.5px}
.b-dor{background:var(--accent);color:#EAF4FF}
.b-dor h3{color:#fff}.b-dor i{color:var(--teal)}
.b-sono{background:var(--surface);border:1px solid var(--line)}
.b-sono i{color:var(--accent)}
.b-mente{background:var(--teal);color:#14423C}
.b-mente h3{color:#0B3530}.b-mente i{color:#0B5E54}
.b-casos{background:linear-gradient(150deg,#053B6B 0%,#0A4F8C 100%);color:#D5E6F7;gap:6px}
.b-casos h3{color:#fff;font-size:clamp(22px,2.4vw,28px);max-width:18ch}
.b-casos .btn{align-self:flex-start;margin-top:18px}
@media (prefers-color-scheme:dark){.b-dor{background:#0A4F8C}.b-mente{color:#BFEDE5}.b-mente h3{color:#E6FBF7}.b-mente i{color:#7FE0D3}}
@media (min-width:860px){
  .bento{grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(230px,auto)}
  .b-dor{grid-column:span 3}
  .b-sono{grid-column:span 3}
  .b-mente{grid-column:span 2}
  .b-casos{grid-column:span 4}
}

/* como funciona: título fixo + linha do tempo */
.etapas-in{display:grid;gap:36px}
.etapas{list-style:none;margin:0;padding:0;position:relative;counter-reset:e}
.etapas::before{content:"";position:absolute;left:19px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--accent),var(--teal))}
.etapas li{position:relative;padding:0 0 34px 64px;counter-increment:e}
.etapas li:last-child{padding-bottom:0}
.etapas li::before{content:counter(e);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);color:var(--accent);font-family:var(--font-h);font-weight:700;display:grid;place-items:center}
.etapas h3{margin-bottom:6px}
.etapas p{margin:0;max-width:52ch}
@media (min-width:960px){
  .etapas-in{grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
  .etapas-head{position:sticky;top:110px}
}

/* médicos: carrossel com snap */
.medicos-scroll{overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:32px 0 8px}
.medicos-scroll::-webkit-scrollbar{display:none}
.medicos{display:flex;gap:18px;padding:0 20px;width:max-content}
@media (min-width:1220px){.medicos{padding:0 calc((100vw - 1180px)/2 + 20px)}.medicos-scroll{scroll-padding-inline:calc((100vw - 1180px)/2 + 20px)}}
.medico{scroll-snap-align:start;width:250px;flex-shrink:0;margin:0}
.foto{aspect-ratio:4/5;border-radius:var(--r);background-color:var(--tint);background-repeat:no-repeat;background-size:270% auto;background-position:100% 32%}
.medico figcaption{padding:14px 4px 0}
.medico b{display:block;color:var(--ink);font-family:var(--font-h);font-size:16.5px}
.medico .area{display:block;font-size:14px;color:var(--muted)}
.medico .crm{display:block;font-size:13px;color:var(--accent);font-weight:600;margin-top:4px}

/* depoimentos */
.depo-in{display:grid;gap:28px}
.depo-in figure{margin:0}
.depo-in blockquote{margin:0 0 14px;color:var(--ink)}
.depo-in figcaption{font-weight:600;color:var(--ink);font-size:15px}
.depo-in figcaption span{display:block;font-weight:400;color:var(--muted);font-size:13.5px}
.depo-main blockquote{font-family:var(--font-h);font-size:clamp(22px,2.6vw,32px);line-height:1.3;font-weight:600;letter-spacing:-.01em}
.depo-list{display:grid;gap:22px}
.depo-list figure{padding:22px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line)}
.depo-list blockquote{font-size:16px}
@media (min-width:960px){.depo-in{grid-template-columns:1.2fr 1fr;gap:72px;align-items:center}}

/* faq */
.faq-in{max-width:820px}
.faq{margin-top:22px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 44px 20px 0;font-weight:600;font-size:17px;color:var(--ink);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;margin-top:-9px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);transition:transform .25s cubic-bezier(.16,1,.3,1)}
.faq details[open] summary::after{transform:rotate(225deg);margin-top:-3px}
.faq p{padding:0 0 18px;margin:0;max-width:65ch}

/* cta final */
.cta-final{background:#053B6B;color:#D5E6F7;padding:80px 0}
.cta-in{text-align:center;display:flex;flex-direction:column;align-items:center}
.cta-final h2{color:#fff;font-size:clamp(28px,4vw,46px);font-weight:800}
.cta-final p{margin-bottom:28px}

/* rodapé */
.rodape{background:#071A2C;color:#9FB1C3;padding:44px 0 100px;font-size:14px}
.rodape a{color:#fff}
.rodape p{margin:0 0 6px}
.rod-logo{height:24px;width:auto;margin-bottom:16px}
.rod-in{display:grid;gap:24px}
.aviso{font-size:13px;color:#7F92A6}
@media (min-width:760px){.rod-in{grid-template-columns:1fr 1fr}}

/* whatsapp flutuante */
.wa-float{position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:60;width:58px;height:58px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(5,59,107,.35);text-decoration:none}
.wa-float i{font-size:30px}

/* modal */
.modal{position:fixed;inset:0;z-index:100;overscroll-behavior:contain;background:rgba(6,20,35,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.modal[hidden]{display:none}
.modal-box{position:relative;background:var(--surface);border-radius:var(--r);padding:30px 26px;width:100%;max-width:440px;max-height:92vh;overflow:auto;overscroll-behavior:contain;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.modal-x{position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:var(--tint);color:var(--ink);cursor:pointer;display:grid;place-items:center;font-size:18px}
.modal h2{font-size:23px;margin-right:36px}
.modal-sub{color:var(--muted);font-size:14.5px;margin-bottom:18px}
#lead-form label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:0 0 6px}
#lead-form input[type=text],#lead-form input[type=tel],#lead-form input[type=email],#lead-form select{display:block;width:100%;margin:0 0 14px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font-size:16px;font-family:var(--font-b);background:var(--canvas);color:var(--ink)}
#lead-form input::placeholder{color:#6B7888}
#lead-form input:focus,#lead-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
.opc{font-weight:400;color:var(--muted)}
#lead-form .consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:400;color:var(--body);line-height:1.45;margin:4px 0 8px}
.consent input{margin-top:2px;width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}
.erro{color:#C62828;font-size:13px;min-height:1.2em;margin:4px 0 10px}
@media (prefers-color-scheme:dark){.erro{color:#FF8A80}}
#payload{background:#071A2C;color:#B3EFE7;font-size:12px;padding:14px;border-radius:12px;overflow:auto;max-height:300px;white-space:pre-wrap;word-break:break-all}

/* entrada suave das seções (motivo: hierarquia de leitura) */
@media (prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
  .reveal.on{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.consent-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:720px;margin:0 auto;background:var(--surface);color:var(--body);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:14px 16px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:14px}
.consent-bar[hidden]{display:none}
.consent-bar p{margin:0;flex:1 1 280px}
.consent-bar a{color:var(--accent)}
.consent-acoes{display:flex;gap:8px;margin-left:auto}
