body,
html {
   overflow-x: hidden;
}
body.lock,
html.lock {
   overflow-y: hidden;
}

#header > .container-fluid {
   position: relative;
   z-index: 50;
}
#header:before {
   height: 100%;
   background: #000;
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   z-index: 40;
   width: 100%;
}
/*
	====================================================================================================
	СТИЛИ ЗАГОТОВОК БЛОКОВ
	====================================================================================================
*/
@media (max-width: 1535px) {
}
@media (max-width: 1399px) {
}
@media (max-width: 1299px) {
}
@media (max-width: 1153px) {
}
@media (max-width: 1023px) {
}
@media (max-width: 767px) {
}
@media (max-width: 499px) {
}
/*
	==================================================
	Кнопка
	==================================================
*/
.btn,
.btn:visited,
.btn:focus,
.btn:active {
   position: relative;
   display: inline-block;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   border: none;
   border-bottom: 0;
   line-height: 1.2;
   cursor: pointer;
   padding: 0;
   -webkit-transition: all 0.3s ease;
   -o-transition: all 0.3s ease;
   transition: all 0.3s ease;
   text-align: center;
}
.btn:hover {
   border-bottom: 0;
   -webkit-transform: translateY(-5px);
   -ms-transform: translateY(-5px);
   transform: translateY(-5px);
}
.btn span {
   overflow: hidden;
   display: block;
   padding: 1.25rem 2rem;
   min-width: 160px;
   position: relative;
}
@media (max-width: 499px) {
   .btn span {
      padding: 1rem 1.5rem;
      min-width: auto;
   }
}

/*
	==================================================
	Преимущества таксономий
	==================================================
*/
.g-benefits section {
   padding: 0;
}

/*
	==================================================
	Теги архивов
	==================================================
*/

.terms-list {
   display: flex;
   flex-wrap: wrap;
   gap: 1rem;
   justify-content: center;
}
.terms-list li {
}
.terms-list li a {
   color: var(--dark);
   border: 1px solid var(--color);
   border-radius: 50px;
   padding: 0.6rem 1.25rem;
   display: inline-block;
   font-size: 0.9rem;
   white-space: nowrap;
}
.terms-list li a.active,
.terms-list li a:hover {
   background: var(--color);
   color: #fff;
}

/*
	==================================================
	Шапка
	==================================================
*/
.working__now {
   display: flex;
   align-items: center;
   gap: 0.5rem;
}
.working__now_mb {
   margin-bottom: 0.25rem;
}
.working__icon {
   position: relative;
   width: 0.5rem;
   height: 0.5rem;
   background: #08b308;
   border-radius: 50%;
   animation: pulse-animation 2s infinite;
}
.working__icon::before {
   content: "";
}
.working__text {
   font-size: 0.8rem;
   color: #08b308;
}
@keyframes pulse-animation {
   0% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0px rgb(12 201 12 / 60%);
   }
   50% {
      transform: scale(1);
      box-shadow: 0 0 0 8px rgb(12 201 12 / 0%);
   }
   100% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0px rgb(12 201 12 / 0%);
   }
}

#header-wrapper.main_menu.type-header {
   margin-bottom: -1.5rem;
}
#header-wrapper.main_menu.type-header.header-absolute,
#header-wrapper.main_menu.type-header.header-fixed,
#header-wrapper.main_menu.type-header.menu-full-width {
   margin-bottom: 0rem;
}
#header-wrapper.header-absolute {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1000;
}
#header-wrapper.header-fixed {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1000;
}
#header {
   position: relative;
   padding: 1rem 0;
   z-index: 40;
   font-size: 0.9rem;
}
#header .mainrow {
   -ms-flex-wrap: nowrap;
   flex-wrap: nowrap;
   margin: 0;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}
#header .logo {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   max-height: 9rem;
}
#header .content {
   -webkit-box-flex: 1;
   -ms-flex: 1 1 auto;
   flex: 1 1 auto;
   margin-left: 2rem;
}
#header .content .row {
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: end;
   -ms-flex-pack: end;
   justify-content: flex-end;
}
#header .content .contacts {
   -webkit-box-flex: 0;
   -ms-flex: 0 0 17rem;
   flex: 0 0 17rem;
   text-align: right;
}
#header .content .burger-icon {
   -webkit-box-flex: 0;
   -ms-flex: 0 0 3rem;
   flex: 0 0 3rem;
   text-align: right;
}
#header .content .social-col {
   text-align: right;
}
#header .content .descriptor .text {
   max-width: 450px;
   font-weight: var(--f1w);
}
#header .logo a {
   display: block;
   width: 12rem;
}
#header .contacts .phone-content {
   font-size: 1.125rem !important;
   font-weight: var(--f1wb);
   color: var(--dark);
   border: 0;
}
.dark_theme #header .contacts .phone-content {
   color: #fff;
}
#header .contacts .link {
   color: var(--color);
   border-bottom: 1px dashed var(--color);
   cursor: pointer;
}
#header .contacts .link:hover {
   border-bottom: 1px dashed rgba(34, 153, 179, 0) !important;
}
#header .contacts svg {
   fill: rgba(0, 0, 0, 0.3);
   width: 2rem;
   height: 2rem;
   margin-bottom: -1.4rem;
   margin-right: 1rem;
   border: 1px solid rgba(0, 0, 0, 0.2);
   border-radius: 50%;
   padding: 5px;
}
#header .social {
   -webkit-box-pack: end;
   -ms-flex-pack: end;
   justify-content: flex-end;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}
#header .btn span::before {
   display: none;
}

/* Для полной шапки */
#header-top {
   position: relative;
   padding: 0.5rem 0;
   color: var(--gray);
   font-size: 0.8rem;
   background: var(--light);
   border-bottom: 1px solid #e3e2e2;
}
#header-top .full__wrap {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 2rem;
}
#header-top .top__row {
   display: flex;
   align-items: center;
   gap: 2rem;
}
#header-top .top__col {
}
#header-top .top_menu .menu {
   display: flex;
   align-items: center;
   gap: 1rem;
}
#header-top .top_menu .menu .menu-item a {
   padding: 0;
   color: var(--gray);
   font-size: 0.8rem;
   border-bottom: 1px solid rgb(0 0 0 / 15%);
   line-height: 1.3;
}
#header-top .top_menu .menu .menu-item a:hover {
   border-bottom-color: transparent;
   color: var(--dark);
}
#header-top .top_adress {
}
#header-top .top_multycity {
}

#header-full {
   padding: 1.25rem 0;
}
#header-full .full__wrap {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 2rem;
}
#header-full .full__row {
   display: flex;
   align-items: center;
   gap: 2rem;
}
#header-full .full__row_left {
   flex: 1;
}
#header-full .full__row_right {
}
#header-full .full__col {
}
#header-full .col_end {
   display: flex;
   flex-direction: column;
   align-items: flex-end;
   justify-content: center;
   line-height: 1.2;
}
#header-full .full_logo {
   max-width: 10rem;
}
#header-full .full_descriptor {
   font-size: 0.8rem;
}
#header-full .full_social {
   display: flex;
   align-items: center;
   gap: 1rem;
}
#header-full .full_button {
}
#header-full .full_button .btn {
   font-size: 0.85rem;
   letter-spacing: 0.4px;
   background: transparent;
   border: 1px solid var(--color);
   color: var(--color);
   font-weight: var(--f1ws);
}
#header-full .full_button .btn:hover {
   background: var(--btn_color_1);
   border: 1px solid var(--btn_color_1);
   color: var(--btn_color_text);
   transform: none;
}
#header-full .full_button .btn span {
   padding: 0.7rem 1.5rem;
}
#header-full .phone-content {
   color: var(--dark);
   font-size: 1.25rem;
   font-weight: var(--f1wb);
}
#header-full .phone-content:hover {
   color: var(--color);
}
#header-full .email-content {
   color: var(--gray);
   font-size: 0.9rem;
   border-color: var(--gray);
}
#header-full .email-content:hover {
   color: var(--color);
   border-color: transparent;
}
#header-full .full_search {
   flex: 1;
}
#header-full .search-form {
   display: flex;
}
#header-full .search-field {
   background: var(--light);
   border: 1px solid #e3e2e2;
   border-top-left-radius: 6px;
   border-bottom-left-radius: 6px;
   font-size: 0.9rem;
   padding: 0.65rem 1.6rem;
   width: 100%;
}
#header-full .search-button {
   background: var(--gray);
   border: 0;
   width: 3rem;
   border-top-right-radius: 6px;
   border-bottom-right-radius: 6px;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
}
#header-full .search-button:hover {
   background: var(--color);
}
#header-full .search-button svg {
   fill: #fff;
   width: 1rem;
   height: 1rem;
}

/* Для шапки 1 */
.type-header-1 #header {
   padding: 1rem 0 0;
}
.type-header-1 #header .content {
}
.type-header-1 #header .button {
   -webkit-box-flex: 0;
   -ms-flex: 0 0 14rem;
   flex: 0 0 14rem;
   text-align: right;
   margin-top: 0;
}
.type-header-1 #header .btn {
   font-size: 0.9rem;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   width: -webkit-max-content;
   width: -moz-max-content;
   width: max-content;
   margin-left: auto;
   box-shadow: none;
}
.type-header-1 #header .btn svg {
   position: absolute;
   left: 1rem;
   top: 0.5rem;
   width: 1.25rem;
   height: 1.25rem;
}
.type-header-1 #header .btn:hover {
   -webkit-transform: translateY(0px);
   -ms-transform: translateY(0px);
   transform: translateY(0px);
}
.type-header-1 #header .btn:hover svg {
   -webkit-animation: btnsvg 2s;
   animation: btnsvg 2s;
}
.type-header-1 #header .btn span {
   padding: 0.6rem 1.5rem 0.6rem 3rem;
}
.type-header-1 #header .contacts {
   -webkit-box-flex: 0;
   -ms-flex: 0 0 16rem;
   flex: 0 0 16rem;
   text-align: right;
}
.type-header-1 #header .menu_block {
   margin-top: 1rem;
   border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.type-header-1 #header .menu {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: end;
   -ms-flex-pack: end;
   justify-content: flex-end;
   margin: 0;
}
.type-header-1.header-white.menu-black #header .menu {
   padding: 0;
   background: rgba(0, 0, 0, 0.6);
   background: var(--dark_60);
   border-radius: 5px;
   border-top: none;
   -webkit-box-pack: space-evenly;
   -ms-flex-pack: space-evenly;
   justify-content: space-evenly;
}
.type-header-1 #header .menu .menu-item a {
   font-size: 1rem;
   padding: 0.5rem 1.25rem;
   text-transform: none;
   letter-spacing: 0px;
   border-left: 0;
   white-space: nowrap;
   color: var(--dark);
}
.type-header-1 #header .menu .menu-item a:hover,
.type-header-1 #header .menu .current-menu-item a,
.type-header-1 #header .menu .current-menu-parent a,
.type-header-1 #header .menu .current-menu-ancestor a,
.type-header-1 #header .menu .menu-item .sub-menu .menu-item a:hover {
   color: var(--color);
   background: transparent;
}
.type-header-1 #header .menu .menu-item::before {
   opacity: 1;
}
.type-header-1 #header .menu .menu-item-has-children a {
   padding-right: 2.5rem;
}
.type-header-1 #header .menu .menu-item .sub-menu .menu-item a {
   padding: 0.5rem 1rem;
   font-size: 1rem;
   color: var(--dark);
}
.type-header-1 #header .menu .current-menu-parent .sub-menu .menu-item a,
.type-header-1 #header .menu .current-menu-ancestor .sub-menu .menu-item a {
   color: var(--dark);
   background: transparent;
}
#header .menu .sub-menu .sub-menu .menu-item a {
   white-space: normal;
}
@-webkit-keyframes btnsvg {
   0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
   5% {
      -webkit-transform: rotate(20deg);
      transform: rotate(20deg);
   }
   15% {
      -webkit-transform: rotate(-20deg);
      transform: rotate(-20deg);
   }
   20% {
      -webkit-transform: rotate(10deg);
      transform: rotate(10deg);
   }
   25% {
      -webkit-transform: rotate(12deg);
      transform: rotate(12deg);
   }
   25% {
      -webkit-transform: rotate(12deg);
      transform: rotate(12deg);
   }
   50% {
      -webkit-transform: rotate(-8deg);
      transform: rotate(-8deg);
   }
   80% {
      -webkit-transform: rotate(4deg);
      transform: rotate(4deg);
   }
   100% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
}
@keyframes btnsvg {
   0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
   5% {
      -webkit-transform: rotate(20deg);
      transform: rotate(20deg);
   }
   15% {
      -webkit-transform: rotate(-20deg);
      transform: rotate(-20deg);
   }
   20% {
      -webkit-transform: rotate(10deg);
      transform: rotate(10deg);
   }
   25% {
      -webkit-transform: rotate(12deg);
      transform: rotate(12deg);
   }
   25% {
      -webkit-transform: rotate(12deg);
      transform: rotate(12deg);
   }
   50% {
      -webkit-transform: rotate(-8deg);
      transform: rotate(-8deg);
   }
   80% {
      -webkit-transform: rotate(4deg);
      transform: rotate(4deg);
   }
   100% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }
}

/* Для тёмной шапки */
#undo_header_abs {
   min-height: var(--header_height);
}
#undo_header_abs.black {
   background: var(--dark);
}
.header-white #header {
   color: #fff;
}
.header-white #header a[href^="tel:"].phone-content {
   color: #fff;
}
.header-white #header .contacts .link {
   color: rgba(255, 255, 255, 0.5);
   border-bottom: 1px dashed rgba(255, 255, 255, 0.3);
}
.header-white #header .contacts svg {
   fill: rgba(255, 255, 255, 0.3);
   border: 1px solid rgba(255, 255, 255, 0.3);
}
.header-white #header .social .soc svg {
   fill: #fff;
}
.header-white.type-header-1 #header .menu {
   border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.header-white.type-header-1 #header .menu .menu-item a {
   color: #fff;
}
.header-white.type-header-1 #header .menu .menu-item a:hover {
   color: var(--color);
}
.header-white.type-header-1 #header .menu .current-menu-item a {
   color: var(--color);
   font-weight: var(--f1ws);
}
.header-white.type-header-1 #header .menu .sub-menu .menu-item a {
   font-weight: normal;
   font-weight: var(--f1w);
}

#apex {
   border-bottom: 1px solid var(--light);
}
#apex .flex {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
}

#header-center {
   position: relative;
   z-index: 20;
}
#header-center .flex {
   justify-content: space-between;
}
#header-center .logo {
   width: 14rem;
   padding: 1.5rem 0 1rem;
}
#header-center .logo a {
}
#header-center .logo a img {
}
#header-center .menu {
   display: flex;
   flex-wrap: wrap;
}
#header-center .menu .menu-item a {
   font-weight: var(--f1ws);
   padding: 0.7rem 1.5rem;
   border-left: 0;
   color: var(--dark);
   letter-spacing: 0.7px;
}
#header-center .menu-item.menu-item-has-children a {
   padding-right: 2rem;
}
#header-center .menu .menu-item:last-child a {
   padding-right: 0;
}
#header-center .menu .menu-item .sub-menu {
   z-index: 0;
}
#header-center .menu .menu-item .sub-menu .menu-item a {
   font-size: 0.9rem;
   color: var(--dark);
}
#header-center .menu .menu-item:hover a,
#header-center .menu .menu-item .sub-menu .menu-item:hover a,
#header-center .menu .current-menu-parent a {
   color: var(--color);
}
#header-center .burger-icon {
   display: none;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/

@media (max-width: 1399px) {
   #header .adress {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16rem;
      flex: 0 0 16rem;
   }
}

@media (max-width: 1299px) {
   #header .content .social-col {
      display: none;
   }
}

@media (max-width: 1153px) {
   .type-header-1 #header {
      padding: 1rem 0;
   }
   #header .content .descriptor,
   .type-header-2 #header .menu_block,
   .type-header-1 #header .menu_block {
      display: none;
   }
   .type-header-1 #header .menu .menu-item a {
      white-space: normal;
   }
   .type-header-1 #header .button {
      margin-right: 5rem;
   }
   #header .contacts {
      margin-right: 5rem;
   }
   .type-header-1 #header .contacts {
      margin-right: 0rem;
   }
   #header-center .menu {
      display: none;
   }
}

@media (max-width: 1023px) {
   #header-wrapper.main_menu.type-header {
      margin-bottom: 0;
   }
   .type-header-1 #header {
      border-bottom: 0;
      padding-top: 1rem;
   }
   #header .adress {
      display: none;
   }
   #header .logo a img {
      max-height: 3rem;
   }
   .type-header-1 #header .content .contacts {
      margin-right: 0;
   }
   .type-header-1 #header .button {
      display: none;
   }
   .type-header-1 #header .logo a img {
      max-height: 7rem;
   }
   .type-header-2 #header-top .descriptor {
      display: none;
   }
   .type-header-2 #header .content .contacts {
      margin-right: 4rem;
   }
}

@media (max-width: 767px) {
   #header .logo a {
      display: block;
      width: 9rem;
   }
   #header .contacts svg {
      display: none;
   }
   #header .content .contacts {
      -ms-flex: 0 0 14rem;
      flex: 0 0 14rem;
   }
   .type-header-1 #header .content .contacts {
      margin-right: 4rem;
   }
   .type-header-2 #header .contacts .link {
      display: inline-block;
   }
   .type-header-2 #header .content .contacts {
      margin-right: 2rem;
   }
}

@media (max-width: 499px) {
   #header .logo {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 8rem;
      flex: 0 0 8rem;
   }
   #header .logo a {
      width: 8rem;
      min-height: 2rem;
   }
   #header .content {
      margin-left: 0rem;
   }
   #header .content .contacts {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 10rem;
      flex: 0 0 10rem;
      margin-right: 0;
   }
   #header .contacts .phone-content {
      font-size: 0.9rem !important;
   }
}

/*
	==================================================
	Меню
	==================================================
*/
#menu {
   position: relative;
   z-index: 30;
   width: 100%;
}
/*
#menu::before{
	content: "";
    position: absolute;
    top: 100%;
	left: 0;
    width: 100vw;
    height: 16rem;
	background: #fff;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}*/
