/* Soxcess — base visual (gerado). Fontes + base do documento. */
@font-face{font-family:"Polymath Display";font-style:normal;font-weight:300;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-display-300.woff2") format("woff2")}
@font-face{font-family:"Polymath Display";font-style:normal;font-weight:700;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-display-700.woff2") format("woff2")}
@font-face{font-family:"Polymath Display";font-style:normal;font-weight:800;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-display-800.woff2") format("woff2")}
@font-face{font-family:"Polymath Text";font-style:normal;font-weight:400;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-text-400.woff2") format("woff2")}
@font-face{font-family:"Polymath Text";font-style:normal;font-weight:500;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-text-500.woff2") format("woff2")}
@font-face{font-family:"Polymath Text";font-style:normal;font-weight:600;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-text-600.woff2") format("woff2")}
@font-face{font-family:"Polymath Text";font-style:normal;font-weight:700;font-display:swap;src:url("../../uploads/soxcess/fonts/polymath-text-700.woff2") format("woff2")}
@font-face{font-family:"Pretty Hearty";font-style:normal;font-weight:400;font-display:swap;src:url("../../uploads/soxcess/fonts/pretty-hearty-400.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:300;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-300-normal.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:400;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:500;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:600;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:700;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Urbanist";font-style:normal;font-weight:800;font-display:swap;src:url("../../uploads/soxcess/fonts/urbanist-latin-800-normal.woff2") format("woff2")}
:root{--linha:rgba(0,53,59,.14);--linha-clara:rgba(225,223,221,.18);--f:var(--f-corpo);--f-d:var(--f-display);--max:1200px;--gutter:clamp(20px,4vw,40px);--nav-h:72px;--ease:cubic-bezier(.2,.7,.1,1)}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px);overflow-x:clip}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--f-corpo);font-size:17px;line-height:1.6;font-weight:500;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--dourado);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--f-display);text-wrap:balance}
.gold{color:var(--dourado-300)}.gold-d{color:var(--dourado)}.script{font-family:var(--f-script);font-weight:400;letter-spacing:0;font-style:normal}
@media (max-width:640px){body{font-size:16px}}
:root{--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='2.2' stroke-linecap='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");--i-wa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M12.04 2a9.9 9.9 0 0 0-8.5 14.9L2 22l5.25-1.5A9.9 9.9 0 1 0 12.04 2zm0 1.8a8.1 8.1 0 1 1-4.2 15.04l-.3-.18-3.1.9.92-3-.2-.32A8.1 8.1 0 0 1 12.04 3.8zM8.6 7.5c-.2 0-.5.07-.75.35-.25.27-.97.95-.97 2.3s1 2.7 1.13 2.88c.14.18 1.9 3.02 4.7 4.1 2.3.9 2.77.72 3.27.67.5-.05 1.6-.65 1.83-1.28.22-.63.22-1.17.15-1.28-.07-.12-.25-.18-.52-.32-.27-.13-1.6-.8-1.85-.88-.25-.1-.43-.13-.6.13-.18.27-.7.88-.86 1.06-.16.18-.32.2-.6.07-.27-.14-1.15-.42-2.2-1.35-.8-.72-1.35-1.6-1.5-1.87-.16-.27-.02-.42.12-.55.12-.12.27-.32.4-.48.14-.16.18-.27.27-.45.1-.18.05-.34-.02-.48-.07-.13-.6-1.47-.84-2-.2-.48-.43-.5-.6-.5z'/%3E%3C/svg%3E");--i-chev: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.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--i-ig: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.9'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.4' cy='6.6' r='.7' fill='%23000' stroke='none'/%3E%3C/svg%3E");--i-in:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M6.9 8.8H3.5V20h3.4V8.8zM5.2 3.5a2 2 0 100 4 2 2 0 000-4zM20.5 13.6c0-3.2-1.7-4.9-4.1-4.9-1.9 0-2.8 1-3.2 1.8V8.8H9.8V20h3.4v-5.6c0-1.5.3-2.9 2.1-2.9s1.8 1.7 1.8 3V20h3.4v-6.4z'/%3E%3C/svg%3E");--i-pin: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.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.2 7-11.5A7 7 0 0 0 5 9.5C5 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");--i-phone: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.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");--i-mail: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.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3.5 7 8.5 6 8.5-6'/%3E%3C/svg%3E")}
/* ===== Soxcess: regras contextuais do design system =====
   Estilos de cada componente ficam nas Classes Globais do Elementor (mesmo nome das classes abaixo).
   Aqui ficam só regras que o editor de classes não expressa: descendentes, pseudo-elementos,
   estados de interação, ícones e o menu. Tudo prefixado com .elementor para vencer os estilos base. */

*,*::before,*::after{box-sizing:border-box}
.elementor img{max-width:100%}
.elementor :is(h1,h2,h3,h4){margin:0;font-family:var(--f-display);text-wrap:balance}
.elementor :is(h1,h2,h3,h4) b{color:var(--dourado-300);font-weight:inherit}
.elementor :is(h1,h2,h3,h4) strong{color:var(--dourado);font-weight:inherit}
.elementor :is(h1,h2,h3,h4,p) em{font-family:var(--f-script);font-weight:400;letter-spacing:0;font-style:normal}
.elementor .dark .kicker,.elementor .how .kicker,.elementor .how2 .kicker,.elementor .final .kicker,.elementor .nl .kicker,.elementor .alert .kicker{color:var(--dourado-300)}
.elementor .dark .lead,.elementor .how2 .lead,.elementor .nl .lead{color:var(--sobre-verde)}

/* ícones (máscaras) */
.elementor .has-arrow::after,.elementor .card-go::after{content:"";width:17px;height:17px;flex:none;background:currentColor;-webkit-mask:var(--i-arrow) center/contain no-repeat;mask:var(--i-arrow) center/contain no-repeat;transition:transform .25s var(--ease)}
.elementor .has-arrow:hover::after{transform:translateX(3px)}
.elementor .has-wa::before{content:"";width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--i-wa) center/contain no-repeat;mask:var(--i-wa) center/contain no-repeat}
.elementor .wa-btn.has-wa::before{width:22px;height:22px}
.elementor .has-chev::after{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:var(--i-chev) center/contain no-repeat;mask:var(--i-chev) center/contain no-repeat;transition:transform .25s var(--ease)}
.elementor .has-sub:hover .has-chev::after,.elementor .has-sub:focus-within .has-chev::after{transform:rotate(180deg)}

