/*
Theme Name:   Temafinal Child — Cardozo & Leal
Theme URI:    https://cardozoeleal.adv.br/
Description:  Tema filho do temafinal com a nova página inicial do escritório Cardozo & Leal Advogados.
Author:       Cardozo & Leal Advogados
Template:     temafinal
Version:      1.1.2
Text Domain:  temafinal-child
*/

@font-face{font-family:"Playfair Display";font-weight:500;font-style:normal;font-display:swap;src:url("assets/fonts/playfair-display-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Playfair Display";font-weight:600;font-style:normal;font-display:swap;src:url("assets/fonts/playfair-display-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-weight:400;font-style:normal;font-display:swap;src:url("assets/fonts/open-sans-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Open Sans";font-weight:600;font-style:normal;font-display:swap;src:url("assets/fonts/open-sans-latin-600-normal.woff2") format("woff2")}

:root{
  --dourado:#C8A850;--dourado-texto:#8F7424;--grafite:#2B2B2B;--cinza:#5F5A5A;
  --cinza-claro:#767171;--creme:#F4F2EC;--noite:#16233A;--borda:#E6E1D3;--branco:#FFFFFF;
  --raio:14px;--raio-btn:10px;--sombra:0 8px 24px rgba(22,35,58,.08);
  --fonte-titulo:"Playfair Display",Georgia,"Times New Roman",serif;
  --fonte-corpo:"Segoe UI","Open Sans",system-ui,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--fonte-corpo);font-size:clamp(17px,1.1vw + 13px,18px);line-height:1.6;color:var(--grafite);background:var(--branco)}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--fonte-titulo);font-weight:600;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,4.6vw,3.6rem)}
h2{font-size:clamp(1.7rem,3vw,2.5rem)}
h3{font-size:1.25rem}
p{margin:0 0 1em}
.wrap{width:min(1180px,100% - 32px);margin-inline:auto}
section{padding:clamp(56px,8vw,96px) 0}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--dourado-texto);margin-bottom:14px}
.escuro .eyebrow{color:var(--dourado)}
.skip{position:absolute;left:-999px;top:0;background:var(--dourado);color:var(--grafite);padding:10px 16px;z-index:100}
.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--dourado);outline-offset:3px}

/* botões */
.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:var(--raio-btn);font-weight:600;text-decoration:none;border:2px solid transparent;cursor:pointer;font:inherit;font-weight:600;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:var(--sombra)}
.btn-ouro{background:var(--dourado);color:var(--grafite)}
.btn-contorno{border-color:var(--grafite);color:var(--grafite);background:transparent}
.escuro .btn-contorno{border-color:var(--dourado);color:var(--dourado)}
.btn svg{width:20px;height:20px;flex:none}

