/* ═══════════════════════════ VARIABLES ═══════════════════════════ */
:root{
  --c:#00FFD1;--c2:#00BFFF;--c3:#7B61FF;
  --logo-cyan:#00E5FF;
  --logo-blue:#2979FF;
  --logo-purple:#9B4DFF;
  --logo-magenta:#FF00CC;
  --brand-grad:linear-gradient(135deg,var(--logo-cyan) 0%,var(--logo-blue) 35%,var(--logo-purple) 65%,var(--logo-magenta) 100%);
  --brand-grad-h:linear-gradient(135deg,var(--logo-magenta) 0%,var(--logo-purple) 35%,var(--logo-blue) 65%,var(--logo-cyan) 100%);
  --c-glow:rgba(0,255,209,0.35);
  --c-dim:rgba(0,255,209,0.07);
  --c-border:rgba(0,255,209,0.22);
  --magenta-dim:rgba(255,0,204,0.07);
  --magenta-border:rgba(255,0,204,0.28);
  --purple-dim:rgba(155,77,255,0.07);
  --purple-border:rgba(155,77,255,0.28);
  --red:#FF3B5C;--green:#00E676;--amber:#FFB547;
  --bg:#04060D;--bg2:#070A14;--bg3:#0B0F1C;--bg4:#0F1527;
  --surface:rgba(255,255,255,0.03);
  --border:rgba(255,255,255,0.065);
  --text:#ECF0FF;--muted:#5A6880;--muted2:#8892A4;
  --fh:'Orbitron',monospace;--fb:'Space Grotesk',sans-serif;--fm:'JetBrains Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--fb);overflow-x:hidden;line-height:1.65}
a{text-decoration:none}button{cursor:pointer}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--c)}
::selection{background:rgba(0,255,209,0.2);color:#fff}

/* ─ CANVAS ─ */
#bgc{position:fixed;inset:0;z-index:0;pointer-events:none}

/* ─ CURSOR GLOW ─ */
#cursor-glow{
  position:fixed;width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle,rgba(0,255,209,0.04) 0%,transparent 70%);
  pointer-events:none;z-index:1;transform:translate(-50%,-50%);
  transition:opacity 0.3s;
}

/* ═══════════════════════════ LAYOUT ═══════════════════════════ */
.wrap{max-width:1160px;margin:0 auto;padding:0 56px;position:relative;z-index:2}
.section{padding:96px 0;position:relative}
.section-alt{background:var(--bg2)}
#about.section{padding:72px 0;}

/* ═══════════════════════════ VIDEO PLAYER ═══════════════════════════ */

#videoWrapper {
  display: flex !important;
  flex-direction: column !important;
  background: #000 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid var(--c-border) !important;
  aspect-ratio: unset !important;
  align-items: unset !important;
  justify-content: unset !important;
}

/* ── Stage holds video + all overlays ── */
.vp-stage {
  position: relative;
  width: 100%;
  line-height: 0;
  cursor: pointer;
}
.vp-stage::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,255,209,0.04) 0%, transparent 50%);
  pointer-events: none;
  z-index: 2;
}

.video-element {
  width: 100%;
  display: block;
  will-change: auto;
  contain: paint;
}

/* ── Centre play/pause indicator ── */
.vp-center-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 4;
  pointer-events: none;
  transition: opacity 0.22s ease;
}
.vp-big-btn {
  position: relative;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(4,6,13,0.55);
  border: 2px solid rgba(0,255,209,0.75);
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.vp-big-btn svg {
  width: 30px;
  height: 30px;
  color: var(--c);
  position: relative;
  left: 2px;
}
#cpIconPause { left: 0 !important; }

.vp-ring-pulse {
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 1.5px solid rgba(0,255,209,0.35);
  animation: vp-ring 2.4s ease-out infinite;
}
@keyframes vp-ring {
  0%   { transform: scale(1);    opacity: 0.5; }
  100% { transform: scale(1.55); opacity: 0;   }
}
.vp-center-play.playing { opacity: 0; }
#videoWrapper:hover .vp-center-play.playing { opacity: 0; }
#videoWrapper:hover .vp-center-play:not(.playing) .vp-big-btn {
  border-color: var(--c);
  transform: scale(1.06);
}

/* ── Click overlay ── */
.vp-click-area {
  position: absolute;
  inset: 0;
  z-index: 3;
}

/* ══════════════════════════════════════════
   CONTROLS — two modes:
   • Default : solid bar below the video
   • Fullscreen: absolute overlay at the bottom of vp-stage
══════════════════════════════════════════ */
.vp-controls {
  position: relative;
  z-index: 6;
  background: rgba(4,6,13,0.96);
  border-top: 1px solid rgba(0,255,209,0.1);
  padding: 8px 14px 10px;
  opacity: 1;
  transform: none;
  transition: opacity 0.28s ease, transform 0.28s ease;
}

#videoWrapper.vp-fs .vp-stage { display: flex; flex-direction: column; }
#videoWrapper.vp-fs .video-element { flex: 1; object-fit: contain; height: 0; }

#videoWrapper.vp-fs .vp-controls {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(4,6,13,0.95) 0%, rgba(4,6,13,0.6) 70%, transparent 100%);
  border-top: none;
  padding: 32px 18px 14px;
  opacity: 0;
  transform: translateY(6px);
  pointer-events: none;
}
#videoWrapper.vp-fs.vp-paused .vp-controls,
#videoWrapper.vp-fs .vp-controls.vp-ctrl-show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}

/* ── Progress bar ── */
.vp-progress-wrap {
  position: relative;
  height: 20px;
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-bottom: 4px;
}
.vp-progress-bg {
  position: relative;
  width: 100%;
  height: 3px;
  background: rgba(255,255,255,0.12);
  border-radius: 99px;
  overflow: visible;
  transition: height 0.15s ease;
}
.vp-progress-wrap:hover .vp-progress-bg { height: 5px; }
.vp-buffered {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 0%;
  background: rgba(255,255,255,0.18);
  border-radius: 99px;
}
.vp-played {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 0%;
  background: var(--c);
  border-radius: 99px;
}
.vp-thumb {
  position: absolute;
  top: 50%;
  left: 0%;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 8px rgba(0,255,209,0.7);
  transform: translate(-50%,-50%) scale(0);
  transition: transform 0.15s ease;
  pointer-events: none;
}
.vp-progress-wrap:hover .vp-thumb { transform: translate(-50%,-50%) scale(1); }

