/* =========================================================
   Clínica Crescer · Landing page
   Paleta e tipografia conforme manual da marca
   ========================================================= */

:root{
  --sol:#F5E298;         /* amarelo sol · cor de assinatura */
  --sol-claro:#FCF3D2;
  --sol-escuro:#D9B94A;
  --azul:#ABE1E9;
  --azul-claro:#E6F6F9;
  --azul-escuro:#4E9AA6;
  --rosa:#F1A5B6;
  --rosa-claro:#FCEAEE;
  --rosa-escuro:#C96C82;
  --verde:#A6D090;
  --verde-claro:#EDF6E7;
  --verde-escuro:#6E9C57;
  --bege:#E5DCC8;
  --bege-claro:#FAF6EE;
  --grafite:#5A5A60;
  --grafite-suave:#7C7C84;
  --branco:#FFFFFF;
  --linha:#F2EDE3;
  --sombra:0 12px 32px rgba(90,90,96,.10);
  --sombra-sutil:0 4px 16px rgba(90,90,96,.07);
  --raio:24px;
  --raio-p:16px;
  --largura:1140px;
  --altura-header:118px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--branco);
  color:var(--grafite);
  font-family:"Mulish","Lato",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit}
section{scroll-margin-top:calc(var(--altura-header) + 8px)}
h1,h2,h3,h4{
  font-family:"Varela Round","Mulish",sans-serif;
  font-weight:400;line-height:1.22;margin:0 0 .5em;letter-spacing:-.01em;
}
h1{font-size:clamp(2rem,4.2vw,3.1rem)}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}
h3{font-size:1.15rem}
p{margin:0 0 1rem}

.wrap{width:min(100% - 2.5rem,var(--largura));margin-inline:auto}
.sec{padding:clamp(2.2rem,3.4vw,3.2rem) 0}
.cabeca{margin-bottom:1.7rem}      /* bloco de título de seção */
.divisor{border-top:1px solid var(--linha)}   /* fio fino entre seções de mesmo fundo */
.olho{
  font-family:"Varela Round",sans-serif;font-size:.8rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--grafite-suave);margin:0 0 .5em;
}
.centro{text-align:center}
.centro .lead{max-width:62ch;margin-inline:auto}
.lead{font-size:1.05rem;color:var(--grafite-suave)}

