
:root{
  --bg:#071018;
  --bg-soft:#0c1622;
  --panel:rgba(18,28,40,.62);
  --line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.18);
  --text:#eef5ff;
  --muted:#b6c3d8;
  --accent:#83b8ff;
  --accent-2:#d8e6ff;
  --shadow:0 20px 60px rgba(0,0,0,.38);
  --radius:24px;
  --container:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 0%, rgba(82,135,212,.18), transparent 30%),
    radial-gradient(circle at 85% 15%, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(180deg, #071018 0%, #08111a 40%, #071018 100%);
  min-height:100vh;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.site-shell{overflow:hidden}
.container{max-width:var(--container);margin:0 auto;padding:0 24px}

.topbar{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(18px);
  background:rgba(7,16,24,.72);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.nav{
  height:82px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.04em}
.brand-mark{width:40px;height:40px}
.brand-word{font-size:1.1rem}
.muted{opacity:.7}
.desktop-nav{display:flex;gap:26px}
.desktop-nav a{
  color:var(--muted);font-size:.95rem;font-weight:500;
  transition:.2s ease;
}
.desktop-nav a:hover,.footer-links a:hover{color:var(--text)}
.nav-actions{display:flex;align-items:center;gap:12px}
.lang-toggle{
  width:44px;height:44px;border-radius:999px;border:1px solid var(--line);
  background:rgba(255,255,255,.04);color:var(--text);cursor:pointer;
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:50px;padding:0 20px;border-radius:999px;border:1px solid transparent;
  font-weight:600;transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{
  background:linear-gradient(135deg, rgba(131,184,255,.18), rgba(255,255,255,.09));
  color:var(--text);border-color:rgba(131,184,255,.3);
}
.btn-secondary{
  background:rgba(255,255,255,.04);border-color:var(--line);color:var(--text);
}
.glass{
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}

.hero{padding:56px 0 28px}
.hero-grid{
  display:grid;grid-template-columns:1.03fr .97fr;gap:28px;align-items:center;
}
.hero-copy{
  border-radius:34px;padding:34px;
}
.eyebrow{
  display:inline-flex;align-items:center;
  font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);
  opacity:.9;
}
h1{
  font-size:clamp(2.5rem,4.7vw,5rem);
  line-height:.98;letter-spacing:-.04em;margin:18px 0 18px;
  max-width:12ch;
}
.hero-text,.section-head p,.statement p,.developer-copy p,.contact-copy p,.project-copy p,.area-card p,.service-card p,.timeline-step p,.stat span{
  color:var(--muted);
  line-height:1.7;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.chip-row{
  list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px
}
.chip-row li,.developer-tags span{
  padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.05);
  border:1px solid var(--line);color:var(--accent-2);font-size:.92rem
}
.hero-media{position:relative;min-height:620px}
.hero-image-frame{
  border-radius:34px;overflow:hidden;border:1px solid var(--line-strong);
  box-shadow:var(--shadow);position:absolute;inset:0 0 42px 0;
}
.hero-image-frame img{width:100%;height:100%;object-fit:cover}
.floating-card{
  position:absolute;max-width:280px;padding:18px;border-radius:22px;
}
.floating-card strong{display:block;margin-bottom:7px}
.card-a{left:-12px;bottom:40px}
.card-b{right:-8px;top:26px}

.section{padding:64px 0}
.intro-band{padding-top:18px}
.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:start}
.statement{
  padding:10px 0;
}
.statement p{
  font-size:clamp(1.2rem,2.2vw,1.8rem);line-height:1.45;color:var(--text);max-width:22ch;
}
.stats{display:grid;gap:14px}
.stat{border-radius:22px;padding:20px}
.stat strong{display:block;font-size:1.18rem;margin-bottom:6px}

.section-head{max-width:860px;margin-bottom:28px}
.section-head.split{
  max-width:none;display:flex;justify-content:space-between;align-items:end;gap:20px
}
.section-head h2{
  font-size:clamp(1.9rem,3.1vw,3.2rem);
  line-height:1.06;letter-spacing:-.03em;margin:14px 0 12px;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.service-card,.area-card{
  border-radius:24px;padding:24px;min-height:180px;
}
.service-card h3,.timeline-step h3,.project-copy h3,.developer-panel h3,.area-card h3,.contact-copy h2,.developer-copy h2{
  margin:0 0 10px;
  letter-spacing:-.02em;
}
.lifecycle-section .timeline{
  display:grid;grid-template-columns:repeat(6,1fr);gap:14px;
}
.timeline-step{
  border-radius:22px;padding:20px;min-height:220px;
}
.timeline-step span{
  display:inline-flex;width:42px;height:42px;border-radius:999px;align-items:center;justify-content:center;
  margin-bottom:22px;background:rgba(131,184,255,.12);border:1px solid rgba(131,184,255,.25);color:var(--accent-2);font-weight:700
}

.project-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:18px;
}
.project-card{
  border-radius:26px;overflow:hidden;display:flex;flex-direction:column
}
.project-card img{aspect-ratio:16/11;object-fit:cover}
.project-card.featured{grid-row:span 2}
.project-card.featured img{aspect-ratio:16/15}
.project-copy{padding:20px}
.project-type{display:inline-block;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-2);margin-bottom:10px}

.developer-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center
}
.developer-copy h2,.contact-copy h2{font-size:clamp(2rem,3.4vw,3.4rem);line-height:1.02}
.benefit-list{
  list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px
}
.benefit-list li{
  position:relative;padding-left:18px;color:var(--muted)
}
.benefit-list li::before{
  content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--accent)
}
.developer-panel{border-radius:28px;padding:24px}
.developer-tags{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 24px}
.developer-panel img{border-radius:18px;border:1px solid var(--line)}