.vp-time-tooltip {
  position: absolute;
  bottom: calc(100% + 6px);
  transform: translateX(-50%);
  background: rgba(4,6,13,0.95);
  border: 1px solid var(--c-border);
  color: var(--c);
  font-family: var(--fm);
  font-size: 10px;
  letter-spacing: 0.06em;
  padding: 3px 7px;
  border-radius: 3px;
  pointer-events: none;
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.12s;
}
.vp-progress-wrap:hover .vp-time-tooltip { opacity: 1; }

/* ── Button row ── */
.vp-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.vp-row-left, .vp-row-right {
  display: flex;
  align-items: center;
  gap: 2px;
}

/* Skip buttons */
.vp-skip-btn {
  background: none;
  border: none;
  padding: 5px 4px;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.7);
  transition: color 0.18s, background 0.18s;
  font-family: var(--fm);
  font-size: 9px;
  letter-spacing: 0.04em;
  gap: 2px;
  white-space: nowrap;
}
.vp-skip-btn svg { width: 16px; height: 16px; display: block; flex-shrink: 0; }
.vp-skip-btn:hover { color: var(--c); background: rgba(0,255,209,0.08); }

@media (max-width: 640px) {
  .vp-vol-slider-wrap { display: none; }
  .vp-progress-wrap { height: 28px; }
  .vp-controls { padding: 6px 10px 8px; }
  .vp-time { font-size: 10px; }

  #videoWrapper.vp-fs .vp-controls {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.28s ease, transform 0.28s ease;
    pointer-events: none !important;
    background: linear-gradient(to top, rgba(4,6,13,0.96) 0%, rgba(4,6,13,0.4) 60%, transparent 100%);
    padding: 48px 14px calc(18px + env(safe-area-inset-bottom, 0px));
    border-top: none;
    z-index: 10;
  }
  #videoWrapper.vp-fs .vp-controls.vp-ctrl-show {
    opacity: 1;
    transform: translateY(0);
    pointer-events: all !important;
  }
  .vp-stage:fullscreen .vp-controls,
  .vp-stage:-webkit-full-screen .vp-controls {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.28s ease, transform 0.28s ease;
    pointer-events: none !important;
    background: linear-gradient(to top, rgba(4,6,13,0.96) 0%, transparent 100%);
    padding: 48px 14px calc(18px + env(safe-area-inset-bottom, 0px));
    border-top: none;
    z-index: 10;
  }
  .vp-stage:fullscreen .vp-controls.vp-ctrl-show,
  .vp-stage:-webkit-full-screen .vp-controls.vp-ctrl-show {
    opacity: 1;
    transform: translateY(0);
    pointer-events: all !important;
  }
  .vp-skip-label { display: none; }
}

.vp-btn {
  background: none;
  border: none;
  padding: 5px;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.7);
  transition: color 0.18s, background 0.18s;
}
.vp-btn:hover { color: var(--c); background: rgba(0,255,209,0.08); }
.vp-btn svg { width: 20px; height: 20px; display: block; flex-shrink: 0; }

/* ── Volume ── */
.vp-vol-wrap {
  display: flex;
  align-items: center;
  position: relative;
}

.vp-vol-slider-wrap {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  background: rgba(7,10,20,0.96);
  border: 1px solid rgba(0,255,209,0.16);
  border-radius: 10px;
  padding: 14px 11px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s cubic-bezier(.22,1,.36,1), transform 0.2s cubic-bezier(.22,1,.36,1);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  z-index: 20;
  width: 38px;
  max-width: unset;
  overflow: visible;
  box-shadow: 0 16px 48px rgba(0,0,0,0.6), 0 0 24px rgba(0,255,209,0.04);
}
.vp-vol-slider-wrap::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0; right: 0;
  height: 12px;
}
.vp-vol-slider-wrap::before {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 8px; height: 8px;
  background: rgba(7,10,20,0.96);
  border-right: 1px solid rgba(0,255,209,0.16);
  border-bottom: 1px solid rgba(0,255,209,0.16);
}

.vp-vol-wrap.vp-vol-open .vp-vol-slider-wrap {
  opacity: 1;
  pointer-events: all;
  transform: translateX(-50%) translateY(0);
}

.vp-vol-track {
  position: relative;
  width: 4px;
  height: 80px;
  border-radius: 99px;
  background: rgba(255,255,255,0.08);
  cursor: pointer;
  flex-shrink: 0;
}
.vp-vol-fill {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  border-radius: 99px;
  background: var(--c);
  transition: height 0.06s linear;
  pointer-events: none;
}
.vp-vol-fill::after {
  content: '';
  position: absolute;
  inset: -2px;
  border-radius: 99px;
  background: inherit;
  filter: blur(4px);
  opacity: 0.4;
  pointer-events: none;
}
.vp-vol-thumb {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 50%);
  width: 12px; height: 12px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 2px rgba(0,255,209,0.8), 0 0 10px rgba(0,255,209,0.4);
  pointer-events: none;
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}
.vp-vol-track:hover .vp-vol-thumb {
  transform: translate(-50%, 50%) scale(1.25);
  box-shadow: 0 0 0 2px var(--c), 0 0 16px rgba(0,255,209,0.6);
}

.vp-vol-slider {
  position: absolute;
  inset: -8px;
  width: calc(100% + 16px);
  height: calc(100% + 16px);
  opacity: 0;
  cursor: pointer;
  -webkit-appearance: slider-vertical;
  appearance: slider-vertical;
  writing-mode: vertical-lr;
  direction: rtl;
  margin: 0;
  padding: 0;
}

.vp-vol-pct {
  font-family: var(--fm);
  font-size: 9px;
  letter-spacing: 0.06em;
  line-height: 1;
  color: var(--c);
  font-weight: 600;
}

/* ── Time ── */
.vp-time {
  font-family: var(--fm);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: rgba(255,255,255,0.6);
  white-space: nowrap;
  padding-left: 8px;
}
.vp-time-sep { color: rgba(255,255,255,0.25); margin: 0 4px; }

/* ═══════════════════════════ ATOMS ═══════════════════════════ */
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--fm);font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--c);border:1px solid var(--c-border);background:var(--c-dim);
  padding:5px 14px;border-radius:2px;margin-bottom:24px;
}
.eyebrow::before{content:'//';opacity:0.45;margin-right:2px}
.accent{color:var(--c)}

