/* KFT Site Kit: CSS gerado. Camada 1: componentes personalizados do protótipo. Camada 2: widgets nativos do Elementor. */
body.kft .btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:12px;font:700 17px/1 var(--f-tit);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;padding:18px 28px;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .25s var(--ease),background .25s,border-color .25s,box-shadow .25s;min-height:52px;will-change:transform}
body.kft .btn svg{width:18px;height:18px;transition:transform .25s var(--ease)}
body.kft .btn:hover svg{transform:translateX(5px)}
body.kft .btn-pri{background:var(--vinho);color:#fff;box-shadow:0 10px 30px -10px rgba(158,49,52,.7)}
body.kft .btn-pri::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease)}
body.kft .btn-pri:hover::after{transform:translateX(120%)}
body.kft .btn-pri:hover{background:var(--vinho-vivo)}
body.kft .btn-wa{background:#16803f;color:#fff}
body.kft .btn-wa:hover{background:#12662f}
@keyframes kft-float{50%{transform:translate(40px,30px) scale(1.12)}}
@keyframes kft-shine{to{background-position:-200% 0}}
@keyframes kft-fadeup{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
body.kft .xray{perspective:1100px}
body.kft .xray-card{position:relative;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:22px 22px 18px;backdrop-filter:blur(8px);box-shadow:0 40px 80px -30px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.1);transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .15s ease-out;transform-style:preserve-3d;opacity:0;animation:kft-fadeup 1s var(--ease) .5s forwards}
body.kft .xray-bar{display:flex;justify-content:space-between;align-items:center;font:600 11px var(--f-txt);letter-spacing:.14em;text-transform:uppercase;color:#b0b0b2;margin-bottom:6px}
body.kft .xray-bar i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#6fd08c;margin-right:8px;box-shadow:0 0 0 0 rgba(111,208,140,.7);animation:kft-ping 2s infinite}
@keyframes kft-ping{70%{box-shadow:0 0 0 10px rgba(111,208,140,0)}100%{box-shadow:0 0 0 0 rgba(111,208,140,0)}}
body.kft .xray svg{width:100%;height:auto;display:block;overflow:visible}
body.kft .draw{stroke-dasharray:1400;stroke-dashoffset:1400;animation:kft-draw 2.6s cubic-bezier(.4,0,.2,1) forwards}
body.kft .d2{animation-delay:.3s}
body.kft .d3{animation-delay:.6s}
body.kft .d4{animation-delay:.9s}
@keyframes kft-draw{to{stroke-dashoffset:0}}
body.kft .fade{opacity:0;animation:kft-fade .8s ease 1.9s forwards}
@keyframes kft-fade{to{opacity:1}}
body.kft .rodg{animation:kft-rod 5.5s cubic-bezier(.45,0,.55,1) 3s infinite alternate}
@keyframes kft-rod{from{transform:translateX(-62px)}to{transform:translateX(78px)}}
body.kft .oil circle{fill:#e0797c;opacity:0;animation:kft-oil 2.4s linear infinite}
@keyframes kft-oil{0%{opacity:0;transform:translateX(0)}20%{opacity:.9}100%{opacity:0;transform:translateX(70px)}}
body.kft .scan{animation:kft-scan 4.5s ease-in-out 2.4s infinite}
@keyframes kft-scan{0%,100%{transform:translateX(0);opacity:0}10%{opacity:.9}50%{transform:translateX(470px);opacity:.9}60%{opacity:0}}
body.kft .pin{cursor:pointer}
body.kft .pin .halo{transform-origin:center;transform-box:fill-box;animation:kft-pulse 2.2s infinite}
@keyframes kft-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.4);opacity:0}}
body.kft .xray-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
body.kft .xray-legend button{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);color:#e4e4e4;border-radius:12px;padding:12px;text-align:left;font:500 12.5px/1.35 var(--f-txt);cursor:pointer;transition:.25s var(--ease)}
body.kft .xray-legend button b{display:block;font:700 13px var(--f-txt);color:#fff;margin-bottom:3px}
body.kft .xray-legend button b span{color:var(--vinho-claro);margin-right:6px}
body.kft .xray-legend button:hover,body.kft .xray-legend button.on{background:rgba(158,49,52,.28);border-color:#e0797c;transform:translateY(-3px)}
@keyframes kft-wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media(max-width:940px){body.kft .xray-legend{grid-template-columns:1fr}}
@keyframes kft-marq{to{transform:translateX(-50%)}}
body.kft .cmp{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:16/8.4;background:#fff;user-select:none;touch-action:pan-y;border:1px solid #3b3339}
body.kft .cmp .a,body.kft .cmp .b{position:absolute;inset:0}
body.kft .cmp .a{display:grid;place-items:center;background:#fff}
body.kft .cmp .a img{height:82%;width:auto;object-fit:contain}
body.kft .cmp .b{background:#0d2231;clip-path:inset(0 0 0 var(--p,50%))}
body.kft .cmp .b svg{width:100%;height:100%;display:block}
body.kft .cmp .tag{position:absolute;top:12px;font:700 11px var(--f-txt);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;border-radius:999px;z-index:3}
body.kft .cmp .ta{left:12px;background:var(--grafite);color:#fff}
body.kft .cmp .tb{right:12px;background:var(--ambar);color:#1b161c}
body.kft .cmp .hd{position:absolute;top:0;bottom:0;left:var(--p,50%);width:3px;background:var(--ambar);z-index:4;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 20px rgba(241,178,74,.7)}
body.kft .cmp .hd i{position:absolute;top:50%;left:50%;width:46px;height:46px;transform:translate(-50%,-50%);border-radius:50%;background:var(--ambar);display:grid;place-items:center;color:#1b161c;font:800 16px var(--f-txt);font-style:normal}
body.kft .cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:5;margin:0}
body.kft .hint{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ambar);margin-top:14px;font-weight:600}
body.kft .hint svg{width:16px;height:16px;animation:kft-nudge 1.6s infinite}
@keyframes kft-nudge{50%{transform:translateX(6px)}}
body.kft .counter{display:flex;align-items:flex-end;gap:18px;margin-bottom:18px}
body.kft .counter .n{font:italic 800 clamp(90px,12vw,170px)/.8 var(--f-tit);letter-spacing:-.04em}
body.kft .counter .l{font:700 18px/1.1 var(--f-tit);letter-spacing:.16em;text-transform:uppercase;padding-bottom:10px}
body.kft .dayline{margin-top:14px;font:600 13px var(--f-txt);letter-spacing:.1em;text-transform:uppercase;color:#f0c7c8;display:flex;gap:14px;align-items:center}
body.kft .dayline b{font:800 28px var(--f-tit);color:#fff}
@media(prefers-reduced-motion:reduce){body.kft .xray-card{opacity:1;transform:none}body.kft .draw{stroke-dashoffset:0}body.kft .fade{opacity:1}}
body.kft .gauge{max-width:300px;margin:0 auto;position:relative}
body.kft .gauge svg{width:100%;height:auto;display:block;overflow:visible}
body.kft .needle{transform-origin:150px 150px;animation:kft-needle 7s cubic-bezier(.5,0,.3,1) infinite}
@keyframes kft-needle{0%{transform:rotate(-78deg)}18%{transform:rotate(-30deg)}30%{transform:rotate(-38deg)}55%{transform:rotate(28deg)}68%{transform:rotate(20deg)}85%{transform:rotate(26deg)}100%{transform:rotate(-78deg)}}
body.kft .gauge .ok{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%) scale(.6);opacity:0;background:#1f9a56;color:#fff;border-radius:999px;padding:7px 16px;font:700 12px var(--f-txt);letter-spacing:.1em;text-transform:uppercase;animation:kft-okp 7s infinite}
@keyframes kft-okp{0%,60%{opacity:0;transform:translateX(-50%) scale(.6)}70%,92%{opacity:1;transform:translateX(-50%) scale(1)}100%{opacity:0}}
body.kft .card-form{background:#fff;border:1px solid var(--linha);border-radius:26px;padding:clamp(24px,3.4vw,44px);box-shadow:0 40px 80px -50px rgba(0,0,0,.5)}
body.kft .card-form h2{font-size:clamp(34px,4vw,46px);margin-bottom:6px}
body.kft .fld{display:grid;gap:6px;margin-bottom:16px}
body.kft .fld>label,body.kft .fld>span.l{font:600 13px var(--f-txt)}
body.kft .fld input,body.kft .fld textarea{font:400 16px var(--f-txt);padding:14px 16px;border:1.5px solid #cecece;border-radius:12px;background:#fff;width:100%;min-height:50px;transition:.2s}
body.kft .fld textarea{min-height:120px;resize:vertical}
body.kft .fld input:focus,body.kft .fld textarea:focus{outline:none;border-color:var(--vinho);box-shadow:0 0 0 4px rgba(130,32,34,.16)}
body.kft .fld.err input,body.kft .fld.err textarea{border-color:#c0392b;background:#fff6f5}
body.kft .fld .em{display:none;color:#b3261e;font-size:13px;font-weight:600}
body.kft .fld.err .em{display:block}
body.kft .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:700px){body.kft .row2{grid-template-columns:1fr}}
body.kft .opts{display:flex;flex-wrap:wrap;gap:10px}
body.kft .opts input{position:absolute;opacity:0;pointer-events:none}
body.kft .opts label{padding:12px 18px;border:1.5px solid #cecece;border-radius:999px;cursor:pointer;font-weight:600;font-size:14px;transition:.2s}
body.kft .opts input:checked+label{background:var(--vinho);border-color:var(--vinho);color:#fff;transform:scale(1.04)}
body.kft .opts input:focus-visible+label{outline:3px solid var(--ambar);outline-offset:2px}
body.kft .opts label:hover{border-color:var(--vinho)}
body.kft .file{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px dashed #bababa;border-radius:12px;cursor:pointer;color:var(--mudo);font-size:14px;transition:.2s}
body.kft .file:hover{border-color:var(--vinho);color:var(--vinho)}
body.kft .file input{display:none}
body.kft .opt-tag{font-weight:400;color:var(--mudo)}
body.kft .okpanel{display:none;text-align:center;padding:30px 10px}
body.kft .okpanel.show{display:block;animation:kft-fadeup .6s var(--ease)}
body.kft .okpanel .big-ok{width:92px;height:92px;border-radius:50%;background:#1f9a56;margin:0 auto 22px;display:grid;place-items:center}
body.kft .okpanel .big-ok svg{width:48px;height:48px;color:#fff;stroke-dasharray:60;stroke-dashoffset:60;animation:kft-dash .7s .3s forwards}
@keyframes kft-dash{to{stroke-dashoffset:0}}
body.kft .okpanel h3{font-size:36px;margin-bottom:10px}
body.kft .okpanel p{color:var(--mudo);max-width:46ch;margin:0 auto 10px}
body.kft .sidecard{border-radius:22px;padding:26px;border:1px solid var(--linha);background:#fff}
body.kft .sidecard.dk{background:var(--grafite);color:#fff;border-color:var(--grafite)}
body.kft .sidecard.dk p{color:#c9c9c9}
body.kft .sidecard h3{font-size:26px;margin-bottom:10px}
body.kft .g3{list-style:none;display:grid;gap:12px}
body.kft .g3 li{display:flex;gap:12px;align-items:center;font-weight:600}
body.kft .g3 li svg{flex:none;width:36px;height:36px;padding:8px;border-radius:12px;background:rgba(31,154,86,.12);color:#1f9a56}
body.kft .sidecard .btn{width:100%;justify-content:center;margin-top:12px}
body.kft .hours{font-size:14px;color:var(--mudo);margin-top:8px}
body.kft .dots2{display:grid;grid-template-columns:repeat(8,1fr);gap:9px;width:min(380px,80vw)}
body.kft .dots2 i{aspect-ratio:1;border-radius:7px;background:rgba(255,255,255,.1);transform:scale(.7);transition:background .4s,transform .5s cubic-bezier(.3,1.6,.5,1),box-shadow .4s}
body.kft .dots2.go i{background:#fff;transform:none;box-shadow:0 0 14px rgba(255,255,255,.55);transition-delay:calc(var(--w)*.55s + var(--j)*.025s)}
body.kft .bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.kft .post{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linha);border-radius:22px;overflow:hidden;text-decoration:none;transition:.35s var(--ease)}
body.kft .post:hover{transform:translateY(-6px);box-shadow:0 30px 50px -28px rgba(0,0,0,.4)}
body.kft .post .cov{height:150px;background:linear-gradient(135deg,var(--vinho),var(--grafite));position:relative;overflow:hidden}
body.kft .post .cov::after{content:"";position:absolute;inset:0;background:
  linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px) 0 0/30px 30px,
  linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px) 0 0/30px 30px}
body.kft .post .cov b{position:absolute;left:18px;bottom:14px;z-index:1;font:800 italic 54px/1 var(--f-tit);color:rgba(255,255,255,.9)}
body.kft .post .bd{padding:22px;display:flex;flex-direction:column;gap:8px;flex:1}
body.kft .post .tg{font:700 12px var(--f-txt);letter-spacing:.12em;text-transform:uppercase;color:var(--vinho)}
body.kft .post h3{font-size:27px;line-height:1.05}
body.kft .post p{color:var(--mudo);font-size:14.5px}
body.kft .post .st{margin-top:auto;font-size:12.5px;font-weight:700;color:#6f5300;background:#fff3cf;border-radius:999px;padding:5px 12px;align-self:flex-start}
body.kft .post.feat{grid-column:span 3;flex-direction:row}
body.kft .post.feat .cov{width:42%;height:auto;min-height:260px}
body.kft .post.feat h3{font-size:40px}
@media(max-width:940px){body.kft .bgrid{grid-template-columns:1fr 1fr}body.kft .post.feat{grid-column:span 2}}
@media(max-width:620px){body.kft .bgrid{grid-template-columns:1fr}body.kft .post.feat{grid-column:auto;flex-direction:column}body.kft .post.feat .cov{width:100%;min-height:150px}}
@media(prefers-reduced-motion:reduce){body.kft .needle{animation:none;transform:rotate(20deg)}body.kft .gauge .ok{animation:none;opacity:1;transform:translateX(-50%)}}
body.kft .file svg{width:26px;height:26px;flex:none;color:var(--vinho)}
body.kft .fld{min-width:0}
body.kft .row2>*{min-width:0}
@keyframes kft-float{50%{transform:translate(40px,30px) scale(1.12)}}
@keyframes kft-shine{to{background-position:-200% 0}}
@keyframes kft-marq{to{transform:translateX(-50%)}}
@keyframes kft-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.4);opacity:0}}
/* ===================== KFT Site Kit · camada nativa (Elementor) ===================== */
body.kft{--vinho:#822022;--vinho-esc:#5e181a;--vinho-vivo:#9e3134;--vinho-claro:#e0797c;--grafite:#141015;--grafite-2:#211b20;--grafite-3:#322b31;--papel:#f5f5f5;--linha:#dbdbdb;--texto:#141015;--mudo:#666869;--ambar:#f1b24a;--ciano:#7fb3d1;
  --f-tit:"Barlow Condensed","Arial Narrow",Arial,sans-serif;--f-txt:"Inter",system-ui,Arial,sans-serif;--raio:10px;--ease:cubic-bezier(.2,.7,.2,1);
  background:#f5f5f5;font-family:var(--f-txt);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.kft *{box-sizing:border-box}
body.kft ::selection{background:#822022;color:#fff}
body.kft :focus-visible{outline:3px solid #f1b24a;outline-offset:3px}
body.kft .elementor-heading-title{margin:0}
body.kft .elementor-widget-text-editor p{margin:0 0 14px}
body.kft .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* conteúdo só para editores */
body.kft .kft-admin-only{display:none!important}
body.logged-in.kft .kft-admin-only,body.elementor-editor-active.kft .kft-admin-only{display:block!important}
body.kft .kft-pend{display:none}
body.logged-in.kft .kft-pend,body.elementor-editor-active.kft .kft-pend{display:inline;background:#fff3cf;border:1px dashed #d4a93d;color:#6f5300;border-radius:6px;padding:1px 8px;font-size:.82em;font-weight:600;font-style:normal;line-height:1.8}
body.logged-in.kft .kft-pend::before,body.elementor-editor-active.kft .kft-pend::before{content:"⚑ "}
body.kft .kft-imgph{border:2px dashed #9fb4c0;border-radius:18px;background:repeating-linear-gradient(135deg,#f3f3f3 0 14px,#e1ecf3 14px 28px);color:#35566b;padding:30px;text-align:center;min-height:200px;display:flex;flex-direction:column;justify-content:center;gap:6px}
body.kft .kft-imgph strong{font:800 20px var(--f-tit);letter-spacing:.06em;text-transform:uppercase}
body.kft .kft-notice{background:#fff7e0;border:1px dashed #d4a93d;border-radius:14px;padding:16px 20px}
body.kft .kft-notice p{color:#6f5300}

/* ---------- cabeçalho / rodapé ---------- */
body.kft .kft-hf-h,body.kft .kft-hf-f,body.kft .kft-hf-h>.elementor-container,body.kft .kft-hf-f>.elementor-container{padding:0!important;margin:0!important}
body.kft .kft-header{position:fixed;top:0;left:0;right:0;z-index:99990;height:84px;transition:background .3s,backdrop-filter .3s,box-shadow .3s,height .3s}
body.admin-bar.kft .kft-header{top:32px}
@media(max-width:782px){body.admin-bar.kft .kft-header{top:46px}}
body.kft .kft-header>.elementor-container{height:100%;align-items:center;max-width:1280px}
body.kft .kft-header.sc{background:rgba(20,16,21,.84);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 1px 0 rgba(255,255,255,.07);height:64px}
body.kft .kft-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#fff}
body.kft .kft-logo .kft-valve{transition:transform .6s var(--ease)}
body.kft .kft-logo:hover .kft-valve{transform:rotate(180deg)}
body.kft .kft-logo-k{display:block;font:italic 800 40px/1 var(--f-tit);color:#e0797c;letter-spacing:-.02em}
body.kft .kft-logo small{display:block;font:600 11px/1.1 var(--f-txt);color:#d5d5d5}
body.kft .kft-hdr-btn .elementor-button{min-height:46px;padding:13px 22px}

body.kft .kft-nav{position:relative;display:flex;justify-content:flex-end;align-items:center}
body.kft .kft-menu,body.kft .kft-menu ul{list-style:none;margin:0;padding:0}
body.kft .kft-menu{display:flex;gap:4px;background:rgba(255,255,255,.06);padding:5px;border-radius:999px;border:1px solid rgba(255,255,255,.08)}
body.kft .kft-menu>li{position:relative}
body.kft .kft-menu a{display:block;color:#d5d5d5;text-decoration:none;font:500 14px var(--f-txt);padding:9px 16px;border-radius:999px;transition:background .25s,color .25s;white-space:nowrap}
body.kft .kft-menu a:hover{color:#fff;background:rgba(255,255,255,.08)}
body.kft .kft-menu .current-menu-item>a,body.kft .kft-menu .current-menu-ancestor>a,body.kft .kft-menu .current_page_item>a{background:#822022;color:#fff}
body.kft .kft-menu .menu-item-has-children>a::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
body.kft .kft-menu .sub-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:270px;background:rgba(20,16,21,.97);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s,transform .22s var(--ease),visibility .22s;box-shadow:0 30px 50px -20px rgba(0,0,0,.7)}
body.kft .kft-menu li:hover>.sub-menu,body.kft .kft-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
body.kft .kft-menu .sub-menu a{border-radius:10px;padding:11px 14px}
body.kft .kft-burger{display:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;width:46px;height:46px;font-size:20px;cursor:pointer;line-height:1}
@media(max-width:1020px){
  body.kft .kft-burger{display:block}
  body.kft .kft-menu{display:none;position:absolute;right:0;top:calc(100% + 14px);flex-direction:column;gap:0;width:min(86vw,360px);max-height:calc(100vh - 110px);overflow:auto;background:rgba(20,16,21,.98);border-radius:18px;padding:10px 16px}
  body.kft .kft-nav.open .kft-menu{display:flex}
  body.kft .kft-menu a{border-radius:0;padding:15px 0;font-size:17px;border-bottom:1px solid #2a262b}
  body.kft .kft-menu .menu-item-has-children>a::after{display:none}
  body.kft .kft-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:0;box-shadow:none;padding:0 0 6px 14px;min-width:0;backdrop-filter:none}
  body.kft .kft-menu .sub-menu a{padding:12px 0;font-size:16px}
  body.kft .kft-menu .current-menu-item>a{background:none;color:#e0797c}
}
body.kft.kft-menu-open .kft-wa-float,body.kft.kft-menu-open .kft-mbar{display:none}

body.kft .kft-footer h4{font:700 18px var(--f-tit)!important;letter-spacing:.06em;text-transform:uppercase}
body.kft .kft-flist a{transition:color .2s,transform .2s}
body.kft .kft-flist .elementor-icon-list-item:hover .elementor-icon-list-text{color:#fff}
body.kft .kft-float-sec,body.kft .kft-float-sec>.elementor-container{padding:0!important;min-height:0}
body.kft .kft-wa-float{position:fixed;right:20px;bottom:20px;z-index:99980;width:62px;height:62px;border-radius:50%;background:#1fa855;display:grid;place-items:center;box-shadow:0 12px 28px rgba(0,0,0,.4);color:#fff;font-size:32px;text-decoration:none;transition:transform .2s}
body.kft .kft-wa-float:hover{transform:scale(1.1);color:#fff}
body.kft .kft-wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #1fa855;animation:kft-pulse 2.4s infinite}
body.kft .kft-mbar{display:none}
@media(max-width:820px){
  body.kft .kft-mbar{position:fixed;left:0;right:0;bottom:0;z-index:99985;display:flex;gap:10px;padding:10px 14px;background:rgba(20,16,21,.95);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}
  body.kft .kft-mbar a{flex:1;display:block;text-align:center;border-radius:999px;padding:14px 10px;font:700 16px var(--f-tit);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;color:#fff}
  body.kft .kft-mbar-1{background:#822022}.kft-mbar-2{background:#16803f}
  body.kft .kft-wa-float{display:none}
}
body.kft #kft-prog{position:fixed;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#822022,#e0797c,#f1b24a);transform:scaleX(0);transform-origin:left;z-index:999999}

/* ---------- seções e efeitos ---------- */
body.kft .kft-sec{position:relative}
body.kft .kft-hero{position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 38px),0 100%)}
body.kft .kft-hero>.elementor-container,body.kft .kft-grid-bg>.elementor-container,body.kft .kft-spot>.elementor-container{position:relative;z-index:2}
body.kft .kft-grid-bg::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/56px 56px,linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px) 0 0/56px 56px;-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 75%)}
body.kft .kft-hero::after{content:"";position:absolute;right:-140px;top:-120px;width:520px;height:520px;border-radius:50%;filter:blur(70px);background:radial-gradient(circle,rgba(130,32,34,.85),transparent 65%);pointer-events:none;z-index:0;animation:kft-float 14s ease-in-out infinite}
body.kft .kft-spot::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(520px circle at var(--mx,70%) var(--my,30%),rgba(224,121,124,.15),transparent 62%);opacity:0;transition:opacity .4s}
body.kft .kft-spot:hover::after{opacity:1}
body.kft .kft-hero.kft-spot::after{opacity:1;right:auto;top:0;width:auto;height:auto;border-radius:0;filter:none;animation:none}
body.kft .kft-case,body.kft .kft-cta{overflow:hidden}
body.kft .kft-final,body.kft .kft-peritagem{position:relative}
@media(min-width:768px){body.kft .kft-peritagem{clip-path:polygon(0 36px,100% 0,100% calc(100% - 36px),0 100%)}}
body.kft .kft-peritagem{padding-top:clamp(110px,11vw,150px)!important;padding-bottom:clamp(110px,11vw,150px)!important}

/* ---------- tipografia utilitária ---------- */
body.kft .kft-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:12px}
body.kft .kft-eyebrow .elementor-heading-title::before{content:"";width:30px;height:2px;background:currentColor;flex:none}
body.kft .kft-eyebrow[class*="elementor-align-center"] .elementor-heading-title,body.kft .elementor-widget-heading.kft-eyebrow[style*="center"] .elementor-heading-title{justify-content:center}
body.kft .elementor-element.elementor-widget-heading.kft-eyebrow .elementor-heading-title{margin-bottom:6px}
body.kft .kft-hl{background:linear-gradient(100deg,#e0797c,#f4a8a3,#e0797c);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:kft-shine 5s linear infinite}
body.kft .kft-link{color:inherit;font-weight:600;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;padding-bottom:3px;transition:background-size .3s var(--ease)}
body.kft .kft-link:hover{background-size:0 2px;background-position:100% 100%}
body.kft .kft-link-w{margin-top:18px}
body.kft .kft-link-w a{color:#fff}
body.kft .kft-inline{display:inline-block;margin-left:22px;vertical-align:middle}
body.kft .kft-mudo{color:#666869}
body.kft .kft-def{font:italic 700 clamp(26px,3vw,36px)/1.2 var(--f-tit)!important;color:#2a242a!important;max-width:30ch}
body.kft .kft-hit .elementor-widget-container{font:italic 800 clamp(30px,3.4vw,44px)/1.02 var(--f-tit);color:#822022;margin-top:16px}
body.kft .kft-hit em{font-style:italic;background:linear-gradient(#e0797c,#e0797c) 0 92%/100% .14em no-repeat}
body.kft .kft-callout{background:#fff;border:1px solid #822022;border-radius:14px;padding:18px 22px;font-size:17px}
body.kft .kft-callout strong{color:#822022}
body.kft .kft-honest{border-left:3px solid #e0a3a5;padding-left:16px}
body.kft .kft-note{font-size:13px;color:#b0b0b2;margin-top:16px}
body.kft .kft-hint{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#f1b24a;margin-top:14px;font-weight:600}
body.kft .kft-numbadge .elementor-heading-title{width:46px;height:46px;border-radius:50%;background:#822022;display:grid;place-items:center;box-shadow:0 8px 18px -8px rgba(130,32,34,.7)}
body.kft .kft-numbadge-lg .elementor-heading-title{width:80px;height:80px;font-size:40px!important;margin:0 auto}
body.kft .kft-steps3 .kft-numbadge-lg{text-align:center}

/* ---------- botões ---------- */
body.kft .kft-btn .elementor-button{position:relative;overflow:hidden;border-radius:999px;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
body.kft .kft-btn .elementor-button:hover{transform:translateY(-2px)}
body.kft .kft-btn-pri .elementor-button{box-shadow:0 10px 30px -10px rgba(158,49,52,.7)}
body.kft .kft-btn .elementor-button::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease)}
body.kft .kft-btn .elementor-button:hover::after{transform:translateX(120%)}
body.kft .kft-btn .elementor-button-icon{transition:transform .25s var(--ease)}
body.kft .kft-btn .elementor-button:hover .elementor-button-icon{transform:translateX(5px)}
body.kft .kft-btn .elementor-button-text{position:relative}

/* ---------- cartões, listas ---------- */
body.kft .kft-card>.elementor-element-populated{transition:transform .35s var(--ease),box-shadow .35s,border-color .35s}
body.kft .kft-card:hover>.elementor-element-populated{transform:translateY(-6px);box-shadow:0 30px 50px -28px rgba(0,0,0,.4);border-color:#cdbcbc}
body.kft .kft-grid>.elementor-container{align-items:stretch}
body.kft .kft-grid .kft-card{display:flex}
body.kft .kft-grid .kft-card>.elementor-element-populated{width:100%}
body.kft .kft-iconbox .elementor-icon-box-title{margin:0}
body.kft .kft-iconbox .elementor-icon-box-title a{color:inherit}
body.kft .kft-ticks-card .elementor-icon-list-item{padding:16px 18px;background:#fff;border:1px solid #dbdbdb;border-radius:16px;transition:transform .25s var(--ease),border-color .25s}
body.kft .kft-ticks-card .elementor-icon-list-item:hover{transform:translateX(6px);border-color:#822022}
body.kft.kft .kft-dark .kft-ticks-card .elementor-icon-list-item{background:#211b20;border-color:#3b3339}
body.kft .kft-ticks .elementor-icon-list-items{display:flex;flex-direction:column;gap:12px}
body.kft .kft-chips .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:10px}
body.kft .kft-chips .elementor-icon-list-item{padding:9px 16px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.05);margin:0!important}
body.kft .kft-strike .elementor-icon-list-items{display:grid;gap:12px}
body.kft .kft-strike .elementor-icon-list-item{padding:20px 22px;background:#fff;border:1px solid #dbdbdb;border-left:4px solid #822022;border-radius:14px;box-shadow:0 14px 30px -22px rgba(0,0,0,.35);font-weight:600}
body.kft .kft-contact .elementor-icon-list-item{align-items:flex-start}
body.kft .kft-pills{list-style:none;display:flex;flex-wrap:wrap;gap:12px;padding:0;margin:0}
body.kft .kft-pills li{padding:14px 22px;border-radius:999px;background:#fff;border:1px solid #dbdbdb;font:700 21px var(--f-tit);letter-spacing:.03em;transition:.25s var(--ease)}
body.kft .kft-pills li:hover{background:#822022;color:#fff;border-color:#822022;transform:translateY(-4px) rotate(-1deg)}
body.kft .kft-pills-s li{font:700 14px var(--f-txt);padding:10px 18px;background:rgba(130,32,34,.1);color:#822022;border:0}
body.kft .kft-norms{display:flex;flex-wrap:wrap;gap:14px;margin:0}
body.kft .kft-norms span{font:italic 800 clamp(34px,4.6vw,56px)/1 var(--f-tit);padding:14px 26px;border:2px solid #822022;border-radius:18px;color:#822022;transition:.3s var(--ease)}
body.kft .kft-norms span:hover{background:#822022;color:#fff;transform:translateY(-6px)}
body.kft .kft-steps{list-style:none;counter-reset:s;padding:0;margin:0;position:relative}
body.kft .kft-steps li{position:relative;padding:18px 0 22px 76px;min-height:84px}
body.kft .kft-steps li::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:14px;width:52px;height:52px;border-radius:50%;background:#822022;color:#fff;display:grid;place-items:center;font:italic 800 24px var(--f-tit);z-index:1}
body.kft .kft-steps li:not(:last-child)::after{content:"";position:absolute;left:25px;top:68px;bottom:-14px;width:2px;background:#cecece}
body.kft .kft-steps li h3{font:700 26px var(--f-tit);margin:0 0 4px;color:#141015}
body.kft .kft-dark .kft-steps li h3{color:#fff}
body.kft .kft-steps li p{margin:0;color:#666869;max-width:56ch}
body.kft .kft-dark .kft-steps li p{color:#c5c5c5}
body.kft .kft-dark .kft-steps li:not(:last-child)::after{background:#4a4448}

/* quadros de citação / política / rastro */
body.kft .kft-policy .elementor-widget-container{background:#fff;border:1px solid #dbdbdb;border-radius:26px;padding:clamp(26px,4vw,50px);position:relative}
body.kft .kft-policy blockquote{font:italic 700 clamp(24px,3vw,34px)/1.2 var(--f-tit);margin:0 0 18px;color:#2a242a;border:0;padding:0}
body.kft .kft-quote .elementor-widget-container{background:#141015;border-radius:26px;padding:clamp(26px,4vw,50px)}
body.kft .kft-rastro .elementor-widget-container{display:flex;gap:16px;align-items:center;background:rgba(255,255,255,.04);border:1px solid #3b3339;border-radius:16px;padding:20px 22px}
body.kft .kft-photo img{border-radius:22px;background:#fff;width:100%;object-fit:contain}
body.kft .kft-hero-img img{border-radius:22px;background:#fff;padding:14px}
body.kft .kft-isobadge img{border-radius:12px;background:#fff;margin-top:-76px;margin-left:16px;box-shadow:0 14px 30px -14px rgba(0,0,0,.5)}
body.kft .kft-map iframe{border-radius:22px}
body.kft .kft-band-sec,body.kft .kft-band-sec>.elementor-container{padding:0!important}
body.kft .kft-band{overflow:hidden;padding:26px 0;transform:rotate(-1.4deg) scale(1.03)}
body.kft .kft-band-track{display:flex;width:max-content;animation:kft-marq 30s linear infinite}
body.kft .kft-band-track span{font:italic 800 clamp(34px,5vw,60px)/1 var(--f-tit);text-transform:uppercase;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.75);padding-right:34px;white-space:nowrap}
body.kft .kft-band-track span.f{color:#fff;-webkit-text-stroke:0}
body.kft .kft-logos img{height:50px!important;width:auto!important;max-width:150px;object-fit:contain;opacity:.9}
body.kft .kft-logos .swiper-slide{display:flex;justify-content:center;align-items:center}
body.kft .kft-cap p{display:flex;align-items:center;gap:18px;letter-spacing:.2em;text-transform:uppercase;font-size:12px;font-weight:600}
body.kft .kft-cap p::after{content:"";flex:1;height:2px;background:rgba(255,255,255,.6)}

/* ---------- accordion / tabs ---------- */
body.kft .kft-accordion .elementor-accordion-item{border:0;border-bottom:1px solid #dbdbdb}
body.kft .kft-accordion .elementor-tab-title{padding:22px 6px;transition:padding .3s var(--ease)}
body.kft .kft-accordion .elementor-tab-title:hover{padding-left:14px}
body.kft .kft-accordion .elementor-tab-title a{color:inherit}
body.kft .kft-accordion .elementor-tab-content{border-top:0;padding:0 6px 22px}
body.kft .kft-tabs .elementor-tabs{background:#211b20;border:1px solid #3b3339;border-radius:20px;overflow:hidden;box-shadow:0 50px 90px -40px rgba(0,0,0,.9)}
body.kft .kft-tabs .elementor-tab-title{padding:22px 24px;border-color:#2d272d!important;color:#c5c5c5}
body.kft .kft-tabs .elementor-tab-title.elementor-active{background:rgba(158,49,52,.12);color:#fff}
body.kft .kft-tabs .elementor-tab-content{border-color:#3b3339!important;color:#d3d3d3;padding:clamp(20px,3vw,38px)}
body.kft .kft-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
body.kft .kft-photos img{background:#fff;border-radius:12px;aspect-ratio:1/1;object-fit:contain;width:100%}
@media(max-width:700px){body.kft .kft-photos{grid-template-columns:1fr 1fr}}
body.kft .kft-timeline{list-style:none;counter-reset:t;padding:0;margin:0;position:relative}
body.kft .kft-timeline li{counter-increment:t;position:relative;padding:14px 0 14px 54px;border-bottom:1px dashed #4a4448;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
body.kft .kft-timeline li::before{content:counter(t);position:absolute;left:0;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:#822022;color:#fff;display:grid;place-items:center;font:800 16px var(--f-tit)}
body.kft .kft-timeline small{display:block;width:100%;color:#b0b0b2}
body.kft .kft-dias{margin-left:auto;font:700 21px var(--f-tit);color:#e0797c;border:1px dashed #7b4a4c;padding:5px 14px;border-radius:999px}

/* ---------- artigo / autor ---------- */
body.kft .kft-article h2{font:italic 800 clamp(30px,4vw,42px)/1.05 var(--f-tit);margin:42px 0 14px;color:#141015}
body.kft .kft-article p,body.kft .kft-article li{font-size:19px;line-height:1.7;color:#313131}
body.kft .kft-article ul,body.kft .kft-article ol{margin:0 0 18px 22px}
body.kft .kft-article p:first-of-type{font-size:22px;line-height:1.5;background:#fff;border-left:5px solid #822022;padding:22px 26px;border-radius:0 18px 18px 0}
body.kft .kft-author .elementor-widget-container{display:block;background:#fff;border:1px solid #dbdbdb;border-radius:18px;padding:18px 22px;margin-top:34px}

/* ---------- misc ---------- */
body.kft .kft-oform>.elementor-container{align-items:flex-start}
body.kft .kft-crumbs-w{margin-bottom:6px}
body.kft .kft-sidecard-w{margin-bottom:16px}
body.kft .kft-hdr-btn{margin:0}
body.kft .kft-hero .elementor-widget-text-editor.kft-lead{margin-bottom:6px}
body.kft .kft-seg-w .seg{display:inline-flex;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:5px;margin-bottom:18px}
body.kft .kft-seg-w .seg button{background:none;border:0;color:#d4d4d4;padding:10px 18px;border-radius:999px;font:700 13px var(--f-txt);cursor:pointer}
body.kft .kft-seg-w .seg button[aria-pressed=true]{background:#f1b24a;color:#1b161c}
body.kft .kft-seg-w p.lead{font-size:20px;color:#cfcfcf;max-width:56ch}
body.kft .kft-seg-w [hidden]{display:none!important}
@media(max-width:1024px){body.kft .kft-hero{padding-top:130px!important}}
@media(max-width:767px){body.kft .kft-inline{display:block;margin:14px 0 0}body.kft .kft-band{padding:18px 0}}
@media(prefers-reduced-motion:reduce){body.kft *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

body.kft .kft-crumbs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 22px;padding:0;font:400 13px var(--f-txt);color:#b0b0b2}
body.kft .kft-crumbs li+li::before{content:"›";margin-right:8px;color:#666869}
body.kft .kft-crumbs a{text-decoration:none;color:#c9c9c9}
body.kft .kft-crumbs a:hover{color:#fff}


body.kft:not(.logged-in):not(.elementor-editor-active) .kft-admin-col{display:none!important}
body.logged-in.kft .kft-admin-col>.elementor-element-populated,body.elementor-editor-active.kft .kft-admin-col>.elementor-element-populated{outline:2px dashed #d4a93d;outline-offset:-6px}


/* ===== Marca oficial KFT + destaque BSI ===== */
body.kft .logo-img{display:block;height:46px;width:auto}
body.kft .kft-footer .logo-img{height:64px}
body.kft .bsi-card{display:inline-flex;align-items:center;gap:14px;margin-top:10px;padding:10px 20px 10px 12px;background:#fff;color:#141015;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
body.kft .bsi-card img{height:52px;width:auto;display:block}
body.kft .bsi-card b{display:block;font:700 16px/1.15 var(--f-txt)}
body.kft .bsi-card small{display:block;font-size:12.5px;color:#666869;margin-top:2px}
body.kft .bsi-foot{display:flex;align-items:center;gap:12px;margin:14px 0 4px;padding:8px 12px;background:#fff;border-radius:12px;color:#141015;font-size:13px;width:max-content;max-width:100%}
body.kft .bsi-foot img{height:40px;width:auto}
body.kft .kft-certband{border-block:1px solid #bdbdbd}
body.kft .kft-cb-img img{max-width:150px;height:auto}
body.kft .kft-isobadge img{background:#fff;border-radius:16px;padding:14px}
@media (max-width:640px){body.kft .logo-img{height:38px}}
body.kft .kft-certband .kft-hl{color:#822022!important}
