:root{--bg:#020617;--bg2:#06111f;--text:#eef6ff;--muted:#9fb0c8;--line:rgba(148,163,184,.18);--surface:rgba(15,23,42,.68);--surface2:rgba(30,41,59,.62);--brand:#2563eb;--brand2:#06b6d4;--violet:#8b5cf6;--radius:30px;--shadow:0 30px 90px rgba(0,0,0,.42);--max:1180px;--ease:cubic-bezier(.2,.8,.2,1)}html[data-theme="light"]{--bg:#f8fbff;--bg2:#eef6ff;--text:#07111f;--muted:#526171;--line:rgba(15,23,42,.12);--surface:rgba(255,255,255,.82);--surface2:rgba(241,245,249,.9);--shadow:0 30px 90px rgba(15,23,42,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 20% 0,rgba(37,99,235,.28),transparent 33%),radial-gradient(circle at 85% 10%,rgba(6,182,212,.16),transparent 30%),linear-gradient(180deg,var(--bg),var(--bg2));color:var(--text);line-height:1.55;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;background-image:linear-gradient(rgba(148,163,184,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(100% - 40px,var(--max));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;background:#fff;color:#000;padding:12px 16px;border-radius:12px;z-index:9999}.skip-link:focus{top:16px}.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.ambient span{position:absolute;width:36vw;height:36vw;border-radius:999px;filter:blur(70px);opacity:.22;animation:float 12s ease-in-out infinite}.ambient span:nth-child(1){left:-8%;top:12%;background:var(--brand)}.ambient span:nth-child(2){right:-12%;top:22%;background:var(--brand2);animation-delay:-3s}.ambient span:nth-child(3){left:35%;bottom:-20%;background:var(--violet);animation-delay:-6s}.ambient span:nth-child(4){right:20%;bottom:10%;background:#22d3ee;opacity:.12;animation-delay:-9s}@keyframes float{50%{transform:translate3d(3vw,-3vh,0) scale(1.08)}}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:16px 0;transition:.25s var(--ease)}.site-header.scrolled{padding:10px 0;background:rgba(2,6,23,.62);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}html[data-theme="light"] .site-header.scrolled{background:rgba(248,251,255,.72)}.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.04em;font-size:1.28rem}.brand-logo{width:46px;height:46px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.04));border:1px solid var(--line);box-shadow:0 18px 48px rgba(37,99,235,.34);overflow:hidden}.brand-logo img{width:88%;height:88%;object-fit:contain}.brand-text i,.site-footer span{color:var(--brand2);font-style:normal}.nav-menu{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:999px;background:rgba(15,23,42,.42);backdrop-filter:blur(18px)}html[data-theme="light"] .nav-menu{background:rgba(255,255,255,.72)}.nav-menu a,.theme-toggle{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-radius:999px;cursor:pointer;font-weight:800}.nav-menu a:hover,.theme-toggle:hover{background:var(--surface2);color:var(--text)}.nav-cta{background:linear-gradient(135deg,var(--brand),var(--brand2))!important;color:#fff!important;box-shadow:0 14px 32px rgba(37,99,235,.28)}.nav-toggle{display:none;background:var(--surface);border:1px solid var(--line);border-radius:15px;width:46px;height:46px}.nav-toggle span{display:block;width:19px;height:2px;margin:4px auto;background:var(--text);border-radius:10px}.section{padding:104px 0}.section-xl{padding:164px 0 80px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center;min-height:calc(100vh - 130px)}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:#7dd3fc;font-weight:900;font-size:.76rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:18px}.hero h1,.section-heading h2,.contact-card h2{font-size:clamp(2.45rem,7.2vw,6rem);line-height:.93;letter-spacing:-.08em;margin:0 0 22px}.section-heading h2,.contact-card h2{font-size:clamp(2rem,5vw,4.2rem)}.hero p,.section-heading p,.contact-card p{font-size:clamp(1rem,2vw,1.24rem);color:var(--muted);max-width:690px;margin:0 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;border-radius:999px;border:1px solid var(--line);font-weight:900;transition:.25s var(--ease);cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;box-shadow:0 24px 60px rgba(37,99,235,.38);border-color:transparent}.btn-secondary{background:var(--surface);color:var(--text)}.trust-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.trust-row span,.tools-grid span{border:1px solid var(--line);background:var(--surface);padding:9px 13px;border-radius:999px;color:var(--muted);font-weight:800;font-size:.9rem}.hero-visual{position:relative;min-height:570px;display:grid;align-items:center}.logo-stage{position:absolute;inset:20px 20px 130px 20px;border:1px solid var(--line);border-radius:42px;background:radial-gradient(circle at 50% 45%,rgba(6,182,212,.24),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.025));backdrop-filter:blur(20px);display:grid;place-items:center;box-shadow:var(--shadow);overflow:hidden}.logo-stage:before{content:"";position:absolute;inset:-1px;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.24),transparent 45%);transform:translateX(-120%);animation:shine 5s ease-in-out infinite}.logo-stage img{width:min(72%,390px);filter:drop-shadow(0 35px 70px rgba(6,182,212,.35));animation:logoPulse 4.8s ease-in-out infinite}@keyframes logoPulse{50%{transform:translateY(-10px) scale(1.025)}}@keyframes shine{45%,100%{transform:translateX(120%)}}.glass-card,.service-card,.stat-card,.team-card,.role-card,.contact-card{border:1px solid var(--line);background:linear-gradient(180deg,var(--surface),rgba(15,23,42,.42));backdrop-filter:blur(22px);border-radius:var(--radius);box-shadow:var(--shadow)}.command-card{position:absolute;left:42px;right:42px;bottom:26px;padding:22px}.panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel-top strong{font-size:2.3rem;letter-spacing:-.07em}.metric-line{margin:12px 0}.metric-line span{display:block;color:var(--muted);margin-bottom:7px;font-weight:700}.metric-line b{display:block;width:var(--w);height:9px;border-radius:99px;background:linear-gradient(90deg,var(--brand),var(--brand2));box-shadow:0 0 24px rgba(56,189,248,.35)}.marquee{overflow:hidden;border-block:1px solid var(--line);background:rgba(255,255,255,.03);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.marquee div{display:flex;gap:34px;width:max-content;animation:marquee 28s linear infinite;padding:18px 0}.marquee span{color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}@keyframes marquee{to{transform:translateX(-50%)}}.section-heading{text-align:center;max-width:810px;margin:0 auto 50px}.section-heading.left{text-align:left;margin:0}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card,.role-card{position:relative;padding:26px;overflow:hidden;transition:.28s var(--ease)}.service-card:before,.team-card:before,.role-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 0,rgba(56,189,248,.17),transparent 42%);pointer-events:none}.service-card:hover,.team-card:hover,.role-card:hover{transform:translateY(-8px);border-color:rgba(56,189,248,.46);box-shadow:0 34px 100px rgba(37,99,235,.2)}.icon{font-size:2rem}.service-card h3,.role-card h3,.team-card h3{font-size:1.25rem;margin:16px 0 10px;letter-spacing:-.03em}.service-card p,.role-card p,.team-card p{color:var(--muted);margin:0 0 18px}.service-card small{color:#7dd3fc;font-weight:800}.surface{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));border-block:1px solid var(--line)}.impact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.stat-card{padding:30px;text-align:center}.stat-card strong{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1;letter-spacing:-.075em;background:linear-gradient(135deg,#fff,var(--brand2));-webkit-background-clip:text;background-clip:text;color:transparent}.stat-card span{display:block;color:var(--muted);font-weight:800;margin-top:12px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.team-card{position:relative;text-align:center;padding:32px;overflow:hidden}.avatar-ring{width:168px;height:168px;margin:0 auto 22px;padding:4px;border-radius:50%;background:conic-gradient(from 210deg,var(--brand),var(--brand2),var(--violet),var(--brand));box-shadow:0 24px 60px rgba(56,189,248,.24)}.avatar-ring img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:5px solid rgba(2,6,23,.88)}html[data-theme="light"] .avatar-ring img{border-color:#fff}.team-card a{display:inline-flex;margin-top:4px;color:#7dd3fc;font-weight:900}.roles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tools-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.contact-card{display:grid;grid-template-columns:.9fr 1fr;gap:36px;padding:40px}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:6px;color:var(--muted);font-weight:800}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:16px;padding:14px 16px;outline:none;font:inherit}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--brand2);box-shadow:0 0 0 4px rgba(56,189,248,.12)}.contact-form textarea{min-height:126px;resize:vertical}.hidden-field{display:none}.contact-form small{color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted)}.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.footer-grid strong{color:var(--text);font-size:1.2rem}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}@media (max-width:1020px){.nav-toggle{display:block}.nav-menu{position:fixed;top:76px;left:20px;right:20px;display:grid;border-radius:24px;padding:14px;transform:translateY(-16px);opacity:0;pointer-events:none;transition:.25s var(--ease)}.nav-menu.open{transform:none;opacity:1;pointer-events:auto}.hero-grid,.impact-grid,.contact-card{grid-template-columns:1fr}.hero-visual{min-height:520px}.cards-grid,.roles-grid{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.container{width:min(100% - 28px,var(--max))}.section{padding:74px 0}.section-xl{padding:132px 0 68px}.cards-grid,.stats-grid,.team-grid,.roles-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(2.45rem,14vw,4.05rem)}.hero-visual{min-height:430px}.logo-stage{inset:10px 0 110px}.command-card{left:8px;right:8px;bottom:0}.contact-card{padding:24px;border-radius:24px}.avatar-ring{width:146px;height:146px}.footer-grid{display:grid}.btn{width:100%}.trust-row span{flex:1;text-align:center}.nav-menu a,.theme-toggle{padding:13px 14px;text-align:center}.nav-cta{display:block}.brand-text{font-size:1.1rem}}

/* ===== Hero portfolio: logo removida, painel dinâmico enterprise ===== */
.portfolio-stage{position:relative;min-height:570px;border:1px solid var(--line);border-radius:44px;background:radial-gradient(circle at 50% 18%,rgba(6,182,212,.24),transparent 34%),radial-gradient(circle at 20% 70%,rgba(139,92,246,.22),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.025));backdrop-filter:blur(24px);box-shadow:var(--shadow);overflow:hidden;padding:42px;display:grid;align-content:center}.portfolio-stage:before{content:"";position:absolute;inset:-1px;background:linear-gradient(115deg,transparent 18%,rgba(255,255,255,.22),transparent 42%);transform:translateX(-120%);animation:shine 5.5s ease-in-out infinite}.portfolio-stage:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(125,211,252,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(125,211,252,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at center,#000 10%,transparent 72%);opacity:.75}.portfolio-orb{position:absolute;width:300px;height:300px;border-radius:999px;top:42px;right:44px;background:conic-gradient(from 140deg,var(--brand),var(--brand2),var(--violet),var(--brand));filter:blur(4px);opacity:.22;animation:portfolioFloat 7s ease-in-out infinite}.portfolio-card{position:relative;z-index:2;padding:28px;border-radius:34px;max-width:520px;margin-inline:auto;transform:translateY(10px);animation:cardFloat 5.8s ease-in-out infinite}.portfolio-card .panel-top strong{background:linear-gradient(135deg,#fff,var(--brand2));-webkit-background-clip:text;background-clip:text;color:transparent}.portfolio-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.portfolio-kpis div{border:1px solid var(--line);background:rgba(255,255,255,.055);border-radius:20px;padding:14px 12px}.portfolio-kpis strong{display:block;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1;letter-spacing:-.05em}.portfolio-kpis span{display:block;color:var(--muted);font-size:.8rem;font-weight:800;margin-top:7px}.portfolio-ticket{position:absolute;z-index:3;left:34px;bottom:34px;padding:16px 18px;border-radius:24px;min-width:220px;animation:ticketFloat 6.4s ease-in-out infinite}.portfolio-ticket span,.portfolio-ticket small{display:block;color:var(--muted);font-weight:800}.portfolio-ticket strong{display:block;margin:4px 0;color:#7dd3fc}.metric-line b{transform-origin:left center;animation:metricGrow 1.6s var(--ease) both,metricGlow 2.4s ease-in-out infinite 1.7s}@keyframes portfolioFloat{50%{transform:translate(-18px,24px) scale(1.08);opacity:.32}}@keyframes cardFloat{50%{transform:translateY(-6px)}}@keyframes ticketFloat{50%{transform:translateY(-10px) translateX(6px)}}@keyframes metricGrow{from{transform:scaleX(.12);opacity:.35}to{transform:scaleX(1);opacity:1}}@keyframes metricGlow{50%{filter:brightness(1.25);box-shadow:0 0 34px rgba(56,189,248,.55)}}
@media (max-width:1020px){.portfolio-stage{min-height:520px}.portfolio-card{max-width:100%}}
@media (max-width:640px){.portfolio-stage{min-height:460px;padding:18px;border-radius:30px}.portfolio-card{padding:20px;border-radius:26px}.portfolio-kpis{grid-template-columns:1fr}.portfolio-ticket{position:relative;left:auto;bottom:auto;margin-top:16px;min-width:0}.portfolio-orb{width:220px;height:220px;right:-30px;top:20px}.panel-top strong{font-size:1.9rem}}


/* ==========================================================================
   KEYDOC FIX FINAL — LIGHT ACCESSIBILITY + HAMBURGER FUNCTIONAL + WHATSAPP
   ========================================================================== */
:root{
  --menu-text:#F5F7FA;
  --menu-muted:#C6D3E3;
  --menu-soft:#E6EEF8;
  --menu-glass:rgba(7,13,28,.96);
  --menu-border:rgba(125,211,252,.26);
  --menu-border-strong:rgba(125,211,252,.50);
}

html[data-theme="light"]{
  --bg:#F7FAFF;
  --bg2:#EAF2FF;
  --text:#07111F;
  --muted:#334155;
  --line:rgba(15,23,42,.16);
  --surface:rgba(255,255,255,.88);
  --surface2:rgba(241,245,249,.96);
  --shadow:0 28px 74px rgba(15,23,42,.14);
}

html[data-theme="light"] body{
  background:
    radial-gradient(circle at 20% 0,rgba(37,99,235,.13),transparent 34%),
    radial-gradient(circle at 85% 10%,rgba(6,182,212,.12),transparent 31%),
    linear-gradient(180deg,var(--bg),var(--bg2));
  color:var(--text);
}

html[data-theme="light"] body:before{
  background-image:
    linear-gradient(rgba(15,23,42,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(15,23,42,.055) 1px,transparent 1px);
}

html[data-theme="light"] .site-header.scrolled{
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(15,23,42,.13);
}

html[data-theme="light"] .brand,
html[data-theme="light"] .footer-grid strong,
html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3{
  color:#07111F;
}

html[data-theme="light"] .hero p,
html[data-theme="light"] .section-heading p,
html[data-theme="light"] .contact-card p,
html[data-theme="light"] .service-card p,
html[data-theme="light"] .role-card p,
html[data-theme="light"] .team-card p,
html[data-theme="light"] .contact-form small,
html[data-theme="light"] .site-footer,
html[data-theme="light"] .site-footer p,
html[data-theme="light"] .metric-line span,
html[data-theme="light"] .portfolio-kpis span,
html[data-theme="light"] .portfolio-ticket span,
html[data-theme="light"] .portfolio-ticket small,
html[data-theme="light"] .trust-row span{
  color:#334155;
}

html[data-theme="light"] .glass-card,
html[data-theme="light"] .service-card,
html[data-theme="light"] .stat-card,
html[data-theme="light"] .team-card,
html[data-theme="light"] .role-card,
html[data-theme="light"] .contact-card{
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,250,252,.86));
  border-color:rgba(15,23,42,.13);
}

html[data-theme="light"] .portfolio-stage{
  background:
    radial-gradient(circle at 50% 18%,rgba(6,182,212,.15),transparent 34%),
    radial-gradient(circle at 20% 70%,rgba(139,92,246,.12),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(241,245,249,.88));
  border-color:rgba(15,23,42,.13);
}

html[data-theme="light"] .portfolio-card .panel-top strong,
html[data-theme="light"] .stat-card strong{
  background:linear-gradient(135deg,#0F172A,#0284C7);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

html[data-theme="light"] .nav-menu{
  background:rgba(255,255,255,.90);
}

html[data-theme="light"] .nav-menu a,
html[data-theme="light"] .theme-toggle{
  color:#1E293B;
}

html[data-theme="light"] .nav-menu a:hover,
html[data-theme="light"] .theme-toggle:hover{
  color:#020617;
  background:rgba(37,99,235,.10);
}

html[data-theme="light"] .btn-secondary{
  background:rgba(255,255,255,.92);
  color:#07111F;
  border-color:rgba(15,23,42,.16);
}

html[data-theme="light"] .contact-form input,
html[data-theme="light"] .contact-form textarea{
  background:#FFFFFF;
  color:#07111F;
  border-color:rgba(15,23,42,.18);
}

/* WebView base */
*,*::before,*::after{box-sizing:border-box}
html{
  width:100%;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  touch-action:manipulation;
  scroll-padding-top:96px;
}
body{
  width:100%;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:none;
  -webkit-tap-highlight-color:transparent;
}
button,a,[role="button"]{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
input,textarea,select,button{font-size:16px}
img,svg,video,canvas{max-width:100%;height:auto}
.container,.nav-shell,.hero-grid,.impact-grid,.contact-card,.portfolio-stage,.portfolio-card,.portfolio-ticket{min-width:0}

/* Hamburger funcional e premium */
.nav-shell{position:relative;min-height:64px}
.nav-toggle{
  position:relative;
  display:none;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  min-width:58px;
  border:1px solid var(--menu-border);
  border-radius:22px;
  background:
    radial-gradient(circle at 32% 18%,rgba(125,211,252,.24),transparent 36%),
    linear-gradient(145deg,rgba(15,23,42,.96),rgba(2,6,23,.82));
  box-shadow:
    0 20px 48px rgba(37,99,235,.30),
    inset 0 1px 0 rgba(255,255,255,.12);
  cursor:pointer;
  z-index:1202;
  isolation:isolate;
  transition:transform .22s var(--ease),border-color .22s var(--ease),box-shadow .22s var(--ease);
}
.nav-toggle:hover,.nav-toggle:focus-visible,.nav-toggle[aria-expanded="true"]{
  transform:translateY(-1px);
  border-color:var(--menu-border-strong);
  box-shadow:
    0 24px 58px rgba(6,182,212,.28),
    0 0 0 4px rgba(6,182,212,.12),
    inset 0 1px 0 rgba(255,255,255,.16);
  outline:none;
}
.nav-toggle span{
  position:absolute;
  width:25px;
  height:2px;
  margin:0;
  border-radius:999px;
  background:linear-gradient(90deg,#F5F7FA,#7DD3FC,#A78BFA);
  box-shadow:0 0 14px rgba(125,211,252,.48);
  transition:transform .26s cubic-bezier(.2,.8,.2,1),opacity .18s ease,width .22s ease;
}
.nav-toggle span:nth-child(1){transform:translateY(-8px)}
.nav-toggle span:nth-child(2){transform:translateY(0);width:18px;right:16px}
.nav-toggle span:nth-child(3){transform:translateY(8px)}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg);width:26px}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:translateX(10px)}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg);width:26px}