.menu-full-width #menu {
   background: var(--color);
}
#menu .menu {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   background: var(--color);
   border-radius: 3px;
}
.menu .menu-item {
   position: relative;
}
.menu .menu-item:first-child {
   margin-left: 0;
}
.menu .menu-item a {
   display: inline-block;
   border: 0;
   font-size: 0.9rem;
   font-weight: normal;
   font-weight: var(--f1w);
   padding: 0.85rem 1.5rem;
   border-left: 1px solid rgba(255, 255, 255, 0.2);
   position: relative;
   z-index: 1;
   cursor: pointer;
}
#menu .menu .menu-item a {
   color: #fff;
   white-space: nowrap;
}
.menu .menu-item::after,
.menu .menu-item::before {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   top: 0;
   opacity: 0.15;
}
.menu .menu-item:first-child,
.menu .menu-item:first-child::after,
.menu .menu-item:first-child::before {
   border-radius: 3px 0 0 3px;
}
.menu .menu-item:last-child,
.menu .menu-item:last-child::after,
.menu .menu-item:last-child::before {
   border-radius: 0 3px 3px 0;
}
.menu .menu-item:hover::before {
   background: #fff;
}
#menu .menu .current-menu-item::after,
#menu .menu .current-menu-parent::after/*,
#menu .menu .current-menu-ancestor::after*/ {
   background: #000;
}
.menu .current-menu-item::before,
.menu .current-menu-parent::before,
.menu .current-menu-ancestor::before {
}
#menu .menu .current-menu-item a::after,
#menu .menu .current-menu-parent a::after,
#menu .menu .current-post-ancestor a::after {
   content: "";
   position: absolute;
   bottom: -10px;
   right: 1rem;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 10px 20px 0 5px;
   border-color: var(--color) transparent transparent transparent;
   -webkit-filter: brightness(0.85);
   filter: brightness(0.85);
}
.sub-menu .current-post-ancestor a::after {
   display: none;
}
.menu .menu-item:hover {
}
.menu-item.menu-item-has-children a {
   padding-right: 2.5rem;
}
.menu-item.menu-item-has-children a::before {
   content: "";
   position: absolute;
   right: 1rem;
   top: 50%;
   height: 0.4rem;
   width: 0.4rem;
   -webkit-transform: translateY(-80%) rotate(45deg);
   -ms-transform: translateY(-80%) rotate(45deg);
   transform: translateY(-80%) rotate(45deg);
   border-right: 2px solid;
   border-bottom: 2px solid;
}
.menu .menu-item .sub-menu {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   position: absolute;
   padding: 1rem;
   border-radius: 0 0 5px 5px;
   left: 0rem;
   counter-reset: number;
   visibility: hidden;
   opacity: 0;
   -webkit-transform: translateY(-2rem);
   -ms-transform: translateY(-2rem);
   transform: translateY(-2rem);
   background: #fff;
   -webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
   box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
   z-index: -1;
   white-space: normal;
   min-width: 275px;
   margin: 0;
}
.dark_theme .menu .menu-item .sub-menu {
   background: var(--dark);
}
.menu .menu-item:nth-last-child(1) .sub-menu,
.menu .menu-item:nth-last-child(2) .sub-menu,
.menu .menu-item:nth-last-child(3) .sub-menu {
   left: auto;
   right: 0rem;
}
.menu .menu-item:hover .sub-menu {
   visibility: visible;
   opacity: 1;
   z-index: 1;
   -webkit-transform: translateY(0%);
   -ms-transform: translateY(0%);
   transform: translateY(0%);
   -webkit-transition: all 0.2s ease-out;
   -o-transition: all 0.2s ease-out;
   transition: all 0.2s ease-out;
}
.menu .menu-item .sub-menu .menu-item {
   margin: 0;
   -webkit-box-flex: calc(50% - 1rem);
   -ms-flex: calc(50% - 1rem);
   flex: calc(50% - 1rem);
   -webkit-box-flex: 100%;
   -ms-flex: 100%;
   flex: 100%;
   width: 100%;
}
.menu .menu-item .sub-menu .menu-item::after {
   border-radius: 3px !important;
}
.menu .menu-item .sub-menu .menu-item a {
   color: var(--dark);
   padding: 0.5rem 1rem;
   line-height: 1.3;
   letter-spacing: 0px;
   font-size: 1rem;
   font-weight: normal;
   font-weight: var(--f1w);
   text-transform: none;
   margin-left: 0rem;
   background: transparent;
   border: 0;
   border-radius: 3px;
   display: block;
}
#menu .menu .menu-item .sub-menu .menu-item a {
   color: var(--dark);
}
.dark_theme #menu .menu .menu-item .sub-menu .menu-item a {
   color: #fff;
}
#menu .menu .menu-item .sub-menu .menu-item:hover a,
#menu .menu .menu-item .sub-menu .current-menu-item a {
   color: var(--color);
   background: var(--light);
}
.dark_theme #menu .menu .menu-item .sub-menu .menu-item:hover a,
.dark_theme #menu .menu .menu-item .sub-menu .current-menu-item a {
   color: var(--color);
   background: var(--dark);
}
.sub-menu a::after,
.sub-menu a::before {
   display: none;
}
.sub-menu .menu-item-has-children a::before {
   display: block;
   -webkit-transform: translateY(-50%) rotate(-45deg);
   -ms-transform: translateY(-50%) rotate(-45deg);
   transform: translateY(-50%) rotate(-45deg);
}
.sub-menu .sub-menu a::before {
   display: none;
}
.menu .menu-item .sub-menu .current-menu-item::after,
.menu .menu-item .sub-menu .current-menu-parent::after,
.menu .menu-item .sub-menu .current-menu-ancestor::after {
   display: none;
}
.menu .sub-menu .menu-item .sub-menu {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   top: 0;
   left: 100%;
   width: fit-content;
   z-index: 100;
   background: #fff;
   visibility: hidden;
   opacity: 0;
   -webkit-transform: translateX(-1rem);
   -ms-transform: translateX(-1rem);
   transform: translateX(-1rem);
   border-radius: 5px;
}
.dark_theme .menu .sub-menu .menu-item .sub-menu {
   background: var(--color_bg_1);
}
.menu .sub-menu .menu-item .sub-menu::before {
   content: "";
   position: absolute;
   width: 1.5rem;
   height: 1.5rem;
   background: #fff;
   left: -0.5rem;
   top: 0.5rem;
   border-radius: 2px;
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
}
.dark_theme .menu .sub-menu .menu-item .sub-menu::before {
   background: var(--color_bg_1);
}
.menu .sub-menu .menu-item:hover .sub-menu {
   visibility: visible;
   opacity: 1;
   -webkit-transform: translateX(0%);
   -ms-transform: translateX(0%);
   transform: translateX(0%);
   -webkit-transition: all 0.2s ease-out;
   -o-transition: all 0.2s ease-out;
   transition: all 0.2s ease-out;
}
.menu .sub-menu .menu-item .sub-menu .menu-item {
   margin: 0;
   width: 100%;
   -webkit-box-flex: 100%;
   -ms-flex: 100%;
   flex: 100%;
}
.menu .sub-menu .menu-item .sub-menu .menu-item::after {
   display: none;
}
#menu .menu .menu-item .sub-menu .menu-item .sub-menu .menu-item a {
   font-size: 0.9rem;
   font-weight: 300;
   font-weight: var(--f1w);
   background: transparent;
}
.menu .sub-menu .sub-menu .sub-menu,
.menu .sub-menu .sub-menu .sub-menu * {
   display: none;
}

.footer-menu .menu {
   display: block;
}
.footer-menu .menu .menu-item a {
   display: inline-block;
   color: #fff;
   border: 0;
   font-weight: 300;
   font-weight: var(--f1w);
   padding: 3px 0;
   text-transform: none;
   letter-spacing: 0;
   border-left: 0;
   opacity: 0.5;
   font-size: 0.9rem;
   text-decoration: underline;
   -webkit-text-decoration-color: rgba(255, 255, 255, 0);
   text-decoration-color: rgba(255, 255, 255, 0);
}
.footer-menu .menu .menu-item a:first-letter {
   text-transform: capitalize;
}
.footer-menu .menu .menu-item a:hover {
   opacity: 1;
   -webkit-text-decoration-color: rgba(255, 255, 255, 0.5);
   text-decoration-color: rgba(255, 255, 255, 0.5);
}
.footer-menu .menu .menu-item:hover::before,
.footer-menu .menu .menu-item a::before,
.footer-menu .menu .current-menu-item::after,
.footer-menu .menu .current-menu-parent::after,
.footer-menu .menu .current-menu-ancestor::after {
   display: none;
}
.footer-menu .menu .current-menu-item a {
   border-radius: 3px;
   opacity: 1;
   cursor: default;
   text-decoration: none;
   background: rgba(255, 255, 255, 0.1);
   padding: 3px 20px 3px 7px;
   margin-left: -7px;
   position: relative;
}
.footer-menu .menu .current-menu-item a::after {
   content: "";
   position: absolute;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--color);
   top: 5px;
   right: 5px;
   border: 0;
}
.footer-menu .menu .menu-item .sub-menu {
   display: none;
}

.footer-social {
   display: flex;
   align-items: center;
   gap: 1rem;
   flex-wrap: wrap;
   margin-top: 1rem;
}

.footer-hor .menu {
   display: flex;
   gap: 2rem;
   margin: 1rem 0;
   padding-bottom: 2rem;
   border-bottom: 1px solid rgb(255 255 255 / 15%);
}
.footer-hor .menu .menu-item a {
   opacity: 0.75;
   font-size: 1rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/

@media (max-width: 1399px) {
   .menu .menu-item a {
      padding: 1rem 1.5rem;
   }
   .menu-item.menu-item-has-children a {
      padding-right: 2.5rem;
   }
}

@media (max-width: 1299px) {
   .menu .menu-item a {
      padding: 1rem 1rem;
   }
   .menu-item.menu-item-has-children a {
      padding-right: 2rem;
   }
   .type-header-1 #header .menu .menu-item a {
      font-size: 1rem;
      padding: 0.7rem 1.125rem;
   }
   .type-header-1 #header .menu .menu-item-has-children a {
      padding-right: 2rem;
   }
}

@media (max-width: 1220px) {
   .type-header-1 #header .menu .menu-item a {
      font-size: 0.9rem;
      padding: 0.5rem 1rem;
   }
   .type-header-1 #header .menu .menu-item-has-children a {
      padding-right: 1.5rem;
   }
   .menu-item.menu-item-has-children a::before {
      right: 0.5rem;
      border-right: 1px solid;
      border-bottom: 1px solid;
   }
   #menu .menu .menu-item .sub-menu .sub-menu {
      display: none;
   }
}

@media (max-width: 1023px) {
   #menu {
      display: none;
   }
}

/*
	==================================================
	Мобильное меню
	==================================================
*/

/* Меню. Иконка бургера
====================
*/
.mobile-icon {
   position: fixed;
   right: 3rem;
   top: 1.25rem;
   z-index: 1000;
   padding: 0.5rem;
   height: 3rem;
   width: 3rem;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   border-radius: 5rem;
   -webkit-transition: background 0.3s ease;
   -o-transition: background 0.3s ease;
   transition: background 0.3s ease;
   cursor: pointer;
}
.mobile-icon.mobile-icon-bg {
   background: #fff;
   opacity: 0.6;
   -webkit-box-shadow: 0 7px 20px -7px rgba(0, 0, 0, 0.5);
   box-shadow: 0 7px 20px -7px rgba(0, 0, 0, 0.5);
}
.mobile-icon:hover {
   background: #fff;
   opacity: 1;
}
.mobile-icon .close {
   width: 0rem;
   margin-right: 50px;
}
.mobile-icon .close .close-text {
   text-transform: uppercase;
   letter-spacing: 2px;
   font-size: 1.1rem;
   -webkit-transition: 0.5s ease-out;
   -o-transition: 0.5s ease-out;
   transition: 0.5s ease-out;
   opacity: 0;
   -webkit-transform: translateX(150%);
   -ms-transform: translateX(150%);
   transform: translateX(150%);
   text-align: right;
}
.open {
   position: relative;
   top: 2px;
   right: 0;
   width: 2rem;
   height: 1.75rem;
   display: flex;
   flex-direction: column;
   justify-content: space-evenly;
   overflow: hidden;
   z-index: 100;
   transition: all 0.2s ease-in-out;
}
.open span {
   display: block;
   height: 2px;
   width: 100%;
   background-color: var(--dark);
   transition: all 0.2s ease-in-out;
   position: relative;
   right: -1px;
}
.mobile-icon:hover .open span {
   width: 30px;
}
.header-white .open span,
.mobile-icon-white .open span {
   background-color: #fff;
}
.mobile-icon-bg .open span,
.mobile-icon-white:hover .open span {
   background-color: var(--dark);
}
/* Меню. Открытое меню
====================
*/
.active.mobile-icon {
   right: 4rem;
   background: var(--dark);
}
.active.mobile-icon .close {
   width: 6.25rem;
}
.active.mobile-icon .close .close-text {
   opacity: 1;
   -webkit-transform: translateX(0%);
   -ms-transform: translateX(0%);
   transform: translateX(0%);
}
.active .open {
   justify-content: center;
}
.active .open span,
.active:hover .open span {
   width: 30px;
   background-color: #fff;
}
.active .open span:nth-child(2) {
   overflow: visible;
   transition: none;
   left: -30px;
   width: 0px;
}
.active .open span:nth-child(1),
.active .open span:nth-child(3) {
   z-index: 100;
}
.active .open span:nth-child(1) {
   transform: rotate(-45deg) translate(-3px, 0px);
}
.active .open span:nth-child(3) {
   transform: rotate(45deg) translate(-3px, 0px);
}

/* Меню. Мобильное меню
====================
*/
.mobile {
   position: fixed;
   display: block;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background-color: #fff;
   overflow: hidden;
   z-index: -10;
   visibility: hidden;
   opacity: 0;
   -webkit-transition: 0.3s ease-out;
   -o-transition: 0.3s ease-out;
   transition: 0.3s ease-out;
   pointer-events: none;
}
.active.mobile {
   visibility: visible;
   opacity: 1;
   z-index: 1000;
   overflow-y: auto;
   pointer-events: auto;
}
.mobile .sub-menu {
   margin: 1rem 0 1rem 3rem;
}
.mobile .sub-menu li {
   padding: 0;
   margin: 0;
}
.mobile .sub-menu li a {
   font-size: 1.25rem;
   margin: 0.25rem 0;
}
.mobile .contacts li {
   margin: 0.75rem 0;
}

.mobile .menu {
   display: block;
   padding: 1rem 2rem;
}
.mobile .menu .menu-item a {
   color: var(--dark);
   background: transparent;
   font-size: 1rem;
   text-transform: none;
   padding: 1rem 0;
   font-size: 1.25rem;
   font-weight: 300;
   font-weight: var(--f1w);
}
.menu .menu-item .sub-menu .menu-item:hover a {
   background: transparent;
}
.menu .menu-item .sub-menu .menu-item .sub-menu .menu-item:hover a {
   background: var(--light);
}
.mobile .menu .current-menu-item a {
   color: var(--dark);
   background: transparent;
   font-weight: bold;
   font-weight: var(--f1wb);
}
.mobile .menu .current-menu-item::after,
.mobile .menu .current-menu-parent::after,
.mobile .menu .current-menu-ancestor::after {
   display: none;
}
.mobile .menu__nav .menu > li > a:after {
   display: none;
}
.mobile .menu .menu-item .sub-menu {
   position: static;
   width: unset;
   -webkit-box-shadow: none;
   box-shadow: none;
   margin: 0;
   margin-left: 1rem;
   padding: 0;
   visibility: visible;
   opacity: 1;
   -webkit-transform: none;
   -ms-transform: none;
   transform: none;
}
.mobile .menu .menu-item .sub-menu .menu-item::before {
   display: none;
}
.mobile .menu-item.menu-item-has-children a::before {
   display: none;
}
.mobile .menu .menu-item .sub-menu .menu-item {
   margin: 0;
   padding: 0;
}
.mobile .menu .menu-item .sub-menu .menu-item a {
   margin-left: 0;
   padding: 0.3rem 0;
   color: var(--color);
}
.mobile .menu .sub-menu .menu-item .sub-menu,
.mobile .menu .sub-menu .menu-item .sub-menu::before {
   background: transparent;
}
.mobile .menu .menu-item .sub-menu .menu-item .sub-menu {
   margin-bottom: 0.5rem;
}
.mobile .menu .menu-item .sub-menu .menu-item .sub-menu .menu-item a {
   font-weight: 300;
   font-weight: var(--f1w);
}

.menu-white {
}
.menu-white.mobile-icon {
   background: var(--dark);
}
.menu-white .open span {
   background-color: #fff;
}

.mobile .btn span {
   padding: 0.5rem 1.5rem;
   font-size: 0.9rem;
}
.mobile .contacts {
   padding: 1rem 2rem;
   border-bottom: 1px solid #e6e9ec;
}
.mobile .social {
   margin: 0;
   padding: 1rem 2rem;
   border-top: 1px solid #e6e9ec;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
}
.mobile .city {
   margin: 0;
   padding: 1rem 2rem 0;
   text-align: center;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1023px) {
   .mobile-icon,
   .active.mobile-icon {
      right: 2rem;
   }
   .mobile-icon.mobile-icon-bg {
      opacity: 1;
   }
}

@media (max-width: 767px) {
   .mobile-icon,
   .active.mobile-icon {
      right: 2rem;
   }
}

@media (max-width: 499px) {
   .mobile-icon,
   .active.mobile-icon {
      right: 1rem;
   }
   .mobile .menu {
      display: block;
      padding: 1rem 1rem;
   }
   .mobile .contacts {
      padding: 1rem 1rem;
      border-bottom: 1px solid #e6e9ec;
      font-size: 0.9rem;
   }
   .mobile .contacts a[href^="tel:"].phone-content {
      font-size: 1.25rem;
   }
   .mobile .menu .menu-item .sub-menu .menu-item {
      -webkit-box-flex: 100%;
      -ms-flex: 100%;
      flex: 100%;
      width: 100%;
   }
   .mobile .menu .menu-item .sub-menu .menu-item .sub-menu {
      margin-bottom: 1rem;
   }
}

/*
	==================================================
	Социальные сети
	==================================================
*/
.social {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   gap: 1rem;
}
.social .soc {
   width: 1.75rem;
   height: 1.75rem;
   display: flex;
}
.social .soc.search {
   height: 2rem;
}
.social .soc a {
   border: 0 !important;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   align-items: center;
   justify-content: center;
}
.social .soc svg {
   width: 1.5rem;
   height: 1.5rem;
}
.social .soc a:hover svg {
   fill: var(--color);
}
.social .soc.search svg {
   border: 2px solid rgba(0, 0, 0, 0.2);
   border-radius: 5px;
   height: 2rem;
   padding: 4px;
}
.social .soc.search:hover svg {
   border-color: var(--color);
   fill: var(--color);
   cursor: pointer;
}
.search-input-section {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   overflow: hidden;
}
.search-bg {
   position: absolute;
   background: #262626;
   border-radius: 50%;
   z-index: 1;
   -webkit-transform: scale(0);
   -ms-transform: scale(0);
   transform: scale(0);
   margin-left: 0.5rem;
}
.search-row {
   position: relative;
   max-width: 700px;
   margin: 0 auto;
}
.search-input {
   position: absolute;
   background: rgba(255, 255, 255, 0.1);
   width: 0;
   margin-top: 0.7rem;
   visibility: hidden;
   border-radius: 3px;
   color: #fff;
   border: 0;
}
.search-icon {
   position: absolute;
   right: 2rem;
   top: 1.5rem;
   visibility: hidden;
}
.search-icon svg {
   width: 25px;
   height: 20px;
   cursor: pointer;
}
.search-icon svg path {
   fill: #fff;
}
.search-icon:hover svg path {
   fill: #c59242;
}
.search-close {
   position: absolute;
   right: 2rem;
   top: 1rem;
   cursor: pointer;
   visibility: hidden;
   width: 40px;
   height: 40px;
}
.search-close .cls {
   display: block;
   height: 2px;
   width: 20px;
   background-color: #fff;
   position: absolute;
   right: 1rem;
   top: 1rem;
   overflow: hidden;
   z-index: 100;
}
.search-close:hover .cls {
   background-color: #c59242;
}
.search-close .cls:first-child {
   -webkit-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
   transform: rotate(-45deg);
}
.search-close .cls:last-child {
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
}

