@charset 'UTF-8';

:root {
  --color-text-primary: #060606;
  --color-yellow: #EF9F3D;
  --font-main: 'Ubuntu', sans-serif;
  --transition: .2s ease-in-out;

  /* .btn-primaty */
  --btn-primary-color: #FFFFFF;
  --btn-primary-hover-color: #FFFFFF;
  --btn-primary-active-color: #FFFFFF;
  --btn-primary-disabled-color: #FFFFFF;

  --btn-primary-bg: #EF9F3D;
  --btn-primary-hover-bg: #EF9F3D;
  --btn-primary-active-bg: #EF9F3D;
  --btn-primary-disabled-bg: #EF9F3D;

  --btn-primary-border-color: #EF9F3D;
  --btn-primary-hover-border-color: #EF9F3D;
  --btn-primary-acrive-border-color: #EF9F3D;
  --btn-primary-disabled-border-color: #EF9F3D;

  /* .btn-info */
  --btn-info-color: #FFFFFF;
  --btn-info-hover-color: #FFFFFF;
  --btn-info-active-color: #FFFFFF;
  --btn-info-disabled-color: #FFFFFF;

  --btn-info-bg: #009888;
  --btn-info-hover-bg: #009888;
  --btn-info-active-bg: #009888;
  --btn-info-disabled-bg: #009888;

  --btn-info-border-color: #009888;
  --btn-info-hover-border-color: #009888;
  --btn-info-acrive-border-color: #009888;
  --btn-info-disabled-border-color: #009888;
}

* {
  font-family: var(--font-main);
  box-sizing: border-box;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.fancybox__container * {
  color: white;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  --bs-body-color: var(--color-text-primary);
}
#main {
  flex-grow: 1;
  max-width: 100vw;
  /*overflow-x: hidden;*/
}

[data-lazy-image] {
  opacity: 0;
}

.mobile {
  display: none;
}

.btn {
  --bs-btn-line-height: 110%;
  --bs-btn-font-weight: medium;
  --bs-btn-border-radius: 0;

  --bs-btn-box-shadow: none !important;
  --bs-btn-focus-box-shadow: none !important;
  --bs-btn-active-shadow: none !important;
}
.btn.btn-lg {
	--bs-btn-padding-x: 1.125rem;
  --bs-btn-padding-y: 1.125rem;
  --bs-btn-font-size: 1.25rem;
}
.btn.btn-primary {
  --bs-btn-color: var(--btn-primary-color);
  --bs-btn-hover-color: var(--btn-primary-hover-color);
  --bs-btn-active-color: var(--btn-primary-active-color);
  --bs-btn-disabled-color: var(--btn-primary-disabled-color);

  --bs-btn-bg: var(--btn-primary-bg);
  --bs-btn-hover-bg: var(--btn-primary-hover-bg);
  --bs-btn-active-bg: var(--btn-primary-active-bg);
  --bs-btn-disabled-bg: var(--btn-primary-disabled-bg);

  --bs-btn-border-color: var(--btn-primary-border-color);
  --bs-btn-hover-border-color: var(--btn-primary-hover-border-color);
  --bs-btn-active-border-color: var(--btn-primary-active-border-color);
  --bs-btn-disabled-border-color: var(--btn-primary-disabled-border-color);
}
.btn.btn-info {
  --bs-btn-color: var(--btn-info-color);
  --bs-btn-hover-color: var(--btn-info-hover-color);
  --bs-btn-active-color: var(--btn-info-active-color);
  --bs-btn-disabled-color: var(--btn-info-disabled-color);

  --bs-btn-bg: var(--btn-info-bg);
  --bs-btn-hover-bg: var(--btn-info-hover-bg);
  --bs-btn-active-bg: var(--btn-info-active-bg);
  --bs-btn-disabled-bg: var(--btn-info-disabled-bg);

  --bs-btn-border-color: var(--btn-info-border-color);
  --bs-btn-hover-border-color: var(--btn-info-hover-border-color);
  --bs-btn-active-border-color: var(--btn-info-active-border-color);
  --bs-btn-disabled-border-color: var(--btn-info-disabled-border-color);
}
.btn.btn-sm {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.75rem;
  --bs-btn-font-size: 1.125rem;
}
body {
	padding-right: 0 !important;
}
/*.item-page {}
.item-page .page-header {
  margin: 2rem 0;
  text-align: center;
}
.item-page .page-header h1 {
  margin: 0;
  font-family: var(--font-main);
  font-size: 3.125rem;
  font-weight: 400;
  line-height: 120%;
}*/
.breadcrumb-divider {
  margin: .25rem .5rem;
}
.breadcrumb-item span, .breadcrumb-item a {
	color: var(--color-text-primary);
	transition: var(--transition);
	display: block;
}
.breadcrumb-item span {
	padding: .25rem 0;
}
.breadcrumb-item a:hover span,
.breadcrumb-item a:hover {
  color: var(--color-yellow);
}
.block {
  margin: 5rem 0;
}
.block-header {
  margin: 0 0 2rem;
  font-size: 3.125rem;
  font-weight: 400;
  line-height: 120%;
  text-align: center;
}
.block-subheader {
  margin: 0 0 2rem;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 130%;
  text-align: center;
}
.block-header:has(+ .block-subheader) {
  margin: 0 0 1rem;
}
.block.hl .block-header {
  text-align: left;
}
.block .more {
  display: block;
  margin-top: 1rem;
  width: 100%;
  text-align: center;
  padding: 1.125rem;
  background: #F0F0F0;
  text-decoration: none;
  color: var(--color-text-primary);
  font-size: 1.25rem;
  line-height: 110%;
  font-weight: 500;
}
.block.grey {
  margin: 0;
  padding: 5rem 0;
  background: rgba(69,69,69,.08);
}

