:root{
  --preto:#08090a;
  --preto-2:#0c0e10;
  --grafite:#121417;
  --superficie:#181b1f;
  --linha:rgba(198,166,100,.18);
  --linha-suave:rgba(255,255,255,.075);
  --ouro:#c6a664;
  --ouro-claro:#e3cd9a;
  --ouro-escuro:#8a7038;
  --texto:#edebe7;
  --suave:#9d9c97;
  --suave-2:#7d7c78;
  --serif:'Cormorant Garamond', Garamond, 'Times New Roman', serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --max:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{
  font-family:var(--sans);font-size:17px;line-height:1.78;
  color:var(--texto);background:var(--preto);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--ouro);color:#0a0b0c}

h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.16;letter-spacing:.004em;color:#fff}
h1{font-size:clamp(2.5rem,5.4vw,4.35rem);font-weight:400}
h2{font-size:clamp(2rem,3.8vw,3.05rem);font-weight:400}
h3{font-size:clamp(1.28rem,2vw,1.6rem)}
p{margin-bottom:1.15rem}
p:last-child{margin-bottom:0}

.wrap{max-width:var(--max);margin:0 auto;padding:0 30px}
.sec{padding:clamp(78px,9.5vw,140px) 0;position:relative}
.sec--alt{background:var(--preto-2)}
.sec--graf{background:var(--grafite)}
.borda-topo{border-top:1px solid var(--linha-suave)}

.eyebrow{
  font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:var(--ouro);margin-bottom:18px;display:flex;align-items:center;gap:14px;
}
.eyebrow::before{content:'';width:26px;height:1px;background:var(--ouro);flex:0 0 26px}
.centro .eyebrow{justify-content:center}
.regua{width:64px;height:1px;background:linear-gradient(90deg,var(--ouro),transparent);margin:24px 0 32px}
.regua--centro{margin-left:auto;margin-right:auto;background:linear-gradient(90deg,transparent,var(--ouro),transparent)}
.centro{text-align:center}
.lead{font-size:1.06rem;color:var(--suave);max-width:66ch;font-weight:300}
.centro .lead{margin-left:auto;margin-right:auto}
.dourado{color:var(--ouro)}

/* ---------- BOTÕES ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  font-size:.79rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  padding:18px 36px;border:1px solid transparent;cursor:pointer;position:relative;
  transition:all .35s cubic-bezier(.4,0,.2,1);
}
.btn--ouro{background:var(--ouro);color:#0a0b0c}
.btn--ouro:hover{background:var(--ouro-claro);transform:translateY(-2px);box-shadow:0 14px 34px rgba(198,166,100,.24)}
.btn--linha{background:transparent;color:var(--texto);border-color:rgba(255,255,255,.22)}
.btn--linha:hover{border-color:var(--ouro);color:var(--ouro)}

/* ---------- CABEÇALHO ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 0;transition:all .38s ease}
header.solido{background:rgba(8,9,10,.94);backdrop-filter:blur(14px);padding:13px 0;border-bottom:1px solid var(--linha-suave)}
.navbar{display:flex;align-items:center;justify-content:space-between;gap:26px}
.marca img{height:46px;width:auto;transition:height .35s ease}
header.solido .marca img{height:36px}

.menu{display:flex;align-items:center;gap:34px;list-style:none}
.menu .nav-cta-mob{display:none}
.menu a{
  font-size:.775rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;
  color:rgba(255,255,255,.8);position:relative;padding-bottom:5px;transition:color .28s;
}
.menu a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--ouro);transition:width .32s}
.menu a:hover{color:var(--ouro)}
.menu a:hover::after{width:100%}
.nav-cta{
  font-size:.73rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  padding:13px 26px;border:1px solid var(--ouro);color:var(--ouro);white-space:nowrap;transition:all .32s;
}
.nav-cta:hover{background:var(--ouro);color:#0a0b0c}
.hamburguer{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:6px;z-index:1200}
.hamburguer span{display:block;width:26px;height:1.5px;background:var(--ouro);transition:all .32s}
.hamburguer.ativo span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.hamburguer.ativo span:nth-child(2){opacity:0}
.hamburguer.ativo span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:140px 0 90px;overflow:hidden;background:var(--preto)}
.hero-foto{
  position:absolute;right:0;top:0;width:52%;height:100%;
  background-image:url('/assets/retrato-vertical.jpg');
  background-size:cover;background-position:52% 28%;
}
.hero-foto::after{
  content:'';position:absolute;inset:0;
  background:
    linear-gradient(90deg,var(--preto) 0%,rgba(8,9,10,.92) 22%,rgba(8,9,10,.35) 58%,rgba(8,9,10,.55) 100%),
    linear-gradient(180deg,rgba(8,9,10,.72) 0%,transparent 26%,transparent 68%,rgba(8,9,10,.88) 100%);
}
.hero-brilho{
  position:absolute;left:-14%;top:6%;width:56%;height:76%;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(198,166,100,.075) 0%,transparent 66%);
}
.hero .wrap{position:relative;z-index:3}
.hero-txt{max-width:640px}
.hero h1{margin-bottom:28px;letter-spacing:-.012em}
.hero h1 em{font-style:italic;color:var(--ouro);font-weight:400}
.hero-lead{font-size:1.09rem;color:#b9b8b3;max-width:54ch;margin-bottom:42px;font-weight:300;line-height:1.85}
.hero-botoes{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:52px}
.hero-oab{
  display:flex;flex-wrap:wrap;gap:12px 30px;padding-top:28px;border-top:1px solid var(--linha);
  font-size:.71rem;letter-spacing:.17em;text-transform:uppercase;color:var(--suave-2);
}
.hero-oab span{display:flex;align-items:center;gap:10px}
.hero-oab span::before{content:'';width:4px;height:4px;background:var(--ouro);transform:rotate(45deg);flex:0 0 4px}
@keyframes desce{0%,100%{opacity:.3;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1);transform-origin:top}}

/* ---------- FAIXA ---------- */
.faixa{background:var(--preto-2);border-top:1px solid var(--linha-suave);border-bottom:1px solid var(--linha-suave)}
.faixa-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.faixa-item{padding:44px 26px;text-align:center;border-right:1px solid var(--linha-suave)}
.faixa-item:last-child{border-right:none}
.faixa-num{font-family:var(--serif);font-size:2.7rem;font-weight:500;color:var(--ouro);line-height:1;margin-bottom:10px}
.faixa-rot{font-size:.665rem;letter-spacing:.2em;text-transform:uppercase;color:var(--suave-2);line-height:1.7}

/* ---------- SOBRE ---------- */
.sobre-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:74px;align-items:center}
.sobre-txt p{color:var(--suave);font-weight:300}
.sobre-txt strong{color:var(--texto);font-weight:500}
.foto-moldura{position:relative;padding:20px}
.foto-moldura::before{content:'';position:absolute;top:0;left:0;width:88px;height:88px;border-top:1px solid var(--ouro);border-left:1px solid var(--ouro)}
.foto-moldura::after{content:'';position:absolute;bottom:0;right:0;width:88px;height:88px;border-bottom:1px solid var(--ouro);border-right:1px solid var(--ouro)}
.foto-moldura img{display:block;width:100%;height:auto;filter:grayscale(6%) contrast(1.03) brightness(.98)}
.assinatura{margin-top:38px;padding-top:28px;border-top:1px solid var(--linha-suave)}
.assinatura-nome{font-family:var(--serif);font-size:1.62rem;font-weight:500;color:#fff}
.assinatura-oab{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro);margin-top:7px}