/* ===================== Botões ===================== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  font-family:"Varela Round",sans-serif;font-size:1rem;text-decoration:none;
  padding:.9rem 1.55rem;border-radius:999px;border:2px solid transparent;
  transition:transform .18s ease,box-shadow .18s ease;cursor:pointer;line-height:1.2;
}
.btn:hover,.btn:focus-visible{transform:translateY(-2px);box-shadow:var(--sombra)}
.btn-zap{background:#25D366;color:#0B3D22;font-weight:600}
.btn-rosa{background:var(--rosa);color:#5A3038}
.btn-azul{background:var(--azul);color:#2E5459}
.btn-linha{background:var(--branco);border-color:var(--bege);color:var(--grafite)}
/* Cores oficiais Google Maps e Waze */
.btn-maps{background:#FFFFFF;color:#3C4043;border:2px solid #DADCE0;font-weight:600}
.btn-waze{background:#33CCFF;color:#062A38;font-weight:600}
.btn-insta{background:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF);color:#fff;font-weight:600}

/* ===================== Header ===================== */
header{
  position:sticky;top:0;z-index:60;background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  border-bottom:2px solid #C9BFAE;                 /* linha que separa do hero */
  box-shadow:0 6px 18px rgba(90,90,96,.06);
}
header::after{                                      /* fita da marca sob o header */
  content:"";position:absolute;left:0;right:0;bottom:-6px;height:4px;
  background:linear-gradient(90deg,#EFD26B 0 25%,#86CFDB 25% 50%,#EE93A8 50% 75%,#94C77A 75% 100%);
}
.nav{display:flex;align-items:center;gap:1.5rem;padding:.35rem 0;justify-content:space-between;position:relative}
.marca{display:flex;align-items:center;gap:.75rem;text-decoration:none;flex:0 0 auto}
.marca img{width:104px;height:104px;object-fit:contain}
.marca b{font-family:"Varela Round",sans-serif;font-weight:400;font-size:1.35rem;display:block;line-height:1.1;white-space:nowrap}
.marca span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--grafite-suave);display:block;margin-top:.15rem}

.menu{display:flex;align-items:center;gap:1.6rem;list-style:none;margin:0;padding:0}
.menu > li{position:relative}
.menu a{
  text-decoration:none;font-size:.97rem;white-space:nowrap;display:inline-flex;align-items:center;gap:.3rem;
  padding:.35rem 0;border-bottom:2px solid transparent;transition:border-color .2s;
}
.menu > li > a:hover,.menu > li:focus-within > a{border-color:var(--rosa)}
.menu .seta{width:10px;height:10px;flex:0 0 auto;transition:transform .2s}
.menu > li:hover .seta,.menu > li:focus-within .seta{transform:rotate(180deg)}

/* submenu (desktop) */
.submenu{
  position:absolute;top:calc(100% + .5rem);left:-1rem;min-width:210px;list-style:none;
  margin:0;padding:.5rem;background:var(--branco);border:1px solid var(--linha);
  border-radius:var(--raio-p);box-shadow:var(--sombra);display:none;
}
.menu > li:hover .submenu,.menu > li:focus-within .submenu{display:block}
.submenu::before{content:"";position:absolute;top:-.6rem;left:0;right:0;height:.6rem}
.submenu a{display:block;padding:.5rem .75rem;border-radius:10px;border-bottom:0;font-size:.95rem}
.submenu a:hover{background:var(--sol-claro)}

.hamb{display:none;background:none;border:0;padding:.4rem;cursor:pointer;color:var(--grafite)}

@media (max-width:1000px){
  :root{--altura-header:84px}
  .marca img{width:66px;height:66px}
  .marca b{font-size:1.1rem}
  .hamb{display:block}
  .menu{
    position:absolute;top:calc(100% + .8rem);left:0;right:0;background:var(--branco);
    flex-direction:column;align-items:flex-start;gap:0;padding:.4rem 1.25rem 1.1rem;
    border-bottom:1px solid var(--linha);box-shadow:var(--sombra);display:none;
  }
  .menu.aberto{display:flex}
  .menu > li{width:100%}
  .menu a{display:block;padding:.75rem 0;border-bottom:1px solid #F7F4EC;width:100%}
  .menu .seta{display:none}
  .submenu{position:static;display:block;box-shadow:none;border:0;padding:0 0 0 1rem;min-width:0}
  .submenu a{padding:.65rem 0;border-radius:0}
}
@media (max-width:480px){
  .marca span{display:none}
  .marca img{width:58px;height:58px}
}

/* ===================== Hero ===================== */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 8% 0%,var(--sol-claro) 0%,transparent 42%),
    radial-gradient(circle at 96% 6%,var(--azul-claro) 0%,transparent 40%),
    linear-gradient(180deg,#FFFDF7 0%,#FFFFFF 100%);
  padding:clamp(2rem,3.6vw,2.9rem) 0 clamp(2rem,3.4vw,2.8rem);
}
.hero-topo{max-width:820px}
.hero h1{margin-bottom:.45em}
.hero h1 em{font-style:normal;color:#D2768C}
.hero .lead{font-size:1.1rem;max-width:66ch}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.3rem 0 .9rem}
.hero-nota{font-size:.92rem;color:var(--grafite-suave);margin:0}
.selo{
  display:inline-flex;align-items:center;gap:.5rem;background:var(--branco);
  border:1px solid #EBE2CE;border-radius:999px;padding:.4rem 1rem;font-size:.86rem;
  box-shadow:var(--sombra-sutil);margin-bottom:1rem;
}
.selo i{width:9px;height:9px;border-radius:50%;background:var(--verde);flex:0 0 auto}

/* faixa 16:9 */
.hero-foto{position:relative;margin-top:clamp(1.5rem,3vw,2.2rem)}
.hero-foto img{
  width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 58%;
  border-radius:28px;box-shadow:0 20px 48px rgba(90,90,96,.16);
}
.hero-card{
  position:absolute;left:24px;bottom:24px;background:rgba(255,255,255,.96);border-radius:18px;
  padding:.85rem 1.05rem;box-shadow:var(--sombra);display:flex;gap:.7rem;align-items:center;max-width:330px;
}
.hero-card .ico{
  width:42px;height:42px;border-radius:14px;background:var(--sol);
  display:grid;place-items:center;flex:0 0 auto;font-size:1.2rem;
}
.hero-card p{margin:0;font-size:.87rem;line-height:1.4}
.hero-card b{font-family:"Varela Round",sans-serif;font-weight:400;display:block;font-size:.96rem}
@media (max-width:700px){
  .hero-foto img{aspect-ratio:4/3;max-height:none}
  .hero-card{left:12px;right:12px;bottom:12px;max-width:none}
}

/* ===================== Faixa de números ===================== */
.faixa{background:var(--sol-claro);border-block:1px solid #EEDFA9}
.faixa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.5rem 0;text-align:center}
.faixa b{font-family:"Varela Round",sans-serif;font-weight:400;font-size:1.75rem;display:block;line-height:1.1}
.faixa span{font-size:.88rem;color:var(--grafite-suave)}
@media (max-width:720px){.faixa-grid{grid-template-columns:repeat(2,1fr);gap:1.4rem 1rem}}

/* ===================== Cards ===================== */
.cards{display:grid;gap:1.1rem}
.g4{grid-template-columns:repeat(4,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media (max-width:980px){.g4,.g3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:660px){.g4,.g3,.g2{grid-template-columns:1fr}}
.card{
  background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio);
  padding:1.45rem;box-shadow:var(--sombra-sutil);
}
.card h3{margin-bottom:.35em}
.card > p{font-size:.94rem;color:var(--grafite-suave);margin:0}
.card .ico{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-size:1.45rem;margin-bottom:.85rem}
.tags{list-style:none;margin:.9rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.tags li{background:var(--branco);border:1px solid #EFE7D6;border-radius:999px;padding:.3rem .75rem;font-size:.85rem}

/* ===================== Acolhimento ===================== */
.acolhe{background:linear-gradient(180deg,#FFFFFF 0%,var(--rosa-claro) 100%)}
.acolhe-topo{max-width:46ch;margin-bottom:clamp(1.2rem,2.5vw,1.8rem)}
.acolhe-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,3.5vw,2.8rem);align-items:center}
.aspas{font-family:"Varela Round",sans-serif;font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.45;max-width:34ch;margin:0}
.acolhe-foto{border-radius:var(--raio);box-shadow:var(--sombra);width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center 42%}
@media (max-width:860px){.acolhe-grid{grid-template-columns:1fr}.aspas{max-width:none}.acolhe-foto{aspect-ratio:4/3}}
.lista-check{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.lista-check li{display:flex;gap:.7rem;align-items:flex-start;font-size:.99rem}
.lista-check .tick{
  flex:0 0 auto;width:25px;height:25px;border-radius:50%;background:var(--verde);
  display:grid;place-items:center;color:#2C4620;font-size:.82rem;margin-top:.2rem;
}
.lista-check b{font-family:"Varela Round",sans-serif;font-weight:400}

/* ===================== A clínica ===================== */
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,3.5vw,3rem);align-items:center}
@media (max-width:900px){.sobre-grid{grid-template-columns:1fr}}
.mosaico{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.mosaico img{border-radius:18px;box-shadow:var(--sombra-sutil);height:100%;width:100%;object-fit:cover}
.mosaico .larga{grid-column:1 / -1;aspect-ratio:16/10}
.mosaico .baixa{aspect-ratio:4/3.4}
.timeline{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:.85rem}
.timeline li{display:flex;gap:.85rem;align-items:flex-start}
.timeline .bolha{flex:0 0 auto;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;font-size:1.05rem}
.timeline b{font-family:"Varela Round",sans-serif;font-weight:400;display:block}
.timeline p{margin:0;font-size:.93rem;color:var(--grafite-suave)}

/* ===================== Especialidades ===================== */
.espec{background:var(--bege-claro)}
.espec .card{border-color:#EFE7D6}

/* ===================== Equipe ===================== */
.destaque-prof{
  display:grid;grid-template-columns:190px 1fr;gap:1.6rem;align-items:center;
  background:var(--branco);border:2px solid var(--sol);border-radius:var(--raio);
  padding:1.5rem;box-shadow:var(--sombra-sutil);margin-bottom:1.4rem;
}
.destaque-prof img{width:190px;height:190px;border-radius:20px;object-fit:cover}
.destaque-prof .tarja{
  display:inline-block;background:var(--sol-claro);border-radius:999px;
  padding:.25rem .8rem;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  font-family:"Varela Round",sans-serif;margin-bottom:.6rem;
}
.destaque-prof h3{font-size:1.55rem;margin-bottom:.15em}
.destaque-prof .esp{color:var(--grafite-suave);margin:0 0 .35rem}
.destaque-prof .registro{
  font-size:.86rem;color:var(--grafite-suave);margin:0 0 .7rem;
  font-variant-numeric:tabular-nums;
}
.destaque-prof p.bio{margin:0;font-size:.97rem}
@media (max-width:700px){
  .destaque-prof{grid-template-columns:1fr;text-align:center;justify-items:center}
  .destaque-prof img{width:150px;height:150px}
}

.equipe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
@media (max-width:980px){.equipe-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.equipe-grid{grid-template-columns:repeat(2,1fr)}}
.prof{
  background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio-p);
  padding:1rem .85rem;text-align:center;box-shadow:var(--sombra-sutil);
}
.prof .ini{
  width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin:0 auto .6rem;
  font-family:"Varela Round",sans-serif;font-size:1.08rem;
}
.prof b{font-family:"Varela Round",sans-serif;font-weight:400;font-size:.99rem;display:block;line-height:1.25}
.prof span{font-size:.83rem;color:var(--grafite-suave);display:block;margin-top:.15rem}
.equipe-frase{
  background:var(--sol-claro);border-radius:var(--raio);padding:clamp(1.3rem,3vw,2rem);
  text-align:center;margin-top:1.4rem;
}
.equipe-frase p{font-family:"Varela Round",sans-serif;font-size:clamp(1.05rem,2vw,1.32rem);line-height:1.5;margin:0;max-width:62ch;margin-inline:auto}

/* ===================== Agenda ===================== */
.agenda{background:linear-gradient(180deg,var(--azul-claro) 0%,#FFFFFF 100%)}
.agenda-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:900px){.agenda-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.agenda-grid{grid-template-columns:1fr}}
.dia{
  background:var(--branco);border-radius:var(--raio-p);border:2px solid var(--c,#ABE1E9);
  box-shadow:var(--sombra-sutil);overflow:hidden;
}
.dia h3{
  margin:0;padding:.75rem 1.15rem;background:var(--c,#ABE1E9);
  font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-texto,#2E5459);
  display:flex;align-items:baseline;gap:.5rem;
}
.dia h3 small{font-size:.78rem;letter-spacing:0;text-transform:none;opacity:.85}
.dia ul{list-style:none;margin:0;padding:1rem 1.15rem 1.15rem;display:grid;gap:.65rem}
.dia li{display:flex;gap:.55rem;align-items:flex-start;font-size:.93rem}
.dia .pt{flex:0 0 auto;width:9px;height:9px;border-radius:50%;margin-top:.48rem;background:var(--c,#ABE1E9)}
.dia b{font-family:"Varela Round",sans-serif;font-weight:400;display:block;line-height:1.3}
.dia small{color:var(--grafite-suave);font-size:.84rem}
.agenda-nota{font-size:.92rem;color:var(--grafite-suave);text-align:center;margin:1.4rem auto 0;max-width:62ch}

/* ===================== Convênios ===================== */
.wrap-larga{width:min(100% - 2.5rem,1260px);margin-inline:auto}
.conv{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.conv-item{
  width:400px;max-width:100%;height:160px;border-radius:var(--raio-p);
  border:2px solid var(--linha);background:var(--branco);
  display:grid;place-items:center;padding:1.2rem;box-shadow:var(--sombra-sutil);
}
.conv-item img{max-width:280px;max-height:112px;width:auto;height:auto;object-fit:contain}
.conv-item.particular{border-color:var(--sol);background:var(--sol-claro);text-align:center}
.conv-item.particular b{font-family:"Varela Round",sans-serif;font-weight:400;font-size:1.45rem;display:block}
.conv-item.particular span{font-size:.92rem;color:var(--grafite-suave)}

/* ===================== Localização ===================== */
.local{background:var(--verde-claro)}
.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3.5vw,2.8rem);align-items:center}
@media (max-width:900px){.local-grid{grid-template-columns:1fr}}
.info-lista{list-style:none;margin:0 0 1.3rem;padding:0;display:grid;gap:.95rem}
.info-lista li{display:flex;gap:.8rem;align-items:flex-start}
.info-lista .bolha{
  flex:0 0 auto;width:42px;height:42px;border-radius:14px;background:var(--branco);
  display:grid;place-items:center;font-size:1.15rem;box-shadow:var(--sombra-sutil);
}
.info-lista b{font-family:"Varela Round",sans-serif;font-weight:400;display:block}
.info-lista p{margin:0;font-size:.94rem;color:var(--grafite-suave)}
.rotas{display:flex;flex-wrap:wrap;gap:.7rem}
.mapa{border-radius:var(--raio);overflow:hidden;box-shadow:var(--sombra);border:6px solid var(--branco);background:var(--branco)}
.mapa iframe{display:block;width:100%;height:360px;border:0}

/* ===================== CTA final ===================== */
.cta{background:linear-gradient(135deg,var(--sol-claro) 0%,var(--rosa-claro) 55%,var(--azul-claro) 100%)}
.cta-box{
  background:var(--branco);border-radius:28px;padding:clamp(1.8rem,4vw,2.8rem);
  text-align:center;box-shadow:var(--sombra);max-width:840px;margin-inline:auto;
}
.cta-box .btns{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;margin-top:1.3rem}
.cta-contatos{display:flex;flex-wrap:wrap;gap:1.4rem;justify-content:center;margin-top:1.5rem;font-size:.94rem;color:var(--grafite-suave)}
.cta-contatos a{text-decoration:none}

/* ===================== Rodapé ===================== */
footer{background:#FBF8F1;border-top:2px solid #E6DFD2;padding:2.4rem 0 1.6rem;font-size:.92rem}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
@media (max-width:800px){.foot-grid{grid-template-columns:1fr;gap:1.6rem}}
footer h4{font-family:"Varela Round",sans-serif;font-weight:400;font-size:1rem;margin-bottom:.7em}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
footer a{text-decoration:none;color:var(--grafite-suave)}
footer a:hover{color:var(--grafite);text-decoration:underline}
footer p{color:var(--grafite-suave)}
.foot-marca{display:flex;align-items:center;gap:.7rem;margin-bottom:.9rem}
.foot-marca img{width:84px;height:84px;object-fit:contain}
.foot-base{
  margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--linha);
  display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;
  font-size:.85rem;color:var(--grafite-suave);
}

/* assinatura do produtor, ultima linha da pagina */
.foot-credito{
  margin-top:1rem;padding-top:1rem;border-top:1px solid var(--linha);
  text-align:center;font-size:.82rem;color:#9A9AA2;
}
.foot-credito a{
  color:var(--grafite-suave);text-decoration:none;
  border-bottom:1px solid var(--bege);padding-bottom:1px;transition:color .2s,border-color .2s;
}
.foot-credito a:hover{color:var(--grafite);border-color:var(--rosa)}

/* ===================== WhatsApp flutuante ===================== */
.zap-float{
  position:fixed;right:18px;bottom:18px;z-index:70;width:58px;height:58px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(37,211,102,.42);
  transition:transform .2s;
}
.zap-float:hover{transform:scale(1.07)}

/* ===================== Páginas de texto (política/termos) ===================== */
.doc{padding:clamp(2rem,4.5vw,3.5rem) 0}
.doc-wrap{width:min(100% - 2.5rem,760px);margin-inline:auto}
.doc h1{font-size:clamp(1.9rem,3.4vw,2.5rem)}
.doc h2{font-size:clamp(1.25rem,2vw,1.55rem);margin-top:2.2rem}
.doc h3{font-size:1.05rem;margin-top:1.5rem}
.doc p,.doc li{font-size:1rem}
.doc ul,.doc ol{padding-left:1.2rem;display:grid;gap:.45rem;margin:0 0 1.1rem}
.doc .atualizado{font-size:.9rem;color:var(--grafite-suave)}
.voltar{display:inline-flex;align-items:center;gap:.4rem;text-decoration:none;font-size:.95rem;color:var(--grafite-suave);margin-bottom:1.2rem}

@media print{.zap-float,header{display:none}}
