/*
Theme Name: Tabelionato CVC
Theme URI: https://cibericlab.com.br
Author: Ciberic Lab
Author URI: https://cibericlab.com.br
Description: Tema institucional do Tabelionato de Notas e Protestos de Cavalcante - GO. Home com serviços, links úteis e contato, página de tabela de emolumentos e política de LGPD em modal.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tabelionato-cvc
*/

:root{
  --tinta:#16140F;
  --grafite:#221E18;
  --grafite-2:#2B2620;
  --ouro:#C3A464;
  --ouro-claro:#DCC48C;
  --ouro-esc:#8A6E36;
  --papel:#F5F1E8;
  --papel-2:#E7DFCF;
  --texto:#EAE5DA;
  --texto-mute:rgba(234,229,218,.60);
  --texto-escuro:#2A251D;
  --texto-escuro-mute:rgba(42,37,29,.68);
  --linha:rgba(195,164,100,.28);
  --display:"Marcellus",Georgia,serif;
  --corpo:"Karla",system-ui,-apple-system,sans-serif;
  --max:1200px;
  --pad:clamp(20px,5vw,64px);
  /* se a logo enviada tiver traço escuro, troque para: brightness(0) invert(1) */
  --logo-filtro:none;
  /* --hero-img definida em header.php */
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--grafite);color:var(--texto);font-family:var(--corpo);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.secao{padding:clamp(52px,6.5vw,92px) 0}

/* ---------- tipografia ---------- */
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.15;margin:0}
.eyebrow{font-family:var(--corpo);font-size:12px;letter-spacing:.26em;text-transform:uppercase;color:var(--ouro);display:flex;align-items:center;gap:14px;margin-bottom:16px}
.eyebrow::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--linha),transparent);max-width:180px}
.eyebrow.centro{justify-content:center}
.eyebrow.centro::after{display:none}
.titulo{font-size:clamp(30px,4.2vw,50px);letter-spacing:.01em}
.lead{color:var(--texto-mute);max-width:62ch}