/* ---------- ÁREAS ---------- */
.areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linha-suave);margin-top:62px;border:1px solid var(--linha-suave)}
.area{background:var(--preto);padding:42px 30px;transition:background .4s ease,transform .4s ease;position:relative}
.area::before{content:'';position:absolute;left:0;top:0;width:100%;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.4,0,.2,1)}
.area:hover{background:var(--superficie);transform:translateY(-4px);z-index:2}
.area:hover::before{transform:scaleX(1)}
.area-num{font-family:var(--serif);font-size:.92rem;color:var(--ouro-escuro);letter-spacing:.2em;margin-bottom:18px;display:block;transition:color .4s}
.area:hover .area-num{color:var(--ouro)}
.area h3{margin-bottom:14px;font-size:1.3rem}
.area p{font-size:.92rem;color:var(--suave-2);line-height:1.75;margin:0;font-weight:300;transition:color .4s}
.area:hover p{color:var(--suave)}

/* ---------- MÉTODO ---------- */
.metodo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:46px;margin-top:66px}
.etapa{position:relative;padding-top:38px}
.etapa::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:var(--linha)}
.etapa-num{
  position:absolute;top:-16px;left:0;background:var(--grafite);padding-right:18px;
  font-family:var(--serif);font-size:1.7rem;font-weight:500;color:var(--ouro);line-height:1;
}
.etapa h3{font-size:1.24rem;margin-bottom:13px}
.etapa p{font-size:.92rem;color:var(--suave-2);line-height:1.78;margin:0;font-weight:300}

