/*!***************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./source/scss/main.scss ***!
  \***************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Manrope:wght@200..800&display=swap);
/*!*******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[3].use[3]!./source/scss/main.scss (1) ***!
  \*******************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  --gap-x: 15px;
  --gap-y: 24px;
  --gap-y-large: 64px;
  --vh100: calc(var(--vh, 1vh) * 100);
  --font-base-color: #2F3139;
  --white: #FFF;
  --black: #000;
  --color-accent: #6788F3;
  --color-accent-hover: #516fd8;
  --color-minor: #A0A2AC;
  --color-bg: rgba(103, 136, 243, 0.12);
  --color-bg-hover:rgba(103, 136, 243, 0.16);
  --color-error: #C00;
  --font-base: "Manrope", sans-serif;
  --font-mobile: "Inter", sans-serif;
  --font-base-line-height: 1.4;
  --heading-line-height: 1.2;
  --text-base-size: 1em;
  --text-multiplier: 1;
  --body-bgcolor: #FFFFFF;
  --body-color: #2F3139;
  --link-color: var(--body-color);
  --zindex-bg: -1;
  --zindex-base: 1000;
  --zindex-modal: calc(var(--zindex-base) + 10);
  --zindex-fixed: calc(var(--zindex-modal) + 10);
  --header-bgcolor: transparent;
  --header-color: var(--color-accent);
  --base-transition-time: .5s;
}

.hidden {
  display: none !important;
}

.text-center {
  text-align: center !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-underline {
  text-decoration: underline !important;
}

.non-decorated {
  text-decoration: none !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-caps {
  text-transform: uppercase !important;
}

.text-error {
  color: var(--color-error) !important;
}

.text-accent, a.text-accent {
  color: var(--color-accent) !important;
}

.text-marked, a.text-marked {
  color: var(--color-marked) !important;
}

.text-smaller {
  font-size: 85% !important;
}

.text-minor {
  color: #DEDEDE !important;
}

.block-centered {
  display: block;
  margin: 0 auto;
}

.overflow-hidden {
  overflow: hidden !important;
}

@media screen and (max-width: 767px) {
  .mobile-hidden {
    display: none !important;
  }
  .text-center-mobile {
    text-align: center !important;
  }
}
@media screen and (min-width: 768px) {
  .mobile-only {
    display: none !important;
  }
}
body {
  font-family: var(--font-base);
  color: var(--font-base-color);
  width: 100%;
  padding: 0;
  position: relative;
  margin: 0;
}
body.popup_show {
  overflow: hidden;
}

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
}

.site-main {
  padding: 15px;
}

.site-header .site-branding {
  display: flex;
  margin: 0 auto;
  max-width: 1170px;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 0;
}
.site-header .site-branding .site-logo {
  max-height: 45px;
}
.site-header .site-branding .header-phone.messengers {
  gap: 20px;
  display: flex;
}
.site-header .site-branding .header-phone.messengers a {
  display: flex;
}
.site-header .site-branding .header-phone svg, .site-header .site-branding .header-phone img {
  width: 46px;
  height: 46px;
}
@media (max-width: 767px) {
  .site-header .site-branding .header-phone svg, .site-header .site-branding .header-phone img {
    width: 40px;
    height: 40px;
  }
}
.site-header .site-branding .header-phone a,
.site-header .site-branding .header-form-link a {
  color: #12467a;
  text-decoration: none;
  font-weight: bold;
}
.site-header .site-branding .header-phone a:hover {
  text-decoration: underline;
}
.site-header .site-branding .header-form-link a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: auto;
  height: 44px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-weight: bold;
  font-size: 13px;
  text-transform: uppercase;
  background: #302d35;
  color: #fff;
  border-radius: 6px;
  padding-top: 2px;
  padding-left: 22px;
  padding-right: 22px;
}
.site-header .site-branding .header-form-link a:hover {
  background: #12467a;
}
.site-header .site-branding .header-phone-mobile,
.site-header .site-branding .header-form-link-mobile {
  display: none;
}
@media (max-width: 768px) {
  .site-header .site-branding {
    padding: 1rem 15px;
  }
  .site-header .site-branding .header-phone {
    display: none;
  }
  .site-header .site-branding .header-phone-mobile {
    display: flex;
    gap: 10px;
  }
  .site-header .site-branding .header-phone-mobile a {
    display: flex;
    min-width: 30px;
  }
  .site-header .site-branding .header-phone-mobile img {
    height: 30px;
    min-width: 25px;
  }
  .site-header .site-branding .header-form-link {
    display: none;
  }
  .site-header .site-branding .header-form-link-mobile {
    display: block;
    height: 30px;
  }
}
@media (max-width: 767px) {
  .site-header {
    height: 82px;
  }
}

.menu-container {
  position: relative;
  display: flex;
  justify-content: center;
  background: #302d35;
}

.burger {
  display: none;
  cursor: pointer;
  width: 28px;
  height: 24px;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.burger div {
  width: 100%;
  height: 4px;
  background: #302d35;
  transition: all 0.3s ease-in-out;
}

.burger.active div:nth-child(1) {
  transform: rotate(45deg) translate(7px, 7px);
}

.burger.active div:nth-child(2) {
  opacity: 0;
}

.burger.active div:nth-child(3) {
  transform: rotate(-45deg) translate(7px, -7px);
}

.menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  max-width: 1170px;
  width: 100%;
}

.menu li {
  position: relative;
}

.menu > li, .submenu > li {
  display: flex;
  border-left: 7px solid transparent;
}

.menu > li:hover, .submenu > li:hover {
  border-left: 7px solid #ccc;
}

.menu > li > a {
  padding: 15px 20px;
  display: block;
  color: white;
  text-decoration: none;
  font-size: 16px;
}

.submenu {
  display: none;
  position: absolute;
  top: 100%;
  left: -7px;
  background: #444;
  list-style: none;
  padding: 0;
  margin: 0;
  min-width: 350px;
  z-index: 50;
  flex-direction: column;
}

.submenu li {
  position: relative;
}

.submenu a {
  padding: 10px;
  display: block;
  color: white;
  text-decoration: none;
  width: calc(100% - 20px);
  font-size: 16px;
}

.submenu a:hover, .submenu li:hover {
  color: #12467a;
  cursor: pointer;
  background-color: #fff;
}

.submenu li:hover > a, .submenu li:hover > li {
  color: #12467a;
  cursor: pointer;
  background-color: #fff;
}

.submenu .submenu {
  top: 0;
  left: 100%;
}

.submenu-toggle {
  display: none;
}

.has-children {
  position: relative;
  display: block;
}

.depth-0 > .submenu-toggle-desctop {
  display: none;
}

.depth-1.has-children {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.submenu-toggle-desctop, .submenu-toggle {
  color: #fff;
  padding: 0 10px;
}

.menu li:hover {
  background: #fff;
}

.menu li:hover:has(> ul:hover) {
  background-color: #302d35; /* Подменю не должно затрагивать родителя */
}