.form-control {
  padding: 12px;
  border-radius: 0;
}
.form-check-label,
.form-info {
  font-size: .75rem;
}
.form-check-label a {
  color: var(--color-yellow);
  transition: var(--transition);
}
.form-check-label a:hover { 
  color: var(--color-text-primary);
}
.block.grey .form-control,
.request-form label.btn {
  background: #fff;
}
.bwi-block {}
.bwi-block .row {
  align-items: stretch;
}
.bwi-block .image {
  width: 100%;
  height: 100%;
  min-height: 350px;
}
.bwi-block .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.bwi-block .block-description {
  font-size: 1.25rem;
  line-height: 130%;
  font-weight: 300;
}
.bwi-block .block-description p:last-of-type {
  margin: 0;
}

.short-advantages {
  background: #454545;
  padding: 2.75rem;
}
.short-advantages__item {
  width: 100%;
  max-width: 275px;
  margin: 0 25px;
  text-align: center;
  color: #FFFFFF;
}
.short-advantages__item > * {
  display: block;
  line-height: 120%;
}
.short-advantages__item strong {
  font-size: 4rem;
  font-weight: 400;
}
.short-advantages__item span {
  margin-bottom: .5rem;
  font-size: 1.1875rem;
}

.masonry {
  margin: 0 auto;
  column-count: 3;
  column-gap: 24px;
}
.masonry-item {
  break-inside: avoid;
  margin-bottom: 24px;
}
.masonry-item img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;
}

.request-form {}
.request-form .inner {
  width: 100%;
  max-width: 626px;
  margin: 0 auto;
}
.request-form .form-control {
  background: transparent;
}
.request-form label.btn,
.request-form label.btn:hover {
  background: transparent;
  color: #111;
  text-transform: uppercase;
  border: 1px solid rgba(69,69,69,.38);
}
.request-form .btn-check:checked + label {
  background: var(--btn-primary-bg);
  color: var(--btn-primary-color);
  border-color: var(--btn-primary-border-color);
}
.request-form .form-check a {
  color: var(--color-text-primary);
}

