.elementor-kit-8{--e-global-color-primary:#0057BB;--e-global-color-secondary:#1C1B1D;--e-global-color-text:#F4F2EE;--e-global-color-accent:#3F8CF2;--e-global-typography-primary-font-family:"Baskervville";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Baskervville";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Instrument Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Instrument Sans";--e-global-typography-accent-font-weight:600;background-color:#1C1B1D;color:#F4F2EE;font-family:"Instrument Sans", Sans-serif;font-size:16px;line-height:1.6em;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --pc-ink:#1C1B1D; --pc-muted:#F4F2EEA8; --pc-serif:Baskervville; --pc-sans:Instrument Sans; --pc-ink-2:#232125; --pc-ink-3:#2B292E; --pc-text:#F4F2EE; --pc-muted-2:#F4F2EE80; --pc-line:#FFFFFF1A; --pc-line-2:#FFFFFF0F; --pc-paper:#ECE9E3; --pc-paper-ink:#1E1D20; --pc-paper-muted:#5C5852; --pc-paper-line:#1E1D2024; --pc-blue:#0057BB; --pc-blue-deep:#00469A; --pc-blue-bright:#3F8CF2; --pc-wa:#1E9E5A; }
/* Start custom CSS *//* =========================================================
   PERÍCIA CRIMINALÍSTICA — CSS complementar do site
   Estilos base ficam nas Global Classes (pc-*) e variáveis (--pc-*).
   Aqui ficam só pseudo-elementos, animações, estados e ajustes
   que os controles nativos do Elementor não cobrem.
   ========================================================= */
:root{
  --pc-ease:cubic-bezier(.2,.7,.2,1);
  --pc-i-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M14 6l6 6-6 6'/%3E%3C/svg%3E");
  --pc-i-arrow-dr:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7l10 10M17 8v9H8'/%3E%3C/svg%3E");
  --pc-i-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m20 6-11 11L4 12'/%3E%3C/svg%3E");
  --pc-i-lock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10' rx='1'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
  --pc-i-wa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.02 2C6.5 2 2 6.5 2 12.02c0 1.9.53 3.68 1.44 5.2L2 22l4.9-1.4a9.9 9.9 0 0 0 5.12 1.4h.02c5.52 0 10-4.5 10-10.02C22.04 6.5 17.55 2 12.02 2Zm5.77 14.1c-.24.68-1.4 1.3-1.94 1.38-.5.08-1.12.11-1.8-.12-.42-.13-.95-.31-1.64-.6-2.9-1.25-4.78-4.18-4.93-4.37-.15-.2-1.18-1.57-1.18-3 0-1.42.75-2.12 1.02-2.4.26-.29.58-.36.77-.36.2 0 .39 0 .56.01.18.01.42-.07.65.5.24.58.82 2 .89 2.15.07.15.12.32.02.52-.09.2-.14.32-.28.5-.14.17-.3.38-.42.5-.14.15-.29.3-.13.6.17.29.75 1.24 1.6 2 1.11.98 2.03 1.29 2.32 1.44.29.15.46.13.63-.08.17-.2.72-.84.92-1.13.2-.29.4-.24.66-.14.27.1 1.71.8 2 .95.29.14.48.21.55.33.07.12.07.68-.17 1.36Z'/%3E%3C/svg%3E");
  --pc-i-chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%233F8CF2' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}

/* ---------- Base ---------- */
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
html,body{overflow-x:clip;max-width:100%}
body{background:var(--pc-ink);color:var(--pc-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--pc-blue);color:#fff}
:focus-visible{outline:2px solid var(--pc-blue-bright);outline-offset:3px}
body .elementor a{text-decoration:none}
body .elementor :is(.pc-h1,.pc-h2,.pc-h3,.pc-svc-title,.pc-step-title,.pc-pillar-title,.pc-pro-name){text-wrap:balance}
body .elementor :is(.pc-hero-sub,.pc-lead,.pc-hero-micro){text-wrap:pretty}
body .elementor :is(.pc-h1,.pc-h2,.pc-steps-cta-p) em{font-style:italic;color:var(--pc-blue-bright)}
body .elementor :is(.pc-fact-num,.pc-svc-num,.pc-band-num,.pc-when-num,.pc-pillar-num,.pc-dl-num,.pc-dot-num,.pc-big){font-variant-numeric:tabular-nums lining-nums}
.e-svg-base svg{display:block}
/* Ícones de traço: o widget SVG força fill=currentColor no <svg> */
body .elementor :is(.pc-ico-19,.pc-ico-18,.pc-ico-16,.pc-svc-ic,.pc-pillar-ic,.pc-ct-ic,.pc-ck) svg{fill:none}
body .elementor :is(.pc-fab-ic) svg, body .elementor .pc-ct-ic svg[viewBox] path[d^="M12.02"]{fill:currentColor}
@media (min-width:1025px){
  body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;opacity:.035;mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
}

/* ---------- Kicker ---------- */
body .elementor .pc-kicker::before{content:"";width:28px;height:1px;background:currentColor;opacity:.8;flex:none}
body .elementor .pc-kicker span{color:var(--pc-muted-2);letter-spacing:.08em}
body .elementor .pc-found .pc-kicker span{color:var(--pc-paper-muted)}
body .elementor .pc-ct-panel .pc-kicker span{color:#FFFFFF99}

/* ---------- Botões ---------- */
body .elementor .pc-btn{isolation:isolate;transition:transform .3s var(--pc-ease),box-shadow .3s var(--pc-ease),color .3s}
body .elementor .pc-btn::before{content:"";position:absolute;inset:0;z-index:-1;background:#fff;transform:translateY(101%);transition:transform .45s var(--pc-ease)}
body .elementor .pc-btn:hover{transform:translateY(-2px);color:var(--pc-blue-deep)}
body .elementor .pc-btn:hover::before{transform:none}
body .elementor .pc-btn--ghost:hover{color:var(--pc-ink)}
body .elementor .pc-btn--wa:hover{color:#127042}
body .elementor .pc-btn--light::before{background:var(--pc-ink)}
body .elementor .pc-btn--light:hover{color:#fff}
body .elementor :is(.pc-arrow,.pc-ico-wa)::after{content:"";width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:var(--pc-i-arrow) center/contain no-repeat;mask:var(--pc-i-arrow) center/contain no-repeat;transition:transform .3s var(--pc-ease)}
body .elementor .pc-arrow:hover::after{transform:translateX(4px)}
body .elementor .pc-ico-wa::after{order:-1;-webkit-mask-image:var(--pc-i-wa);mask-image:var(--pc-i-wa)}
body .elementor .pc-lnk{transition:border-color .3s,gap .3s var(--pc-ease)}
body .elementor .pc-lnk.pc-ico-wa::after{width:16px;height:16px;background:var(--pc-blue-bright)}

/* ---------- Header ---------- */
body .elementor .pc-hd{transition:background .4s,box-shadow .4s,padding .4s}
body .elementor .pc-hd.is-scrolled{background:rgba(28,27,29,.84);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 1px 0 var(--pc-line);padding-top:12px;padding-bottom:12px}
.admin-bar .pc-hd{top:32px}
@media (max-width:782px){.admin-bar .pc-hd{top:46px}}
body .elementor .pc-logo{transition:width .4s var(--pc-ease)}
body .elementor .pc-hd.is-scrolled .pc-logo{width:clamp(160px,15vw,190px)}
body .elementor .pc-nav-link{transition:color .25s;white-space:nowrap}
body .elementor .pc-nav-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--pc-blue-bright);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--pc-ease)}
body .elementor .pc-nav-link:hover::after,body .elementor .pc-nav-link.is-on::after{transform:scaleX(1);transform-origin:left}
body .elementor .pc-nav-link.is-on{color:#fff}
body .elementor .pc-hd-ig{transition:color .25s,border-color .25s}
body .elementor .pc-burger::before,body .elementor .pc-burger::after{content:"";display:block;position:static;top:auto;left:auto;width:20px;height:1.5px;border:0;opacity:1;background:#fff;transition:transform .35s var(--pc-ease)}
body .elementor .pc-burger:hover,body .elementor .pc-burger:focus{background:rgba(255,255,255,.03)}
.pc-menu-open .elementor .pc-burger::before{transform:translateY(3.75px) rotate(45deg)}
.pc-menu-open .elementor .pc-burger::after{transform:translateY(-3.75px) rotate(-45deg)}
body .elementor .pc-drawer{opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .4s var(--pc-ease),visibility .4s}
.pc-menu-open .elementor .pc-drawer{opacity:1;visibility:visible}
body .elementor .pc-dl{transform:translateY(16px);opacity:0;transition:transform .5s var(--pc-ease),opacity .5s var(--pc-ease)}
.pc-menu-open .elementor .pc-dl{transform:none;opacity:1}
.pc-menu-open .elementor .pc-dl:nth-child(2){transition-delay:.05s}
.pc-menu-open .elementor .pc-dl:nth-child(3){transition-delay:.1s}
.pc-menu-open .elementor .pc-dl:nth-child(4){transition-delay:.15s}
.pc-menu-open .elementor .pc-dl:nth-child(5){transition-delay:.2s}
@media (min-width:1025px){body .elementor .pc-drawer{display:none}}

/* ---------- Hero / lupa ---------- */
body .elementor .pc-hero{isolation:isolate}
body .elementor .pc-hero-img{transform:scale(1.03);filter:grayscale(.55) brightness(.42) contrast(1.05) blur(1.5px)}
body .elementor .pc-hero-lens{--x:72%;--y:70%;--r:clamp(110px,13vw,190px);clip-path:circle(var(--r) at var(--x) var(--y));-webkit-clip-path:circle(var(--r) at var(--x) var(--y))}
body .elementor .pc-hero-lens::before{content:"";position:absolute;inset:0;background:url("/wp-content/uploads/2026/10/hero-bg-v2.webp") 62% 60%/cover no-repeat;transform:scale(1.03);filter:brightness(1.12) contrast(1.08) saturate(1.1)}
body .elementor .pc-lens-ring{--r:clamp(110px,13vw,190px);width:calc(var(--r) * 2 + 28px);height:auto;aspect-ratio:1;pointer-events:none;translate:calc(var(--px,72vw) - 50%) calc(var(--py,70vh) - 50%)}
body .elementor .pc-lens-ring svg{width:100%;height:100%;overflow:visible;fill:none}
body .elementor .pc-lens-ring .pc-ticks{transform-origin:50% 50%;animation:pc-spin 60s linear infinite}
@keyframes pc-spin{to{transform:rotate(360deg)}}
body .elementor .pc-hero-scrim{background:linear-gradient(90deg,rgba(28,27,29,.96) 0%,rgba(28,27,29,.82) 34%,rgba(28,27,29,.2) 64%,rgba(28,27,29,0) 100%),linear-gradient(180deg,rgba(28,27,29,.75) 0%,rgba(28,27,29,0) 26%,rgba(28,27,29,0) 66%,rgba(28,27,29,1) 100%)}
body .elementor .pc-hero-grid{background-image:linear-gradient(var(--pc-line-2) 1px,transparent 1px),linear-gradient(90deg,var(--pc-line-2) 1px,transparent 1px);background-size:96px 96px;-webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 55%);mask-image:linear-gradient(90deg,#000 0%,transparent 55%)}
body .elementor .pc-spec-item{transition:border-color .3s,color .3s}
body .elementor .pc-spec-item::before{content:"";width:11px;height:11px;flex:none;background:var(--pc-blue-bright);-webkit-mask:var(--pc-i-check) center/contain no-repeat;mask:var(--pc-i-check) center/contain no-repeat}
body .elementor .pc-fact+.pc-fact{padding-left:24px;border-left:1px solid var(--pc-line)}
body .elementor .pc-fact-num sup{font-size:.5em;color:var(--pc-blue-bright);vertical-align:top;position:relative;top:.15em;margin-left:2px}
@media (max-width:1024px){
  body .elementor .pc-hero-scrim{background:linear-gradient(180deg,rgba(28,27,29,.6) 0%,rgba(28,27,29,.72) 34%,rgba(28,27,29,.94) 62%,rgba(28,27,29,1) 100%)}
  body .elementor .pc-hero-img{filter:grayscale(.3) brightness(.62) contrast(1.05);transform:none}
  body .elementor .pc-fact:nth-child(3){padding-left:0;border-left:0}
  body .elementor .pc-fact:nth-child(n+3){border-top:1px solid var(--pc-line)}
}
@media (max-width:767px){
  body .elementor .pc-fact+.pc-fact{padding-left:14px}
  body .elementor .pc-fact:nth-child(3){padding-left:0}
}

/* ---------- Faixa azul ---------- */
body .elementor .pc-band::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.08) 50%,rgba(255,255,255,0));transform:translateX(-100%);animation:pc-sheen 7s var(--pc-ease) infinite 2s}
@keyframes pc-sheen{to{transform:translateX(100%)}}
body .elementor .pc-band-item{transition:background .35s}
body .elementor .pc-band-item+.pc-band-item{border-left:1px solid rgba(255,255,255,.2)}
body .elementor .pc-band-item::after{content:"";width:16px;height:16px;margin-left:auto;flex:none;opacity:.6;background:currentColor;-webkit-mask:var(--pc-i-arrow-dr) center/contain no-repeat;mask:var(--pc-i-arrow-dr) center/contain no-repeat;transition:transform .35s var(--pc-ease),opacity .35s}
body .elementor .pc-band-item:hover::after{transform:translate(2px,2px);opacity:1}
@media (max-width:1024px){
  body .elementor .pc-band-item:nth-child(3){border-left:0}
  body .elementor .pc-band-item:nth-child(n+3){border-top:1px solid rgba(255,255,255,.2)}
}
@media (max-width:767px){body .elementor .pc-band-item::after{display:none}}

/* ---------- Serviços ---------- */
body .elementor .pc-svc{transition:opacity .9s var(--pc-ease),transform .5s var(--pc-ease),box-shadow .5s var(--pc-ease),background .5s}
body .elementor .pc-svc::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--pc-blue);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--pc-ease)}
body .elementor .pc-svc:hover{transform:translateY(-6px);background:#F3F1EC}
body .elementor .pc-svc:hover::before,body .elementor .pc-svc:target::before{transform:scaleX(1)}
body .elementor .pc-svc:target{box-shadow:0 0 0 2px var(--pc-blue-bright),0 30px 60px -40px rgba(0,0,0,.9)}
body .elementor .pc-svc-ic{transition:background .4s,color .4s,border-color .4s}
body .elementor .pc-svc:hover .pc-svc-ic{background:var(--pc-blue);color:#fff;border-color:var(--pc-blue)}
body .elementor .pc-svc-ben::before{content:"";width:16px;height:16px;flex:none;margin-top:3px;background:currentColor;-webkit-mask:var(--pc-i-arrow) center/contain no-repeat;mask:var(--pc-i-arrow) center/contain no-repeat}
body .elementor .pc-cta-strip{background:linear-gradient(90deg,rgba(0,87,187,.16),transparent 70%)}
body .elementor .pc-cta-p strong{font-weight:600;color:#fff}

/* ---------- Quando é necessária ---------- */
body .elementor .pc-q{pointer-events:none;user-select:none}
body .elementor .pc-when-li{transition:padding .35s var(--pc-ease),background .35s}
body .elementor .pc-when-li:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
body .elementor .pc-when-li:hover{padding-left:8px;background:linear-gradient(90deg,rgba(255,255,255,.08),transparent)}
body .elementor .pc-ck{transition:background .35s,border-color .35s,color .35s}
body .elementor .pc-ck svg{opacity:0;transform:scale(.6);transition:opacity .35s,transform .35s var(--pc-ease)}
body .elementor :is(.pc-when-li:hover,.pc-when-li.is-on) .pc-ck{background:#fff;border-color:#fff;color:var(--pc-blue)}
body .elementor :is(.pc-when-li:hover,.pc-when-li.is-on) .pc-ck svg{opacity:1;transform:none}

/* ---------- Marcas de registro (cantos) ---------- */
body .elementor .pc-marks{--m:16px;pointer-events:none;opacity:.7;background:
  linear-gradient(currentColor,currentColor) left top/var(--m) 1px no-repeat,
  linear-gradient(currentColor,currentColor) left top/1px var(--m) no-repeat,
  linear-gradient(currentColor,currentColor) right top/var(--m) 1px no-repeat,
  linear-gradient(currentColor,currentColor) right top/1px var(--m) no-repeat,
  linear-gradient(currentColor,currentColor) left bottom/var(--m) 1px no-repeat,
  linear-gradient(currentColor,currentColor) left bottom/1px var(--m) no-repeat,
  linear-gradient(currentColor,currentColor) right bottom/var(--m) 1px no-repeat,
  linear-gradient(currentColor,currentColor) right bottom/1px var(--m) no-repeat}
body .elementor .pc-marks[data-size="lg"]{--m:26px}

/* ---------- Passo a passo ---------- */
body .elementor .pc-rail-fill{transform:scaleX(var(--p,0));transform-origin:left center}
body .elementor .pc-dot{transition:background .3s,border-color .3s,box-shadow .3s}
body .elementor .pc-dot-num{transition:color .3s}
body .elementor .pc-step.is-on .pc-dot{background:var(--pc-blue);border-color:var(--pc-blue);box-shadow:0 0 0 8px rgba(0,87,187,.18)}
body .elementor .pc-step.is-on .pc-dot-num{color:#fff}
body .elementor .pc-big{-webkit-text-stroke:1px #3A383C}
body .elementor .pc-big::after{content:attr(data-n);position:absolute;inset:0;color:var(--pc-blue-bright);-webkit-text-stroke:1px var(--pc-blue-bright);clip-path:inset(0 calc(100% - var(--f,0) * 100%) 0 0);-webkit-clip-path:inset(0 calc(100% - var(--f,0) * 100%) 0 0)}
body .elementor .pc-steps-cta-p span{font-family:var(--pc-sans)}
@media (max-width:1024px){
  body .elementor .pc-rail-fill{transform:scaleY(var(--p,0));transform-origin:center top}
  body .elementor .pc-step:last-child{padding-bottom:0}
}

/* ---------- Atuação técnica ---------- */
body .elementor .pc-fig-img{transition:transform 1.4s var(--pc-ease)}
body .elementor .pc-fig:hover .pc-fig-img{transform:scale(1.04)}
body .elementor .pc-pillar:nth-child(2n){padding-left:32px;padding-right:0;border-left:1px solid var(--pc-paper-line)}
body .elementor .pc-pillar-ic{--c:rgba(0,87,187,.6);--s:8px;background:
  linear-gradient(var(--c),var(--c)) left top/var(--s) 1px,linear-gradient(var(--c),var(--c)) left top/1px var(--s),
  linear-gradient(var(--c),var(--c)) right top/var(--s) 1px,linear-gradient(var(--c),var(--c)) right top/1px var(--s),
  linear-gradient(var(--c),var(--c)) left bottom/var(--s) 1px,linear-gradient(var(--c),var(--c)) left bottom/1px var(--s),
  linear-gradient(var(--c),var(--c)) right bottom/var(--s) 1px,linear-gradient(var(--c),var(--c)) right bottom/1px var(--s),
  radial-gradient(circle,rgba(0,0,0,.05) 1px,transparent 1.3px) 0 0/4px 4px;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat;
  transition:background-size .5s var(--pc-ease)}
body .elementor .pc-pillar-ic svg{transition:transform .5s var(--pc-ease)}
body .elementor .pc-pillar:hover .pc-pillar-ic{--s:12px}
body .elementor .pc-pillar:hover .pc-pillar-ic svg{transform:scale(1.08)}
@media (max-width:767px){body .elementor .pc-pillar:nth-child(2n){padding:30px 0;border-left:0}}

/* ---------- Responsáveis ---------- */
body .elementor .pc-pro-img{transform:scale(1.04);filter:saturate(.92) contrast(1.02);transition:transform 1.4s var(--pc-ease),filter .8s}
body .elementor .pc-pro:hover .pc-pro-img{transform:scale(1.08);filter:none}
body .elementor .pc-pro-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(28,27,29,.55));pointer-events:none}
body .elementor .pc-pro-tag{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body .elementor .pc-pro-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--pc-blue-bright);flex:none}
body .elementor .pc-pro-photo .pc-marks{opacity:.7}

/* ---------- CTA final ---------- */
body .elementor .pc-final{isolation:isolate}
body .elementor .pc-final::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 70% 80% at 50% 50%,rgba(28,27,29,.35),rgba(28,27,29,.92) 100%)}
body .elementor .pc-final .pc-kicker{justify-content:center}

/* ---------- Mapa ---------- */
body .elementor .pc-loc-line::after{content:"";flex:1;min-width:40px;height:1px;background:var(--pc-line)}
body .elementor .pc-map-canvas .elementor-widget-google_maps,body .elementor .pc-map-canvas .elementor-widget-container,body .elementor .pc-map-canvas .elementor-custom-embed{position:absolute;inset:0;width:100%;height:100%;margin:0}
body .elementor .pc-map-canvas iframe{position:absolute;inset:0;width:100%;height:100%!important;border:0;filter:invert(92%) hue-rotate(180deg) brightness(.92) contrast(.9) grayscale(.25)}
body .elementor .pc-map-canvas::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px rgba(0,0,0,.5)}

/* ---------- Contato ---------- */
body .elementor .pc-ct-panel::before,body .elementor .pc-ct-panel::after{content:"";position:absolute;top:auto;left:auto;border-radius:50%;z-index:-1;pointer-events:none;opacity:1;background:none}
body .elementor .pc-ct-panel::before{right:-90px;bottom:-90px;width:320px;height:320px;border:1px solid rgba(255,255,255,.16)}
body .elementor .pc-ct-panel::after{right:-30px;bottom:-30px;width:200px;height:200px;border:1px solid rgba(255,255,255,.12)}
body .elementor .pc-ct-val{overflow-wrap:anywhere}
body .elementor .pc-ct-val a{text-underline-offset:3px}
body .elementor .pc-ct-val a:hover{text-decoration:underline}
body .elementor .pc-form-note::before{content:"";width:16px;height:16px;flex:none;margin-top:2px;background:var(--pc-blue-bright);-webkit-mask:var(--pc-i-lock) center/contain no-repeat;mask:var(--pc-i-lock) center/contain no-repeat}
/* Formulário (widget Form do Elementor Pro) */
body .elementor .pc-form .elementor-field-group .elementor-field-textual{min-height:52px;padding:14px 0;line-height:1.4;box-shadow:none;transition:border-color .3s}
body .elementor .pc-form .elementor-field-textual:focus{border-color:var(--pc-blue-bright)!important;outline:0}
body .elementor .pc-form .elementor-field-textual::placeholder{color:rgba(244,242,238,.32);opacity:1}
body .elementor .pc-form .elementor-select-wrapper::before,body .elementor .pc-form .select-caret-down-wrapper{display:none}
body .elementor .pc-form select.elementor-field-textual{-webkit-appearance:none;appearance:none;cursor:pointer;padding-right:32px;background:var(--pc-i-chev) no-repeat right 4px center}
body .elementor .pc-form select option{background:var(--pc-ink-2);color:var(--pc-text)}
body .elementor .pc-form .elementor-field-group textarea.elementor-field-textual{min-height:120px;resize:vertical;line-height:1.55}
body .elementor .pc-form .elementor-field-group.elementor-error .elementor-field-textual{border-color:#E26D5C!important}
body .elementor .pc-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option{display:flex;gap:12px;align-items:flex-start}
body .elementor .pc-form .elementor-field-type-acceptance label{font-size:13.5px;line-height:1.5;color:var(--pc-muted);cursor:pointer;text-transform:none;letter-spacing:0;font-weight:400}
body .elementor .pc-form .elementor-field-type-acceptance input[type=checkbox]{-webkit-appearance:none;appearance:none;flex:none;width:20px;height:20px;margin:1px 0 0;border:1px solid rgba(255,255,255,.35)!important;border-radius:0!important;background:transparent;padding:0!important;min-height:0!important;cursor:pointer;display:grid;place-items:center;transition:background .25s,border-color .25s}
body .elementor .pc-form .elementor-field-type-acceptance input[type=checkbox]::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px) scale(0);transition:transform .25s var(--pc-ease)}
body .elementor .pc-form .elementor-field-type-acceptance input[type=checkbox]:checked{background:var(--pc-blue)!important;border-color:var(--pc-blue)!important}
body .elementor .pc-form .elementor-field-type-acceptance input[type=checkbox]:checked::after{transform:rotate(-45deg) translate(1px,-1px) scale(1)}
body .elementor .pc-form .elementor-button{min-height:56px;box-shadow:0 18px 40px -18px rgba(0,87,187,.75);transition:background .3s,color .3s,transform .3s var(--pc-ease)}
body .elementor .pc-form .elementor-button:hover{transform:translateY(-2px)}
body .elementor .pc-form .elementor-button-text{display:inline-flex;align-items:center;gap:12px}
body .elementor .pc-form .elementor-button-text::after{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--pc-i-arrow) center/contain no-repeat;mask:var(--pc-i-arrow) center/contain no-repeat;transition:transform .3s var(--pc-ease)}
body .elementor .pc-form .elementor-button:hover .elementor-button-text::after{transform:translateX(4px)}
body .elementor .pc-form .elementor-message{padding:14px 16px;border-left:2px solid var(--pc-blue-bright);background:rgba(0,87,187,.16);font-size:14px;margin-top:16px}
body .elementor .pc-form .elementor-message::before{display:none}

