
/* DIREÇÃO EDITORIAL 2026.11 — sobreposição deliberada ao CSS legado. */
:root{--navy:#081724;--navy2:#102b48;--ink:#101820;--gold:#d6ab60;--gold2:#e7bd72;--ivory:#f5f0e6;--paper:#f9f9f7;--serif:Didot,"Bodoni MT","Times New Roman",Georgia,serif}
html{scroll-padding-top:92px}
body{background:#f9f8f5;color:#17202a;font-size:16px;line-height:1.8;overflow-x:clip}
img{max-width:100%}
.container{max-width:1340px;padding-inline:clamp(22px,5.2vw,88px)}
h1,h2,h3{font-family:var(--serif);letter-spacing:-.028em;font-weight:400}
h2{font-size:clamp(2.65rem,4.6vw,4.9rem);line-height:1.07}
h3{line-height:1.2}
p{line-height:1.8}
.overline{font:600 10px/1.6 var(--sans);letter-spacing:.24em;text-transform:uppercase}
.overline.dark{color:#8a683a}
.section{padding-block:clamp(88px,10vw,156px)}
.section.light{background:#f1eee8}
.section-header{margin-bottom:48px}
.section-header h2{margin:12px 0 22px}
.section-header p:not(.overline){font-size:17px;line-height:1.8}
.text-link{display:inline-flex;align-items:center;gap:12px;color:#866331;font-size:13px;font-weight:600;letter-spacing:.02em;text-underline-offset:6px}
.text-link:hover{color:#573b1d}
.btn,.header-contact{border-radius:100px!important;transition:background .25s ease,transform .25s ease,border-color .25s ease;min-height:54px}
.btn:hover,.header-contact:hover{transform:translateY(-2px)}
.btn-gold{background:#d6ab60;color:#081724}
.btn-gold:hover{background:#edc67f}
.btn-outline{border:1px solid rgba(245,240,230,.6);background:rgba(8,23,36,.16);backdrop-filter:blur(6px)}
.btn-outline:hover{background:rgba(245,240,230,.1)}
.site-header{position:sticky;top:0;z-index:100;background:rgba(5,18,31,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(214,171,96,.19)}
.site-header .bar{height:92px!important;min-height:92px!important;display:flex;align-items:center;gap:26px}
.site-header .wordmark{display:flex;flex:none;width:clamp(205px,21vw,260px);max-width:100%;min-width:0;overflow:visible}
.site-header .wordmark img{display:block;width:100%!important;height:auto!important;aspect-ratio:1077/249!important;max-width:100%!important;object-fit:contain;object-position:left center;filter:none!important}
.desktop-nav{gap:clamp(13px,1.4vw,27px)}
.desktop-nav a{font-size:12px;font-weight:500;letter-spacing:.035em;color:#eee9e0}
.desktop-nav a:hover{color:#e7bd72}
.header-contact{min-height:42px;padding:10px 20px;border:1px solid rgba(214,171,96,.58);color:#f5f0e6;font-size:12px}
.mobile-menu summary{display:flex;align-items:center;gap:8px;font-size:13px;color:#f5f0e6}
.mobile-menu nav{z-index:110;border:1px solid rgba(214,171,96,.3);background:#081724;box-shadow:0 24px 60px rgba(0,0,0,.28);border-radius:3px 3px 24px 3px}
.footer-logo{display:block;width:290px!important;height:auto!important;aspect-ratio:1077/249!important;max-width:100%;filter:none!important}
.footer{background:#071522;padding-top:90px}
.footer-grid{gap:clamp(36px,6vw,95px)}
.footer h2{font-size:11px;letter-spacing:.2em}
.footer-bottom{border-color:rgba(214,171,96,.24)}
/* HERO: imagem em tela cheia, atrás do texto, com vinheta e transição em camadas. */
.hero-motion{position:relative;isolation:isolate;min-height:clamp(700px,calc(100svh - 92px),980px)!important;background:#081724;overflow:hidden}
.hero-motion .hero-scenes{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;z-index:0!important;overflow:hidden;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;pointer-events:none}
.hero-motion .hero-scene{position:absolute!important;inset:0!important;opacity:0;transform:scale(1.065);z-index:0;transition:opacity 1.3s ease,transform 9s ease;background:transparent!important}
.hero-motion .hero-scene.is-current{opacity:1;transform:scale(1);z-index:1}
.hero-motion .hero-scene img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;background:#081724}
.hero-motion .hero-scenes:after{content:none!important}
.hero-motion .hero-shade{position:absolute!important;inset:0!important;display:block!important;z-index:2!important;background:linear-gradient(90deg,#081724 0%,rgba(8,23,36,.97) 21%,rgba(8,23,36,.76) 42%,rgba(8,23,36,.22) 70%,rgba(8,23,36,.08) 100%),linear-gradient(0deg,rgba(8,23,36,.8),transparent 25%)!important;pointer-events:none}
.hero-motion .hero-visual-accent{display:none}
.hero-motion .hero-architectural{display:none}
.hero-motion .hero-inner{position:relative;z-index:5;display:flex!important;align-items:center;min-height:clamp(700px,calc(100svh - 92px),980px)!important;padding-block:110px 130px!important}
.hero-motion .hero-copy{max-width:620px!important;width:57%;padding:0!important;position:relative}
.hero-motion .hero-copy:before{content:"";display:block;width:74px;height:1px;background:#d6ab60;margin-bottom:35px}
.hero-motion .hero-copy h1{font-size:clamp(3.7rem,5.6vw,6.4rem)!important;line-height:1.04!important;letter-spacing:-.035em;max-width:12ch!important;margin:0 0 32px!important;color:#f5f0e6;text-wrap:balance;text-shadow:0 3px 28px rgba(0,0,0,.18)}
.hero-motion .hero-copy h1 em{color:#e7bd72;font-style:normal}
.hero-motion .hero-copy .lead{font-size:clamp(1.02rem,1.3vw,1.18rem)!important;line-height:1.78!important;color:#e4e7e6;max-width:42ch!important;margin:0}
.hero-motion .hero-copy .actions{margin-top:37px;gap:14px}
.hero-motion .hero-copy .btn{min-width:175px;padding-inline:25px}
.hero-motion .hero-bottom{z-index:8!important;bottom:30px!important;display:flex;justify-content:flex-end}
.hero-motion .hero-controls{background:rgba(5,17,28,.53);border:1px solid rgba(245,240,230,.28);border-radius:99px!important;backdrop-filter:blur(16px);box-shadow:none}
.hero-motion .hero-controls button{color:#f5f0e6}
.hero-motion .hero-controls .scene-dot.is-selected span{background:#e7bd72}
.hero-motion [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}
/* Serviços: sequência tipográfica em vez de cards. */
.section-practice-editorial{background:#f9f8f5!important}
.section-practice-editorial .container{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(55px,8vw,145px);align-items:start}
.section-practice-editorial .section-header{display:block;max-width:none;margin:0!important;padding-top:24px}
.section-practice-editorial .section-header>div{max-width:430px}
.section-practice-editorial .section-header h2{max-width:9ch}
.section-practice-editorial .service-grid{display:block!important;min-width:0}
.section-practice-editorial .service-panel,.section-practice-editorial .service-panel.service-feature,.section-practice-editorial .service-panel:nth-child(n){position:relative;display:grid;grid-template-columns:55px minmax(0,1fr);gap:0 16px;align-items:start;min-height:0!important;margin:0!important;padding:33px 0 36px!important;border:0!important;border-top:1px solid #c8bdad!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#17202a!important;transform:none!important}
.section-practice-editorial .service-panel:last-child{border-bottom:1px solid #c8bdad!important}
.section-practice-editorial .service-panel:before{content:none!important}
.section-practice-editorial .service-no{grid-column:1;grid-row:1 / span 2;font:400 14px/1.8 var(--serif);color:#967341}
.section-practice-editorial .service-panel h3{grid-column:2;font-size:clamp(1.8rem,2.5vw,2.7rem)!important;max-width:15ch!important;line-height:1.13;color:#101820!important;margin:0 0 14px!important}
.section-practice-editorial .service-panel p{grid-column:2;color:#555e62!important;font-size:15px;max-width:44ch!important;margin:0!important}
.section-practice-editorial .service-kicker{display:none}
.section-practice-editorial .service-panel:hover h3{color:#8b6532!important}
/* Ensaio fotográfico de transição */
.editorial-interlude{position:relative;min-height:570px;background:#081724;color:#f5f0e6;overflow:hidden;isolation:isolate;display:flex;align-items:center}
.editorial-interlude .interlude-image{position:absolute;inset:0;z-index:0;overflow:hidden}
.editorial-interlude .interlude-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 47%;filter:brightness(.88)}
.editorial-interlude .interlude-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#081724 0%,rgba(8,23,36,.89) 34%,rgba(8,23,36,.24) 80%),linear-gradient(0deg,rgba(8,23,36,.44),transparent 35%)}
.editorial-interlude .container{position:relative;z-index:1;width:100%;padding-block:100px}
.editorial-interlude .interlude-copy{max-width:580px}
.editorial-interlude h2{font-size:clamp(3rem,5.2vw,5.9rem);line-height:1.06;color:#f5f0e6;margin:16px 0 27px}
.editorial-interlude p:not(.overline){color:#e1e4e3;font-size:17px;max-width:46ch}
.editorial-interlude .interlude-rule{width:65px;height:1px;background:#d6ab60;margin-top:34px}
/* Sobre o escritório: imagem livre, borda assimétrica leve, sem caixas rígidas */
.section-office-showcase{background:#f1eee8!important}
.section-office-showcase .editorial-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(55px,8vw,120px)}
.section-office-showcase .editorial-grid>div:first-child{padding-block:45px}
.section-office-showcase .editorial-grid h2{font-size:clamp(3.1rem,5vw,5.6rem);max-width:11ch;line-height:1.08}
.section-office-showcase .editorial-grid p{font-size:16px;line-height:1.9}
.section-office-showcase .office-gallery{padding:0 16px 34px 0;margin:0;transform:none!important;clip-path:none!important}
.section-office-showcase .office-gallery::before{content:"";inset:24px 0 8px 24px;border:1px solid rgba(142,104,51,.55);border-radius:46% 2px 2px 2px}
.section-office-showcase .office-gallery-photo{aspect-ratio:4/4.15;overflow:hidden;border-radius:44% 2px 2px 2px;box-shadow:0 30px 75px rgba(8,23,36,.13)}
.section-office-showcase .office-gallery-photo img{object-fit:cover;object-position:70% center}
.section-office-showcase .office-gallery-note{border:0;position:absolute;bottom:13px;left:18px;right:35px;background:#081724;color:#f5f0e6;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 23px;box-shadow:0 12px 40px rgba(8,23,36,.2)}
.section-office-showcase .office-gallery-note small{color:#e7bd72}
.section-office-showcase .image-disclosure{position:relative;margin:10px 0 0;font-size:10px}
/* Índice de assuntos: linhas e respiro, sem vitrine de especialidades */
#areas .section-header{max-width:800px}
#areas .practice-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,65px)}
#areas .practice-group{padding:27px 0 8px;border-top:1px solid #b9a990}
#areas .practice-group h3{font:400 clamp(1.65rem,2.4vw,2.45rem)/1.18 var(--serif);letter-spacing:-.02em;text-transform:none;color:#17202a;margin-bottom:17px}
#areas .practice-group p{font-size:14px;line-height:1.85;color:#555e62;max-width:36ch}
#areas .practice-group .text-link{margin-top:12px}
#atendimento{background:#f1eee8}
#atendimento .steps-three{gap:clamp(20px,4vw,65px)}
#atendimento .steps-three>div{border-top:1px solid #b9a990;padding-top:24px}
#atendimento .steps-three h3{font-family:var(--serif);font-size:clamp(1.55rem,2.1vw,2.2rem);font-weight:400}
#atendimento .steps-three p{font-size:14px;line-height:1.8}
.contact-band-visual{background:#081724;position:relative;overflow:hidden}
.contact-band-visual:before{opacity:.37!important}
.contact-band h2{font-size:clamp(2.8rem,4.7vw,4.8rem)}
.contact-band-grid{padding-block:18px}
.contact-band p:not(.overline){font-size:16px}
/* Páginas internas: hero editorial, texto respirável e navegação lateral. */
.page-hero{position:relative;isolation:isolate;min-height:380px;display:flex;align-items:center;padding-block:65px 95px;background:#081724}
.page-hero-photo::before{opacity:.42;filter:brightness(.8);background-position:72% center}
.page-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#081724 2%,rgba(8,23,36,.93) 42%,rgba(8,23,36,.46) 100%);pointer-events:none}
.page-hero .container{position:relative;z-index:1;width:100%}
.page-hero .breadcrumb{margin-bottom:36px;color:#d0d5d4;font-size:11px}
.page-hero h1{font-size:clamp(3.15rem,5.6vw,6rem);line-height:1.04;max-width:17ch}
.page-hero .lead{font-size:clamp(1rem,1.4vw,1.18rem);max-width:61ch;line-height:1.78}
.detail-grid{grid-template-columns:minmax(0,1fr) 285px;gap:clamp(40px,6vw,110px)}
.detail-section{padding-bottom:43px;margin-bottom:48px}
.detail-section h2{font-size:clamp(2rem,3.1vw,3.15rem);line-height:1.14}
.detail-section p,.area-article p{font-size:16px;line-height:1.88}
.detail-aside{background:#f1eee8;border-top:2px solid #d6ab60;border-radius:0 0 38px 0;top:110px;padding:30px}
.detail-aside h2{font-size:2.15rem}
.detail-aside p{font-size:14px}
.article-toc{border-bottom:1px solid #b9a990;padding-bottom:27px;margin-bottom:44px}
.article-toc-links a{transition:color .2s}
.article-toc-links a:hover{color:#8b6532}
.content-topics{gap:clamp(24px,4vw,48px)}
.content-topics>div{border-top:1px solid #d4c9b7;padding-top:24px}
.content-topics h3{font-size:1.85rem}
.editorial-point{border-left:1px solid #c9bba6;padding-left:25px;margin:27px 0}
.editorial-point h3{font-size:1.7rem}
.related-section{background:#f1eee8}
.related-topic{background:transparent!important;border:0!important;border-top:1px solid #c8bdad!important;border-radius:0!important;padding:25px 3px!important;box-shadow:none!important}
.related-topic strong{font-family:var(--serif);font-weight:400;font-size:1.5rem}
.related-topic:hover{transform:translateY(-2px)}
.office-portrait{border-radius:45% 3px 3px 3px;box-shadow:0 24px 65px rgba(8,23,36,.13)}
.office-portrait img{object-position:69% center}
.office-panel:not(.office-panel-hidden){background:#081724;color:#f5f0e6;border-radius:50px 2px 2px 2px}
.contact-local{background:#f1eee8;border-left:2px solid #d6ab60;border-radius:0 0 28px 0}
.contact-list>a{padding:27px 0}
.contact-list>a:hover{color:#8b6532}
.faqs details{padding:25px 0}
.faqs summary{font-size:16px}
.step-list article{grid-template-columns:90px minmax(0,1fr);padding:36px 0}
.step-list article h2{font-size:clamp(1.9rem,2.6vw,2.7rem)}
/* Acessibilidade, breakpoints e composição realmente sobreposta no mobile */
@media(max-width:1150px){
 .site-header .bar{height:84px!important;min-height:84px!important}
 .site-header .wordmark{width:245px}
 .hero-motion .hero-copy{width:61%}
 .hero-motion .hero-shade{background:linear-gradient(90deg,#081724 0%,rgba(8,23,36,.93) 28%,rgba(8,23,36,.42) 73%),linear-gradient(0deg,rgba(8,23,36,.8),transparent 25%)!important}
}
@media(max-width:800px){
 .section-practice-editorial .container{display:block}
 .section-practice-editorial .section-header{margin-bottom:46px!important}
 .section-practice-editorial .section-header h2{max-width:none}
 .section-practice-editorial .service-grid{max-width:750px}
 .section-office-showcase .editorial-grid{display:flex;flex-direction:column;gap:44px}
 .section-office-showcase .editorial-grid>div:first-child{padding:0}
 #areas .practice-directory{grid-template-columns:1fr;gap:15px}
 #areas .practice-group{padding-block:25px}
 .editorial-interlude{min-height:540px}
 .editorial-interlude .interlude-image:after{background:linear-gradient(90deg,rgba(8,23,36,.95),rgba(8,23,36,.4)),linear-gradient(0deg,rgba(8,23,36,.5),transparent 50%)}
 .detail-grid{grid-template-columns:1fr}
 .detail-aside{position:static}
}
@media(max-width:640px){
 html{scroll-padding-top:78px}
 .site-header .bar{height:78px!important;min-height:78px!important;gap:12px;padding-inline:22px}
 .site-header .wordmark{width:min(61vw,226px)!important}
 .site-header .wordmark img{width:100%!important;aspect-ratio:1077/249!important}
 .mobile-menu summary{font-size:13px}
 .hero-motion{min-height:850px!important}
 .hero-motion .hero-inner{min-height:850px!important;display:block!important;padding:52px 0 230px!important}
 .hero-motion .hero-scenes{inset:0!important;width:100%!important;height:100%!important;border-radius:0!important}
 .hero-motion .hero-scene img{object-fit:cover;object-position:68% center;transform:none}
 .hero-motion .hero-shade{background:linear-gradient(180deg,#081724 0%,rgba(8,23,36,.99) 10%,rgba(8,23,36,.94) 24%,rgba(8,23,36,.87) 42%,rgba(8,23,36,.25) 73%,rgba(8,23,36,.47) 100%)!important}
 .hero-motion .hero-copy{max-width:100%!important;width:100%!important;padding:0!important}
 .hero-motion .hero-copy:before{width:58px;margin-bottom:24px}
 .hero-motion .hero-copy h1{font-size:clamp(2.8rem,11.5vw,4.2rem)!important;max-width:11.7ch!important;line-height:1.065!important;margin-bottom:20px!important}
 .hero-motion .hero-copy .lead{font-size:15px!important;line-height:1.65!important;max-width:32ch!important}
 .hero-motion .hero-copy .actions{display:flex;flex-direction:column;gap:10px;margin-top:24px;max-width:350px}
 .hero-motion .hero-copy .btn{width:100%;min-height:49px;padding:11px 18px;font-size:13px}
 .hero-motion .hero-bottom{bottom:18px!important}
 .hero-motion .hero-controls{margin-left:auto}
 .section{padding-block:78px}
 .section-header h2{font-size:clamp(2.7rem,11vw,4.1rem)}
 .section-practice-editorial .service-panel,.section-practice-editorial .service-panel:nth-child(n){grid-template-columns:39px minmax(0,1fr);gap:0 12px;padding:28px 0 31px!important}
 .section-practice-editorial .service-panel h3{font-size:clamp(1.65rem,7vw,2.2rem)!important}
 .editorial-interlude{min-height:520px;align-items:flex-start}
 .editorial-interlude .container{padding-block:85px 100px}
 .editorial-interlude h2{font-size:clamp(2.8rem,10.8vw,4rem)}
 .editorial-interlude .interlude-image img{object-position:70% center}
 .editorial-interlude .interlude-image:after{background:linear-gradient(180deg,#081724 0%,rgba(8,23,36,.92) 24%,rgba(8,23,36,.65) 55%,rgba(8,23,36,.34) 100%)}
 .section-office-showcase .office-gallery{width:100%;padding:0 12px 26px 0}
 .section-office-showcase .office-gallery-photo{border-radius:38% 2px 2px 2px;aspect-ratio:4/4.2}
 .section-office-showcase .office-gallery::before{border-radius:41% 2px 2px 2px;inset:18px 0 8px 18px}
 .section-office-showcase .office-gallery-note{left:8px;right:20px;padding:14px 18px}
 .section-office-showcase .office-gallery-note small{font-size:9px}
 .page-hero{min-height:330px;padding-block:45px 68px}
 .page-hero h1{font-size:clamp(2.8rem,10.5vw,4.3rem)}
 .page-hero .lead{font-size:15px}
 .page-hero .breadcrumb{margin-bottom:28px}
 .footer{padding-top:65px}
 .footer-grid{grid-template-columns:1fr;gap:40px}
 .footer-logo{width:245px!important}
 .footer-bottom{display:block}
 .step-list article{grid-template-columns:55px 1fr}
}
@media(prefers-reduced-motion:reduce){
 .hero-motion .hero-scene,.hero-motion .hero-scene.is-current{transition:none!important;transform:none!important}
 .hero-motion .hero-copy:before{transition:none}
 .editorial-interlude .interlude-image img{transform:none!important}
}

/* Auditoria visual 375px: margens seguras e retrato legível sob a composição. */
@media(max-width:640px){
 .hero-motion .hero-inner{padding:52px 22px 230px!important}
 .hero-motion .hero-copy h1{font-size:clamp(2.75rem,10.9vw,4.1rem)!important}
 .hero-motion .hero-shade{background:linear-gradient(90deg,rgba(8,23,36,.48),rgba(8,23,36,.03) 100%),linear-gradient(180deg,#081724 0%,rgba(8,23,36,.97) 10%,rgba(8,23,36,.78) 31%,rgba(8,23,36,.52) 49%,rgba(8,23,36,.14) 73%,rgba(8,23,36,.5) 100%)!important}
}

/* Polimento da marca original e redundância visual do retrato institucional. */
.section-office-showcase .office-gallery-photo{
  background-image:url('/assets/retrato-advogado-hq.webp');
  background-size:cover;
  background-position:70% center;
}
.section-office-showcase .office-gallery-photo img{
  display:block;opacity:1;visibility:visible;object-position:70% center;
}

/* Revisão final: legibilidade móvel, fotografia e âncoras com cabeçalho fixo. */
#servicos,#escritorio,#areas,#atendimento,#contato-home,.detail-section,.article-toc{
  scroll-margin-top:112px;
}
.hero-motion .hero-copy .lead,.hero-motion .hero-copy h1{
  -webkit-font-smoothing:antialiased;
}
@media(max-width:640px){
  html{scroll-padding-top:94px}
  #servicos,#escritorio,#areas,#atendimento,#contato-home,.detail-section,.article-toc{scroll-margin-top:94px}
  .hero-motion .hero-scenes{background:#081724}
  .hero-motion .hero-scene img{
    transform:translate3d(0,83px,0) scale(1.035);
    transform-origin:70% 60%;
  }
  .hero-motion .hero-shade{
    background:
      linear-gradient(90deg,rgba(8,23,36,.62) 0%,rgba(8,23,36,.36) 52%,rgba(8,23,36,.02) 100%),
      linear-gradient(180deg,#081724 0%,rgba(8,23,36,.985) 11%,rgba(8,23,36,.85) 28%,rgba(8,23,36,.63) 46%,rgba(8,23,36,.12) 73%,rgba(8,23,36,.49) 100%)!important;
  }
  .hero-motion .hero-copy h1{
    text-shadow:0 2px 24px rgba(4,13,22,.42);
  }
  .hero-motion .hero-copy .lead{
    color:#f0f1ef;
    text-shadow:0 1px 13px rgba(3,12,21,.65);
  }
  .hero-motion .hero-copy .actions{
    position:relative;z-index:6
  }
  .hero-motion .hero-controls button{min-width:30px;min-height:38px}
  .section-office-showcase .office-gallery-photo img{
    content-visibility:visible;
  }
  .detail-section h2{overflow-wrap:break-word}
}
@media(max-width:350px){
  .site-header .wordmark{width:min(61vw,205px)!important}
  .hero-motion .hero-copy h1{font-size:clamp(2.5rem,10.5vw,3rem)!important}
  .hero-motion .hero-inner{padding-left:19px!important;padding-right:19px!important}
}
@media(prefers-reduced-motion:reduce){
  .hero-motion .hero-scene img{transform:none!important}
}

/* O conteúdo não depende do motor de animação para ser legível. */
html:not(.sc-ready) [data-sc-in],
html:not(.sc-ready) [data-sc-stagger] > * {
  opacity:1!important;
  transform:none!important;
}
@media(prefers-reduced-motion:reduce){
 [data-sc-in],[data-sc-stagger] > *{opacity:1!important;transform:none!important}
}

/* Ações do hero: convite principal distinto do link institucional em telas estreitas. */
@media(max-width:640px){
 .hero-motion .hero-copy .actions{align-items:flex-start}
 .hero-motion .hero-copy .btn-gold{width:min(100%,305px)!important}
 .hero-motion .hero-copy .btn-outline{
   width:auto!important;min-height:44px;padding:9px 4px!important;
   background:transparent!important;backdrop-filter:none!important;
   border:0!important;border-radius:0!important;
   justify-content:flex-start;color:#f5f0e6;
   text-decoration:underline;text-decoration-color:rgba(231,189,114,.6);
   text-underline-offset:7px;text-decoration-thickness:1px;
   box-shadow:none!important;
 }
 .hero-motion .hero-copy .btn-outline:hover{transform:none;text-decoration-color:#e7bd72}
}

/* Correção de sobreposição verificada em QA real no desktop:
   o fólio só aparece quando há margem lateral disponível. */
@media (max-width:1699px) {
  .atlas-folio{display:none!important}
}
@media (min-width:1700px) {
  .atlas-folio{left:max(14px,calc((100vw - 1340px)/4 - 75px));right:auto}
}
/* Link do índice jurídico tem largura de leitura própria, nunca uma coluna estreita. */
#areas .section-header{
  display:block!important;
  max-width:900px!important;
}
#areas .section-header .text-link{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:17px;
  white-space:nowrap;
}
@media (max-width:480px){
  #areas .section-header .text-link{white-space:normal}
}

/* Auditoria editorial 2026-11-03: agrupamentos sem aparência de catálogo. */
.section-practice-editorial .section-header h2{max-width:14ch}
#areas .practice-group{min-width:0}
#areas .practice-group h3{font-size:clamp(1.7rem,2.15vw,2.3rem)}
#areas .practice-group p{max-width:37ch;margin-bottom:18px}
.topic-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 18px;margin-top:21px}
.topic-links a{display:inline-block;color:#84612f;font-size:13px;font-weight:600;line-height:1.6;text-decoration:none;border-bottom:1px solid rgba(132,97,47,.48);transition:color .2s,border-color .2s}
.topic-links a:hover,.topic-links a:focus-visible{color:#3e2b16;border-color:#3e2b16}
.context-link{margin-top:25px!important;padding:16px 0 0;border-top:1px solid rgba(142,115,75,.27);font-size:14px!important;line-height:1.75}
.context-link a{color:#866331;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.contact-band-grid>div:last-child{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px}
.contact-band .contact-other{color:#f4e8cc;font-size:13px;margin:0;text-underline-offset:5px}
.contact-band .contact-other:hover{color:#e7bd72}
@media(max-width:640px){
  .section-practice-editorial .section-header h2{max-width:none}
  #areas .practice-directory{gap:18px}
  #areas .practice-group h3{font-size:clamp(1.65rem,7.5vw,2.1rem)}
  .topic-links{gap:11px 17px;margin-top:15px}
  .topic-links a{font-size:12px}
  .contact-band-grid>div:last-child{align-items:flex-start;gap:15px}
}

/* Índice temático: acesso direto às quatro famílias de assuntos jurídicos. */
.topic-index{display:flex;flex-wrap:wrap;align-items:center;column-gap:24px;row-gap:10px;margin:0 0 clamp(44px,6vw,74px);padding:21px 0;border-top:1px solid #c9bca9;border-bottom:1px solid #c9bca9}
.topic-index span{margin-right:7px;font:600 10px/1.55 var(--sans);color:#74552d;text-transform:uppercase;letter-spacing:.17em}
.topic-index a{display:inline-block;padding:4px 0;font:500 13px/1.55 var(--sans);color:#213d52;text-decoration:underline;text-underline-offset:5px;text-decoration-color:transparent;transition:color .2s ease,text-decoration-color .2s ease}
.topic-index a:hover,.topic-index a:focus-visible{color:#916c38;text-decoration-color:currentColor}
.practice-directory .practice-group[id]{scroll-margin-top:124px}
.practice-directory .practice-group>h2{font:400 clamp(1.6rem,2.45vw,2.3rem)/1.2 var(--serif);letter-spacing:-.01em;margin:0 0 20px;color:#17202a}
.practice-directory .practice-group>h2:after{content:"";display:block;height:1px;width:46px;margin-top:15px;background:#d6ab60}
.faq-resources{display:flex;flex-wrap:wrap;gap:14px 27px;align-items:center;margin:27px 0 0;padding-top:22px;border-top:1px solid #c9bca9}
.faq-resources .text-link{font-size:13px}
.contact-local .text-link{font-size:13px}
@media(max-width:700px){.topic-index{column-gap:16px;row-gap:8px}.topic-index span{width:100%;margin-bottom:4px}.topic-index a{font-size:13px}.practice-directory .practice-group[id]{scroll-margin-top:100px}}

/* Contraste aferível sobre o fundo real do painel escuro no índice jurídico. */
.office-panel:not(.office-panel-hidden) p{
  color:#ecf0ee!important;
}
.office-panel:not(.office-panel-hidden) h3,
.office-panel:not(.office-panel-hidden) h2{
  color:#f5f0e6!important;
}
.office-panel:not(.office-panel-hidden) .text-link{
  color:#e7bd72;
}

/* Auditoria de navegação e acessibilidade — 03/11/2026. */
:root{--focus-ink:#254963;--focus-gold:#e7bd72}
.desktop-nav a[aria-current="page"],.mobile-menu nav a[aria-current="page"]{color:#e7bd72;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px}
:where(a,button,summary):focus-visible{outline:3px solid var(--focus-ink);outline-offset:4px}
:where(.site-header,.hero-motion,.footer,.contact-band,.page-hero) :where(a,button,summary):focus-visible{outline-color:var(--focus-gold)}
.faqs summary:focus-visible{outline-offset:5px;border-radius:3px}
.faqs summary{padding-block:3px}
.faqs details[open]>summary{color:#203b50}
.article-toc-links a,.topic-index a,.practice-link,.related-topic,.contact-list>a{touch-action:manipulation}
.overline.dark{color:#76552d}
.section-practice-editorial .service-no{color:#74552d}
#areas .practice-group h3{overflow-wrap:break-word}
.section-footnote{max-width:75ch}
@media(max-width:640px){
 .hero-motion,.hero-motion .hero-inner{min-height:clamp(760px,calc(100svh - 78px),920px)!important}
 .hero-motion .hero-copy h1{text-wrap:pretty}
 .hero-motion .hero-controls button{min-width:38px;min-height:42px}
 .mobile-menu nav a{min-height:44px;display:flex;align-items:center}
 .topic-links a{padding-block:6px}
 .contact-list>a{min-height:70px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media print{
 .site-header,.hero-controls,.atlas-folio,.contact-band,.mobile-menu,.reading-progress{display:none!important}
 .hero-motion,.page-hero,.editorial-interlude{background:#fff!important;color:#17202a!important;min-height:0!important}
 .hero-motion .hero-scenes,.hero-motion .hero-shade,.interlude-image,.page-hero-photo::before{display:none!important}
 .hero-motion .hero-copy h1,.hero-motion .hero-copy .lead,.page-hero h1,.page-hero .lead{color:#17202a!important;text-shadow:none!important}
 .section{padding-block:24px!important;break-inside:avoid}
 a{color:#17202a!important}
}

/* Composição móvel final: retrato preservado à direita, leitura protegida à esquerda. */
@media (max-width:640px){
 .hero-motion .hero-scene img{
  object-position:65% 35%!important;
  transform:translate3d(0,83px,0) scale(1.035)!important;
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.85) 45%,#000 85%);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.85) 45%,#000 85%);
 }
 .hero-motion .hero-shade{
  background:linear-gradient(90deg,rgba(8,23,36,.58) 0%,rgba(8,23,36,.34) 50%,rgba(8,23,36,.01) 100%),linear-gradient(180deg,#081724 0%,rgba(8,23,36,.985) 11%,rgba(8,23,36,.84) 28%,rgba(8,23,36,.60) 46%,rgba(8,23,36,.12) 73%,rgba(8,23,36,.49) 100%)!important;
 }
 .hero-motion .hero-copy h1,.hero-motion .hero-copy .lead{text-shadow:0 1px 12px rgba(5,14,26,.36)!important}
 .hero-motion .hero-copy{isolation:isolate}
 .hero-motion .hero-bottom{bottom:23px!important}
}
@media (min-width:360px) and (max-width:640px){.site-header .wordmark{width:min(63vw,238px)!important}}
@media (prefers-reduced-motion:reduce){.hero-motion .hero-scene img{transform:none!important}}

/* Rodapé institucional: identidade, navegação útil e dados profissionais. */
.footer-editorial{padding-top:clamp(60px,6vw,96px)}
.footer-editorial .footer-grid{
 display:grid;
 grid-template-columns:minmax(210px,1.25fr) minmax(140px,.7fr) minmax(178px,.9fr) minmax(225px,1.1fr);
 gap:clamp(24px,3.5vw,52px);
 align-items:start;
}
.footer-editorial .footer-identity{max-width:295px}
.footer-editorial .footer-intro{
 max-width:28ch;
 margin:25px 0 0;
 color:#c7d0d1;
 font:400 14px/1.85 var(--sans);
}
.footer-editorial h2{
 margin:11px 0 22px;
 color:#e7bd72;
 font:650 11px/1.4 var(--sans);
 letter-spacing:.13em;
 text-transform:uppercase;
}
.footer-editorial nav{
 display:flex;
 flex-direction:column;
 align-items:flex-start;
 gap:13px;
}
.footer-editorial nav a,
.footer-editorial .footer-grid p a{
 display:inline-block;
 color:#e0e5e5;
 font-size:13px;
 line-height:1.6;
 text-underline-offset:5px;
}
.footer-editorial .footer-grid p{font-size:13px;color:#d0d8d9;line-height:1.9;overflow-wrap:anywhere}
.footer-editorial a:hover,.footer-editorial a:focus-visible{color:#e7bd72}
.footer-editorial .footer-bottom{
 display:flex;
 align-items:flex-start;
 justify-content:space-between;
 gap:clamp(30px,4vw,70px);
 padding-block:30px 35px;
}
.footer-editorial .footer-bottom p{
 color:#aab7bc;
 font-size:11px;
 line-height:1.9;
 margin:0;
}
.footer-editorial .footer-bottom p:last-child{text-align:right}
.footer-editorial .footer-bottom a{color:#d5dfe0;text-decoration:underline;text-decoration-color:rgba(213,223,224,.35);text-underline-offset:4px}
@media (max-width:1120px){
 .footer-editorial .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:46px}
 .footer-editorial .footer-identity{max-width:310px}
}
@media (max-width:640px){
 .footer-editorial .footer-grid{grid-template-columns:1fr;gap:34px}
 .footer-editorial h2{margin:0 0 13px}
 .footer-editorial .footer-logo{width:min(85vw,265px)!important}
 .footer-editorial nav{gap:9px}
 .footer-editorial .footer-intro{margin-top:18px}
 .footer-editorial .footer-bottom{display:block;padding-block:25px 32px}
 .footer-editorial .footer-bottom p:last-child{text-align:left;margin-top:22px}
}

/* Direção de arte editorial: proporções do hero e agrupamentos jurídicos coerentes. */
@media (min-width:981px){
 .hero-motion .hero-copy{max-width:660px!important;width:58%!important}
 .hero-motion .hero-copy h1{
   max-width:100%!important;
   font-size:clamp(3.5rem,4.25vw,4.3rem)!important;
   line-height:1.08!important;
   letter-spacing:-.035em!important;
   text-wrap:nowrap!important;
 }
 .hero-motion .hero-copy .lead{max-width:49ch!important;line-height:1.72!important}
}
@media (min-width:641px) and (max-width:980px){
 .hero-motion .hero-copy h1{max-width:none!important;font-size:clamp(2.75rem,5.15vw,3.2rem)!important;letter-spacing:-.035em!important}
}
@media (max-width:640px){
 .hero-motion .hero-copy h1{font-size:clamp(2.45rem,10.35vw,2.93rem)!important;max-width:12ch!important;line-height:1.1!important}
}
#areas .practice-directory .practice-group p{max-width:38ch}
#areas .section-footnote{padding-top:16px;border-top:1px solid rgba(133,108,73,.28);margin-top:36px;line-height:1.9}
#areas .section-footnote a{display:inline-block;text-decoration:underline;text-underline-offset:4px}
#areas .topic-links a{font-size:13px}
.practice-group-single .practice-links{grid-template-columns:minmax(0,1fr);max-width:740px}
.practice-group-single .practice-link{max-width:740px}
.legacy-anchor{display:block;position:relative;top:-120px;visibility:hidden;pointer-events:none}
