/* =====================================================================
   KDTECH — tema "futuro" (escuro, tecnológico). Carregado DEPOIS do style.css
   e sobrescreve o visual de todas as seções, nas versões PT e EN.
   ===================================================================== */
:root{
  --bg:#050913; --bg-2:#070e1d; --surface:#0b1427; --surface-2:#0f1b33;
  --line:rgba(130,170,255,.13); --line-2:rgba(130,170,255,.24);
  --ink:#eaf1ff; --mut:#9db0d3; --mut-2:#6f84aa;
  --cyan:#22d3ee; --blue:#4f7cff; --violet:#8b5cf6; --magenta:#d946ef;
  --grad:linear-gradient(110deg,#22d3ee 0%,#4f7cff 35%,#8b5cf6 68%,#c084fc 100%);
  --grad-anim:linear-gradient(110deg,#22d3ee,#4f7cff,#8b5cf6,#c084fc,#4f7cff,#22d3ee);
  --f-disp:'Space Grotesk','Inter',system-ui,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  /* variáveis antigas reaproveitadas pelo conteúdo */
  --primary:#eaf1ff; --dark:#d6e0f5; --gray:#9db0d3; --gray-light:#070e1d;
  --shadow:0 20px 50px -20px rgba(0,0,0,.6);
  --radius:18px;
}
html{background:var(--bg);scroll-padding-top:72px}
body{background:var(--bg);color:var(--dark)}
::selection{background:#8b5cf655;color:#fff}
h1,h2,h3,.section-title,.plan-price,.stat-num{font-family:var(--f-disp);letter-spacing:-.02em}

/* ---------- fundo geral: grade fina e brilhos ---------- */
.section{position:relative;isolation:isolate}
#portfolio{padding-bottom:20px}
.section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(130,170,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(130,170,255,.045) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 80%);mask:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 80%)}
.section-alt{background:var(--bg-2);box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.section-alt::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(40% 50% at 85% 10%,rgba(139,92,246,.12),transparent 70%),radial-gradient(35% 45% at 10% 90%,rgba(34,211,238,.08),transparent 70%)}

/* ---------- etiqueta, títulos ---------- */
.tag{background:transparent;color:var(--cyan);font:600 .72rem var(--f-mono);letter-spacing:.18em;padding:7px 14px 7px 12px;border:1px solid rgba(34,211,238,.3);border-radius:6px;display:inline-flex;align-items:center;gap:8px}
.tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.section-title{color:var(--ink);font-weight:700}
.section-sub{color:var(--mut)}

/* ---------- botões: degradê azul-roxo em movimento ---------- */
.btn{font-family:'Inter',sans-serif;letter-spacing:.01em}
.btn-primary{color:#fff;background:var(--grad-anim);background-size:300% 100%;animation:kd-flow 7s linear infinite;
  box-shadow:0 10px 30px -8px rgba(79,124,255,.6),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-primary:hover{box-shadow:0 14px 40px -8px rgba(139,92,246,.75),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-2px)}
.btn-outline{color:#fff;border:1.5px solid transparent;
  background:linear-gradient(var(--bg-2),var(--bg-2)) padding-box,var(--grad-anim) border-box;background-size:100% 100%,300% 100%;animation:kd-flow 7s linear infinite}
.btn-outline:hover{background:linear-gradient(rgba(79,124,255,.16),rgba(139,92,246,.16)) padding-box,var(--grad-anim) border-box;background-size:100% 100%,300% 100%;color:#fff;transform:translateY(-2px)}
@keyframes kd-flow{to{background-position:300% 0}}
.btn svg{flex:none}

/* ---------- menu ---------- */
.navbar{background:rgba(5,9,19,.72);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 1px 0 var(--line)}
.navbar.scrolled{background:rgba(5,9,19,.92)}
.navbar::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--grad);opacity:.5}
.nav-links a{color:#c9d6f2;font-weight:500}
.nav-links a:hover{color:#fff}
.btn-lang{background:rgba(255,255,255,.04);border-color:var(--line-2);color:#c9d6f2;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.06em}

/* ---------- TOPO (hero) ---------- */
.hero.hx{min-height:100vh;background:radial-gradient(70% 60% at 75% 35%,rgba(79,124,255,.18),transparent 65%),radial-gradient(50% 50% at 10% 85%,rgba(139,92,246,.16),transparent 70%),var(--bg);padding-top:96px;padding-bottom:40px;isolation:isolate}
.hero.hx>.container{max-width:1460px}
.hero.hx::before{display:none}
.hx-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.hx-floor{position:absolute;left:-20%;right:-20%;bottom:-6%;height:46%;z-index:-1;pointer-events:none;transform:perspective(520px) rotateX(64deg);transform-origin:bottom;
  background-image:linear-gradient(rgba(34,211,238,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(139,92,246,.28) 1px,transparent 1px);background-size:64px 64px;
  -webkit-mask:linear-gradient(to top,#000 10%,transparent 90%);mask:linear-gradient(to top,#000 10%,transparent 90%);animation:kd-floor 6s linear infinite;opacity:.55}
@keyframes kd-floor{to{background-position:0 64px,0 0}}
.hx .hero-grid{grid-template-columns:1.05fr .95fr;gap:56px}
.hx-status{display:inline-flex;align-items:center;gap:10px;margin-bottom:26px;padding:8px 14px;border-radius:8px;border:1px solid var(--line-2);background:rgba(11,20,39,.6);
  font:600 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:#bcd2ff}
.hx-status i{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 0 rgba(52,211,153,.6);animation:kd-ping 2s infinite}
@keyframes kd-ping{70%{box-shadow:0 0 0 10px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
.hx h1{font-size:clamp(2.4rem,5vw,4.1rem);font-weight:700;line-height:1.04;letter-spacing:-.035em;color:#fff;margin-bottom:22px}
.hx h1 span{background:var(--grad-anim);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:kd-flow 7s linear infinite}
.hx p{color:#b3c3e4;font-size:1.12rem;max-width:34em;margin-bottom:34px}
.hx .hero-btns{gap:14px}
.hx-proof{display:flex;align-items:center;gap:14px;margin-top:30px;color:var(--mut);font-size:.88rem}
.hx-proof b{color:#fff;font-family:var(--f-disp);font-size:1.05rem}
.hx-proof .dots{display:flex;flex-shrink:0}
.hx-proof .dots span{width:30px;height:30px;border-radius:50%;margin-left:-8px;border:2px solid var(--bg);background:var(--grad);display:grid;place-items:center;font:700 .7rem var(--f-disp);color:#fff}
.hx-proof .dots span:first-child{margin-left:0}
.hx-proof .stars{color:#fbbf24;margin:0;letter-spacing:1px;font-size:.9rem}

/* tela holográfica com o portfólio */
.hx .hero-grid{grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);gap:32px}
.hx-visual{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;align-items:center;justify-items:stretch;gap:12px;min-height:620px}
.hx-preview-controls{position:relative;z-index:4;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--line-2);border-radius:13px;background:rgba(7,14,29,.76);box-shadow:0 15px 40px -28px #000;backdrop-filter:blur(12px)}
.hx-project-picker{display:grid;gap:6px;min-width:0;flex:1}
.hx-project-picker>span{font:600 .6rem var(--f-mono);letter-spacing:.14em;color:var(--mut-2)}
.hx-project-picker select{max-width:240px;min-width:190px;padding:8px 32px 8px 10px;border:1px solid var(--line);border-radius:8px;background:#0b1427;color:#eaf1ff;font:600 .76rem var(--f-disp);outline:none}
.hx-project-picker select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(34,211,238,.14)}
.hx-preview-note{justify-self:center;align-self:center;max-width:min(100%,620px);margin:0 auto;padding:3px 10px;color:var(--mut-2);font:500 .62rem/1.5 var(--f-mono);text-align:center;white-space:normal;text-wrap:balance}
.hx-preview-note:empty{display:none}
.hx-device-switch{display:flex;gap:5px;padding:4px;border:1px solid var(--line);border-radius:10px;background:rgba(5,9,19,.56)}
.hx-device-switch button{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--mut);font:600 .7rem var(--f-disp);white-space:nowrap}
.hx-device-switch button span{font-size:1rem;line-height:1;color:var(--mut-2)}
.hx-device-switch button[aria-pressed="true"]{background:rgba(34,211,238,.1);border-color:rgba(34,211,238,.22);color:#fff}
.hx-device-switch button[aria-pressed="true"] span{color:var(--cyan)}
.hx-device-stage{position:relative;z-index:1;display:grid;place-items:center;perspective:1500px;padding-bottom:70px;min-width:0;min-height:570px}
.hx-device-stage::before{content:"";position:absolute;left:44%;bottom:4px;width:12%;height:78px;background:linear-gradient(90deg,#111c31,#354260 48%,#121b30);clip-path:polygon(18% 0,82% 0,100% 100%,0 100%);filter:drop-shadow(0 15px 10px rgba(0,0,0,.45));z-index:0}
.hx-device-stage::after{content:"";position:absolute;left:32%;bottom:0;width:36%;height:10px;border-radius:50%;background:linear-gradient(90deg,#1b2944,#7284ab 50%,#1b2944);box-shadow:0 14px 24px rgba(34,211,238,.16);z-index:0}
.hx-orbit{position:absolute;border-radius:50%;border:1px solid rgba(130,170,255,.18);pointer-events:none}
.hx-orbit.o1{width:520px;height:520px;animation:kd-spin 40s linear infinite}
.hx-orbit.o2{width:640px;height:640px;border-style:dashed;border-color:rgba(139,92,246,.18);animation:kd-spin 70s linear infinite reverse}
.hx-orbit::after{content:"";position:absolute;top:50%;left:-5px;width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 16px var(--cyan)}
.hx-orbit.o2::after{background:var(--magenta);box-shadow:0 0 16px var(--magenta);left:auto;right:-5px}
@keyframes kd-spin{to{transform:rotate(360deg)}}
.hx-screen{position:relative;z-index:2;width:min(100%,860px);border-radius:16px;padding:12px;transform-style:preserve-3d;transform:rotateY(var(--hx-rotate-y,-3deg)) rotateX(var(--hx-rotate-x,1deg));transition:transform .25s ease-out,width .45s ease,border-radius .45s ease,aspect-ratio .45s ease;
  background:linear-gradient(160deg,rgba(18,30,58,.9),rgba(8,14,28,.9));box-shadow:0 0 0 1px var(--line-2),0 40px 90px -30px rgba(79,124,255,.55),0 0 80px -20px rgba(139,92,246,.45)}
.hx-bar{display:none}
.hx-bar span{width:9px;height:9px;border-radius:50%;background:#334155}
.hx-bar span:nth-child(1){background:#f87171}.hx-bar span:nth-child(2){background:#fbbf24}.hx-bar span:nth-child(3){background:#34d399}
.hx-bar em{flex:1;margin-left:8px;padding:5px 10px;border-radius:6px;background:rgba(255,255,255,.05);font:500 .72rem var(--f-mono);font-style:normal;color:#9fb6e3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hx-bar b{font:700 .62rem var(--f-mono);letter-spacing:.14em;color:#34d399;padding:4px 7px;border-radius:5px;background:rgba(52,211,153,.12)}
.hx-view{position:relative;aspect-ratio:683/450;border-radius:10px;overflow:hidden;background:#0b1220}
.hx-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;object-position:top;opacity:0;transform:none;transition:none}
.hx-shot.active{opacity:1;transform:none}
.hx-live-frame{position:absolute;inset:0 auto auto 0;width:100%;height:100%;border:0;background:#fff;opacity:0;pointer-events:none;transform-origin:top left}
.hx-live-frame.is-active{opacity:1;pointer-events:auto}
.hx-view.has-live .hx-shot.active{opacity:0}
.hx-project-arrow{position:absolute;z-index:7;top:50%;display:grid;place-items:center;width:44px;height:54px;transform:translateY(-50%);border:1px solid rgba(134,164,226,.42);border-radius:14px;background:rgba(5,11,25,.88);color:#fff;font:500 1.55rem/1 var(--f-disp);box-shadow:0 8px 26px rgba(0,0,0,.32);cursor:pointer;backdrop-filter:blur(8px);transition:background .18s,border-color .18s,scale .18s}
.hx-project-arrow:hover{background:rgba(34,211,238,.2);border-color:var(--cyan);scale:1.05}
.hx-project-arrow:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
.hx-project-arrow-prev{left:18px}.hx-project-arrow-next{right:18px}
.hx-device-stage[data-current-device="mobile"] .hx-project-arrow{width:34px;height:44px;font-size:1.25rem;border-radius:11px}
.hx-device-stage[data-current-device="mobile"] .hx-project-arrow-prev{left:5px}.hx-device-stage[data-current-device="mobile"] .hx-project-arrow-next{right:5px}
.hx-device-stage[data-current-device="tablet"] .hx-project-arrow-prev{left:8px}.hx-device-stage[data-current-device="tablet"] .hx-project-arrow-next{right:8px}
.hx-preview-note[data-state="fallback"]{color:#ffd99b}
.hx-preview-note[data-state="live"]{color:#9ee7c3}
.hx-dots{display:none}
.hx-scan{display:none}
@keyframes kd-scan{0%{top:-30%}60%,100%{top:110%}}
.hx-corner{position:absolute;width:18px;height:18px;border:2px solid var(--cyan);pointer-events:none;filter:drop-shadow(0 0 6px rgba(34,211,238,.7))}
.hx-corner.c1{top:-7px;left:-7px;border-right:0;border-bottom:0;border-top-left-radius:6px}
.hx-corner.c2{top:-7px;right:-7px;border-left:0;border-bottom:0;border-top-right-radius:6px}
.hx-corner.c3{bottom:-7px;left:-7px;border-right:0;border-top:0;border-bottom-left-radius:6px}
.hx-corner.c4{bottom:-7px;right:-7px;border-left:0;border-top:0;border-bottom-right-radius:6px}
.hx-dots{display:flex;justify-content:center;gap:6px;padding-top:3px}
.hx-dots button{width:22px;height:4px;border-radius:4px;border:0;background:rgba(255,255,255,.18);cursor:pointer;padding:0;transition:background .3s,width .3s}
.hx-dots button.on{background:var(--cyan);width:34px}
.hx-device-stage[data-current-device="tablet"]{padding-bottom:0;min-height:500px}
.hx-device-stage[data-current-device="tablet"]::before,.hx-device-stage[data-current-device="tablet"]::after,.hx-device-stage[data-current-device="mobile"]::before,.hx-device-stage[data-current-device="mobile"]::after{display:none}
.hx-device-stage[data-current-device="tablet"] .hx-screen{width:min(76%,480px);padding:16px;border-radius:30px;background:linear-gradient(145deg,#394862,#101a2d 24%,#080e1c);box-shadow:0 0 0 2px #596985,0 0 0 5px rgba(7,14,29,.96),0 35px 80px -25px rgba(79,124,255,.65)}
.hx-device-stage[data-current-device="tablet"] .hx-view{aspect-ratio:41/59;border-radius:18px}
.hx-device-stage[data-current-device="mobile"]{padding-bottom:0;min-height:500px}
.hx-device-stage[data-current-device="mobile"] .hx-screen{width:min(42%,270px);padding:11px 9px;border-radius:40px;background:linear-gradient(145deg,#58647d,#141c2d 23%,#070c17);box-shadow:0 0 0 2px #73819b,0 0 0 5px rgba(7,14,29,.96),0 35px 90px -24px rgba(139,92,246,.65)}
.hx-device-stage[data-current-device="mobile"] .hx-bar{padding:9px 7px 7px}
.hx-device-stage[data-current-device="mobile"] .hx-bar span,.hx-device-stage[data-current-device="mobile"] .hx-bar b{display:none}
.hx-device-stage[data-current-device="mobile"] .hx-bar em{font-size:.55rem;padding:4px 7px;margin:0}
.hx-device-stage[data-current-device="mobile"] .hx-view{aspect-ratio:195/422;border-radius:27px}
.hx-device-stage[data-current-device="mobile"] .hx-screen::after{content:"";position:absolute;z-index:5;top:8px;left:50%;transform:translateX(-50%);width:24%;height:9px;border-radius:0 0 8px 8px;background:#080d18;pointer-events:none}
.hx-open-live{justify-self:center;position:relative;z-index:4;color:#fff;text-decoration:none;font:700 .76rem var(--f-mono);letter-spacing:.04em;padding:11px 18px;border-radius:9px;background:linear-gradient(110deg,#167ce8,#743ee8);border:1px solid rgba(109,206,255,.5);box-shadow:0 10px 30px -14px rgba(49,155,255,.8);transition:transform .2s,box-shadow .2s}
.hx-open-live:hover{color:#fff;transform:translateY(-2px);box-shadow:0 14px 36px -14px rgba(49,155,255,.95)}
.hx-chip{position:absolute;z-index:3;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:12px;background:rgba(9,16,32,.86);
  box-shadow:0 0 0 1px var(--line-2),0 18px 40px -16px rgba(0,0,0,.8);backdrop-filter:blur(8px);animation:kd-bob 6s ease-in-out infinite}
.hx-chip small{font:600 .6rem var(--f-mono);letter-spacing:.16em;color:var(--mut-2)}
.hx-chip b{font:700 1.02rem var(--f-disp);color:#fff}
.hx-chip b em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hx-chip.k1{top:-6%;right:-7%}
.hx-chip.k2{bottom:12%;left:-6%;animation-delay:-2s}
.hx-chip.k3{top:22%;right:-7%;bottom:auto;animation-delay:-4s}
@keyframes kd-bob{50%{transform:translateY(-8px)}}

/* ---------- faixa de números ---------- */
.stats-bar{background:var(--bg);padding:30px 0;box-shadow:inset 0 1px 0 var(--line),inset 0 -1px 0 var(--line)}
.stats-inner{gap:0}
.stats-inner>div{position:relative;padding:6px 10px}
.stats-inner>div+div::before{content:"";position:absolute;left:0;top:15%;bottom:15%;width:1px;background:linear-gradient(transparent,var(--line-2),transparent)}
.stat-num{font-weight:700;font-size:2.3rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat-lbl{font:600 .7rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mut-2)}

/* ---------- cartões (serviços, planos, depoimentos, portfólio, formulário, faq) ---------- */
.service-card,.plan-card,.testimonial-card,.portfolio-card,.form-card,.faq-item,.kd-box{
  background:linear-gradient(180deg,rgba(15,27,51,.78),rgba(9,16,32,.78));border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}
.service-card{padding:30px 26px;transition:transform .3s ease,border-color .3s,box-shadow .3s}
.section#planos .grid-3{align-items:stretch;grid-auto-rows:1fr}
.section#planos .service-card{display:grid;grid-template-rows:56px auto 1fr auto;justify-items:center;align-items:start;text-align:center;padding:32px 26px 30px}
.section#planos .service-icon{display:grid;place-items:center;margin:0 auto 22px;width:56px;height:56px}
.section#planos .service-card h3{align-self:center;margin:0 0 12px}
.section#planos .service-card p{align-self:start;margin:0;max-width:32ch;padding-bottom:26px}
.section#planos .service-card .btn{align-self:end;justify-self:center;min-width:202px;justify-content:center}
.service-card::before{height:2px;background:var(--grad)}
.service-card:hover,.testimonial-card:hover,.portfolio-card:hover,.plan-card:hover{border-color:rgba(139,92,246,.45);box-shadow:0 30px 60px -28px rgba(79,124,255,.45),0 0 0 1px rgba(139,92,246,.2)}
.service-card::after{content:"";position:absolute;right:14px;top:14px;width:10px;height:10px;border-top:1.5px solid var(--line-2);border-right:1.5px solid var(--line-2)}
.service-icon,.contact-icon{background:linear-gradient(var(--surface-2),var(--surface-2)) padding-box,var(--grad) border-box;border:1px solid transparent;color:#cfe0ff}
.service-icon svg,.contact-icon svg{width:24px;height:24px;fill:none;stroke:url(#kd-g);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-icon svg{width:20px;height:20px}
.service-card h3,.step h3,.portfolio-info h3{color:#fff;font-family:var(--f-disp)}
.service-card p,.step p,.portfolio-info p,.plan-desc,.author-role,.contact-item-text span,.contact-info p,.faq-answer{color:var(--mut)}

/* portfólio */
.portfolio-img{background-color:#0b1220}
.portfolio-img::after{display:none}
button.hamburger{background:none;border:0;font:inherit}
button.sdot{border:0;padding:0}
.slider-dots{bottom:12px;background:rgba(5,9,19,.6);padding:6px 9px;border-radius:99px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.portfolio-overlay{background:linear-gradient(180deg,rgba(5,9,19,.2),rgba(5,9,19,.85))}
/* celular/tablet (sem mouse): botão "ver site" sempre visível no canto da imagem */
@media (hover:none){
  .portfolio-card .portfolio-overlay:not([style]){opacity:1;background:none;backdrop-filter:none;align-items:flex-end;justify-content:flex-end;padding:12px;pointer-events:none}
  .portfolio-card .portfolio-overlay:not([style]) .btn{pointer-events:auto;background:rgba(5,9,19,.78)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-color:rgba(255,255,255,.35)!important;padding:8px 14px!important;font-size:.78rem!important}
}
.portfolio-tag,.plan-name{background:rgba(34,211,238,.1);color:var(--cyan);font-family:var(--f-mono);letter-spacing:.1em;border-radius:6px}
.plan-name{background:none;padding:0}
.portfolio-cta-card{margin-top:20px;border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(110deg,rgba(79,124,255,.14),rgba(139,92,246,.1));border:1px solid rgba(139,92,246,.35)}
.portfolio-cta-card>div{display:grid!important;grid-template-columns:52px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:18px;row-gap:3px;text-align:left!important;padding:18px 24px!important}
.portfolio-cta-card .kd-cta-ico{grid-column:1;grid-row:1/3;width:48px;height:48px;margin:0;border-radius:14px}
.portfolio-cta-card .kd-cta-ico svg{width:24px;height:24px}
.portfolio-cta-card h3{grid-column:2;grid-row:1;font-size:1.05rem!important;margin:0!important}
.portfolio-cta-card p{grid-column:2;grid-row:2;font-size:.88rem!important;margin:0!important}
.portfolio-cta-card .btn{grid-column:3;grid-row:1/3;white-space:nowrap}
.portfolio-cta-card h3{color:#fff!important}
.portfolio-cta-card p{color:var(--mut)!important}
.kd-cta-ico{width:64px;height:64px;margin:0 auto 16px;border-radius:18px;display:grid;place-items:center;background:var(--grad);box-shadow:0 12px 30px -10px rgba(139,92,246,.7)}
.kd-cta-ico svg{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* planos */
.plan-card{padding:34px 26px}
.plan-card.popular{border:1px solid transparent;background:linear-gradient(180deg,rgba(18,30,58,.95),rgba(10,18,36,.95)) padding-box,var(--grad) border-box;box-shadow:0 30px 70px -30px rgba(139,92,246,.7)}
.popular-badge{background:var(--grad-anim);background-size:300% 100%;animation:kd-flow 7s linear infinite;font-family:var(--f-mono);letter-spacing:.08em;font-size:.7rem;text-transform:uppercase}
.plan-price{color:#fff;font-weight:700}
.plan-features li{color:#cfdaf2;border-bottom-color:rgba(130,170,255,.08)}
.plan-features li::before{color:#34d399}
.plan-features li.no{color:#5d6f92}.plan-features li.no::before{color:#43537a}
.kd-box{padding:36px}
.kd-box h3{color:#fff!important}
.kd-col{border-color:var(--line)!important}
.kd-price{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent!important}

/* processo */
.process-steps::before{background:var(--grad);opacity:.6;height:1px}
.step-num{background:var(--bg-2);border:1px solid transparent;background:linear-gradient(var(--bg-2),var(--bg-2)) padding-box,var(--grad) border-box;
  font:700 1.2rem var(--f-mono);color:#fff;box-shadow:0 0 30px -6px rgba(79,124,255,.7)}

/* depoimentos */
.testimonial-text{color:#d2ddf3}
.author-name{color:#fff}

/* contato e formulário */
.contact-info h2{color:#fff;font-family:var(--f-disp)}
.contact-item-text strong{color:#fff}
.contact-item-text a{color:var(--cyan);text-decoration:none;font-weight:600}
.form-card{padding:34px}
.form-card h3{color:#fff!important;font-family:var(--f-disp)}
.form-group label{color:#cfdaf2;font-weight:600}
.form-group input,.form-group select,.form-group textarea{background:rgba(5,9,19,.6);border:1px solid var(--line-2);color:#fff}
.form-group input::placeholder,.form-group textarea::placeholder{color:#5f7296}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:rgba(5,9,19,.85);border-color:var(--cyan);box-shadow:0 0 0 3px rgba(34,211,238,.15)}
.form-group select option{background:#0b1427;color:#fff}
.form-success{background:rgba(52,211,153,.1);color:#6ee7b7;border-color:#34d399}
.kd-lead-dialog{width:min(680px,calc(100% - 28px));max-width:680px;max-height:min(92vh,900px);margin:auto;padding:0;border:1px solid rgba(130,170,255,.3);border-radius:22px;color:var(--ink);background:linear-gradient(155deg,#0d1830,#060c19);box-shadow:0 40px 140px rgba(0,0,0,.72),0 0 60px -25px rgba(79,124,255,.45);overflow:auto}
.kd-lead-dialog::backdrop{background:rgba(2,5,12,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.kd-lead-dialog-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 30px 14px}
.kd-lead-dialog-tag{font:600 .66rem var(--f-mono);letter-spacing:.16em;color:var(--cyan)}
.kd-lead-dialog-head h2{margin:9px 0 6px;color:#fff;font:700 clamp(1.3rem,4vw,1.7rem)/1.2 var(--f-disp)}
.kd-lead-dialog-head p{max-width:56ch;margin:0;color:var(--mut);font-size:.9rem;line-height:1.55}
.kd-lead-dialog-close{flex:0 0 38px;width:38px;height:38px;border:1px solid var(--line-2);border-radius:11px;background:rgba(255,255,255,.04);color:#dce7ff;font-size:1.35rem;cursor:pointer}
.kd-lead-dialog-close:hover{border-color:var(--cyan);color:#fff}
.kd-lead-dialog-content{padding:0 30px 28px}
.kd-lead-dialog-content .form-card{width:100%;max-width:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.kd-lead-dialog-content .form-card>h3{display:none}

/* faq */
.faq-item{box-shadow:none}
.faq-item.open{border-color:rgba(139,92,246,.5)}
.faq-question{color:#fff}
.faq-icon{color:var(--cyan)}

/* rodapé e flutuantes */
footer{background:#03060d;position:relative}
footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--grad);opacity:.6}
.footer-col h4{font:600 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:#cfdaf2}
.scroll-top{background:var(--surface-2);border:1px solid var(--line-2)}
.whatsapp-tooltip{background:var(--surface-2)}
.lang-hint{display:none!important}

/* páginas de privacidade */
.legal-page h1,.legal-page h2{color:#fff;font-family:var(--f-disp)}
.legal-page p,.legal-page li{color:#c3d0ea}
.legal-page .legal-sub,.legal-page .legal-data{color:var(--mut)}
.legal-page a{color:var(--cyan)}

/* ---------- janela de idioma ---------- */
.kd-lang{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;background:rgba(3,6,13,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:kd-fade .35s ease}
.kd-lang[hidden]{display:none}
@keyframes kd-fade{from{opacity:0}}
.kd-lang-box{position:relative;width:min(100%,560px);padding:34px 30px 24px;border-radius:22px;text-align:center;color:var(--ink);
  background:linear-gradient(180deg,rgba(18,30,58,.97),rgba(8,14,28,.97)) padding-box,var(--grad) border-box;border:1px solid transparent;
  box-shadow:0 40px 120px -30px rgba(79,124,255,.6);animation:kd-pop .45s cubic-bezier(.2,.9,.3,1.2)}
@keyframes kd-pop{from{transform:translateY(16px) scale(.97);opacity:0}}
.kd-lang-box .hx-corner{display:block}
.kd-lang-ico{width:54px;height:54px;margin:0 auto 14px;border-radius:16px;display:grid;place-items:center;background:var(--grad);box-shadow:0 12px 30px -10px rgba(139,92,246,.8)}
.kd-lang-ico svg{width:28px;height:28px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.kd-lang h2{font:700 1.5rem/1.2 var(--f-disp);color:#fff;margin-bottom:4px}
.kd-lang-sub{color:var(--mut);font-size:.95rem;margin-bottom:22px}
.kd-lang-opts{display:grid;grid-template-columns:repeat(var(--n,2),1fr);gap:12px}
.kd-lang-opt{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 12px 16px;border-radius:16px;cursor:pointer;text-decoration:none;color:#fff;
  background:rgba(255,255,255,.03);border:1px solid var(--line-2);font:inherit;transition:transform .2s,border-color .2s,background .2s}
.kd-lang-opt:hover,.kd-lang-opt:focus-visible{transform:translateY(-3px);border-color:rgba(34,211,238,.6);background:rgba(34,211,238,.06);outline:none}
.kd-lang-opt .flag{font-size:2rem;line-height:1}
.kd-lang-opt b{font:700 1.08rem var(--f-disp)}
.kd-lang-opt small{color:var(--mut);font-size:.8rem}
.kd-lang-opt.rec{border-color:transparent;background:linear-gradient(rgba(16,28,54,.98),rgba(16,28,54,.98)) padding-box,var(--grad-anim) border-box;background-size:100% 100%,300% 100%;animation:kd-flow 7s linear infinite;box-shadow:0 18px 40px -18px rgba(79,124,255,.8)}
.kd-lang-opt .rec-tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:3px 10px;border-radius:99px;background:var(--grad);font:700 .6rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#fff}
.kd-lang-foot{margin-top:18px;font-size:.72rem;color:var(--mut-2)}
.kd-lang-foot a{color:var(--mut)}

/* ---------- responsivo ---------- */
@media (max-width:1024px){
  .hx .hero-grid{grid-template-columns:1fr;gap:36px}
  .hx .hero-visual.hx-visual{display:grid;min-height:640px}
  .hx-orbit.o1{width:420px;height:420px}.hx-orbit.o2{width:520px;height:520px}
  .hx-chip.k2{left:0}
}
@media (max-width:768px){
  .hero.hx{text-align:left;padding-top:92px}
  .hx .hero-btns{justify-content:flex-start}
  .hx p{margin:0 0 30px}
  .hx .hero-visual.hx-visual{display:grid;min-height:500px}
  .hx-orbit{display:none}
  .hx-chip.k1{right:2%;top:-4%}.hx-chip.k2{left:2%;bottom:6%}.hx-chip.k3{display:none}
  .stats-inner>div+div::before{display:none}
  footer{padding-bottom:96px}
  /* menu aberto: a barra cresce junto (antes a altura fixa de 72px deixava os links por cima do conteúdo) */
  .navbar.open{background:rgba(5,9,19,.97);max-height:100vh;overflow-y:auto}
  .navbar.open .navbar-inner{height:auto;padding:8px 0}
  .hamburger span{transform-origin:center}
  .navbar.open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .navbar.open .hamburger span:nth-child(2){opacity:0}
  .navbar.open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media (max-width:480px){
  .hx h1{font-size:2.3rem}
  .hx .hero-btns .btn{width:100%;justify-content:center}
  .kd-lang-box{padding:28px 18px 20px}
  .kd-lang-opts{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .btn-primary,.btn-outline,.hx h1 span,.hx-floor,.hx-orbit,.hx-scan,.hx-chip,.popular-badge,.kd-lang-opt.rec{animation:none!important}
}

/* ===== ofertas: mensal sem entrada × pagamento único, moedas, garantias ===== */
.kd-precos-ctrl{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center;margin:-8px 0 44px}
.kd-seg,.kd-moedas{display:inline-flex;gap:4px;padding:5px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.03)}
.kd-seg button,.kd-moedas button{font:600 .92rem var(--f-disp);color:var(--mut);background:none;border:0;border-radius:99px;padding:10px 18px;cursor:pointer;transition:color .2s,background .2s}
.kd-moedas button{font:600 .82rem var(--f-mono);padding:9px 13px}
.kd-seg button:hover,.kd-moedas button:hover{color:#fff}
.kd-seg button[aria-pressed=true]{color:#fff;background:var(--grad-anim);background-size:300% 100%;animation:kd-flow 7s linear infinite;box-shadow:0 8px 22px -10px rgba(139,92,246,.8)}
.kd-moedas button[aria-pressed=true]{color:#fff;background:rgba(79,124,255,.22);box-shadow:inset 0 0 0 1px rgba(79,124,255,.6)}
.kd-seg button:focus-visible,.kd-moedas button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.plan-card{position:relative}
.plan-price{min-height:2.4rem;white-space:nowrap}
.plan-note{font:500 .78rem/1.45 var(--f-mono);color:var(--cyan);margin:10px 0 4px;min-height:2.3em}
.kd-negocio{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-top:40px;padding:28px 32px;border-radius:var(--radius,18px);border:1px dashed rgba(139,92,246,.45);background:linear-gradient(160deg,rgba(79,124,255,.10),rgba(139,92,246,.08))}
.kd-negocio h3{color:#fff;font-size:1.2rem;margin-bottom:6px}
.kd-negocio p{color:var(--mut);font-size:.95rem;max-width:680px}
.kd-negocio .kd-indique{margin-top:10px;color:var(--ink)}
.kd-negocio .kd-indique b{color:var(--cyan)}
.kd-negocio .btn{flex-shrink:0}
.kd-manut-sub{color:var(--mut);font-size:.92rem;margin-top:6px}
.kd-manut-col{text-align:center;padding:18px}
.kd-manut-col+.kd-manut-col{border-left:1px solid var(--line)}
.kd-manut-col .kd-price{font-size:1.5rem;font-weight:800;font-family:var(--f-disp)}
.kd-manut-nome{font-weight:700;color:#fff;margin:6px 0}
.kd-manut-desc{font-size:.86rem;color:var(--mut)}
.kd-garantia h3{margin-bottom:8px}
.kd-form-nota{font-size:.78rem;color:var(--mut);margin-top:12px}
.kd-form-nota a{color:var(--cyan)}
@media (max-width:1024px){.kd-garantias{grid-template-columns:repeat(2,1fr)}}
@media (max-width:768px){
  .kd-negocio{flex-direction:column;align-items:flex-start;padding:24px}
  .kd-manut-col+.kd-manut-col{border-left:0;border-top:1px solid var(--line)}
  .kd-garantias{grid-template-columns:1fr}
  .plan-card.popular{margin-top:6px}
}
@media (max-width:480px){
  .kd-seg{width:100%}.kd-seg button{flex:1;padding:10px 8px;font-size:.84rem}
  .kd-moedas button{padding:8px 10px}
}
@media(max-width:640px){.portfolio-cta-card>div{grid-template-columns:44px minmax(0,1fr);padding:18px!important;column-gap:12px}.portfolio-cta-card .kd-cta-ico{width:42px;height:42px}.portfolio-cta-card .btn{grid-column:1/3;grid-row:3;justify-self:stretch;justify-content:center;margin-top:10px}}
@media(max-width:640px){.hx-preview-controls{display:grid;gap:9px;padding:10px}.hx-preview-note{white-space:normal}.hx-project-picker select{width:100%;max-width:none}.hx-device-switch{width:100%;justify-content:space-between}.hx-device-switch button{flex:1;justify-content:center;padding:8px 5px;font-size:.66rem}.hx-device-stage[data-current-device="tablet"]{min-height:440px}.hx-device-stage[data-current-device="mobile"]{min-height:440px}.hx-device-stage[data-current-device="mobile"] .hx-screen{width:min(58%,240px)}.kd-lead-dialog-head{padding:23px 20px 12px}.kd-lead-dialog-content{padding:0 20px 22px}}
@media(max-width:420px){.hx-device-switch button{gap:4px}.hx-device-switch button span{font-size:.86rem}.hx-device-stage[data-current-device="tablet"],.hx-device-stage[data-current-device="mobile"]{min-height:395px}.hx-device-stage[data-current-device="mobile"] .hx-screen{width:min(60%,215px)}}
@media (prefers-reduced-motion:reduce){.kd-seg button[aria-pressed=true]{animation:none}}
.iti { width: 100%; }
.iti input[type="tel"] { width: 100%; }
.kd-device-preview { margin-top: 14px; color: var(--mut-2); font-size: .78rem; }
.kd-device-preview summary { width: fit-content; color: var(--cyan); cursor: pointer; font-weight: 700; }
.kd-device-options { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 9px; }
.kd-device-options button { padding: 7px 11px; border: 1px solid var(--line-2); border-radius: 8px; background: var(--surface-2); color: #e6efff; font: inherit; cursor: pointer; }
.kd-device-options button:hover, .kd-device-options button:focus-visible { border-color: var(--cyan); color: #fff; }
.kd-device-preview [role="status"] { margin: 8px 0 0; color: #ffd99b; }
.portfolio-info .portfolio-client-link { display: inline-block; margin-top: 10px; color: var(--cyan); font-size: .82rem; font-weight: 700; }
.portfolio-brand-mark { display: grid; width: 100%; height: 100%; place-items: center; padding: 28px; background: linear-gradient(135deg, #fff 0%, #e9f1fa 100%); }
.portfolio-brand-mark img { position: static !important; width: min(82%, 320px) !important; height: auto !important; object-fit: contain !important; }
.portfolio-brand-mark--supra { background: radial-gradient(ellipse at 50% 55%, #17373a, #081c20 72%); color: #e4c16c; }
.portfolio-brand-mark--supra .supra-wordmark { display: flex; align-items: center; gap: 14px; }
.portfolio-brand-mark--supra svg { width: 56px; height: 56px; flex: none; }
.portfolio-brand-mark--supra strong { display: block; font: 600 1.3rem var(--f-disp); letter-spacing: .2em; }
.portfolio-brand-mark--supra span { display: block; margin-top: 4px; font: 500 .58rem var(--f-mono); letter-spacing: .38em; }
