/* ============================================================
   GOMES ADVOGADOS ASSOCIADOS — identidade oficial
   Paleta (manual da marca): navy #2D3648 · ouro #664429/#A68B46/#CEB26C
   Tipografia: Cinzel (títulos) · NewJune (texto)
   ============================================================ */

@font-face{font-family:'Cinzel';src:url('../fonts/Cinzel-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Cinzel';src:url('../fonts/cinzel-bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Cinzel';src:url('../fonts/Cinzel-Black.otf') format('opentype');font-weight:900;font-display:swap}
@font-face{font-family:'NewJune';src:url('../fonts/newjune-regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'NewJune';src:url('../fonts/newjune-medium.otf') format('opentype');font-weight:500;font-display:swap}
@font-face{font-family:'NewJune';src:url('../fonts/newjune-semibold.otf') format('opentype');font-weight:600;font-display:swap}

:root{
  --navy:#2D3648;
  --navy-escuro:#222a3a;
  --navy-profundo:#1b2230;
  --ouro:#A68B46;
  --ouro-claro:#CEB26C;
  --ouro-escuro:#664429;
  --marfim:#f7f5f0;
  --branco:#ffffff;
  --texto:#3c4354;
  --texto-suave:#6b7280;
  --serif:'Cinzel',Georgia,serif;
  --sans:'NewJune','Segoe UI',Arial,sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--texto);background:var(--branco);line-height:1.75;font-size:17px}
img{max-width:100%;display:block}
a{color:var(--ouro);text-decoration:none;transition:color .25s}
a:hover{color:var(--ouro-escuro)}

/* ---------- Navegação ---------- */
.nav{position:fixed;inset:0 0 auto 0;z-index:60;padding:18px 0;transition:background .35s,padding .35s,box-shadow .35s}
.nav.rolou{background:rgba(27,34,48,.97);padding:10px 0;box-shadow:0 8px 30px rgba(0,0,0,.35)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}
.nav-brand{display:flex;align-items:center;gap:12px}
.nav-simbolo{width:38px;height:38px;background:url('../img/simbolo-gomes.png') center/contain no-repeat}
.nav-nome{font-family:var(--serif);font-weight:700;color:#fff;font-size:1.25rem;letter-spacing:.14em;line-height:1}
.nav-nome small{display:block;font-family:var(--sans);font-weight:500;font-size:.52rem;letter-spacing:.34em;color:var(--ouro-claro);margin-top:4px}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{color:#e8e6e1;font-weight:500;font-size:.92rem;letter-spacing:.05em}
.nav-links a:hover{color:var(--ouro-claro)}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px;padding:6px}
.nav-toggle span{width:26px;height:2px;background:#fff;transition:.3s}

/* ---------- Botões ---------- */
.btn{display:inline-block;padding:14px 34px;font-family:var(--sans);font-weight:600;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;border-radius:2px;transition:all .3s}
.btn-ouro{background:linear-gradient(135deg,var(--ouro-claro),var(--ouro) 60%,var(--ouro-escuro));color:#fff}
.btn-ouro:hover{filter:brightness(1.1);color:#fff;transform:translateY(-2px)}
.btn-contorno{border:1px solid rgba(206,178,108,.6);color:var(--ouro-claro)}
.btn-contorno:hover{background:rgba(206,178,108,.12);color:var(--ouro-claro)}
.btn-nav{padding:10px 22px;border:1px solid var(--ouro);color:var(--ouro-claro);font-size:.8rem}
.btn-nav:hover{background:var(--ouro);color:#fff}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(160deg,var(--navy) 0%,var(--navy-escuro) 55%,var(--navy-profundo) 100%);overflow:hidden}
.hero-pattern{position:absolute;inset:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.045'%3E%3Cpath d='M0 0h96v96H0z'/%3E%3Cpath d='M0 0l48 48L96 0M0 96l48-48 48 48M48 0v96'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.hero-conteudo{position:relative;z-index:2;padding:130px 24px 80px;max-width:860px}
.hero-simbolo img,.hero-simbolo svg{width:164px;height:auto;margin:0 auto 18px;filter:drop-shadow(0 6px 24px rgba(0,0,0,.45))}
.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(3rem,7vw,4.6rem);color:#fff;letter-spacing:.22em;margin-left:.22em}
.hero-sub{font-family:var(--sans);font-weight:500;color:var(--ouro-claro);letter-spacing:.52em;font-size:clamp(.72rem,1.6vw,.95rem);margin:6px 0 0 .52em}
.hero-frase{color:#c9cdd6;max-width:620px;margin:26px auto 38px;font-size:1.06rem;font-weight:400}
.hero-botoes{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}

/* ---------- Divisores e rótulos ---------- */
.divisor{width:76px;height:2px;background:linear-gradient(90deg,var(--ouro-claro),var(--ouro-escuro));margin:26px auto}
.divisor.esq{margin:18px 0 34px}
.divisor.centro-d{margin:18px auto 54px}
.rotulo{font-weight:600;letter-spacing:.42em;font-size:.78rem;color:var(--ouro);margin-bottom:14px}
.rotulo.centro,h2.centro{text-align:center}

/* ---------- Seções ---------- */
.secao{padding:110px 0}
.secao-inner{max-width:1200px;margin:0 auto;padding:0 28px;position:relative;z-index:2}
.secao h2{font-family:var(--serif);font-weight:700;font-size:clamp(1.7rem,3.6vw,2.5rem);color:var(--navy);letter-spacing:.04em;line-height:1.25}
.secao-escura{background:linear-gradient(160deg,var(--navy),var(--navy-profundo));position:relative;overflow:hidden}
.secao-escura h2{color:#fff}
.secao-escura .rotulo{color:var(--ouro-claro)}
.colunas{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:8px}
.colunas p{margin-bottom:18px}
.lista-marcas{list-style:none;margin-top:6px}
.lista-marcas li{padding:10px 0 10px 34px;position:relative;border-bottom:1px solid #ece8df}
.lista-marcas li::before{content:'';position:absolute;left:4px;top:19px;width:14px;height:2px;background:var(--ouro)}

/* faixa de fotos do escritório */
.faixa-fotos{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:64px}
.faixa-fotos figure{overflow:hidden;border-radius:3px;box-shadow:0 18px 50px rgba(45,54,72,.18);aspect-ratio:4/3}
.faixa-fotos img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.faixa-fotos figure:hover img{transform:scale(1.05)}

/* ---------- Áreas ---------- */
.grade-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.card{background:rgba(255,255,255,.045);border:1px solid rgba(206,178,108,.22);border-top:2px solid var(--ouro);padding:38px 30px;border-radius:2px;transition:transform .35s,background .35s,box-shadow .35s}
.card:hover{transform:translateY(-8px);background:rgba(255,255,255,.08);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.card-icone{font-size:1.6rem;color:var(--ouro-claro);margin-bottom:18px;line-height:1}
.card h3{font-family:var(--serif);font-weight:700;font-size:1.06rem;color:#fff;margin-bottom:12px;letter-spacing:.03em}
.card p{color:#b9bfcb;font-size:.94rem;line-height:1.7}

/* ---------- Sócios ---------- */
.grade-socios{display:grid;grid-template-columns:repeat(2,minmax(0,460px));gap:60px;justify-content:center}
.socio{text-align:center}
.socio-foto{position:relative;width:min(320px,80%);aspect-ratio:4/5;margin:0 auto 28px;border-radius:2px;overflow:hidden;box-shadow:14px 14px 0 -2px rgba(166,139,70,.35),0 22px 55px rgba(45,54,72,.25)}
.socio-foto img{width:100%;height:100%;object-fit:cover}
.foto-fallback{display:none}
.socio-foto.sem-foto img{display:none}
.socio-foto.sem-foto{background:linear-gradient(160deg,var(--navy),var(--navy-profundo));display:flex;align-items:center;justify-content:center}
.socio-foto.sem-foto .foto-fallback{display:block;font-family:var(--serif);font-size:5.5rem;font-weight:700;background:linear-gradient(135deg,var(--ouro-claro),var(--ouro-escuro));-webkit-background-clip:text;background-clip:text;color:transparent}
.socio h3{font-family:var(--serif);font-weight:700;font-size:1.3rem;color:var(--navy);letter-spacing:.02em}
.socio-oab{color:var(--ouro);font-weight:600;letter-spacing:.18em;font-size:.85rem;margin:6px 0 16px}
.socio-bio{text-align:justify;font-size:.96rem;color:var(--texto)}
.socio-lattes{display:inline-block;margin-top:16px;font-weight:600;font-size:.88rem;letter-spacing:.06em;border-bottom:1px solid rgba(166,139,70,.4);padding-bottom:2px}

/* ---------- Galeria Nosso Espaço ---------- */
.secao-clara{background:var(--marfim)}
.grade-galeria{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:230px;gap:18px}
.grade-galeria figure{overflow:hidden;border-radius:3px;box-shadow:0 14px 40px rgba(45,54,72,.14)}
.grade-galeria .g-alta{grid-row:span 2}
.grade-galeria img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.grade-galeria figure:hover img{transform:scale(1.06)}
@media(max-width:980px){.grade-galeria{grid-template-columns:1fr 1fr;grid-auto-rows:200px}}
@media(max-width:720px){.grade-galeria{grid-template-columns:1fr;grid-auto-rows:240px}.grade-galeria .g-alta{grid-row:span 1}}

/* ---------- Diferenciais ---------- */
.faixa{padding:80px 0}
.grade-diferenciais{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;text-align:center}
.dif-num{font-family:var(--serif);font-weight:700;font-size:3rem;background:linear-gradient(135deg,var(--ouro-claro),var(--ouro));-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:8px}
.diferencial p{color:#c2c7d2;font-size:.92rem;line-height:1.6}

/* ---------- Contato ---------- */
.grade-contato{display:grid;grid-template-columns:1fr 1.2fr;gap:54px;align-items:stretch}
.contato-info{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-content:start}
.contato-item h4{font-family:var(--serif);font-size:1rem;color:var(--navy);letter-spacing:.06em;margin-bottom:8px;position:relative;padding-bottom:10px}
.contato-item h4::after{content:'';position:absolute;left:0;bottom:0;width:30px;height:2px;background:var(--ouro)}
.contato-item p,.contato-item a{font-size:.96rem;color:var(--texto)}
.contato-item a:hover{color:var(--ouro)}
.contato-mapa iframe{width:100%;height:100%;min-height:380px;border:0;border-radius:3px;box-shadow:0 18px 50px rgba(45,54,72,.16);filter:saturate(.85)}

/* ---------- Notícias ---------- */
.pg-interna{padding:170px 0 90px;background:linear-gradient(160deg,var(--navy),var(--navy-profundo));position:relative;overflow:hidden}
.pg-interna h1{font-family:var(--serif);color:#fff;font-size:clamp(2rem,4.5vw,3rem);letter-spacing:.08em;text-align:center}
.pg-interna p{color:#c9cdd6;text-align:center;max-width:600px;margin:16px auto 0}
.lista-noticias{max-width:840px;margin:0 auto;display:grid;gap:34px}
.noticia{background:#fff;border:1px solid #eae6dc;border-left:3px solid var(--ouro);padding:38px 42px;border-radius:2px;box-shadow:0 10px 34px rgba(45,54,72,.07)}
.noticia-meta{display:flex;gap:16px;align-items:center;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--texto-suave);margin-bottom:12px}
.noticia-meta .cat{color:var(--ouro);font-weight:600}
.noticia h3{font-family:var(--serif);font-size:1.35rem;color:var(--navy);line-height:1.35;margin-bottom:12px}
.noticia-resumo{margin-bottom:14px}
.noticia details summary{cursor:pointer;font-weight:600;color:var(--ouro);letter-spacing:.04em;list-style:none}
.noticia details summary::after{content:' +'}
.noticia details[open] summary::after{content:' −'}
.noticia details .corpo{margin-top:16px;border-top:1px solid #f0ece2;padding-top:16px}
.noticia .corpo p{margin-bottom:14px}
.compartilhar{margin-top:20px;display:flex;gap:14px;flex-wrap:wrap;font-size:.85rem}
.compartilhar a{border:1px solid rgba(166,139,70,.35);padding:6px 14px;border-radius:2px;font-weight:500}
.compartilhar a:hover{background:var(--ouro);color:#fff}

/* ---------- Rodapé ---------- */
.rodape{background:var(--navy-profundo);color:#9aa1af;text-align:center;padding:56px 24px 44px;font-size:.88rem;line-height:2}
.rodape-nome{font-family:var(--serif);color:#fff;font-size:1.3rem;letter-spacing:.2em;margin-bottom:10px}
.rodape-nome span{display:block;font-family:var(--sans);font-size:.6rem;letter-spacing:.4em;color:var(--ouro-claro)}
.rodape-etica{margin-top:18px;font-size:.78rem;color:#6f7787}

/* ---------- WhatsApp flutuante ---------- */
.whats-flutuante{position:fixed;right:26px;bottom:26px;z-index:70;width:58px;height:58px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(0,0,0,.35);transition:transform .3s}
.whats-flutuante:hover{transform:scale(1.1)}

/* ---------- Animações ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.visivel{opacity:1;transform:none}

/* ---------- Responsivo ---------- */
@media(max-width:980px){
  .grade-areas{grid-template-columns:repeat(2,1fr)}
  .grade-diferenciais{grid-template-columns:repeat(2,1fr);gap:44px}
  .colunas,.grade-socios,.grade-contato{grid-template-columns:1fr}
  .grade-socios{gap:70px}
  .contato-info{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .secao{padding:80px 0}
  .grade-areas{grid-template-columns:1fr}
  .faixa-fotos{grid-template-columns:1fr}
  .nav-links{position:fixed;inset:0;background:rgba(27,34,48,.98);flex-direction:column;justify-content:center;font-size:1.2rem;transform:translateX(100%);transition:transform .4s}
  .nav-links.aberto{transform:none}
  .nav-toggle{display:flex;z-index:80}
  .contato-info{grid-template-columns:1fr}
  .noticia{padding:30px 24px}
}
