/* Site da Dra. Cristina Loiola. Base: mockup 6. Público idoso e familiares: corpo 19 px, contraste alto, alvos ≥ 48 px. */
@font-face{font-family:"Playfair Display";src:url(/assets/fonts/playfair-display-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(/assets/fonts/playfair-display-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Josefin Sans";src:url(/assets/fonts/josefin-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Josefin Sans";src:url(/assets/fonts/josefin-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  --marinho:#232A45; --salvia:#5E9C8A; --salvia-esc:#3F7565; --salvia-claro:#E6EFEB; --creme:#F6F4EF; --branco:#FFFFFF;
  --texto:#1F2433; --suave:#4D5262; --linha:#DCD7CC;
  --ft:"Playfair Display",Georgia,"Times New Roman",serif; --fx:"Josefin Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:16px; --wrap:1160px;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--creme);color:var(--texto);font:400 1.1875rem/1.6 var(--fx);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--salvia-esc)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.pular{position:absolute;left:-999px;top:8px;background:var(--marinho);color:#fff;padding:10px 16px;border-radius:8px;z-index:20}
.pular:focus{left:8px}
:focus-visible{outline:3px solid var(--salvia);outline-offset:3px}
h1,h2,h3{font-family:var(--ft);font-weight:600;color:var(--marinho);line-height:1.1}
h1{font-size:clamp(2.6rem,6vw,4.6rem)}
h2{font-size:clamp(2rem,4vw,2.9rem)}
h3{font-size:1.6rem}
.ic{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font:600 1.05rem/1 var(--fx);text-decoration:none;border:2px solid transparent;transition:transform .15s,background .15s}
.btn--zap{background:var(--salvia-esc);color:#fff}
.btn--zap:hover{background:#346455}
.btn--contorno{border-color:var(--salvia-esc);color:var(--salvia-esc);background:transparent}
.link-seta{display:inline-flex;align-items:center;gap:8px;font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1.5px;min-height:48px}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.btn:hover{transform:translateY(-2px)}}

/* cabeçalho */
.cab{background:var(--creme);border-bottom:1px solid var(--linha);position:sticky;top:0;z-index:10}
.cab__in{display:flex;align-items:center;gap:24px;min-height:84px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--marinho)}
.marca__txt{display:grid;gap:3px;line-height:1.15}
.marca__nome{font:600 1.3rem/1.1 var(--ft);text-transform:uppercase;letter-spacing:.04em}
.marca__esp{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase}
.marca__reg{display:none}
.menu{display:flex;gap:26px;margin-left:auto}
.menu a{color:var(--texto);text-decoration:none;font-size:1.08rem;padding:10px 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a[aria-current]{border-bottom-color:var(--salvia)}
.cab__agendar{min-height:48px;padding:0 20px}
.menu-cel{display:none}

/* topo da home */
.hero{position:relative;overflow:hidden}
.hero__in{display:grid;grid-template-columns:1.05fr .95fr;align-items:end;gap:24px;min-height:560px}
.hero__txt{padding:72px 0}
.hero__txt p{font-size:1.35rem;color:var(--suave);margin:18px 0 30px;max-width:40ch}
.hero__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:22px}
.hero__reg{margin-top:26px;font-size:.92rem;letter-spacing:.06em;color:var(--suave)}
.hero__foto{position:relative;align-self:end}
.hero__foto img{border-radius:240px 240px 0 0;width:100%;max-width:480px;margin-left:auto;aspect-ratio:760/720;object-fit:cover}
.arvore-fundo{position:absolute;right:30%;top:50%;width:min(620px,62vw);transform:translateY(-50%);opacity:.13;pointer-events:none}

/* seções */
.secao{padding:84px 0}
.secao--branca{background:var(--branco)}
.titulo-linha{display:flex;align-items:center;gap:24px;justify-content:center;text-align:center;margin-bottom:48px}
.titulo-linha::before,.titulo-linha::after{content:"";flex:1;max-width:220px;height:1px;background:var(--salvia)}
.atende{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:34px 40px}
.atende a,.atende li>span{display:flex;align-items:center;gap:20px;color:var(--texto);text-decoration:none;font-size:1.3rem;line-height:1.3;min-height:72px;padding:8px 12px;border-radius:14px;transition:background .15s}
.atende a:hover{background:var(--creme)}
.atende .ic{width:74px;height:74px;min-width:74px;color:var(--salvia-esc);stroke-width:1.2}
.atende a:hover span{text-decoration:underline;text-underline-offset:5px}
.faixa{display:flex;gap:28px;align-items:center;background:var(--salvia-claro);border-radius:var(--r);padding:34px 40px}
.faixa .ic{width:64px;height:64px;color:var(--salvia-esc);stroke-width:1.3}
.faixa h2{font-size:clamp(1.7rem,3vw,2.3rem)}
.faixa p{color:var(--suave);margin:6px 0 2px}
.sobre{display:grid;grid-template-columns:300px 1fr;gap:56px;align-items:center}
.sobre img{border-radius:48% 52% 46% 54%/50% 44% 56% 50%;width:300px}
.sobre p{color:var(--suave);margin:14px 0 6px;max-width:52ch}
.onde{display:flex;flex-wrap:wrap;align-items:center;gap:20px 40px;background:var(--creme);border-radius:var(--r);padding:40px}
.onde .ic-grande{width:56px;height:56px;color:var(--salvia-esc)}
.onde h2{margin-bottom:8px}
.onde p{font-size:1.2rem}
.nw{white-space:nowrap}
.onde__acoes{display:flex;flex-wrap:wrap;gap:14px;margin-left:auto}

/* páginas internas */
.topo-int{padding:48px 0 32px;border-bottom:1px solid var(--linha)}
.topo-int+.secao{padding-top:48px}
.topo-int p{font-size:1.25rem;color:var(--suave);max-width:60ch;margin-top:14px}
.migalha{font-size:.92rem;color:var(--suave);margin-bottom:14px}
.migalha a{color:inherit}
.texto{max-width:72ch}
.texto h2{margin:56px 0 16px}
.texto h3{margin:32px 0 8px}
.texto p,.texto li{color:var(--texto)}
.texto p+p{margin-top:14px}
.texto ul{padding-left:1.2em;margin:12px 0}
.texto li{margin:6px 0}
.cartoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:22px 0}
.cartao{background:var(--branco);border:1px solid var(--linha);border-radius:var(--r);padding:24px}
.cartao h3{font-size:1.45rem;margin:10px 0 6px}
.cartao p{color:var(--texto);font-size:1.1rem}
.cartao .ic{width:40px;height:40px;color:var(--salvia-esc);stroke-width:1.4}
.passos{counter-reset:p;list-style:none;padding:0;display:grid;gap:16px;margin:22px 0}
.passos li{counter-increment:p;display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start}
.passos li::before{content:counter(p);width:52px;height:52px;border-radius:50%;background:var(--salvia-claro);color:var(--salvia-esc);display:grid;place-items:center;font:600 1.4rem var(--ft)}
.passos b{display:block;color:var(--marinho);font-size:1.2rem}
details.faq{border-bottom:1px solid var(--linha)}
details.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 12px;border-radius:10px;font-weight:600;font-size:1.15rem;color:var(--marinho)}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary:hover{background:var(--branco)}
details.faq summary::after{content:"+";flex:none;width:36px;height:36px;border-radius:50%;background:var(--salvia-claro);display:grid;place-items:center;font:600 1.5rem/1 var(--fx);color:var(--salvia-esc)}
details.faq[open] summary::after{content:"–"}
details.faq p{padding:0 12px 22px;color:var(--texto)}
.aviso{background:var(--salvia-claro);border-radius:12px;padding:18px 22px;margin:22px 0;color:var(--texto)}
.cta-final{text-align:center;padding:72px 0}
.cta-final p{color:var(--suave);margin:12px auto 0;max-width:46ch}
.cta-final .btn{margin-top:28px}

/* rodapé e barra do celular */
.rodape{background:var(--marinho);color:#E9E7F0;padding:48px 0 40px}
.rodape__in{display:flex;flex-wrap:wrap;gap:22px 48px;align-items:center;justify-content:space-between}
.rodape p{font-size:1.02rem;line-height:1.7}
.marca--claro{color:#fff}
.marca--claro .marca__esp{color:#C9CEDB}
.rodape a{color:#fff}
.rodape__links{display:flex;gap:22px;flex-wrap:wrap}
.rodape__links a{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.rodape__credito{flex-basis:100%;border-top:1px solid rgb(255 255 255 / .14);padding-top:18px;font-size:.9rem!important;color:#C9CEDB}
.barra-acao{display:none}

/* celular */
@media (max-width:900px){
  body{font-size:1.125rem}
  .menu,.cab__agendar{display:none}
  .cab__in{min-height:72px;justify-content:space-between}
  .marca__nome{font-size:1rem;white-space:nowrap}
  .marca img{width:38px;height:38px}
  .menu-cel{display:block;position:relative}
  .menu-cel summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:48px;padding:0 14px;border:1px solid var(--linha);border-radius:999px;cursor:pointer;font-weight:600}
  .menu-cel summary::-webkit-details-marker{display:none}
  .menu-cel nav{position:absolute;right:0;top:58px;background:var(--branco);border:1px solid var(--linha);border-radius:var(--r);box-shadow:0 12px 32px rgb(0 0 0 / .1);display:grid;min-width:240px;padding:8px}
  .menu-cel nav a{padding:14px 16px;color:var(--texto);text-decoration:none;font-size:1.1rem;border-radius:10px}
  .menu-cel nav a:hover{background:var(--creme)}
  .hero__in{grid-template-columns:1fr;min-height:0}
  .hero__txt{padding:40px 0 8px}
  .hero__foto img{max-width:340px;margin:0 auto}
  .arvore-fundo{right:-30%;top:30%;width:120vw}
  .secao{padding:60px 0}
  .atende{grid-template-columns:1fr;gap:6px}
  .atende .ic{width:46px;height:46px;min-width:46px}
  .atende a,.atende li>span{font-size:1.18rem;gap:16px;min-height:60px;background:var(--creme)}
  .faixa{flex-direction:column;align-items:flex-start;padding:28px 24px}
  .sobre{grid-template-columns:1fr;gap:28px;justify-items:center}
  .sobre h2{text-align:center}
  .sobre img{width:220px}
  .onde{padding:28px 24px}
  .onde__acoes{margin-left:0}
  .barra-acao{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:15;background:rgb(255 255 255 / .92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--linha);padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
  .barra-acao a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:14px;font-weight:600;font-size:1.05rem;text-decoration:none}
  .barra-acao a:first-child{background:var(--salvia-esc);color:#fff}
  .barra-acao a:last-child{border:2px solid var(--salvia-esc);color:var(--salvia-esc);background:var(--branco)}
  .rodape{padding-bottom:calc(40px + 84px + env(safe-area-inset-bottom))}
}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media (max-width:420px){.marca__nome{font-size:.9rem}.marca{gap:8px}.marca img{width:34px;height:34px}.menu-cel summary{padding:0 12px}}