/* ---------- FAQ ---------- */
.faq{max-width:900px;margin:56px auto 0}
.faq-item{border-bottom:1px solid var(--linha-suave)}
.faq-p{
  width:100%;background:none;border:none;cursor:pointer;text-align:left;color:#fff;
  padding:28px 48px 28px 0;position:relative;
  font-family:var(--serif);font-size:1.3rem;font-weight:500;line-height:1.42;transition:color .28s;
}
.faq-p:hover{color:var(--ouro)}
.faq-p::after{content:'';position:absolute;right:8px;top:50%;width:13px;height:1px;background:var(--ouro);transition:transform .35s}
.faq-p::before{content:'';position:absolute;right:14px;top:50%;width:1px;height:13px;background:var(--ouro);transform:translateY(-50%);transition:transform .35s,opacity .35s}
.faq-item.aberto .faq-p::before{opacity:0;transform:translateY(-50%) rotate(90deg)}
.faq-r{max-height:0;overflow:hidden;transition:max-height .45s cubic-bezier(.4,0,.2,1)}
.faq-r-int{padding:0 48px 30px 0;color:var(--suave);font-size:1rem;line-height:1.86;font-weight:300}

/* ---------- CONTATO ---------- */
.contato-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.info-lista{list-style:none;margin-top:40px}
.info-item{display:flex;gap:22px;padding:24px 0;border-bottom:1px solid var(--linha-suave)}
.info-icone{flex:0 0 44px;height:44px;border:1px solid var(--linha);display:flex;align-items:center;justify-content:center;color:var(--ouro);font-size:1.05rem}
.info-rot{font-size:.655rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin-bottom:6px}
.info-val{color:var(--texto);font-size:.99rem;line-height:1.65;font-weight:300}
.info-val a{transition:color .25s}
.info-val a:hover{color:var(--ouro)}

