
:root{--paper:#FAF9F6;--ink:#152E49;--muted:#536171;--wine:#193C5B;--line:#E1DBD2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:6px}.wrap{width:min(1200px,88%);margin:auto}header{border-bottom:1px solid var(--line);background:var(--paper)}nav{height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{line-height:1.1;display:inline-block;text-align:center}.brand strong{display:block;font-family:Georgia,serif;font-size:29px;font-weight:400;letter-spacing:6px}.brand small{display:block;font-size:9px;letter-spacing:3.6px;margin-top:10px}.navlinks{display:flex;align-items:center;gap:35px;font-size:13px}.outline{border:1px solid var(--wine);padding:12px 22px;color:var(--wine)}.eyebrow{text-transform:uppercase;letter-spacing:2.4px;font-size:10px;font-weight:600;color:var(--wine)}.hero{padding:90px 0 70px;display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(42px,5vw,67px);line-height:1.12;letter-spacing:-2px;margin:25px 0}h1 em{font-weight:400;color:var(--wine)}.intro{font-size:16px;color:var(--muted);max-width:480px;line-height:1.8}.primary{display:inline-flex;align-items:center;gap:40px;background:var(--wine);color:white;padding:16px 23px;font-size:13px;border:1px solid var(--wine)}.hero .primary{margin-top:18px}.introbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:22px 0;gap:16px;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}section{padding:85px 0}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:35px}h2{font-size:43px;line-height:1.2;letter-spacing:-1px;margin:14px 0 0}.section-heading p{max-width:365px;color:var(--muted);font-size:14px;margin-bottom:0}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:35px 0 25px}.filter{border:1px solid var(--line);border-radius:30px;background:transparent;padding:8px 17px;font-size:12px;color:var(--muted)}.filter.active{background:var(--wine);border-color:var(--wine);color:white}.service{border-top:1px solid var(--line)}.service:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px 1fr 28px;gap:18px;align-items:center;padding:22px 0}summary::-webkit-details-marker{display:none}.number{font-size:11px;color:#6c8299}summary h3{font-size:22px;line-height:1.4;margin:0}.plus{font-size:23px;color:var(--wine);font-weight:300}details[open] .plus{transform:rotate(45deg)}.detail{margin:0 50px 25px 66px;max-width:730px;color:var(--muted);font-size:14px}.service[hidden]{display:none}.process{background:#edf2f8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.step{border-top:1px solid #bbcddd;padding-top:22px}.step .eyebrow{font-size:11px}.step h3{font-size:25px;margin:18px 0 12px}.step p{color:var(--muted);font-size:14px}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:start}.contact p{color:var(--muted);font-size:14px;margin-top:22px}.contactbox{border:1px solid var(--line);padding:30px}.contactbox h3{font-size:25px;margin-bottom:15px}.contactbox ul{padding-left:18px;color:var(--muted);font-size:14px}.note{font-size:12px!important;border-top:1px solid var(--line);padding-top:18px}.contactbox button{background:transparent;border:0;border-bottom:1px solid var(--wine);padding:8px 0;color:var(--wine);font-size:13px}footer{border-top:1px solid var(--line);padding:35px 0}.footerrow{display:flex;justify-content:space-between;gap:30px;align-items:center}.footnote{max-width:570px;font-size:11px;color:var(--muted)}.footbottom{font-size:10px;color:var(--muted);margin-top:30px;display:flex;justify-content:space-between}#copy-status{font-size:12px;min-height:20px;margin:8px 0 0}.menu{display:none}@media(max-width:760px){nav{height:90px}.brand strong{font-size:24px}.navlinks{gap:15px}.navlinks>a:not(.outline){display:none}.outline{padding:9px 12px;font-size:11px}.hero{padding:50px 0;gap:35px;grid-template-columns:1fr}h1{font-size:48px}.introbar{font-size:8px;letter-spacing:.8px;gap:12px}section{padding:55px 0}.section-heading{display:block}h2{font-size:35px}.section-heading p{margin-top:20px}.filters{gap:7px}.filter{font-size:11px;padding:7px 12px}summary{grid-template-columns:25px 1fr 18px;gap:10px;padding:19px 0}summary h3{font-size:19px}.detail{margin:0 20px 22px 35px}.steps{grid-template-columns:1fr;gap:24px}.contact{grid-template-columns:1fr;gap:30px}.contactbox{padding:24px}.footerrow{display:block}.footnote{margin-top:25px}.footbottom{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.detail h4{font-family:Arial,sans-serif;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--wine);margin:23px 0 9px}.detail p{margin-bottom:14px}.service-contact{display:inline-block;color:var(--wine);border-bottom:1px solid var(--wine);font-size:13px;padding:8px 0}.contact address{font-style:normal;font-size:14px;color:var(--muted);margin:20px 0}.contact .primary{margin-top:10px}.contact-phone{display:block;margin-top:16px;font-size:14px;color:var(--wine)}.lawyer-id{font-size:12px;color:var(--muted);margin-top:15px;line-height:1.7}@media(max-width:760px){}.document-group{padding:18px 0;border-top:1px solid var(--line)}.document-group h4{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--wine)}.document-group ul{margin:0;padding-left:18px}.document-group p{margin:0 0 12px}.document-group .document-examples{font-size:12px;font-weight:600;margin-bottom:8px}.document-group li+li{margin-top:5px}.practice-nav{display:flex;gap:28px;border-bottom:1px solid var(--line);padding-top:18px}.practice-nav a{padding:0 0 14px;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.practice-nav a[aria-current="page"]{color:var(--wine);border-color:var(--wine);font-weight:600}.civil-intro{max-width:680px;color:var(--muted);font-size:15px;margin-top:25px}.civil-docs{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}.civil-docs article{border-top:1px solid var(--line);padding-top:18px}.civil-docs h3{font-size:24px}.civil-docs p{font-size:14px;color:var(--muted)}@media(max-width:760px){.practice-nav{gap:24px}.practice-nav a{font-size:12px}.civil-docs{grid-template-columns:1fr}}


/* Identidade Turatto | azul-marinho, champagne acetinado e off-white.
   Sem gradientes metálicos; o champagne claro é reservado a fundos escuros,
   realces e bordas. Textos pequenos sobre fundo claro permanecem escuros. */
:root {
  --paper: #FAF9F6;
  --ink: #152E49;
  --muted: #536171;
  --wine: #193C5B;
  --line: #E1DBD2;
  --navy: #152E49;
  --navy-deep: #10293F;
  --champagne: #D6C3A1;
  --champagne-dark: #9B805B;
  --champagne-ink: #765B3D;
  --canvas-soft: #F2EFE9;
  --white: #FFFFFF;
}
body { background: var(--paper); color: var(--ink); }
header {
  background: var(--navy-deep);
  border-bottom: 1px solid var(--champagne-dark);
  color: #F8F6F0;
}
.brand {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  text-align: center;
}
.brand strong {
  padding-left: 6px;
  line-height: 1.14;
}
.brand small {
  padding-left: 2px;
  max-width: 310px;
  font-size: 9px;
  letter-spacing: 2px;
  line-height: 1.6;
  text-align: center;
}
header .brand strong, footer .brand strong {
  background: none;
  color: var(--champagne);
  -webkit-text-fill-color: currentColor;
}
header .brand small, footer .brand small { color: #E9DFCF; }
.navlinks a { transition: color .18s ease, background-color .18s ease; }
.navlinks > a:hover { color: var(--champagne); }
header .outline {
  color: var(--champagne);
  border-color: var(--champagne-dark);
  background: transparent;
}
header .outline:hover {
  background: #243F57;
  color: #F7EBDD;
}
.practice-nav {
  padding-top: 20px;
  border-bottom-color: var(--line);
}
.practice-nav a {
  color: var(--muted);
  font-weight: 500;
  border-bottom: 2px solid transparent;
  transition: color .18s ease, border-color .18s ease;
}
.practice-nav a[aria-current="page"] {
  color: var(--navy);
  border-bottom-color: var(--champagne-dark);
  font-weight: 700;
  background: none;
  -webkit-text-fill-color: currentColor;
}
.practice-nav a:hover { color: var(--champagne-ink); border-bottom-color: var(--champagne); }
.hero { padding-top: 76px; gap: 64px; }
.hero h1 { color: var(--navy-deep); }
.hero h1 em { color: var(--champagne-ink); }
.hero .eyebrow, .section-heading .eyebrow,
.contact > .eyebrow, .contact > div > .eyebrow { color: var(--champagne-ink); }
.primary {
  background: var(--champagne);
  border: 1px solid var(--champagne-dark);
  color: var(--navy-deep);
  font-weight: 700;
  box-shadow: 0 5px 16px #152E4910;
  transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.primary:hover {
  background: #E3D3B8;
  color: var(--navy-deep);
  transform: translateY(-2px);
  box-shadow: 0 9px 25px #152E491A;
}




.introbar { border-color: var(--line); color: var(--muted); letter-spacing: 1.2px; }
.filter {
  color: var(--muted);
  background: #FFFDF9;
  border: 1px solid var(--line);
  border-radius: 3px;
  transition: background-color .18s ease, border-color .18s ease;
}
.filter:hover { border-color: var(--champagne-dark); background: var(--canvas-soft); color: var(--navy); }
.filter.active {
  background: var(--navy);
  border-color: var(--navy);
  color: #FFFFFF;
  box-shadow: inset 0 -2px 0 var(--champagne);
}
.service { border-top-color: var(--line); }
.service:last-child { border-bottom-color: var(--line); }
.service summary { transition: background-color .18s ease; }
.service summary:hover { background: var(--canvas-soft); }
.service[open] { background: #F5F3EE; }
.service[open] summary h3 { color: var(--navy); }
.number, .plus { color: var(--champagne-ink); }
.service-contact { color: var(--navy); border-bottom-color: var(--champagne-dark); }
.service-contact:hover { color: var(--champagne-ink); }
.process {
  background: var(--navy);
  color: #F8F6F2;
  border-top: 1px solid var(--champagne-dark);
  border-bottom: 1px solid var(--champagne-dark);
}
.process h2 { color: #F6EFE5; }
.process .eyebrow { color: var(--champagne); }
.process .step { border-top-color: #7A8793; }
.process .step h3 { color: #F7F5F1; }
.process .step p, .process .civil-docs p { color: #D7DEE4; }
.contactbox {
  background: var(--canvas-soft);
  border: 1px solid #DCD1BE;
  border-top: 3px solid var(--champagne-dark);
  box-shadow: 0 10px 35px #152E4908;
}
.document-group { border-color: var(--line); }
.document-group h4 { color: var(--champagne-ink); }
.contactbox button { color: var(--navy); border-bottom-color: var(--champagne-dark); }
.contactbox button:hover { color: var(--champagne-ink); }
.contact-phone { color: var(--wine); }
.civil-docs article { border-top-color: var(--champagne); }
footer {
  background: var(--navy-deep);
  color: #EAE4D8;
  border-top: 2px solid var(--champagne-dark);
  padding-top: 44px;
}
footer .footnote, footer .footbottom { color: #D3DDE5; }
footer .footbottom { border-top: 1px solid #52657A; padding-top: 24px; }
footer a:hover { color: var(--champagne); }
:focus-visible { outline-color: var(--champagne-ink) !important; }
header :focus-visible, footer :focus-visible, .process :focus-visible {
  outline-color: var(--champagne) !important;
}
@media (max-width: 760px) {
  header nav {
    height: auto;
    min-height: 122px;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
    padding: 20px 0;
  }
  .brand small { font-size: 8px; letter-spacing: 1.5px; padding-left: 1.5px; max-width: 280px; }
  .navlinks { justify-content: center; }
  .practice-nav { justify-content: center; gap: 20px; padding-top: 18px; }
  .hero { padding-top: 44px; gap: 32px; }
  .introbar { letter-spacing: .5px; }
  .primary { gap: 24px; }
}
@media (max-width: 380px) {
  .wrap { width: min(1200px, 91%); }
  h1 { font-size: 39px; }
  .brand strong { font-size: 23px; }
  .practice-nav { gap: 12px; }
  .practice-nav a { font-size: 11px; }
  .introbar { flex-wrap: wrap; justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .primary, .filter, .navlinks a, .practice-nav a, .service summary { transition: none; }
  .primary:hover { transform: none; }
}
@media (forced-colors: active) {
  header .brand strong, footer .brand strong, .signature-main p,
  .practice-nav a[aria-current="page"] { -webkit-text-fill-color: currentColor; }
}

/* Navegação responsiva para o nome completo Direito de Família e Sucessões. */
@media (max-width: 760px) {
  .practice-nav { flex-wrap: wrap; align-items: center; row-gap: 4px; }
  .practice-nav a { text-align: center; white-space: normal; line-height: 1.45; }
}


/* HERO INSTITUCIONAL TURATTO — composição limpa e sem molduras.
   Paleta original azul-marinho + champagne preservada. */
h1, h2, h3 {font-family: 'Segoe UI', Arial, Helvetica, sans-serif; font-weight: 500; letter-spacing: -.025em;}
h1 {font-weight: 500; font-size: clamp(43px, 5vw, 66px); line-height:1.13; letter-spacing:-.04em; margin:25px 0 22px;}
h1 em {font-style:normal; font-weight:600;}
h2 {font-size:clamp(32px, 3.3vw, 42px); line-height:1.22;}
h3 {font-size:clamp(20px, 2vw, 24px);}
.hero {grid-template-columns:minmax(0,1.35fr) minmax(305px,.8fr); gap:clamp(48px, 6vw, 100px); padding:88px 0 82px; align-items:center;}
.hero .eyebrow {letter-spacing:2px;}
.hero .intro {font-size:16px; line-height:1.82;}
.hero .primary {margin-top:20px;}
.primary {box-shadow:none; border-radius:2px;}
.primary:hover {transform:none; box-shadow:none;}
.hero-signature {background:transparent; border:0; border-left:2px solid var(--champagne-dark); box-shadow:none; color:var(--navy); min-height:unset; padding:11px 0 11px 32px; display:flex; flex-direction:column; gap:24px; justify-content:flex-start;}
.signature-topline {display:flex; align-items:center; justify-content:space-between; gap:12px;}
.signature-kicker {color:var(--champagne-ink); font-size:10px; font-weight:700; letter-spacing:1.8px; line-height:1.5; text-transform:uppercase;}
.signature-index {color:#8A9299; font-size:10px; letter-spacing:1px; white-space:nowrap;}
.signature-main h2 {color:var(--navy); font-family:'Segoe UI',Arial,Helvetica,sans-serif; font-weight:550; letter-spacing:-1px; font-size:clamp(28px,2.5vw,35px); line-height:1.23; margin:0 0 15px;}
.signature-rule {display:none;}
.signature-caption {display:block; letter-spacing:0; color:var(--muted); font-size:14px; line-height:1.85; max-width:330px;}
.signature-footer {width:100%; border:0; border-top:1px solid var(--line); padding:21px 0 0; margin-top:3px; font-size:12px; line-height:1.6; color:var(--navy);}
.signature-footer span {display:block; color:var(--navy); font-weight:600;}
.signature-footer small {display:block; color:var(--muted); font-size:11px; letter-spacing:.15px; margin-top:5px;}
.introbar {font-size:10px;}
@media(max-width:920px){
 .hero {grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:35px;}
 h1 {font-size:clamp(40px, 5.1vw, 54px);}
 .hero-signature{padding-left:23px;}
}
@media(max-width:760px){
 .hero {grid-template-columns:minmax(0,1fr); gap:39px; padding:48px 0 50px;}
 h1 {font-size:clamp(38px, 9vw, 49px); line-height:1.12;}
 .hero-signature {display:flex; padding:2px 0 2px 21px; gap:17px; max-width:560px;}
 .signature-main h2 {font-size:25px; margin:0 0 9px;}
 .signature-caption{font-size:13px; line-height:1.7;}
 .signature-footer {padding-top:13px; margin-top:0;}
 .signature-index {display:none;}
 .introbar {flex-wrap:wrap; row-gap:5px; font-size:9px;}
}
@media(max-width:380px){.hero{padding-top:42px}.signature-main h2{font-size:24px}}

/* Segurança de contato — informações oficiais sem aspecto publicitário. */
.security-notice{background:#F1ECE3;border-top:1px solid #E3D8C7;border-bottom:1px solid #D9CDBA;padding:17px 0}
.security-notice .security-inner{display:grid;grid-template-columns:28px minmax(0,1fr);gap:15px;align-items:start}
.security-icon{display:flex;align-items:center;justify-content:center;color:#715B3E;margin-top:2px}
.security-notice .security-title{color:var(--navy);font-family:'Segoe UI',Arial,Helvetica,sans-serif;font-size:15px;font-weight:700;line-height:1.35;margin:0 0 4px;letter-spacing:0}
.security-notice p{font-size:12.5px;line-height:1.7;color:#384958;margin:0;max-width:1080px}
.security-notice p+p{margin-top:3px}
.security-notice a{color:var(--navy);font-weight:700;text-decoration:underline;text-decoration-color:#98805D;text-underline-offset:2px}
.security-notice strong{color:var(--navy)}
/* Apresentação profissional com fotografia realista — sem cartão ou molduras. */
.lawyer-profile{background:#F2EFE9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.profile-grid{display:grid;grid-template-columns:minmax(275px,.78fr) minmax(0,1.15fr);gap:clamp(38px,6vw,96px);align-items:center}
.profile-portrait{margin:0;max-width:410px;overflow:hidden;background:#D6D0C7}
.profile-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 36%}
.profile-copy .eyebrow{color:var(--champagne-ink)}
.profile-copy h2{font-size:clamp(32px,3.1vw,42px);max-width:600px;margin:12px 0 24px;letter-spacing:-.03em}
.profile-copy p{font-size:15px;color:var(--muted);line-height:1.86;max-width:580px}
.profile-name{font-size:15px!important;font-weight:700;color:var(--navy)!important;margin:26px 0 2px}
.profile-reg{font-size:12px!important;margin:0 0 30px!important;letter-spacing:.3px}
.profile-link{display:inline-block;border-bottom:1px solid var(--champagne-dark);color:var(--navy);padding:6px 0;font-size:13px;font-weight:700}
.profile-link:hover{color:var(--champagne-ink)}
.contact-email{display:block;word-break:break-word;margin:10px 0 0;font-size:14px;color:var(--navy);text-decoration:underline;text-decoration-color:var(--champagne-dark);text-underline-offset:3px}
.footercontact{font-size:12px;color:#EAE4D8;display:flex;flex-direction:column;gap:5px}
.footercontact a{width:fit-content;text-decoration:underline;text-decoration-color:#806E58;text-underline-offset:3px}
@media(max-width:760px){.security-notice{padding:15px 0}.security-notice .security-inner{gap:10px;grid-template-columns:22px minmax(0,1fr)}.security-notice .security-title{font-size:14px}.security-notice p{font-size:11.5px;line-height:1.6}.profile-grid{grid-template-columns:1fr;gap:26px}.profile-portrait{max-width:410px}.profile-portrait img{aspect-ratio:4/4.6}.profile-copy h2{font-size:32px}.profile-copy p{font-size:14px}.footercontact{margin-top:20px}}

/* Link institucional discreto para canal de segurança — sem aviso na página de serviços. */
.navlinks .security-nav { font-size:12px; font-weight:400; color:#E8E0D5; opacity:.88; border-bottom:1px solid transparent; padding:7px 0; white-space:nowrap; }
.navlinks .security-nav:hover {color:var(--champagne);border-bottom-color:var(--champagne-dark);opacity:1}
.footer-security-link{display:inline-block; font-size:12px; margin-top:10px; text-decoration:underline; text-underline-offset:3px; text-decoration-color:#7F8B94; color:#E8E0D5}
@media (max-width:760px) {
 header .navlinks > a.security-nav {display:inline-block !important; font-size:11px; order:2;}
 header .navlinks > a.outline {order:1}
 header nav {min-height:112px}
 .navlinks {gap:24px}
}

@media (max-width:760px){
 header .navlinks > a.articles-nav {display:inline-block !important;font-size:11px;order:1}
 header .navlinks {flex-wrap:wrap;justify-content:center;gap:9px 17px}
 header .navlinks > a.security-nav {order:2}
 header .navlinks > a.outline {order:3}
}
