/* Espaço Odontológico Perdizes — cabeçalho, faixa de contato, rodapé e botão
   de WhatsApp, iguais em todas as páginas.
   Tudo aqui usa o prefixo "eo-" para não colidir com o CSS antigo do Joomla
   (Bootstrap 3, Helix, SP Page Builder) que as páginas de tratamento ainda usam. */

:root{
  --eo-brand:#00B3FB;          /* azul exato do logo */
  --eo-ink:#006FAE;            /* azul para texto e botões (contraste 5,4:1) */
  --eo-ink2:#005A8E;
  --eo-tint:#E8F7FE;
  --eo-navy:#0B2540;
  --eo-text:#2B3B4C;
  --eo-muted:#5A6B7D;
  --eo-line:#E2EAF1;
  --eo-soft:#F4F8FB;
  --eo-wa:#25D366;
  --eo-wa-ink:#0E7A43;
  /* as fontes do site original: Dosis nos títulos, Open Sans no texto */
  --eo-display:"Dosis", "Open Sans", Arial, sans-serif;
  --eo-sans:"Open Sans", Arial, sans-serif;
  --eo-header-h:78px;
  --eo-shadow:0 1px 2px rgba(11,37,64,.05), 0 10px 30px rgba(11,37,64,.07);
  --eo-shadow-lg:0 2px 4px rgba(11,37,64,.06), 0 22px 50px rgba(11,37,64,.14);
}

/* base isolada dos componentes */
.eo-skip, .eo-topbar, .eo-header, .eo-cta, .eo-footer{font-family:var(--eo-sans);font-weight:400;text-align:left;-webkit-font-smoothing:antialiased;line-height:1.5;box-sizing:border-box}
/* o CSS antigo das páginas de tratamento deixa todo link com 19px; aqui ele não entra */
.eo-topbar a, .eo-footer a, .eo-cta a, .eo-mnav a{font-size:inherit}
.eo-header .eo-btn, .eo-cta .eo-btn{font-size:15.5px}
.eo-topbar *, .eo-header *, .eo-cta *, .eo-footer *{box-sizing:border-box}
.eo-topbar p, .eo-header p, .eo-cta p, .eo-footer p, .eo-cta h2, .eo-footer h2{margin:0}
.eo-footer ul, .eo-header ul{margin:0;padding:0;list-style:none}
.eo-header img, .eo-footer img{max-width:100%;height:auto;display:block;border:0}
.eo-wrap{width:min(1200px, 100% - 48px);margin-left:auto;margin-right:auto}
.eo-i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px}
[hidden]{display:none!important}
/* páginas antigas: o visual que o conteúdo tinha no site original (Arial, centralizado).
   Sem o respiro lateral de 20px do original: slide, banners e faixas vão de ponta a ponta. */
body.eo-legado .body-wrapper{font-family:Arial, sans-serif;text-align:center}
.eo-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eo-skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--eo-navy);color:#fff!important;padding:10px 14px;border-radius:10px;text-decoration:none!important;font-weight:700}
.eo-skip:focus{top:12px}
#conteudo{display:block;height:0;scroll-margin-top:calc(var(--eo-header-h) + 8px)}
.eo-header :focus-visible, .eo-footer :focus-visible, .eo-cta :focus-visible, .eo-rede:focus-visible{outline:3px solid var(--eo-brand);outline-offset:2px;border-radius:6px}