.contacts-items {}
.contacts-items strong {
  font-weight: 500;
}
.contacts-items .time,
.contacts-items .site {
  margin: 2rem 0;
  text-align: center;
  font-size: 1.5rem;
  line-height: 135%;
}
.contacts-items .site a {
  color: #009888;
}
.contacts-item {
  height: 100%;
  padding: 2rem 1.25rem;
  background: white;
  box-shadow: 0 4px 30px rgba(0,0,0,.25);
}
.contacts-item .icon {
  display: block;
  width: 44px;
  height: 44px;
  margin: 0 auto 1rem;
  font-size: 44px;
  line-height: 0;
  text-align: center;
  color: var(--color-yellow);
}
.contacts-item .title {
  display: block;
  margin: 1rem 0;
  font-size: 2rem;
  line-height: 130%;
  font-weight: 500;
  text-align: center;
}
.contacts-item .info {
  font-size: 1.25rem;
  line-height: 135%;
  text-align: center;
}
.contacts-item .info .phone,
.contacts-item .info .email {
  font-size: 1.5rem;
  line-height: 150%;
}
.contacts-item .info a {
  color: var(--color-text-primary);
  text-decoration: none;
}

footer .footer-inner {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  padding: 5rem 0 4rem;
}
footer .footer-inner .menus,
footer .footer-inner .contacts {
  flex: 1;
}
footer .footer-inner .logo {
  flex: 0 0 152px;
  margin: 0 2rem;
  text-align: center;
}
footer .footer-inner .menus .nav {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
}
footer .footer-inner .menus .nav li {
  margin: 0 0 1rem;
}
footer .footer-inner .menus .nav li:last-of-type {
  margin-bottom: 0;
}
footer .footer-inner .menus .nav li a {
  font-size: 1.125rem;
  line-height: 130%;
  color: var(--color-text-primary);
  text-decoration: none;
}
footer .footer-inner .contacts {
  text-align: right;
}
footer .footer-inner .contacts .phone,
footer .footer-inner .contacts .email {
  margin: 1rem 0;
}
footer .footer-inner .contacts .email {
  margin-bottom: 0;
}
footer .footer-inner .contacts .phone a,
footer .footer-inner .contacts .email a {
  color: var(--color-text-primary);
  text-decoration: none;
}
footer .footer-inner .contacts .phone a {
  font-size: 1.5rem;
  line-height: 130%;
}
footer .footer-inner .contacts .email a {
  font-size: 1.125rem;
  line-height: 130%;
}
footer .copy {
  padding: 1rem 0;
}
footer .copy p {
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 130%;
  text-align: center;
  color: var(--color-text-primary);
}
footer .copy p {
  color: var(--color-text-primary);
}

.catalog-items {}
.catalog-items .row {
  align-items: stretch;
}
.catalog-items .row > * {}
.catalog-item {
  display: block;
  padding: .75rem;
  height: 100%;
  background: #B3E1DC;
}
.catalog-item .image {
  display: block;
  width: auto;
  height: 300px;
}
.catalog-item .image.noimage {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background: #A3D1CC;
}
.catalog-item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}
.catalog-item .image.noimage img {
  width: 128px;
  height: 84px;
  object-fit: contain;
  object-position: center;
  filter: grayscale(1);
  opacity: .15;
}
.catalog-item .title {
  display: block;
  margin: 1rem 0 0;
  padding: 0;
  text-decoration: none;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 130%;
  color: var(--color-text-primary);
}
.catalog-item .childs {
  margin: 0;
  padding: 0;
  list-style: none;
}
.catalog-item .childs li {
  margin: .15rem 0;
}
.catalog-item .childs li a {
  text-decoration: none;
  font-size: 1.125rem;
  line-height: 110%;
  color: var(--color-text-primary);
}
.catalog-info {
  display: block;
  padding: 1.5rem;
  font-size: 1.25rem;
  line-height: 135%;
  font-weight: 300;
  border: 2px solid var(--color-yellow);
}
.catalog-info p {
  margin: 0 0 1rem;
}
.catalog-info p:last-child {
  margin: 0;
}
.catalog-info strong,
.catalog-info b {
  font-weight: 500;
}
.catalog-description {
  font-size: 1.25rem;
  line-height: 135%;
  font-weight: 300;
}
.catalog-description strong,
.catalog-description b {
  font-weight: 400;
}
.catalog-description ul {
  margin: 1.5rem 0;
  padding: 0;
  list-style: none;
}
.catalog-description ul li {
  margin: 1.25rem 0;
  padding-left: 2.5rem;
  position: relative;
}
.catalog-description ul li:before {
  content: '';
  position: absolute;
  left: 0;
  top: -1px;
  display: block;
  width: 32px;
  height: 32px;
  background: url('data:image/svg+xml,<svg width="22" height="17" viewBox="0 0 22 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.6 16.0333L0 8.43333L1.9 6.53333L7.6 12.2333L19.8333 0L21.7333 1.9L7.6 16.0333Z" fill="%23009888"/></svg>');
  background-repeat: no-repeat;
  background-size: 22px;
  background-position: center;
}
.catalog-description ul li:first-child {
  margin-top: 0;
}
.catalog-description ul li:last-child {
  margin-bottom: 0;
}