/* Menu mobile */
@media(max-width:1020px){
  .nav-toggle{display:inline-flex!important;margin-left:auto}
  .nav-menu{
    position:fixed!important;
    top:calc(76px + env(safe-area-inset-top,0px))!important;
    left:auto!important;
    right:14px!important;
    width:min(430px,calc(100vw - 28px))!important;
    max-width:calc(100vw - 28px)!important;
    max-height:calc(100dvh - 94px - env(safe-area-inset-bottom,0px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    display:grid!important;
    grid-template-columns:1fr;
    gap:10px;
    padding:14px!important;
    border-radius:30px!important;
    background:
      radial-gradient(circle at 22% 0%,rgba(6,182,212,.22),transparent 36%),
      radial-gradient(circle at 90% 18%,rgba(139,92,246,.18),transparent 34%),
      linear-gradient(180deg,var(--menu-glass),rgba(2,6,23,.96))!important;
    border:1px solid var(--menu-border)!important;
    box-shadow:
      0 34px 94px rgba(0,0,0,.55),
      0 0 0 1px rgba(255,255,255,.04),
      inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);
    opacity:0;
    pointer-events:none;
    transform:translate3d(0,-10px,0) scale(.985);
    transform-origin:top right;
    transition:opacity .2s ease,transform .24s cubic-bezier(.2,.8,.2,1);
    z-index:1201;
  }
  .nav-menu.open{
    opacity:1!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0) scale(1)!important;
  }
  .nav-menu::before{
    content:"Menu";
    display:block;
    color:#B8C5D6;
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
    padding:4px 4px 2px;
  }
  .nav-menu a,.theme-toggle{
    width:100%;
    min-height:56px;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-radius:19px;
    padding:14px 16px!important;
    color:#E6EEF8!important;
    background:linear-gradient(145deg,rgba(255,255,255,.066),rgba(255,255,255,.035))!important;
    border:1px solid rgba(148,163,184,.14)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    font-size:1rem;
    font-weight:850;
    line-height:1.22;
    text-align:left!important;
  }
  .nav-menu a::after{
    content:"›";
    flex:0 0 auto;
    color:#7DD3FC;
    font-size:1.45rem;
    line-height:1;
  }
  .nav-menu a:hover,.nav-menu a:focus-visible,.nav-menu a:active,.theme-toggle:hover,.theme-toggle:focus-visible{
    color:#F5F7FA!important;
    border-color:rgba(125,211,252,.44)!important;
    background:
      radial-gradient(circle at 20% 50%,rgba(125,211,252,.16),transparent 46%),
      linear-gradient(135deg,rgba(37,99,235,.24),rgba(6,182,212,.12))!important;
    outline:none;
  }
  .nav-menu .nav-cta{
    justify-content:center!important;
    color:#fff!important;
    background:linear-gradient(135deg,var(--brand),var(--brand2))!important;
    border-color:transparent!important;
  }
  .nav-menu .nav-cta::after{display:none}
  .lang-switcher{
    width:100%;
    min-height:58px;
    justify-content:center;
    gap:8px;
    padding:8px;
    border-radius:21px;
    background:linear-gradient(145deg,rgba(255,255,255,.062),rgba(255,255,255,.032));
    border:1px solid rgba(148,163,184,.14);
  }
  .lang-btn{
    width:56px;
    height:44px;
    border-radius:16px;
    font-size:1.28rem;
    color:#F5F7FA;
  }
  .lang-btn.active,.lang-btn:hover,.lang-btn:focus-visible{
    background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(6,182,212,.16));
    outline:none;
  }
  .theme-toggle{justify-content:center!important;color:#E6EEF8!important;font-size:1.16rem}
}
@media(max-width:640px){
  .nav-shell{width:min(100% - 28px,var(--max));gap:10px}
  .nav-toggle{width:54px;height:54px;min-width:54px;border-radius:20px}
  .nav-menu{
    top:calc(72px + env(safe-area-inset-top,0px))!important;
    left:14px!important;
    right:14px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100dvh - 88px - env(safe-area-inset-bottom,0px))!important;
    border-radius:26px!important;
    padding:12px!important;
  }
  .nav-menu a,.theme-toggle{min-height:54px;padding:13px 14px!important;font-size:.98rem}
}

