
/* VillageServices 1.0.1 — внешний вид как в первоначальном шаблоне */
.vservices{
  font-family:Inter,Roboto,Arial,sans-serif;
  color:#17304f;
}
.vservices *{box-sizing:border-box}

.vservices-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:24px;
  margin-bottom:26px;
}
.vservices-head-title{min-width:0}
.vservices-eyebrow{
  display:block;
  margin-bottom:5px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:850;
  color:#397056;
}
.vservices-head h2{
  margin:3px 0 0;
  color:#0d3c69;
  font-size:clamp(1.65rem,2.5vw,2.25rem);
  line-height:1.15;
}
.vservices-head>p{
  max-width:470px;
  margin:0;
  color:#728195;
  font-size:.92rem;
  line-height:1.55;
}

.vservices-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px;
}

.vservices-card{
  position:relative;
  min-width:0;
  min-height:175px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:22px;
  border:1px solid #d9e3ec;
  border-radius:16px;
  background:#fff;
  color:#17304f;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(15,47,83,.04);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.vservices-card:hover{
  border-color:#b4c5d6;
  box-shadow:0 14px 32px rgba(15,47,83,.10);
  transform:translateY(-3px);
}
.vservices-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  margin-bottom:17px;
  border-radius:13px;
  background:#edf3f8;
  color:#174a7d;
}
.vservices-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.vservices-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding-right:12px;
}
.vservices-copy strong{
  color:#0d3c69;
  font-size:1rem;
  line-height:1.25;
}
.vservices-copy small{
  margin-top:7px;
  color:#728195;
  font-size:.79rem;
  line-height:1.4;
}
.vservices-arrow{
  position:absolute;
  right:17px;
  bottom:18px;
  color:#174a7d;
  font-size:1rem;
  font-weight:850;
}

@media(max-width:1050px){
  .vservices-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:650px){
  .vservices-head{
    display:block;
    margin-bottom:20px;
  }
  .vservices-head>p{
    display:block;
    margin-top:10px;
  }
  .vservices-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .vservices-card{
    min-height:148px;
    padding:17px;
  }
  .vservices-icon{
    width:43px;
    height:43px;
    margin-bottom:13px;
  }
  .vservices-copy strong{font-size:.92rem}
  .vservices-arrow{right:14px;bottom:14px}
}
@media(max-width:430px){
  .vservices-grid{grid-template-columns:1fr}
}
