/* =====================================================================
   PÁGINAS DE PROCEDIMENTO (26 + índice) — 26/09/2026
   Uma URL por procedimento, para o Google achar cada um pelo nome.
   O conteúdo vem de assets/conteudo.js; estas páginas são GERADAS por
   monta-procedimentos.py — editar o .html gerado é trabalho perdido.
   Os tokens são os mesmos do index.html, copiados aqui para a página
   não depender do CSS de 175 KB da home.
   ===================================================================== */
:root{
  --navy-950:#060f1c; --navy-900:#0A1F38; --navy-850:#0d2440; --navy-800:#0E2A47;
  --navy-700:#153a5c; --navy-600:#1d4a70;
  --gold-100:#f8ecc9; --gold-300:#E8C877; --gold-500:#C9A24B; --gold-700:#B8860B;
  --ivory:#F6F1E6; --text-soft:#cfd9e6; --text-mute:#8fa3ba;
  --line:rgba(201,162,75,.28); --line-soft:rgba(201,162,75,.14);
  --font-display:'Cormorant Garamond','Didot',Georgia,'Times New Roman',serif;
  --font-body:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --container:1000px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{margin:0;background:var(--navy-900);color:var(--text-soft);
  font-family:var(--font-body);font-size:1rem;line-height:1.7;
  -webkit-font-smoothing:antialiased;padding-top:72px;}
img{max-width:100%;display:block;}
a{color:var(--gold-300);}
.container{width:min(100% - 2rem,var(--container));margin-inline:auto;}
h1,h2,h3{font-family:var(--font-display);font-weight:600;color:var(--ivory);margin:0;text-wrap:balance;}

/* ---- cabeçalho fixo (o sticky não vale: o html tem overflow-x:hidden) ---- */
header.site-header{position:fixed;inset:0 0 auto 0;z-index:500;padding-block:.9rem;
  background:rgba(10,31,56,.72);backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  border-bottom:1px solid var(--line-soft);transition:background .3s,box-shadow .3s;}
header.site-header.rolada{background:rgba(8,24,44,.93);box-shadow:0 10px 30px -14px rgba(0,0,0,.75);}
.nav-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.brand img{height:34px;width:auto;}
.nav-actions{display:flex;align-items:center;gap:.6rem;}

/* ---- seletor de idioma (o traduz.js monta dentro de .nav-actions) ---- */
.lang-sel{position:relative;}
.lang-bt{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .8rem;
  background:rgba(201,162,75,.12);border:1px solid rgba(201,162,75,.55);border-radius:999px;
  color:var(--gold-100);font-size:.76rem;font-weight:700;letter-spacing:.1em;cursor:pointer;
  transition:border-color .25s,color .25s,background .25s;}
.lang-bt:hover{border-color:var(--gold-300);background:rgba(201,162,75,.22);color:#fff;}
.lang-bt svg{width:16px;height:16px;}
.lang-bt::after{content:'▾';font-size:.8rem;line-height:1;opacity:.9;}
.lang-menu{position:absolute;top:calc(100% + .5rem);right:0;z-index:120;min-width:11rem;
  list-style:none;margin:0;padding:.35rem;
  background:linear-gradient(180deg,var(--navy-800),var(--navy-850));border:1px solid var(--line);
  border-radius:11px;box-shadow:0 20px 46px -18px rgba(0,0,0,.8);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .22s,transform .22s,visibility .22s;}
.lang-sel.on .lang-menu{opacity:1;visibility:visible;transform:none;}
.lang-menu li{display:flex;align-items:center;gap:.55rem;padding:.5rem .6rem;border-radius:8px;
  color:var(--text-soft);font-size:.84rem;cursor:pointer;transition:background .2s,color .2s;}
.lang-menu li:hover{background:rgba(201,162,75,.1);color:var(--ivory);}
.lang-menu li.on{color:var(--gold-100);background:rgba(201,162,75,.14);}
.lang-sg{font-size:.62rem;font-weight:700;letter-spacing:.08em;color:var(--gold-300);
  border:1px solid rgba(216,178,96,.35);border-radius:4px;padding:.1rem .3rem;line-height:1;
  min-width:1.9rem;text-align:center;}

/* ---- botões ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1.6rem;border-radius:10px;font:inherit;font-size:.95rem;font-weight:600;
  cursor:pointer;text-decoration:none;border:1px solid transparent;
  transition:filter .2s,border-color .2s,color .2s;}
.btn-gold{background:var(--gold-500);color:#14100a;}
.btn-gold:hover{filter:brightness(1.08);}
.btn-ghost{background:none;border-color:rgba(207,217,230,.35);color:var(--text-soft);}
.btn-ghost:hover{border-color:var(--gold-500);color:var(--gold-100);}
.btn-sm{padding:.55rem 1rem;font-size:.84rem;}

/* ---- trilha ---- */
.trilha{font-size:.78rem;color:var(--text-mute);padding:1.8rem 0 0;letter-spacing:.02em;}
.trilha a{color:var(--text-mute);text-decoration:none;}
.trilha a:hover{color:var(--gold-300);}
.trilha span{margin-inline:.4rem;opacity:.5;}

/* ---- abertura ---- */
.pr-topo{padding:.6rem 0 2.2rem;}
.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-500);
  margin:0 0 .7rem;}