/* ---------- barra de contato ---------- */
.topbar{background:var(--tinta);border-bottom:1px solid rgba(195,164,100,.16);font-size:13.5px;color:var(--texto-mute)}
.topbar .wrap{display:flex;flex-wrap:wrap;gap:8px 32px;align-items:center;justify-content:center;padding-top:11px;padding-bottom:11px}
.topbar span{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.topbar svg{width:15px;height:15px;stroke:var(--ouro);fill:none;stroke-width:1.5}
.topbar a:hover{color:var(--ouro-claro)}

/* ---------- header ---------- */
.header{position:sticky;top:0;z-index:60;background:rgba(34,30,24,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(195,164,100,.18);transition:padding .3s ease}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:16px;padding-bottom:16px;transition:padding .3s ease}
.header.compacto .wrap{padding-top:9px;padding-bottom:9px}
.marca{display:flex;align-items:center;gap:14px;min-width:0}
.monograma{width:44px;height:44px;flex:none;border-radius:50%;border:1px solid var(--ouro);display:grid;place-items:center;font-family:var(--display);font-size:15px;color:var(--ouro);letter-spacing:.06em;position:relative}
.monograma::after{content:"";position:absolute;inset:3px;border-radius:50%;border:1px solid rgba(195,164,100,.32)}
.marca-txt strong{display:block;font-family:var(--display);font-size:15.5px;letter-spacing:.03em;color:var(--papel);line-height:1.25}
.marca-txt small{display:block;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro);margin-top:3px}
.nav{display:flex;align-items:center;gap:30px}
.nav a{font-size:14.5px;color:var(--texto-mute);position:relative;padding:4px 0}
.nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--ouro);transition:width .3s ease}
.nav a:hover{color:var(--papel)}
.nav a:hover::after{width:100%}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 26px;font-size:14px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ouro);color:var(--ouro-claro);background:transparent;cursor:pointer;transition:background .25s ease,color .25s ease,transform .25s ease;font-family:var(--corpo);font-weight:600}
.btn:hover{background:var(--ouro);color:var(--tinta);transform:translateY(-2px)}
.btn.solido{background:var(--ouro);color:var(--tinta)}
.btn.solido:hover{background:var(--ouro-claro);border-color:var(--ouro-claro)}
.btn svg{width:17px;height:17px;fill:currentColor}
.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer}
.menu-btn span{display:block;width:24px;height:1.5px;background:var(--papel);margin:5px 0;transition:.3s}
.menu-btn.ativo span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.menu-btn.ativo span:nth-child(2){opacity:0}
.menu-btn.ativo span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--papel) var(--hero-img) no-repeat center right/cover;padding:clamp(54px,7vw,104px) 0 clamp(58px,7.5vw,108px)}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(247,244,237,.97) 0%,rgba(247,244,237,.94) 34%,rgba(247,244,237,.66) 54%,rgba(247,244,237,.12) 74%,rgba(247,244,237,0) 88%)}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,3vw,44px);align-items:center}
.hero-txt{max-width:700px}
.hero .eyebrow{color:var(--ouro-esc)}
.hero .eyebrow::after{background:linear-gradient(90deg,rgba(138,110,54,.45),transparent)}
.hero-txt h1{font-size:clamp(34px,5.4vw,62px);letter-spacing:.005em;color:var(--texto-escuro)}
.hero-txt h1 em{font-style:normal;color:var(--ouro-esc);display:block}
.hero-txt p{margin:20px 0 30px;font-size:clamp(16px,1.6vw,18.5px);color:var(--texto-escuro-mute);max-width:52ch}
.hero-acoes{display:flex;flex-wrap:wrap;gap:14px}
.hero .btn{border-color:var(--ouro-esc);color:var(--ouro-esc)}
.hero .btn:hover{background:var(--tinta);border-color:var(--tinta);color:var(--ouro-claro)}
.hero .btn.solido{background:var(--tinta);border-color:var(--tinta);color:var(--ouro-claro)}
.hero .btn.solido:hover{background:var(--ouro-esc);border-color:var(--ouro-esc);color:#fff}
.hero-rodape{margin-top:38px;padding-top:22px;border-top:1px solid rgba(42,37,29,.18);display:flex;flex-wrap:wrap;gap:14px 40px}
.hero-rodape div{font-size:13px;color:var(--texto-escuro-mute);letter-spacing:.04em}
.hero-rodape strong{display:block;font-family:var(--display);font-size:15px;color:var(--texto-escuro);letter-spacing:.05em;margin-bottom:2px}

/* selo giratório — elemento-assinatura */
.selo-box{position:relative;display:grid;place-items:center;justify-self:center}
.selo-box::before{content:"";position:absolute;width:112%;height:112%;border-radius:50%;background:radial-gradient(circle,rgba(247,244,237,.94) 40%,rgba(247,244,237,.6) 63%,transparent 77%)}
.selo{position:relative;width:min(275px,60vw);height:auto;overflow:visible}
.selo .a1{stroke:rgba(138,110,54,.45)}
.selo .a2{stroke:rgba(138,110,54,.9)}
.selo .a3{stroke:rgba(138,110,54,.5)}
.selo .a4{stroke:rgba(138,110,54,.32)}
.selo .a5{stroke:rgba(138,110,54,.6)}
.selo .anel{animation:girar 46s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
.selo text{font-family:var(--corpo);font-size:8.4px;letter-spacing:.34em;fill:var(--ouro-esc);text-transform:uppercase}
.selo .centro-1{font-family:var(--display);font-size:20px;letter-spacing:.12em;fill:var(--texto-escuro)}
.selo .centro-2{font-family:var(--corpo);font-size:6.6px;letter-spacing:.4em;fill:var(--ouro-esc)}
.selo .raio{stroke:rgba(138,110,54,.5);stroke-width:.6}

/* ---------- faixa de princípios ---------- */
.faixa{background:var(--grafite-2);border-top:1px solid rgba(195,164,100,.16);border-bottom:1px solid rgba(195,164,100,.16)}
.faixa .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding:0}
.faixa-item{padding:30px var(--pad);position:relative}
.faixa-item+.faixa-item::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:1px;background:rgba(195,164,100,.2)}
.faixa-item h3{font-size:20px;color:var(--ouro-claro);margin-bottom:8px}
.faixa-item p{margin:0;font-size:14.5px;color:var(--texto-mute)}

