*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

:root{
  --primary:#00B7E8;
  --primary-dark:#0066A8;
  --background:#07111F;
  --background-soft:#0A1628;
  --card:#0D1B2F;
  --text:#FFFFFF;
  --text-soft:#C9D4E5;
  --border:rgba(0,183,232,0.16);
}

body{
  font-family:Arial, sans-serif;
  background:var(--background);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
}

a{
  text-decoration:none;
  color:inherit;
}

img{
  max-width:100%;
  display:block;
}

/* NAVBAR */
.navbar{
  width:100%;
  padding:20px 8%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  position:fixed;
  top:0;
  z-index:1000;
  background:rgba(7,17,31,0.88);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(0,183,232,0.1);
}

.logo-container{
  display:flex;
  align-items:center;
  gap:12px;
}

.logo-container img{
  width:52px;
  height:52px;
  object-fit:contain;
  border-radius:14px;
}

.logo-container span{
  font-size:24px;
  font-weight:800;
  letter-spacing:1px;
}

nav{
  display:flex;
  gap:28px;
}

nav a{
  color:#D7E4F2;
  font-size:15px;
  transition:0.3s;
}

nav a:hover{
  color:var(--primary);
}

.nav-btn{
  padding:12px 20px;
  border-radius:12px;
  background:linear-gradient(135deg, var(--primary), var(--primary-dark));
  font-weight:700;
  box-shadow:0 0 28px rgba(0,183,232,0.28);
}

/* HERO */
.hero{
  min-height:100vh;
  padding:170px 8% 100px;
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  gap:70px;
  align-items:center;
  position:relative;
  background:
    radial-gradient(circle at 85% 15%, rgba(0,183,232,0.28), transparent 30%),
    radial-gradient(circle at 5% 85%, rgba(0,102,168,0.28), transparent 35%),
    linear-gradient(180deg, #07111F 0%, #08182B 100%);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
  background-size:70px 70px;
  pointer-events:none;
}

.hero-left,
.hero-right{
  position:relative;
  z-index:2;
}

.badge,
.section-label{
  display:inline-block;
  padding:10px 18px;
  border-radius:50px;
  border:1px solid rgba(0,183,232,0.5);
  background:rgba(0,183,232,0.12);
  color:#9BE8FF;
  margin-bottom:24px;
  font-size:14px;
  font-weight:700;
}

.hero h1{
  font-size:68px;
  line-height:1.02;
  margin-bottom:26px;
  letter-spacing:-2px;
}

.hero p{
  font-size:20px;
  color:var(--text-soft);
  margin-bottom:38px;
  max-width:720px;
}

.hero-buttons{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

.btn{
  display:inline-block;
  padding:16px 28px;
  border-radius:14px;
  font-weight:800;
  transition:0.3s ease;
}

.btn.primary{
  background:linear-gradient(135deg, var(--primary), var(--primary-dark));
  box-shadow:0 0 30px rgba(0,183,232,0.35);
}

.btn.primary:hover{
  transform:translateY(-4px);
  box-shadow:0 0 48px rgba(0,183,232,0.55);
}

.btn.secondary{
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
}

.btn.secondary:hover{
  background:rgba(255,255,255,0.08);
}

.trust-row{
  margin-top:36px;
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}

.trust-row span{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,0.05);
  border:1px solid var(--border);
  color:#DCE8F5;
  font-size:14px;
}

.hero-right{
  display:flex;
  flex-direction:column;
  gap:28px;
}

.hero-image{
  height:300px;
  border-radius:32px;
  overflow:hidden;
  border:1px solid var(--border);
  box-shadow:0 25px 80px rgba(0,0,0,0.38);
  position:relative;
}

.hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.5s ease;
}

.hero-image:hover img{
  transform:scale(1.06);
}

.floating-card{
  position:absolute;
  left:24px;
  bottom:24px;
  max-width:260px;
  padding:18px;
  border-radius:20px;
  background:rgba(7,17,31,0.78);
  backdrop-filter:blur(14px);
  border:1px solid rgba(0,183,232,0.22);
}

.floating-card strong{
  display:block;
  font-size:18px;
  margin-bottom:4px;
}

.floating-card span{
  color:var(--text-soft);
  font-size:14px;
}

/* FORM */
.hero-form{
  width:100%;
  padding:38px;
  border-radius:32px;
  background:linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025));
  border:1px solid var(--border);
  backdrop-filter:blur(14px);
  box-shadow:0 25px 80px rgba(0,0,0,0.36);
}

.hero-form h3{
  font-size:30px;
  margin-bottom:8px;
}

.hero-form p{
  color:var(--text-soft);
  margin-bottom:24px;
  font-size:15px;
}

.hero-form form{
  display:grid;
  gap:16px;
}

.hero-form input,
.hero-form select,
.hero-form textarea{
  width:100%;
  padding:18px 20px;
  border-radius:16px;
  border:1px solid rgba(0,183,232,0.16);
  background:rgba(255,255,255,0.045);
  color:#FFFFFF;
  font-size:15px;
  outline:none;
  transition:0.3s ease;
}

.hero-form textarea{
  min-height:130px;
  resize:none;
}

.hero-form input:focus,
.hero-form select:focus,
.hero-form textarea:focus{
  border-color:var(--primary);
  box-shadow:0 0 20px rgba(0,183,232,0.22);
  background:rgba(255,255,255,0.065);
}

.hero-form input::placeholder,
.hero-form textarea::placeholder{
  color:#9FB2C8;
}