/* header */
.elementor .nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px}
.elementor .nav-logo img{height:34px;width:auto}
.elementor .nav-links a{padding-block:6px;border-bottom:1.5px solid transparent;transition:color .2s,border-color .2s}
.elementor .nav-links a:hover,.elementor .nav-links a.on{color:var(--bege);border-color:var(--dourado)}
.elementor .nav-links a.on{color:var(--dourado-300)}
.elementor .nav .btn{padding:10px 18px;font-size:.88rem}
.elementor .nav-sub::before{content:"";position:absolute;inset:6px 0 0 0;background:var(--verde-900);border:1px solid var(--linha-clara);border-radius:10px;z-index:-1;box-shadow:0 24px 50px -20px rgba(0,0,0,.6)}
.elementor .has-sub:hover .nav-sub,.elementor .has-sub:focus-within .nav-sub{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .25s var(--ease)}
.elementor .nav-sub a{display:block;padding:11px 16px;border-radius:6px;border-bottom:0!important;color:var(--sobre-verde);font-size:.95rem}
.elementor .nav-sub a:hover{background:rgba(225,223,221,.08);color:var(--bege)}
.elementor .burger .burger-bar{position:absolute;left:13px;right:13px;height:1.6px;background:var(--bege);transition:transform .3s var(--ease),opacity .2s}
.elementor .burger .burger-bar:nth-child(1){top:16px}
.elementor .burger .burger-bar:nth-child(2){top:21px}
.elementor .burger .burger-bar:nth-child(3){top:26px}
.elementor .burger[aria-expanded="true"] .burger-bar:nth-child(1){transform:translateY(5px) rotate(45deg)}
.elementor .burger[aria-expanded="true"] .burger-bar:nth-child(2){opacity:0}
.elementor .burger[aria-expanded="true"] .burger-bar:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
.elementor .drawer.is-open{opacity:1;transform:none;visibility:visible;transition:opacity .25s,transform .3s var(--ease)}
.elementor .drawer .btn{margin-top:26px;width:100%}
.elementor .drawer .btn + .btn{margin-top:12px}
.elementor .dsub a{padding:9px 0;color:var(--sobre-verde);font-size:1.02rem;font-weight:500}
@media (max-width:1180px){
  .elementor .nav-links,.elementor .nav-cta .btn,.elementor .nav-client{display:none}
  .elementor .nav .burger{display:block}
  .elementor .mbar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:90;padding:10px clamp(20px,4vw,40px) calc(10px + env(safe-area-inset-bottom,0px));background:var(--verde-900);border-top:1px solid var(--linha-clara)}
  .elementor .mbar .btn{padding:13px 10px;font-size:.9rem;white-space:normal;text-align:center;line-height:1.15}
  body{padding-bottom:76px}
  body.sx-lock .elementor .mbar{display:none}
}
@media (min-width:1181px){.elementor .drawer{display:none}}
body.sx-lock{overflow:hidden}
/* header fixo: o Theme Builder envolve o header; o sticky vai no wrapper */
.elementor-location-header{position:sticky;top:0;z-index:100}
.admin-bar .elementor-location-header{top:32px}