/* ═══════════════════════════ BUTTONS ═══════════════════════════ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--fh);font-size:10.5px;font-weight:700;
  letter-spacing:0.12em;text-transform:uppercase;
  padding:14px 28px;border-radius:2px;border:none;
  cursor:pointer;position:relative;overflow:hidden;white-space:nowrap;
  transition:transform 0.22s cubic-bezier(0.22,1,0.36,1),
             box-shadow 0.22s cubic-bezier(0.22,1,0.36,1),
             background 0.22s, color 0.22s, border-color 0.22s;
}
/* Shimmer sweep */
.btn::before{
  content:'';position:absolute;top:0;left:-100%;
  width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.18),transparent);
  transition:left 0.45s cubic-bezier(0.22,1,0.36,1);
  pointer-events:none;
}
.btn:hover::before{left:160%;}
/* Corner micro-accents */
.btn::after{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:
    linear-gradient(135deg,rgba(255,255,255,0.12) 0%,transparent 40%) top left/8px 8px no-repeat,
    linear-gradient(225deg,rgba(255,255,255,0.08) 0%,transparent 40%) top right/8px 8px no-repeat,
    linear-gradient(315deg,rgba(255,255,255,0.06) 0%,transparent 40%) bottom right/8px 8px no-repeat,
    linear-gradient(45deg, rgba(255,255,255,0.06) 0%,transparent 40%) bottom left/8px 8px no-repeat;
}

/* CTA — sólido cyan */
.btn-cta{
  background:var(--c);color:#04060D;font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.22);
}
.btn-cta:hover{
  background:#00ffe5;
  transform:translateY(-3px);
  box-shadow:0 12px 36px rgba(0,255,209,0.38),0 0 0 1px var(--c),inset 0 1px 0 rgba(255,255,255,0.28);
}
.btn-cta:active{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,255,209,0.28);}

/* Ghost — contorno sutil roxo no hover */
.btn-ghost{
  background:transparent;color:var(--text);border:1px solid var(--border);
}
.btn-ghost:hover{
  border-color:var(--purple-border);color:var(--logo-purple);
  background:var(--purple-dim);transform:translateY(-2px);
  box-shadow:0 8px 28px rgba(155,77,255,0.15),0 0 0 1px var(--purple-border);
}
.btn-ghost:active{transform:translateY(0);}

/* ═══════════════════════════ SCANLINE ═══════════════════════════ */
.scanline{position:absolute;inset:0;pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,209,0.008) 2px,rgba(0,255,209,0.008) 4px)}

/* ═══════════════════════════ NAV ═══════════════════════════ */
#nav{position:fixed;top:0;left:0;right:0;z-index:900;transition:all 0.4s}
#nav.scrolled{background:rgba(4,6,13,0.94);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-bottom:1px solid var(--border)}
.nav-inner{max-width:1160px;margin:0 auto;padding:0 56px;display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{font-family:var(--fh);font-weight:900;font-size:15px;color:var(--text);letter-spacing:0.08em}
.logo span{color:var(--c)}
.nav-links{display:flex;align-items:center;gap:36px}
.nav-links a{font-family:var(--fm);font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted2);transition:color 0.2s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--c);transition:width 0.3s}
.nav-links a:hover{color:var(--c)}
.nav-links a:hover::after{width:100%}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px}
.burger span{display:block;width:20px;height:1.5px;background:var(--text);transition:all 0.3s;border-radius:1px}
.burger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.mob-nav{display:none;flex-direction:column;background:rgba(7,10,20,0.98);backdrop-filter:blur(28px);border-top:1px solid var(--border);padding:20px 24px 32px}
.mob-nav.open{display:flex}
.mob-nav a{font-family:var(--fm);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted2);padding:14px 0;border-bottom:1px solid var(--border);transition:color 0.2s}
.mob-nav a:hover{color:var(--c)}
.mob-nav .btn{margin-top:20px;justify-content:center}
@media(max-width:900px){.nav-links,.nav-r .btn{display:none}.burger{display:flex}}

/* ═══════════════════════════ HERO ═══════════════════════════ */
#hero{min-height:100vh;display:flex;align-items:center;padding-top:68px;position:relative;overflow:hidden}
.hero-glow-1{position:absolute;width:1000px;height:1000px;border-radius:50%;background:radial-gradient(circle,rgba(0,229,255,0.06) 0%,rgba(0,229,255,0.02) 40%,transparent 70%);top:-250px;right:-400px;pointer-events:none;filter:blur(40px)}
.hero-glow-2{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(155,77,255,0.06) 0%,rgba(155,77,255,0.02) 40%,transparent 70%);bottom:-150px;left:-200px;pointer-events:none;filter:blur(40px)}
.hero-grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(0,229,255,0.02) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,0.02) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse 85% 85% at 50% 50%,black 0%,transparent 70%)}

.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;width:100%}

.hero-alert{display:inline-flex;align-items:center;gap:8px;font-family:var(--fm);font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--red);background:rgba(255,59,92,0.08);border:1px solid rgba(255,59,92,0.28);padding:6px 14px;border-radius:2px;margin-bottom:28px}
.alert-dot{width:6px;height:6px;border-radius:50%;background:var(--red);animation:blink 1.1s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0.1}}

.status-strip{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--fm);font-size:9px;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--amber);background:rgba(255,181,71,0.07);border:1px solid rgba(255,181,71,0.22);
  padding:5px 12px;border-radius:2px;margin-top:12px;
}
.status-strip-dot{width:5px;height:5px;border-radius:50%;background:var(--amber);animation:blink 1.4s infinite}

.hero-title{
  font-family:var(--fh);font-weight:900;
  font-size:clamp(2rem,3.8vw,3.8rem);
  line-height:1.06;letter-spacing:-0.015em;
  margin:20px 0 28px;
  text-shadow:0 0 80px rgba(236,240,255,0.08);
}
.hero-title .line{display:block;overflow:hidden}
.hero-title .word{display:inline-block;animation:wordUp 0.85s cubic-bezier(0.22,1,0.36,1) both}
.hero-title .word:nth-child(1){animation-delay:0.08s}
.hero-title .word:nth-child(2){animation-delay:0.18s}
.hero-title .word:nth-child(3){animation-delay:0.28s;color:var(--c);text-shadow:0 0 40px rgba(0,255,209,0.4)}
.hero-title .word:nth-child(4){animation-delay:0.38s}
@keyframes wordUp{from{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}

.hero-sub{font-size:1.05rem;color:var(--muted2);line-height:1.85;max-width:510px;margin-bottom:40px;animation:fadeUp 1s 0.5s both}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;animation:fadeUp 1s 0.65s both}