/* WhatsApp restaurado */
.floating-whatsapp{
  position:fixed!important;
  right:max(18px,env(safe-area-inset-right,0px))!important;
  bottom:max(22px,env(safe-area-inset-bottom,0px))!important;
  width:62px!important;
  height:62px!important;
  z-index:1300!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:999px!important;
  padding:0!important;
  box-shadow:none!important;
  animation:keydocWhatsappPulse 2.2s ease-in-out infinite;
}
.floating-whatsapp img{
  width:62px!important;
  height:62px!important;
  object-fit:contain!important;
  display:block!important;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.34)) drop-shadow(0 0 18px rgba(139,92,246,.22));
  transition:transform .22s var(--ease),filter .22s var(--ease);
}
.floating-whatsapp:hover img,.floating-whatsapp:focus-visible img{
  transform:translateY(-2px) scale(1.075);
  filter:drop-shadow(0 20px 34px rgba(0,0,0,.38)) drop-shadow(0 0 24px rgba(125,211,252,.28));
}
.floating-whatsapp:focus-visible{outline:3px solid rgba(125,211,252,.55);outline-offset:5px}
@keyframes keydocWhatsappPulse{
  0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(139,92,246,0))}
  50%{transform:scale(1.045);filter:drop-shadow(0 16px 30px rgba(139,92,246,.28))}
}
@media(max-width:640px){
  .floating-whatsapp,.floating-whatsapp img{width:56px!important;height:56px!important}
  .floating-whatsapp{
    right:max(14px,env(safe-area-inset-right,0px))!important;
    bottom:max(18px,env(safe-area-inset-bottom,0px))!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .nav-menu,.nav-toggle,.nav-toggle span,.floating-whatsapp,.floating-whatsapp img{
    animation:none!important;transition:none!important;
  }
}


/* ==========================================================================
   KEYDOC PATCH — FIX NUMBERS CUTTING INSIDE STATS CARDS
   ========================================================================== */

.stat-card{
  overflow:visible !important;
  padding:34px 26px !important;
}

.stat-card strong{
  display:block !important;
  width:100% !important;
  overflow:visible !important;
  line-height:1.08 !important;
  padding-right:10px !important;
  letter-spacing:-0.05em !important;
  word-break:keep-all !important;
}

@media (max-width:640px){
  .stat-card{
    padding:28px 20px !important;
  }

  .stat-card strong{
    font-size:clamp(2.8rem,14vw,4rem) !important;
    line-height:1.02 !important;
    padding-right:6px !important;
  }
}
