.elementor-15097 .elementor-element.elementor-element-26761dc{--display:flex;}/* Start custom CSS for html, class: .elementor-element-014a9af *//* ===== RESET &amp; BASE ===== */
html{scroll-behavior:smooth;font-size:16px}
body{
  background:
    radial-gradient(ellipse at 20% 50%, rgba(0,240,255,.04) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 50%, rgba(0,255,65,.03) 0%, transparent 60%),
    linear-gradient(180deg,#0a0e17 0%,#0d1525 50%,#0a0e17 100%);
  color:#c8d6e5;
  line-height:1.7;
  overflow-x:hidden;
}
a{color:#06b6d4;text-decoration:none;transition:color .3s, text-shadow .3s}
a:hover{color:#22d3ee;text-shadow:0 0 8px rgba(6,182,212,.5)}
h1,h2,h3,h4{font-family:'Inter',sans-serif;color:#e8ecf1;font-weight:700;line-height:1.3}
code,.mono{font-family:'Share Tech Mono',monospace}
img{max-width:100%}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:#0a0e17}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#06b6d4,#0d9488);border-radius:4px}

/* ===== CONTAINER ===== */
.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}

/* ===== HEADER / HERO ===== */
.hero{
  position:relative;min-height:100vh;
  display:flex;align-items:center;justify-content:center;
  padding:4rem 1.5rem 3rem;overflow:hidden;
}
.grid-lines{
  position:absolute;inset:0;z-index:0;overflow:hidden;opacity:.08;
}
.grid-lines::before,.grid-lines::after{
  content:'';position:absolute;
}
.grid-lines::before{
  top:0;left:0;right:0;bottom:0;
  background-image:
    linear-gradient(rgba(6,182,212,.3) 1px,transparent 1px),
    linear-gradient(90deg,rgba(6,182,212,.3) 1px,transparent 1px);
  background-size:60px 60px;
}

/* ===== SIMULATION WRAPPER ===== */
.sim-wrapper{
  position:relative;z-index:1;
  width:100%;max-width:960px;
  display:flex;flex-direction:column;align-items:center;gap:2rem;
}
.hero-title{text-align:center}
.hero-title .tag{
  display:inline-block;
  font-family:'Share Tech Mono',monospace;
  font-size:.75rem;letter-spacing:3px;text-transform:uppercase;
  color:#06b6d4;
  border:1px solid rgba(6,182,212,.3);
  padding:.3rem 1rem;border-radius:20px;
  margin-bottom:1rem;
  animation:tagPulse 3s ease-in-out infinite;
}
@keyframes tagPulse{
  0%,100%{box-shadow:0 0 8px rgba(6,182,212,.2)}
  50%{box-shadow:0 0 20px rgba(6,182,212,.4)}
}
.hero-title h1{
  font-size:clamp(2rem,5vw,3.5rem);
  background:linear-gradient(135deg,#06b6d4 0%,#0d9488 50%,#06b6d4 100%);
  background-size:200% auto;
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  animation:gradientShift 4s linear infinite;
  margin-bottom:.5rem;
}
@keyframes gradientShift{
  0%{background-position:0% center}
  100%{background-position:200% center}
}
.hero-title .subtitle{
  font-family:'Share Tech Mono',monospace;
  font-size:.95rem;color:#5a7a8a;
  overflow:hidden;white-space:nowrap;
  max-width:700px;margin:0 auto;
  border-right:2px solid #06b6d4;
  animation:typing 4s steps(55,end) infinite,blink .6s step-end infinite alternate;
}
@keyframes typing{
  0%{max-width:0}
  50%{max-width:700px}
  90%{max-width:700px}
  100%{max-width:0}
}
@keyframes blink{50%{border-color:transparent}}

/* ===== INFRASTRUCTURE SIMULATION ===== */
.infra-sim{
  position:relative;
  width:100%;max-width:860px;
  height:460px;
  background:rgba(8,12,22,.8);
  border:1px solid rgba(6,182,212,.12);
  border-radius:16px;
  overflow:hidden;
}
.infra-sim::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(6,182,212,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(6,182,212,.03) 1px,transparent 1px);
  background-size:40px 40px;
  border-radius:16px;
}

/* Scan lines */
.scan-h{
  position:absolute;left:0;width:100%;height:2px;z-index:2;
  background:linear-gradient(90deg,transparent,rgba(6,182,212,.4),transparent);
  box-shadow:0 0 12px rgba(6,182,212,.2);
  animation:scanH 5s ease-in-out infinite;
}
.scan-h:nth-child(1){top:30%;animation-delay:0s}
.scan-h:nth-child(2){top:60%;animation-delay:1.7s}
.scan-h:nth-child(3){top:85%;animation-delay:3.3s}
@keyframes scanH{
  0%{opacity:0;transform:translateX(-40%)}
  20%{opacity:.6}
  50%{opacity:.8;transform:translateX(40%)}
  80%{opacity:.6}
  100%{opacity:0;transform:translateX(140%)}
}
.scan-v{
  position:absolute;top:0;height:100%;width:2px;z-index:2;
  background:linear-gradient(180deg,transparent,rgba(6,182,212,.3),transparent);
  box-shadow:0 0 12px rgba(6,182,212,.15);
  animation:scanV 6s ease-in-out infinite;
}
.scan-v:nth-child(4){left:25%;animation-delay:.5s}
.scan-v:nth-child(5){left:65%;animation-delay:3s}
@keyframes scanV{
  0%{opacity:0;transform:translateY(-40%)}
  20%{opacity:.5}
  50%{opacity:.7;transform:translateY(40%)}
  80%{opacity:.5}
  100%{opacity:0;transform:translateY(140%)}
}

/* Globe */
.globe{
  position:absolute;
  width:140px;height:140px;
  top:50%;left:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:2px solid rgba(6,182,212,.2);
  box-shadow:0 0 40px rgba(6,182,212,.08),inset 0 0 40px rgba(6,182,212,.04);
  animation:globeRotate 20s linear infinite;
}
.globe::before{
  content:'';position:absolute;inset:8px;
  border-radius:50%;
  border:1px solid rgba(6,182,212,.12);
}
.globe::after{
  content:'';position:absolute;inset:20px;
  border-radius:50%;
  border:1px dashed rgba(6,182,212,.08);
  animation:globeInner 10s linear infinite;
}
@keyframes globeRotate{
  0%{transform:translate(-50%,-50%) rotate(0deg)}
  100%{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes globeInner{
  0%{transform:rotate(0deg)}
  100%{transform:rotate(-360deg)}
}
.globe-ring{
  position:absolute;border-radius:50%;
  border:1px solid rgba(6,182,212,.1);
  animation:globePulse 3s ease-in-out infinite;
}
.globe-ring:nth-child(1){width:180px;height:180px;top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:0s}
.globe-ring:nth-child(2){width:220px;height:220px;top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:.5s}
.globe-ring:nth-child(3){width:270px;height:270px;top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:1s}
@keyframes globePulse{
  0%,100%{opacity:.3;border-color:rgba(6,182,212,.08)}
  50%{opacity:.8;border-color:rgba(6,182,212,.25)}
}

/* Infrastructure nodes */
.infra-node{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:.5rem .6rem;
  background:rgba(6,182,212,.06);
  border:1px solid rgba(6,182,212,.2);
  border-radius:8px;
  font-family:'Share Tech Mono',monospace;
  font-size:.55rem;color:#06b6d4;
  text-align:center;
  animation:nodeAppear 2s ease-out forwards;
  opacity:0;
}
.infra-node .node-icon{font-size:1.1rem;display:block}
.infra-node .node-label{font-size:.45rem;color:#5a7a8a;white-space:nowrap}
.infra-node:nth-child(1){top:15px;left:20px;animation-delay:.5s}
.infra-node:nth-child(2){top:15px;left:140px;animation-delay:1s}
.infra-node:nth-child(3){top:15px;right:20px;animation-delay:1.5s}
.infra-node:nth-child(4){top:110px;left:20px;animation-delay:2s}
.infra-node:nth-child(5){top:110px;right:20px;animation-delay:2.5s}
.infra-node:nth-child(6){bottom:60px;left:20px;animation-delay:3s}
.infra-node:nth-child(7){bottom:60px;right:20px;animation-delay:3.5s}
.infra-node:nth-child(8){bottom:60px;left:140px;animation-delay:4s}
@keyframes nodeAppear{
  0%{opacity:0;transform:translateY(15px) scale(.8)}
  60%{opacity:1;transform:translateY(-3px) scale(1.05)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}

/* Coin flow (crypto payments) */
.coin{
  position:absolute;width:10px;height:10px;
  background:radial-gradient(circle at 35% 35%,#fbbf24,#f59e0b);
  border-radius:50%;
  box-shadow:0 0 6px rgba(251,191,36,.5);
  animation:coinFlow 3.5s linear infinite;
  z-index:3;
}
.coin:nth-child(1){top:50px;left:80px;animation-delay:0s}
.coin:nth-child(2){top:80px;left:100px;animation-delay:.7s}
.coin:nth-child(3){top:40px;left:110px;animation-delay:1.4s}
.coin:nth-child(4){top:70px;left:60px;animation-delay:2.1s}
.coin:nth-child(5){top:55px;left:130px;animation-delay:2.8s}
@keyframes coinFlow{
  0%{opacity:0;transform:translate(0,0) scale(.5)}
  15%{opacity:1;transform:scale(1)}
  50%{opacity:.8;transform:translate(30px,40px) scale(1)}
  85%{opacity:.4}
  100%{opacity:0;transform:translate(50px,80px) scale(.3)}
}

/* Data flow particles */
.data-particle{
  position:absolute;width:4px;height:4px;
  background:#06b6d4;border-radius:50%;
  box-shadow:0 0 8px #06b6d4;
  animation:dataFlow 4s linear infinite;
  z-index:3;
}
.data-particle:nth-child(1){bottom:100px;right:80px;animation-delay:0s}
.data-particle:nth-child(2){bottom:120px;right:60px;animation-delay:.8s}
.data-particle:nth-child(3){bottom:80px;right:100px;animation-delay:1.6s}
.data-particle:nth-child(4){bottom:90px;right:40px;animation-delay:2.4s}
@keyframes dataFlow{
  0%{opacity:0;transform:translate(0,0)}
  15%{opacity:1}
  85%{opacity:.6}
  100%{opacity:0;transform:translate(-60px,-50px)}
}

/* Provider badges */
.provider{
  position:absolute;
  font-family:'Share Tech Mono',monospace;
  font-size:.48rem;
  padding:.2rem .5rem;
  border-radius:4px;
  color:#5a7a8a;
  border:1px solid rgba(6,182,212,.1);
  background:rgba(6,182,212,.03);
  animation:providerFade 4s ease-in-out infinite;
}
.provider:nth-child(1){bottom:15px;left:15px;animation-delay:0s}
.provider:nth-child(2){bottom:15px;left:50%;transform:translateX(-50%);animation-delay:1s}
.provider:nth-child(3){bottom:15px;right:15px;animation-delay:2s}
.provider:nth-child(4){top:55px;left:50%;transform:translateX(-50%);animation-delay:3s}
@keyframes providerFade{
  0%,100%{opacity:.4;border-color:rgba(6,182,212,.08)}
  50%{opacity:1;border-color:rgba(6,182,212,.3);color:#06b6d4}
}

/* Assembly platform */
.assembly{
  position:absolute;
  bottom:30px;left:50%;transform:translateX(-50%);
  width:200px;height:30px;
  background:rgba(6,182,212,.04);
  border:1px solid rgba(6,182,212,.15);
  border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  font-family:'Share Tech Mono',monospace;
  font-size:.5rem;color:#06b6d4;
  animation:assemblyGlow 3s ease-in-out infinite;
}
@keyframes assemblyGlow{
  0%,100%{box-shadow:0 0 10px rgba(6,182,212,.05);border-color:rgba(6,182,212,.1)}
  50%{box-shadow:0 0 30px rgba(6,182,212,.15);border-color:rgba(6,182,212,.3)}
}

/* Connection beams */
.beam{
  position:absolute;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(6,182,212,.15),transparent);
  z-index:1;
  animation:beamPulse 4s ease-in-out infinite;
}
.beam:nth-child(1){top:80px;left:60px;width:120px;animation-delay:0s}
.beam:nth-child(2){top:80px;right:60px;width:120px;animation-delay:1s}
.beam:nth-child(3){top:170px;left:60px;width:120px;animation-delay:2s}
.beam:nth-child(4){top:170px;right:60px;width:120px;animation-delay:3s}
@keyframes beamPulse{
  0%,100%{opacity:.2}
  50%{opacity:.8}
}

/* Status bar */
.status-bar{
  display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;
  margin-top:1rem;z-index:2;position:relative;
}
.status-indicator{
  display:flex;align-items:center;gap:.5rem;
  font-family:'Share Tech Mono',monospace;font-size:.72rem;
  color:#5a7a8a;
  padding:.35rem .8rem;
  border:1px solid rgba(6,182,212,.1);
  border-radius:6px;
  background:rgba(6,182,212,.02);
  animation:statusBorder 8s ease-in-out infinite;
}
.status-dot{
  width:8px;height:8px;border-radius:50%;
  animation:statusCycle 6s ease-in-out infinite;
}
.status-indicator:nth-child(1) .status-dot{background:#f59e0b;box-shadow:0 0 8px rgba(245,158,11,.5);animation-delay:0s}
.status-indicator:nth-child(2) .status-dot{background:#06b6d4;box-shadow:0 0 8px rgba(6,182,212,.5);animation-delay:2s}
.status-indicator:nth-child(3) .status-dot{background:#10b981;box-shadow:0 0 8px rgba(16,185,129,.5);animation-delay:4s}
.status-indicator:nth-child(4) .status-dot{background:#ef4444;box-shadow:0 0 8px rgba(239,68,68,.5);animation-delay:1s}
@keyframes statusCycle{
  0%,40%{opacity:.3;transform:scale(.8)}
  10%,30%{opacity:1;transform:scale(1.3)}
  100%{opacity:.3;transform:scale(.8)}
}
@keyframes statusBorder{
  0%,100%{border-color:rgba(6,182,212,.08)}
  50%{border-color:rgba(6,182,212,.2)}
}

/* ===== FLOATING PARTICLES ===== */
.particles{
  position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
}
.particle{
  position:absolute;width:2px;height:2px;
  background:rgba(6,182,212,.4);border-radius:50%;
  animation:floatUp linear infinite;
}
.particle:nth-child(1){left:5%;width:2px;height:2px;animation-duration:12s;animation-delay:0s;background:rgba(6,182,212,.3)}
.particle:nth-child(2){left:15%;width:1px;height:1px;animation-duration:18s;animation-delay:2s;background:rgba(13,148,136,.2)}
.particle:nth-child(3){left:25%;width:3px;height:3px;animation-duration:14s;animation-delay:4s;background:rgba(6,182,212,.25)}
.particle:nth-child(4){left:35%;width:1px;height:1px;animation-duration:20s;animation-delay:1s;background:rgba(13,148,136,.3)}
.particle:nth-child(5){left:45%;width:2px;height:2px;animation-duration:16s;animation-delay:3s;background:rgba(6,182,212,.2)}
.particle:nth-child(6){left:55%;width:1px;height:1px;animation-duration:22s;animation-delay:5s;background:rgba(13,148,136,.25)}
.particle:nth-child(7){left:65%;width:2px;height:2px;animation-duration:13s;animation-delay:2.5s;background:rgba(6,182,212,.35)}
.particle:nth-child(8){left:75%;width:1px;height:1px;animation-duration:17s;animation-delay:0.5s;background:rgba(13,148,136,.2)}
.particle:nth-child(9){left:85%;width:3px;height:3px;animation-duration:15s;animation-delay:6s;background:rgba(6,182,212,.2)}
.particle:nth-child(10){left:95%;width:1px;height:1px;animation-duration:19s;animation-delay:1.5s;background:rgba(13,148,136,.3)}
.particle:nth-child(11){left:10%;width:2px;height:2px;animation-duration:21s;animation-delay:7s;background:rgba(6,182,212,.15)}
.particle:nth-child(12){left:50%;width:1px;height:1px;animation-duration:16s;animation-delay:8s;background:rgba(13,148,136,.15)}
@keyframes floatUp{
  0%{transform:translateY(100vh) translateX(0);opacity:0}
  10%{opacity:1}
  90%{opacity:1}
  100%{transform:translateY(-10vh) translateX(30px);opacity:0}
}

/* ===== SECTION STYLES ===== */
.section{padding:5rem 0;position:relative;z-index:1}
.section-header{text-align:center;margin-bottom:3rem}
.section-header .section-tag{
  display:inline-block;
  font-family:'Share Tech Mono',monospace;
  font-size:.7rem;letter-spacing:2px;text-transform:uppercase;
  color:#06b6d4;margin-bottom:.5rem;
}
.section-header .section-tit{
  font-size:clamp(1.5rem,3vw,2.2rem);
  background:linear-gradient(90deg,#e8ecf1,#06b6d4);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.section-header .divider{
  width:60px;height:3px;margin:1rem auto 0;
  background:linear-gradient(90deg,#06b6d4,#0d9488);border-radius:2px;
  animation:dividerPulse 3s ease-in-out infinite;
}
@keyframes dividerPulse{
  0%,100%{width:60px;opacity:.7}
  50%{width:90px;opacity:1}
}

/* ===== GLASS CARD ===== */
.glass-card{
  background:rgba(15,22,36,.6);
  backdrop-filter:blur(10px);
  border:1px solid rgba(6,182,212,.1);
  border-radius:12px;
  padding:2rem;
  margin-bottom:1.5rem;
  transition:border-color .3s,box-shadow .3s;
}
.glass-card:hover{
  border-color:rgba(6,182,212,.25);
  box-shadow:0 0 30px rgba(6,182,212,.05);
}

/* ===== GLOW BORDER CARD ===== */
.glow-card{
  position:relative;
  background:rgba(10,14,23,.85);
  border-radius:14px;
  padding:2rem;
  margin-bottom:1.5rem;
  overflow:hidden;
}
.glow-card::before{
  content:'';position:absolute;inset:-1px;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(6,182,212,.3),transparent 40%,transparent 60%,rgba(13,148,136,.3));
  z-index:-1;
  animation:borderGlow 4s ease-in-out infinite alternate;
}
@keyframes borderGlow{
  0%{opacity:.4}
  100%{opacity:1}
}
.glow-card::after{
  content:'';position:absolute;inset:1px;
  background:rgba(10,14,23,.95);
  border-radius:13px;z-index:-1;
}
.glow-card h3{color:#06b6d4;margin-bottom:.8rem;font-size:1.15rem}
.glow-card p{margin-bottom:.8rem}

/* ===== STAT BOX ===== */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin:2rem 0}
.stat-box{
  text-align:center;padding:1.5rem;
  background:rgba(6,182,212,.03);
  border:1px solid rgba(6,182,212,.12);
  border-radius:10px;
  transition:transform .3s, box-shadow .3s;
  animation:statFloat 4s ease-in-out infinite;
}
.stat-box:nth-child(2){animation-delay:.5s}
.stat-box:nth-child(3){animation-delay:1s}
.stat-box:nth-child(4){animation-delay:1.5s}
@keyframes statFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
.stat-box:hover{box-shadow:0 8px 30px rgba(6,182,212,.08)}
.stat-number{
  font-family:'Share Tech Mono',monospace;
  font-size:2rem;color:#06b6d4;
  text-shadow:0 0 20px rgba(6,182,212,.3);
  animation:statCount 3s ease-in-out infinite alternate;
}
.stat-number.green{color:#10b981;text-shadow:0 0 20px rgba(16,185,129,.3)}
.stat-number.red{color:#ef4444;text-shadow:0 0 20px rgba(239,68,68,.3)}
.stat-number.amber{color:#f59e0b;text-shadow:0 0 20px rgba(245,158,11,.3)}
@keyframes statCount{0%{opacity:.7}100%{opacity:1}}
.stat-label{font-size:.8rem;color:#5a7a8a;margin-top:.3rem}

/* ===== DEFINITION BOX ===== */
.def-box{
  background:linear-gradient(135deg,rgba(6,182,212,.05),rgba(13,148,136,.03));
  border-left:4px solid #06b6d4;
  padding:1.5rem 2rem;
  border-radius:0 10px 10px 0;
  margin:1.5rem 0;
}
.def-box .def-label{
  font-family:'Share Tech Mono',monospace;
  font-size:.75rem;color:#06b6d4;
  letter-spacing:1px;text-transform:uppercase;
  margin-bottom:.5rem;
}
.def-box p{font-size:.95rem;line-height:1.8}

/* ===== ANALOGY BOX ===== */
.analogy-box{
  background:linear-gradient(135deg,rgba(16,185,129,.05),rgba(6,182,212,.03));
  border-left:4px solid #10b981;
  padding:1.5rem 2rem;
  border-radius:0 10px 10px 0;
  margin:1.5rem 0;
}
.analogy-box .def-label{color:#10b981}

/* ===== SCENARIO ===== */
.scenario-timeline{position:relative;padding-left:2rem}
.scenario-timeline::before{
  content:'';position:absolute;left:8px;top:0;bottom:0;
  width:2px;
  background:linear-gradient(180deg,#06b6d4,#0d9488,rgba(13,148,136,.2));
}
.timeline-item{position:relative;margin-bottom:2rem;padding-left:1.5rem}
.timeline-item::before{
  content:'';position:absolute;left:-2rem;top:4px;
  width:16px;height:16px;border-radius:50%;
  background:#0a0e17;border:2px solid #06b6d4;
  box-shadow:0 0 10px rgba(6,182,212,.3);
}
.timeline-item.bad::before{border-color:#ef4444;box-shadow:0 0 10px rgba(239,68,68,.3)}
.timeline-item.good::before{border-color:#10b981;box-shadow:0 0 10px rgba(16,185,129,.3)}
.timeline-item h4{color:#06b6d4;margin-bottom:.4rem;font-size:1rem}
.timeline-item.bad h4{color:#ef4444}
.timeline-item.good h4{color:#10b981}
.timeline-item p{font-size:.92rem;color:#8fa3b8}

/* ===== STEPS ===== */
.steps-grid{display:flex;flex-direction:column;gap:1.2rem}
.step-card{
  display:flex;gap:1.2rem;align-items:flex-start;
  background:rgba(15,22,36,.5);
  border:1px solid rgba(6,182,212,.08);
  border-radius:10px;
  padding:1.3rem 1.5rem;
  transition:all .3s;
}
.step-card:hover{
  border-color:rgba(6,182,212,.2);
  background:rgba(15,22,36,.7);
  transform:translateX(6px);
}
.step-num{
  flex-shrink:0;
  width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(6,182,212,.15),rgba(13,148,136,.1));
  border:1px solid rgba(6,182,212,.3);
  border-radius:10px;
  font-family:'Share Tech Mono',monospace;
  font-size:1.1rem;color:#06b6d4;
}
.step-content h4{color:#e8ecf1;margin-bottom:.4rem;font-size:1rem}
.step-content p{font-size:.88rem;color:#8fa3b8;margin-bottom:.4rem}
.step-content ul{list-style:none;padding:0}
.step-content ul li{
  font-size:.84rem;color:#6a8a9a;padding:.2rem 0 .2rem 1.2rem;
  position:relative;
}
.step-content ul li::before{
  content:'›';position:absolute;left:0;color:#06b6d4;font-weight:bold;
}

/* Protection tags */
.protect-tag{
  display:inline-block;
  font-family:'Share Tech Mono',monospace;
  font-size:.62rem;
  padding:.1rem .4rem;
  border-radius:3px;
  margin-left:.3rem;
  vertical-align:middle;
}
.protect-tag.detect{background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.3);color:#f59e0b}
.protect-tag.prevent{background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.3);color:#10b981}
.protect-tag.respond{background:rgba(6,182,212,.12);border:1px solid rgba(6,182,212,.3);color:#06b6d4}

/* ===== MISTAKES &amp; BEST ===== */
/* Adversary mistakes (left) and defender best practices (right) */
.mb-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
@media(max-width:700px){.mb-grid{grid-template-columns:1fr}}
.mb-card{padding:1.5rem}
.mb-card.mistake{border-left:3px solid #ef4444}
.mb-card.best{border-left:3px solid #10b981}
.mb-card h3{font-size:1rem;margin-bottom:1rem}
.mb-card.mistake h3{color:#ef4444}
.mb-card.best h3{color:#10b981}
.mb-card ul{list-style:none;padding:0}
.mb-card ul li{
  padding:.5rem 0 .5rem 1.5rem;
  font-size:.88rem;color:#8fa3b8;
  position:relative;
  border-bottom:1px solid rgba(255,255,255,.03);
}
.mb-card.mistake ul li::before{content:'✕';position:absolute;left:0;color:#ef4444;font-weight:bold;font-size:.9rem}
.mb-card.best ul li::before{content:'✓';position:absolute;left:0;color:#10b981;font-weight:bold;font-size:.9rem}

/* ===== TEAM VIEWS ===== */
/* Red Team (attacker) vs Blue Team (defender) perspectives */
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
@media(max-width:700px){.team-grid{grid-template-columns:1fr}}
.team-card{position:relative;overflow:hidden}
.team-card .team-label{
  position:absolute;top:1rem;right:1rem;
  font-family:'Share Tech Mono',monospace;
  font-size:.65rem;letter-spacing:2px;text-transform:uppercase;
  padding:.2rem .6rem;border-radius:4px;
}
.team-card.red .team-label{color:#ef4444;border:1px solid rgba(239,68,68,.3);background:rgba(239,68,68,.08)}
.team-card.blue .team-label{color:#06b6d4;border:1px solid rgba(6,182,212,.3);background:rgba(6,182,212,.08)}
.team-card h3{margin-top:.5rem;margin-bottom:.8rem;font-size:1.1rem}
.team-card.red h3{color:#f87171}
.team-card.blue h3{color:#22d3ee}

/* ===== HUNTER SECTION ===== */
/* Proactive threat hunting methodologies for infrastructure discovery */
.hunter-card{
  background:linear-gradient(135deg,rgba(245,158,11,.05),rgba(6,182,212,.03));
  border:1px solid rgba(245,158,11,.15);
  border-radius:12px;
  padding:2rem;
}
.hunter-card h3{color:#f59e0b;margin-bottom:.8rem}

/* ===== CTA ===== */
/* Call-to-action section with sub-technique navigation */
.cta-box{
  display:inline-block;
  background:linear-gradient(135deg,rgba(6,182,212,.08),rgba(13,148,136,.05));
  border:1px solid rgba(6,182,212,.2);
  border-radius:16px;
  padding:3rem 2.5rem;
  max-width:800px;
  width:100%;
}
.cta-box h2{margin-bottom:1rem;font-size:1.5rem}

/* ===== SUB-TECHNIQUE LINKS ===== */
/* Grid of clickable sub-technique cards (T1583.001 through T1583.008) */
.subtech-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1rem;
  margin-top:2rem;
}
.subtech-link{
  display:flex;align-items:center;gap:.6rem;
  padding:.8rem 1rem;
  background:rgba(6,182,212,.04);
  border:1px solid rgba(6,182,212,.15);
  border-radius:10px;
  font-family:'Share Tech Mono',monospace;
  font-size:.78rem;color:#06b6d4;
  transition:all .3s;
  text-decoration:none;
}
.subtech-link:hover{
  background:rgba(6,182,212,.1);
  border-color:rgba(6,182,212,.4);
  box-shadow:0 0 20px rgba(6,182,212,.1);
  color:#22d3ee;
  transform:translateY(-2px);
}
.subtech-link .st-num{
  font-size:.9rem;font-weight:bold;
  color:#0d9488;
  min-width:65px;
}
.subtech-link .st-name{color:#8fa3b8}
.subtech-link:hover .st-name{color:#c8d6e5}

/* ===== REFERENCE BADGE ===== */
/* External authority link badges (CISA, NIST, MITRE, CSO Online) */
.ref-links{
  display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem;
}
.ref-links a{
  font-size:.72rem;
  padding:.25rem .6rem;
  border:1px solid rgba(6,182,212,.12);
  border-radius:4px;
  color:#5a8a9a;
  transition:all .3s;
}
.ref-links a:hover{
  border-color:rgba(6,182,212,.4);
  color:#06b6d4;
}

/* ===== KEY TERM TABLE ===== */
/* Two-column grid for displaying key terminology and definitions */
.term-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
@media(max-width:700px){.term-grid{grid-template-columns:1fr}}
.term-item{
  padding:1rem;
  background:rgba(6,182,212,.03);
  border:1px solid rgba(6,182,212,.08);
  border-radius:8px;
  transition:border-color .3s;
}
.term-item:hover{border-color:rgba(6,182,212,.2)}
.term-item .term-name{
  font-family:'Share Tech Mono',monospace;
  font-size:.85rem;color:#06b6d4;
  margin-bottom:.3rem;
}
.term-item .term-def{font-size:.82rem;color:#6a8a9a;line-height:1.6}

/* ===== HELPER CLASSES ===== */
/* Utility classes for text colors, margins, and alignment */
.text-cyan{color:#06b6d4}
.text-teal{color:#0d9488}
.text-green{color:#10b981}
.text-red{color:#ef4444}
.text-amber{color:#f59e0b}
.text-muted{color:#5a7a8a}
.mt-1{margin-top:.5rem}
.mt-2{margin-top:1rem}
.mt-3{margin-top:1.5rem}
.mb-1{margin-bottom:.5rem}
.mb-2{margin-bottom:1rem}
.text-center{text-align:center}

/* ===== TOOL TAG ===== */
/* Inline monospace badges for tool and technology names */
.tool-tag{
  display:inline-block;
  font-family:'Share Tech Mono',monospace;
  font-size:.72rem;
  padding:.15rem .5rem;
  background:rgba(6,182,212,.06);
  border:1px solid rgba(6,182,212,.15);
  border-radius:4px;
  color:#06b6d4;
  margin:.15rem;
}

/* ===== WARNING BOX ===== */
.warn-box{
  background:linear-gradient(135deg,rgba(239,68,68,.06),rgba(245,158,11,.03));
  border:1px solid rgba(239,68,68,.15);
  border-radius:10px;
  padding:1.5rem;
  margin:1.5rem 0;
}
.warn-box h4{color:#ef4444;margin-bottom:.5rem;font-size:.95rem}

/* ===== PULSE RING ===== */
@keyframes pulseRing{
  0%{transform:scale(.8);opacity:1}
  100%{transform:scale(2.5);opacity:0}
}
.pulse-ring{
  position:absolute;
  width:20px;height:20px;
  border-radius:50%;
  border:2px solid #06b6d4;
  animation:pulseRing 2s ease-out infinite;
}

/* ===== RETICLE ===== */
@keyframes reticleSpin{
  0%{transform:rotate(0deg)}
  100%{transform:rotate(360deg)}
}

/* ===== AMBIENT GLOW ===== */
@keyframes ambientGlow{
  0%,100%{opacity:.15}
  50%{opacity:.35}
}

/* ===== ICON FLOAT ===== */
@keyframes iconFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

/* ===== DATA STREAM ===== */
@keyframes dataStream{
  0%{background-position:0 0}
  100%{background-position:0 20px}
}

/* ===== HEX PULSE ===== */
@keyframes hexPulse{
  0%,100%{opacity:.5;border-color:rgba(6,182,212,.15)}
  50%{opacity:1;border-color:rgba(6,182,212,.4)}
}

/* ===== METER FILL ===== */
@keyframes meterFill{
  0%{width:0}
  100%{width:var(--fill)}
}

/* ===== CONNECTOR ANIM ===== */
@keyframes connectorDash{
  0%{stroke-dashoffset:20}
  100%{stroke-dashoffset:0}
}

/* ===== RESPONSIVE ===== */

/* Large tablets and small desktops */
@media(max-width:968px){
  .infra-sim{height:380px}
  .infra-node{padding:.35rem .4rem}
  .infra-node .node-icon{font-size:.85rem}
  .infra-node .node-label{font-size:.4rem}
}

/* Tablets */
@media(max-width:768px){
  .stat-grid{grid-template-columns:1fr 1fr}
  .term-grid{grid-template-columns:1fr}
  .subtech-grid{grid-template-columns:1fr}
  .glass-card,.glow-card{padding:1.3rem}
  .infra-sim{height:340px}
  .globe{width:100px;height:100px}
  .globe-ring:nth-child(1){width:130px;height:130px}
  .globe-ring:nth-child(2){width:160px;height:160px}
  .globe-ring:nth-child(3){width:200px;height:200px}
}

/* Mobile phones */
@media(max-width:480px){
  .stat-grid{grid-template-columns:1fr}
  .mb-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr}
  .infra-sim{height:300px}
  .status-bar{gap:.5rem}
  .status-indicator{font-size:.6rem;padding:.2rem .5rem}
  .infra-node:nth-child(3),.infra-node:nth-child(5),.infra-node:nth-child(7),.infra-node:nth-child(8){display:none}
}

/* ===== REDUCED MOTION ===== */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}/* End custom CSS */