*,
::after,
::before{
  box-sizing: border-box;
}

html .is-lock {
    overflow: hidden;
}

html, body {
  height: 100%;
  margin: 0;
}

#app {
  display: flex;
  flex-direction: column;
  min-height: 93vh; /* растягивает контейнер на всю высоту экрана */
}

#main {
  flex: 1; /* заставляет main занимать всё оставшееся пространство */
  
}

#footer {
  margin-top: auto; /* прижимает футер вниз */
}

.wr_front_content{
  background-image: url('../image/fon.png');
  background-position: center -80px;
}
p{
  margin: 0;
  padding: 0;
}

body{
  font-family: var(--font-family);
  color: var(--color-dark);
  font-size: 20px;
  line-height: 120%;
  display: flex;
  flex-direction: column; 
  /* background-image: url('../image/fon.png');
  background-position: top center; */
}

.not-front header#header{
  box-shadow: 0px 4px 27px 0px rgba(46, 46, 46, 0.22);
}
.not-front #main{
  padding-block: 50px;
}

.not-front #main h1{
  padding-bottom: 30px;
}


div#block-vesta-theme-views-block-gotovye-proekty-block-1,
div#block-vesta-theme-views-block-uslugi-block-1,
div#map-block{
  padding-top: 100px;
}

div#block-vesta-theme-views-block-gotovye-proekty-block-1,
div#map-block{
  padding-bottom: 100px;
}

div#block-vesta-theme-views-block-uslugi-block-1 .block-title,
div#block-vesta-theme-views-block-gotovye-proekty-block-1 .block-title{
  font-size: 45px;
  font-weight: 700;
  line-height: 120%;
  margin-bottom: 47px;
}

@media (min-width: 1400px) {
  .container, 
  .container-lg, 
  .container-md, 
  .container-sm, 
  .container-xl, 
  .container-xxl {
      max-width: 1200px;
      width: 100%;
  }
}

/* .more-btn{
  max-width: 370px;
  width: 100%;
  border: 1ps solid var(--color-white);
} */
.more-btn{
  margin-top: 75px;
}
.more-link{
  margin-top: 30px;
}
.more-btn a,
.more-link a,
.btn{
  display: block;
  max-width: 370px;
  width: 100%;
  border: 3px solid var(--color-white);
  border-radius: 3px;
  color: var(--color-white);
  background-color: transparent;
  font-size: 20px;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  transition: 0.2s;
}
.more-btn a:hover,
.more-link a:hover,
.btn:hover{
  transform: scale(0.98);
  background-color: transparent;
  color: inherit;
  border-color: var(--color-white);
}

.btn__link{
  max-width: 100%;
  width: 100%;
}
.btn__link a{
  display: block;
  width: 100%;
  border: 2px solid var(--color-white);
  color: var(--color-white);
  font-size: 20px;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  border-radius: 3px;
  transition: 0.2s;
}
.btn__link a:hover{
  border: 2px solid rgba(85, 215, 255, 1);
  color: rgba(85, 215, 255, 1);
}

.more-link{
  display: flex;
  justify-content: center;
}

.more-link a{
  border: 3px solid rgba(0, 93, 172, 1);
  color: rgba(0, 93, 172, 1);
  border-radius: 3px;
}

button#scrollToTop{
  display: none !important;
}

@media screen and (max-width: 1200px) {
  div#block-vesta-theme-views-block-gotovye-proekty-block-1,
  div#block-vesta-theme-views-block-uslugi-block-1,
  div#map-block{
    padding-top: calc(40px + (100 - 40) * ((100vw - 320px) / (1200 - 320)));
  }
  div#block-vesta-theme-views-block-gotovye-proekty-block-1,
  div#map-block{
    padding-bottom: calc(40px + (100 - 40) * ((100vw - 320px) / (1200 - 320)));
  }
}

@media screen and (max-width: 767px) {
  div#vpa-short-wrapper {
    display: flex;
    flex-direction: column;
  }
}