.menu li:hover > ul li {
  background-color: #444; /* Возвращаем дочерним элементам их цвет */
}

.menu a:hover {
  color: #12467a;
}

.menu li ul li:hover {
  background: #fff;
}

/* Мобильное меню */
@media (min-width: 768px) {
  .menu li:hover > .submenu {
    display: block;
  }
}
@media (max-width: 767px) {
  .menu > li, .submenu > li, .menu > li:hover, .submenu > li:hover {
    border-left: 0;
  }
  .submenu > li {
    padding-left: 30px;
  }
  .navigation_container {
    position: absolute;
    width: 100%;
    top: 82px;
    z-index: 5;
  }
  .depth-1 .submenu-toggle {
    top: 0;
  }
  .menu li:hover > ul li {
    background-color: #555;
  }
  li.menu-item.depth-2 {
    padding-left: 10px;
  }
  .menu li ul li:hover {
    background: #444;
  }
  .burger {
    display: flex;
  }
  .menu {
    flex-direction: column;
    display: none;
  }
  .menu.open {
    display: flex;
  }
  .menu > li {
    display: block;
    border-bottom: 1px solid #555;
  }
  .menu li:hover {
    background-color: #302d35;
  }
  .menu > li > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
  }
  .submenu {
    position: static;
    display: none;
  }
  .submenu-open {
    display: block;
  }
  .submenu-toggle {
    cursor: pointer;
    padding: 10px;
    color: white;
    margin-left: 10px;
    display: block;
    position: absolute;
    right: 10px;
    top: 7px;
  }
  .submenu-toggle-desctop {
    display: none;
  }
  .depth-1.has-children {
    display: block;
  }
}
.popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

