:root {
  --bg: #0e1117;
  --bg-alt: #161b22;
  --text: #dbe2ec;
  --primary: #3d82ff;
  --primary-hover: #1f68e6;
  --border: #2b3139;
  --radius: 10px;
  --shadow: 0 4px 16px rgba(0,0,0,0.3);
  --gradient: linear-gradient(135deg,#2253ff,#6d9bff 55%,#9cc6ff);
  --font-stack: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body {
  font-family: var(--font-stack);
  background: var(--bg);
  color: var(--text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img {max-width:100%;display:block;}
a {color: var(--primary);text-decoration:none;}
a:hover {color: var(--primary-hover);}
h1,h2,h3 {line-height:1.3;font-weight:600;}
h1 {font-size: clamp(2.2rem,5vw,3.2rem);margin-bottom:1rem;}
h2 {font-size:2rem;margin-bottom:1.2rem;}
h3 {font-size:1.25rem;margin-bottom:.6rem;}
p {margin-bottom:1rem;}
ul {list-style:none;}
.container {width:100%;max-width:1180px;margin:0 auto;padding:0 24px;}
.flex {display:flex;}
.between {justify-content:space-between;}
.align-center {align-items:center;}
.section {padding:80px 0;}
.section.alt {background: var(--bg-alt);}
.hero {position:relative;padding:100px 0 80px;overflow:hidden;}
.hero-bg {position:absolute;inset:0;z-index:-2;}
.hero-bg img {object-fit:cover;width:100%;height:100%;filter:brightness(.35);}
.hero:before {content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(14,17,23,.6),rgba(14,17,23,.9));z-index:-1;}
.hero-content {max-width:820px;}
.hero-content p {font-size:1.05rem;}
.hero-actions {display:flex;gap:16px;margin:24px 0;}
.hero-highlights {display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-top:30px;}
.hero-highlights li {background:rgba(255,255,255,.06);padding:10px 14px;border-radius:8px;font-size:.85rem;border:1px solid var(--border);}
.site-header {position:sticky;top:0;background:rgba(14,17,23,.9);backdrop-filter:blur(8px);z-index:50;border-bottom:1px solid var(--border);}
.logo img {height:44px;}
.main-nav ul {display:flex;gap:28px;}
.main-nav a {padding:16px 4px;display:block;font-size:.95rem;}
.nav-toggle {display:none;background:none;border:none;color:var(--text);font-size:1.4rem;cursor:pointer;}
.btn {
  display:inline-block;
  padding:12px 26px;
  border-radius: var(--radius);
  font-size:.95rem;
  font-weight:600;
  transition:.25s;
  border:1px solid transparent;
}
.btn.primary {background:var(--gradient);color:#fff;box-shadow:var(--shadow);}
.btn.primary:hover {filter:brightness(1.05);}
.btn.outline {background:none;border-color:var(--primary);color:var(--primary);}
.btn.outline:hover {background:var(--primary);color:#fff;}
.grid {display:grid;gap:28px;}
.cols-2 {grid-template-columns:repeat(auto-fit,minmax(300px,1fr));}
.cols-3 {grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.cols-4 {grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.card,.tech-block,.member,.case {
  background:rgba(255,255,255,.04);
  padding:20px 20px 24px;
  border:1px solid var(--border);
  border-radius: var(--radius);
  position:relative;
  overflow:hidden;
  transition:.3s;
}
.card:hover,.tech-block:hover,.member:hover,.case:hover {transform:translateY(-4px);box-shadow:0 6px 24px rgba(0,0,0,.4);}
.about-metrics {margin-top:36px;}
.metric {text-align:center;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:rgba(255,255,255,.03);}
.metric strong {display:block;font-size:2rem;background:var(--gradient);-webkit-background-clip:text;color:transparent;font-weight:700;margin-bottom:6px;}
.solutions-tabs {margin-top:8px;}
.solutions-tabs .tab-list {display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px;}
.solutions-tabs .tab-list button {
  background:rgba(255,255,255,.06);
  border:1px solid var(--border);
  color:var(--text);
  padding:10px 18px;
  border-radius:30px;
  cursor:pointer;
  font-size:.85rem;
  transition:.25s;
}
.solutions-tabs .tab-list button[aria-selected="true"] {background:var(--gradient);color:#fff;border-color:transparent;}
.solutions-tabs .panel {display:none;animation:fade .4s ease;}
.solutions-tabs .panel.active {display:block;}
@keyframes fade {from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
.case img,.member img {border-radius:8px;margin-bottom:14px;height:160px;object-fit:cover;width:100%;background:#222;}
.logo-row {display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:30px;margin-top:30px;}
.logo-row img {filter:grayscale(1);opacity:.7;transition:.3s;padding:10px;background:rgba(255,255,255,.05);border-radius:12px;}
.logo-row img:hover {filter:none;opacity:1;transform:scale(1.05);}
.news-list {display:grid;gap:16px;margin-top:10px;}
.news-list li {background:rgba(255,255,255,.04);padding:14px 18px;border:1px solid var(--border);border-radius:10px;font-size:.85rem;display:flex;gap:12px;}
.news-list time {color:var(--primary);font-weight:600;flex-shrink:0;}
.contact-info li {margin-bottom:6px;font-size:.9rem;}
.contact-form {background:rgba(255,255,255,.05);padding:24px;border:1px solid var(--border);border-radius: var(--radius);}
.form-group {display:flex;flex-direction:column;margin-bottom:16px;}
.form-group label {font-size:.75rem;margin-bottom:6px;letter-spacing:.5px;text-transform:uppercase;color:#8fa2c2;}
.form-group input,.form-group textarea {
  background:#1e242c;
  border:1px solid #2f3741;
  color:var(--text);
  padding:10px 12px;
  border-radius:6px;
  font-size:.9rem;
  outline:none;
  transition:.25s;
}
.form-group input:focus,.form-group textarea:focus {border-color:var(--primary);}
.form-tip {font-size:.7rem;color:#7d8da5;margin-top:8px;}
.compliance ul {margin-top:10px;}
.bullets {list-style:none;padding-left:0;}
.bullets li {position:relative;padding-left:18px;margin-bottom:10px;font-size:.85rem;}
.bullets li:before {content:"";position:absolute;left:0;top:8px;width:8px;height:8px;background:var(--primary);border-radius:50%;}
.site-footer {padding:40px 0;background:#0c1015;border-top:1px solid var(--border);margin-top:40px;}
.foot-logo {height:40px;margin-bottom:10px;}
.foot-links {display:flex;gap:20px;flex-wrap:wrap;}
.foot-links a {font-size:.75rem;color:#9fb2cc;}
.foot-links a:hover {color:#fff;}
@media (max-width:860px) {
  .main-nav ul {flex-direction:column;gap:0;padding:20px 0;}
  .main-nav {position:absolute;right:16px;top:68px;background:#141a21;border:1px solid var(--border);padding:8px 24px;border-radius:12px;display:none;}
  .main-nav.open {display:block;}
  .nav-toggle {display:block;}
  .hero {padding:80px 0 60px;}
  .hero-actions {flex-direction:column;align-items:flex-start;}
}
@media (prefers-reduced-motion: reduce) {
  * {animation:none !important;transition:none !important;}
}