.visible .search-bg {
   -webkit-transform: scale(1);
   -ms-transform: scale(1);
   transform: scale(1);
   -webkit-transition: all 0.2s ease 0s;
   -o-transition: all 0.2s ease 0s;
   -webkit-transition: all 0.3s ease-in 0s;
   -o-transition: all 0.3s ease-in 0s;
   transition: all 0.3s ease-in 0s;
}
.visible .search-input {
   font-family: "Roboto", sans-serif;
   width: 100%;
   visibility: visible;
   -webkit-transition: all 0.2s ease-in 0s;
   -o-transition: all 0.2s ease-in 0s;
   transition: all 0.2s ease-in 0s;
   padding: 0 2rem;
}
.visible .search-icon,
.visible .search-close {
   visibility: visible;
   -webkit-transition: all 0.4s ease-in 0.3s;
   -o-transition: all 0.4s ease-in 0.3s;
   transition: all 0.4s ease-in 0.3s;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 767px) {
}

/*
	==================================================
	Хлебные крошки
	==================================================
*/
#breadcrumbs {
   z-index: 100;
   position: relative;
   margin-bottom: 1rem;
   font-size: 0.8rem;
}
#breadcrumbs a {
   border-bottom: 1px solid var(--color_30);
   margin-bottom: 0.25rem;
   display: inline-block;
}
#breadcrumbs a:hover {
   border-bottom: 1px solid transparent;
}

@media (max-width: 1153px) {
   #breadcrumbs {
      font-size: 0.7rem;
   }
}

@media (max-width: 1023px) {
   #breadcrumbs {
      margin-top: 1rem;
   }
}

@media (max-width: 767px) {
   #breadcrumbs {
      font-size: 0.7rem;
   }
}

/*
	==================================================
	Главное окно
	==================================================
*/
#hero {
   background-repeat: no-repeat;
   background-color: var(--light);
   background-size: cover;
   background-position: center;
   margin: 0rem;
   padding: 0rem;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: end;
   -ms-flex-align: end;
   align-items: flex-end;
}
#hero.no-content,
.dark_theme #hero {
   background-color: transparent;
}
#hero.align-text-top {
   align-items: flex-start;
}
#hero.align-text-center {
   align-items: center;
}
#hero.align-text-bottom {
   align-items: flex-end;
}
#hero.hero-white {
   background-color: var(--dark);
}
#hero.hero-white,
#hero.hero-white .header p {
   color: #fff;
}
#hero.hero-white #breadcrumbs a {
   color: #fff;
   border-bottom: 1px solid rgb(255 255 255 / 30%);
}
#hero.no-content h1 {
   margin: 0;
}
#hero .main {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   height: 100%;
   padding: 5rem 0rem;
}
#hero.no-content {
   justify-content: center;
}
#hero.no-content .main {
   padding-bottom: 2rem;
}
#hero .wrap {
   width: 100%;
   max-width: 50vw;
}
#hero.no-content .wrap {
   margin: auto;
}
#hero .header {
   font-weight: 300;
   font-weight: var(--f1w);
}
#hero .header p {
   margin: -0.5rem 0 1.5rem;
   color: var(--dark);
}
#hero .header blockquote {
   padding: 2rem 2rem 2rem 7rem;
   margin: 2rem 0;
   max-width: 700px;
}
#hero .header blockquote p {
   margin: 1rem 0;
}
#hero .header blockquote p:nth-last-of-type(1) {
   margin-bottom: 0;
}
.dark_theme #hero .header p,
.dark_theme #hero .header li {
   color: #fff;
}
#hero .header h1 + p {
   font-size: 1.25rem;
}
#hero .header ul {
   max-width: 680px;
   margin: 2rem 0;
}
#hero .header ul li {
   margin: 1rem 0;
   font-size: 1.125rem;
}
#hero .intro {
   font-size: 1.125rem;
   font-weight: 300;
   font-weight: var(--f1w);
   margin-bottom: 3rem;
}
#hero .intro.none-hero-btn {
   margin-bottom: 0rem;
}
#hero .wrap .button {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   margin-top: 3rem;
   flex-wrap: wrap;
}
#hero .hero-btn-desc {
   position: relative;
   -webkit-box-flex: 0;
   -ms-flex: 0 0 17rem;
   flex: 0 0 17rem;
   font-weight: 300;
   font-weight: var(--f1w);
   background: #fff;
   margin-left: 1rem;
   padding: 0.75rem 1.5rem;
   padding-left: 4rem;
   line-height: 1.2;
   color: var(--dark);
   font-size: 0.85rem;
}
.border-circle #hero .hero-btn-desc {
   border-radius: 0.5rem;
}
#hero .hero-btn-desc::before {
   position: absolute;
   content: "";
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 15px 15px 15px 0;
   border-color: transparent #fff transparent transparent;
   top: 50%;
   left: -14px;
   transform: translateY(-50%);
}
#hero .hero-btn-desc::after {
   position: absolute;
   content: "";
   background: url(../i/hero-btn-desc.svg) no-repeat center;
   background-size: 1.5rem;
   width: 2rem;
   height: 2rem;
   left: 1rem;
   top: 50%;
   transform: translateY(-50%);
   opacity: 0.5;
}
#hero .hero-image {
   position: relative;
   height: 100%;
   padding-top: 2rem;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: end;
   -ms-flex-align: end;
   align-items: flex-end;
}
#hero .hero-image img {
   max-height: 90vh;
}
#hero .hero-image-sm {
   position: relative;
   display: none;
}
#hero .main .image-mobile {
   display: none;
}
#hero .name-block {
   position: absolute;
   right: 0;
   bottom: 6rem;
   z-index: 2;
   text-align: right;
}
#hero .name-block div {
   position: relative;
   max-width: -webkit-max-content;
   max-width: -moz-max-content;
   max-width: max-content;
   margin: 0 0 0 auto;
}
#hero .name-block div::before {
   content: "";
   -webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
   box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
   background: #fff;
   height: 140%;
   position: absolute;
   z-index: -1;
   right: -0.8rem;
   left: -0.8rem;
   -webkit-transform: skewX(-10deg);
   -ms-transform: skewX(-10deg);
   transform: skewX(-10deg);
   top: -20%;
   border-radius: 3px;
}
#hero.hero-white .name-block div::before {
   background: var(--dark);
}
#hero .name-block .name {
   z-index: 2;
   margin-bottom: 7px;
   font-weight: bold;
   font-weight: var(--f1wb);
}
#hero .name-block .position {
   font-size: 0.9rem;
   max-width: 200px;
   margin-right: 2rem;
}
#hero .benefits {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   margin: 3rem 0;
}
#hero .benefits li {
   position: relative;
   margin-bottom: 1rem;
   line-height: 1.2;
   font-size: 0.9rem;
   width: fit-content;
   padding-right: 4rem;
}
#hero .benefits li .text {
   display: flex;
   flex-direction: column;
}
#hero .benefits li .text strong {
   font-size: 1.25rem;
   display: block;
   margin: 0.25rem 0;
}
#hero .benefits .icon {
   position: absolute;
   width: 3rem;
   max-height: 2rem;
   left: 0;
   top: 0;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1299px) {
   #hero .intro {
      margin-bottom: 2rem;
   }
}

@media (max-width: 1153px) {
   #hero.no-content .main {
      padding: 3rem 0rem;
   }
   #hero .btn {
      -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
      flex: 1 0 auto;
      max-width: 300px;
   }
}

@media (max-width: 1023px) {
   #hero {
      background-position: center right 45%;
   }
   #hero .wrap {
      max-width: 60vw;
   }
   #hero .main {
      padding: 3rem 0rem;
   }
   #hero .main .image {
      display: none;
   }
   #hero .button {
      display: block;
   }
   #hero .hero-btn-desc {
      margin-top: 1rem;
      margin-left: 0;
   }
   #hero .benefits li {
      padding-right: 2rem;
   }
   #hero .benefits-3 li,
   #hero .benefits-4 li {
      width: auto;
      max-width: none;
      flex: 1 0 auto;
   }
   #hero .hero-btn-desc::before {
      top: -1.25rem;
      left: 3rem;
      transform: rotate(90deg);
   }
}

@media (max-width: 900px) {
}

@media (max-width: 767px) {
   #hero {
      display: block;
      min-height: auto !important;
   }
   #hero .wrap {
      max-width: none;
   }
   #hero .main {
      display: block;
      height: auto;
   }
   #hero.hero_bg_sm .main {
      padding: 0rem 0rem 3rem;
   }
   #hero .main .image-mobile {
      display: block;
      margin: 0 -2rem 1.5rem;
   }
   #hero .header h1 + p {
      font-size: 1.125rem;
   }
   #hero.hero-image,
   #hero.hero_bg_sm {
      display: block;
      background-image: none !important;
   }
   #hero .header h1 {
      margin-right: 0rem;
   }
   #hero .name-block {
      right: 50%;
      -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
      transform: translateX(50%);
      bottom: 2rem;
   }
   #hero .name-block .name {
      font-size: 0.9rem;
   }
   #hero .name-block .position {
      font-size: 0.8rem;
   }
   #hero .header {
      font-size: 1.125rem;
   }
   #hero .hero-btn-desc {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      margin-top: 1rem;
      max-width: fit-content;
   }
   #hero.hero-image {
      padding: 0;
   }
   #hero .hero-image-sm {
      display: block;
      background-size: cover;
      background-position: center;
      text-align: center;
   }
   #hero .hero-image-sm .image {
      margin: 0px 2rem 2rem auto;
      text-align: right;
   }
   #hero .hero-image-sm img {
      height: 280px;
      padding-top: 2rem;
      display: block;
      margin: auto;
   }
}

@media (max-width: 499px) {
   #hero .hero-btn-desc {
      padding-left: 3.5rem;
   }
   #hero .hero-btn-desc::after {
      background-size: 1.25rem;
   }
   #hero .header {
      font-size: 1rem;
   }
   #hero .header ul li {
      margin: 0.75rem 0;
      font-size: 1rem;
   }
   #hero .main .image-mobile {
      margin: 0 -1rem 1.5rem;
   }
   #hero .intro {
      margin-bottom: 1.5rem;
   }
   #hero .button {
      margin-top: 1rem;
   }
   #hero .name-block {
      right: auto;
      left: 2rem;
      -webkit-transform: translateX(0%);
      -ms-transform: translateX(0%);
      transform: translateX(0%);
      width: 40%;
      line-height: 1.4;
   }
   #hero .name-block .position {
      font-size: 0.8rem;
      max-width: none;
      margin-right: -1rem;
   }
}

/*
	==================================================
	Главное окно со слайдером
	==================================================
*/
#hero3 {
   overflow: hidden;
   padding: 0;
   background: var(--light);
}
.dark_theme #hero3 {
   background: var(--dark);
}

.hero3__slide {
   position: relative;
   display: flex;
   align-items: center;
   background-position: center;
   background-repeat: no-repeat;
   background-size: cover;
   overflow: hidden;
}
.hero3__slide.align-text-top {
   align-items: flex-start;
}
.hero3__slide.align-text-center {
   align-items: center;
}
.hero3__slide.align-text-bottom {
   align-items: flex-end;
}

.hero3__arrows {
   position: absolute;
   bottom: 4rem;
   width: 100%;
}
.hero3__arrows-wrap {
   position: relative;
   width: 6rem;
   margin-left: auto;
}
.hero3__arrows-wrap .slick-arrow {
   width: 2.5rem;
   height: 2.5rem;
}
.hero3__arrows-wrap .slick-arr-prev {
   left: 0;
}
.hero3__arrows-wrap .slick-arr-next {
   right: 0;
}
.hero3__dots .slick-dots {
   bottom: 50%;
   transform: translateY(100%);
   right: 6rem;
}

.hero3__video {
   position: absolute;
   width: 100%;
   height: 100%;
   top: 50%;
   transform: translateY(-50%);
   object-fit: cover;
}

.hero3__mobile {
   position: relative;
   display: none;
}
.hero3__mobile::before {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0%;
   background: #fff;
   filter: invert(0.1);
   z-index: -1;
}
.dark_theme .hero3__mobile::before {
   background: var(--dark);
}

.hero3__content {
   position: relative;
   z-index: 10;
   padding: 5rem 0;
}
.hero3__title h1,
.hero3__title h2 {
   font-size: 3rem;
   margin-top: 0;
}
.hero3__title h1 + p,
.hero3__title h2 + p {
   font-size: 1.25rem;
   max-width: 660px;
}
.hero3__title ul {
   margin-top: 2rem;
}
.hero3__title.col-list ul {
   display: flex;
   margin-top: 3rem;
}
.hero3__title.col-list ul li {
   margin-bottom: 1rem;
   display: none;
   padding-right: 3rem;
   flex-direction: column;
   align-items: flex-start;
}
.hero3__title.col-list ul li:nth-child(n + 0):nth-child(-n + 3) {
   display: flex;
}
.hero3__title ul li {
   font-size: 0.9rem;
   line-height: 1.3;
}
.hero3__title.col-list ul li strong {
   font-size: 1.5rem;
}
.hero3__buttons {
   position: relative;
   z-index: 10;
   margin-top: 3rem;
   display: flex;
   align-items: center;
   justify-content: flex-start;
   gap: 2rem;
}

@media (max-width: 1299px) {
   .hero3__content {
      padding: 4rem 0;
   }
}

@media (max-width: 1023px) {
   .hero3__content {
      padding: 3rem 0;
   }
   .hero3__title h1,
   .hero3__title h2 {
      font-size: 2.5rem;
   }
   .hero3__title h1 + p,
   .hero3__title h2 + p {
      font-size: 1.125rem;
   }
}
@media (max-width: 767px) {
   #hero3 {
      background: var(--light);
   }
   .hero3__slide {
      display: block;
   }
   .hero3__slide.bg-small {
      background-image: none !important;
   }
   .hero3__video {
      position: static;
      transform: translateY(0%);
   }
   .hero3__arrows {
      bottom: auto;
   }
   .hero3__mobile {
      display: block;
   }
}
@media (max-width: 499px) {
   .hero3__title h1,
   .hero3__title h2 {
      font-size: 2.25rem;
   }
   .hero3__title.col-list ul {
      margin-top: 2rem;
   }
   .hero3__buttons {
      margin-top: 1.5rem;
   }
}

/*
	==================================================
	Сотрудники
	==================================================
*/
#team {
}
#team .container-fluid {
   max-width: 1300px;
   margin: 0 auto;
}
#team .row {
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}
#team .team-wrap {
   position: relative;
}
#team .item-wrap {
   padding: 0 0.5rem;
}
#team .item {
   margin-bottom: 2rem;
}
#team .team {
   position: relative;
   border-radius: 0.5rem;
   overflow: hidden;
   font-weight: 300;
   font-weight: var(--f1w);
}
#team .team .body {
}
#team .avatar {
   position: relative;
   overflow: hidden;
}
#team .name-block {
}
#team .name {
   font-weight: var(--f1wb);
   margin: 1rem 0 0.25rem;
}
#team .position {
   font-size: 0.8rem;
   letter-spacing: 0.4px;
   color: var(--gray);
}
#team .team-contacts {
   font-size: 0.8rem;
   letter-spacing: 0.4px;
   margin-top: 3px;
}

.popup-team {
   position: relative;
   background: #fff;
   max-width: 700px;
   width: auto;
   margin: 0 auto;
   padding: 0rem;
   display: none;
}
.popup-team .fancybox-close-small {
   background: #fff;
   right: 0.5rem;
   top: 0.5rem;
   border-radius: 50%;
}
.popup-team .team {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}
.popup-team .team .avatar {
   -webkit-box-flex: 45%;
   -ms-flex: 45%;
   flex: 45%;
   width: 45%;
   margin: -2rem 0;
   -webkit-box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15);
   box-shadow: 0 30px 60px rgba(0, 0, 0, 0.15);
}
.popup-team .name-block {
   padding: 2rem;
   -webkit-box-flex: 55%;
   -ms-flex: 55%;
   flex: 55%;
   width: 55%;
}
.popup-team .name-block .name {
   font-weight: bold;
   font-weight: var(--f1wb);
}
.popup-team .name-block .position {
   font-size: 0.9rem;
   padding: 0.3rem 0 1rem;
}
.popup-team .name-block .progress {
   font-size: 0.9rem;
   border-top: 3px solid #dddfe0;
   padding-top: 1rem;
   color: var(--gray);
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 499px) {
   #team .team-wrap .row {
      display: flex;
      flex-wrap: nowrap;
      overflow: auto;
      -webkit-overflow-scrolling: touch;
   }
   #team .team-wrap .row .col {
      flex: 0 0 70%;
      max-width: 70%;
   }
}

/*
	==================================================
	Менеджер
	==================================================
*/
#manager {
   overflow: hidden;
}
.manager-1 {
   position: relative;
   background: var(--light);
   color: var(--dark);
   margin: 0;
   padding: 5rem 0;
   z-index: 1;
}
.dark_theme .manager-1 {
   background: var(--dark);
   color: #fff;
}
.manager-1 .wrap {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   background: #fff;
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   padding: 0 4rem;
   -webkit-box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.15);
   box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.15);
   border-radius: 0.5rem;
}
.dark_theme .manager-1 .wrap {
   background-color: var(--color_bg_1);
}
.manager-1 .left-wrap {
   position: relative;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: end;
   -ms-flex-align: end;
   align-items: flex-end;
   -webkit-box-flex: 1;
   -ms-flex: 1 1 auto;
   flex: 1 1 auto;
}
.manager-1 .text-wrap {
   height: 100%;
   max-width: 400px;
   -webkit-box-flex: 1;
   -ms-flex: 1 0 400px;
   flex: 1 0 400px;
   padding: 4rem 0;
}
.manager-1 .text-wrap .utp {
   position: relative;
   z-index: 1;
}
.manager-1 .text-wrap .header h2 {
   font-size: 2.5rem;
   color: var(--dark);
   margin-top: 0;
   margin-right: -4rem;
}
.manager-1 .text-wrap .header p {
   margin-top: 0;
   margin-bottom: 1rem;
   color: var(--dark);
}
.manager-1 .text-wrap .subheader {
   margin-top: 0;
   color: var(--dark);
}
.dark_theme .manager-1 .text-wrap .header h2,
.dark_theme .manager-1 .text-wrap .header p,
.dark_theme .manager-1 .text-wrap .subheader {
   color: #fff;
}
.manager-1 .text-wrap .manager-label {
   position: relative;
   max-width: 300px;
   margin-top: 2rem;
}
.manager-1 .text-wrap .manager-label div {
   position: relative;
   max-width: -webkit-max-content;
   max-width: -moz-max-content;
   max-width: max-content;
   margin: 0 0 0 auto;
   text-align: right;
}
.manager-1 .text-wrap .manager-label .name {
   font-size: 0.9rem;

   font-weight: bold;
   font-weight: var(--f1wb);
   z-index: 2;
}
.manager-1 .text-wrap .manager-label .position {
   font-weight: 300;
   font-weight: var(--f1w);
   font-size: 0.8rem;
   z-index: 1;
   text-align: right;
}
.manager-1 .text-wrap .contacts-block {
   border-top: 1px solid #ececec;
   margin-top: 2rem;
   padding-top: 1rem;
}
.manager-1 .text-wrap .contacts-block .head {
}

.manager-1 .avatar-wrap {
   position: relative;
   -webkit-box-flex: 1;
   -ms-flex: 1 0 auto;
   flex: 1 0 auto;
}
.manager-1 .avatar-png {
   margin-top: -2rem;
}
.manager-1 .avatar-wrap .avatar {
}
.manager-1 .avatar-wrap .avatar img {
   max-height: 700px;
   height: auto;
}