/* ---------- sobre ---------- */
.sobre{background:var(--papel);color:var(--texto-escuro)}
.sobre .grade{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(32px,5vw,72px);align-items:start}
.sobre .titulo{color:var(--texto-escuro)}
.sobre .eyebrow{color:var(--ouro-esc)}
.sobre .eyebrow::after{background:linear-gradient(90deg,rgba(138,110,54,.4),transparent)}
.sobre p{color:var(--texto-escuro-mute);max-width:60ch}
.sobre p+p{margin-top:13px}
.ficha{background:var(--tinta);color:var(--texto);padding:30px 28px;position:relative}
.ficha::before{content:"";position:absolute;inset:9px;border:1px solid rgba(195,164,100,.28);pointer-events:none}
.ficha h3{font-size:19px;color:var(--ouro-claro);margin-bottom:18px;position:relative;z-index:2}
.ficha dl{margin:0;position:relative;z-index:2}
.ficha dt{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro);margin-top:16px}
.ficha dt:first-child{margin-top:0}
.ficha dd{margin:5px 0 0;font-size:15px;color:var(--texto);line-height:1.6}
.ficha dd a:hover{color:var(--ouro-claro)}

/* ---------- serviços ---------- */
.servicos{background:var(--grafite)}
.servicos .cabeca{text-align:center;margin-bottom:40px}
.servicos .titulo{color:var(--papel)}
.servicos .lead{margin:16px auto 0;text-align:center}
.grade-serv{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(195,164,100,.18);border:1px solid rgba(195,164,100,.18)}
.serv{background:var(--grafite);padding:32px 24px;text-align:center;transition:background .35s ease,transform .35s ease;position:relative}
.serv:hover{background:var(--grafite-2)}
.serv-icone{width:58px;height:58px;margin:0 auto 16px;border:1px solid var(--linha);border-radius:50%;display:grid;place-items:center;transition:border-color .35s ease,transform .45s ease}
.serv:hover .serv-icone{border-color:var(--ouro);transform:translateY(-4px)}
.serv-icone svg{width:28px;height:28px;stroke:var(--ouro);fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.serv h3{font-size:18px;color:var(--papel);margin-bottom:8px}
.serv p{margin:0;font-size:13.5px;color:var(--texto-mute);line-height:1.6}

.chamada-tabela{background:var(--grafite-2);padding:clamp(44px,5.5vw,70px) 0}
.chamada-caixa{border:1px solid rgba(195,164,100,.28);background:var(--tinta);padding:clamp(28px,4vw,52px);display:grid;grid-template-columns:1fr auto;gap:28px 44px;align-items:center}
.chamada-caixa .titulo{color:var(--papel);font-size:clamp(26px,3.2vw,38px)}
.chamada-caixa .lead{margin-top:14px}
.chamada-caixa .btn{white-space:nowrap}
@media(max-width:760px){.chamada-caixa{grid-template-columns:1fr;text-align:center}.chamada-caixa .eyebrow{justify-content:center}.chamada-caixa .lead{margin-inline:auto}}

/* ---------- links úteis ---------- */
.links{background:var(--papel-2);color:var(--texto-escuro)}
.links .titulo{color:var(--texto-escuro)}
.links .eyebrow{color:var(--ouro-esc)}
.links .eyebrow::after{background:linear-gradient(90deg,rgba(138,110,54,.4),transparent)}
.links .cabeca{text-align:center;margin-bottom:36px}
.links .lead{margin:16px auto 0;text-align:center;color:var(--texto-escuro-mute)}
.grade-links{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.link-card{background:#fff;border:1px solid rgba(42,37,29,.10);padding:20px 18px;display:flex;flex-direction:column;gap:10px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;min-height:118px}
.link-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(42,37,29,.14);border-color:var(--ouro)}
.link-card .sigla{font-family:var(--display);font-size:17px;color:var(--texto-escuro);line-height:1.25}
.link-card .desc{font-size:12.5px;color:var(--texto-escuro-mute);flex:1}
.link-card .ir{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro-esc);display:inline-flex;align-items:center;gap:7px;font-weight:600}
.link-card .ir svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.6;transition:transform .3s ease}
.link-card:hover .ir svg{transform:translateX(4px)}