/* marcadores */
.elementor .marks .t-li{display:flex;align-items:center;gap:10px}
.elementor .marks .t-li::before,.elementor .reasons .t-li::before,.elementor .checks .t-li::before,.elementor .doc .t-li::before{content:"";width:10px;height:10px;background:var(--dourado-300);border-radius:10px 0 0 0;flex:none}
.elementor .reasons .t-li{padding:14px 0;border-bottom:1px solid var(--linha-clara);color:var(--bege);font-weight:600;display:flex;gap:12px;align-items:flex-start}
.elementor .reasons .t-li::before{margin-top:8px}

/* hero */
.elementor .hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,72px);align-items:center;padding-block:clamp(48px,7vw,96px)}
.elementor .hero h1 b{display:block}
.elementor .hero h1 em{display:block;font-size:1.05em;line-height:1.1;color:var(--bege);margin-top:.16em;font-weight:400;word-spacing:-.06em}
.elementor .hero .lead{color:var(--sobre-verde);margin-top:30px;max-width:54ch}
.elementor .mosaic{display:block;width:100%;height:auto}
.elementor .hero-mosaic{object-fit:cover}
.elementor svg.mosaic .tile-shape{transition:transform 1.1s var(--ease);transform-box:view-box;transform-origin:50px 50px}
.elementor .hero-seal::before{content:"";position:absolute;inset:-6px;border-radius:50%;background:var(--verde-900);z-index:-1}
.elementor .hero-seal img{width:46px;height:auto}
.elementor .phero .wrap{padding-block:clamp(44px,6vw,80px)}
.elementor .phero .h1{font-size:clamp(2.1rem,4.6vw,3.7rem)}
.elementor .phero .kicker{color:var(--dourado-300)}
.elementor .phero .hero-mosaic{max-width:400px;margin-left:auto}
.elementor .phero .hero-art{align-self:center}

/* números */
.elementor .nums .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.elementor .nums .wrap>div{padding:34px 24px;border-left:1px solid var(--linha)}
.elementor .nums .wrap>div:first-child{border-left:0;padding-left:0}
.elementor .nums .t-b{display:block;font-family:var(--f-display);font-weight:800;font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.01em;line-height:1;color:var(--verde)}
.elementor .nums .t-b sup{font-size:.4em;color:var(--dourado);margin-left:3px;vertical-align:top;position:relative;top:.3em;font-weight:700}
.elementor .nums .t-span{display:block;margin-top:10px;font-size:.93rem;color:var(--tinta-2);line-height:1.4}