.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

.contact-grid{
  display:grid;grid-template-columns:1fr .9fr;gap:22px;align-items:start
}
.contact-link{
  display:inline-block;margin-top:24px;font-size:1.2rem;font-weight:600;color:var(--accent-2)
}
.contact-form{
  border-radius:28px;padding:24px;display:grid;gap:14px
}
.contact-form label{display:grid;gap:8px;color:var(--accent-2)}
.contact-form input,.contact-form textarea{
  width:100%;border-radius:18px;border:1px solid var(--line);
  background:rgba(255,255,255,.04);padding:14px 16px;color:var(--text)
}
.contact-form small{color:var(--muted);line-height:1.5}

.footer{
  padding:18px 0 32px;border-top:1px solid rgba(255,255,255,.08)
}
.footer-row{
  display:flex;justify-content:space-between;gap:18px;align-items:center;color:var(--muted)
}
.footer-links{display:flex;gap:16px}

@media (max-width: 1100px){
  .hero-grid,.intro-grid,.developer-grid,.contact-grid,.section-head.split{
    grid-template-columns:1fr;
    display:grid;
  }
  .lifecycle-section .timeline{grid-template-columns:repeat(3,1fr)}
  .project-grid,.services-grid,.area-grid{grid-template-columns:repeat(2,1fr)}
  .project-card.featured{grid-row:auto}
  .hero-media{min-height:500px}
}
@media (max-width: 760px){
  .desktop-nav{display:none}
  .nav{height:auto;padding:16px 0;align-items:flex-start;flex-wrap:wrap}
  .hero-copy{padding:24px}
  .section{padding:48px 0}
  .services-grid,.project-grid,.area-grid,.lifecycle-section .timeline{grid-template-columns:1fr}
  .hero-media{min-height:380px}
  .floating-card{position:static;max-width:none;margin-top:12px}
  .hero-image-frame{position:static}
  .card-a,.card-b{left:auto;right:auto;top:auto;bottom:auto}
  .footer-row{flex-direction:column;align-items:flex-start}
}