.hero-form option{
  background:#07111F;
}

.full-btn{
  width:100%;
  border:none;
  cursor:pointer;
}

/* STATS */
.stats{
  overflow:hidden;
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(200px,1fr));
  gap:24px;
  margin:70px 0;
}

.stat-card{
  position:relative;
  overflow:hidden;
  padding:28px;
  border-radius:24px;
  background:var(--card);
  text-align:center;
  border:1px solid var(--border);
}

.stat-card strong{
  font-size:42px;
  font-weight:800;
  background:linear-gradient(135deg,#ffffff,var(--primary));
  -webkit-background-clip:text;
  color:transparent;
  display:block;
}

.stat-card span{
  display:block;
  margin-top:8px;
  font-size:14px;
  color:var(--text-soft);
}

/* SECTIONS */
section{
  padding:105px 8%;
}

h2{
  font-size:46px;
  text-align:center;
  margin:0 auto 55px;
  max-width:950px;
  line-height:1.12;
  letter-spacing:-1px;
}

/* PROBLEMS GRID */
.problem-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}

.problem-grid div{
  padding:26px;
  border-radius:20px;
  background:rgba(255,255,255,0.04);
  border:1px solid var(--border);
  text-align:center;
  color:#DCE8F5;
  transition:0.3s ease;
}

.problem-grid div:hover{
  transform:translateY(-6px);
  border-color:rgba(0,183,232,0.42);
  box-shadow:0 18px 45px rgba(0,183,232,0.08);
}

/* SERVICES CARDS */
.service-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:32px;
}

.card{
  padding:36px;
  border-radius:26px;
  background:linear-gradient(145deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022));
  border:1px solid var(--border);
  backdrop-filter:blur(12px);
  box-shadow:0 20px 60px rgba(0,0,0,0.30);
  transition:0.3s ease;
}

.card:hover{
  transform:translateY(-8px);
  border-color:rgba(0,183,232,0.42);
  box-shadow:0 24px 70px rgba(0,183,232,0.08);
}

.card img{
  width:100%;
  height:230px;
  object-fit:cover;
  border-radius:20px;
  margin-bottom:26px;
}

.card h3{
  font-size:28px;
  margin-bottom:16px;
}

.card p{
  color:var(--text-soft);
  margin-bottom:22px;
}

.card ul{
  list-style:none;
}

.card li{
  margin-bottom:12px;
  color:#E4ECF7;
}

.card li::before{
  content:"✓";
  color:var(--primary);
  margin-right:10px;
}

/* PROCESS, WHY, PARTNERS, CTA */
.process-grid,
.why-grid,
.partner-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
}

.process-card,
.why-card,
.partner-card{
  padding:36px;
  border-radius:26px;
  background:linear-gradient(145deg, rgba(255,255,255,0.055), rgba(255,255,255,0.022));
  border:1px solid var(--border);
  backdrop-filter:blur(12px);
}

.cta{
  text-align:center;
  background:radial-gradient(circle at center, rgba(0,183,232,0.22), transparent 45%), var(--background-soft);
  padding:100px 8%;
  border-radius:32px;
}

.cta-image{
  width:100%;
  max-width:920px;
  height:330px;
  margin:0 auto 45px;
  overflow:hidden;
  border-radius:32px;
  border:1px solid var(--border);
  box-shadow:0 25px 80px rgba(0,0,0,0.35);
}

.cta-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:0.5s ease;
}

.cta-image:hover img{
  transform:scale(1.05);
}

.cta p{
  max-width:700px;
  margin:0 auto 35px;
  color:var(--text-soft);
  font-size:18px;
}

/* FOOTER */
footer{
  padding:35px 8%;
  text-align:center;
  background:#050C18;
  color:#8FA4BE;
}

/* RESPONSIVE */
@media(max-width:1050px){
  nav{ display:none; }
  .hero{ grid-template-columns:1fr; }
  .stats, .problem-grid, .service-grid, .process-grid, .why-grid, .partner-grid{ grid-template-columns:1fr 1fr; }
}

@media(max-width:700px){
  .navbar{ padding:18px 6%; }
  .nav-btn{ display:none; }
  .logo-container span{ font-size:20px; }
  .logo-container img{ width:44px; height:44px; }
  .hero{ padding:140px 6% 75px; gap:42px; }
  .hero h1{ font-size:40px; letter-spacing:-1px; }
  .hero p{ font-size:17px; }
  section{ padding:78px 6%; }
  h2{ font-size:34px; }
  .btn{ width:100%; text-align:center; }
  .hero-image, .cta-image{ height:235px; }
  .hero-form{ padding:28px; }
  .floating-card{ left:16px; right:16px; bottom:16px; max-width:none; }
}

@media(max-width:700px){
  .hero{ 
    grid-template-columns:1fr;
    padding:120px 6% 50px;
  }
  .hero-left, .hero-right{
    grid-column:1;
  }
  .hero h1{ font-size:34px; }
  .hero p{ font-size:16px; }
  .btn{ width:100%; text-align:center; }
  .hero-form{ padding:24px; }
}

@media(max-width:700px){
  .service-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  .card ul li{ font-size:15px; }
}

@media(max-width:700px){
  .stats, .problem-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .stat-card strong{ font-size:36px; }
  .stat-card span{ font-size:14px; }
}

@media(max-width:700px){
  .cta-image{ height:220px; }
  .cta p{ font-size:16px; max-width:90%; margin:0 auto 24px; }
  footer{ font-size:13px; padding:20px 6%; }
}