.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-top:52px;animation:fadeUp 1s 0.82s both}
.hstat{padding:22px 20px 22px 18px;background:var(--bg2);border-right:1px solid var(--border);position:relative;overflow:visible;cursor:default;transition:background 0.3s}
.hstat:last-child{border-right:none}
.hstat:hover{background:var(--bg3)}
.hstat::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--c),transparent);opacity:0;transition:opacity 0.3s}
.hstat:hover::before{opacity:1}
.hstat-n{font-family:var(--fh);font-weight:900;font-size:1.85rem;color:var(--c);line-height:1;display:block}
.hstat-l{font-size:10.5px;color:var(--muted);margin-top:6px;font-family:var(--fm);letter-spacing:0.06em}

.terminal{background:var(--bg2);border:1px solid var(--c-border);border-radius:8px;overflow:hidden;box-shadow:0 0 100px rgba(0,255,209,0.06),0 60px 100px rgba(0,0,0,0.6);animation:fadeUp 1s 0.3s both}
.term-bar{display:flex;align-items:center;gap:8px;padding:12px 18px;background:var(--bg3);border-bottom:1px solid var(--border)}
.tb-dots{display:flex;gap:6px}
.tb-dot{width:10px;height:10px;border-radius:50%}
.tb-dot-r{background:#FF5F57}.tb-dot-y{background:#FFBD2E}.tb-dot-g{background:#28CA41}
.term-title{margin:0 auto;font-family:var(--fm);font-size:10px;letter-spacing:0.1em;color:var(--muted)}
.term-body{padding:24px 28px}
.t-line{font-family:var(--fm);font-size:11.5px;display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}
.t-line:last-child{border-bottom:none}
.t-key{color:var(--muted);min-width:148px;font-size:10.5px}
.t-val{color:var(--text);font-weight:500;white-space:nowrap}
.t-val.g{color:var(--green)}.t-val.c{color:var(--c)}.t-val.o{color:var(--amber)}
.t-bar-wrap{flex:1;height:3px;background:rgba(255,255,255,0.05);border-radius:2px;overflow:hidden}
.t-bar{height:100%;border-radius:2px;background:var(--c);transform-origin:left;transform:scaleX(0);transition:transform 1.6s cubic-bezier(0.22,1,0.36,1)}
.term-foot{padding:14px 28px;background:rgba(0,255,209,0.03);border-top:1px solid var(--c-border);display:flex;align-items:center;justify-content:space-between}
.term-chart-wrap{padding:16px 28px 4px;border-top:1px solid var(--border)}
.tchart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.tchart-label{font-family:var(--fm);font-size:9.5px;letter-spacing:0.1em;color:var(--muted);text-transform:uppercase}
.tchart-val{font-family:var(--fh);font-size:13px;font-weight:700;color:var(--c);text-shadow:0 0 12px rgba(0,255,209,0.5)}
.tchart-container{position:relative;height:56px}
.tchart-container canvas{width:100%!important;height:56px!important}
.live-badge{display:flex;align-items:center;gap:7px;font-family:var(--fm);font-size:10px;letter-spacing:0.1em;color:var(--green)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--green);animation:livepulse 2s infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(0,230,118,0.5)}70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.term-ts{font-family:var(--fm);font-size:10px;color:var(--muted)}

/* ═══════════════════════════ MARQUEE ═══════════════════════════ */
#marquee{padding:26px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;background:var(--bg2)}
.mq-track{display:flex;width:max-content;animation:marq 28s linear infinite}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.mq-item{padding:0 44px;font-family:var(--fh);font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-right:1px solid var(--border);display:flex;align-items:center;gap:12px;height:30px;transition:color 0.2s}
.mq-item:hover{color:var(--c)}
.mq-dot{width:4px;height:4px;border-radius:50%;background:var(--c);opacity:0.5}

/* ═══════════════════════════ ABOUT ═══════════════════════════ */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.avc{position:absolute;width:20px;height:20px;border-color:var(--c);border-style:solid;opacity:0.6}
.avc.tl{top:16px;left:16px;border-width:2px 0 0 2px}
.avc.tr{top:16px;right:16px;border-width:2px 2px 0 0}
.avc.bl{bottom:16px;left:16px;border-width:0 0 2px 2px}
.avc.br{bottom:16px;right:16px;border-width:0 2px 2px 0}
.play-ring{width:72px;height:72px;border-radius:50%;border:2px solid var(--c);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:1;transition:all 0.3s}
.play-ring::before{content:'';position:absolute;width:100%;height:100%;border-radius:50%;border:2px solid var(--c);opacity:0.35;animation:ringpulse 2.5s infinite}
@keyframes ringpulse{0%{transform:scale(1);opacity:0.35}100%{transform:scale(1.9);opacity:0}}
.play-ring:hover{background:var(--c);box-shadow:0 0 50px var(--c-glow)}
.play-ring:hover .play-icon{color:#04060D}
.play-icon{color:var(--c);font-size:22px;margin-left:4px}
.checklist{list-style:none;display:flex;flex-direction:column;gap:14px;margin-top:32px}
.checklist li{display:flex;align-items:flex-start;gap:14px;font-size:14px;color:var(--muted2);line-height:1.65}
.check-icon{width:20px;height:20px;border-radius:50%;background:var(--c-dim);border:1px solid var(--c-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:10px;color:var(--c);margin-top:2px}

/* ═══════════════════════════ SERVICES ═══════════════════════════ */
.svc-header{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:64px}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.svc{background:var(--bg2);padding:36px 30px;position:relative;overflow:hidden;transition:background 0.3s;cursor:default}
.svc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform 0.45s cubic-bezier(0.22,1,0.36,1)}
.svc::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 120%,rgba(0,255,209,0.05) 0%,transparent 60%);opacity:0;transition:opacity 0.4s}
.svc:hover{background:var(--bg3)}
.svc:hover::after{transform:scaleX(1)}
.svc:hover::before{opacity:1}
.svc-num{font-family:var(--fh);font-size:9px;font-weight:700;letter-spacing:0.2em;color:var(--c);opacity:0.45;margin-bottom:16px}
.svc-icon{font-size:26px;margin-bottom:18px;display:block;line-height:0}.svc-icon svg{filter:drop-shadow(0 0 10px rgba(0,255,209,0.3));transition:filter .3s}.svc:hover .svc-icon svg{filter:drop-shadow(0 0 16px rgba(0,255,209,0.6))}
.svc-title{font-family:var(--fh);font-weight:700;font-size:12px;letter-spacing:0.03em;margin-bottom:11px;line-height:1.4;color:var(--text)}
.svc-desc{font-size:13px;color:var(--muted2);line-height:1.75;margin-bottom:18px}
.svc-pills{display:flex;flex-wrap:wrap;gap:5px}
.pill{font-family:var(--fm);font-size:9.5px;letter-spacing:0.04em;color:var(--muted);background:var(--surface);border:1px solid var(--border);padding:3px 8px;border-radius:2px}
.svc-kpi{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-family:var(--fm);font-size:9.5px;letter-spacing:0.1em;color:var(--c);background:var(--c-dim);border:1px solid var(--c-border);padding:4px 10px;border-radius:2px}
.svc-kpi::before{content:'↑';font-weight:700;margin-right:2px}

