/* ========== Reset & Variables ========== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{
  font-family:'Noto Sans SC',sans-serif;
  background:#060d1b;
  color:#ddeaff;
  overflow-x:hidden;
  line-height:1.5;
}
button{border:none;cursor:pointer;font-family:inherit}
a,button{text-decoration:none}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(14,126,255,.3);border-radius:2px}

:root{
  --bg:#060d1b;
  --fg:#ddeaff;
  --card:#0b1528;
  --primary:#0e7eff;
  --accent:#00c8ff;
  --muted:#101e38;
  --muted-fg:#5a7aaa;
  --destructive:#ff3d5e;
  --border:rgba(14,126,255,.18);
  --radius:0.625rem;
}
.container{max-width:80rem;margin:0 auto;padding:0 1.5rem}

/* ========== Keyframes ========== */
@keyframes shimmer{0%{background-position:0% center}100%{background-position:200% center}}
@keyframes pulse-glow{0%,100%{opacity:1}50%{opacity:.5}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInLeft{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}
@keyframes scaleIn{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}

/* ========== Utility ========== */
.grid-bg{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;
  background-image:
    linear-gradient(rgba(14,126,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(14,126,255,.04) 1px,transparent 1px);
  background-size:60px 60px;
}
.grid-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent,transparent,var(--bg) 98%);
}
.glow-orb{
  position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;
}
.glow-orb.blue{background:rgba(14,126,255,.15);width:24rem;height:24rem}
.glow-orb.cyan{background:rgba(0,200,255,.08);width:20rem;height:20rem}
.glow-orb.center{background:rgba(14,126,255,.15);width:24rem;height:24rem}

.section-label{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.25rem .75rem;border-radius:9999px;
  border:1px solid rgba(14,126,255,.3);background:rgba(14,126,255,.1);
  margin-bottom:1rem;
}
.section-label .dot{
  width:.375rem;height:.375rem;border-radius:50%;background:var(--accent);
  animation:pulse-glow 2s infinite;
}
.section-label span{
  font-size:.75rem;font-family:monospace;color:var(--accent);
  letter-spacing:.1em;text-transform:uppercase;
}