/* split / comparação */
.elementor .split .h2{margin-bottom:22px}
.elementor .split p+p{margin-top:16px}
.elementor .split .lead{color:var(--tinta-2)}
.elementor .dark .split .lead{color:var(--sobre-verde)}
.elementor .split.rev>div:first-child{order:2}
.elementor .cmp>div{padding:22px 24px;min-width:0}
.elementor .cmp .t-small{display:block;font-family:var(--f-corpo);font-weight:700;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
.elementor .cmp .cmp-old .t-small{color:var(--bordo)}
.elementor .cmp .cmp-new .t-small{color:var(--dourado-300)}
.elementor .cmp p{font-size:1rem;line-height:1.45;font-weight:500}

/* como funciona */
.elementor .how-head p{color:var(--sobre-verde);margin-top:18px}
.elementor .how-head p:last-child{margin-top:0;padding-bottom:.4em;max-width:52ch}
.elementor .how-head .hh-k{grid-column:1/-1;margin-bottom:0;margin-top:0}
.elementor .how .h2,.elementor .how2 .h2{color:var(--bege)}
.elementor .step+.step{padding-left:30px;border-left:1px solid var(--linha-clara)}
.elementor .step .step-n{display:block;font-family:var(--f-display);font-weight:300;font-size:3.6rem;line-height:1;letter-spacing:-.04em;color:var(--dourado-300);margin-bottom:22px}
.elementor .step h3{font-weight:800;font-size:1.3rem;letter-spacing:0;word-spacing:.14em;line-height:1.22;margin-bottom:10px}
.elementor .step p{color:var(--sobre-verde);font-size:.98rem}
.elementor .steps.steps-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.elementor .steps.steps-4 .step{padding-right:22px}
.elementor .steps.steps-4 .step+.step{padding-left:22px}

/* cards */
.elementor .card h3{font-weight:800;font-size:1.25rem;letter-spacing:0;word-spacing:.14em;line-height:1.22}
.elementor .card p{color:var(--tinta-2);font-size:.97rem}
.elementor .card .card-go{margin-top:auto;padding-top:10px;font-weight:700;font-size:.92rem;color:var(--verde);display:inline-flex;gap:8px;align-items:center}
.elementor .card .card-go::after{width:16px;height:16px}
.elementor .card:hover .card-go::after{transform:translateX(4px)}
.elementor .card .card-tile{width:52px;height:52px;margin-bottom:8px;flex:none}
.elementor .card-big p{color:var(--sobre-verde);max-width:40ch}
.elementor .card-big .card-go{color:var(--dourado-300)}
.elementor .card-big h3{font-size:clamp(1.6rem,2.8vw,2.3rem);font-weight:800;letter-spacing:-.005em;line-height:1.08;word-spacing:.12em;color:var(--dourado-300)}
.elementor .card-big .mosaic{position:absolute;top:0;right:0;width:36%;aspect-ratio:1;object-fit:cover}
.elementor .card-big .tile-txt{position:relative;z-index:1;max-width:58%}
.elementor .card-big .kicker{color:var(--sobre-verde)}
.elementor .card-chan p{word-break:break-word}

/* depoimentos */
.elementor .voices-head p{margin-top:16px;color:var(--tinta-2)}
.elementor .voice .t-quote{margin:0;font-size:1.08rem;line-height:1.55}
.elementor .voice .t-cite{font-style:normal;font-size:.88rem;color:var(--tinta-3);margin-top:auto;display:block}
.elementor .voice .t-cite b{display:block;color:var(--tinta);font-weight:700;font-size:.95rem}
.elementor .voice-a .t-quote{font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:600;letter-spacing:-.015em;line-height:1.3}
.elementor .voice-a .t-cite{color:var(--sobre-verde)}
.elementor .voice-a .t-cite b{color:var(--dourado-300)}
.elementor .voice-b .t-quote{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:700;line-height:1.3;color:var(--verde)}

/* reforma */
.elementor .alert .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center}
.elementor .alert .h2{color:var(--dourado-300)}
.elementor .alert .h2 em{display:block;color:var(--bege);font-size:1.05em;line-height:1.15;margin-top:.22em;margin-bottom:.1em;font-weight:400;word-spacing:-.06em}
.elementor .alert p{color:var(--sobre-verde);margin-top:26px;max-width:50ch}
.elementor .alert .btn{margin-top:28px}
.elementor .callout .t-small{font-family:var(--f-corpo);font-weight:700;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dourado-300)}
.elementor .callout p{margin-top:12px;color:var(--bege);font-weight:500;font-size:1.05rem;max-width:none}
.elementor .callout .pill-w{display:block;background:var(--branco);color:var(--verde);border-radius:999px;padding:11px 20px;font-weight:600;font-size:.92rem;margin-top:10px;line-height:1.3}