/* botões */
.eo-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:13px 22px;font:700 15.5px/1.1 var(--eo-sans);text-decoration:none!important;cursor:pointer;white-space:nowrap;transition:transform .15s, background .15s, box-shadow .15s}
.eo-btn:active{transform:translateY(1px)}
.eo-btn-primary{background:var(--eo-ink);color:#fff!important;box-shadow:0 6px 18px rgba(0,111,174,.22)}
.eo-btn-primary:hover{background:var(--eo-ink2)}
.eo-btn-dark{background:var(--eo-navy);color:#fff!important}
.eo-btn-dark:hover{background:#06182B}
.eo-btn-light{background:#fff;color:var(--eo-navy)!important}

/* páginas antigas: botão de WhatsApp no lugar dos formulários (eles dependiam do Joomla e não enviavam nada) */
.eo-btn-wa{background:var(--eo-wa-ink);color:#fff!important;box-shadow:0 6px 18px rgba(14,122,67,.22)}
.eo-btn-wa:hover{background:#0B6538}
.eo-troca-form{font-family:var(--eo-sans);text-align:center;padding:6px 0 4px}
.eo-troca-form .eo-tf-txt{font-size:16px;line-height:1.55;color:#4A5866;margin:0 auto 18px;max-width:420px}
.eo-troca-form a.eo-btn{font-size:16px!important;padding:15px 24px}
.eo-troca-form .eo-tf-tel{font-size:14.5px;color:#5A6B7D;margin:14px 0 0}
.eo-troca-form .eo-tf-tel a{font-size:inherit!important;color:var(--eo-ink)!important;font-weight:700;text-decoration:none}
.eo-troca-form.eo-tf-agendar{text-align:left;padding-top:8px}

/* páginas antigas: faixas de ponta a ponta e consertos no celular */
/* banner do topo das páginas: o mesmo degradê e o mesmo título das imagens antigas (1400×200), feito em código
   para ir de ponta a ponta sem esticar nada. Até 1400px de largura tudo diminui na mesma proporção da imagem;
   acima disso só o fundo se estende — o título fica do mesmo tamanho e no mesmo lugar. */
body.eo-legado .eo-banner{display:flex;align-items:center;height:clamp(110px, 14.2857vw, 200px);padding-bottom:6px;box-sizing:border-box;background:#408DCF radial-gradient(circle min(700px, 50vw) at 50% 50%, #97D9F3, #408DCF);text-align:left}
body.eo-legado .eo-banner-in{width:100%;max-width:1400px;margin:0 auto;padding:0 clamp(16px, 3.29vw, 46px)}
body.eo-legado .eo-banner-t{margin:0;padding:0;font:400 clamp(26px, 3.5vw, 49px)/1.1 "Open Sans", Arial, sans-serif;color:#fff;letter-spacing:0;text-transform:none}
/* «Quer transformar seu Sorriso?» mora numa caixa de 1140px: o fundo cinza vai até a borda, o conteúdo fica onde estava */
body.eo-legado #section-id-1529956403590, body.eo-legado #section-id-1517333616800,
body.eo-legado #section-id-1535427932733, body.eo-legado #section-id-1535427932736{box-shadow:0 0 0 100vmax rgb(216,227,230);clip-path:inset(0 -100vmax)}
body.eo-legado .body-wrapper p{overflow-wrap:break-word}
/* Clínico geral: 300px de margem dos dois lados espremiam o botão abaixo de 992px */
@media (max-width:991px){body.eo-legado #sppb-addon-1660156376007{margin-left:auto;margin-right:auto;max-width:420px}}
/* home: a tabela dos nomes das doutoras tem 439px; no celular os nomes ficam um embaixo do outro */
@media (max-width:600px){
  .eo-doutoras, .eo-doutoras tbody, .eo-doutoras tr{display:block;width:auto!important;height:auto!important}
  .eo-doutoras th{display:block;text-align:center!important;padding:0 0 10px}
  .eo-doutoras th:first-child, .eo-doutoras th:last-child, .eo-doutoras .eo-recuo{display:none}
  .eo-doutoras img{float:none!important;display:block;margin:0 auto 2px;max-width:100%;height:auto}
}

/* barra de cima */
.eo-topbar{background:var(--eo-soft);border-bottom:1px solid var(--eo-line);font-size:13px;color:var(--eo-muted)}
.eo-topbar-in{display:flex;justify-content:space-between;gap:16px;padding:7px 0}
.eo-tb-right{display:flex;align-items:center;gap:14px}
.eo-tb-right span{display:inline-flex;align-items:center;gap:6px}
.eo-topbar .eo-i{width:15px;height:15px}

/* cabeçalho */
.eo-header{position:sticky;top:0;z-index:1001;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.6) blur(12px);backdrop-filter:saturate(1.6) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s, box-shadow .2s}
.eo-header.eo-scrolled{border-color:var(--eo-line);box-shadow:0 6px 24px rgba(11,37,64,.06)}
.eo-hdr{display:flex;align-items:center;gap:28px;height:var(--eo-header-h)}
.eo-brand{display:block;flex:none}
.eo-brand img{width:148px}
.eo-nav{display:flex;gap:4px;margin-left:auto}
.eo-nav a{position:relative;color:var(--eo-navy)!important;text-decoration:none!important;font-weight:600;font-size:15.5px;line-height:1.2;padding:10px 14px;border-radius:10px;transition:background .15s}
.eo-nav a:hover{background:var(--eo-soft)}
.eo-nav a[aria-current="page"]{color:var(--eo-ink)!important}
.eo-nav a[aria-current="page"]::after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2.5px;border-radius:2px;background:var(--eo-brand)}
.eo-hdr-cta{padding:12px 18px}
.eo-l-short{display:none}
.eo-menu-btn{display:none;width:46px;height:46px;border-radius:12px;border:1px solid var(--eo-line);background:#fff;color:var(--eo-navy);cursor:pointer;place-items:center;padding:0}
.eo-menu-btn .eo-i{width:22px;height:22px}
.eo-mnav{border-top:1px solid var(--eo-line);background:#fff;padding:8px 0 16px}
.eo-mnav a{display:block;padding:13px 0;color:var(--eo-navy)!important;font-weight:600;font-size:16px;text-decoration:none!important;border-bottom:1px solid var(--eo-soft)}
.eo-mnav a[aria-current="page"]{color:var(--eo-ink)!important}
.eo-progress{position:absolute;left:0;right:0;bottom:-1px;height:3px;pointer-events:none}
.eo-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--eo-brand),var(--eo-ink))}

/* faixa de contato */
.eo-cta{position:relative;overflow:hidden;background:linear-gradient(115deg,#00B3FB 0%,#2EC4FF 55%,#7CDBFF 100%);color:var(--eo-navy)}
.eo-cta::after{content:"";position:absolute;right:-120px;top:-160px;width:520px;height:520px;border-radius:50%;border:70px solid rgba(255,255,255,.18);pointer-events:none}
.eo-cta-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding:60px 0}
.eo-cta .eo-cta-k{font:800 12.5px/1.3 var(--eo-sans);letter-spacing:.12em;text-transform:uppercase;color:#063E5E}
.eo-cta h2{font-family:var(--eo-display);font-weight:600;font-size:clamp(30px,3.8vw,44px);line-height:1.1;color:var(--eo-navy);margin:12px 0 10px;max-width:640px;text-wrap:balance}
.eo-cta p{font-size:18px;color:#0B3350;max-width:560px}
.eo-cta-actions{display:flex;flex-wrap:wrap;gap:12px}
.eo-cta-actions .eo-btn{padding:16px 24px;font-size:16px}

/* rodapé */
.eo-footer{background:var(--eo-navy);color:#B8C8D8;font-size:15px}
.eo-foot-grid{display:grid;grid-template-columns:1.35fr .8fr .9fr 1.35fr;gap:40px;padding:64px 0 40px}
.eo-foot-grid > *{min-width:0}
.eo-contact a{overflow-wrap:anywhere}
.eo-foot-brand img{width:150px;filter:brightness(0) invert(1)}
.eo-foot-brand p{margin-top:16px;line-height:1.6;max-width:300px}
.eo-social{display:flex;gap:10px;margin-top:20px}
.eo-social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff!important;transition:background .15s}
.eo-social a:hover{background:rgba(255,255,255,.18)}
.eo-foot-h{font:800 12.5px/1 var(--eo-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:#fff!important;margin:0 0 18px!important}
.eo-footer ul{display:grid;gap:11px}
.eo-footer a{color:#DCE6F0!important;text-decoration:none!important}
.eo-footer a:hover{color:#fff!important;text-decoration:underline!important}
.eo-contact li{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.eo-contact .eo-i{color:#7FD7FD;margin-top:2px}
.eo-foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;border-top:1px solid rgba(255,255,255,.12);padding:22px 0 30px;font-size:13.5px;color:#93A8BD}

/* botões laterais da direita: os mesmos do site original (YouTube, Instagram, Facebook e WhatsApp),
   com os ícones da Font Awesome 4.5. --eo-cky é a altura da barra de cookies enquanto ela está aberta (js/site.js). */
.eo-rede, .eo-rede-wa, .eo-ig-opcoes{position:fixed;right:20px;z-index:1000;font-family:Arial, sans-serif;font-weight:400}
.eo-rede{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff!important;font-size:15px!important;line-height:1;text-decoration:none!important;box-shadow:1px 1px 2px #888;border:0;padding:0;margin:0;cursor:pointer}
.eo-rede .fa{font-size:15px}
.eo-rede-yt{bottom:calc(140px + var(--eo-cky, 0px));background:#D90000}
.eo-rede-ig{bottom:calc(100px + var(--eo-cky, 0px));background:#D8004D}
.eo-rede-fb{bottom:calc(60px + var(--eo-cky, 0px));background:#1299F6}
.eo-rede-wa{bottom:calc(20px + var(--eo-cky, 0px));display:flex;align-items:center;gap:10px;font-size:15px!important;text-decoration:none!important}
.eo-rede-wa-txt{background:#25D366;color:#fff;padding:3px;border-radius:15px;line-height:24px;white-space:nowrap}
.eo-rede-wa .eo-rede{position:static;background:#25D366}
.eo-rede-wa .eo-rede .fa{font-size:18px}
.eo-ig-opcoes{bottom:calc(140px + var(--eo-cky, 0px));right:40px;background:#D8004D;border-radius:5px;padding:10px;text-align:left}
.eo-ig-opcoes a{display:block;margin:5px 0;color:#fff!important;text-decoration:none!important;font-size:19px!important;line-height:24px}

@media (max-width:1100px){
  .eo-foot-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:1000px){
  .eo-nav{display:none}
  .eo-menu-btn{display:grid}
  .eo-hdr{gap:12px}
  .eo-hdr-cta{margin-left:auto}
  .eo-foot-bottom{padding-bottom:96px}
}
@media (max-width:880px){
  .eo-cta-in{grid-template-columns:1fr}
  .eo-tb-right{display:none}
}
@media (max-width:640px){
  :root{--eo-header-h:66px}
  .eo-wrap{width:calc(100% - 32px)}
  .eo-brand img{width:118px}
  .eo-header .eo-hdr-cta{padding:11px 15px;font-size:14.5px}
  .eo-l-full{display:none}
  .eo-l-short{display:inline}
  .eo-topbar{font-size:12px}
  .eo-foot-grid{grid-template-columns:1fr;padding-top:48px}
}
/* a linha da responsável técnica cabe numa linha só nos celulares pequenos */
@media (max-width:400px){
  .eo-topbar{font-size:11px;letter-spacing:-.01em}
}
@media (prefers-reduced-motion:reduce){
  .eo-header, .eo-btn{transition:none!important}
}