.manager-1 .form-wrap {
   height: 100%;
   margin-top: 4rem;
}
.dark_theme .manager-1 .form-wrap {
   background: var(--color_bg_1);
   color: #fff;
}

#manager.white-text {
   color: #fff;
}
#manager ul {
   max-width: 400px;
   margin: 2rem 0;
}
#manager ul li {
   position: relative;
   padding-left: 2.5rem;
   margin-bottom: 1rem;
   font-size: 1rem;
}
#manager ul li strong {
   display: block;
}
#manager ul li::before {
   content: "";
   display: block;
   width: 1.5rem;
   height: 1.5rem;
   background-position: center;
   background-repeat: no-repeat;
   background-image: url(../i/oko.svg);
   background-size: contain;
   position: absolute;
   left: 0;
   top: 0rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1535px) {
   .manager-1 .avatar-wrap .avatar {
   }
}

@media (max-width: 1299px) {
   .manager-1 .wrap {
      padding: 0;
   }
   .manager-1 .text-wrap {
      padding-left: 3rem;
      padding-top: 3rem;
   }
   .manager-1 .avatar-wrap {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 350px;
      flex: 0 0 350px;
   }
   .manager-1 .text-wrap .header h2 {
      margin-right: -2rem;
   }
}

@media (max-width: 1153px) {
   .manager-1 .text-wrap {
      max-width: 380px;
      -webkit-box-flex: 1;
      -ms-flex: 1 0 380px;
      flex: 1 0 380px;
   }
   .manager-1 .text-wrap .header h2 {
      font-size: 2.2rem;
      margin-right: -1rem;
   }
}

@media (max-width: 1023px) {
   .manager-1 .left-wrap {
      display: block;
   }
   .manager-1 .text-wrap {
      height: auto;
   }
   .manager-1 .text-wrap .header h2 {
      margin-right: 0rem;
   }
   .manager-1 .avatar-wrap {
      max-width: 350px;
      margin: 0;
      padding-left: 3rem;
      display: none;
   }
   .manager-1 .text-wrap .manager-label {
      position: absolute;
      bottom: 5rem;

      display: none;
   }
   .manager-1 .text-wrap .manager-label div {
      position: relative;
      max-width: -webkit-max-content;
      max-width: -moz-max-content;
      max-width: max-content;
      margin: 0 0 0 auto;
   }
   .manager-1 .text-wrap .manager-label div::before {
      content: "";
      -webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
      box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
      background: #fff;
      height: 140%;
      position: absolute;
      z-index: -1;
      right: -0.8rem;
      left: -0.8rem;
      -webkit-transform: skewX(-10deg);
      -ms-transform: skewX(-10deg);
      transform: skewX(-10deg);
      top: -20%;
      border-radius: 3px;
   }
   .manager-1 .text-wrap .manager-label .position {
      font-size: 0.8rem;
      font-weight: 300;
      font-weight: var(--f1w);
      color: var(--gray-text);
      margin-top: 8px;
   }
}

@media (max-width: 767px) {
   .manager-1 .wrap {
      display: block;
   }
   .manager-1 .text-wrap {
      padding: 2rem;
      padding-bottom: 0rem;
      max-width: 100%;
      margin-bottom: 3rem;
   }
   .manager-1 .text-wrap .header h2 {
      font-size: 2rem;
   }
   .manager-1 .text-wrap .manager-label {
      right: 2rem;
      left: 2rem;
      bottom: 3rem;
   }
   .manager-1 .text-wrap .manager-label div {
      font-size: 0.9rem;
   }
}

@media (max-width: 499px) {
   .manager-1 .text-wrap .header h2 {
      font-size: 1.8rem;
   }
}

/*
	==================================================
	Без менеджера
	==================================================
*/
#no-manager {
   background: var(--gray);
   color: var(--btn_color_text);
   padding: 3rem 0;
}
#no-manager .wrap {
   display: flex;
   align-items: center;
   justify-content: space-between;
}
#no-manager .header {
   max-width: 450px;
}
#no-manager .header h2 {
   margin-top: 0rem;
}
#no-manager .header h2 ~ p {
   margin: -1rem 0 0rem;
   color: var(--btn_color_text);
}
#no-manager .button {
   margin-top: 0rem;
}

/*
	==================================================
	Форма
	==================================================
*/
.form-wrap {
   -webkit-box-flex: 1;
   -ms-flex: 1 0 auto;
   flex: 1 0 auto;
   margin-top: 0;
   max-width: 380px;
   padding: 0 2.5rem 2.5rem;
   z-index: 1;
   border-radius: 6px;
   -webkit-box-shadow: 0 15px 40px -5px var(--color_30);
   box-shadow: 0 15px 40px -5px var(--color_30);
   background: #fff;
   max-width: 380px;
   color: var(--dark);
}
.form-wrap.error404 {
   margin: 2.5rem 0;
}
.form-wrap .form-header {
   margin-bottom: 2rem;
}
.form-wrap .form-head {
   position: relative;
   color: #fff;
   background: var(--color);
   margin: 0 -2.5rem 1rem;
   padding: 2rem 2.5rem;
   border-top-left-radius: 6px;
   border-top-right-radius: 6px;
   overflow: hidden;
   font-weight: normal;
   font-weight: var(--f1w);
}
.form-wrap .button {
   margin: 1.25rem 0 1.5rem;
}
.form .form-head {
   line-height: 1.2;
   font-size: 1.5rem;
   font-weight: var(--f1ws);
   margin-bottom: 1rem;
}
.form-desk {
   font-weight: normal;
   font-weight: var(--f1w);
   font-size: 1rem;
   margin: 1rem 0 2rem;
}
.form-group {
   position: relative;
   margin: 3rem auto 1.25rem;
   background: #eef2f7;
   background: var(--light);
   border: 1px solid #ececec;
}
.border-circle .form-group {
   border-radius: 6px;
}
.dark_theme .form-group {
   background: #2a2929;
   border: 1px solid #4e4e4e;
}
.form-group label small {
   font-weight: normal;
   font-weight: var(--f1w);
}
.form-group > select {
   max-width: 100%;
   width: 100%;
   background-color: #f2f2f2;
   border: none;
   border-radius: 7px;
   margin: 0;
   padding: 0.8rem 1rem;
   height: auto;
   -webkit-box-shadow: none;
   box-shadow: none;
   color: #6c7180;
   font-size: 1rem;
   font-family: "Montserrat", sans-serif;
}
.form .phone {
   border-top: 1px solid #ececec;
   margin-top: 1rem;
   padding-top: 1rem;
   font-size: 0.9rem;
}
.form .phone .phone-content {
   font-size: 1.125rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/

@media (max-width: 1535px) {
   .manager-1 .form-wrap {
      max-width: 350px;
   }
}

@media (max-width: 1153px) {
   .manager-1 .form-wrap {
      max-width: 300px;
      padding: 0 2rem 2rem;
   }
   .manager-1 .form-wrap .form-head {
      margin: 0 -2rem 1rem;
      padding: 1.5rem 2rem;
   }
}

@media (max-width: 767px) {
   .manager-1 .form-wrap {
      max-width: 350px;
      margin: 0 auto;
      margin-top: 0;
   }
}

/*
	==================================================
	Подвал
	==================================================
*/
#footer {
   position: relative;
   background: var(--dark);
   padding: 2rem 0;
   color: #fff;
   font-size: 0.9rem;
   font-weight: 300;
   font-weight: var(--f1w);
   z-index: 2;
}
#footer .col {
   margin: 1.5rem 0;
}
#footer .footer-logo {
   max-width: 200px;
   margin: 0 auto;
}
#footer .footer-logo.no-logo img {
   -webkit-filter: contrast(0.01);
   filter: contrast(0.01);
}
#footer .footer-head {
   text-transform: uppercase;
   font-weight: bold;
   font-weight: var(--f1wb);
   margin-bottom: 1rem;
   letter-spacing: 1px;
}
#footer .main {
   padding-left: 4rem;
}
#footer .column-2 {
   column-count: 2;
}
#footer .descriptor {
   margin-top: 1rem;
   line-height: 1.3;
}
#footer .copy {
   display: inline-block;
   margin-top: 1rem;
}
#footer .phone-content {
   font-weight: bold;
   font-weight: var(--f1wb);
   font-size: 1.125rem;
   margin-bottom: 5px;
   display: inline-block;
}
#footer .phone-content:hover {
   color: #fff;
}
#footer .link {
   color: #fff;
   border-bottom: 1px dashed;
   display: inline-block;
   width: -webkit-max-content;
   width: -moz-max-content;
   width: max-content;
}
#footer .link:hover {
   border-bottom: 1px dashed transparent;
}
#footer a[href^="mailto:"] {
   font-weight: 500;
   font-weight: var(--f1ws);
}
#footer li[itemprop="name"] {
   display: none;
}
#footer li[itemprop="telephone"] {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-orient: vertical;
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
   margin-bottom: 1rem;
}
#footer .social .soc svg {
   fill: rgba(255, 255, 255, 0.3);
}
#footer .social .soc a:hover svg {
   fill: var(--color);
}

#footer-2 {
   position: relative;
   background: var(--dark);
   padding: 1rem 0;
   color: rgba(255, 255, 255, 0.5);
   font-size: 0.65rem;
   font-weight: 300;
   font-weight: var(--f1w);
   letter-spacing: 0.5px;
}
#footer-2::before {
   content: "";
   position: absolute;
   background: rgba(0, 0, 0, 0.2);
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1153px) {
   #footer .main {
      padding-left: 3rem;
   }
}

@media (max-width: 1023px) {
   #footer .main {
      padding-left: 1rem;
   }
   #footer .col:nth-child(1) {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
   }
   #footer .col:nth-child(2) {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
   }
   #footer .col:nth-child(3) {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
      padding-left: 2rem;
   }
   #footer .col:nth-child(4) {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
      padding-left: 2rem;
   }
}

@media (max-width: 767px) {
   #footer .col:nth-child(1) {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
   }
   #footer .col:nth-child(2) {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
   }
   #footer .col:nth-child(3) {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
   }
   #footer .col:nth-child(4) {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
   }
   .footer-menu .menu .current-menu-item a {
      padding: 6px 20px 6px 10px;
   }
}

@media (max-width: 499px) {
   #footer .col:nth-child(1) {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 4;
      order: 4;
   }
   #footer .col:nth-child(2) {
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 1;
      order: 1;
   }
   #footer .col:nth-child(3) {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 2;
      order: 2;
      padding-left: 0.5rem;
   }
   #footer .col:nth-child(4) {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 3;
      order: 3;
      padding-left: 0.5rem;
   }
}

/*
	==================================================
	Форма
	==================================================
*/

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1299px) {
   .form-style-1 .form-wrap .form-head {
      margin: 0 -1.5rem 2rem;
      padding: 1rem 1.5rem;
   }
   .form-style-1 .form-wrap {
      padding: 0 1.5rem 1rem;
      margin-top: 3rem;
   }
}

@media (max-width: 1153px) {
   .form-style-1 .form-wrap {
      padding: 0 3rem 3rem;
   }
   .form-style-1 .form-wrap .form-head {
      margin: 0 -3rem 3rem;
      padding: 2rem 3rem;
   }
}

@media (max-width: 1023px) {
   .form-style-1 .form-wrap {
      padding: 0 2rem 1rem;
      margin-top: 3rem;
   }
   .form-style-1 .form-wrap .form-head {
      margin: 0 -2rem 2rem;
      padding: 2rem 2rem;
   }
}

@media (max-width: 499px) {
   .form-style-1 .form .form-header {
      line-height: 1.2;
      margin: 0px;
      font-size: 1.5rem;
   }
}

/*
	==================================================
	Спойлер
	==================================================
*/
.spoilers {
   counter-reset: number;
}
.spoilers-count {
   column-count: 2;
}
.spoiler {
   position: relative;
   margin-bottom: 1rem;
   display: inline-block;
   width: 100%;
}
.spoiler-head {
   position: relative;
   padding: 1.25rem 5rem 1.25rem 2rem;
   font-size: 1.125rem;
   cursor: pointer;
   border-radius: 7px;
   background: var(--light);
   color: var(--dark);
}
.spoiler:first-child .spoiler-head {
   border-top: 0;
}
.dark_theme .spoiler-head {
   background: rgb(255 255 255 / 10%);
   color: #fff;
}
.spoiler-head .spoiler-btn {
   position: absolute;
   right: 2rem;
   top: 50%;
   transform: translateY(-50%);
   width: 16px;
   height: 16px;
}
.spoiler-head .spoiler-btn::before {
   content: "";
   position: absolute;
   width: 2px;
   height: 16px;
   background: var(--color);
   top: 0;
   right: 7px;
   transition: all 0.3s ease;
}
.spoiler-head .spoiler-btn::after {
   content: "";
   position: absolute;
   width: 16px;
   height: 2px;
   background: var(--color);
   top: 7px;
   right: 0;
   transition: all 0.3s ease;
}
.spoiler-content {
   padding: 1.25rem 2rem 0.5rem 5rem;
   font-weight: 300;
   font-weight: var(--f1w);
   font-size: 1rem;
   display: none;
}
.spoiler:hover .spoiler-head,
.spoiler.active .spoiler-head {
   color: var(--color);
}
.spoiler .spoiler-head h3 {
   position: relative;
   font-size: 1.125rem;
   margin: 0;
   padding-left: 3rem;
}
.spoiler .spoiler-head h3::after {
   position: absolute;
   content: counter(number, decimal-leading-zero) ".";
   counter-increment: number;
   top: 0;
   left: 0px;
   color: var(--color);
   font-family: var(--f2);
   font-weight: var(--f2w);
}
.spoiler.active .spoiler-head .spoiler-btn::before,
.spoiler.active .spoiler-head .spoiler-btn::after {
   background: var(--dark);
   transform: rotate(45deg);
}
.spoiler.active .spoiler-content {
   display: block;
}

.spoiler_mini {
}
.spoiler_mini-head {
   display: inline-block;
   color: var(--color);
   border-bottom: 1px dashed;
   cursor: pointer;
}
.spoiler_mini-head:hover {
   border-bottom-color: transparent;
}
.spoiler_mini-desc {
   display: none;
}
.spoiler_mini.active .spoiler_mini-desc {
   display: block;
}
.spoiler_mini.active .spoiler_mini-head {
   display: none;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1023px) {
   .spoilers-count {
      column-count: 1;
   }
}
@media (max-width: 767px) {
   .spoiler-content {
      padding: 1.25rem 2rem 0.5rem 2rem;
   }
   .spoiler-head {
      line-height: 1.3;
   }
}

@media (max-width: 499px) {
   .spoiler-content {
      padding: 1rem 0rem 0.5rem 0rem;
   }
   .spoiler-head {
      font-size: 1rem;
   }
}

/*
	==================================================
	Филиалы
	==================================================
*/
#offices {
}
#offices h2 {
   font-size: 2.5rem;
}
#offices .map {
   position: relative;
   min-height: 500px;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1023px) {
   #offices .map {
      min-height: 350px;
      margin-top: 2rem;
   }
}

/*
	==================================================
	Клиенты
	==================================================
*/
.logos-row .container-fluid {
   max-width: 1200px;
}
.logos-row .items {
   display: flex;
   flex-wrap: wrap;
}
.logos-row .item {
   flex: 1 0 calc(100% / var(--logo_count));
   max-width: calc(100% / var(--logo_count));
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
   border-bottom: 1px solid rgba(0, 0, 0, 0.1);
   border-right: 1px solid rgba(0, 0, 0, 0.1);
   padding: 2rem 2rem;
   flex-wrap: wrap;
   background: transparent; /* было #fff */
   min-height: 6rem;
}
.logos-row .items.logo-col-5 .item:nth-child(5n) {
   border-right: 0;
}
.logos-row .items.logo-col-5 .item:nth-last-child(-n + 5) {
   border-bottom: 0;
}
.logos-row .items.logo-col-4 .item:nth-child(4n) {
   border-right: 0;
}
.logos-row .items.logo-col-4 .item:nth-last-child(-n + 4) {
   border-bottom: 0;
}
.logos-row .items.logo-col-3 .item:nth-child(3n) {
   border-right: 0;
}
.logos-row .items.logo-col-3 .item:nth-last-child(-n + 3) {
   border-bottom: 0;
}
.logos-row .item .logo img {
   /* нужно ли height 2 rem. Из-за него картинка не в полный рост */
   /* max-height: 2rem; */
   max-width: 100%;
   display: block;
   margin: 0 auto;
}
.logos-row .item .desc {
   margin-top: 1rem;
   line-height: 1.3;
   font-size: 0.8rem;
   color: var(--gray);
   width: 100%;
}
.logos-row .item .desc p {
   margin: 0;
}
.logos-row .slider .slide {
   height: 9rem;
   display: flex;
   align-items: center;
   border-right: 1px solid rgba(0, 0, 0, 0.1);
   padding: 1px;
}
.logos-row .slider .item {
   width: 13rem;
   border: 0;
}
.logos-row .slider .item .logo img {
   max-height: 4rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1153px) {
   .logos-row .items .item {
      padding: 2rem;
   }
   .logos-row .item .logo img {
      max-height: 40px;
      max-width: 120px;
   }
}

@media (max-width: 1023px) {
   .logos-row .items .item {
      padding: 1rem 2rem;
      flex: 1 0 33.333%;
      max-width: 33.333%;
      border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
      border-right: 1px solid rgba(0, 0, 0, 0.1) !important;
   }
   .logos-row .item:nth-child(3n) {
      border-right: 0 !important;
   }
   .logos-row .item:nth-last-child(-n + 3) {
      border-bottom: 0 !important;
   }
}

@media (max-width: 767px) {
   .logos-row .items .item {
      padding: 0rem 1.5rem;
      flex: 1 0 50%;
      max-width: 50%;
      border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
      border-right: 1px solid rgba(0, 0, 0, 0.1) !important;
   }
   .logos-row .item:nth-child(2n) {
      border-right: 0 !important;
   }
   .logos-row .item:nth-last-child(-n + 2) {
      border-bottom: 0 !important;
   }
   .logos-row .item {
      padding: 0.5rem 1rem;
   }
   .logos-row .item .logo {
      width: 120px;
   }
   .logos-row .item .logo img {
      max-height: 25px;
   }
   .logos-row .slider .item {
      height: 80px;
   }
}

@media (max-width: 499px) {
   .logos-row .item .logo img {
      max-height: 20px;
   }
}

/*
	==================================================
	Технические работы
	==================================================
*/
#warning {
   padding: 1.5rem 0;
   background: #af7401;
   background-image: repeating-linear-gradient(
      -45deg,
      rgb(0 0 0 / 0) 0,
      rgb(0 0 0 / 0) 40px,
      rgb(0 0 0 / 0.1) 40px,
      rgb(0 0 0 / 0.1) 80px
   );
   color: #fff;
}
#warning .text {
   max-width: 550px;
   margin: auto;
}
#warning h3 {
   margin: 2rem 0;
}
#warning a {
   color: #fff;
   border-bottom: 1px solid rgb(255 255 255 / 30%);
}
#warning a:hover {
   color: #fff;
   border-bottom-color: transparent;
}
#warning ul {
   margin-top: 1.5rem;
}
#warning li {
   position: relative;
   padding-left: 2rem;
   margin: 0.5rem 0;
}
#warning li::before {
   content: "";
   position: absolute;
   height: 1px;
   width: 1rem;
   background: #fff;
   top: 50%;
   left: 0;
}

/*
	====================================================================================================
	СТИЛИ ЗАГОТОВОК СТРАНИЦ
	====================================================================================================
*/

