/* Identidade tipográfica Luiz Viola, MD
   Logotipo em texto (não imagem): nítido em qualquer tela e lido por leitores de tela.
   Fraunces (SIL OFL), recortada para letras latinas, eixos de peso e tamanho óptico. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:200 600;font-display:swap;src:url(/assets/fonts/fraunces-latin-var.woff2) format('woff2')}

:root{--lv-navy:#1A2A47;--lv-ink:#2A3A57;--lv-line:rgba(26,42,71,0.08);--lv-bg:rgba(247,248,250,0.97)}

/* ---------- Logotipo ---------- */
.lv-mark{display:inline-flex;flex-direction:column;align-items:flex-start;gap:7px;color:var(--lv-navy);text-decoration:none;line-height:1;padding:6px 0}
.lv-name{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-size:30px;font-weight:400;font-variation-settings:'opsz' 30;letter-spacing:-0.01em;white-space:nowrap;line-height:1}
.lv-md{font-size:0.48em;font-weight:350;font-variation-settings:'opsz' 14;letter-spacing:0.1em;margin-left:0.38em;color:var(--lv-ink)}
.lv-spec{font-family:Outfit,'Helvetica Neue',Arial,sans-serif;font-size:8.5px;font-weight:300;letter-spacing:0.18em;margin-right:-0.18em;text-transform:uppercase;white-space:nowrap;color:var(--lv-ink);line-height:1}
.lv-spec .lv-dot{margin:0 0.3em}

/* Versão clara, para fundo azul-marinho (rodapé) */
.lv-mark--light,.lv-mark--light .lv-md,.lv-mark--light .lv-spec{color:#FFFFFF}
.lv-mark--light .lv-spec{opacity:0.78}

/* Hotsite do app: o nome do app vem primeiro, a assinatura do médico logo abaixo */
.lv-mark--app{gap:6px}
.lv-mark--app .lv-app{font-family:'Playfair Display',Georgia,serif;font-size:22px;font-weight:500;white-space:nowrap;line-height:1}

/* ---------- Cabeçalho ---------- */
.lv-header{position:sticky;top:0;z-index:20;background:var(--lv-bg);border-bottom:1px solid var(--lv-line)}
.lv-bar{max-width:1200px;margin:0 auto;padding:0 24px;min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-sizing:border-box}
.lv-nav{display:flex;align-items:center;gap:26px;font-family:Outfit,'Helvetica Neue',Arial,sans-serif;font-size:12px;font-weight:500;letter-spacing:0.16em}
.lv-menu-btn{display:none}
.lv-panel{display:none}

@media (max-width: 900px){
  .lv-nav .lv-link{display:none}
  .lv-nav{gap:10px}
  .lv-menu-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:44px;padding:0 12px;border:1px solid rgba(26,42,71,0.22);border-radius:999px;background:transparent;color:var(--lv-navy);font:500 11px/1 Outfit,'Helvetica Neue',Arial,sans-serif;letter-spacing:0.16em;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .lv-menu-btn[aria-expanded="true"]{background:var(--lv-navy);color:#FFFFFF;border-color:var(--lv-navy)}
  .lv-panel{position:absolute;left:0;right:0;top:100%;background:#F7F8FA;border-bottom:1px solid rgba(26,42,71,0.12);box-shadow:0 18px 30px -24px rgba(14,21,34,0.35)}
  .lv-panel:not([hidden]){display:block}
  .lv-panel ul{list-style:none;margin:0 auto;padding:6px 24px 18px;max-width:1200px;box-sizing:border-box}
  .lv-panel li{border-top:1px solid rgba(26,42,71,0.1)}
  .lv-panel li:first-child{border-top:0}
  .lv-panel a{display:flex;align-items:center;min-height:52px;color:var(--lv-navy);text-decoration:none;font:400 13px/1.2 Outfit,'Helvetica Neue',Arial,sans-serif;letter-spacing:0.18em}
  .lv-panel a[aria-current="page"]{font-weight:500}
}

@media (max-width: 640px){
  .lv-bar{min-height:60px;padding:0 16px;gap:10px}
  .lv-mark{gap:5px}
  .lv-name{font-size:22px}
  .lv-spec{font-size:7.5px;font-weight:400;letter-spacing:0.08em;margin-right:-0.08em}
  .lv-mark--app .lv-app{font-size:18px}
  .lv-nav a.lv-cta{padding:0 16px !important;min-height:40px}
  .lv-panel ul{padding:4px 16px 14px}
}
@media (max-width: 359px){
  .lv-bar{padding:0 12px;gap:8px}
  .lv-name{font-size:20px}
  .lv-spec{font-size:7px;letter-spacing:0.06em;margin-right:-0.06em}
  .lv-mark--app .lv-app{font-size:16px}
  .lv-nav{gap:6px}
  .lv-nav a.lv-cta{padding:0 12px !important}
  .lv-menu-btn{padding:0 10px}
}
