*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#061225;background:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.header{
  min-height:94px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 7vw;
  border-bottom:1px solid #eef1f5;
  background:rgba(255,255,255,.98);
  position:sticky;
  top:0;
  z-index:20;
}

.brand img{
  height:82px;
  width:auto;
  object-fit:contain;
}

nav{display:flex;gap:42px;font-size:13px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
nav a{color:#0b172a}
nav a:hover{color:#075ee8}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#075ee8;
  color:#fff;
  border-radius:12px;
  padding:15px 26px;
  font-weight:850;
  border:0;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(7,94,232,.18);
}

.btn.small{padding:13px 22px;font-size:14px;border-radius:10px}

.text-link{color:#075ee8;font-weight:850}

.hero{
  display:grid;
  grid-template-columns:43% 57%;
  align-items:center;
  min-height:540px;
  background:linear-gradient(90deg,#fff 0%,#fff 44%,#f1f5f9 100%);
  overflow:hidden;
}

.hero-copy{padding:5vw 3vw 5vw 7vw}
.hero h1{
  font-size:clamp(42px,4.8vw,76px);
  line-height:.98;
  margin:0 0 24px;
  letter-spacing:-.06em;
}

.lead{
  font-size:20px;
  line-height:1.5;
  max-width:590px;
  color:#334155;
  margin:0 0 30px;
}

.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}

.hero-visual{position:relative;height:540px;overflow:hidden}
.hero-visual > img{width:100%;height:100%;object-fit:cover}

.map-card,.unit-card{
  position:absolute;
  right:9%;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 45px rgba(15,23,42,.14);
  border:1px solid rgba(226,232,240,.9);
}
.map-card{
  top:12%;
  width:240px;
  height:145px;
  border-radius:16px;
  overflow:hidden;
  background:
    linear-gradient(45deg, transparent 48%, #dce4ef 49%, #dce4ef 51%, transparent 52%),
    linear-gradient(-45deg, transparent 48%, #dce4ef 49%, #dce4ef 51%, transparent 52%),
    #f8fafc;
  background-size:34px 34px;
}
.map-line{
  position:absolute;
  left:34px;top:78px;
  width:160px;height:4px;
  background:#075ee8;
  border-radius:999px;
  transform:rotate(-18deg);
}
.pin{position:absolute;width:16px;height:16px;border-radius:50%;background:#075ee8}
.pin.one{left:54px;top:74px}.pin.two{right:38px;top:42px}

.unit-card{
  top:42%;
  width:240px;
  border-radius:16px;
  padding:24px;
  display:grid;
  gap:10px;
}
.unit-card b{font-size:18px}
.unit-card span{font-size:18px;font-weight:800}
.unit-card small{color:#0f9f55;font-weight:700}

.section{padding:58px 7vw}
.eyebrow{
  text-transform:uppercase;
  color:#075ee8;
  font-weight:900;
  letter-spacing:.15em;
  text-align:center;
  font-size:13px;
}
.eyebrow.left{text-align:left}

.services{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:0;
  margin-top:34px;
}

.services article{
  text-align:center;
  padding:22px 24px;
  border-right:1px solid #e2e8f0;
}
.services article:last-child{border-right:0}
.services span{font-size:42px;color:#075ee8}
.services h3{margin:16px 0 8px;font-size:16px}
.services p{font-size:14px;line-height:1.45;color:#475569;margin:0}

.grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:14px;
  max-width:1500px;
  margin:34px auto 0;
}

.card{
  position:relative;
  min-height:275px;
  border-radius:10px;
  overflow:hidden;
  background:#111;
  box-shadow:0 12px 35px rgba(15,23,42,.10);
}
.card img{
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  inset:0;
}
.card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,.84),rgba(0,0,0,.07));
}
.card div{
  position:absolute;
  z-index:2;
  bottom:0;
  padding:22px;
  color:#fff;
}
.card h3{
  font-size:23px;
  line-height:1.04;
  margin:0 0 8px;
}
.card p{margin:0;color:#f1f5f9;font-weight:500;font-size:14px;line-height:1.35}

.platform{
  display:grid;
  grid-template-columns:46% 54%;
  gap:60px;
  align-items:center;
  padding:72px 7vw;
  background:#f7f9fc;
}
.platform figure{margin:0}
.platform img{
  width:100%;
  max-height:420px;
  object-fit:contain;
}
.platform h2{
  font-size:clamp(34px,3.8vw,56px);
  line-height:1.02;
  margin:10px 0 32px;
  letter-spacing:-.045em;
}
.features{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px 36px;
}
.features p{line-height:1.5;color:#334155;margin:0}

.contact{padding:72px 7vw;text-align:center}
.contact h2{font-size:48px;margin:8px 0 36px}
.contact-grid{
  display:grid;
  grid-template-columns:1fr .62fr 1fr;
  gap:42px;
  align-items:center;
  max-width:1380px;
  margin:auto;
  text-align:left;
  border-top:1px solid #e2e8f0;
  padding-top:28px;
}
form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
input,textarea{
  width:100%;
  border:1px solid #d9e0eb;
  border-radius:8px;
  padding:15px;
  font:inherit;
  background:#fff;
}
textarea{grid-column:1/3;min-height:120px}
form .btn{width:max-content}
.info{
  border-left:1px solid #e5eaf1;
  padding-left:38px;
  font-size:18px;
}
.info a{color:#075ee8;font-weight:850}
.building{width:100%;height:230px;object-fit:cover;border-radius:14px}

footer{
  border-top:1px solid #0b172a;
  background:#061225;
  text-align:center;
  padding:16px 5vw;
  color:#fff;
}
footer img{height:58px;margin:0 auto 8px;filter:brightness(1.3)}
footer p{margin:0;font-size:13px}

@media(max-width:1100px){
  .header{min-height:auto;padding:16px 22px;gap:16px;flex-wrap:wrap}
  .brand img{height:70px}
  nav{display:none}
  .hero{grid-template-columns:1fr}
  .hero-copy{padding:42px 24px}
  .hero-visual{height:360px;order:-1}
  .map-card,.unit-card{display:none}
  .services,.grid,.platform,.contact-grid{grid-template-columns:1fr}
  .services article{border-right:0;border-bottom:1px solid #e2e8f0}
  .features{grid-template-columns:1fr}
  form{grid-template-columns:1fr}
  textarea{grid-column:auto}
  .info{border-left:0;padding-left:0}
  .card{min-height:260px}
  .building{height:auto}
}