/* ========== Nav ========== */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:50;
  transition:all .3s;
}
.nav.scrolled{background:rgba(6,13,27,.95);backdrop-filter:blur(24px);border-bottom:1px solid var(--border)}
.nav-inner{
  max-width:80rem;margin:0 auto;padding:0 1.5rem;
  height:4rem;display:flex;align-items:center;justify-content:space-between;
}
.nav-brand{display:flex;align-items:center;gap:.75rem}
.nav-brand .logo{
  width:2rem;height:2rem;border-radius:.5rem;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  display:flex;align-items:center;justify-content:center;
}
.nav-brand .logo svg{width:1rem;height:1rem;color:#fff}
.nav-brand .name{font-size:.875rem;font-weight:700;color:var(--fg);line-height:1}
.nav-brand .sub{font-size:.625rem;color:var(--muted-fg);font-family:monospace;margin-top:.125rem}
.nav-links{display:flex;align-items:center;gap:2rem}
.nav-links a{font-size:.875rem;color:var(--muted-fg);text-decoration:none;transition:color .2s}
.nav-links a:hover{color:var(--fg)}
.nav-cta{font-size:.875rem;padding:.5rem 1.25rem;border-radius:.5rem;
  background:var(--primary);color:#fff;text-decoration:none;
  font-weight:500;transition:all .2s}
.nav-cta:hover{background:rgba(14,126,255,.9);box-shadow:0 4px 16px rgba(14,126,255,.3)}
.nav-toggle{
  display:none;background:none;border:none;color:var(--muted-fg);
  cursor:pointer;padding:.25rem;
}
.nav-toggle:hover{color:var(--fg)}
.nav-toggle svg{width:1.5rem;height:1.5rem}
.nav-mobile{
  display:none;flex-direction:column;gap:1rem;
  background:rgba(6,13,27,.98);backdrop-filter:blur(24px);
  border-top:1px solid var(--border);padding:1rem 1.5rem;
}
.nav-mobile a{font-size:.875rem;color:var(--muted-fg);text-decoration:none;padding:.25rem 0}
.nav-mobile a:hover{color:var(--fg)}
.nav-mobile .nav-cta{text-align:center;display:block}
.nav-mobile.open{display:flex}

/* ========== Hero ========== */
.hero{
  position:relative;min-height:100vh;display:flex;flex-direction:column;
  justify-content:center;padding-top:4rem;
}
.hero-content{position:relative;padding:6rem 0;max-width:80rem;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}
.hero h1{font-size:clamp(2.25rem,5vw,4.5rem);font-weight:800;line-height:1.15;margin-bottom:1.5rem;max-width:56rem}
.hero h1 .gradient{
  background:linear-gradient(to right,var(--primary),var(--accent),var(--primary));
  background-size:200% auto;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  animation:shimmer 3s linear infinite;
}
.hero p{font-size:clamp(1rem,1.5vw,1.25rem);color:var(--muted-fg);max-width:42rem;margin-bottom:2.5rem;line-height:1.75}
.hero p strong{color:var(--fg)}
.hero-btns{display:flex;flex-wrap:wrap;gap:1rem}
.btn-primary{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.875rem 1.75rem;border-radius:.75rem;
  background:var(--primary);color:#fff;text-decoration:none;
  font-weight:500;transition:all .2s;
}
.btn-primary:hover{background:rgba(14,126,255,.9);box-shadow:0 4px 24px rgba(14,126,255,.3)}
.btn-outline{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.875rem 1.75rem;border-radius:.75rem;
  border:1px solid var(--border);color:var(--fg);text-decoration:none;
  font-weight:500;transition:all .2s;
}
.btn-outline:hover{border-color:rgba(14,126,255,.5)}
.tech-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:3rem}
.tech-badges .badge{
  padding:.4rem .95rem;font-size:.95rem;font-family:monospace;
  border:1px solid var(--border);color:var(--muted-fg);border-radius:9999px;
}
.tech-badges .badge.hl{border-color:rgba(14,126,255,.3);color:var(--accent);font-size:1.1rem;font-weight:600}

/* Stats bar */
.stats-bar{border-top:1px solid var(--border);background:rgba(11,21,40,.5);backdrop-filter:blur(8px);position:relative}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:2rem 1.5rem;max-width:80rem;margin:0 auto}
.stat-item{text-align:center}
.stat-item .val{font-size:clamp(1.25rem,2.5vw,1.875rem);font-weight:700;color:var(--fg);margin-bottom:.25rem}
.stat-item .lbl{font-size:.75rem;color:var(--muted-fg)}

/* ========== Sections ========== */
section{position:relative;padding:6rem 0;overflow:hidden}
.section-header{text-align:center;margin-bottom:3rem}
.section-header h2{font-size:clamp(1.75rem,2.5vw,2.5rem);font-weight:700;margin-bottom:1rem}
.section-header p{color:var(--muted-fg);max-width:42rem;margin:0 auto}