/*
	==================================================
	Контакты
	==================================================
*/
#contacts {
   padding: 0;
}
#contacts.contacts-page {
   padding: 4rem 0 0;
}
#contacts.contacts-page h2 {
   padding-top: 1.5rem;
   border-top: 1px solid #ececec;
   margin-top: 0.5rem;
}
.contact-section #contacts .header {
   font-size: 2.5rem;
   margin: 0 0 2.5rem;
   font-weight: var(--f2w);
   font-family: var(--f2);
}
#contacts .bor {
   margin: 0;
}
#contacts.contacts-page .bor {
   border-top: 1px solid #ececec;
}
.dark_theme #contacts.contacts-page .bor {
   border-top-color: var(--color_bg_1);
}
#contacts .left-wrap {
   padding-left: 6rem;
}
#contacts .left {
   max-width: 675px;
   margin: 3rem 0 0 auto;
   padding: 0 2rem 4rem 0;
}
#contacts .image {
   margin-bottom: 2rem;
}
#contacts .main-list {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   pointer-events: auto;
}
#contacts .left .main-list > li {
   margin-bottom: 1.5rem;
   font-size: 1rem;
   font-weight: 500;
   font-weight: var(--f1ws);
   flex: 45%;
   -webkit-box-flex: calc(50% - 1rem);
   -ms-flex: calc(50% - 1rem);
   flex: calc(50% - 1rem);
   width: 50%;
   margin-right: 1rem;
}
#contacts .left .main-list li.soc-block {
   max-width: 50%;
   margin-bottom: 0;
}
#contacts li .head,
#contacts li strong {
   color: #7d7d7d;
   font-size: 0.7rem;
   display: block;
   text-transform: uppercase;
   margin-bottom: 4px;
   letter-spacing: 1px;
}
.dark_theme #contacts li .head,
.dark_theme #contacts li strong {
   color: #ccc;
}
#contacts li .head {
   font-weight: 300;
   font-weight: var(--f1w);
}
#contacts .note {
   margin-top: 2rem;
}
#contacts #contact_coordinate {
   display: flex;
   align-items: center;
   cursor: pointer;
   color: var(--color);
   position: relative;
   transition: all 0.3s ease;
}
#contacts #contact_coordinate svg {
   width: 1.25rem;
   height: 1.25rem;
   fill: var(--gray);
   margin-left: 0.75rem;
   transition: all 0.3s ease;
}
#contacts #contact_coordinate:hover,
#contacts #contact_coordinate:hover svg,
#contacts a:hover {
   transform: translateY(-3px);
}
.dark_theme #contacts #contact_coordinate:hover,
.dark_theme #contacts a:hover {
   color: #fff;
   filter: brightness(1);
}
.dark_theme #contacts #contact_coordinate:hover svg {
   fill: #fff;
   filter: brightness(1);
}
#contacts #contact_coordinate .message {
   position: absolute;
   right: 25%;
   top: -3rem;
   padding: 0.5rem 1rem;
   font-size: 1rem;
   font-weight: 500;
   font-weight: var(--f1w);
   font-weight: var(--f1w);
   line-height: 1.2;
   background: rgba(0, 0, 0, 0.85);
   z-index: 10;
   color: #f5f6f8;
   font-size: 0.8rem;
   max-width: 80%;
   border-radius: 4px;
   box-shadow: 0 5px 20px rgb(0 0 0 / 30%);
   pointer-events: none;
   opacity: 0;
   transition: all 0.2s ease;
}
#contacts #contact_coordinate .message::before {
   content: "";
   position: absolute;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 0.75rem 1rem 0 0;
   border-color: rgba(0, 0, 0, 0.85) transparent transparent;
   right: 1rem;
   bottom: -0.75rem;
}
#contacts #contact_coordinate:hover #coordinate-hover:not(.disable),
#contacts #contact_coordinate:hover #coordinate-copy.active {
   opacity: 1;
   top: -2.5rem;
}
#contacts .navigator_link {
   margin-top: 0.25rem;
   display: inline-block;
}

.map-wrapper {
   width: 99.5%;
   height: 100%;
   min-height: 400px;
   position: absolute;
   left: 0;
   top: 0;
}

#contacts.contacts-section h2 {
   font-size: 2rem;
   margin: 0 0 2rem;
}
#contacts.contacts-section .container-fluid {
   pointer-events: none;
}
#contacts.contacts-section .wrap {
   position: relative;
   background: #fff;
   padding: 2.5rem;
   padding-bottom: 2rem;
   border-radius: 0.5rem;
   overflow: hidden;
   box-shadow: 0 15px 30px rgb(0 0 0 / 0.15);
}
#contacts.contacts-section .wrap::before {
   content: "";
   position: absolute;
   left: 1rem;
   right: 1rem;
   top: 1rem;
   bottom: 1rem;
   border: 1px solid #ddd;
   border-radius: 7px;
}
#contacts.contacts-section .main-list > li {
   width: 100%;
   margin-bottom: 1rem;
}
#contacts.contacts-section .main-list .social {
   margin: 0;
}

#contacts .offices {
   margin-bottom: 2rem;
}
#contacts .header-offices {
   font-size: 2rem;
   margin: 2rem 0;
   font-weight: var(--f2w);
   font-family: var(--f2);
}
#contacts .offices-wrap {
   display: flex;
   flex-wrap: wrap;
}
#contacts .office-item {
   flex: 1 0 calc(100% / var(--count-office));
   max-width: calc(100% / var(--count-office));
   line-height: 1.3;
   padding-right: 3rem;
   font-size: 0.9rem;
}
#contacts .office-item-wrap {
   margin-bottom: 2rem;
   padding-bottom: 2rem;
   border-bottom: 1px solid #ddd;
}
#contacts .office-item-wrap div {
   margin: 0.5rem 0;
}
#contacts .office-item .department {
   font-size: 1.125rem;
   font-weight: var(--f1ws);
   margin-bottom: 1.5rem;
   color: var(--color2);
}
#contacts .office-item .find {
}
#contacts .office-item .adress {
   font-weight: var(--f1ws);
}
#contacts .office-item .phone {
   margin-top: 1rem;
}
#contacts .office-item .email {
   margin-top: 1rem;
}
#contacts .office-item .mode {
}
#contacts .office-item .coordinate {
}
#contacts .office-item .image {
   margin-top: 1rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1399px) {
   #contacts .left {
      margin: 3rem 0 0 auto;
      padding: 0 1rem 4rem 0;
   }
}

@media (max-width: 1023px) {
   .contact-section #contacts .header {
      font-size: 2rem;
      margin: 0 0 2rem;
   }
   #contacts.contacts-page .bor {
      border-top: 0;
      margin: 0;
   }
   #contacts .right-wrap {
      padding: 0rem;
   }
   #contacts .left-wrap {
      padding: 0 2.5rem;
   }
   #contacts .left {
      margin: 0rem 0 0 auto;
      padding: 0 0rem 3rem 0;
      max-width: none;
   }
   #contacts .left .header {
      font-size: 1.75rem;
      font-weight: var(--f1ws);
      margin-bottom: 1.5rem;
   }
   .map-wrapper {
      height: 350px;
      position: relative;
   }
}

@media (max-width: 767px) {
   .contact-section #contacts .header {
      font-size: 2rem;
      margin: 0 0 1.5rem;
   }
   #contacts .left-wrap {
      padding: 0 2rem;
   }
}

@media (max-width: 499px) {
   #contacts {
      padding: 2rem 0 0;
   }
   .contact-section #contacts .header {
      font-size: 1.75rem;
   }
   #contacts .left-wrap {
      padding: 0 1.5rem;
   }
   #contacts .left .main-list li {
      -ms-flex: 100%;
      flex: 100%;
      width: 100%;
      margin-right: 0rem;
   }
   #contacts .left .main-list li.soc {
      flex: 0 1 1.75rem;
      width: 1.75rem;
      margin-right: 1rem;
   }
   #contacts .right-wrap {
      margin-right: 3rem;
   }
}

/*
	==================================================
	Родительская
	==================================================
*/
#pages,
#privacy {
   padding: 4rem 0;
}
#pages .item {
   background-size: cover;
   background-position: center;
   padding: 3rem;
   display: block;
   border: 0;
   overflow: hidden;
   margin-bottom: 2rem;
}
.border-circle #pages .item {
   border-radius: 0.5rem;
}
#pages .item:hover {
   -webkit-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.15);
   box-shadow: 0 15px 20px rgba(0, 0, 0, 0.15);
   -webkit-transform: translateY(-5px);
   -ms-transform: translateY(-5px);
   transform: translateY(-5px);
}
#pages .item .image {
   display: none;
}
#pages .item .body {
   color: var(--dark);
   width: 55%;
   font-weight: 300;
   font-weight: var(--f1w);
}
.dark_theme #pages .item .body {
   color: #fff;
}
#pages .item .body .title h2 {
   margin-top: 0;
}
#pages .item.hero-white .body {
   color: #fff;
}
#pages .item .title p:nth-of-type(1) {
   font-size: 1.125rem;
}
#pages .item .desc {
   font-size: 0.9rem;
   font-weight: 300;
   font-weight: var(--f1w);
   margin-top: 1rem;
}
#pages .item .btn span {
   padding: 1rem 2rem;
}
#pages .item .button {
   margin-top: 2rem;
}
#privacy ol li::before {
   visibility: hidden;
   font-size: 0;
}
#privacy ol li li::before {
   visibility: visible;
   font-size: 100%;
   position: absolute;
   left: 0;
}

@media (max-width: 767px) {
   #pages .item {
      background-image: none !important;
      padding: 0;
      box-shadow: 0 15px 20px rgb(0 0 0 / 15%);
      transform: none;
   }
   #pages .item .body {
      padding: 2rem;
   }
   #pages .item .image {
      display: block;
   }
   #pages .item .body {
      color: var(--dark);
      width: 100%;
      font-weight: 300;
      font-weight: var(--f1w);
   }
}

@media (max-width: 499px) {
   #pages,
   #privacy {
      padding: 3rem 0;
   }
   #pages .item .body .title h2 {
      font-size: 1.75rem;
   }
   #pages .item .body .title h3 {
      font-size: 1.125rem;
   }
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/

/*
	==================================================
	Рейтинг
	==================================================
*/
.ratings {
   position: relative;
   width: 130px;
   text-align: right;
   color: var(--dark);
   font-weight: var(--f1ws);
}
.ratings-stars {
   position: absolute;
   left: 0;
   background: url(../i/rating_off.svg) repeat-x left;
   background-size: auto 100%;
   width: 94px;
   height: 18px;
}
.ratings-stars-active {
   background: url(../i/rating_on.svg) repeat-x left;
   background-size: auto 100%;
   height: 100%;
}
.ratings.micro {
   width: 85px;
   font-size: 0.7rem;
}
.ratings.micro .ratings-stars {
   width: 63px;
   height: 12px;
}

/*
	==================================================
	Отзывы
	==================================================
*/
#reviews {
}
#reviews .item {
}
#reviews .name {
   font-weight: var(--f1ws);
   margin-top: 1rem;
}

/*
	==================================================
	Блог
	==================================================
*/

#blog-hero {
   margin: 0rem 0;
   padding: 0;
   background: center no-repeat;
   background-size: cover;
}
#blog-hero::after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   background: linear-gradient(0deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6));
   background: rgba(0, 0, 0, 0.65);
}
#blog-hero .container-fluid {
   min-height: 30vw;
   align-items: center;
   height: 100%;
   display: flex;
}
#blog-hero .row {
   width: 100%;
}
#blog-hero .left {
   font-weight: 300;
   font-size: 1.125rem;
   color: #fff;
   padding: 5rem 0;
}
#blog-hero .left.ct {
   text-align: center;
}
#blog-hero .left h1 {
   font-weight: 300;
   font-size: 3rem;
   line-height: 1.1;
   color: #fff;
}

#blog .wp-block-image {
   margin: 3rem auto;
   text-align: center;
   background: #f5f5f5;
}
#blog .wp-block-image img {
   max-height: 500px;
}
#blog .article-wrap .list {
   border-bottom: 1px solid #f1f1f1;
   margin-bottom: 2rem;
   padding-bottom: 1rem;
}
.dark_theme #blog .article-wrap .list {
   border-color: rgb(255 255 255 / 20%);
}
#blog .article-wrap p {
   line-height: 1.6;
   margin: 1.5rem 0;
}
#blog .info-block {
   display: flex;
   justify-content: space-between;
   align-items: center;
   border-bottom: 1px solid;
   border-color: #f1f1f1;
   padding-bottom: 2rem;
   margin-bottom: 3rem;
   color: #999;
}
.dark_theme #blog .info-block {
   border-color: rgb(255 255 255 / 20%);
}
#blog .info-block .info,
#blog .info-block .comments {
   display: flex;
}
#blog .info-block .date {
   margin-right: 2rem;
}
#blog .info-block .autor {
}
#blog .info-block .comments > div {
   margin-right: 2rem;
}
#blog .detail {
   position: relative;
   padding: 0 2.5rem 0 2rem;
}
#blog .detail svg {
   position: absolute;
   left: 0rem;
   top: 3px;
   width: 1rem;
   height: 1rem;
   fill: #ccc;
}
#blog .autor-block {
   display: flex;
   flex-wrap: wrap;
   background: #f5f5f5;
   padding: 3rem;
   margin: 2rem 0;
}
.dark_theme #blog .autor-block {
   background: var(--color_bg_1);
   color: #fff;
}
#blog .autor-block .autor-info {
   text-align: center;
   width: 180px;
   padding-right: 40px;
}
#blog .autor-block .autor-info .name {
   margin-top: 1rem;
   font-weight: var(--f1ws);
   font-size: 0.9rem;
}
#blog .autor-block .autor-info .avatar {
   height: 8rem;
}
#blog .autor-block .autor-info .avatar img {
   clip-path: circle(4rem at 4rem 4rem);
   width: 8rem;
   max-height: none;
}
#blog .autor-block .list {
   width: calc(100% - 180px);
}
#blog .autor-block .list li a:hover {
   color: var(--dark);
}
.dark_theme #blog .autor-block .list li a:hover {
   color: #fff;
}
#blog .autor-block .list .header {
   font-size: 1.25rem;
   line-height: 1.2;
   margin: 0rem 0 1rem;
   font-weight: bold;
}
#blog .view {
   margin: 0 !important;
   position: relative;
   padding-left: 2rem;
}
#blog .view svg {
   position: absolute;
   width: 1.5rem;
   height: 1.25rem;
   left: 0;
   fill: #ccc;
}
#blog .info_content {
   display: flex;
   justify-content: space-between;
   color: var(--gray);
   font-size: 0.8rem;
   margin: 1rem 0;
}
.archive #blog .item {
   display: block;
   margin: 1rem 0 3rem;
}
#blog .item .title {
   font-weight: var(--f1ws);
   font-size: 1.125rem;
   line-height: 1.3;
}
#blog .item:hover {
   transform: translateY(-5px);
}
#blog .item:hover .title {
   color: var(--dark);
}
.dark_theme #blog .item:hover .title {
   color: #fff;
}
#blog .gallery-grid {
   margin: 2rem 0;
}
#blog .gallery-grid .image {
   margin-bottom: 2rem;
}
#blog {
   background: #fff;
   color: var(--dark);
}
#blog .desc {
   font-size: 1.25rem;
   margin-bottom: 2rem;
   border: 0;
}
#blog .main-image {
   margin: 3rem 0 2rem;
}
#blog .ya-share2 {
   position: sticky;
   top: calc(var(--header_height) + 2rem);
}
#blog .ya-share2__list {
   display: flex;
   flex-direction: column;
   align-items: center;
}
#blog .ya-share2__item {
   margin-bottom: 0.5rem;
}
#blog .ya-share2__icon {
   height: 2rem;
   width: 2rem;
   background-size: 1.75rem;
}
#blog .autor-block {
   position: sticky;
   top: calc(var(--header_height) + 2rem);
   margin: 0;
   width: 100%;
}
#blog .autor-block .list {
   width: 100%;
}
#blog .anycomment p {
   font-size: 1rem;
   line-height: 1.4;
   margin: 0.75rem 0;
}
#blog .mob {
   width: 100%;
}
#blog .intro {
   color: var(--dark);
   margin-top: 1rem;
}
#blog .article.list {
   margin-bottom: 0;
   padding-bottom: 0;
}
#blog .article.list img {
   border-radius: 1rem;
}
#blog .article.list img ~ img {
   margin-top: 1rem;
}
#blog .article sup em {
   color: var(--gray);
}
.dark_theme #blog .autor-block {
   background: var(--light);
   color: var(--dark);
}
.dark_theme #blog .autor-block a {
   color: var(--color2);
}
.dark_theme #blog .item .title {
   color: var(--dark);
}
.dark_theme #blog .item:hover .title {
   color: var(--color2);
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 767px) {
   #blog-hero .left {
      max-width: 100%;
   }
   #blog .info-block {
      display: block;
      font-size: 0.9rem;
   }
   #blog .info-block .info {
      margin-bottom: 0.5rem;
   }
   #blog .autor-block .autor-info {
      display: none;
   }
   #blog .autor-block .list {
      width: 100%;
   }
}

@media (max-width: 499px) {
   #blog-hero .left h1 {
      font-size: 2rem;
   }
   #blog .info-block {
      padding-bottom: 1rem;
      margin-bottom: 2rem;
   }
   #blog .info-block .info {
      display: block;
   }
   #blog .article p {
      font-size: 1rem;
      line-height: 1.5;
      margin: 1.25rem 0;
   }
}

/*
	==================================================
	Твиты
	==================================================
*/
#twit {
}
#twit .twits {
   column-count: 2;
}
#twit .twits .wrap {
   display: inline-block;
   margin-bottom: 1rem;
   width: 100%;
}
#twit .twits .item {
   display: flex;
   border: 1px solid #ddd;
}
#twit .twits .date {
   font-weight: var(--f1wb);
   color: var(--color);
   font-size: 1.5rem;
   margin-right: 1rem;
   background: var(--light);
   padding: 1rem;
}
#twit .twits .desc {
   padding: 1rem;
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 1023px) {
   #twit .twits {
      display: flex;
   }
   #twit .twits {
      display: flex;
      flex-wrap: nowrap;
      overflow: auto;
      -webkit-overflow-scrolling: touch;
   }
   #twit .twits .wrap {
      flex: 0 0 70%;
      max-width: 70%;
      margin-bottom: 0;
      margin-right: 1rem;
   }
   #twit .twits .wrap:last-child {
      margin-right: 0rem;
   }
}
@media (max-width: 767px) {
   #twit .twits .item {
      display: block;
   }
   #twit .twits .date {
      font-size: 1.125rem;
      margin-right: 0;
      padding: 0.5rem 1rem;
   }
}