/* ═══════════════════════════ METHODOLOGY ═══════════════════════════ */
.method-grid{display:grid;grid-template-columns:220px 1fr;gap:80px;align-items:start}
.method-nav{display:flex;flex-direction:column;position:sticky;top:100px;padding-left:16px}
.mnav-item{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--border);cursor:pointer;transition:all 0.2s;position:relative}
.mnav-item:last-child{border-bottom:none}
.mnav-item::before{content:'';position:absolute;left:-16px;top:0;bottom:0;width:2px;background:var(--c);transform:scaleY(0);transition:transform 0.3s;transform-origin:top}
.mnav-item.active::before{transform:scaleY(1)}
.mnav-num{font-family:var(--fh);font-size:10px;font-weight:700;color:var(--muted);transition:color 0.2s;min-width:26px}
.mnav-label{font-family:var(--fm);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);transition:color 0.2s}
.mnav-item.active .mnav-num,.mnav-item.active .mnav-label{color:var(--c)}
.method-step{display:none;animation:fadeUp 0.4s ease}
.method-step.active{display:block}
.step-hd{display:flex;align-items:center;gap:22px;margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid var(--border)}
.step-bign{font-family:var(--fh);font-weight:900;font-size:4.5rem;color:var(--c);opacity:0.12;line-height:1}
.step-label{font-family:var(--fm);font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--c);margin-bottom:8px}
.step-h{font-family:var(--fh);font-weight:800;font-size:1.35rem;line-height:1.2;letter-spacing:-0.01em;color:var(--text)}
.step-body{color:var(--muted2);font-size:14px;line-height:1.85;margin-bottom:32px}
.step-items{list-style:none;display:flex;flex-direction:column;gap:8px}
.step-item,.step-items li{display:flex;align-items:flex-start;gap:14px;font-size:13px;color:var(--muted2);padding:13px 16px;background:var(--surface);border:1px solid var(--border);border-radius:3px;transition:border-color 0.2s,background 0.2s}
.step-item:hover,.step-items li:hover{border-color:var(--c-border);background:rgba(0,255,209,0.02)}
.step-item-icon{color:var(--c);font-size:11px;flex-shrink:0;margin-top:2px;letter-spacing:0}
.step-kpi{margin-top:32px;padding:18px 22px;background:var(--c-dim);border:1px solid var(--c-border);border-radius:3px;display:flex;align-items:center;gap:14px}
.skpi-lbl{font-family:var(--fm);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}
.skpi-val{font-family:var(--fh);font-size:13px;font-weight:700;color:var(--c)}

/* ═══════════════════════════ TEAM ═══════════════════════════ */
.vals-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:72px}
.val{background:var(--bg2);padding:36px 28px;transition:background 0.3s;position:relative;overflow:hidden}
.val:hover{background:var(--bg3)}
.val::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform 0.4s}
.val:hover::after{transform:scaleX(1)}
.val-icon{font-size:22px;margin-bottom:14px;line-height:0}.val-icon svg{filter:drop-shadow(0 0 8px rgba(0,255,209,0.3));transition:filter .3s}.val:hover .val-icon svg{filter:drop-shadow(0 0 14px rgba(0,255,209,0.55))}
.val-title{font-family:var(--fh);font-size:10px;font-weight:700;letter-spacing:0.06em;color:var(--c);margin-bottom:10px;line-height:1.4}
.val-text{font-size:13px;color:var(--muted2);line-height:1.65}
.team-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.tcard{background:var(--bg2);border:1px solid var(--border);border-radius:6px;overflow:hidden;transition:all 0.35s}
.tcard:hover{border-color:var(--c-border);transform:translateY(-7px);box-shadow:0 24px 64px rgba(0,0,0,0.45),0 0 40px rgba(0,255,209,0.06)}
.tcard-img{aspect-ratio:1;background:var(--bg3);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.tcard-img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform 0.4s ease}
.tcard:hover .tcard-img img{transform:scale(1.04)}
.tcard-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 55%,var(--bg2) 100%)}
.tcard-initial{font-family:var(--fh);font-weight:900;font-size:3rem;color:var(--c);opacity:0.18}
.tcard-body{padding:20px 22px 24px}
.tcard-name{font-family:var(--fh);font-size:11px;font-weight:700;letter-spacing:0.04em;margin-bottom:5px}
.tcard-role{font-family:var(--fm);font-size:10px;letter-spacing:0.08em;color:var(--muted)}

/* ═══════════════════════════ TESTIMONIALS ═══════════════════════════ */
#testimonials{padding:80px 0;position:relative}
.testi-header{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:52px}
.testi-header-right{display:flex;flex-direction:column;gap:20px;align-items:flex-start}

.testi-trust-row{display:flex;align-items:center;background:var(--bg3);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.ttrust-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 24px}
.ttrust-num{font-family:var(--fh);font-weight:900;font-size:1.1rem;color:var(--c);line-height:1}
.ttrust-lbl{font-family:var(--fm);font-size:9px;letter-spacing:0.1em;color:var(--muted);text-transform:uppercase}
.ttrust-div{width:1px;height:36px;background:var(--border)}

.testi-carousel-wrap{display:grid;grid-template-columns:1fr 240px;gap:16px;align-items:start}

.testi-featured-card{
  position:relative;overflow:hidden;
  background:var(--bg3);
  border:1px solid var(--border);border-radius:6px;
  padding:36px 40px 32px;
  min-height:260px;display:flex;flex-direction:column;
  transition:border-color 0.4s, box-shadow 0.4s;
}
.testi-featured-card:hover{border-color:var(--c-border);box-shadow:0 0 40px rgba(0,255,209,0.05)}
.testi-featured-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--c);opacity:0.6}