/* Pain Points */
.pain-bg{position:absolute;inset:0;
  background:linear-gradient(to bottom,var(--bg),#08111f,var(--bg))}
.pain-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  max-width:80rem;margin:0 auto;padding:0 1.5rem;
}
.pain-card{
  padding:1.25rem;border-radius:.75rem;
  border:1px solid var(--border);background:rgba(11,21,40,.4);
  transition:all .5s;cursor:default;
}
.pain-card:hover{border-color:rgba(14,126,255,.4);background:rgba(11,21,40,.8)}
.pain-card .icon-box{
  width:2.5rem;height:2.5rem;border-radius:.5rem;
  background:rgba(255,61,94,.1);border:1px solid rgba(255,61,94,.2);
  display:flex;align-items:center;justify-content:center;
  color:var(--destructive);margin-bottom:1rem;
  transition:transform .2s;
}
.pain-card:hover .icon-box{transform:scale(1.1)}
.pain-card .icon-box svg{width:1.25rem;height:1.25rem}
.pain-card h3{font-size:.875rem;font-weight:600;color:var(--fg);margin-bottom:.5rem}
.pain-card p{font-size:.75rem;color:var(--muted-fg);line-height:1.6}

/* Architecture */
.arch-layers{display:flex;flex-direction:column;gap:.75rem;max-width:56rem;margin:0 auto}
.arch-layer{
  border-radius:.75rem;border:1px solid var(--border);
  background:rgba(11,21,40,.4);overflow:hidden;
  transition:all .5s;
}
.arch-layer:hover{border-color:rgba(14,126,255,.25)}
.arch-layer.highlight{
  border-color:rgba(0,200,255,.4);
  background:linear-gradient(to right,rgba(0,200,255,.1),rgba(14,126,255,.1),rgba(0,200,255,.05));
}
.arch-layer-inner{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem}
.arch-layer .label-col{width:13rem;flex-shrink:0}
.arch-layer .label-col .dot-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.125rem}
.arch-layer .label-col .dot-row .dot{width:.5rem;height:.5rem;border-radius:50%}
.arch-layer .label-col .dot-row .lbl{font-size:.875rem;font-weight:600;color:var(--fg)}
.arch-layer .label-col .en{font-size:.75rem;font-family:monospace;color:var(--muted-fg);margin-left:1rem}
.arch-layer .tags{display:flex;flex-wrap:wrap;gap:.5rem;flex:1}
.arch-layer .tags .tag{
  font-size:.75rem;padding:.25rem .625rem;border-radius:.375rem;
  border:1px solid;background:currentColor;
}
.arch-layer .tags .tag span{opacity:1}

/* Capabilities */
.cap-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;
  max-width:80rem;margin:0 auto;padding:0 1.5rem;
}
.cap-card{
  position:relative;padding:1.5rem;border-radius:1rem;
  border:1px solid var(--border);background:rgba(11,21,40,.4);
  transition:all .5s;cursor:default;
}
.cap-card:hover{transform:translateY(-.25rem);border-color:rgba(14,126,255,.3)}
.cap-card .hover-bg{
  position:absolute;inset:0;border-radius:1rem;opacity:0;
  transition:opacity .3s;
}
.cap-card:hover .hover-bg{opacity:1}
.cap-card .rel{position:relative}
.cap-card .cap-icon{
  width:3rem;height:3rem;border-radius:.75rem;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:1.25rem;border:1px solid;
}
.cap-card .cap-icon svg{width:1.5rem;height:1.5rem}
.cap-card .sub{font-size:.75rem;font-family:monospace;color:var(--muted-fg);margin-bottom:.25rem}
.cap-card h3{font-size:1.125rem;font-weight:700;color:var(--fg);margin-bottom:.75rem}
.cap-card .desc{font-size:.875rem;color:var(--muted-fg);line-height:1.6}

/* Features & Industries tabs */
.tab-nav{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}
.tab-btn{
  display:flex;align-items:center;gap:.5rem;
  padding:.625rem 1.25rem;border-radius:.5rem;font-size:.875rem;
  font-weight:500;transition:all .3s;cursor:pointer;font-family:inherit;
  border:1px solid var(--border);background:transparent;color:var(--muted-fg);
}
.tab-btn:hover{border-color:rgba(14,126,255,.3);color:var(--fg)}
.tab-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 16px rgba(14,126,255,.2)}
.tab-btn svg{width:1.25rem;height:1.25rem}
.tab-panel{
  border-radius:1rem;border:1px solid var(--border);
  background:rgba(11,21,40,.4);padding:2rem;
  transition:all .3s;
}
.tab-panel h3{font-size:1.5rem;font-weight:700;color:var(--fg);margin-bottom:2rem}
.tab-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.tab-item{display:flex;gap:1rem;padding:1.25rem;border-radius:.75rem;
  background:rgba(16,30,56,.5);border:1px solid rgba(14,126,255,.1)}