/*
	==================================================
	Другие страницы
	==================================================
*/
#similar {
}
#similar .header {
   font-size: 2rem;
   color: var(--dark);
   font-family: var(--f2);
   font-weight: bold;
   font-weight: var(--f2w);
   margin: 0 0 2rem;
   line-height: 1.2;
}
#similar .row {
   margin: 0rem -0.5rem;
}
#similar .item {
   position: relative;
   display: block;
   border-radius: 5px;
   margin: 0.5rem -0.5rem;
   overflow: hidden;
}
#similar .image {
   position: absolute;
   width: 100%;
   top: 50%;
   transform: translateY(-50%);
}
#similar .image img {
   filter: grayscale(1);
}
#similar .image::before {
   content: "";
   background: linear-gradient(45deg, var(--color), rgb(0 0 0 / 0.7));
   position: absolute;
   width: 100%;
   height: 100%;
   z-index: 1;
}
#similar .title {
   padding: 1.5rem 1.75rem;
   color: #fff;
   line-height: 1.3;
   font-weight: var(--f1w);
   position: relative;
   z-index: 1;
   font-size: 1.125rem;
   height: 100%;
   display: flex;
   align-items: center;
}
#similar .item:hover {
   transform: translateY(-5px);
   box-shadow: 0 10px 30px 0px var(--color_30);
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
@media (max-width: 767px) {
   #similar .title {
      padding: 1.125rem 1.25rem;
      font-size: 1rem;
   }
}

/*
	==================================================
	Новости
	==================================================
*/
#news {
   background: var(--light);
}
#news .item {
   position: relative;
   display: block;
   margin-bottom: 2rem;
}
#news .item .image {
   position: relative;
   overflow: hidden;
   z-index: -1;
   transition: 0.2s ease-out;
   object-fit: cover;
}
#news .item .image img {
   width: 100%;
}
#news .item .date {
   background: var(--dark);
   position: absolute;
   color: #fff;
   font-size: 13px;
   font-weight: var(--f1ws);
   padding: 3px 10px 3px 2rem;
   bottom: 1rem;
   left: 0rem;
   transition: 0.2s ease-out;
}
#news .item .title {
   position: relative;
   padding: 1rem 2rem;
   line-height: 1.3;
   font-size: 1.125rem;
   font-weight: var(--f1w);
   color: var(--dark);
   background: #fff;
   margin: -1rem 2rem 0 0;
   transition: 0.2s ease-out;
}
#news .item .title::before {
   position: absolute;
   right: 1rem;
   top: 50%;
   transform: translateY(-50%);
   display: block;
   width: 2.5rem;
   height: 2.5rem;
   border: 1px solid #fff;
   border-radius: 50%;
   background: url(../i/arrow-right_white.svg) center no-repeat;
   background-size: 15px 13px;
   content: "";
   will-change: background-position;
   opacity: 0;
}
#news .item:hover .date {
   left: 0rem;
}
#news .item:hover .title {
   padding-right: 4rem;
   color: #fff;
   background: var(--color);
}
#news .item:hover .title::before {
   opacity: 1;
   transition: opacity 0.4s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
   animation: cta-btn-arrow-hover 0.3s ease;
}

@keyframes cta-btn-arrow-hover {
   0% {
      background-position: center center;
   }

   50% {
      background-position: 50px center;
   }

   50.1% {
      background-position: 50px -50px;
   }

   50.2% {
      background-position: -50px -50px;
   }

   50.3% {
      background-position: -50px center;
   }

   100% {
      background-position: center center;
   }
}

/*
	++++++++++++++++++++++++++++++++++++++++
*/
/*
	==================================================
	Кейсы
	==================================================
*/

#cases-hero {
   color: #fff;
   display: flex;
   align-items: center;
   overflow: hidden;
   background-size: cover;
   padding-bottom: 0;
}
#cases-hero:not(.no-bg) {
   min-height: 35vw;
   padding-bottom: 4rem;
}
#cases-hero .hero__video {
   height: 100%;
   overflow: hidden;
}
#cases-hero .hero__video::before {
   content: "";
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0; /*
    background: #000;
    opacity: 0.5;*/
   background: linear-gradient(30deg, rgb(0 0 0 / 0.7), rgb(0 0 0 / 0.5));
   z-index: 1;
   pointer-events: none;
}
#cases-hero .hero__video #video-background {
   width: 100%;
   border: 0;
   outline: none;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}
#cases-hero .row {
   align-items: center;
}
#cases-hero .header {
}
#cases-hero .header p:nth-of-type(1) {
   font-size: 1.25rem;
}
#cases-hero .projects {
   position: relative;
   background: var(--dark);
   max-width: 250px;
   padding: 2rem;
   margin: 0 0 0 auto;
}
#cases-hero .projects::before {
   content: "";
   position: absolute;
   width: 5rem;
   height: 5rem;
   background: var(--dark);
   z-index: -1;
   left: -3rem;
   top: -3rem;
   filter: contrast(0.9);
   opacity: 0.8;
}
#cases-hero .projects::after {
   content: "";
   position: absolute;
   width: 3rem;
   height: 3rem;
   background: var(--dark);
   z-index: -1;
   left: -4rem;
   bottom: -2rem;
   filter: contrast(0.7);
   opacity: 0.7;
}
#cases-hero .projects .count {
   font-size: 4rem;
   font-family: var(--f2);
   font-weight: var(--f2w);
   text-align: center;
   line-height: 1.2;
}
#cases-hero .projects .text {
   text-align: center;
   text-transform: uppercase;
}
#cases-hero .projects .file {
   margin-top: 1rem;
   position: relative;
   padding-left: 3rem;
}
#cases-hero .projects .file .link {
}
#cases-hero .projects .file .link span {
   text-transform: capitalize;
}
#cases-hero .projects .file .filesize {
   font-size: 0.8rem;
   opacity: 0.5;
}
#cases-hero .projects .file svg {
   position: absolute;
   left: 0;
   top: 50%;
   width: 2rem;
   opacity: 0.2;
   transform: translateY(-50%);
}

#cases-hero-single {
   padding: 0;
   padding-top: 3rem;
   background: var(--light);
   text-align: center;
}
.dark_theme #cases-hero-single {
   background: var(--dark);
   color: #fff;
}
#cases-hero-single h1 {
   text-transform: uppercase;
   margin: 0;
}

#cases {
   background: var(--light);
}
.dark_theme #cases {
   background: var(--dark);
   color: #fff;
}
#cases .item {
   display: flex;
   background: #fff;
   color: var(--dark);
   margin-bottom: 2rem;
   min-height: 250px;
   will-change: transform;
}
#cases .image {
   display: block;
   width: 30%;
   height: 100%;
   background: no-repeat center;
   background-size: cover;
}
#cases .body {
   display: flex;
   width: 70%;
   padding: 2rem 3rem;
}
#cases .body .tags {
   font-size: 0.8rem;
   color: var(--gray);
   letter-spacing: 0.5px;
   margin-bottom: 0.5rem;
}
#cases .body .title {
   font-size: 1.5rem;
   font-family: var(--f2);
   font-weight: var(--f2wh1);
   margin-bottom: 1.5rem;
   transition: all 0.3s ease;
   line-height: 1.3;
}
#cases .body .wrap {
   width: 70%;
   flex: 1 1 70%;
}
#cases .body .work-list {
}
#cases .body .detail {
   width: 30%;
   flex: 0 0 30%;
   padding-left: 4rem;
   border-left: 1px solid #ccc;
   margin-left: 2rem;
   display: flex;
   flex-direction: column;
   justify-content: center;
}
#cases .body li {
   position: relative;
   font-size: 0.9rem;
   margin-bottom: 0.5rem;
   font-weight: var(--f1ws);
}
#cases .body li svg {
   position: absolute;
   left: -2rem;
   top: 1px;
   width: 1rem;
   height: 1rem;
   fill: #ccc;
}
#cases .body .customer {
}
#cases .body .year {
}
#cases .item:hover {
   transform: translateY(-3px);
   box-shadow: 0 10px 30px -15px rgb(0 0 0 / 0.15);
}
#cases .item:hover .title {
   color: var(--color);
}

@media (max-width: 1299px) {
   #cases .image {
      width: 27%;
   }
   #cases .body {
      width: 73%;
   }
   #cases .body .detail {
      width: 35%;
      flex: 0 0 35%;
   }
}

@media (max-width: 1023px) {
   #cases .item {
      display: block;
   }
   #cases .body {
      width: 100%;
   }
   #cases .image {
      width: 100%;
      height: 300px;
   }
   #cases .body .title {
      font-size: 1.25rem;
   }
}

@media (max-width: 767px) {
   #cases-hero .header p:nth-of-type(1) {
      font-size: 1.125rem;
      line-height: 1.4;
   }
   #cases .body {
      display: block;
      padding: 1rem 2rem;
   }
   #cases .body .wrap {
      width: 100%;
   }
   #cases .body .detail {
      width: 100%;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: left;
      margin: 2rem 0 1rem;
      padding: 0;
      border: 0;
   }
   #cases .body .detail li {
      color: var(--gray);
      font-size: 0.8rem;
   }
   #cases .body li {
      padding-left: 2rem;
      margin-right: 2rem;
   }
   #cases .body li svg {
      left: 0;
   }
   #cases .image {
      height: 250px;
   }
}

@media (max-width: 499px) {
   #cases .body {
      padding: 1rem 1rem;
   }
   #cases .body .title {
      font-size: 1.25rem;
      margin-bottom: 1rem;
   }
   #cases .body .detail {
      margin: 1.5rem 0 0rem;
   }
   #cases .image {
      height: 200px;
   }
}
/*
	========================================
	
	Каталог
	
	========================================
*/
#catalog {
}
#catalog .footer {
   margin-top: 2rem;
}
#catalog h2 {
   margin-top: 0;
}

#sorting_form {
   display: flex;
   justify-content: space-between;
   padding: 0 0.75rem;
   margin-bottom: 2rem;
}
#sorting_form .sorting_form-select {
   border: 0;
   background: transparent;
   border-bottom: 1px dashed;
   color: var(--color);
   cursor: pointer;
   margin-left: 0.5rem;
   padding: 0;
   -webkit-appearance: none;
}
#sorting_form .sort-wrap {
   display: flex;
   align-items: center;
}
#sorting_form .tags-wrap {
   display: flex;
   align-items: center;
}
#sorting_form .tags-wrap a {
   padding: 0.5rem 1rem;
   color: var(--btn_color_text);
   background: var(--btn_color_1);
   margin-right: 1rem;
}
#sorting_form .tags-wrap a.current {
   background: var(--accent);
}
#sorting_form .filter-wrap {
   display: none;
}
#sorting_form #filter-btn {
   display: flex;
   align-items: center;
   background: var(--btn_color_1);
   padding: 0.75rem 1.5rem 0.75rem 1rem;
   border-radius: 50px;
   color: var(--btn_color_text);
   visibility: hidden;
   width: fit-content;
}
#sorting_form #filter-btn svg {
   width: 1.5rem;
   height: 1.5rem;
   fill: var(--btn_color_text);
   margin-right: 0.5rem;
   flex: 1 0 1.5rem;
}
#sorting_form #filter-btn span {
   line-height: 1.2;
}

@media (max-width: 1023px) {
   #sorting_form {
      flex-wrap: wrap;
   }
   #sorting_form .tags-wrap {
      order: -1;
      width: 100%;
      margin-bottom: 1rem;
   }
   #sorting_form .filter-wrap {
      display: block;
   }
}

/*
	Фильтр
	========================================
*/
#catalog_filter {
   min-width: 250px;
}
#catalog_filter input[type="radio"] {
   display: inline-block;
}
#filterbar {
   background: #fff;
   padding: 0.5rem 1.5rem 2rem;
   width: 320px;
   flex: 1 0 320px;
   border: 1px solid #ddd;
   color: var(--dark);
   height: fit-content;
   max-height: calc(100vh - 6rem);
   overflow: auto;
   position: sticky;
   top: 2rem;
   z-index: 10;
}
#filterbar::-webkit-scrollbar {
   height: 100%;
   width: 6px;
   background-color: var(--light);
}
#filterbar::-webkit-scrollbar-track {
   background-color: var(--light);
}
#filterbar::-webkit-scrollbar-thumb {
   background-color: var(--color_30);
}
#filterbar::-webkit-scrollbar-thumb:hover {
   background-color: var(--color);
}
#filterbar .filter-block .filter-ul {
   padding: 1rem;
}
.filter_element {
   padding: 1rem 0;
   border-bottom: 1px solid #ddd;
}
.filter_element__content {
   display: none;
   flex-direction: column;
   justify-content: flex-start;
   align-items: flex-start;
   font-size: 0.9rem;
}
.filter_element.active .filter_element__content {
   display: flex;
}
.filter_element label {
   position: relative;
   width: 100%;
   cursor: pointer;
   padding: 0.25rem 0.5rem;
}
.filter_element.filter_checkbox label,
.filter_element.filter_radio label {
   padding-left: 2.25rem;
}
.filter_element label:hover {
   color: var(--color);
   background: var(--light);
}

.filter_navigation {
}

.filter_navigation .filter_element__content {
   padding-left: 0.5rem;
   margin-top: 0.5rem;
}
.filter_navigation .children {
   padding-left: 2rem;
   margin-bottom: 0.5rem;
   display: none;
}
.filter_navigation .current-cat > .children,
.filter_navigation .current-cat-ancestor > .children {
   display: block;
}
.filter_navigation ul {
   width: 100%;
}
.filter_navigation.filcol-2 ul,
.filter_navigation.filcol-3 ul {
   display: flex;
   flex-wrap: wrap;
}
.filter_navigation.filcol-2 ul li {
   flex: 1 0 50%;
   max-width: 50%;
}
.filter_navigation.filcol-3 ul li {
   flex: 1 0 33%;
   max-width: 33%;
}
.filter_navigation a {
   width: 100%;
   display: inline-block;
   position: relative;
   padding-right: 1rem;
   margin-bottom: 0.5rem;
   color: inherit;
   font-size: 0.9rem;
}
.filter_navigation a:first-letter {
   text-transform: capitalize;
}
.filter_navigation .filter_element__content > ul > .cat-item > a {
   font-weight: var(--f1ws);
   margin-bottom: 1rem;
}
.filter_navigation .filter_element__content > ul > .cat-item.has_children.active > a {
   margin-bottom: 0.5rem;
}
.filter_navigation .current-cat > a {
   color: var(--color);
   font-weight: var(--f1ws);
}
.filter_navigation a:hover {
   color: var(--color);
}
.filter_navigation:not(.click_off) .has_children > a::after {
   position: absolute;
   right: 0;
   top: 8px;
   width: 6px;
   height: 6px;
   content: "";
   box-sizing: content-box;
   border: 1px solid #000;
   border-left-color: transparent;
   border-top-color: transparent;
   will-change: transform;
   transition: transform 0.2s ease-in-out;
   transform: translate(-50%, -70%) rotate(45deg);
}
.filter_navigation .has_children.active > a::after {
   transform: translate(-50%, -10%) rotate(225deg);
}
.filter_navigation .children .current-cat:not(.has_children) > a::after {
   position: absolute;
   left: -1.5rem;
   top: 10px;
   width: 5px;
   height: 12px;
   content: "";
   box-sizing: content-box;
   border: 2px solid #50b927;
   border-left-color: transparent;
   border-top-color: transparent;
   transform: translate(-50%, -70%) rotate(40deg);
}

