
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:Segoe UI,Arial,sans-serif;
  color:#f5f7ff;
  background:
    linear-gradient(rgba(5,20,45,0.9),rgba(5,20,45,0.9)),
    url('https://images.unsplash.com/photo-1526778548025-fa2f459cd5c1?auto=format&fit=crop&w=1600&q=80')
    center/cover fixed no-repeat;
}
a{text-decoration:none}
header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 32px;
  background:rgba(1,10,30,0.96);
  box-shadow:0 4px 14px rgba(0,0,0,0.4);
}
header img{height:46px;border-radius:6px;object-fit:cover}
nav{display:flex;align-items:center;gap:16px;font-size:14px}
nav a{color:#f5f7ff;opacity:.9}
nav a:hover{opacity:1}
.lang-toggle{
  border:1px solid rgba(255,255,255,0.6);
  padding:3px 10px;
  border-radius:999px;
  font-size:12px;
}
main{min-height:100vh}

/* HERO + VIDEO STICKY BANNER */
.hero-banner-wrap{
  position:sticky;
  top:52px; /* header height approx */
  z-index:20;
}
.hero{
  position:relative;
  min-height:260px;
  padding:40px 24px 30px;
  text-align:center;
  overflow:hidden;
}
.hero-video-bg{
  position:absolute;
  inset:0;
  z-index:-2;
}
.hero-video-bg video{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(20%) brightness(0.4);
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top left,rgba(80,150,220,0.45),transparent 55%),
             linear-gradient(rgba(1,8,22,0.9),rgba(1,8,22,0.92));
  z-index:-1;
}
.hero-inner{
  max-width:900px;
  margin:0 auto;
}
.hero-kicker{
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:11px;
  color:#9bd1ff;
  margin-bottom:8px;
}
.hero h1{
  font-size:34px;
  line-height:1.15;
  margin-bottom:6px;
}
.hero h2{
  font-size:16px;
  font-weight:400;
  color:#d3e6ff;
  margin-bottom:14px;
}
.hero-list{
  list-style:none;
  font-size:13px;
  color:#c6dcff;
  margin-bottom:14px;
}
.hero-list li::before{
  content:"• ";
  color:#9bd1ff;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin-top:4px;
}
.btn{
  border-radius:999px;
  padding:9px 18px;
  border:none;
  font-size:13px;
  cursor:pointer;
}
.btn-primary{
  background:#1f74d1;
  color:white;
}
.btn-ghost{
  background:transparent;
  border:1px solid rgba(157,209,255,0.7);
  color:#d3e6ff;
}

/* CONTENT SECTIONS */
.section{
  padding:18px 20px 22px;
}
.section-inner{
  max-width:1100px;
  margin:0 auto;
  background:rgba(0,18,40,0.9);
  border-radius:18px;
  padding:22px 20px 18px;
  box-shadow:0 18px 34px rgba(0,0,0,0.55);
  border:1px solid rgba(120,170,230,0.35);
}
.section-title{
  font-size:19px;
  margin-bottom:8px;
  color:#e3edff;
}
.section-sub{
  font-size:13px;
  color:#9bb9ff;
  margin-bottom:10px;
}

/* SERVICES */
.service-list{margin-top:8px}
.service-item{
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,0.08);
}
.service-item:first-child{border-top:none}
.service-item h3{
  font-size:15px;
  margin-bottom:4px;
  color:#9bd1ff;
}
.service-item p{
  font-size:13px;
  color:#c9dcff;
  margin-bottom:4px;
}

/* ABOUT */
.about-grid{
  display:grid;
  grid-template-columns:minmax(0,2.2fr) minmax(0,1.4fr);
  gap:26px;
}
.about-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  font-size:12px;
}
.about-stat-box{
  background:rgba(10,45,90,0.85);
  border-radius:10px;
  padding:10px;
  text-align:center;
}
.about-stat-box span{
  display:block;
  font-size:18px;
  font-weight:600;
  color:#9bd1ff;
}

/* CONTACT */
.contact-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr);
  gap:24px;
}
.contact-block p{font-size:13px;line-height:1.5;color:#cbd8ff}
.contact-label{font-weight:600;color:#9bd1ff}
.contact-form label{
  display:block;
  font-size:12px;
  margin-bottom:3px;
}
.contact-form input,
.contact-form textarea{
  width:100%;
  padding:7px 9px;
  border-radius:8px;
  border:1px solid rgba(150,190,240,0.7);
  background:rgba(1,12,35,0.95);
  color:#f5f7ff;
  font-size:13px;
  margin-bottom:10px;
}
.contact-form textarea{min-height:80px;resize:vertical}

footer{
  text-align:center;
  padding:14px 10px 18px;
  font-size:11px;
  color:#b7c9ff;
  background:rgba(0,10,25,0.96);
  margin-top:16px;
}

/* Responsive */
@media (max-width:900px){
  header{padding:8px 14px}
  .hero{padding:32px 14px 22px;min-height:230px}
  .section{padding:14px 10px 18px}
  .section-inner{padding:18px 14px 14px}
  .about-grid,
  .contact-grid{grid-template-columns:1fr}
}