.pr-topo h1{font-size:clamp(2rem,6vw,3.1rem);line-height:1.1;margin:0 0 .8rem;}
.pr-resumo{font-size:1.12rem;color:var(--text-soft);max-width:46em;margin:0 0 1.6rem;}
.pr-acoes{display:flex;flex-wrap:wrap;gap:.7rem;}

/* ---- blocos ---- */
.pr-blocos{display:grid;gap:1rem;padding-bottom:2.4rem;}
@media(min-width:760px){.pr-blocos{grid-template-columns:1fr 1fr;}
  .pr-bloco:first-child{grid-column:1 / -1;}}
.pr-bloco{background:linear-gradient(180deg,var(--navy-800),var(--navy-850));
  border:1px solid var(--line-soft);border-radius:14px;padding:1.4rem 1.5rem;}
.pr-bloco h2{font-size:1.25rem;margin:0 0 .5rem;display:flex;align-items:center;gap:.6rem;}
.pr-bloco h2 svg{width:20px;height:20px;color:var(--gold-500);flex:none;}
.pr-bloco p{margin:0;}
.pr-bloco.aviso{border-color:var(--line);}
.pr-bloco.aviso h2{color:var(--gold-100);}

/* ---- chamada ---- */
.pr-cta{background:linear-gradient(135deg,var(--navy-800),var(--navy-700));
  border:1px solid var(--line);border-radius:16px;padding:1.8rem;margin-bottom:2.6rem;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem;}
.pr-cta h2{font-size:1.4rem;margin:0 0 .3rem;}
.pr-cta p{margin:0;color:var(--text-mute);font-size:.94rem;max-width:34em;}
.pr-cta .pr-acoes{flex:none;}

/* ---- outros procedimentos ---- */
.pr-irmaos{padding-bottom:3rem;}
.pr-irmaos h2{font-size:1.3rem;margin:0 0 1rem;}
.pr-lista{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  list-style:none;margin:0;padding:0;}
.pr-lista a{display:block;padding:.8rem 1rem;border:1px solid var(--line-soft);border-radius:10px;
  color:var(--text-soft);text-decoration:none;background:rgba(14,42,71,.5);
  transition:border-color .2s,color .2s,transform .2s;}
.pr-lista a:hover{border-color:var(--gold-500);color:var(--ivory);transform:translateY(-2px);}
.pr-lista b{display:block;font-family:var(--font-display);font-size:1.05rem;color:var(--ivory);
  font-weight:600;}
/* O resumo vai INTEIRO no HTML, nunca cortado no texto: o motor de idiomas
   casa o nó de texto inteiro, e texto cortado com reticências não acha
   tradução nenhuma (foi assim que a página ficou meio em inglês, meio em
   português). Quem corta, aqui, é o CSS. */
.pr-lista i{font-style:normal;font-size:.78rem;color:var(--text-mute);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* ---- índice ---- */
.pr-grupo{padding-bottom:2.4rem;}
.pr-grupo h2{font-size:1.6rem;margin:0 0 .3rem;}
.pr-grupo .conta{font-size:.78rem;color:var(--text-mute);margin:0 0 1rem;}

/* ---- rodapé ---- */
footer.pr-rodape{border-top:1px solid var(--line-soft);padding:2rem 0 2.6rem;
  color:var(--text-mute);font-size:.86rem;}
footer.pr-rodape a{color:var(--text-mute);text-decoration:none;}
footer.pr-rodape a:hover{color:var(--gold-300);}
.pr-rodape-linhas{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin-bottom:.8rem;}
.pr-legal{font-size:.78rem;opacity:.8;max-width:60em;}

/* No celular o "Agendar avaliação" do cabeçalho quebrava em duas linhas e
   empurrava a barra para baixo dos 72px reservados no body. Aperta o botão em
   vez de encurtar o texto: a frase é a mesma em todas as telas. */
@media(max-width:520px){
  header.site-header{padding-block:.7rem;}
  .brand img{height:28px;}
  .nav-actions{gap:.4rem;}
  .nav-actions .btn-sm{padding:.5rem .7rem;font-size:.76rem;white-space:nowrap;}
  .lang-bt{padding:.45rem .6rem;font-size:.7rem;}
  body{padding-top:62px;}
  .pr-cta{padding:1.3rem;}
  .pr-lista{grid-template-columns:1fr;}
}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;}
  html{scroll-behavior:auto;}}