/* ---------- aviso de página em reparo ---------- */
.modal-reparo .modal-caixa{width:min(620px,100%);text-align:center}
.modal-reparo .eyebrow{justify-content:center;margin-bottom:12px}
.modal-reparo .eyebrow::after{display:none}
.modal-reparo p{max-width:52ch;margin-inline:auto}
.modal-reparo p+p{margin-top:14px}
.reparo-marca{width:76px;height:76px;margin:6px auto 22px;border-radius:50%;border:1px solid var(--linha);display:grid;place-items:center;position:relative}
.reparo-marca::after{content:"";position:absolute;inset:6px;border-radius:50%;border:1px solid rgba(195,164,100,.18)}
.reparo-marca svg{width:34px;height:34px;stroke:var(--ouro);fill:none;stroke-width:1.2;stroke-linecap:round}
.reparo-acoes{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}
.reparo-rodape{margin-top:20px!important;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--texto-mute)}
.caixa-reparo{max-width:680px;margin:0 auto;text-align:center;border:1px solid rgba(195,164,100,.26);background:var(--grafite-2);padding:clamp(32px,5vw,58px);position:relative}
.caixa-reparo::before{content:"";position:absolute;inset:10px;border:1px solid rgba(195,164,100,.14);pointer-events:none}
.caixa-reparo h2{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.4vw,38px);color:var(--papel);margin-bottom:18px}
.caixa-reparo p{color:var(--texto-mute);max-width:52ch;margin-inline:auto}
.caixa-reparo p+p{margin-top:14px}
@media(max-width:520px){.reparo-acoes .btn{width:100%}}

/* ---------- link de rota ---------- */
.link-mapa{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:9px 15px;border:1px solid rgba(195,164,100,.42);border-radius:8px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ouro-claro);transition:background .25s ease,color .25s ease,border-color .25s ease}
.link-mapa:hover{background:var(--ouro);border-color:var(--ouro);color:var(--tinta)}
.link-mapa svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cookies{margin-top:26px}
.cookies h3{font-family:var(--display);font-size:20px;color:var(--ouro-claro);margin-bottom:10px}
.cookies p+p{margin-top:12px}