.tfc-content{display:flex;flex-direction:column;gap:20px;flex:1}
.tfc-quote{
  font-size:1.02rem;color:rgba(236,240,255,0.85);line-height:1.85;
  font-weight:400;letter-spacing:0.01em;
  animation:tfcFadeIn 0.4s ease forwards;
  padding-left:16px;
  border-left:2px solid var(--c);
}
@keyframes tfcFadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.tfc-result{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  font-family:var(--fm);font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--c);background:var(--c-dim);border:1px solid var(--c-border);
  padding:5px 12px;border-radius:2px;
}
.tfc-result::before{content:'↑';font-size:11px;font-weight:700}
.tfc-footer{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--border);margin-top:auto}
.tfc-avatar{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,rgba(0,255,209,0.12),rgba(123,97,255,0.12));
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--c-border);
  font-family:var(--fh);font-weight:900;font-size:14px;color:var(--c);
}
.tfc-info{flex:1}
.tfc-name{font-family:var(--fh);font-size:10px;font-weight:700;letter-spacing:0.04em;color:var(--text);margin-bottom:3px}
.tfc-role{font-family:var(--fm);font-size:9px;letter-spacing:0.06em;color:var(--muted)}
.tfc-stars{font-size:12px;color:var(--amber);letter-spacing:2px;flex-shrink:0}

.testi-sidebar{display:flex;flex-direction:column;gap:10px}

.testi-dots{display:flex;gap:6px;padding:4px 0}
.tdot{width:6px;height:6px;border-radius:50%;border:none;cursor:pointer;background:var(--border);transition:all 0.3s cubic-bezier(0.22,1,0.36,1);padding:0}
.tdot.active{width:20px;border-radius:3px;background:var(--c)}

.testi-mini-grid{display:flex;flex-direction:column;gap:6px}
.testi-mini-card{
  display:flex;align-items:center;gap:10px;
  background:var(--bg3);border:1px solid var(--border);border-radius:4px;
  padding:10px 12px;cursor:pointer;
  transition:all 0.22s ease;position:relative;overflow:hidden;
}
.testi-mini-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--c);transform:scaleY(0);transform-origin:top;transition:transform 0.28s cubic-bezier(0.22,1,0.36,1)}
.testi-mini-card:hover,.testi-mini-card.active{border-color:var(--c-border);background:rgba(0,255,209,0.03)}
.testi-mini-card:hover::before,.testi-mini-card.active::before{transform:scaleY(1)}
.tmc-init{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,rgba(0,255,209,0.18),rgba(123,97,255,0.18));display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-size:10px;font-weight:900;color:var(--c)}
.tmc-info{flex:1;min-width:0}
.tmc-name{font-family:var(--fh);font-size:8.5px;font-weight:700;letter-spacing:0.04em;color:var(--text);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tmc-result{font-family:var(--fm);font-size:8px;letter-spacing:0.06em;color:var(--c);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tmc-arrow{font-size:10px;color:var(--muted);transition:color 0.2s,transform 0.2s;flex-shrink:0}
.testi-mini-card:hover .tmc-arrow,.testi-mini-card.active .tmc-arrow{color:var(--c);transform:translateX(2px)}

@media(max-width:1000px){
  .testi-carousel-wrap{grid-template-columns:1fr}
  .testi-sidebar{flex-direction:row;flex-wrap:wrap;gap:8px}
  .testi-mini-grid{flex-direction:row;flex-wrap:wrap;flex:1}
  .testi-mini-card{min-width:140px;flex:1}
}
@media(max-width:640px){
  .testi-featured-card{padding:26px 22px 24px}
  .tfc-quote{font-size:0.95rem;padding-left:12px}
  #testimonials{padding:56px 0}
  .testi-header{margin-bottom:36px;grid-template-columns:1fr}
  .testi-trust-row{width:100%}
  .testi-mini-card{min-width:calc(50% - 4px)}
}

/* ═══════════════════════════ CTA SECTION ═══════════════════════════ */
#cta{padding:128px 0;position:relative;overflow:hidden}
.cta-fade-top{position:absolute;top:0;left:0;right:0;height:160px;background:linear-gradient(to bottom,#070A14 0%,rgba(7,10,20,0) 100%);pointer-events:none;z-index:3}
.cta-fade-bottom{position:absolute;bottom:0;left:0;right:0;height:160px;background:linear-gradient(to top,#070A14 0%,rgba(7,10,20,0) 100%);pointer-events:none;z-index:3}
.cta-bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:900px;height:500px;background:radial-gradient(ellipse at 40% 50%,rgba(0,229,255,0.05) 0%,transparent 50%),radial-gradient(ellipse at 65% 55%,rgba(155,77,255,0.06) 0%,transparent 50%),radial-gradient(ellipse at 55% 45%,rgba(255,0,204,0.04) 0%,transparent 40%);pointer-events:none}
.cta-box{max-width:640px;margin:0 auto;text-align:center;position:relative;z-index:4}
.cta-h{font-family:var(--fh);font-weight:800;font-size:clamp(1.7rem,3.5vw,3rem);line-height:1.1;letter-spacing:-0.01em;margin-bottom:16px}
.cta-sub{color:var(--muted2);font-size:1rem;line-height:1.8;margin-bottom:48px;max-width:440px;margin-left:auto;margin-right:auto}
.cform{max-width:500px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cinput{background:var(--bg3);border:1px solid var(--border);border-radius:3px;padding:13px 16px;color:var(--text);font-family:var(--fb);font-size:14px;outline:none;transition:border-color 0.2s,box-shadow 0.2s;width:100%}
.cinput::placeholder{color:var(--muted)}
.cinput:focus{outline:none;border-color:rgba(0,255,209,0.5);box-shadow:0 0 0 3px rgba(0,255,209,0.08)}
select.cinput{appearance:none;cursor:pointer;color:var(--muted)}
select.cinput option{background:var(--bg2);color:var(--text)}

/* ═══════════════════════════ FOOTER ═══════════════════════════ */
footer{border-top:1px solid var(--border);padding:64px 0 36px;background:var(--bg2);position:relative;z-index:3;isolation:isolate}
footer::before{content:'';position:absolute;inset:0;background:var(--bg2);z-index:-1}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:48px;margin-bottom:52px}
.foot-logo{font-family:var(--fh);font-weight:900;font-size:16px;color:var(--text);margin-bottom:14px}
.foot-logo span{color:var(--c)}
.foot-desc{font-size:13px;color:var(--muted2);line-height:1.7;max-width:240px;margin-bottom:22px}
.foot-socials{display:flex;gap:10px}
.fso{
  width:36px;height:36px;border-radius:3px;border:1px solid var(--border);
  background:var(--surface);display:flex;align-items:center;justify-content:center;
  font-family:var(--fm);font-size:10px;color:var(--muted2);
  position:relative;overflow:hidden;
  transition:border-color 0.22s,color 0.22s,background 0.22s,transform 0.22s,box-shadow 0.22s;
}
.fso::before{
  content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);
  transition:left 0.4s cubic-bezier(0.22,1,0.36,1);
}
.fso:hover::before{left:160%;}
.fso:hover{border-color:var(--c-border);color:var(--c);background:var(--c-dim);transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,255,209,0.1)}
.fso-ig:hover{border-color:var(--magenta-border);color:var(--logo-magenta);background:var(--magenta-dim);box-shadow:0 6px 18px rgba(255,0,204,0.1)}
footer h5{font-family:var(--fm);font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px}
footer ul li a{font-size:13px;color:var(--muted2);transition:color 0.2s}
footer ul li a:hover{color:var(--c)}
footer ul li{font-size:13px;color:var(--muted2);line-height:1.6}
.foot-bottom{padding-top:28px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.foot-copy{font-family:var(--fm);font-size:10.5px;color:var(--muted)}
.foot-legal{display:flex;gap:16px}
.foot-legal button{font-family:var(--fm);font-size:10.5px;color:var(--muted);background:none;border:none;cursor:pointer;transition:color 0.2s;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}
.foot-legal button:hover{color:var(--c);text-decoration-color:var(--c)}

/* ═══════════════════════════ MODALS ═══════════════════════════ */
.overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.88);backdrop-filter:blur(14px);display:none;align-items:center;justify-content:center;padding:20px}
.overlay.open{display:flex}
.modal{background:var(--bg2);border:1px solid var(--c-border);border-radius:8px;width:100%;max-width:500px;padding:40px;position:relative;box-shadow:0 0 120px rgba(0,255,209,0.09);animation:mIn 0.38s cubic-bezier(0.22,1,0.36,1);max-height:92vh;overflow-y:auto}
@keyframes mIn{from{opacity:0;transform:scale(0.94) translateY(22px)}to{opacity:1;transform:none}}
.modal-x{position:absolute;top:16px;right:16px;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--muted2);width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all 0.2s;z-index:10;flex-shrink:0}
.modal-x:hover{border-color:var(--c-border);color:var(--c)}
.mprog-row{display:flex;gap:4px;margin-bottom:28px;padding-right:40px}
.mprog{flex:1;height:2px;background:var(--border);border-radius:1px;transition:all 0.4s}
.mprog.on{background:var(--c)}.mprog.done{background:rgba(0,255,209,0.3)}
.mstep{display:none}.mstep.show{display:block}
.modal h3{font-family:var(--fh);font-weight:800;font-size:1.35rem;line-height:1.2;margin-bottom:8px}
.modal .msub{font-size:13px;color:var(--muted2);margin-bottom:28px;line-height:1.65}
.mfield{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.mfield label{font-family:var(--fm);font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}
.macts{display:flex;gap:10px;margin-top:6px}

/* Modal — botão primário */
.mbtn{
  flex:1;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--fh);font-size:10.5px;font-weight:800;
  letter-spacing:0.12em;text-transform:uppercase;
  padding:14px;border:none;border-radius:2px;cursor:pointer;
  background:var(--c);color:#04060D;
  position:relative;overflow:hidden;
  transition:transform 0.22s cubic-bezier(0.22,1,0.36,1),
             box-shadow 0.22s cubic-bezier(0.22,1,0.36,1),
             background 0.2s;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.22);
}
.mbtn::before{
  content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);
  transition:left 0.45s cubic-bezier(0.22,1,0.36,1);
  pointer-events:none;
}
.mbtn:hover::before{left:160%;}
.mbtn:hover{
  background:#00ffe5;
  transform:translateY(-2px);
  box-shadow:0 10px 30px rgba(0,255,209,0.32),0 0 0 1px var(--c),inset 0 1px 0 rgba(255,255,255,0.28);
}
.mbtn:active{transform:translateY(0);box-shadow:0 4px 14px rgba(0,255,209,0.22);}