.form-box{background:var(--preto);border:1px solid var(--linha-suave);padding:46px 40px}
.form-box h3{font-size:1.6rem;margin-bottom:9px}
.form-box .aviso{font-size:.85rem;color:var(--suave-2);margin-bottom:30px;font-weight:300}
.campo{margin-bottom:21px}
.campo label{display:block;font-size:.665rem;letter-spacing:.17em;text-transform:uppercase;color:var(--ouro);margin-bottom:10px}
.campo input,.campo select,.campo textarea{
  width:100%;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.11);
  padding:15px 16px;color:var(--texto);font-family:var(--sans);font-size:.96rem;transition:border-color .28s,background .28s;
}
.campo textarea{resize:vertical;min-height:116px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--ouro);background:rgba(255,255,255,.045)}
.campo input::placeholder,.campo textarea::placeholder{color:#5f5e5b}
.campo select option{background:#111}
.form-box .btn{width:100%;margin-top:8px}
.form-nota{font-size:.755rem;color:var(--suave-2);margin-top:18px;line-height:1.7;font-weight:300}

/* ---------- RODAPÉ ---------- */
footer{background:#050607;color:var(--suave-2);padding:80px 0 0;font-size:.9rem;border-top:1px solid var(--linha-suave)}
.rodape-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:56px;padding-bottom:56px}
.rodape img.logo-rod{height:66px;width:auto;margin-bottom:24px}
.rodape h4{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);font-family:var(--sans);font-weight:600;margin-bottom:24px}
.rodape ul{list-style:none}
.rodape li{margin-bottom:12px}
.rodape a{transition:color .25s}
.rodape a:hover{color:var(--ouro)}
.rodape-sobre{max-width:44ch;line-height:1.85;font-weight:300}
.rodape-social{display:flex;gap:12px;margin-top:26px}
.rodape-social a{width:40px;height:40px;border:1px solid var(--linha);display:flex;align-items:center;justify-content:center;color:var(--ouro);transition:all .3s}
.rodape-social a:hover{background:var(--ouro);color:#0a0b0c}
.rodape-legal{border-top:1px solid var(--linha-suave);padding:32px 0;font-size:.775rem;line-height:1.85;color:#6c6b68;font-weight:300}
.rodape-legal p{margin-bottom:12px}
.rodape-legal strong{color:#8f8e8a;font-weight:500}
.rodape-base{border-top:1px solid var(--linha-suave);padding:24px 0;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.765rem}

/* ---------- WHATSAPP ---------- */
.zap{position:fixed;right:26px;bottom:26px;z-index:900;width:56px;height:56px;border-radius:50%;background:#1f2c25;border:1px solid var(--ouro);display:flex;align-items:center;justify-content:center;transition:all .32s;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.zap:hover{background:var(--ouro);transform:translateY(-3px)}
.zap svg{width:27px;height:27px;fill:var(--ouro);transition:fill .32s}
.zap:hover svg{fill:#0a0b0c}

/* ---------- ANIMAÇÃO ---------- */
.rv{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s ease}
.rv.vis{opacity:1;transform:none}

/* ---------- RESPONSIVO ---------- */
@media (max-width:1180px){
  .areas-grid{grid-template-columns:repeat(2,1fr)}
  .area{padding:40px 34px}
  .metodo-grid{grid-template-columns:repeat(2,1fr);gap:44px 40px}
}
@media (max-width:980px){
  .hero{min-height:auto;padding:120px 0 0;display:block}
  .hero-foto{position:relative;width:100%;height:auto;aspect-ratio:4/4.2;background-position:50% 20%;margin-top:52px}
  .hero-foto::after{background:linear-gradient(180deg,var(--preto) 0%,rgba(8,9,10,.35) 16%,transparent 42%,transparent 62%,var(--preto) 100%)}
  .hero .wrap{padding-bottom:0}
  .hero-txt{max-width:none}
    .sobre-grid,.contato-grid{grid-template-columns:1fr;gap:52px}
  .foto-moldura{max-width:520px;margin:0 auto}
  .faixa-grid{grid-template-columns:repeat(2,1fr)}
  .faixa-item:nth-child(2){border-right:none}
  .faixa-item:nth-child(1),.faixa-item:nth-child(2){border-bottom:1px solid var(--linha-suave)}
}
@media (max-width:840px){
  .hamburguer{display:flex}
  .menu{
    position:fixed;top:0;right:-100%;width:min(330px,86vw);height:100vh;background:#0a0b0c;
    flex-direction:column;align-items:flex-start;justify-content:center;gap:30px;padding:60px 42px;
    transition:right .4s cubic-bezier(.4,0,.2,1);box-shadow:-10px 0 50px rgba(0,0,0,.6);border-left:1px solid var(--linha-suave);
  }
  .menu.aberto{right:0}
  .menu a{font-size:.95rem}
  .nav-cta{display:none}
  .menu .nav-cta-mob{display:inline-flex;border:1px solid var(--ouro);color:var(--ouro);padding:14px 28px;font-size:.75rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;margin-top:10px}
  .menu .nav-cta-mob::after{display:none}
  header{padding:16px 0}
}
@media (max-width:560px){
  body{font-size:16px}
  .wrap{padding:0 22px}
  .marca img{height:36px}
  header.solido .marca img{height:32px}
  .hero-botoes .btn{width:100%;padding:17px 20px;letter-spacing:.1em;font-size:.75rem}
  .hero-botoes{margin-bottom:44px}
  .faixa-grid{grid-template-columns:1fr}
  .faixa-item{border-right:none;border-bottom:1px solid var(--linha-suave)}
  .areas-grid{grid-template-columns:1fr}
  .area{padding:34px 26px}
  .metodo-grid{grid-template-columns:1fr;gap:40px}
  .form-box{padding:34px 24px}
  .rodape-grid{grid-template-columns:1fr;gap:40px}
  .rodape-base{flex-direction:column;gap:9px}
  .foto-moldura::before,.foto-moldura::after{width:58px;height:58px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none;transition:none}
  *{animation:none!important}
}
/* ===================================================================
   COMPONENTES DAS PÁGINAS INTERNAS
   =================================================================== */

/* Migalha de pão */
.migalha{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--suave-2);margin-bottom:22px}
.migalha a{color:var(--suave-2);transition:color .25s}
.migalha a:hover{color:var(--ouro)}
.migalha span{color:var(--ouro);margin:0 9px}

/* Hero das páginas internas */
.hero--lp{min-height:auto;padding:170px 0 96px;align-items:flex-start}
.hero--lp .hero-foto{width:44%;opacity:.72}
.hero--lp .hero-foto::after{
  background:
    linear-gradient(90deg,var(--preto) 0%,rgba(8,9,10,.95) 30%,rgba(8,9,10,.55) 72%,rgba(8,9,10,.7) 100%),
    linear-gradient(180deg,rgba(8,9,10,.8) 0%,transparent 30%,transparent 60%,var(--preto) 100%);
}
.hero--lp h1{font-size:clamp(2.15rem,4.4vw,3.5rem);margin-bottom:24px}
.hero--lp .hero-txt{max-width:660px}

/* Card de área virando link na home */
a.area{display:block}
.area-mais{
  display:inline-flex;align-items:center;gap:8px;margin-top:20px;
  font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.17em;
  text-transform:uppercase;color:var(--ouro-escuro);transition:color .4s,gap .3s;
}
.area:hover .area-mais{color:var(--ouro);gap:14px}

/* Bloco de duas colunas */
.bloco{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.bloco--inv{grid-template-columns:1.15fr .85fr}
.bloco p{color:var(--suave);font-weight:300}
.bloco strong{color:var(--texto);font-weight:500}
.bloco-titulo{position:sticky;top:120px}

/* Caixa de fundamento legal */
.caixa-legal{
  background:rgba(198,166,100,.045);border-left:2px solid var(--ouro);
  padding:34px 36px;margin:36px 0;
}
.caixa-legal h4{
  font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--ouro);margin-bottom:20px;
}
.caixa-legal ul{list-style:none}
.caixa-legal li{
  position:relative;padding-left:22px;margin-bottom:15px;
  font-size:.94rem;line-height:1.72;color:var(--suave);font-weight:300;
}
.caixa-legal li:last-child{margin-bottom:0}
.caixa-legal li::before{content:'';position:absolute;left:0;top:11px;width:5px;height:5px;background:var(--ouro);transform:rotate(45deg)}
.caixa-legal li b{color:var(--texto);font-weight:500}

/* Grade de situações / tópicos */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linha-suave);border:1px solid var(--linha-suave);margin-top:56px}
.cards--2{grid-template-columns:repeat(2,1fr)}
.card{background:var(--preto);padding:38px 30px;transition:background .38s ease}
.sec--alt .card{background:var(--preto-2)}
.sec--graf .card{background:var(--grafite)}
.card:hover{background:var(--superficie)}
.card h3{font-size:1.2rem;margin-bottom:12px}
.card p{font-size:.92rem;color:var(--suave-2);line-height:1.74;margin:0;font-weight:300}

/* Lista de verificação (documentos) */
.checklist{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 40px;margin-top:40px;list-style:none}
.checklist li{
  position:relative;padding-left:30px;font-size:.96rem;color:var(--suave);
  font-weight:300;line-height:1.7;padding-bottom:14px;border-bottom:1px solid var(--linha-suave);
}
.checklist li::before{
  content:'';position:absolute;left:2px;top:8px;width:11px;height:6px;
  border-left:1.5px solid var(--ouro);border-bottom:1.5px solid var(--ouro);transform:rotate(-45deg);
}

/* Faixa de chamada */
.cta-faixa{background:var(--preto-2);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);padding:74px 0;text-align:center}
.cta-faixa h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:16px}
.cta-faixa p{color:var(--suave);max-width:60ch;margin:0 auto 34px;font-weight:300}

/* Aviso de fuso horário */
.fuso{border:1px solid var(--linha);padding:26px 30px;margin-top:34px}
.fuso h4{font-family:var(--sans);font-size:.66rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro);margin-bottom:14px}
.fuso p{font-size:.9rem;color:var(--suave);font-weight:300;line-height:1.75;margin:0}
.fuso table{width:100%;border-collapse:collapse;margin-top:16px;font-size:.88rem}
.fuso td{padding:9px 0;border-bottom:1px solid var(--linha-suave);color:var(--suave);font-weight:300}
.fuso td:last-child{text-align:right;color:var(--texto)}
.fuso tr:last-child td{border-bottom:none}

/* Página de texto corrido (política de privacidade) */
.texto-legal{max-width:78ch;margin:0 auto}
.texto-legal h2{font-size:clamp(1.5rem,2.4vw,2rem);margin:52px 0 18px}
.texto-legal h2:first-of-type{margin-top:0}
.texto-legal p,.texto-legal li{color:var(--suave);font-weight:300;font-size:1rem;line-height:1.85}
.texto-legal ul{margin:0 0 20px 22px}
.texto-legal li{margin-bottom:10px}
.texto-legal strong{color:var(--texto);font-weight:500}

@media (max-width:980px){
  .bloco,.bloco--inv{grid-template-columns:1fr;gap:34px}
  .bloco-titulo{position:static}
  .cards{grid-template-columns:repeat(2,1fr)}
  .hero--lp{padding:150px 0 0}
  .hero--lp .hero-foto{width:100%;opacity:1}
}
@media (max-width:560px){
  .cards,.cards--2{grid-template-columns:1fr}
  .checklist{grid-template-columns:1fr;gap:0}
  .caixa-legal{padding:26px 22px}
  .card{padding:30px 24px}
}