.catalog-product {}
.catalog-product .row {
  align-items: stretch;
}
.catalog-product .product-offer {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.5rem;
  margin: 0 0 1.5rem;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--color-yellow);
}
.catalog-product .product-offer img {
  display: block;
  height: 32px;
  margin-right: 1rem;
}
.catalog-product .image {
  width: 100%;
  height: 100%;
  max-height: 650px;
  min-height: 300px;
}
.catalog-product .image {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background: rgba(69,69,69,.08);
}
.catalog-product .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.catalog-product .image.noimage img {
  width: 128px;
  height: 84px;
  object-fit: contain;
  object-position: center;
  filter: grayscale(1);
  opacity: .15;
}
.catalog-product .page-header h1 {
  font-size: 3rem;
  font-weight: 400;
  margin: 0 0 2rem;
}

.catalog-product .product-description {
  margin: 2rem 0;
  padding: 1.5rem;
  background: #B2E0DB;
  font-size: 1.25rem;
  line-height: 135%;
  font-weight: 300;
}
.catalog-product .product-description strong,
.catalog-product .product-description b {
  font-weight: 400;
}
.catalog-product .product-description ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.catalog-product .product-description ul li {
  margin: 1.25rem 0;
  padding-left: 2.5rem;
  position: relative;
}
.catalog-product .product-description ul li:before {
  content: '';
  position: absolute;
  left: 0;
  top: -1px;
  display: block;
  width: 32px;
  height: 32px;
  background: url('data:image/svg+xml,<svg width="22" height="17" viewBox="0 0 22 17" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.6 16.0333L0 8.43333L1.9 6.53333L7.6 12.2333L19.8333 0L21.7333 1.9L7.6 16.0333Z" fill="%23009888"/></svg>');
  background-repeat: no-repeat;
  background-size: 22px;
  background-position: center;
}
.catalog-product .product-description ul li:first-child {
  margin-top: 0;
}
.catalog-product .product-description ul li:last-child {
  margin-bottom: 0;
}
.catalog-product .product-info {
  font-weight: 500;
}
.catalog-product .product-advantages {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: flex-start;
  margin: 2rem 0;
}
.catalog-product .product-advantage {
  flex: 0 0 50%;
  text-align: center;
}
.catalog-product .product-advantage .icon {
  display: block;
  width: 45px;
  height: 45px;
  margin: 0 auto .625rem;
}
.catalog-product .product-advantage .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.catalog-product .product-advantage span {
  display: block;
  text-align: center;
  font-size: 1.5rem;
  line-height: 130%;
  font-weight: 400;
}
.partner {
  text-decoration: none;
  color: var(--color-text-primary);
}
.partner .image {
  margin: 0 auto 20px;
  max-width: 220px;
  height: 175px;
}
.partner .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.nav-tabs {
	--bs-nav-tabs-border-width: 0;
	--bs-nav-tabs-border-radius: 0;
	--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
	--bs-nav-tabs-link-active-color: #fff;
	--bs-nav-tabs-link-active-bg: var(--color-yellow);
}
.nav-tabs .nav-link {
	color: var(--color-text-primary);
}
.masonry-item .play {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
  color: #fff;
  transition: var(--transition);
}
.masonry-item .play:hover {
  color: var(--color-yellow);
}
.page-header {
	margin-bottom: 1rem;
}