/* Modal — botão voltar */
.mbtn-back{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--fh);font-size:10px;font-weight:700;
  letter-spacing:0.1em;text-transform:uppercase;
  padding:13px 20px;border-radius:2px;cursor:pointer;
  background:transparent;color:var(--muted2);
  border:1px solid var(--border);
  transition:transform 0.22s cubic-bezier(0.22,1,0.36,1),
             box-shadow 0.22s, border-color 0.2s, color 0.2s;
}
.mbtn-back:hover{
  border-color:var(--c-border);color:var(--text);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(0,255,209,0.08);
}
.mbtn-back:active{transform:translateY(0);}

.msuccess{text-align:center;padding:24px 0}
.msuccess .big{font-size:3rem;margin-bottom:16px}
.msuccess h3{font-family:var(--fh);font-size:1.3rem;margin-bottom:10px}
.msuccess p{font-size:13px;color:var(--muted2);line-height:1.7}

/* legal modal */
.lmodal{max-width:680px;max-height:88vh;display:flex;flex-direction:column}
.lmodal-head{padding-bottom:20px;border-bottom:1px solid var(--border);margin-bottom:24px;flex-shrink:0}
.lmodal-body{overflow-y:auto;flex:1;padding-right:4px}
.lmodal-body::-webkit-scrollbar{width:2px}
.lmodal-body::-webkit-scrollbar-thumb{background:var(--c-border)}
.lmodal h4{font-family:var(--fh);font-size:11px;font-weight:700;color:var(--c);margin:24px 0 10px;letter-spacing:0.05em}
.lmodal p{font-size:13px;color:var(--muted2);line-height:1.8;margin-bottom:12px}
.lmodal ul{list-style:disc;padding-left:20px;display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.lmodal ul li{font-size:13px;color:var(--muted2);line-height:1.7}

/* ═══════════════════════════ WHATSAPP FLOATING ═══════════════════════════ */
#wa-btn{
  position:fixed;bottom:32px;right:32px;z-index:888;
  width:58px;height:58px;border-radius:50%;
  background:#25D366;border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 32px rgba(37,211,102,0.4);
  transition:transform 0.25s,box-shadow 0.25s;
  animation:waPulse 2.5s infinite;
}
#wa-btn:hover{transform:scale(1.1);box-shadow:0 12px 48px rgba(37,211,102,0.6);animation:none}
@keyframes waPulse{
  0%{box-shadow:0 8px 32px rgba(37,211,102,0.4),0 0 0 0 rgba(37,211,102,0.4)}
  50%{box-shadow:0 8px 32px rgba(37,211,102,0.4),0 0 0 18px rgba(37,211,102,0)}
  100%{box-shadow:0 8px 32px rgba(37,211,102,0.4),0 0 0 0 rgba(37,211,102,0)}
}
#wa-btn svg{width:28px;height:28px;fill:#fff}
.wa-tooltip{
  position:absolute;right:70px;top:50%;transform:translateY(-50%);
  background:var(--bg3);border:1px solid var(--border);border-radius:4px;
  font-family:var(--fm);font-size:10px;letter-spacing:0.06em;
  color:var(--text);white-space:nowrap;padding:6px 12px;
  opacity:0;pointer-events:none;transition:opacity 0.2s;
}
#wa-btn:hover .wa-tooltip{opacity:1}

