:root{
  --navy:#14273F; --navy-2:#0E1B2C; --navy-3:#1C3350;
  --gold:#C6A24C; --gold-soft:#DBC48A; --gold-ink:#9A7A2C;
  --ink:#16283F; --body:#46515F; --muted:#8A93A0;
  --paper:#ffffff; --cream:#F7F4EC; --line:#E7E3D9; --line-2:#E9E6DD;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Inter',system-ui,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--body);background:var(--paper);line-height:1.75;font-size:17px;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
h1,h2,h3,h4{font-family:var(--serif);color:var(--navy);font-weight:500;line-height:1.14}
.eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-ink);font-weight:700}
.rule{width:48px;height:2px;background:var(--gold);margin:20px 0 30px}
.center{text-align:center}.center .rule{margin-left:auto;margin-right:auto}
.section{padding:118px 0}
.dark{background:var(--navy);color:#C6D0DC}
.dark h1,.dark h2,.dark h3{color:#F5F1E8}.dark .eyebrow{color:var(--gold-soft)}
.cream{background:var(--cream)}
p{color:var(--body)}.dark p{color:#C6D0DC}
.lead{font-size:19px;line-height:1.7}

/* links / buttons — discretos */
.lnk{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--gold-ink);display:inline-flex;align-items:center;gap:8px;transition:.2s}
.lnk:hover{color:var(--navy);gap:12px}
.dark .lnk{color:var(--gold-soft)}.dark .lnk:hover{color:#fff}
.lnk .ar{transition:.2s}
.btn-line{display:inline-block;font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.04em;padding:14px 30px;border:1px solid var(--navy);color:var(--navy);transition:.2s}
.btn-line:hover{background:var(--navy);color:#fff}
.dark .btn-line{border-color:rgba(219,196,138,.55);color:#F5F1E8}.dark .btn-line:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}

/* HEADER */
header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(14,27,44,.94);backdrop-filter:blur(6px);border-bottom:1px solid rgba(219,196,138,.16)}
.nav{display:flex;align-items:center;justify-content:space-between;height:88px}
.nav .logo img{height:60px}
.nav ul{display:flex;list-style:none;gap:34px;align-items:center}
.nav ul a{color:#E6EAF0;font-family:var(--sans);font-size:13.5px;font-weight:500;letter-spacing:.03em;transition:.2s}
.nav ul a:hover,.nav ul a.active{color:var(--gold-soft)}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}
.burger span{width:26px;height:2px;background:#fff;display:block}

/* HERO (imagem de fundo + degradê) */
.hero{position:relative;background:var(--navy);color:#C6D0DC;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding-top:88px}
.hero .bg{position:absolute;inset:0;background:url('../img/hero_office.jpg') center/cover;filter:brightness(.9)}
.hero .veil{position:absolute;inset:0;background:linear-gradient(100deg,rgba(14,27,44,.95) 0%,rgba(14,27,44,.84) 40%,rgba(14,27,44,.52) 100%)}
.hero .inner{position:relative;width:100%;padding-top:64px;padding-bottom:64px}
.hero .eyebrow{color:var(--gold)}
.hero h1{color:#F7F3EA;font-size:62px;font-weight:500;margin:24px 0 0;line-height:1.08;letter-spacing:.2px;max-width:640px}
.hero p{margin-top:26px;font-size:18.5px;max-width:560px;font-weight:300;color:#C6D0DC}
.hero .actions{margin-top:40px;display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.hero .btn-line{border-color:rgba(219,196,138,.55);color:#F5F1E8}
.hero .btn-line:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.hero .lnk{color:var(--gold-soft)}.hero .lnk:hover{color:#fff}
.hero .meta{margin-top:46px;border-top:1px solid rgba(219,196,138,.24);padding-top:20px;font-family:var(--sans);font-size:13.5px;letter-spacing:.05em;color:#9FB0C2;max-width:600px}
.hero .meta b{color:var(--gold-soft);font-weight:600}

/* SECTION TITLES */
.stitle{font-size:40px;margin-bottom:4px}
.dark .stitle{color:#F5F1E8}

/* split (texto + imagem) */
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.split.rev .txt{order:2}.split.rev .media{order:1}
.split .media img{width:100%;filter:grayscale(100%) contrast(1.04)}
.split .media{position:relative;border:1px solid var(--line)}
.split p+p{margin-top:16px}
.split .lead+.lnk,.split p+.lnk{margin-top:28px}

/* ÁREAS list */
.arealist{margin-top:54px;border-top:1px solid var(--line)}
.arow{display:grid;grid-template-columns:52px 1fr auto;gap:26px;align-items:center;padding:30px 6px;border-bottom:1px solid var(--line);transition:.2s}
.arow:hover{background:#fff;padding-left:18px;padding-right:18px}
.arow .idx{font-family:var(--serif);font-size:26px;color:var(--gold);}
.arow h3{font-size:24px;margin-bottom:4px}
.arow p{font-size:15px;color:var(--body);max-width:640px}
.arow .go{color:var(--gold-ink);font-size:22px;transition:.2s}
.arow:hover .go{transform:translateX(4px)}

/* PRINCÍPIOS */
.princ{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:56px}
.princ .p .n{font-family:var(--serif);font-size:22px;color:var(--gold-soft)}
.princ .p h3{color:#F5F1E8;font-size:23px;margin:12px 0 8px}
.princ .p p{font-size:14.5px;color:#C6D0DC}
.princ .p{border-top:1px solid rgba(219,196,138,.28);padding-top:22px}

/* ADVOGADO */
.bio .photo{position:relative;aspect-ratio:4/5;background:linear-gradient(160deg,#1C3350,#0E1B2C);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.bio .photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%)}
.bio .photo .ph{text-align:center;color:#7C8AA0;font-family:var(--sans);font-size:13px;letter-spacing:.04em;padding:20px}
.bio .photo .ph svg{width:54px;height:54px;color:#3A4E68;margin:0 auto 14px}
.bio h2{font-size:36px}
.bio .oab{font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);margin-top:8px}
.bio .creds{list-style:none;margin:26px 0 0;display:grid;gap:11px}
.bio .creds li{display:flex;gap:12px;font-size:15px;color:var(--body)}
.bio .creds svg{flex:0 0 auto;color:var(--gold);margin-top:4px}

/* PUBLICAÇÕES */
.arts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:54px}
.art{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:.2s;overflow:hidden}
.art:hover{border-color:var(--gold);box-shadow:0 20px 44px rgba(20,39,63,.07)}
.art .art-thumb{display:block;height:190px;overflow:hidden;background:var(--navy-2)}
.art .art-thumb img{width:100%;height:100%;object-fit:cover;transition:.5s}
.art:hover .art-thumb img{transform:scale(1.05)}
.art .art-body{padding:30px 28px 32px;display:flex;flex-direction:column;flex:1}
.art .tag{font-family:var(--sans);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:700}
.art h3{font-size:23px;margin:14px 0 12px;line-height:1.2}
.art p{font-size:15px;color:var(--body);flex:1}
.art .lnk{margin-top:20px}

/* CONTATO */
.contato .cols{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.contato .info{list-style:none;display:grid;gap:20px;margin-top:30px}
.contato .info li{display:flex;gap:15px;color:#E6EAF0;font-size:16px}
.contato .info svg{flex:0 0 auto;color:var(--gold);margin-top:2px}
.contato .info a:hover{color:var(--gold-soft)}
.mapembed{height:100%;min-height:340px;border:1px solid rgba(219,196,138,.3);line-height:0}
.mapembed iframe{width:100%;height:100%;min-height:340px;border:0;filter:grayscale(35%) contrast(1.03)}

/* FOOTER */
footer{background:var(--navy-2);color:#9FB0C2;padding:70px 0 30px}
footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px}
footer .logo img{height:58px;margin-bottom:20px}
footer p{font-size:14px;font-weight:300;color:#9FB0C2}
footer h4{font-family:var(--sans);color:#F5F1E8;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px;font-weight:600}
footer ul{list-style:none;display:grid;gap:11px}
footer ul li{font-size:14px}footer ul a:hover{color:var(--gold-soft)}
footer .disc{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:11.5px;color:#6E7E90;line-height:1.65}
footer .copy{margin-top:14px;font-size:12.5px;color:#6E7E90}

/* PÁGINAS INTERNAS */
.pagehead{background:var(--navy);color:#C6D0DC;padding:150px 0 64px}
.pagehead .eyebrow{color:var(--gold)}
.pagehead h1{color:#F7F3EA;font-size:50px;margin-top:14px;line-height:1.1}
.crumb{font-family:var(--sans);font-size:12.5px;letter-spacing:.03em;color:#9FB0C2;margin-top:18px}
.crumb a{color:#C6D0DC}.crumb a:hover{color:var(--gold-soft)}
.prose{max-width:760px}
.prose .lead{font-size:20px;color:var(--ink);margin-bottom:22px;line-height:1.6}
.prose p{margin-bottom:20px;font-size:17px;line-height:1.85;color:var(--body)}
.prose p strong{color:var(--navy)}
.prose h2{font-size:30px;margin:40px 0 14px}
.prose h3{font-size:23px;margin:28px 0 10px}
.prose ul{list-style:none;margin:6px 0 22px}
.prose ul li{position:relative;padding-left:24px;margin-bottom:11px;font-size:16.5px;line-height:1.6;color:var(--body)}
.prose ul li::before{content:'';position:absolute;left:0;top:12px;width:7px;height:7px;background:var(--gold)}
.prose ul li strong{color:var(--navy)}
.prose .meta{font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-bottom:16px}
.prose .artcover{width:100%;height:340px;object-fit:cover;margin-bottom:36px;border:1px solid var(--line)}
.prose .disc{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);line-height:1.65}
@media(max-width:600px){.prose .artcover{height:220px}}
.backlink{margin-top:36px}
/* EQUIPE / ADVOGADOS */
.team-photo{max-width:820px;margin:46px auto 0;border:1px solid var(--line)}
.team-photo img{width:100%;display:block;filter:saturate(.95)}
.team{display:grid;grid-template-columns:1fr 1fr;gap:56px;max-width:820px;margin:26px auto 0}
.member h3{font-size:25px;margin-top:0}
.member .role{font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);font-weight:700;margin-top:8px}
.member .oab{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--muted);margin-top:6px}
.member p{margin-top:16px;font-size:15.5px;color:var(--body)}
.member .creds{list-style:none;margin-top:16px;display:grid;gap:9px}
.member .creds li{display:flex;gap:10px;font-size:14.5px;color:var(--body)}
.member .creds svg{flex:0 0 auto;color:var(--gold);margin-top:3px}
@media(max-width:760px){.team{grid-template-columns:1fr;gap:44px}}
@media(max-width:600px){.pagehead{padding:120px 0 50px}.pagehead h1{font-size:34px}.prose h2{font-size:26px}}

/* RESPONSIVE */
@media(max-width:940px){
  .nav ul{position:fixed;top:88px;left:0;right:0;background:var(--navy-2);flex-direction:column;gap:0;padding:8px 0;transform:translateY(-160%);transition:.3s;border-bottom:1px solid rgba(219,196,138,.2)}
  .nav ul.open{transform:translateY(0)}
  .nav ul li{width:100%;text-align:center}.nav ul li a{display:block;padding:14px}
  .burger{display:flex}
  .hero .grid,.split,.contato .cols,.bio.split{grid-template-columns:1fr;gap:40px}
  .hero h1{font-size:44px}
  .split.rev .txt,.split.rev .media{order:0}
  .hero .figure{order:-1}
  .princ{grid-template-columns:1fr 1fr}
  footer .cols{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .section{padding:80px 0}
  .hero h1{font-size:36px}.stitle{font-size:32px}
  .arts{grid-template-columns:1fr}.princ{grid-template-columns:1fr}
  .arow{grid-template-columns:36px 1fr;gap:16px}.arow .go{display:none}
  footer .cols{grid-template-columns:1fr}
}