/* Контент попапа */
.popup-content {
  background: white;
  padding: 20px;
  border-radius: 10px;
  position: relative;
  max-width: 400px;
  text-align: center;
}

/* Кнопка закрытия (SVG) */
.close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}

/* Кнопка закрытия */
#closePopupBtn {
  margin-top: 10px;
  padding: 10px 20px;
  background: #333;
  color: white;
  border: none;
  cursor: pointer;
}

.wpforms-field-row, .wpforms-field-medium {
  max-width: 100% !important;
}

.home_header {
  background: url(3f2383ed738f0c55217c.jpg);
  padding-bottom: 2rem;
}

main {
  max-width: 1170px;
  margin: 0 auto;
}

.container {
  max-width: 1170px;
  margin: 0 auto;
}
.container.blocks .row {
  justify-content: space-between;
  flex-wrap: wrap;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj {
  width: 50%;
  min-width: 48%;
  flex: 0 0 48%;
  margin-bottom: 4%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj .col-md-4 {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj .col-md-4 img {
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj .col-md-4 img {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2 {
  width: 33.33%;
  min-width: 31%;
  flex: 0 0 31%;
  margin-bottom: 4%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2 .col-md-4 {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2 .col-md-4 img {
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2 .col-md-4 img {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3 {
  width: 33.33%;
  min-width: 33.33%;
  flex: 0 0 33.33%;
  margin-bottom: 4%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3 .col-md-4 {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3 .col-md-4 img {
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3 .col-md-4 img {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 {
  width: 25%;
  min-width: 25%;
  flex: 0 0 25%;
  margin-bottom: 4%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 .col-md-4 {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 .col-md-4 img {
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 .col-md-4 img {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}

.h1 {
  font-size: 35px;
  line-height: 40px;
}

h1 {
  text-align: justify;
  font-size: 32px;
}

h2 {
  font-size: 24px;
}
h2.has-background {
  padding: 0 !important;
  background-color: transparent !important;
  display: inline-flex;
}
h2.has-pale-pink-background-color {
  border-bottom: 3px solid #f78da7 !important;
}
h2.has-vivid-red-background-color {
  border-bottom: 3px solid #cf2e2e !important;
}
h2.has-luminous-vivid-orange-background-color {
  border-bottom: 3px solid #ff6900 !important;
}
h2.has-luminous-vivid-amber-background-color {
  border-bottom: 3px solid #fcb900 !important;
}
h2.has-light-green-cyan-background-color {
  border-bottom: 3px solid #7bdcb5 !important;
}
h2.has-pale-cyan-blue-background-color {
  border-bottom: 3px solid #8ed1fc !important;
}
h2.has-vivid-cyan-blue-background-color {
  border-bottom: 3px solid #0693e3 !important;
}
h2.has-vivid-purple-background-color {
  border-bottom: 3px solid #9b51e0 !important;
}

.h2 {
  font-weight: normal;
  font-size: 24px;
  line-height: 32px;
  text-align: justify;
}

p {
  text-align: justify;
}

p, li {
  font-size: 24px;
}

a {
  color: #12467a;
}

.row {
  display: flex;
}

.col-md-4 {
  flex: 0 0 33.33%;
  max-width: 33.33%;
}

.media-body {
  font-size: 24px;
  line-height: 32px;
  font-weight: bold;
  color: #12467a;
}

.media-body-text {
  width: 75%;
}
.media-body-text ul, .media-body-text li, .media-body-text p {
  font-size: 16px;
  margin-top: 0;
}

ol {
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  ol {
    margin-bottom: 25px;
  }
}
ol li {
  list-style-image: url(aae80c91a931ec1c78ba.svg);
  padding-left: 15px;
}
ol li::marker {
  font-size: 50px;
}
@media screen and (max-width: 767px) {
  ol li::marker {
    font-size: 20px;
  }
}

.wp-block-page-list {
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  .wp-block-page-list {
    margin-bottom: 25px;
  }
}
.wp-block-page-list li {
  list-style-image: url(8e178d6f3a7d64721b4e.svg);
  padding-left: 15px;
}
.wp-block-page-list li::marker {
  font-size: 50px;
}
@media screen and (max-width: 767px) {
  .wp-block-page-list li::marker {
    font-size: 20px;
  }
}

ul.dis {
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  ul.dis {
    margin-bottom: 25px;
  }
}
ul.dis li {
  list-style-image: url(98b6bab66c41e7690932.svg);
  padding-left: 15px;
}
ul.dis li::marker {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  ul.dis li::marker {
    font-size: 20px;
  }
}

.media > div {
  padding: 20px 20px 0 20px;
}

.media {
  height: 250px;
  background-color: #FFF;
  position: relative;
  border-right-style: none;
  border: 1px solid #d1d1d1;
}
.media.delivery {
  border-bottom-width: 10px;
  border-bottom-style: solid;
  border-bottom-color: #12467a;
  border-radius: 12px 0 0 12px;
  background-repeat: no-repeat;
  background-position: 190px 150px;
}
.media.delivery svg {
  fill: #12467a !important;
  stroke: #12467a !important;
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .media.delivery svg {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}
.media.custom {
  border-bottom-width: 10px;
  border-bottom-style: solid;
  border-bottom-color: #4cacb6;
  border-radius: 0;
  background-repeat: no-repeat;
  background-position: 190px 150px;
}
.media.custom svg {
  fill: #12467a !important;
  stroke: #12467a !important;
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .media.custom svg {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}
.media.transport {
  border-radius: 0 12px 12px 0;
  border-bottom-color: #577e19;
  border-bottom-width: 10px;
  border-bottom-style: solid;
  border-radius: 0 12px 12px 0;
  background-repeat: no-repeat;
  background-position: 190px 150px;
}
.media.transport svg {
  fill: #12467a !important;
  stroke: #12467a !important;
  height: 50px;
  position: absolute;
  right: 30px;
  bottom: 30px;
}
@media screen and (max-width: 767px) {
  .media.transport svg {
    right: 20px;
    bottom: 20px;
    height: 40px;
  }
}

.map_container {
  position: relative;
}
.map_container .mapinfo {
  position: relative;
  margin-top: -215px !important;
  padding: 32px 7.5% 17px 36px !important;
  left: calc((100vw - 1142px) / 2) !important;
  box-shadow: 5px 10px 24px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  top: 50%;
  background-color: #fff;
  position: absolute;
  z-index: 4;
  font-size: 24px;
  line-height: 36px;
  font-style: normal;
}
.map_container .mapinfo a {
  font-size: 24px;
  color: #12467a;
}

@media screen and (max-width: 1080px) {
  .media-body-text {
    font-size: 14px;
  }
  .media {
    height: 300px;
  }
}
@media screen and (max-width: 767px) {
  h1 {
    font-size: 24px;
  }
  h2 {
    font-size: 16px;
  }
  p, li {
    font-size: 16px;
  }
  .row {
    flex-direction: column;
  }
  .col-md-4 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .home_header {
    padding: 15px;
  }
  .media {
    border-radius: 0 !important;
  }
  .media-body-text {
    margin-bottom: 20px;
  }
  .media {
    height: 250px;
  }
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
  }
  .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj .media, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-2 .media, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-3 .media, .container.blocks .row .wp-block-lazyblock-blok-kvadratnyj-4 .media {
    height: auto;
    min-height: 250px;
  }
  .map_container iframe {
    max-width: 100%;
  }
  .map_container .mapinfo {
    left: calc((100vw - 100%) / 2) !important;
    font-size: 16px;
    line-height: 24px;
    padding: 16px 3.75% 8px 18px !important;
  }
  .map_container .mapinfo a {
    font-size: 16px;
  }
}
@media screen and (max-width: 360px) {
  .media-body-text {
    font-size: 14px;
  }
  .site-header .site-branding .site-logo {
    max-height: 35px;
  }
}
.site-footer {
  background: #302d35;
}
.site-footer .site-info {
  max-width: 1170px;
  margin: 0 auto;
  color: #fff;
  width: 100%;
  display: flex;
  gap: 50px;
}
.site-footer .site-info div a {
  color: #fff;
  text-decoration: underline;
}

@media (max-width: 767px) {
  .site-footer {
    padding: 15px;
    gap: 30px;
  }
}