.tab-item .check-icon{
  width:2rem;height:2rem;border-radius:.5rem;
  background:rgba(14,126,255,.15);border:1px solid rgba(14,126,255,.2);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;margin-top:.125rem;
}
.tab-item .check-icon svg{width:1rem;height:1rem;color:var(--primary)}
.tab-item .item-title{font-size:.875rem;font-weight:600;color:var(--fg);margin-bottom:.375rem}
.tab-item .item-desc{font-size:.75rem;color:var(--muted-fg);line-height:1.6}

/* Industry panel */
.ind-panel{
  display:grid;grid-template-columns:1fr 1fr;gap:2rem;
  padding:2rem;border-radius:1rem;overflow:hidden;
  border:1px solid;transition:all .3s;
}
.ind-panel .ind-info{}
.ind-panel .ind-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:3.5rem;height:3.5rem;border-radius:1rem;margin-bottom:1.5rem;
}
.ind-panel .ind-icon svg{width:1.5rem;height:1.5rem}
.ind-panel h3{font-size:1.5rem;font-weight:700;color:var(--fg);margin-bottom:.75rem}
.ind-panel .ind-desc{color:var(--muted-fg);line-height:1.6;margin-bottom:1.5rem}
.ind-panel .ind-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.ind-panel .ind-tags .itag{
  padding:.25rem .75rem;font-size:.75rem;font-family:monospace;
  border-radius:9999px;border:1px solid;
}
.ind-panel .ind-features{}
.ind-panel .ind-features .feat-label{
  font-size:.75rem;font-family:monospace;color:var(--muted-fg);
  margin-bottom:1rem;letter-spacing:.1em;text-transform:uppercase;
}
.ind-panel .ind-features .feat-list{display:flex;flex-direction:column;gap:.75rem}
.ind-panel .ind-features .feat-item{
  display:flex;align-items:center;gap:.75rem;
  padding:.875rem;border-radius:.5rem;
  border:1px solid;background:rgba(11,21,40,.3);
}
.ind-panel .ind-features .feat-item .fnum{
  width:1.25rem;height:1.25rem;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:.75rem;font-family:monospace;font-weight:700;flex-shrink:0;
}
.ind-panel .ind-features .feat-item .fname{font-size:.875rem;color:var(--fg)}

/* Deployment */
.deploy-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;
  max-width:56rem;margin:0 auto;
}
.deploy-card{
  padding:1.75rem;border-radius:1rem;border:1px solid;
  background:rgba(11,21,40,.4);transition:all .5s;
}
.deploy-card:hover{transform:translateY(-.25rem);border-color:rgba(14,126,255,.3)}
.deploy-card .d-head{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.deploy-card .d-icon{
  width:3.5rem;height:3.5rem;border-radius:.75rem;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.deploy-card .d-icon svg{width:2rem;height:2rem}
.deploy-card .d-label{font-size:.75rem;font-family:monospace;color:var(--muted-fg);margin-bottom:.25rem}
.deploy-card .d-title{font-size:1.25rem;font-weight:700;color:var(--fg)}
.deploy-card .d-desc{font-size:.875rem;color:var(--muted-fg);line-height:1.6;margin-bottom:1.25rem}
.deploy-card .d-pros{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}
.deploy-card .d-pros .pro{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--fg)}
.deploy-card .d-pros .pro svg{width:1rem;height:1rem;flex-shrink:0}
.deploy-card .d-target{padding:.75rem;border-radius:.5rem;font-size:.75rem}

/* Security */
.security-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  max-width:80rem;margin:0 auto;padding:0 1.5rem;
}
.security-card{
  padding:1.25rem;border-radius:.75rem;border:1px solid var(--border);
  background:rgba(11,21,40,.3);text-align:center;
}
.security-card .s-icon{
  width:2.5rem;height:2.5rem;border-radius:.5rem;
  background:rgba(14,126,255,.1);border:1px solid rgba(14,126,255,.2);
  display:flex;align-items:center;justify-content:center;
  color:var(--primary);margin:0 auto .75rem;
}
.security-card .s-icon svg{width:1.25rem;height:1.25rem}
.security-card .s-title{font-size:.875rem;font-weight:600;color:var(--fg);margin-bottom:.25rem}
.security-card .s-desc{font-size:.75rem;color:var(--muted-fg)}
.cert-badges{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}
.cert-badges .cert{
  padding:.375rem 1rem;font-size:.75rem;border-radius:9999px;
  border:1px solid var(--border);color:var(--muted-fg);
}