/* ---------- Rodapé ---------- */
body .elementor .pc-ft-link,body .elementor .pc-ft-ig{transition:color .25s}
body .elementor .pc-ft-bot a{all:revert;color:var(--pc-muted);text-decoration:none;border-bottom:1px solid var(--pc-line);transition:color .25s}
body .elementor .pc-ft-bot a:hover{color:#fff}
body .elementor .pc-fab{transform:translateY(120px);transition:transform .5s var(--pc-ease)}
body .elementor .pc-fab.is-shown{transform:none}

/* ---------- Revelação no scroll (ativada pelo script; sem JS tudo aparece) ---------- */
.pc-js .pc-rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--pc-ease),transform .9s var(--pc-ease)}
.pc-js .pc-rv-t{opacity:0;transform:translateY(22px);filter:blur(4px);transition:opacity 1s var(--pc-ease),transform 1s var(--pc-ease),filter 1s var(--pc-ease)}
.pc-js .pc-rv.pc-in,.pc-js .pc-rv-t.pc-in{opacity:1;transform:none;filter:none}

/* Hero: sem esconder o conteúdo (melhor LCP) — só um leve movimento de entrada em CSS */
.pc-js .pc-hero :is(.pc-rv,.pc-rv-t){opacity:1;filter:none;transform:none;transition:none;animation:pc-rise .9s var(--pc-ease) both}
.pc-js .pc-hero-copy>:nth-child(2){animation-delay:.06s}
.pc-js .pc-hero-copy>:nth-child(3){animation-delay:.12s}
.pc-js .pc-hero-copy>:nth-child(4){animation-delay:.18s}
.pc-js .pc-hero-copy>:nth-child(5){animation-delay:.24s}
.pc-js .pc-hero-copy>:nth-child(6){animation-delay:.3s}
.pc-js .pc-hero-copy>:nth-child(7){animation-delay:.36s}
.pc-js .pc-hero .pc-facts{animation-delay:.42s}
@keyframes pc-rise{from{transform:translateY(18px)}to{transform:none}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .pc-js .pc-rv,.pc-js .pc-rv-t{opacity:1;transform:none;filter:none}
}/* End custom CSS */