:root{
  --bg:#070b14;
  --bg2:#0c1221;
  --panel:rgba(10,16,30,.72);
  --panel-2:rgba(15,21,36,.88);
  --text:#f4f7fb;
  --muted:#a7b2c9;
  --line:rgba(255,255,255,.10);
  --accent:#58d5ff;
  --accent-2:#7c5cff;
  --accent-3:#ff6ba8;
  --good:#6ef0a8;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --radius:24px;
  --radius-sm:18px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(88,213,255,.18), transparent 30%),
    radial-gradient(circle at top right, rgba(255,107,168,.12), transparent 35%),
    linear-gradient(180deg, #050814 0%, #0a1020 50%, #070b14 100%);
  min-height:100vh;
}
a{color:inherit; text-decoration:none}
img{max-width:100%; display:block}
.container{width:min(var(--max), calc(100% - 32px)); margin:0 auto}
.site-header{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(18px);
  background:rgba(6,10,20,.72);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0; gap:16px;
}
.nav-actions{
  margin-left:auto;
  display:flex; align-items:center; gap:12px;
}
.brand{
  display:flex; align-items:center; gap:12px; min-width:0;
}
.brand-logo{
  width:46px; height:46px; border-radius:14px; object-fit:cover;
  border:1px solid rgba(255,255,255,.14); box-shadow:0 8px 24px rgba(0,0,0,.35);
  background:#fff;
}
.brand strong{display:block; font-size:1.02rem; letter-spacing:.2px}
.brand span{display:block; color:var(--muted); font-size:.84rem}
.nav-links{
  display:flex; gap:10px; align-items:center; flex-wrap:wrap;
}
.nav-links a{
  padding:10px 14px; border-radius:999px; color:var(--muted);
  border:1px solid transparent; transition:.2s ease;
}
.nav-links a:hover,.nav-links a.active{
  color:var(--text); border-color:var(--line); background:rgba(255,255,255,.05);
}
.nav-cta{
  padding:11px 16px; border-radius:999px; font-weight:700;
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  color:#fff; box-shadow:0 16px 38px rgba(88,213,255,.18);
}
.social-link{
  display:inline-flex; align-items:center; gap:10px;
  padding:10px 14px; border-radius:999px;
  border:1px solid var(--line); color:var(--text);
  background:rgba(255,255,255,.05); transition:.2s ease;
}
.social-link:hover{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.22);
}
.social-link svg{
  width:18px; height:18px; fill:currentColor; flex:none;
}
.social-link span{
  font-size:.95rem; font-weight:600;
}
.menu-btn{
  display:none; border:1px solid var(--line); color:var(--text);
  background:rgba(255,255,255,.04); padding:10px 12px; border-radius:12px;
}
.hero{
  padding:46px 0 28px;
}
.hero-grid{
  display:grid; grid-template-columns:1.15fr .85fr; gap:24px; align-items:stretch;
}
.hero-card{
  position:relative; overflow:hidden; border-radius:calc(var(--radius) + 10px);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid var(--line); box-shadow:var(--shadow);
}
.hero-main{
  padding:34px;
  min-height:540px;
  display:flex; flex-direction:column; justify-content:space-between;
}
.kicker{
  display:inline-flex; align-items:center; gap:8px;
  width:max-content; padding:8px 12px; border-radius:999px;
  background:rgba(255,255,255,.07); border:1px solid var(--line);
  color:var(--muted); font-size:.88rem;
}
.kicker i{
  width:10px; height:10px; border-radius:999px; background:var(--good); display:inline-block;
  box-shadow:0 0 0 6px rgba(110,240,168,.12);
}
.hero h1{
  font-size:clamp(2.4rem, 6vw, 4.9rem);
  line-height:.95; margin:.65rem 0 1rem;
  letter-spacing:-.04em;
}
.hero p{
  max-width:60ch; font-size:1.05rem; line-height:1.75; color:var(--muted);
  margin:0 0 24px;
}
.hero-actions{display:flex; gap:12px; flex-wrap:wrap}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:13px 18px; border-radius:16px; border:1px solid var(--line);
  background:rgba(255,255,255,.05); color:var(--text); font-weight:700;
}
.btn.primary{
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  border-color:transparent; box-shadow:0 16px 38px rgba(124,92,255,.18);
}
.btn.ghost{background:rgba(255,255,255,.04)}
.hero-meta{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:12px; margin-top:24px;
}
.meta{
  padding:16px; border-radius:18px; background:rgba(255,255,255,.04);
  border:1px solid var(--line);
}
.meta strong{display:block; font-size:1.15rem; margin-bottom:4px}
.meta span{color:var(--muted); font-size:.88rem}
.hero-visual{
  display:grid; grid-template-rows:auto 1fr; gap:18px;
}
.logo-panel{
  padding:22px;
  display:flex; align-items:center; justify-content:center; min-height:260px;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.22), rgba(255,255,255,.03) 62%),
    linear-gradient(180deg, rgba(88,213,255,.14), rgba(124,92,255,.10));
}
.logo-panel img{
  width:min(100%, 300px); border-radius:28px;
  box-shadow:0 30px 70px rgba(0,0,0,.32);
}
.feature-stack{
  display:grid; gap:18px;
}
.feature-card{
  padding:18px; border-radius:22px; background:var(--panel);
  border:1px solid var(--line); box-shadow:var(--shadow);
}
.feature-card h3{margin:0 0 8px}
.feature-card p{margin:0; color:var(--muted); line-height:1.7}
.section{padding:28px 0 46px}
.section-head{
  display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:18px;
}
.section-head h2{
  margin:0; font-size:clamp(1.5rem, 3vw, 2.4rem);
}
.section-head p{margin:0; color:var(--muted); max-width:60ch; line-height:1.7}
.grid-3{display:grid; grid-template-columns:repeat(3, 1fr); gap:18px}
.grid-2{display:grid; grid-template-columns:repeat(2, 1fr); gap:18px}
.card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.card-body{padding:20px}
.card h3{margin:0 0 10px}
.card p{margin:0; color:var(--muted); line-height:1.7}
.badge{
  display:inline-flex; align-items:center; gap:8px;
  padding:7px 11px; border-radius:999px;
  background:rgba(255,255,255,.06); border:1px solid var(--line);
  color:#dfe8ff; font-size:.84rem;
}
.badge.dot::before{
  content:""; width:8px; height:8px; border-radius:50%;
  background:var(--accent);
}
.product-card{
  display:flex; flex-direction:column; min-height:100%;
}
.product-media{
  aspect-ratio: 16 / 11;
  position:relative; overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}
