/* Selected by Nina: upward full-width crest and mirrored footer diagonal. */
#avaliacoes{--crest-height:clamp(24px,4vw,54px);scroll-margin-top:calc(var(--crest-height) + 36px)}
.testimonial-transition{position:absolute;inset:0 0 auto;pointer-events:none;z-index:1}
.testimonial-crest{position:absolute;left:0;top:calc(-1 * var(--crest-height));width:100%;height:calc(var(--crest-height) + 1px);fill:var(--tint);display:block}
.crest-stem{position:absolute;left:calc(50% - .5px);top:calc(-1 * var(--crest-height) - 26px);width:1px;height:48px;background:var(--main)}
.crest-stem::before,.crest-stem::after{content:"";position:absolute;left:-1.5px;width:4px;height:4px;border-radius:50%;background:var(--main)}
.crest-stem::before{top:0}.crest-stem::after{bottom:0}
/* One rectangular band: three aligned columns, video and brown divided diagonally. */
.restored-footer:has(.footer-split){padding:0}
.footer-split{position:relative;background:var(--deep);isolation:isolate}
.footer-transition{position:absolute;inset:0 0 auto;width:100%;height:29px;fill:#eee6d8;z-index:4;pointer-events:none;display:block}
.justice-horizon{position:absolute;inset:0;isolation:isolate;overflow:hidden}
.justice-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;background:#393a36}
.justice-video{display:block;width:100%;height:100%;object-fit:cover;object-position:left top;opacity:1;transform:none}
/* The shared .overlay class supplies the passport hero's exact color and opacity. */
.justice-shade{pointer-events:none}
.justice-horizon::after{content:"";position:absolute;inset:0;background:var(--deep);clip-path:polygon(70% 0,100% 0,100% 100%,34% 100%);pointer-events:none}
.footer-row{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,210px) minmax(0,130px);gap:clamp(25px,3vw,55px);align-items:start;min-height:520px;padding:125px 4% 75px 6.5%;pointer-events:none}
.restored-footer .footer-row>div{min-width:0;height:auto;grid-column:auto;grid-row:1}
.footer-row a{pointer-events:auto}
.restored-footer .footer-row .footer-brand{width:360px;max-width:100%;text-shadow:0 1px 8px #0006}
.restored-footer .footer-row .brand{height:auto;width:auto;margin:0;justify-content:flex-start;color:var(--paper);gap:10px}
.restored-footer .footer-row .brand img{width:56px;height:68px}
.restored-footer .footer-row .brand span{font-size:52px}
.restored-footer .footer-row .footer-brand p{font-size:13px;line-height:1.85;max-width:none;margin:20px 0 18px;text-align:left}
.restored-footer .footer-row .footer-social{justify-content:flex-start;margin:0}
.footer-row .footer-social a{opacity:.9}
.footer-row h3{font:400 26px/1.15 'Mate SC',serif;margin:0 0 22px}
.restored-footer .footer-row .footer-services a,.restored-footer .footer-row .footer-navigation a{font-size:14px;line-height:1.65;padding:7px 0}
.justice-toggle{position:absolute;left:24px;bottom:22px;z-index:2;display:grid;place-items:center;width:30px;height:30px;padding:7px;background:#1c19162b;border:1px solid #e7ded080;border-radius:2px;color:var(--paper)}
.justice-toggle:hover{background:#e7ded018}
.justice-toggle svg{width:12px;height:12px;fill:currentColor;display:block}
.justice-toggle .play-symbol{display:none}
.justice-toggle[data-paused="true"] .play-symbol{display:block}
.justice-toggle[data-paused="true"] .pause-symbol{display:none}
.footer-legal{position:relative;background:var(--paper);color:var(--deep)}
.restored-footer .footer-legal .professional-registration{margin:0;border:0;padding:24px 0 18px}
.footer-legal .professional-name{font:400 clamp(8px,1.5vw,14px)/1.5 'Open Sans',sans-serif;color:var(--deep);margin:0 0 15px;white-space:nowrap}
.registration-emblems{display:flex;justify-content:center;align-items:center;gap:35px}
.registration-emblems img{height:30px;width:auto;object-fit:contain;filter:brightness(0);opacity:.62}
.footer-legal .footer-bottom{color:var(--deep);border-top:1px solid #73574424;padding:16px 0 20px;opacity:1}
@media(min-width:1600px){.footer-row{min-height:570px;grid-template-columns:minmax(0,1fr) minmax(0,250px) minmax(0,170px);padding-top:145px}.restored-footer .footer-row .brand span{font-size:58px}.restored-footer .footer-row .footer-brand p{font-size:14px}}
@media(max-width:1000px){
 .footer-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1.15fr) minmax(0,.75fr);min-height:390px;gap:20px;padding:85px 4% 65px}
 .justice-horizon::after{clip-path:polygon(47% 0,100% 0,100% 100%,27% 100%)}
 .justice-scene{width:70%}
 .justice-video{object-position:30% top}
 .restored-footer .footer-row .brand{gap:7px}
 .restored-footer .footer-row .brand img{width:38px;height:49px}
 .restored-footer .footer-row .brand span{font-size:36px}
 .restored-footer .footer-row .brand small{font-size:7px;letter-spacing:2px}
 .restored-footer .footer-row .footer-brand p{font-size:11px;line-height:1.7;margin:18px 0 14px}
 .footer-row h3{font-size:22px;margin-bottom:18px}
 .restored-footer .footer-row .footer-services a,.restored-footer .footer-row .footer-navigation a{font-size:12px;padding:6px 0}
}
@media(max-width:767px){.crest-stem{top:calc(-1 * var(--crest-height) - 21px);height:40px}}
@media(max-width:600px){
 .footer-row{min-height:335px;gap:12px;padding:62px 14px 60px}
 .footer-transition{height:18px}
 .restored-footer .footer-row .brand{gap:4px}
 .restored-footer .footer-row .brand img{width:24px;height:32px}
 .restored-footer .footer-row .brand span{font-size:clamp(22px,5vw,30px)}
 .restored-footer .footer-row .brand small{font-size:5px;letter-spacing:1.7px}
 .restored-footer .footer-row .footer-brand p{font-size:10px;line-height:1.6;margin:14px 0 10px}
 .restored-footer .footer-row .footer-social{gap:1px}
 .footer-row .footer-social a{width:28px;height:32px}
 .footer-row .footer-social img{width:14px;height:14px}
 .footer-row h3{font-size:clamp(13px,3.5vw,20px);margin-bottom:14px}
 .restored-footer .footer-row .footer-services a,.restored-footer .footer-row .footer-navigation a{font-size:10px;padding:5px 0;line-height:1.6}
 .justice-toggle{left:14px;bottom:14px;width:28px;height:28px}
 .restored-footer .footer-legal .footer-inner{padding:0 14px}
 .restored-footer .footer-legal .professional-registration{padding:18px 0 14px}
 .registration-emblems img{height:25px}
 .footer-legal .footer-bottom{font-size:9px;gap:10px;padding:14px 0}
}