.link-mapa.destaque-rota{display:inline-flex;align-items:center;gap:14px;margin-top:16px;padding:12px 20px 12px 12px;border-radius:12px;text-transform:none;letter-spacing:0;font-size:inherit}
.rota-pin{width:42px;height:42px;flex:none;border-radius:10px;background:var(--ouro);display:grid;place-items:center;transition:background .25s ease}
.rota-pin svg{width:21px;height:21px;stroke:var(--tinta);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rota-txt{display:grid;gap:1px;text-align:left}
.rota-txt strong{font-family:var(--display);font-size:16px;color:var(--papel);letter-spacing:.02em;font-weight:400}
.link-mapa.destaque-rota:hover .rota-txt strong{color:var(--tinta)}
.link-mapa.destaque-rota:hover .rota-pin{background:var(--tinta)}
.link-mapa.destaque-rota:hover .rota-pin svg{stroke:var(--ouro)}
.rota-txt small{font-size:12px;color:var(--texto-mute);letter-spacing:.06em}
.link-mapa.destaque-rota:hover .rota-txt small{color:rgba(22,20,15,.7)}

/* ---------- links em destaque ---------- */
.grade-destaques{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px}
.destaque-card{position:relative;display:grid;gap:5px;background:var(--tinta);border:1px solid rgba(195,164,100,.28);border-radius:14px;padding:24px 28px 26px;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.destaque-card:hover{transform:translateY(-4px);border-color:var(--ouro);box-shadow:0 18px 40px rgba(22,20,15,.28)}
.destaque-icone{width:54px;height:54px;border-radius:14px;background:var(--ouro);display:grid;place-items:center;margin-bottom:14px}
.destaque-icone svg{width:28px;height:28px;stroke:var(--tinta);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.destaque-externo{position:absolute;top:26px;right:28px}
.destaque-externo svg{width:18px;height:18px;stroke:var(--texto-mute);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .3s ease}
.destaque-card:hover .destaque-externo svg{stroke:var(--ouro)}
.destaque-titulo{font-family:var(--display);font-size:24px;color:var(--papel);line-height:1.2}
.destaque-desc{font-size:14.5px;color:var(--texto-mute)}
@media(max-width:760px){.grade-destaques{grid-template-columns:1fr}}

/* ---------- contato ---------- */
.contato{background:var(--tinta)}
.contato .grade{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,64px);align-items:start}
.contato .titulo{color:var(--papel)}
.info-bloco{margin-top:24px}
.info-bloco h4{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro);font-family:var(--corpo);font-weight:600;margin-bottom:7px}
.info-bloco p{margin:0;color:var(--texto-mute);font-size:15.5px;line-height:1.65}
.info-bloco a:hover{color:var(--ouro-claro)}
.form{background:var(--grafite-2);border:1px solid rgba(195,164,100,.2);padding:clamp(26px,4vw,44px)}
.form-linha{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.campo{margin-bottom:16px}
.campo label{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro);margin-bottom:8px}
.campo input,.campo textarea,.campo select{width:100%;background:var(--tinta);border:1px solid rgba(195,164,100,.24);color:var(--texto);padding:13px 15px;font-family:var(--corpo);font-size:15px;transition:border-color .25s ease}
.campo textarea{min-height:132px;resize:vertical}
.campo input:focus,.campo textarea:focus,.campo select:focus{border-color:var(--ouro);outline:none}
.form .btn{width:100%;margin-top:6px}
.form .aviso{font-size:12.5px;color:var(--texto-mute);margin:16px 0 0;text-align:center}

/* ---------- rodapé ---------- */
.rodape{position:relative;background:#100E0A;border-top:1px solid rgba(195,164,100,.18);padding:50px 0 0}
.rodape .grade{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;padding-bottom:36px}
.rodape h4{font-family:var(--display);font-size:16px;color:var(--ouro-claro);margin-bottom:18px}
.rodape p,.rodape li{color:var(--texto-mute);font-size:14.5px}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rodape a:hover{color:var(--ouro-claro)}
.creditos{border-top:1px solid rgba(195,164,100,.14);padding:20px 0;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;font-size:13px;color:rgba(234,229,218,.45)}

/* ---------- logo ---------- */
.logo{height:clamp(60px,6.6vw,78px);width:auto;filter:var(--logo-filtro);transition:height .3s ease}
.header.compacto .logo{height:clamp(48px,5vw,58px)}
.rodape .logo{height:96px;margin-bottom:16px}

/* ---------- tabela de emolumentos ---------- */
.tabelas{background:var(--papel)}
.tabelas .titulo{color:var(--texto-escuro)}
.tabelas .eyebrow{color:var(--ouro-esc)}
.tabelas .eyebrow::after{background:linear-gradient(90deg,rgba(138,110,54,.4),transparent)}
.tabelas .cabeca{text-align:center;margin-bottom:10px}
.tabelas .lead{margin:16px auto 0;text-align:center;color:var(--texto-escuro-mute)}
.nota-reajuste{max-width:760px;margin:20px auto 30px;border:1px solid rgba(138,110,54,.3);background:rgba(195,164,100,.10);padding:16px 22px;text-align:center;font-size:13.5px;color:var(--texto-escuro-mute)}
.nota-reajuste strong{color:var(--texto-escuro)}
.tab-ferramentas{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:20px}
.abas{display:flex;flex-wrap:wrap;gap:8px}
.aba{background:transparent;border:1px solid rgba(42,37,29,.18);color:var(--texto-escuro-mute);padding:9px 16px;font-family:var(--corpo);font-size:13px;letter-spacing:.04em;cursor:pointer;transition:.25s;white-space:nowrap}
.aba:hover{border-color:var(--ouro-esc);color:var(--texto-escuro)}
.aba.ativa{background:var(--tinta);border-color:var(--tinta);color:var(--ouro-claro)}
.busca{position:relative;flex:1;min-width:220px;max-width:320px}
.busca input{width:100%;padding:11px 14px 11px 40px;border:1px solid rgba(42,37,29,.18);background:#fff;font-family:var(--corpo);font-size:14px;color:var(--texto-escuro)}
.busca input:focus{outline:none;border-color:var(--ouro-esc)}
.busca svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;stroke:var(--ouro-esc);fill:none;stroke-width:1.6}
.painel-tabela{display:none;background:#fff;border:1px solid rgba(42,37,29,.12)}
.painel-tabela.ativo{display:block}
.painel-tabela h3{font-size:20px;color:var(--texto-escuro);padding:24px 24px 4px}
.painel-tabela .sub{margin:0;padding:0 24px 18px;font-size:13.5px;color:var(--texto-escuro-mute)}
.rolagem{overflow-x:auto}
table.emol{width:100%;border-collapse:collapse;font-size:14px;min-width:660px}
table.emol thead th{background:var(--tinta);color:var(--ouro-claro);font-family:var(--corpo);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;padding:14px 16px;text-align:right;white-space:nowrap}
table.emol thead th:first-child,table.emol thead th:nth-child(2){text-align:left}
table.emol td{padding:12px 16px;border-bottom:1px solid rgba(42,37,29,.08);text-align:right;font-variant-numeric:tabular-nums;color:var(--texto-escuro-mute);white-space:nowrap}
table.emol td:first-child{text-align:left;font-family:var(--display);font-size:13px;color:var(--ouro-esc);letter-spacing:.03em}
table.emol td:nth-child(2){text-align:left;color:var(--texto-escuro);white-space:normal}
table.emol td.total{color:var(--texto-escuro);font-weight:700}
table.emol tbody tr:hover{background:rgba(195,164,100,.10)}
table.emol tbody tr.oculta{display:none}
.sem-resultado{padding:26px 24px;font-size:14px;color:var(--texto-escuro-mute);display:none}
.sem-resultado.ativo{display:block}
.rodape-tabela{padding:18px 24px;border-top:1px solid rgba(42,37,29,.08);font-size:12.5px;color:var(--texto-escuro-mute);background:rgba(195,164,100,.07)}

/* ---------- lgpd ---------- */
.lgpd{background:var(--grafite-2)}
.lgpd .titulo{color:var(--papel)}
.lgpd .grade{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,5vw,64px);align-items:start}
.lei{border-left:2px solid var(--ouro);padding:4px 0 4px 22px;margin:24px 0}
.lei p{margin:0;color:var(--texto-mute);font-size:15px;font-style:italic}
.lei p+p{margin-top:16px}
.lei strong{font-style:normal;color:var(--ouro-claro);display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px}
.dpo{background:var(--tinta);border:1px solid rgba(195,164,100,.22);padding:32px 28px}
.dpo h3{font-size:19px;color:var(--ouro-claro);margin-bottom:6px}
.dpo .cargo{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--texto-mute);margin:0 0 22px}
.dpo dl{margin:0}
.dpo dt{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin-top:18px}
.dpo dt:first-child{margin-top:0}
.dpo dd{margin:5px 0 0;font-size:15px}
.dpo dd a:hover{color:var(--ouro-claro)}

/* ---------- flutuantes: LGPD + whatsapp ---------- */
.flutuantes{position:fixed;right:20px;bottom:20px;z-index:70;display:flex;align-items:center;gap:12px}
.btn-lgpd{display:inline-flex;align-items:center;gap:9px;padding:13px 20px;border:1px solid var(--ouro);border-radius:10px;background:rgba(22,20,15,.92);backdrop-filter:blur(8px);color:var(--papel);font-family:var(--corpo);font-size:14px;font-weight:600;letter-spacing:.1em;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:background .25s ease,transform .25s ease,color .25s ease}
.btn-lgpd:hover{background:var(--ouro);color:var(--tinta);transform:translateY(-2px)}
.btn-lgpd svg{width:17px;height:17px;fill:var(--ouro);transition:fill .25s ease}
.btn-lgpd:hover svg{fill:var(--tinta)}
.zap{width:56px;height:56px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 10px 28px rgba(0,0,0,.35);transition:transform .3s ease;flex:none}
.zap:hover{transform:scale(1.08)}
.zap svg{width:30px;height:30px;fill:#fff}

/* ---------- modal LGPD ---------- */
.modal[hidden]{display:none}
.modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px}
.modal-fundo{position:absolute;inset:0;background:rgba(10,9,6,.78);backdrop-filter:blur(4px);animation:surgir .3s ease}
.modal-caixa{position:relative;width:min(820px,100%);max-height:88vh;overflow-y:auto;background:var(--grafite-2);border:1px solid rgba(195,164,100,.28);padding:clamp(28px,4vw,52px);animation:subir .35s cubic-bezier(.2,.7,.3,1)}
.modal-caixa::before{content:"";position:absolute;inset:10px;border:1px solid rgba(195,164,100,.16);pointer-events:none}
.modal-caixa h2{font-size:clamp(26px,3.4vw,38px);color:var(--papel);margin-bottom:18px}
.modal-caixa p{color:var(--texto-mute);font-size:15.5px}
.modal-x{position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid rgba(195,164,100,.3);background:transparent;color:var(--ouro);font-size:22px;line-height:1;cursor:pointer;transition:.25s;z-index:3}
.modal-x:hover{background:var(--ouro);color:var(--tinta)}
.lei{border-left:2px solid var(--ouro);padding:4px 0 4px 22px;margin:26px 0}
.lei p{margin:0;font-style:italic}
.lei p+p{margin-top:16px}
.lei strong{font-style:normal;color:var(--ouro-claro);display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px}
.dpo{background:var(--tinta);border:1px solid rgba(195,164,100,.22);padding:28px;margin-top:28px}
.dpo h3{font-size:19px;color:var(--ouro-claro);margin-bottom:4px}
.dpo .cargo{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--texto-mute);margin:0 0 22px}
.dpo dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.dpo dt{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro)}
.dpo dd{margin:5px 0 0;font-size:15px;color:var(--texto)}
.dpo dd a:hover{color:var(--ouro-claro)}
@keyframes surgir{from{opacity:0}to{opacity:1}}
@keyframes subir{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* ---------- animação de entrada ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1)}
.reveal.visivel{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media(max-width:1024px){
  .hero .wrap{grid-template-columns:1fr;text-align:center}
  .selo-box{order:-1;margin-bottom:10px}
  .hero-txt{margin-inline:auto}
  .hero-txt p{margin-inline:auto}
  .hero-acoes,.hero-rodape{justify-content:center}
  .eyebrow{justify-content:center}
  .eyebrow::after{display:none}
  .grade-serv{grid-template-columns:repeat(2,1fr)}
  .grade-links{grid-template-columns:repeat(2,1fr)}
  .sobre .grade,.contato .grade{grid-template-columns:1fr}
  .rodape .grade{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .hero{background-position:70% center}
  .hero::before{background:linear-gradient(175deg,rgba(247,244,237,.96) 0%,rgba(247,244,237,.93) 55%,rgba(247,244,237,.86) 100%)}
  .selo{width:min(240px,58vw)}
  .dpo dl{grid-template-columns:1fr}
}
@media(max-width:760px){
  .menu-btn{display:block}
  .flutuantes{right:14px;bottom:14px;gap:9px}
  .btn-lgpd{padding:12px 16px;font-size:13px}
  .nav{position:fixed;inset:0 0 0 auto;width:min(300px,84vw);background:var(--tinta);flex-direction:column;align-items:flex-start;justify-content:center;gap:26px;padding:40px;transform:translateX(100%);transition:transform .35s ease;border-left:1px solid rgba(195,164,100,.2)}
  .nav.aberto{transform:none}
  .nav a{font-size:19px;font-family:var(--display)}
  .header .btn{display:none}
  .faixa .wrap{grid-template-columns:1fr}
  .faixa-item+.faixa-item::before{left:var(--pad);right:var(--pad);top:0;bottom:auto;width:auto;height:1px}
  .form-linha{grid-template-columns:1fr}
  .rodape .grade{grid-template-columns:1fr}
  .topbar .wrap{gap:6px 20px;font-size:12.5px}
}
@media(max-width:420px){.grade-serv{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}


/* ---------- páginas internas ---------- */
.topo-pagina{position:relative;overflow:hidden;background:var(--papel) var(--hero-img) no-repeat center right/cover;padding:clamp(42px,5.5vw,72px) 0 clamp(44px,6vw,74px)}
.topo-pagina::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(247,244,237,.97) 0%,rgba(247,244,237,.94) 40%,rgba(247,244,237,.7) 58%,rgba(247,244,237,.15) 78%,rgba(247,244,237,0) 92%)}
.topo-pagina .wrap{position:relative;z-index:2;max-width:820px;margin-inline:0;padding-left:max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)))}
.topo-pagina h1{font-size:clamp(32px,4.6vw,54px);color:var(--texto-escuro)}
.topo-pagina .eyebrow{color:var(--ouro-esc)}
.topo-pagina .eyebrow::after{background:linear-gradient(90deg,rgba(138,110,54,.45),transparent)}
.topo-pagina .lead{color:var(--texto-escuro-mute);margin-top:18px}
.migalhas{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--texto-escuro-mute);margin-bottom:20px}
.migalhas a{color:var(--ouro-esc)}
.migalhas a:hover{text-decoration:underline}
.migalhas span{margin:0 8px;opacity:.5}
.nav a.atual{color:var(--ouro-claro)}
.nav a.atual::after{width:100%}
.tabelas{padding-top:clamp(48px,6vw,72px)}

/* ---------- ajustes WordPress ---------- */
.admin-bar .header{top:32px}
@media(max-width:782px){.admin-bar .header{top:46px}}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.aviso-form{margin:0 0 20px;padding:13px 16px;border:1px solid var(--ouro);background:rgba(195,164,100,.12);font-size:14.5px;color:var(--texto)}
.aviso-form.erro{border-color:#C86B5A;background:rgba(200,107,90,.14)}
.mel{position:absolute!important;left:-9999px}
.conteudo-pagina{max-width:820px}
.conteudo-pagina h2,.conteudo-pagina h3{margin:34px 0 12px;color:var(--papel)}
.conteudo-pagina p,.conteudo-pagina li{color:var(--texto-mute)}
.conteudo-pagina a{color:var(--ouro-claro);text-decoration:underline}
.conteudo-pagina ul,.conteudo-pagina ol{padding-left:20px}
.paginacao{display:flex;gap:10px;margin-top:40px}