.product-media img{
  width:100%; height:100%; object-fit:cover;
}
.product-content{
  padding:18px;
  display:flex; flex-direction:column; gap:12px; flex:1;
}
.product-top{display:flex; align-items:flex-start; justify-content:space-between; gap:14px}
.product-top h3{font-size:1.08rem; margin:0}
.product-top span{
  padding:6px 10px; border-radius:999px; background:rgba(88,213,255,.12);
  color:#b7efff; border:1px solid rgba(88,213,255,.22); font-size:.8rem;
}
.product-content ul{margin:0; padding-left:18px; color:var(--muted); line-height:1.7}
.filters{
  display:flex; gap:10px; flex-wrap:wrap; margin:4px 0 18px;
}
.filter-btn{
  padding:10px 14px; border-radius:999px; border:1px solid var(--line);
  background:rgba(255,255,255,.04); color:var(--muted); cursor:pointer;
}
.filter-btn.active{
  color:#fff; background:linear-gradient(135deg, var(--accent), var(--accent-2)); border-color:transparent;
}
.timeline{
  display:grid; gap:14px;
}
.step{
  display:grid; grid-template-columns:auto 1fr; gap:14px; align-items:start;
  padding:18px; border-radius:20px; background:rgba(255,255,255,.04); border:1px solid var(--line);
}
.step-num{
  width:42px; height:42px; border-radius:14px; display:grid; place-items:center;
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  font-weight:800;
}
.contact-panel{
  display:grid; gap:14px;
}
.contact-box{
  padding:20px; border-radius:22px; background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow);
}
.contact-box h3{margin:0 0 10px}
.contact-box p{margin:0; color:var(--muted); line-height:1.7}
.contact-list{display:grid; gap:10px; margin-top:14px}
.contact-item{
  display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap;
  padding:12px 14px; border-radius:16px; background:rgba(255,255,255,.04); border:1px solid var(--line);
}
.contact-item strong{font-size:.95rem}
.contact-item span{color:var(--muted)}
.footer{
  padding:26px 0 40px; border-top:1px solid var(--line); color:var(--muted);
}
.footer-grid{
  display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; align-items:center;
}
.small{font-size:.92rem}
.mobile-only{display:none}
.page-hero{
  padding:38px 0 10px;
}
.page-hero .hero-card{min-height:auto}
.page-hero-inner{padding:28px 30px}
.page-hero h1{margin-bottom:12px}
.page-hero p{margin-bottom:0}
.subtle{
  color:var(--muted);
}
.map{
  width:100%; min-height:280px; border:0; border-radius:18px; overflow:hidden;
  background:rgba(255,255,255,.04);
}
@media (max-width: 960px){
  .hero-grid,.grid-3,.grid-2{grid-template-columns:1fr}
  .hero-main{min-height:auto}
  .section-head{flex-direction:column; align-items:flex-start}
  .menu-btn{display:inline-flex}
  .nav-links{
    display:none; position:absolute; left:16px; right:16px; top:68px;
    flex-direction:column; padding:14px; border-radius:20px;
    background:rgba(6,10,20,.98); border:1px solid var(--line); box-shadow:var(--shadow);
  }
  .nav-links.open{display:flex}
  .nav-actions{display:none}
  .nav-cta,.social-link{display:none}
  .mobile-only{display:inline-flex}
}
@media (max-width: 640px){
  .hero{padding-top:22px}
  .hero-main{padding:20px}
  .hero-meta{grid-template-columns:1fr}
  .card-body,.product-content,.contact-box,.page-hero-inner{padding:18px}
}