/* FAQ (accordion nativo <details>) */
.elementor .faq-side p{margin-top:18px;color:var(--tinta-2)}
.elementor .faq-side .btn{margin-top:26px}
.elementor .faq-list .faq-qa:last-child{border-bottom:1px solid var(--linha)}
.elementor .faq-list summary{list-style:none}
.elementor .faq-list summary::-webkit-details-marker{display:none}
.elementor .faq-list summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;border:1px solid var(--linha);background:linear-gradient(currentColor,currentColor) center/10px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 10px no-repeat;transition:background-color .3s,color .3s}
.elementor .faq-list details[open] summary::after{background:linear-gradient(var(--bege),var(--bege)) center/10px 1.5px no-repeat var(--verde);border-color:var(--verde)}

/* contato final + formulários */
.elementor .final .h2{font-size:clamp(2.1rem,4.6vw,3.5rem);font-weight:800;letter-spacing:-.01em;color:var(--dourado-300)}
.elementor .final .h2 em,.elementor .nl .h2 em{display:block;color:var(--bege);font-weight:400;font-size:1.05em;line-height:1.15;margin-top:.22em;word-spacing:-.06em}
.elementor .final .lead{color:var(--sobre-verde);margin-top:22px}
.elementor .form h3{font-size:1.4rem;font-weight:800;letter-spacing:0;word-spacing:.14em}
.elementor .form .form-sub{font-size:.92rem;color:var(--tinta-2);margin-top:-8px}
.elementor .field label{font-size:.82rem;font-weight:600;color:var(--tinta-2)}
.elementor .field :is(input,select){width:100%;height:auto;border:1px solid var(--linha);background-color:var(--papel);border-radius:8px;padding:13px 14px;font-size:1rem;color:var(--tinta);font-family:inherit}
.elementor .field select{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300353b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;cursor:pointer}
.elementor .field input::placeholder{color:var(--tinta-3);opacity:.7}
.elementor .field :is(input,select):focus{outline:none;border-color:var(--verde);background-color:var(--branco);box-shadow:0 0 0 3px rgba(0,53,59,.12)}
.elementor .form .btn{margin-top:4px;width:100%}
.elementor form.form{align-items:stretch}
.elementor .form .form-sub{align-self:stretch}
.elementor .form .form-done h3{font-size:1.4rem;font-weight:800;word-spacing:.14em}
.elementor .form .form-done p{color:var(--tinta-2)}