/* ═══════════════════════════ REVEAL ANIMATIONS ═══════════════════════════ */
.reveal{opacity:0;transform:translateY(36px);transition:opacity 0.75s ease,transform 0.75s ease}
.reveal.in{opacity:1;transform:none}
.reveal-l{opacity:0;transform:translateX(-36px);transition:opacity 0.75s ease,transform 0.75s ease}
.reveal-l.in{opacity:1;transform:none}
.reveal-r{opacity:0;transform:translateX(36px);transition:opacity 0.75s ease,transform 0.75s ease}
.reveal-r.in{opacity:1;transform:none}

/* ═══════════════════════════ RESPONSIVE ═══════════════════════════ */
@media(max-width:1100px){
  .hero-inner{gap:48px}
  .about-grid{gap:56px}
  .method-grid{grid-template-columns:1fr;gap:48px}
  .method-nav{display:grid;grid-template-columns:repeat(3,1fr);position:static;gap:8px;padding-left:0}
  .method-nav .mnav-item{border:1px solid var(--border);border-radius:3px;padding:12px 14px;flex-direction:column;align-items:flex-start;gap:4px}
  .method-nav .mnav-item::before{display:none}
  .method-nav .mnav-item.active{border-color:var(--c-border);background:var(--c-dim)}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr}
  .svc-header{grid-template-columns:1fr}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr}
  .vals-row{grid-template-columns:repeat(2,1fr)}
  .team-row{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .wrap{padding:0 18px}
  .nav-inner{padding:0 18px}
  .section{padding:64px 0}
  #about.section{padding:56px 0}
  #cta{padding:80px 0}
  .hero-title{font-size:1.75rem}
  .hero-sub{font-size:0.92rem}
  .hero-alert{font-size:11px}
  .svc-grid{grid-template-columns:1fr}
  .svc{padding:28px 22px}
  .vals-row{grid-template-columns:1fr}
  .val{padding:28px 22px}
  .team-row{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
  .frow{grid-template-columns:1fr}
  .hero-btns{flex-direction:column;gap:10px}
  .hero-btns .btn{justify-content:center;width:100%}
  .method-nav{grid-template-columns:repeat(2,1fr);padding-left:0}
  #wa-btn{bottom:20px;right:16px;width:50px;height:50px}
  #wa-btn svg{width:24px;height:24px}
  .hero-stats{grid-template-columns:repeat(2,1fr)}
  .terminal{font-size:11px}
  .term-body{padding:16px 18px}
  .t-key{min-width:110px;font-size:9.5px}
  .t-bar-wrap{display:none}
  .about-grid{gap:36px}
  .svc-header{margin-bottom:40px}
  .cta-h{font-size:1.6rem}
  .modal{padding:28px 22px}
  .step-bign{font-size:3rem}
  .step-h{font-size:1.15rem}
  #cursor-glow{display:none}
}

/* ═══════════════════════════ LOGO IMG ═══════════════════════════ */
.logo{display:flex;align-items:center;gap:9px}
.logo-img{width:28px;height:28px;object-fit:contain;border-radius:4px;flex-shrink:0}

/* ═══════════════════════════ FORM TRUST BADGES ═══════════════════════════ */
.form-trust{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;
  margin-top:20px;margin-bottom:4px;
  font-family:var(--fm);font-size:10px;letter-spacing:0.05em;color:var(--muted);
}
.form-trust span{display:flex;align-items:center;gap:4px}

/* ═══════════════════════════ HERO STATS — 4 cols ═══════════════════════════ */
@media(min-width:901px){
  .hero-stats{grid-template-columns:repeat(4,1fr)}
}

/* ═══════════════════════════ SCROLL-TO-TOP ═══════════════════════════ */
#scrollTop{
  position:fixed!important;
  bottom:96px!important;
  left:28px!important;
  right:auto!important;
}
@media(max-width:768px){
  #scrollTop{bottom:80px!important;left:16px!important}
}

/* ═══════════════════════════ NAV ACTIVE LINK ═══════════════════════════ */
.nav-links a.nav-active{color:var(--c)!important}
.nav-links a.nav-active::after{width:100%!important}

/* ═══════════════════════════ MOBILE HERO STATS ═══════════════════════════ */
@media(max-width:600px){
  .hero-stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:420px){
  .hero-title{font-size:1.55rem}
  .team-row{grid-template-columns:1fr 1fr}
  .tcard-body{padding:14px 16px 18px}
  .foot-grid{gap:28px}
  .svc-grid{gap:0}
}

/* ═══════════════════════════════════════════════════════════
   PERFORMANCE PATCHES
   ═══════════════════════════════════════════════════════════ */

.terminal,
.tcard,
.svc,
.val,
.modal,
#wa-btn {
  will-change: transform;
}

/* Reduz custo do backdrop-filter em mobile */
@media (max-width: 640px) {
  #nav.scrolled {
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }
  .mob-nav {
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }
  .vp-big-btn {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .overlay {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal, .reveal-l, .reveal-r {
      opacity: 1 !important;
      transform: none !important;
      transition: none !important;
    }
    .mq-track {
      animation: none !important;
    }
    .hero-title .word {
      animation: none !important;
    }
  }
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

#bgc {
  contain: strict;
  will-change: contents;
}

.mq-track {
  will-change: transform;
}

#cursor-glow {
  will-change: left, top;
  contain: layout style;
}

.reveal, .reveal-l, .reveal-r {
  will-change: opacity, transform;
}
.reveal.in, .reveal-l.in, .reveal-r.in {
  will-change: auto;
}