:root{
  --petroleo:#0D2B2B;--petroleo-2:#123838;--petroleo-3:#174545;
  --dourado:#C8984F;--dourado-claro:#D8B068;--dourado-escuro:#A97C3A;
  --creme:#F8F5F1;--areia:#EFE8DF;--tinta:#1E1A18;--cinza:#6B6560;--verde:#1F6B57;--linha:#E3DBD1;
  --display:"Montserrat","Helvetica Neue",Arial,sans-serif;--corpo:"Inter","Helvetica Neue",Arial,sans-serif;
  --raio:18px;--max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--creme);color:var(--tinta);font-family:var(--corpo);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--display);line-height:1.12;margin:0;text-wrap:balance}
p{margin:0 0 1em}
::selection{background:var(--dourado);color:var(--petroleo)}
:focus-visible{outline:3px solid var(--dourado);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:.76rem;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado)}
.eyebrow::before{content:"";width:28px;height:2px;background:currentColor}
.sec{padding:120px 0;position:relative}
.sec-escura{background:var(--petroleo);color:#fff}
.sec-areia{background:var(--areia)}
.titulo-sec{max-width:760px;margin-bottom:56px}
.titulo-sec h2{font-size:clamp(2rem,4.2vw,3.2rem);font-weight:800;letter-spacing:-.02em;margin:16px 0 18px}
.titulo-sec p{color:var(--cinza);font-size:1.12rem;max-width:60ch}
.sec-escura .titulo-sec p{color:#BFC9C6}
.ouro{color:var(--dourado-claro)}
.sec:not(.sec-escura) .ouro{color:var(--dourado-escuro)}

/* textura */
.grao{position:relative;isolation:isolate}
.grao::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.07;mix-blend-mode:overlay;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.grao>*{position:relative;z-index:1}

/* botões */
.btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:16px 28px;font-family:var(--display);font-weight:700;font-size:.95rem;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;position:relative}
.btn svg{width:18px;height:18px;transition:transform .25s ease}
.btn:hover svg{transform:translateX(4px)}
.btn-ouro{background:linear-gradient(135deg,var(--dourado),var(--dourado-claro));color:var(--petroleo);box-shadow:0 10px 30px rgba(200,152,79,.28)}
.btn-ouro:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(200,152,79,.4)}
.btn-linha{border:1.5px solid rgba(255,255,255,.35);color:#fff;background:transparent}
.btn-linha:hover{background:#fff;color:var(--petroleo);border-color:#fff}
.btn-escuro{background:var(--petroleo);color:#fff}
.btn-escuro:hover{background:var(--petroleo-3);transform:translateY(-2px)}
.pulsa{animation:pulsa 2.4s ease-in-out infinite}
@keyframes pulsa{0%,100%{box-shadow:0 10px 30px rgba(200,152,79,.28),0 0 0 0 rgba(216,176,104,.55)}50%{box-shadow:0 10px 30px rgba(200,152,79,.28),0 0 0 12px rgba(216,176,104,0)}}

/* topo */
.topo{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .35s ease,padding .35s ease,box-shadow .35s ease;padding:22px 0}
.topo.rolou{background:rgba(13,43,43,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:12px 0;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
.topo .marca img{height:44px;width:auto;transition:height .35s ease}
.topo.rolou .marca img{height:36px}
.menu{display:flex;align-items:center;gap:30px}
.menu a{color:#E9E2D6;text-decoration:none;font-size:.92rem;font-weight:500;position:relative;padding:4px 0}
.menu a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--dourado);transition:right .3s ease}
.menu a:hover::after,.menu a.ativo::after{right:0}
.menu a.ativo{color:#fff}
.menu .btn{padding:11px 20px;font-size:.85rem}
.menu .btn::after{display:none}
.abre-menu{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}
.abre-menu span{position:absolute;left:10px;right:10px;height:2px;background:#fff;transition:transform .3s,opacity .3s}
.abre-menu span:nth-child(1){top:15px}.abre-menu span:nth-child(2){top:21px}.abre-menu span:nth-child(3){top:27px}
.menu-aberto .abre-menu span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-aberto .abre-menu span:nth-child(2){opacity:0}
.menu-aberto .abre-menu span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* hero home */
.hero{min-height:100vh;min-height:100svh;background:radial-gradient(1100px 620px at 80% 20%,#1A4C4C 0%,var(--petroleo) 62%);color:#fff;display:flex;align-items:center;padding:140px 0 90px;overflow:hidden;position:relative}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;width:100%}
.hero h1{font-size:clamp(2.6rem,6vw,5rem);font-weight:800;letter-spacing:-.03em;line-height:1.02;margin:22px 0 26px}
.hero h1 .linha{display:block;overflow:hidden}
.hero h1 .linha>span{display:inline-block;transform:translateY(110%);animation:sobe 1s cubic-bezier(.2,.8,.2,1) forwards}
.hero h1 .linha:nth-child(2)>span{animation-delay:.12s}
.hero h1 .linha:nth-child(3)>span{animation-delay:.24s}
@keyframes sobe{to{transform:translateY(0)}}
.hero .lead{font-size:1.2rem;color:#CFD8D5;max-width:52ch;opacity:0;animation:aparece .9s .5s ease forwards}
.hero .acoes{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px;opacity:0;animation:aparece .9s .7s ease forwards}
@keyframes aparece{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.hero-v{position:absolute;right:-8%;top:50%;width:62vw;max-width:900px;transform:translateY(-50%);opacity:.08;pointer-events:none}
.hero-v path{stroke:var(--dourado-claro);stroke-width:1.2;fill:none;stroke-dasharray:2400;stroke-dashoffset:2400;animation:traco 4s ease forwards}
@keyframes traco{to{stroke-dashoffset:0}}
.hero-visual{position:relative;opacity:0;animation:aparece 1.1s .35s ease forwards}
.hero-visual .ph,.hero-visual .foto{aspect-ratio:4/5;border-radius:26px}
.flutua{position:absolute;background:rgba(255,255,255,.96);color:var(--tinta);border-radius:16px;padding:14px 18px;box-shadow:0 20px 50px rgba(0,0,0,.35);display:flex;gap:12px;align-items:center;font-size:.86rem;line-height:1.35;animation:boia 6s ease-in-out infinite}
.flutua b{display:block;font-family:var(--display);font-size:.92rem}
.flutua small{color:var(--cinza)}
.flutua .ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:none}
.flutua .ic svg{width:20px;height:20px}
.f1{left:-46px;top:12%}
.f1 .ic{background:#E8F0FE;color:#1A73E8}
.f2{right:-30px;top:46%;animation-delay:-2s}
.f2 .ic{background:#E3F6EA;color:#1E9E57}
.f3{left:-20px;bottom:8%;animation-delay:-4s}
.f3 .ic{background:#F7EEDF;color:var(--dourado-escuro)}
@keyframes boia{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.rolar{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);color:#9FB0AC;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px}
.rolar i{width:1px;height:46px;background:linear-gradient(var(--dourado),transparent);animation:desce 2s ease-in-out infinite;transform-origin:top}
@keyframes desce{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}

/* hero interno */
.hero-int{background:radial-gradient(900px 480px at 85% 0%,#1A4C4C 0%,var(--petroleo) 65%);color:#fff;padding:180px 0 100px;overflow:hidden;position:relative}
.hero-int h1{font-size:clamp(2.4rem,5.4vw,4.2rem);font-weight:800;letter-spacing:-.03em;margin:18px 0 20px;max-width:16ch}
.hero-int p{font-size:1.18rem;color:#CFD8D5;max-width:58ch}

/* faixa de áreas */
.faixa{background:var(--dourado);color:var(--petroleo);overflow:hidden;padding:20px 0;border-block:1px solid rgba(0,0,0,.08)}
.faixa .trilho{display:flex;width:max-content;animation:corre 38s linear infinite}
.faixa:hover .trilho{animation-play-state:paused}
.faixa span{font-family:var(--display);font-weight:800;font-size:1.15rem;letter-spacing:.02em;white-space:nowrap;padding:0 26px;display:inline-flex;align-items:center;gap:52px}
.faixa span::after{content:"";width:9px;height:9px;background:var(--petroleo);transform:rotate(45deg)}
@keyframes corre{to{transform:translateX(-50%)}}

/* manifesto */
.manifesto{font-family:var(--display);font-weight:700;font-size:clamp(1.7rem,3.6vw,2.9rem);line-height:1.25;letter-spacing:-.015em;max-width:24ch}
.manifesto .p{color:rgba(30,26,24,.18);transition:color .5s ease}
.manifesto .p.on{color:var(--tinta)}
.manifesto .p.on.ouro{color:var(--dourado-escuro)}
.dupla{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}
.dupla .lateral p{color:var(--cinza);font-size:1.08rem}

/* serviços */
.servicos{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}
.servico{grid-column:span 2;background:#fff;border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease,border-color .3s}
.servico.grande{grid-column:span 3}
.servico:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(13,43,43,.14);border-color:var(--dourado)}
.servico .midia{aspect-ratio:16/10;overflow:hidden}
.servico .midia>*{width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.servico:hover .midia>*{transform:scale(1.06)}
.servico .corpo{padding:28px 28px 30px;display:flex;flex-direction:column;flex:1}
.servico .num{font-family:var(--display);font-weight:800;color:var(--dourado);font-size:.85rem;letter-spacing:.14em}
.servico h3{font-size:1.4rem;font-weight:800;margin:10px 0 10px}
.servico p{color:var(--cinza);font-size:.98rem;flex:1}
.servico .mais{font-family:var(--display);font-weight:700;font-size:.85rem;color:var(--petroleo);display:inline-flex;align-items:center;gap:8px;margin-top:8px}
.servico .mais svg{width:16px;height:16px;transition:transform .3s}
.servico:hover .mais svg{transform:translateX(5px)}

/* método */
.metodo{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.metodo .fixo{position:sticky;top:120px}
.metodo .fixo .ph,.metodo .fixo .foto{aspect-ratio:4/5;border-radius:24px;margin-top:36px}
.passos{display:flex;flex-direction:column;gap:18px;counter-reset:p}
.passo{border:1px solid rgba(255,255,255,.12);border-radius:var(--raio);padding:30px 32px;background:rgba(255,255,255,.03);transition:background .4s,border-color .4s,transform .4s;position:relative;overflow:hidden}
.passo::before{counter-increment:p;content:"0" counter(p);font-family:var(--display);font-weight:800;font-size:3.4rem;line-height:1;color:rgba(216,176,104,.16);position:absolute;right:24px;top:18px;transition:color .4s}
.passo h3{font-size:1.3rem;margin-bottom:8px}
.passo p{color:#BFC9C6;margin:0;max-width:46ch}
.passo.on{background:rgba(216,176,104,.08);border-color:rgba(216,176,104,.5);transform:translateX(-8px)}
.passo.on::before{color:rgba(216,176,104,.55)}

/* caminhos */
.caminhos{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.caminho{border-radius:24px;padding:46px 44px;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:420px;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.caminho:hover{transform:translateY(-6px)}
.caminho.claro{background:#fff;border:1px solid var(--linha)}
.caminho.escuro{background:var(--petroleo);color:#fff}
.caminho .tag{align-self:flex-start;font-family:var(--display);font-weight:700;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;padding:7px 14px;border-radius:99px;background:#E3EFEA;color:var(--verde)}
.caminho.escuro .tag{background:rgba(216,176,104,.16);color:var(--dourado-claro)}
.caminho h3{font-size:2rem;font-weight:800;margin:22px 0 12px}
.caminho p{color:var(--cinza)}
.caminho.escuro p{color:#BFC9C6}
.caminho ul{list-style:none;padding:0;margin:8px 0 30px;display:grid;gap:10px;flex:1}
.caminho li{display:flex;gap:12px;align-items:flex-start;font-size:.98rem}
.caminho li::before{content:"";flex:none;width:18px;height:18px;margin-top:4px;border-radius:50%;background:var(--dourado) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D2B2B' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat}
.caminho .btn{align-self:flex-start}
.caminho .v-fundo{position:absolute;right:-60px;bottom:-60px;width:280px;opacity:.07}

/* ética */
.etica{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.etica div{padding:28px;border-top:2px solid var(--dourado)}
.etica h4{font-size:1.05rem;margin-bottom:8px}
.etica p{color:var(--cinza);font-size:.95rem;margin:0}

/* time */
.time{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.pessoa .ph,.pessoa .foto{aspect-ratio:4/5;border-radius:22px}
.pessoa h3{font-size:1.5rem;margin:22px 0 4px}
.pessoa .cargo{color:var(--dourado-escuro);font-family:var(--display);font-weight:700;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase}
.pessoa p{color:var(--cinza);margin-top:12px}

/* linha do tempo */
.tempo{position:relative;display:grid;gap:0;max-width:880px}
.tempo::before{content:"";position:absolute;left:23px;top:8px;bottom:8px;width:2px;background:rgba(255,255,255,.12)}
.tempo .barra-ouro{position:absolute;left:23px;top:8px;width:2px;height:0;background:linear-gradient(var(--dourado),var(--dourado-claro));transition:height .2s linear}
.marco{display:grid;grid-template-columns:48px 1fr;gap:26px;padding:0 0 54px}
.marco:last-child{padding-bottom:0}
.marco .pt{width:48px;height:48px;border-radius:50%;background:var(--petroleo);border:2px solid rgba(255,255,255,.2);display:grid;place-items:center;font-family:var(--display);font-weight:800;color:var(--dourado-claro);transition:border-color .4s,background .4s;position:relative;z-index:1}
.marco.on .pt{border-color:var(--dourado);background:var(--petroleo-3)}
.marco h3{font-size:1.5rem;margin:8px 0 8px}
.marco p{color:#BFC9C6;margin:0}

/* blog cards */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.post-card{text-decoration:none;color:inherit;display:flex;flex-direction:column;background:#fff;border-radius:var(--raio);overflow:hidden;border:1px solid var(--linha);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.post-card:hover{transform:translateY(-6px);box-shadow:0 26px 50px rgba(13,43,43,.12)}
.post-card .midia{aspect-ratio:16/9;overflow:hidden}
.post-card .midia>*{width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.post-card:hover .midia>*{transform:scale(1.05)}
.post-card .corpo{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1}
.post-card .meta{font-size:.78rem;color:var(--cinza);display:flex;gap:10px;align-items:center;margin-bottom:10px}
.post-card .cat{color:var(--verde);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}
.post-card h3{font-size:1.2rem;font-weight:700;line-height:1.3;margin-bottom:10px}
.post-card p{color:var(--cinza);font-size:.95rem;margin:0}
.vazio{padding:40px;border:1.5px dashed var(--linha);border-radius:var(--raio);color:var(--cinza);text-align:center}

/* artigo */
.artigo-topo{background:radial-gradient(900px 480px at 85% 0%,#1A4C4C 0%,var(--petroleo) 65%);color:#fff;padding:170px 0 80px}
.artigo-topo h1{font-size:clamp(2.1rem,4.6vw,3.4rem);font-weight:800;letter-spacing:-.02em;margin:18px 0 18px;max-width:22ch}
.artigo-topo .meta{color:#BFC9C6;font-size:.92rem;display:flex;gap:16px;flex-wrap:wrap}
.artigo-capa{max-width:980px;margin:-50px auto 0;padding:0 28px;position:relative;z-index:2}
.artigo-capa .ph,.artigo-capa .foto{aspect-ratio:16/8;border-radius:22px;box-shadow:0 30px 60px rgba(0,0,0,.18)}
.artigo{max-width:720px;margin:0 auto;padding:60px 28px 40px;font-size:1.1rem;line-height:1.8}
.artigo h2{font-size:1.65rem;font-weight:800;margin:2em 0 .7em;letter-spacing:-.01em}
.artigo h3{font-size:1.25rem;margin:1.6em 0 .6em}
.artigo ul,.artigo ol{padding-left:1.3em}
.artigo li{margin-bottom:.5em}
.artigo blockquote{margin:1.8em 0;padding:18px 26px;border-left:3px solid var(--dourado);background:var(--areia);border-radius:0 14px 14px 0;font-size:1.02rem}
.artigo a{color:var(--verde);text-underline-offset:3px}
.artigo .aviso{font-size:.92rem;color:var(--cinza);border-top:1px solid var(--linha);padding-top:22px;margin-top:40px}
.progresso-leitura{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--dourado),var(--dourado-claro));z-index:60}
.compartilha{max-width:720px;margin:0 auto 80px;padding:0 28px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:var(--cinza);font-size:.92rem}
.compartilha a{padding:9px 16px;border-radius:99px;border:1px solid var(--linha);text-decoration:none;font-weight:600;color:var(--petroleo)}
.compartilha a:hover{border-color:var(--dourado)}

/* página de serviços */
.bloco-serv{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:90px 0;border-bottom:1px solid var(--linha)}
.bloco-serv:last-child{border-bottom:0}
.bloco-serv:nth-child(even) .midia{order:2}
.bloco-serv .midia .ph,.bloco-serv .midia .foto{aspect-ratio:5/4;border-radius:24px}
.bloco-serv h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:800;margin:14px 0 16px;letter-spacing:-.02em}
.bloco-serv p{color:var(--cinza)}
.bloco-serv ul{list-style:none;padding:0;margin:20px 0 28px;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.bloco-serv li{display:flex;gap:10px;font-size:.95rem}
.bloco-serv li::before{content:"";flex:none;width:7px;height:7px;margin-top:9px;background:var(--dourado);transform:rotate(45deg)}

/* cta final */
.cta-final{background:var(--petroleo);color:#fff;text-align:center;padding:130px 0;overflow:hidden;position:relative}
.cta-final .fundo{position:absolute;inset:0;opacity:.28}
.cta-final .fundo>*{width:100%;height:100%;border-radius:0}
.cta-final::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 50% 50%,rgba(13,43,43,.4),var(--petroleo) 80%);z-index:1}
.cta-final .wrap{position:relative;z-index:2}
.cta-final h2{font-size:clamp(2.2rem,5vw,4rem);font-weight:800;letter-spacing:-.03em;max-width:18ch;margin:18px auto 20px}
.cta-final p{color:#CFD8D5;font-size:1.15rem;max-width:52ch;margin:0 auto 36px}
.cta-final .acoes{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}


/* whatsapp flutuante */
.zap{position:fixed;right:24px;bottom:24px;z-index:70;width:62px;height:62px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(0,0,0,.25);text-decoration:none;transition:transform .25s}
.zap:hover{transform:scale(1.08)}
.zap svg{width:32px;height:32px}
.zap::before,.zap::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;animation:onda 2.4s ease-out infinite}
.zap::after{animation-delay:1.2s}
@keyframes onda{from{transform:scale(1);opacity:.8}to{transform:scale(1.7);opacity:0}}
.zap .dica{position:absolute;right:76px;white-space:nowrap;background:#fff;color:var(--tinta);font-size:.85rem;font-weight:600;padding:9px 14px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.15);opacity:0;transform:translateX(8px);transition:.3s;pointer-events:none}
.zap:hover .dica{opacity:1;transform:none}

/* placeholders de imagem */
.ph{position:relative;overflow:hidden;background:linear-gradient(140deg,#174545 0%,#0D2B2B 55%,#0A2222 100%);display:flex;align-items:flex-end;color:#fff}
.ph::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0l30 52L60 0' fill='none' stroke='%23D8B068' stroke-opacity='.10' stroke-width='1'/%3E%3C/svg%3E");background-size:60px}
.ph::after{content:"";position:absolute;width:70%;aspect-ratio:1;border-radius:50%;right:-15%;top:-20%;background:radial-gradient(circle,rgba(216,176,104,.35),transparent 65%);animation:brilho 7s ease-in-out infinite}
@keyframes brilho{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,30px)}}
.ph .rot{position:relative;z-index:1;margin:18px;padding:8px 13px;border-radius:99px;background:rgba(0,0,0,.35);backdrop-filter:blur(6px);font-size:.72rem;font-weight:600;letter-spacing:.06em;color:#E9E2D6;display:flex;gap:8px;align-items:center}
.ph .rot::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--dourado-claro);animation:pisca 1.6s infinite}
@keyframes pisca{50%{opacity:.3}}
.ph.claro{background:linear-gradient(140deg,#EFE8DF,#E3D8CA)}
.ph.claro .rot{background:rgba(13,43,43,.75)}
.foto{object-fit:cover;width:100%;height:100%}

/* revelar no scroll */
.rv{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.rv.on{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}.rv.d4{transition-delay:.4s}
.rv-img{clip-path:inset(12% 12% 12% 12% round 26px);transition:clip-path 1.2s cubic-bezier(.2,.8,.2,1)}
.rv-img.on{clip-path:inset(0 0 0 0 round 0)}

/* cursor de luz no hero */
.luz{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(216,176,104,.14),transparent 65%);pointer-events:none;transform:translate(-50%,-50%);left:70%;top:40%;transition:left .6s ease-out,top .6s ease-out;z-index:0}

@media (max-width:1000px){
  .hero .wrap,.dupla,.metodo,.caminhos,.time,.bloco-serv{grid-template-columns:1fr}
  .hero{padding-top:120px}
  .hero-visual{max-width:440px;margin:20px auto 0}
  .f1{left:-10px}.f2{right:-10px}.f3{left:0}
  .servicos{grid-template-columns:1fr 1fr}
  .servico,.servico.grande{grid-column:span 1}
  .metodo .fixo{position:static}
  .etica{grid-template-columns:1fr 1fr}
  .posts{grid-template-columns:1fr 1fr}
  .bloco-serv:nth-child(even) .midia{order:0}
  .bloco-serv{gap:36px;padding:60px 0}
}
@media (max-width:820px){
  .menu{position:fixed;inset:0;background:var(--petroleo);flex-direction:column;justify-content:center;gap:26px;opacity:0;pointer-events:none;transition:opacity .35s}
  .menu a{font-size:1.4rem;font-family:var(--display);font-weight:700}
  .menu-aberto .menu{opacity:1;pointer-events:auto}
  .abre-menu{display:block;z-index:2}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 20px}
  .sec{padding:84px 0}
  .servicos,.posts,.etica{grid-template-columns:1fr}
  .caminho{padding:34px 28px;min-height:0}
  .flutua{font-size:.78rem;padding:10px 13px}
  .flutua .ic{width:30px;height:30px}
  .bloco-serv ul{grid-template-columns:1fr}
  .zap{right:16px;bottom:16px}
  .rolar{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .rv,.rv-img{opacity:1;transform:none;clip-path:none}
  .hero h1 .linha>span{transform:none}
}
.passo{padding-right:96px}
.post-card .meta{flex-wrap:wrap;row-gap:2px}
.post-card .meta span{white-space:nowrap}
@media (max-width:1000px){.hero-visual{width:100%}}
.pessoa .formacao{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;font-size:.88rem;font-weight:600;color:var(--verde)}
.hero h1 .linha{padding-bottom:.14em;margin-bottom:-.14em}
.flutua .busca{min-width:15ch}
.flutua .busca::after{content:"";display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:-2px;background:currentColor;animation:pisca 1s steps(1) infinite}
.f2{transition:opacity .35s ease,scale .35s cubic-bezier(.3,1.4,.5,1),translate .35s ease}
.f2.sai{opacity:0;scale:.82;translate:0 16px}
.f2 .msg{display:block;max-width:26ch}
.f2::after{content:"1";position:absolute;top:-7px;right:-7px;width:20px;height:20px;border-radius:50%;background:#25D366;color:#fff;font-size:.7rem;font-weight:700;display:grid;place-items:center;box-shadow:0 4px 10px rgba(0,0,0,.25)}
.f2 .msg.digitando::after{content:"";display:inline-block;width:2px;height:1em;margin-left:1px;vertical-align:-2px;background:currentColor;animation:pisca 1s steps(1) infinite}
.f2 .msg.pontos{color:#1E9E57;font-style:italic}
.f2 .msg{min-height:2.7em}
.f3{padding-right:16px}
.f3 small{display:block}
.f3 .cont{font-family:var(--display);font-size:1.05rem;color:var(--dourado-escuro);display:inline-block}
.f3 .cont.pula{animation:pula .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes pula{0%{transform:scale(1)}40%{transform:scale(1.45);color:#1E9E57}100%{transform:scale(1)}}
.f3 .barras{display:flex;align-items:flex-end;gap:3px;height:34px;width:72px;margin-left:6px;flex:none}
.f3 .barras i{flex:1;border-radius:2px 2px 0 0;background:linear-gradient(var(--dourado-claro),var(--dourado));opacity:.55;transition:height .6s cubic-bezier(.3,1.3,.5,1)}
.f3 .barras i.ultima{opacity:1;background:linear-gradient(#36C97A,#1E9E57)}
.f3 .mais1{position:absolute;right:14px;top:-4px;font-family:var(--display);font-weight:800;font-size:.85rem;color:#1E9E57;opacity:0;pointer-events:none}
.f3 .mais1.voa{animation:voa 1.2s ease-out}
@keyframes voa{0%{opacity:0;transform:translateY(6px)}20%{opacity:1}100%{opacity:0;transform:translateY(-22px)}}
.hero-visual .pilha{position:relative;aspect-ratio:4/5;border-radius:26px;overflow:hidden;background:var(--petroleo-2)}
.hero-visual .pilha .foto{position:absolute;inset:0;aspect-ratio:auto;border-radius:0;opacity:0;transform:scale(1.08);filter:blur(6px);transition:opacity 1.3s ease,transform 6s cubic-bezier(.2,.8,.2,1),filter 1.1s ease}
.hero-visual .pilha .foto.ativa{opacity:1;transform:scale(1);filter:blur(0)}
.filtros{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}
.chip{border:1.5px solid var(--linha);background:#fff;color:var(--petroleo);border-radius:99px;padding:9px 18px;font-family:var(--display);font-weight:600;font-size:.85rem;cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--dourado)}
.chip.ativo{background:var(--petroleo);border-color:var(--petroleo);color:#fff}
.lista-blog .post-card.oculto{display:none}
.mais-posts{text-align:center;margin-top:44px}
.mais-posts[hidden]{display:none}
@media (min-width:1001px){
  .metodo{align-items:stretch}
  .metodo .fixo{position:static}
  .metodo .passos{padding-top:46px;justify-content:space-between}
}
@property --giro{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes giro{to{--giro:360deg}}
.btn-neon{isolation:isolate;z-index:0}
.btn-neon .txt{position:relative}
.btn-neon .neon{position:absolute;inset:-4px;border-radius:999px;padding:4px;pointer-events:none;z-index:-1;
  background:conic-gradient(from var(--giro), rgba(216,176,104,.15) 0deg, rgba(216,176,104,.15) 220deg, #C8984F 290deg, #F0D394 335deg, #fff 352deg, rgba(216,176,104,.15) 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:giro 3s linear infinite;filter:drop-shadow(0 0 8px rgba(240,211,148,.8))}
.menu a.btn-ouro,.menu a.btn-ouro:hover{color:var(--petroleo);font-weight:700}
.menu a.menu-cliente{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(216,176,104,.45);border-radius:99px;padding:8px 14px;color:var(--dourado-claro)}
.menu a.menu-cliente svg{width:15px;height:15px}
.menu a.menu-cliente::after{display:none}
.menu a.menu-cliente:hover{background:rgba(216,176,104,.12);color:#fff}
@media (max-width:1100px) and (min-width:821px){.menu{gap:20px}.menu a.menu-cliente{padding:7px 11px}}

/* ===== v3: diferencial, páginas de serviço, autor ===== */
.btn-linha-escura{border:1.5px solid var(--petroleo);color:var(--petroleo);background:transparent}
.btn-linha-escura:hover{background:var(--petroleo);color:#fff}
.acoes-serv{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
.dif{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.dif h2{font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:800;letter-spacing:-.02em;margin:14px 0 18px}
.dif p{color:var(--cinza);margin-bottom:24px}
.dif-itens{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dif-itens.quatro{grid-template-columns:repeat(4,1fr)}
.dif-itens>div{background:#fff;border:1px solid var(--linha);border-radius:20px;padding:26px}
.sec-areia .dif-itens>div{background:#fff}
.dif-sec .dif-itens>div{background:var(--areia);border-color:transparent}
.dif-itens b{font-family:var(--display);color:var(--dourado-escuro);font-size:.85rem;letter-spacing:.14em}
.dif-itens h4{font-size:1.08rem;margin:10px 0 8px}
.dif-itens p{color:var(--cinza);font-size:.95rem;margin:0}
.trilha{font-size:.85rem;color:#BFC9C6;margin-bottom:18px}
.trilha a{color:#BFC9C6;text-decoration:none}.trilha a:hover{color:#fff}
.hero-int .acoes{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.texto-serv p{color:var(--cinza)}
.texto-serv h3{font-size:1.2rem;margin:24px 0 10px}
.texto-serv ul{padding-left:1.2em;color:var(--cinza)}
.serv-dupla{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}
.oab-box{background:var(--petroleo);color:#fff;border-radius:24px;padding:40px}
.oab-box h3{font-size:1.5rem;margin:12px 0 14px}
.oab-box p{color:#CFD8D5}
.faq-item{border-bottom:1px solid var(--linha);padding:18px 0}
.faq-item summary{cursor:pointer;font-family:var(--display);font-weight:700;font-size:1.02rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq-item summary::after{content:"+";color:var(--dourado-escuro);font-size:1.3rem;line-height:1}
.faq-item[open] summary::after{content:"–"}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item p{color:var(--cinza);margin:12px 0 0}
.outros-serv{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-weight:600}
.outros-serv a{border:1px solid var(--linha);border-radius:99px;padding:8px 16px;text-decoration:none;color:var(--petroleo);font-size:.92rem}
.outros-serv a:hover{border-color:var(--dourado)}
.artigo-topo .meta a{color:var(--dourado-claro, #D8B068);text-decoration:none}
.autor-box{max-width:720px;margin:0 auto 40px;padding:28px;display:grid;grid-template-columns:110px 1fr;gap:24px;align-items:center;background:var(--areia);border-radius:22px;width:calc(100% - 56px)}
.autor-foto .foto,.autor-foto .ph{aspect-ratio:1/1;border-radius:50%;object-fit:cover;object-position:50% 12%;width:110px;height:110px}
.autor-box h3{font-size:1.25rem;margin:6px 0 2px}.autor-box h3 a{color:inherit;text-decoration:none}
.autor-box .autor-cargo{color:var(--dourado-escuro);font-weight:700;font-size:.85rem;margin:0 0 8px}
.autor-box p{color:var(--cinza);font-size:.95rem;margin:0}
@media (max-width:1000px){.dif,.serv-dupla{grid-template-columns:1fr;gap:40px}.dif-itens.quatro{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.dif-itens,.dif-itens.quatro{grid-template-columns:1fr}.autor-box{grid-template-columns:1fr;text-align:left}}
.serv-rel{margin-top:2em;padding:16px 20px;border:1px solid var(--linha);border-radius:14px;font-size:1rem}
.v-fundo{pointer-events:none}
