:root {
  --bs-body-font-family: "Manrope", sans-serif;
  --bs-body-font-weight: 500;
  --bs-body-color: #000;
  --bs-border-radius-img: 20px;
  --bs-link-hover-color: #e31e24;
  --bs-link-color: var(--bs-body-color);
  --bs-nav-link-font-size: inherit;
  --bs-body-line-height: normal;
  --bs-border-radius-btn: 30px;
  --bs-services-title-teaser: 20px;
}
body {
  background-image: linear-gradient(75deg, #2d2d80, #353e8f, #2d2d80);
}
.container-bg {
  margin: 0 32px;
  background-color: #fff;
}
main#main {
  border-bottom-left-radius: 40px;
  border-bottom-right-radius: 40px;
  padding: 50px 0;
}
.front h1 {
  text-align: center;
}
h1 {
  text-transform: uppercase;
}
a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  color: var(--bs-link-hover-color);
}
div#block-vesta-theme-page-title {
  margin-bottom: 40px;
}
.nav {
  --bs-nav-link-font-weight: inherit;
}
span.title-highlight {
  color: #2d2d80;
}
/* header */
header#header {
  margin-top: 32px;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
}
header a.nav-link {
  padding: 5px 15px;
}
header .nav-item:first-child a.nav-link {
  padding-left: 0;
}
.search-form__submit,
.search-form__submit:hover,
.search-form__submit:not(:disabled):not(.disabled):active:focus,
.search-form__submit:focus {
  background-image: url(/sites/all/themes/vesta_theme/image/search.svg);
  color: transparent;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: contain;
  width: 19px;
  height: 19px;
  padding: 0;
  border: none;
  border-radius: 0;
  box-shadow: none;
}
.offcanvas-body {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
/* end header */

/* services */
.view-services .view-content {
  display: grid;
  grid-template-columns: 270px 270px;
  gap: 30px;
  align-items: center;
  justify-content: center;
}
.taxonomy-term--type-services.taxonomy-term--view-mode-teaser {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 23px;
}
.taxonomy-term--type-services.taxonomy-term--view-mode-teaser
  .field--name-taxonomy-term-title {
  font-size: var(--bs-services-title-teaser);
  font-weight: 700;
  text-align: center;
  padding: 0 36px;
}
.field--name-field-services-img {
  width: 100%;
  height: 145px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.field--name-field-services-img img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.more-link {
  width: max-content;
  margin: 30px auto 0;
}
div#services-block {
  margin: 23px 0 50px;
}
/* end services */

/* about */
.field--name-field-about-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.field--name-field-about-img {
  max-height: 244px;
  height: 100%;
  width: 470px;
  border-radius: var(--bs-border-radius-img);
  overflow: hidden;
  flex-shrink: 0;
}
.node--type-about.node--view-mode-teaser {
  display: flex;
  gap: 30px;
  align-items: center;
}
.field--name-node-link a,
.more-link a {
  display: block;
  background-color: #2d2d80;
  color: #fff;
  width: max-content;
  border-radius: var(--bs-border-radius-btn);
  padding: 8px 27px;
  border: 1px solid #2d2d80;
}
.field--name-node-link a:hover,
.more-link a:hover {
  color: var(--bs-body-color);
  background-color: #fff;
}
.about-content {
  gap: 20px;
}
/* end about */

/* employees */
.view-employees .view-content {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
}
.field--name-field-employee-img {
  width: 100%;
  aspect-ratio: 3 / 4;
  margin-bottom: 6px;
  border-radius: var(--bs-border-radius-img);
  overflow: hidden;
}
.field--name-field-employee-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* end employees */

/* footer */
footer#footer {
  color: #fff;
  padding: 50px 0;
}
.block-copiryght {
  font-size: 14px;
}
.contact-item {
  gap: 10px;
  align-items: baseline;
}
footer .contacts svg {
  fill: #fff;
}
.contacts svg {
  fill: #2d2d80;
  flex-shrink: 0;
}
.contacts-block {
  max-width: 208px;
}
.contacts {
  gap: 11px;
}
footer#footer ul.nav {
  flex-direction: column;
}
footer#footer ul.nav .nav-link {
  padding: 0 0 5px 0;
  color: #fff;
}
footer#footer ul.nav .nav-link:hover {
  color: var(--bs-link-hover-color);
}
div#block-vesta-theme-osnovnayanavigaciya-menu,
div#block-vesta-theme-uslugi-menu {
  text-transform: uppercase;
  margin-bottom: 5px;
}
.nav-footer {
  max-width: 125px;
}
.nav-services {
  max-width: 250px;
}
footer .logo {
  max-width: 191px;
}
.footer-content {
  justify-content: space-between;
}
/* end footer */

/* contact */
div#block-vesta-theme-kontakty-2 {
  margin-bottom: 30px;
}
.mapContainer {
  border-radius: var(--bs-border-radius-img);
  overflow: hidden;
}
/* end contact */
header#header-mob.sticky-block--scrolled {
  width: 100%;
  border-radius: 0;
}