.filter_element.filter-price label,
.filter_element.filter_range label {
   position: relative;
   display: flex;
   justify-content: space-between;
   width: 100%;
   gap: 0.5rem;
}
.filter_element.filter-price label::before,
.filter_element.filter_range label::before {
   content: "";
   position: absolute;
   top: 50%;
   left: 50%;
   height: 1px;
   width: 0.5rem;
   background: var(--dark);
   transform: translateX(-50%);
}
.filter_element.filter-price input[type="number"],
.filter_element.filter_range input[type="number"] {
   border: 1px solid #ccc;
   border-radius: 5px;
   padding: 0.5rem;
   padding-left: 2rem;
   width: 100%;
   font-size: 0.8rem;
}
.filter_element.filter-price span,
.filter_element.filter_range span {
   position: relative;
   margin: 0;
   width: 45%;
}
.filter_element.filter-price span::before,
.filter_element.filter_range span::before {
   position: absolute;
   z-index: 1;
   left: 0.75rem;
   top: 50%;
   transform: translateY(-50%);
   color: #777;
   font-size: 0.9rem;
   line-height: 1;
}
.filter_element.filter-price .filter-price_from::before,
.filter_element.filter_range .filter-range-from::before {
   content: "от";
}
.filter_element.filter-price .filter-price_to::before,
.filter_element.filter_range .filter-range-to::before {
   content: "до";
}
.filter_element.filter_range .range-slider {
   width: 100%;
   height: 3px;
   margin: 20px 0 0;
   border: none;
   box-shadow: none;
}
.filter_element.filter_range .range-slider .noUi-handle {
   cursor: pointer;
   width: 20px;
   height: 20px;
   right: -10px;
   top: -9px;
   padding: 2px;
   border: 0.868244px solid #d1d1d1;
   border-radius: 50%;
   background: #fff;
   box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
.filter_element.filter_range .range-slider .noUi-handle:before,
.filter_element.filter_range .range-slider .noUi-handle:after {
   display: none;
}
.filter_element.filter_range .range-slider .noUi-handle:hover {
   background: var(--color2);
   background-clip: content-box;
   border-color: #fefefe;
}
.filter_element.filter_range .range-slider .noUi-connects {
   background-color: #ececec;
}
.filter_element.filter_range .range-slider .noUi-connect {
   background-color: var(--color2);
}

.filter_element__heading {
   position: relative;
   font-weight: var(--f1wb);
   padding: 1rem;
   padding-left: 2.25rem;
   line-height: 1.2;
   cursor: pointer;
   text-transform: uppercase;
   letter-spacing: 0.5px;
   font-size: 0.85rem;
}
.filter_element__heading svg {
   position: absolute;
   left: 0.5rem;
   top: 50%;
   transform: translateY(-50%);
   height: 1rem;
   width: 1rem;
   fill: #afafaf;
   transition: all 0.3s ease;
}
.filter_element__heading:hover {
   background-color: var(--light);
   color: var(--color);
}
.filter_element__heading:hover svg {
   fill: var(--color);
}
.filter_element.active .filter_element__heading svg {
   transform: rotate(180deg) translateY(50%);
}
.filter_buttons {
   margin-top: 1rem;
   text-align: center;
}
.catalog_filter_button_search {
   position: relative;
   position: absolute;
   top: 50%;
   right: 0;
   transform: translate(110%, -50%);
   z-index: 10;
   cursor: pointer;
   transition: 0.2s ease;
   background: var(--btn_color_1);
   padding: 0.75rem 1.5rem;
   border: 0;
   border-radius: 0.5rem;
   box-shadow: 0 7px 15px -5px rgb(0 0 0 / 15%);
   color: var(--btn_color_text);
}
.catalog_filter_button_search::after {
   content: "";
   width: 1.5rem;
   height: 1.5rem;
   position: absolute;
   background: var(--btn_color_1);
   left: -1rem;
   top: 50%;
   transform: rotate(45deg) translateY(-70%);
   border-radius: 3px;
   z-index: -1;
   transition: 0.2s ease;
}
.catalog_filter_button_search:hover,
.catalog_filter_button_search:hover::after,
.filter_buttons .filter_search span:hover {
   background-color: var(--color_bg_1);
}
.filter_buttons .filter_button {
   width: 100%;
   padding: 0;
   background: transparent;
   border-radius: 0.5rem;
   overflow: hidden;
}
.filter_buttons .filter_button span {
   display: block;
   padding: 0.75rem 1.5rem;
   font-size: 0.95rem;
   cursor: pointer;
}
.filter_buttons .filter_search {
   margin-bottom: 0.5rem;
   border: 0;
}
.filter_buttons .filter_search span {
   background: var(--btn_color_1);
   color: var(--btn_color_text);
}
.filter_buttons .filter_reset {
   border: 1px solid #d9d9d9;
}
.filter_buttons .filter_reset:hover {
   border: 1px solid var(--gray);
}
.filter_buttons .filter_reset span:hover {
   background: var(--gray);
   color: #fff;
}
.ui-toggle-list {
   margin: 2rem 0;
}
.ui-toggle {
   width: 100%;
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding: 0 0.5rem;
   margin: 0.25rem 0;
}
.ui-toggle label {
   display: flex;
   align-items: center;
}
.ui-checkbox__box,
.ui-radio__box {
   position: absolute;
   top: 10px;
   left: 0px;
   height: 1rem;
   width: 1rem;
   box-sizing: border-box;
   border-radius: 4px;
   background: #fff;
   border-width: 1px;
   border-style: solid;
   border-color: #afafaf;
   border-image: initial;
   transition: all 250ms cubic-bezier(0.4, 0, 0.23, 1) 0s;
}
.ui-radio__box {
   border-radius: 50%;
}
.ui-toggle__box {
   position: relative;
   display: inline-block;
   width: 40px;
   height: 20px;
   margin-left: 1rem;
   flex-shrink: 0;
   background: #afafaf;
   border-radius: 10px;
   cursor: pointer;
   transition: all 300ms ease 0s;
   overflow: hidden;
}
.ui-toggle__box:after {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   display: block;
   width: 20px;
   height: 20px;
   border-radius: 50%;
   background: #ffffff;
   border: 2px solid #afafaf;
   transition: all 300ms ease 0s;
}
.ui-checkbox__box_list,
.ui-radio__box_list {
   left: 0.5rem;
   top: 50%;
   transform: translateY(-50%);
}
.ui-checkbox__name,
.ui-radio__name {
   position: relative;
   z-index: 1;
}
.ui-checkbox__input:hover + .ui-checkbox__box,
.ui-radio__input:hover + .ui-radio__box {
   border-color: var(--color);
}
.ui-toggle__box:hover {
   background: var(--color);
}
.ui-toggle__box:hover:after {
   border: 2px solid var(--color);
}
.ui-checkbox__input:checked + .ui-checkbox__box,
.ui-radio__input:checked + .ui-radio__box {
   background-color: var(--color);
   border-width: 0.5rem;
   border-style: solid;
   border-color: var(--color);
   border-image: initial;
   animation: 200ms cubic-bezier(0.4, 0, 0.23, 1);
}
.ui-checkbox__input:checked + .ui-checkbox__box::after {
   position: absolute;
   left: 50%;
   top: 50%;
   width: 2px;
   height: 7px;
   content: "";
   box-sizing: content-box;
   border: 2px solid #fff;
   border-left-color: transparent;
   border-top-color: transparent;
   animation: 125ms cubic-bezier(0.4, 0, 0.23, 1) 250ms 1 normal forwards running checkbox-check;
   transform: translate(-50%, -70%) rotate(40deg);
}
.ui-radio__input:checked + .ui-radio__box {
   background-color: #ffffff;
   border-width: 0.35rem;
}
.ui-toggle__input:checked + .ui-toggle__box {
   background: #60c339;
}
.ui-toggle__input:checked + .ui-toggle__box:after {
   left: calc(100% - 20px);
   border: 2px solid #60c339;
}
.ui-checkbox__input,
.ui-radio__input,
.ui-toggle__input {
   opacity: 0;
   visibility: hidden;
}
.ui-toggle__input {
   display: none;
}
.ui-toggle__name {
   font-weight: var(--f1ws);
}
@keyframes shrink-bounce {
   0% {
      transform: scale(1);
   }
   33% {
      transform: scale(0.85);
   }
   100% {
      transform: scale(1);
   }
}

#catalog-cats {
}
#catalog-cats .item {
   display: block;
   position: relative;
   background: #fff;
   box-shadow: 0 15px 30px 0px rgb(0 0 0 / 15%);
   border-radius: 0.5rem;
   overflow: hidden;
   -webkit-transition: all 0.2s ease;
   -o-transition: all 0.2s ease;
   transition: all 0.2s ease;
   margin-bottom: 2rem;
}
#catalog-cats .imagepadding {
   padding: 1.5rem;
   padding-bottom: 0rem;
   display: block;
}
#catalog-cats .body {
   background: #fff;
   padding: 1rem 1.5rem 1.5rem;
   color: var(--dark);
}
#catalog-cats .name {
   display: block;
   font-size: 1.25rem;
   font-weight: var(--f1ws);
   line-height: 1.3;
   color: var(--color);
}
#catalog-cats .only:hover .name,
#catalog-cats .name:hover {
   color: var(--dark);
}
#catalog-cats .only:hover {
   -webkit-transform: translateY(-5px);
   -ms-transform: translateY(-5px);
   transform: translateY(-5px);
}
#catalog-cats .sub-cats {
   margin-top: 1rem;
}
#catalog-cats .sub-cats li a {
   font-size: 0.9rem;
   margin: 0.25rem 0;
   color: var(--dark);
}
#catalog-cats .sub-cats li a:hover {
   color: var(--color);
}

#subcatalog {
   padding-bottom: 0;
   margin-bottom: -2rem;
   border: 0 !important;
}
#subcatalog .terms-btns {
   display: flex;
   flex-wrap: wrap;
   margin: 0 -1rem;
   justify-content: center;
}
#subcatalog .cats_btn {
   margin: 0 0.5rem 1rem;
}
#subcatalog .item {
   display: block;
   text-align: center;
   border-radius: 5px;
   overflow: hidden;
   transition: all 0.3s ease;
   padding: 0.75rem 1.5rem;
   font-size: 0.9rem;
   line-height: 1.3;
   background: #fff;
   color: var(--dark);
   border: 1px solid var(--gray);
}
#subcatalog .item:hover {
   border: 1px solid transparent;
   background: var(--dark);
   color: #fff;
}

.card-parameters {
   position: relative;
   margin: 1rem 0;
}
.card-parameters::before {
   content: "";
   position: absolute;
   width: 2rem;
   height: 100%;
   background: linear-gradient(90deg, rgb(255 255 255 / 1%), #fff);
   right: 0;
   z-index: 1;
}
.card-parameters ul {
}
.card-parameters ul li {
   position: relative;
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   width: 100%;
   font-size: 0.9rem;
   margin-bottom: 0.5rem;
   color: var(--gray);
   font-weight: var(--f1w);
}
.card-parameters ul li::before {
   content: "";
   order: 1;
   border-bottom: 1px dotted var(--gray);
   flex-grow: 1;
   margin: 0.9rem 1.5rem 0 1rem;
}
.card-parameters ul li .value {
   max-width: 40%;
   flex: 1 0 40%;
   text-align: left;
   width: 100%;
   order: 2;
   font-weight: var(--f1ws);
}

.cards-flex {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   margin: 0 -0.5rem;
}
.catalog-section .cards-flex {
   justify-content: center;
}
.cards-flex.cards-center {
   justify-content: center;
}
.carts-wrap {
   display: flex;
}
#products {
   width: calc(100% - 300px);
   padding-left: 2rem;
   flex: 1 0 calc(100% - 300px);
}
#products .container-fluid {
   padding: 0 2rem 0 0;
}
#products .header h2 + p,
#products .subheader {
   font-size: 1.125rem;
   margin: -1.5rem 0 2rem;
}
#products section {
   padding: 3rem 0;
}
#products section.content p {
   font-size: 1rem;
}
#products section.content .col-s {
   flex: 0 0 100%;
   max-width: 100%;
   margin: 0;
}
#products .bullets .header {
   max-width: 700px;
   margin: 0;
   text-align: left;
}
#products .bullets.design-big .desc,
#products .bullets.design-big .desc p,
#products .bullets.design-big .desc li {
   font-size: 0.9rem;
}
.products-row {
   display: flex;
   flex-wrap: wrap;
}
.carts .card-item {
   width: 25%;
   padding: 0 0.5rem;
   display: block;
   margin-bottom: 1rem;
}
.carts:not(.popup-wrap) .cart {
   position: relative;
   background: #fff;
   box-shadow: 0 8px 40px -8px rgb(0 0 0 / 15%);
   box-shadow: 0 4px 10px -3px rgb(0 0 0 / 15%);
   overflow: hidden;
   -webkit-transition: all 0.2s ease;
   -o-transition: all 0.2s ease;
   transition: all 0.2s ease;
   z-index: 1;
}
.dark_theme .carts:not(.popup-wrap) .cart {
   background: var(--color_bg_1);
}
.border-circle .carts:not(.popup-wrap) .cart {
   border-radius: 0.5rem;
}
.carts .cart.cart-popup:hover {
   -webkit-transform: translateY(-5px);
   -ms-transform: translateY(-5px);
   transform: translateY(-5px);
   box-shadow: 0 15px 40px 0px rgb(0 0 0 / 20%);
   z-index: 2;
   cursor: pointer;
}
.carts .cart .labels {
   position: absolute;
   top: 0.5rem;
   left: 0.5rem;
   font-size: 0.8rem;
}
.carts .cart .labels span {
   display: inline-block;
   padding: 5px 7px;
   margin: 0 2px 4px;
   line-height: 1;
   white-space: nowrap;
   border-radius: 2px;
   color: #fff;
}
.carts .cart .labels .available {
   background-color: #60c339;
}
.carts .cart .labels .new {
   background-color: #2992d9;
}
.carts .cart .labels .hit {
   background-color: #fc482d;
}
.carts .cart .labels .sale {
   background: #fff200;
   color: #000;
}
.carts:not(.popup-wrap) .cart .body {
   background: #fff;
   padding: 1rem 1.5rem 1.5rem;
   color: var(--dark);
}
.dark_theme .carts:not(.popup-wrap) .cart .body {
   background: transparent;
   color: #fff;
}
.carts .cart .name {
   font-size: 1.125rem;
   font-weight: var(--f1ws);
   line-height: 1.3;
   display: inline-block;
   color: var(--dark);
}
.dark_theme .carts .cart .name {
   color: #fff;
}
.carts .cart:hover .name {
   color: var(--color);
}
.carts .cart .intro {
   font-size: 0.9rem;
   line-height: 1.3;
   color: var(--gray);
   margin: 0.5rem 0;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 4;
}
.carts .cart .intro table {
   display: none;
}
.carts .cart .intro ol li {
   margin: 0;
}
.carts .cart .intro li:nth-child(n + 3) {
   display: none;
}
.carts .cart .intro p {
   margin: 0.5rem 0;
}
.carts .cart .price {
   color: var(--color2);
   margin-top: 1rem;
}
.carts .cart .price span {
   font-size: 1.125rem;
   font-weight: var(--f1ws);
   line-height: 1.2;
   display: inline-block;
}
.carts .cart .price del {
   font-size: 0.8rem;
   color: var(--dark);
   display: block;
}
.carts .card-parameters {
   overflow: hidden;
}
.carts .card-parameters li {
   margin-bottom: 0.25rem;
   font-size: 0.75rem;
   color: var(--dark);
}
.carts .card-parameters ul li::before {
   margin: 0.85rem 0.5rem 0 0.5rem;
}
.carts .card-parameters ul li:nth-child(n + 3) {
   display: none;
}
.carts .card-parameters ul li .value {
   white-space: nowrap;
}

.terms-wrap {
   width: 100%;
   display: flex;
   justify-content: center;
}

#carts-wrap {
   position: fixed;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   background: rgba(0, 0, 0, 0.5);
   visibility: hidden;
   opacity: 0;
   z-index: 120;
   overflow: hidden;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   -webkit-transition: all 0.3s 0.1s ease-in-out;
   -o-transition: all 0.3s 0.1s ease-in-out;
   transition: all 0.3s 0.1s ease-in-out;
}
#carts-wrap.show {
   opacity: 1;
   visibility: visible;
}
#carts-wrap .cart-wrap {
   position: absolute;
   top: 0;
   bottom: 0;
   overflow-x: hidden;
   overflow-y: scroll;
   max-width: 700px;
   width: 90%;
   min-width: 500px;
   width: min(90%, 700px);
   background: #fff;
   padding: 3rem;
   padding-right: 4rem;
   -webkit-transform: translate3d(100%, 0, 0);
   transform: translate3d(100%, 0, 0);
   -webkit-transition: -webkit-transform 0.3s ease-in-out;
   transition: -webkit-transform 0.3s ease-in-out;
   -o-transition: transform 0.3s ease-in-out;
   transition: transform 0.3s ease-in-out;
   transition:
      transform 0.3s ease-in-out,
      -webkit-transform 0.3s ease-in-out;
   transition:
      transform 0.3s ease-in-out,
      -webkit-transform 0.3s ease-in-out;
   right: -2rem;
}
#carts-wrap .cart-wrap.active {
   opacity: 1;
   -webkit-transform: translate3d(0, 0, 0);
   transform: translate3d(0, 0, 0);
}
#carts-wrap #cart-close {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   cursor: pointer;
}
#carts-wrap #cart-close #cancel {
   position: absolute;
   right: 1rem;
   top: 1rem;
   z-index: 1;
}
#carts-wrap .cart-wrap .name {
   font-size: 2rem;
   font-family: var(--f2);
}
#carts-wrap.carts .image {
   position: relative;
   margin-top: 2rem;
   margin-bottom: 3rem;
}
#carts-wrap.carts .price {
   background: var(--light);
   border-top: 1px solid #ececec;
   border-bottom: 1px solid #ececec;
   padding: 1.5rem 3rem;
   margin: 2.5rem -3rem;
   color: var(--color);
   text-align: right;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: end;
   -ms-flex-align: end;
   align-items: flex-end;
   -webkit-box-pack: end;
   -ms-flex-pack: end;
   justify-content: flex-end;
}
#carts-wrap.carts .price strong {
   margin-right: 1rem;
   line-height: 1.2;
   color: var(--dark);
}
#carts-wrap.carts .price span {
   font-size: 1.75rem;
   line-height: 1;
   white-space: nowrap;
}
#carts-wrap.carts .price del {
   font-size: 1.125rem;
}
#carts-wrap.carts .full h3 {
   font-size: 1.125rem;
   color: var(--dark);
   font-family: var(--f1);
}
#carts-wrap.carts .full ul li {
   margin: 5px 0;
   font-size: 0.9rem;
}

#carts-wrap.carts .form {
   max-width: 400px;
}
#carts-wrap.carts .form .form-head {
   font-size: 1.75rem;
   font-family: var(--f1);
   font-weight: var(--f1ws);
}

@media (max-width: 767px) {
   #carts-wrap .cart-wrap {
      min-width: auto;
      width: min(97%, 700px);
      padding: 1.5rem;
      padding-right: 3.5rem;
   }
}

#product-hero {
   padding: 0;
}
#product-hero #breadcrumbs {
   margin-bottom: 0rem;
}
#product-hero h1 {
   font-size: 2rem;
   margin: 1rem 0;
   line-height: 1.3;
   text-transform: none;
}
#product-hero .share {
   position: absolute;
   right: 1rem;
   top: -7px;
}
#product-hero
   .ya-share2__container_size_m
   .ya-share2__item_more.ya-share2__item_has-pretty-view
   .ya-share2__link_more.ya-share2__link_more-button-type_short {
   border: 1px solid transparent;
}
#product-hero
   .ya-share2__container_size_m
   .ya-share2__item_more.ya-share2__item_has-pretty-view
   .ya-share2__link_more.ya-share2__link_more-button-type_short:hover {
   background: transparent;
   border-color: var(--color);
}

#product-hero .product-head {
   padding: 1.5rem 0;
}
#product-hero .product-head .code {
   text-align: right;
   color: var(--gray);
   font-size: 0.8rem;
   margin-right: 4rem;
}
#product-hero .product-head .code span {
   margin-left: 0.5rem;
}

#product-hero .product-body {
}
#product-hero .product-body .product-flex {
   display: flex;
}
#product-hero .product-body .image-block {
   flex: 0 0 32%;
   max-width: 32%;
}
#product-hero .product-body .image-block-flex {
   display: flex;
   width: 100%;
}
#product-hero .product-body .image-block .images-nav {
   flex: 0 0 60px;
   max-width: 60px;
}
#product-hero .product-body .image-block .images-nav .slick-arrow {
   background: transparent;
   position: relative;
   box-shadow: none;
}
#product-hero .product-body .image-block .images-nav .slick-prev {
   transform: rotate(90deg);
}
#product-hero .product-body .image-block .images-nav .slick-next {
   transform: rotate(90deg);
}
#product-hero .product-body .image-block .images-nav .slick-arrow svg {
   fill: var(--gray);
}
#product-hero .product-body .image-block .images-nav .slick-arrow:hover svg {
   fill: var(--color);
}
#product-hero .product-body .image-block .images-nav .image {
   margin-bottom: 0.5rem;
   cursor: pointer;
}
#product-hero .product-body .image-block .images-nav .image img {
   border: 1px solid rgb(0 0 0 / 10%);
}
#product-hero .product-body .image-block .images-nav .slick-current .image img {
   border: 1px solid var(--color_30);
}
#product-hero .product-body .image-block .images {
   flex: 1 1 auto;
   cursor: pointer;
   border: 1px solid rgb(0 0 0 / 10%);
}
#product-hero .product-body .image-block .images-nav-true {
   max-width: calc(100% - 60px);
}
#product-hero .product-body .text-block {
   flex: auto;
   padding: 0 3rem;
}
#product-hero .product-body .text-block .header {
}
#product-hero .product-body .text-block .intro {
   font-size: 0.9rem;
   margin-bottom: 2rem;
   max-width: 650px;
}
#product-hero .product-body .text-block .intro li:nth-child(n + 6) {
   display: none;
}

#product-hero .product-body .order-block {
   flex: 0 0 23%;
   max-width: 23%;
}
.gray-block {
   background: #f5f5f5;
   padding: 2rem;
}
.border-circle .gray-block {
   border-radius: 0.5rem;
}
.dark_theme .gray-block {
   background: var(--color_bg_1);
}
#product-hero .product-body .price-row {
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
   flex-wrap: wrap;
   margin-bottom: 2rem;
}
#product-hero .price-left {
}
#product-hero .price-right {
   text-align: center;
   text-transform: lowercase;
   font-size: 0.8rem;
   line-height: 1;
}
#product-hero .price-right span {
   display: block;
   background: #fbf000;
   border-radius: 3px;
   font-weight: var(--f1ws);
   white-space: nowrap;
   line-height: 1.5;
   margin-top: 3px;
}
#product-hero .price-del {
   text-decoration: line-through;
   color: var(--gray);
}
#product-hero .price-def {
   font-weight: var(--f1wb);
   white-space: nowrap;
   line-height: 1.1;
}
#product-hero .price-def .priceNumbers {
   font-size: 2rem;
}
#product-hero .price-opt {
}
#product-hero .price-head {
   font-size: 1.25rem;
   font-weight: var(--f1ws);
   margin-bottom: 1rem;
}
#product-hero .price-opt ul {
}
#product-hero .price-opt ul li {
   position: relative;
   margin: 0.5rem 0;
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   max-width: 170px;
   font-size: 0.9rem;
}
#product-hero .price-opt ul li::before {
   content: "";
   order: 1;
   border-bottom: 1px dotted var(--gray);
   flex-grow: 1;
   margin: 0.9rem 0.5rem 0;
}
#product-hero .price-opt ul li span {
   order: 2;
   font-weight: var(--f1ws);
}
#product-hero .button {
   margin-top: 0;
}
#product-hero .button .btn {
   width: 100%;
}
#product-hero .button .btn span {
   padding: 1rem 2rem;
}
#product-hero .detail-wrap {
   margin-top: 2rem;
}
#product-hero .detail-block {
   display: flex;
   margin-bottom: 1rem;
}
#product-hero .detail-wrap .icon {
   margin-right: 1rem;
   height: 1.5rem;
   width: 1.5rem;
}
#product-hero .detail-wrap .icon svg {
   width: 1.5rem;
   height: 1.5rem;
   fill: var(--color_bg_1);
}
.dark_theme #product-hero .detail-wrap .icon svg {
   fill: var(--gray);
}
#product-hero .detail-block .text {
   font-size: 0.9rem;
   line-height: 1.4;
   color: var(--gray);
}
#product-hero .detail-block .text span {
   color: var(--dark);
}
#product-hero .detail-block .text a {
   border-bottom: 1px solid var(--color_30);
}
#product-hero .detail-block .text a:hover {
   border-bottom-color: transparent;
}