/* footer */
.elementor .footer .mosaic-strip{height:48px;object-fit:cover}
.elementor .ft img{height:38px;width:auto;margin-bottom:16px}
.elementor .ft p{max-width:34ch}
.elementor .ft h4{margin:0 0 14px;font-family:var(--f-corpo);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dourado-300);font-weight:500}
.elementor .ft .t-list{display:flex;flex-direction:column;gap:9px}
.elementor .ft a:hover{color:var(--bege)}
.elementor .dev a{display:inline-flex}
.elementor .dev img{height:28px;width:auto;opacity:.95;margin:0}
.elementor .social a{width:42px;height:42px;border:1px solid var(--linha-clara);border-radius:50%;display:grid;place-items:center;color:var(--bege);transition:background .2s,border-color .2s,color .2s}
.elementor .social a:hover{background:var(--dourado);border-color:var(--dourado);color:var(--branco)}
.elementor .social a::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.elementor .ico-wa{--ico:var(--i-wa)}.elementor .ico-ig{--ico:var(--i-ig)}.elementor .ico-in{--ico:var(--i-in)}
.elementor .cl .t-li{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;line-height:1.45}
.elementor .cl .t-li::before{content:"";position:static;inset:auto;display:block;width:19px;height:19px;margin-top:2px;background:var(--dourado-300);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.elementor .cl-pin{--ico:var(--i-pin)}.elementor .cl-phone{--ico:var(--i-phone)}.elementor .cl-wa{--ico:var(--i-wa)}.elementor .cl-mail{--ico:var(--i-mail)}
.elementor .cl a:hover{color:var(--bege);text-decoration:underline;text-underline-offset:3px}

/* páginas internas */
.elementor .checks .t-li{background:var(--branco);border:1px solid var(--linha);border-radius:10px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start;font-weight:600;line-height:1.4;min-width:0}
.elementor .checks .t-li::before{margin-top:7px;background:var(--dourado)}
.elementor .val h3{font-weight:800;font-size:1.15rem;word-spacing:.14em;line-height:1.22;margin-bottom:8px}
.elementor .val p{color:var(--tinta-2);font-size:.97rem}
.elementor .ph .mosaic{display:block}
.elementor .ph p{position:absolute;left:0;right:0;bottom:0;padding:14px 18px;background:rgba(0,38,42,.88);color:var(--bege);font-size:.82rem;font-weight:600}
.elementor .ph.ph-light p{background:rgba(0,53,59,.9)}
.elementor .topic h3{font-weight:800;font-size:1.2rem;word-spacing:.14em;line-height:1.22;margin-bottom:10px;color:var(--verde)}
.elementor .topic p{color:var(--tinta-2);font-size:.97rem}
.elementor .doc h3{font-weight:800;font-size:1.12rem;word-spacing:.14em;line-height:1.22;margin-bottom:14px;color:var(--verde)}
.elementor .doc .t-li{display:flex;gap:12px;padding:9px 0;border-top:1px solid var(--linha);font-size:.96rem;color:var(--tinta-2);line-height:1.4}
.elementor .doc .t-li::before{width:8px;height:8px;margin-top:7px;background:var(--dourado);border-radius:8px 0 0 0}
.elementor .tbl :is(.tbl-th,.tbl-tr){display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.elementor .tbl.cols-2 :is(.tbl-th,.tbl-tr){grid-template-columns:repeat(2,minmax(0,1fr))}
.elementor .tbl.cols-4 :is(.tbl-th,.tbl-tr){grid-template-columns:repeat(4,minmax(0,1fr))}
.elementor .tbl .tbl-th{background:var(--verde);color:var(--bege);font-weight:800}
.elementor .tbl :is(.tbl-th,.tbl-tr)>p{padding:16px 20px;min-width:0;line-height:1.4}
.elementor .tbl .tbl-tr{border-top:1px solid var(--linha)}
.elementor .tbl .tbl-tr>p:first-child{font-weight:700;color:var(--verde);background:var(--papel)}
.elementor .tbl .tbl-tr>p+p{border-left:1px solid var(--linha);color:var(--tinta-2)}
.elementor .tbl .tbl-tr>p>span:first-child{display:none}

/* responsivo */
@media (max-width:1020px){
  .elementor .hero .wrap,.elementor .alert .wrap{grid-template-columns:1fr}
  .elementor .hero-seal img{width:38px}
  .elementor .nums .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .elementor .nums .wrap>div:nth-child(3){border-left:0;padding-left:0}
  .elementor .nums .wrap>div:nth-child(n+3){border-top:1px solid var(--linha)}
  .elementor .step,.elementor .step+.step{padding:28px 0;border-left:0;border-top:1px solid var(--linha-clara)}
  .elementor .step:first-child{border-top:0}
  .elementor .steps.steps-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .elementor .steps.steps-4 .step{padding:28px 22px 8px 0;border-top:0}
  .elementor .steps.steps-4 .step:nth-child(even){padding-left:22px;border-left:1px solid var(--linha-clara)}
  .elementor .steps.steps-4 .step:nth-child(n+3){border-top:1px solid var(--linha-clara);margin-top:24px}
  .elementor .ft>div:first-child{grid-column:span 2}
  .elementor .split.rev>div:first-child{order:0}
}
@media (max-width:860px){.elementor .how-head{grid-template-columns:1fr;row-gap:14px}}
@media (max-width:700px){
  .elementor .steps.steps-4{grid-template-columns:1fr}
  .elementor .steps.steps-4 .step{border-left:0!important;padding-left:0!important}
  .elementor .steps.steps-4 .step+.step{border-top:1px solid var(--linha-clara);margin-top:24px}
  .elementor .tbl .tbl-th{display:none}
  .elementor .tbl :is(.tbl-th,.tbl-tr){grid-template-columns:1fr!important}
  .elementor .tbl .tbl-tr>p{border-left:0!important}
  .elementor .tbl .tbl-tr>p>span:first-child{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dourado);font-weight:700;margin-bottom:4px}
  .elementor .phero .hero-mosaic{max-width:300px;margin:0}
}
@media (max-width:640px){
  .elementor .hero-ctas .btn{flex:1 1 100%}
  .elementor .card-big .mosaic{width:160px}
  .elementor .card-big .tile-txt{max-width:none}
  .elementor .faq-list .faq-body{padding-right:0}
  .elementor .ft>div:first-child{grid-column:auto}
  .elementor .nums .wrap>div{padding:26px 14px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