/* CTA */
.cta-content{text-align:center;position:relative;max-width:48rem;margin:0 auto}
.cta-content h2{font-size:clamp(1.75rem,3vw,3rem);font-weight:700;margin-bottom:1.5rem}
.cta-content p{font-size:1.125rem;color:var(--muted-fg);line-height:1.6;margin-bottom:2.5rem}
.cta-btns{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:3rem}
.cta-guarantee{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:28rem;margin:0 auto}
.cta-guarantee .g-item{
  padding:.75rem;border-radius:.5rem;border:1px solid var(--border);
  background:rgba(11,21,40,.3);font-size:.75rem;color:var(--muted-fg);text-align:center;
}
.cta-guarantee .g-item svg{width:1rem;height:1rem;color:var(--accent);display:block;margin:0 auto .375rem}

/* Footer */
.footer{border-top:1px solid var(--border);background:rgba(11,21,40,.2);padding:2.5rem 0}
.footer-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;max-width:80rem;margin:0 auto;padding:0 1.5rem;flex-wrap:wrap;
}
.footer-brand{display:flex;align-items:center;gap:.75rem}
.footer-brand .logo{
  width:1.75rem;height:1.75rem;border-radius:.5rem;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  display:flex;align-items:center;justify-content:center;
}
.footer-brand .logo svg{width:.8rem;height:.8rem;color:#fff}
.footer-brand .name{font-size:.875rem;font-weight:700;color:var(--fg)}
.footer-brand .sub{font-size:.75rem;color:var(--muted-fg)}
.footer-links{display:flex;flex-wrap:wrap;gap:1.5rem}
.footer-links a{font-size:.75rem;color:var(--muted-fg);text-decoration:none;transition:color .2s}
.footer-links a:hover{color:var(--fg)}
.footer-copy{font-size:.75rem;color:var(--muted-fg)}

/* ========== Anim trigger ========== */
.anim-init{opacity:0}
.anim-visible{animation:fadeInUp .7s ease forwards}
.anim-visible-left{animation:fadeInLeft .7s ease forwards}
.anim-visible-scale{animation:scaleIn .7s ease forwards}

/* ========== Responsive ========== */
@media(max-width:1024px){
  .nav-links,.nav .nav-cta{display:none}
  .nav-toggle{display:block}
  .pain-grid{grid-template-columns:repeat(2,1fr)}
  .cap-grid{grid-template-columns:repeat(2,1fr)}
  .security-grid{grid-template-columns:repeat(2,1fr)}
  .deploy-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .pain-grid{grid-template-columns:1fr}
  .cap-grid{grid-template-columns:1fr}
  .tab-grid{grid-template-columns:1fr}
  .ind-panel{grid-template-columns:1fr}
  .security-grid{grid-template-columns:repeat(2,1fr)}
  .footer-inner{flex-direction:column;text-align:center}
  .arch-layer .label-col{width:auto}
  .arch-layer-inner{flex-direction:column}
}
@media(max-width:480px){
  .security-grid{grid-template-columns:1fr}
  .cta-guarantee{grid-template-columns:1fr}
  .hero-btns{flex-direction:column}
}
/* Mobile floating fixes */
@media(max-width:768px){
  .float-btn,.floating-btn{width:36px;height:36px;border-radius:10px}
  .float-btn svg,.floating-btn svg{width:14px;height:14px}
  .float-btn .label,.floating-btn-tooltip,.float-label{display:none!important}
  .side-float,.float-sidebar{right:12px;bottom:80px;gap:6px}
  .back-to-top,.float-top{right:12px;bottom:20px;width:36px;height:36px}


  h1{word-break:break-word}
  h2{word-break:break-word}
  p,li,span{word-break:break-word}
  section{padding:48px 0}
  .container{padding:0 20px}
  footer,.footer{padding-bottom:80px!important}
}