.border-line #product-content {
   border-bottom: 1px solid #ececec;
}
.border-line.dark_theme #product-content {
   border-bottom: 1px solid rgb(255 255 255 / 15%);
}
#product-content h2 {
   font-size: 1.5rem;
}
#product-content .list h2:nth-of-type(1) {
   margin-top: 0rem;
}
#product-content .product-content-nav {
   position: sticky;
   top: 0;
   background: #f5f5f5;
   margin-bottom: 3rem;
   z-index: 100;
}
.dark_theme #product-content .product-content-nav {
   background: var(--color_bg_1);
}
#product-content .product-content-nav li {
   display: inline-block;
   margin-right: 3rem;
}
#product-content .product-content-nav a {
   color: var(--dark);
   padding: 1rem 0;
   display: block;
   font-weight: var(--f1ws);
   border-top: 3px solid transparent;
   border-bottom: 3px solid transparent;
}
.dark_theme #product-content .product-content-nav a {
   color: #fff;
}
#product-content .product-content-nav a:hover,
#product-content .product-content-nav a.active {
   color: var(--color);
   border-bottom-color: var(--color);
}
#product-content .gray-block h2 {
   margin-top: 0rem;
}
#product-content .sidebar {
   max-width: 400px;
   width: 100%;
   margin-left: auto;
   position: sticky;
   top: var(--header_height);
}
#product-content .docs {
   margin-top: 2.5rem;
}
#product-content .doc {
   display: flex;
   margin-bottom: 1rem;
}
#product-content .doc:last-of-type {
   margin-bottom: 0rem;
}
#product-content .doc svg {
   fill: #bbb;
   width: 2rem;
   height: 2rem;
   margin-right: 1rem;
   margin-top: 0.4rem;
}
#product-content .doc .doc-body {
}
#product-content .doc .doc-body .doc-name:hover {
   color: var(--dark);
}
#product-content .doc .doc-body .doc-detail {
   font-size: 0.8rem;
   color: var(--gray);
}

#product-content .manager {
   display: flex;
   align-items: center;
   border: 1px solid var(--color_bg_1);
   border-radius: 0.5rem;
   padding: 1rem 2rem;
   margin-top: 4.5rem;
}
#product-content .manager .avatar {
   width: 130px;
   margin-right: 1.5rem;
   margin-top: -3rem;
}
#product-content .manager .name-block {
}
#product-content .manager .name {
   font-weight: var(--f1ws);
}
#product-content .manager .position {
   color: var(--gray);
   font-size: 0.8rem;
}
#product-content .manager .phone {
   margin-top: 1rem;
   font-size: 0.9rem;
}
#product-content .product-content.tabs .list {
   display: none;
}
#product-content .product-content.tabs .list.active {
   display: block;
}

#product-semilar {
   overflow: hidden;
}
#product-semilar .header h2 {
   text-align: left;
   margin-top: 0;
}
#product-semilar .slider {
   margin: 0;
}
#product-semilar .slick-track {
   margin-left: 0;
}
.carts.slider .card-item {
   width: 100%;
}

@media (max-width: 1535px) {
}
@media (max-width: 1399px) {
   .carts .card-item {
      width: 25%;
   }
}
@media (max-width: 1299px) {
}
@media (max-width: 1181px) {
   #catalog-cats .item {
      margin-bottom: 1.5rem;
   }
   #subcatalog .item {
   }
   #product-hero .product-body .product-flex {
      flex-wrap: wrap;
   }
   #product-hero .product-body .image-block {
      flex: 0 0 50%;
      max-width: 50%;
      order: 1;
   }
   #product-hero .product-body .order-block {
      flex: 0 0 50%;
      max-width: 50%;
      order: 2;
      padding-left: 3rem;
   }
   #product-hero .product-body .text-block {
      order: 3;
      padding: 2rem 0;
   }
   #product-content {
      padding-top: 0;
   }
   #product-content .sidebar {
      padding-left: 2rem;
   }
   #filterbar {
      max-width: 250px;
   }
   #catalog_filter {
      min-width: 200px;
   }
   .carts .card-item {
      width: 33.3%;
   }
}
@media (max-width: 1023px) {
   .cat_card .item {
      margin-bottom: 1.5rem;
   }
   .carts .cart .body {
      padding: 1rem;
   }
   #balls-cart {
      padding-top: 2rem;
   }
   #products {
      padding-left: 0;
      width: 100%;
      flex: 1 0 100%;
   }
   #product-hero .product-body .order-block {
      padding-left: 2rem;
   }
   #product-content .sidebar {
      max-width: none;
      display: flex;
      padding-left: 0;
   }
   #product-content .docs {
      margin-top: 2rem;
   }
   #product-content .manager {
      margin-left: 2rem;
      margin-top: 2rem;
      height: 100%;
   }
   #filterbar {
      max-width: 500px;
      width: 100%;
      position: absolute;
      z-index: 10;
      left: 0;
      top: 6.5rem;
      transform: translateX(-100%);
      transition: all 0.3s ease;
   }
   #filterbar.active {
      transform: translateX(0%);
   }
   #sorting_form #filter-btn {
      visibility: visible;
   }
   .catalog_filter_button_search {
      left: auto;
   }
}
@media (max-width: 767px) {
   #catalog-cats .item {
      margin-bottom: 1rem;
   }
   #catalog-cats .name {
      font-size: 1.125rem;
   }
   #subcatalog .terms-btns {
      position: relative;
      flex-wrap: nowrap;
      overflow: auto;
      -webkit-overflow-scrolling: touch;
      justify-content: left;
      margin: 0;
   }
   #subcatalog .terms-wrap {
      position: relative;
      margin: 0 -1rem;
   }
   #subcatalog .terms-wrap::before {
      content: "";
      position: absolute;
      right: 0rem;
      width: 2rem;
      height: 100%;
      background: linear-gradient(90deg, rgb(255 255 255 / 1%), #fff);
      z-index: 2;
   }
   #subcatalog .item {
      font-size: 0.9rem;
      white-space: nowrap;
      min-width: 50vw;
   }
   #subcatalog .cats_btn {
      margin: 0 0.5rem;
   }
   #product-hero .product-head .code {
      text-align: left;
      margin-top: 0.5rem;
   }
   #product-hero .share {
      right: 0.5rem;
   }
   #product-hero h1 {
      font-size: 2rem;
      margin: 1rem 0 0;
   }
   #product-hero .product-body .image-block {
      flex: 0 0 100%;
      max-width: 380px;
   }
   #product-hero .product-body .order-block {
      flex: 0 0 100%;
      max-width: 380px;
      padding-left: 0;
      margin-top: 2rem;
   }
   #product-hero .product-body .text-block {
      padding: 2rem 0 0;
   }
   #product-content .product-content-nav {
      display: none;
   }
   #product-content .sidebar {
      flex-wrap: wrap;
   }
   #product-content .manager {
      margin-left: 0;
      margin-top: 4rem;
   }
   .sorting_form-heag {
      display: none;
   }
}
@media (max-width: 499px) {
   .cat_card .item {
      margin-bottom: 1rem;
   }
   .carts .card-item {
      width: 50%;
   }
   .carts-wrap {
      margin: 0px -1rem;
   }
   .carts .cart .price span {
      font-size: 1.125rem;
   }
   #catalog-cats .name {
      font-size: 1rem;
   }
   #subcatalog .item {
      font-size: 0.85rem;
   }
   #product-hero .product-head {
      padding: 0.5rem 0 1.5rem;
   }
   #product-hero .product-body .image-block {
      max-width: 100%;
   }
}
/*
	==================================================
	Мобильный бар
	==================================================
*/
#mobile_bar {
   position: fixed;
   bottom: 0;
   left: 0;
   width: 100%;
   background: #fff;
   z-index: 10000;
   box-shadow: 0 2px 10px 0 rgb(0 0 0 / 10%);
   display: none;
   transition: all 0.3s ease;
}
#mobile_bar .wrapper-bar {
   display: flex;
   justify-content: space-around;
   align-items: flex-end;
   padding: 10px 0 8px;
}
#mobile_bar .item {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   text-align: center;
   flex: 1;
}
#mobile_bar .icon {
   position: relative;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 20px;
   height: 20px;
}
#mobile_bar .icon svg {
   width: 100%;
   height: 100%;
   fill: var(--dark);
}
#mobile_bar .icon .goodini-basket-count {
   position: absolute;
   background: var(--color);
   line-height: 1;
   font-size: 10px;
   display: flex;
   align-items: center;
   justify-content: center;
   right: -0.75rem;
   top: -0.25rem;
   min-width: 1.25rem;
   height: 1.25rem;
   border-radius: 10px;
   padding: 5px;
   color: #fff;
}
#mobile_bar .text {
   color: var(--dark);
   font-size: 10px;
   line-height: 1;
   margin-top: 5px;
}
#mobile_bar .item.current .icon svg,
#mobile_bar .item.active .icon svg {
   fill: var(--color);
}
#mobile_bar .item.current .text,
#mobile_bar .item.active .text {
   color: var(--color);
}
@media (max-width: 1023px) {
   #mobile_bar {
      display: block;
   }
   .page-frame.slimbar_on {
      padding-bottom: 4rem;
   }
}
@media (max-width: 1023px) and (max-height: 620px) {
   #slim-bar:not(.active) #mobile_bar.hidden-bar {
      transform: translateY(100%);
   }
}
/*
====================
	Бургер
====================
*/
#burger .burger-icon {
   position: relative;
   width: 1.75rem;
   height: 1.125rem;
   display: flex;
   align-items: center;
}
#burger .burger-icon span {
   position: absolute;
   background-color: var(--dark);
   height: 2px;
   width: 100%;
   transition:
      bottom 0.25s cubic-bezier(0.21, 1.03, 0.7, 1) 0.25s,
      transform 0.25s cubic-bezier(0.21, 1.03, 0.7, 1);
}
#burger .burger-icon .line-top {
   bottom: calc(100% - 2px);
}
#burger .burger-icon .line-bottom {
   bottom: 0;
}
#burger.active .burger-icon {
   justify-content: center;
}
#burger.active .burger-icon span {
   bottom: calc(50% - 1px);
   transition:
      bottom 0.25s cubic-bezier(0.21, 1.03, 0.7, 1),
      opacity 0.25s cubic-bezier(0.21, 1.03, 0.7, 1),
      transform 0.25s cubic-bezier(0.21, 1.03, 0.7, 1) 0.25s;
   background-color: var(--color);
}
#burger.active .burger-icon .line-top {
   transform: rotate(-45deg);
}
#burger.active .burger-icon .line-center {
   opacity: 0;
}
#burger.active .burger-icon .line-bottom {
   transform: rotate(45deg);
}
/*
====================
	Мобильное меню
====================
*/
.mobile_layout {
   position: fixed;
   background: #fff;
   color: var(--dark);
   left: 0;
   top: 0;
   height: 100vh;
   width: 100vw;
   z-index: 1001;
   padding: 1.25rem 1.25rem 5rem;
   transform: translateX(100%);
   transition: all 0.25s cubic-bezier(0.16, 0.08, 0.355, 1);
}
.mobile_layout.active {
   transform: translateX(0%);
}
.mobile_wrapper {
   overflow-x: hidden;
   overflow-y: scroll;
   height: 100%;
}
#slim-bar {
   z-index: 1001;
}
#slim-bar .wrapper-menu .main-head {
   color: #888;
   text-transform: uppercase;
   letter-spacing: 1px;
   font-size: 1.25rem;
   border-bottom: 1px solid #eee;
   padding-bottom: 0.5rem;
}
#slim-bar #mobile_menu .wrapper-menu .main-head {
   margin-bottom: 1.5rem;
}
#slim-bar #catalog_menu .wrapper-menu .main-head {
   margin-top: 1.5rem;
}
#slim-bar .menu-tax {
   column-count: 2;
}
#slim-bar .menu-term {
   display: inline-block;
   width: 100%;
}
#slim-bar .wrapper-menu .head {
   color: #888;
   text-transform: uppercase;
   letter-spacing: 1px;
   margin: 2rem 0 0.5rem;
}
#slim-bar .menu .menu-item a {
   font-size: 1rem;
   text-transform: none;
   letter-spacing: 0;
   padding: 0.125rem 0;
   margin: 0.25rem 0;
}
#slim-bar .menu .menu-item .sub-menu {
   position: static;
   padding: 0;
   padding-left: 1.5rem;
   visibility: visible;
   opacity: 1;
   transform: none;
   box-shadow: none;
   min-width: unset;
   background: #fff;
}
#slim-bar .menu-item.menu-item-has-children a::before,
#slim-bar .menu .sub-menu .menu-item .sub-menu::before {
   display: none;
}
/*
====================
	Мобильные контакты
====================
*/
#mobile_contacts #contacts,
#mobile_contacts #contacts .left-wrap,
#mobile_contacts .container-fluid {
   padding: 0;
}
#mobile_contacts #contacts .left .main-list > li a {
   color: var(--color);
}
#mobile_contacts #contacts #contact_coordinate span {
   color: var(--dark);
}
#mobile_contacts #contacts .office-item {
   flex: 1 0 33.3%;
   max-width: 33.3%;
}
.dark_theme #mobile_contacts #contacts li .head,
.dark_theme #mobile_contacts #contacts li strong {
   color: #7d7d7d;
}
@media (max-width: 767px) {
   #mobile_contacts #contacts .office-item {
      flex: 1 0 50%;
      max-width: 50%;
   }
}
@media (max-width: 499px) {
   #mobile_contacts #contacts .office-item {
      flex: 1 0 100%;
      max-width: 100%;
   }
   #mobile_contacts #contacts .office-item-wrap {
   }
}
/*
====================
	Мобильный поиск
====================
*/
#mobile_search {
   height: auto;
   transform: translateY(100%);
   bottom: 0;
   top: auto;
}
#mobile_search.active {
   transform: translateY(0%);
   box-shadow: 0 2px 10px 0 rgb(0 0 0 / 10%);
}
#mobile_search .wrapper-search {
}
#mobile_search .search-form {
   display: flex;
   justify-content: space-between;
   align-items: center;
}
#mobile_search .search-field {
   background: var(--light);
   border: 0;
   border-radius: 6px;
   height: 3rem;
   width: 100%;
   margin-right: 0.5rem;
   padding: 0 1rem;
}
#mobile_search .search-button {
   border: 0;
   background: var(--btn_color_1);
   border-radius: 6px;
   display: flex;
   justify-content: center;
   align-items: center;
   height: 3rem;
   width: 3.5rem;
   flex: 1 0 3rem;
}
#mobile_search .search-button svg {
   height: 18px;
   width: 18px;
   fill: var(--btn_color_text);
}

/*
	Сотрудник
	========================================
*/
#persona {
}
#persona section {
   padding: 3rem 0;
}
#persona .persona .btn,
#persona .persona .btn:visited,
#persona .persona .btn:focus,
#persona .persona .btn:active {
   font-size: 1rem;
}
#persona .persona .btn span {
   padding: 1rem 1.5rem;
}
#persona .persona {
   display: flex;
   padding-bottom: 1rem;
}
#persona .avatar-wrap {
   flex: 1 0 30%;
   max-width: 30%;
}
#persona .avatar-wrap .avatar {
   position: sticky;
   top: 2rem;
}
#persona .avatar-wrap .ratings {
   margin-top: 1rem;
}
#persona .name {
}
#persona .name h1 {
   font-size: 2.5rem;
   margin: 0 0 2rem;
}
#persona .position {
}
#persona .experience {
}
#persona .persona-body {
   padding-left: 3rem;
}
#persona .progress {
}
#persona .part {
   margin: 2rem 0;
}
#persona .head {
   font-size: 1.5rem;
   font-weight: var(--f1wb);
   margin-bottom: 1rem;
   line-height: 1.4;
}
#persona .education {
   display: flex;
   flex-wrap: wrap;
   gap: 1rem;
}
#persona .education .item {
   flex: 1 0 calc(50% - 1rem);
   max-width: calc(50% - 1rem);
}
#persona .education .item .year {
   font-weight: var(--f1wb);
   margin-right: 1rem;
}
#persona .education .item .text {
   font-size: 0.9rem;
   color: var(--gray);
}
#persona .docs {
   display: flex;
   gap: 1rem;
   flex-wrap: wrap;
}
#persona .docs .image {
   max-width: calc(100% / 3 - 0.75rem);
   flex: 1 0 calc(100% / 3 - 0.75rem);
}

#persona .persons-list {
   background: var(--light);
   padding: 2rem;
}
#persona .persons-list .team {
   display: inline-flex;
   align-items: center;
   background: #fff;
   padding: 1rem;
   border-radius: 0.25rem;
   margin-bottom: 1rem;
   width: 100%;
}
#persona .persons-list .avatar-team {
   flex: 0 0 4rem;
   width: 4rem;
   height: 4rem;
}
#persona .persons-list .avatar img {
   clip-path: circle(2rem at 2rem 2rem);
   width: 4rem;
   max-height: none;
}
#persona .persons-list .team .body {
   flex: 1;
   font-size: 0.9rem;
   line-height: 1.4;
   padding-left: 1rem;
}
#persona .persons-list .team .name {
   font-weight: var(--f1wb);
}
#persona .persons-list .team:hover .name {
   color: var(--dark);
}
#persona .persons-list .team .position {
   color: var(--gray);
   margin: 0.25rem 0;
}
#persona .person-reviews {
   position: relative;
}
#persona .person-reviews .slick-track {
   margin-left: 0;
}
#persona .person-reviews .slide {
   padding: 0 0.5rem;
}
@media (max-width: 1023px) {
   #persona .persons-list ul {
      column-count: 2;
   }
}
@media (max-width: 767px) {
   #persona .name h1 {
      font-size: 2rem;
      margin: 0 0 1.5rem;
   }
   #persona .persons-list ul {
      column-count: 1;
   }
}
@media (max-width: 499px) {
   #persona .persona {
      display: block;
   }
   #persona .persona-body {
      padding-left: 0;
      margin-top: 2rem;
   }
   #persona .avatar-wrap {
      max-width: 250px;
   }
   #persona .persons-list {
      margin-top: 2rem;
   }
}

#menu-item-4220 {
   position: relative;
   padding-right: 10px;
}
#menu-item-4220.active:after {
   transform: rotate(225deg);
}

#menu-item-4220:after {
   opacity: 1 !important;
   content: "";
   position: absolute !important;
   top: -3px !important;
   bottom: 0 !important;
   margin: auto;
   right: -80% !important;
   width: 6px !important;
   height: 6px !important;
   border-bottom: 2px solid #a2a2a2 !important;
   border-right: 2px solid #a2a2a2 !important;
   transform: rotate(45deg);
   transition: all 0.3s ease 0s;
}