/* topo */
.topo{position:sticky;top:0;z-index:50;background:var(--noite);color:#fff;border-bottom:1px solid rgba(200,168,80,.35)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px}
.marca{display:flex;align-items:center;text-decoration:none}
.marca img{height:70px;width:auto}
.marca .selo{width:46px;height:46px;border:2px solid var(--dourado);border-radius:50%;display:grid;place-items:center;font-family:var(--fonte-titulo);color:var(--dourado-texto);font-weight:600}
.marca b{display:block;font-family:var(--fonte-titulo);letter-spacing:.08em;font-size:1.05rem;line-height:1.1}
.marca small{letter-spacing:.3em;font-size:.62rem;color:var(--cinza)}
.menu{display:flex;gap:26px;align-items:center}
.menu a{text-decoration:none;font-size:.95rem;padding:10px 0}
.menu a:hover{color:var(--dourado)}
.menu a.menu-blog{border:2px solid var(--dourado);color:var(--dourado);border-radius:var(--raio-btn);padding:8px 20px;font-weight:600}
.menu a.menu-blog:hover{background:var(--dourado);color:var(--grafite)}
.topo .btn{min-height:44px;padding:8px 18px}
.burger{display:none;background:none;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;width:48px;height:48px;font-size:1.4rem;cursor:pointer}

/* hero */
.hero{background:linear-gradient(180deg,var(--creme),var(--branco));padding-top:clamp(40px,6vw,80px)}
.hero .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:center}
.hero p.sub{color:var(--cinza);max-width:34em}
.hero .acoes{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.retratos{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.retratos img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 22%;border-radius:var(--raio);box-shadow:var(--sombra)}
.retratos img:nth-child(even){margin-top:28px}
.logo-rodape{height:84px;width:auto;margin-bottom:14px}
.foto-trio{aspect-ratio:4/3.4;border-radius:var(--raio);background:linear-gradient(135deg,#e9e4d6,#d9d2bd);display:grid;place-items:center;text-align:center;color:var(--cinza);box-shadow:var(--sombra);border:1px dashed #b9b095;padding:20px}

/* confiança */
.confianca{padding:0;background:var(--noite);color:#fff}
.confianca ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.confianca li{padding:26px 20px;border-left:1px solid rgba(255,255,255,.12);font-size:.95rem}
.confianca li:first-child{border-left:0}
.confianca strong{display:block;font-family:var(--fonte-titulo);font-size:1.3rem;color:var(--dourado);margin-bottom:2px}

/* situação */
.cab{max-width:46em;margin-bottom:36px}
.cab p{color:var(--cinza)}
.grade{display:grid;gap:22px}
.g3{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:28px;box-shadow:var(--sombra);display:flex;flex-direction:column}
.card .ico{width:48px;height:48px;border-radius:12px;background:#FAF5E6;display:grid;place-items:center;margin-bottom:16px;color:var(--dourado-texto)}
.card .ico svg{width:26px;height:26px}
.card p{color:var(--cinza);flex:1}
.card .btn{align-self:flex-start;margin-top:8px}
.card.menor{padding:22px;box-shadow:none;background:var(--creme)}
.card.menor h3{font-size:1.1rem}
.card.menor a.link{color:var(--dourado-texto);font-weight:600;text-decoration:none}
.card.menor a.link:hover{text-decoration:underline}
.menores{margin-top:22px}

/* autismo */
.autismo{background:var(--noite);color:#fff}
.autismo .topo-aut{max-width:48em;margin-bottom:40px}
.autismo .topo-aut p{color:#d5dbe6}
.g4{grid-template-columns:repeat(4,1fr)}
.bloco{border:1px solid rgba(255,255,255,.16);border-radius:var(--raio);padding:24px;background:rgba(255,255,255,.04)}
.bloco h3{color:var(--dourado);font-size:1.1rem}
.bloco p{color:#d5dbe6;font-size:.95rem;margin:0}
.autismo .rodape-aut{margin-top:36px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.autismo .rodape-aut span{color:#d5dbe6;margin-right:12px}

/* passos */
.passos{counter-reset:p;grid-template-columns:repeat(4,1fr)}
.passo{counter-increment:p;position:relative;padding-top:56px}
.passo::before{content:counter(p);position:absolute;top:0;left:0;width:42px;height:42px;border-radius:50%;background:var(--dourado);display:grid;place-items:center;font-weight:700}
.passo p{color:var(--cinza)}
.passo h3{font-size:1.1rem}
.cinza-fundo{background:var(--creme)}

/* equipe */
.equipe .card{padding:0;overflow:hidden}
.equipe .foto{aspect-ratio:4/4.6;overflow:hidden;border-bottom:1px solid var(--borda)}
.equipe .foto img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.equipe .corpo{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.equipe .oab{flex:none;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dourado-texto);font-weight:600;margin-bottom:10px}

/* publicações */
.posts .miniatura{aspect-ratio:16/9;background:#e9e4d6;border-radius:10px;margin-bottom:14px;display:grid;place-items:center;color:var(--cinza);font-size:.85rem}
.posts .meta{font-size:.8rem;color:var(--cinza);margin-bottom:6px}
.redes{margin-top:30px;display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.redes a{color:var(--dourado-texto);font-weight:600}

/* FAQ */
.faq details{border-bottom:1px solid var(--borda);padding:6px 0}
.faq summary{cursor:pointer;padding:16px 36px 16px 0;font-weight:600;list-style:none;position:relative;min-height:48px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:12px;font-size:1.5rem;color:var(--dourado-texto)}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--cinza);padding-bottom:14px;margin:0}
.faq .wrap{max-width:860px}

/* contato */
.contato .duas{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:stretch}
.contato dl{margin:0}
.contato dt{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dourado-texto);font-weight:600;margin-top:20px}
.contato dd{margin:4px 0 0}
.mapa{min-height:320px;border-radius:var(--raio);overflow:hidden;background:#e9e4d6;display:grid;place-items:center;text-align:center;padding:20px;border:1px solid var(--borda)}
.mapa iframe{width:100%;height:100%;min-height:320px;border:0}

/* rodapé */
.rodape{background:var(--noite);color:#c5cddb;padding:56px 0 110px;font-size:.92rem}
.rodape .quatro{display:grid;grid-template-columns:1.4fr .8fr 1fr 1fr;gap:32px}
.rodape h4{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dourado);margin:0 0 12px}
.rodape .aviso{border-top:1px solid rgba(255,255,255,.14);margin-top:32px;padding-top:20px;color:#9fa9bb;font-size:.85rem}
.rodape a{color:#c5cddb}
.rodape .nome{font-family:var(--fonte-titulo);letter-spacing:.14em;color:#fff;font-size:1.1rem;margin-bottom:10px}

/* fixos */
.zap-flutuante{position:fixed;right:20px;bottom:20px;z-index:60;width:60px;height:60px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.zap-flutuante svg{width:32px;height:32px;fill:#fff}
.barra-movel{display:none}

@media (max-width:1024px){
  .g4{grid-template-columns:repeat(2,1fr)}
  .passos{grid-template-columns:repeat(2,1fr)}
  .menu a.opcional{display:none}
}
@media (max-width:768px){
  section{padding:56px 0}
  .hero .wrap,.contato .duas{grid-template-columns:1fr}
  .g3,.g4,.passos,.rodape .quatro{grid-template-columns:1fr}
  .confianca ul{grid-template-columns:1fr 1fr}
  .confianca li:nth-child(odd){border-left:0}
  .confianca li{border-top:1px solid rgba(255,255,255,.12)}
  .burger{display:block}
  .menu{display:none;position:absolute;top:88px;left:0;right:0;background:var(--noite);flex-direction:column;align-items:stretch;padding:12px 16px;gap:0;border-bottom:1px solid var(--borda)}
  .menu.aberto{display:flex}
  .menu a{padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.12)}
  .menu a.menu-blog{border:2px solid var(--dourado);padding:12px 16px;margin:10px 0;text-align:center}
  .topo .btn{display:none}
  .zap-flutuante{display:none}
  .barra-movel{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--borda);box-shadow:0 -4px 14px rgba(0,0,0,.1)}
  .barra-movel a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;font-weight:600;text-decoration:none}
  .barra-movel a:last-child{background:var(--dourado)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.equipe .btn{padding:10px 14px;font-size:.92rem;gap:8px}

@media (max-width:480px){.retratos{grid-template-columns:repeat(2,1fr)}.retratos img:nth-child(even){margin-top:0}}

/* Barra de administração do WordPress */
body.admin-bar .topo{top:32px}
@media (max-width:782px){body.admin-bar .topo{top:46px}}
.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* Publicações dinâmicas */
.posts .miniatura{overflow:hidden;text-decoration:none}
.posts .miniatura img{width:100%;height:100%;object-fit:cover}
.posts .card h3 a{text-decoration:none}
.posts .card h3 a:hover{color:var(--dourado-texto)}
.posts .link-post{color:var(--dourado-texto);font-weight:600;text-decoration:none;margin-top:auto}
.posts .link-post:hover{text-decoration:underline}

/* ===== Páginas internas: blog, publicações, páginas e erro 404 ===== */
.cabecalho-pagina{background:var(--noite);color:#fff;padding:clamp(40px,6vw,72px) 0}
.cabecalho-pagina h1{color:#fff;max-width:22em;margin-bottom:.35em}
.cabecalho-pagina .sub{color:#d5dbe6;max-width:40em;font-size:1.05rem;margin:0}
.cabecalho-pagina .eyebrow a{color:var(--dourado);text-decoration:none}
.cabecalho-pagina .eyebrow a:hover{text-decoration:underline}
.cabecalho-pagina .meta-artigo{color:#c5cddb;margin:8px 0 0;font-size:.92rem}
.wrap.estreito{max-width:820px}
.lista-posts{background:var(--creme)}
.lista-posts .card h3{font-size:1.15rem}
.lista-posts .posts .card,.lista-posts .card{height:100%}
.lista-posts .miniatura{aspect-ratio:16/9;background:#e9e4d6;border-radius:10px;margin-bottom:14px;display:grid;place-items:center;color:var(--cinza);font-size:.85rem;overflow:hidden;text-decoration:none}
.lista-posts .miniatura img{width:100%;height:100%;object-fit:cover}
.lista-posts .meta{font-size:.8rem;color:var(--cinza);margin-bottom:6px}
.lista-posts .card h3 a{text-decoration:none}
.lista-posts .card h3 a:hover{color:var(--dourado-texto)}
.lista-posts .link-post{color:var(--dourado-texto);font-weight:600;text-decoration:none;margin-top:auto}
.lista-posts .link-post:hover{text-decoration:underline}
.navigation.pagination{margin-top:40px}
.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}
.navigation.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--borda);border-radius:var(--raio-btn);background:#fff;text-decoration:none;font-weight:600}
.navigation.pagination .page-numbers.current{background:var(--dourado);border-color:var(--dourado);color:var(--grafite)}
.navigation.pagination a.page-numbers:hover{border-color:var(--dourado)}
.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

.artigo .texto{padding:clamp(32px,5vw,56px) 0;font-size:1.06rem;line-height:1.8;color:var(--grafite)}
.artigo .texto>*{max-width:100%}
.artigo .texto h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:1.6em 0 .5em}
.artigo .texto h3{font-size:1.3rem;margin:1.4em 0 .4em}
.artigo .texto h4{font-family:var(--fonte-titulo);margin:1.2em 0 .4em}
.artigo .texto a{color:var(--dourado-texto);text-decoration:underline}
.artigo .texto ul,.artigo .texto ol{padding-left:1.4em;margin:0 0 1.2em}
.artigo .texto li{margin-bottom:.4em}
.artigo .texto blockquote{margin:1.6em 0;padding:8px 0 8px 22px;border-left:4px solid var(--dourado);color:var(--cinza);font-style:italic}
.artigo .texto img,.artigo .texto video,.artigo .texto iframe{max-width:100%;height:auto;border-radius:10px}
.artigo .texto figure{margin:1.6em 0}
.artigo .texto figcaption{font-size:.85rem;color:var(--cinza);margin-top:6px}
.artigo .texto table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:.95rem;display:block;overflow-x:auto}
.artigo .texto th,.artigo .texto td{border:1px solid var(--borda);padding:10px 12px;text-align:left}
.artigo .texto th{background:var(--creme)}
.artigo .texto hr{border:0;border-top:1px solid var(--borda);margin:2em 0}
.artigo .destaque{margin:32px 0 0}
.artigo .destaque img{width:100%;height:auto;border-radius:var(--raio);display:block}
.chamada{background:var(--creme);border:1px solid var(--borda);border-radius:var(--raio);padding:28px;margin:8px 0 20px}
.chamada h2{font-size:1.4rem}
.chamada p{color:var(--cinza)}
.aviso-artigo{font-size:.85rem;color:var(--cinza-claro)}
.navegacao-posts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px 0 20px;padding-top:24px;border-top:1px solid var(--borda)}
.navegacao-posts a{color:var(--grafite);font-weight:600;text-decoration:none}
.navegacao-posts a:hover{color:var(--dourado-texto)}
.navegacao-posts div:last-child{text-align:right}
.voltar{margin:0 0 56px}
.vazio{text-align:center}
.vazio form,.search-form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:20px 0}
.search-form label{flex:1 1 260px}
.search-field{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--borda);border-radius:var(--raio-btn);font:inherit}
.search-submit{min-height:48px;padding:10px 22px;border:2px solid var(--grafite);border-radius:var(--raio-btn);background:transparent;font:inherit;font-weight:600;cursor:pointer}
.acoes-404{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
@media (max-width:1024px){.lista-posts .g3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:768px){.lista-posts .g3{grid-template-columns:1fr}.navegacao-posts{grid-template-columns:1fr}.navegacao-posts div:last-child{text-align:left}}

/* Âncoras: não ficam escondidas sob o menu fixo */
section[id]{scroll-margin-top:96px}
body.admin-bar section[id]{scroll-margin-top:128px}
