:root {
  --bs-body-font-family: "Mulish", sans-serif;
  --bs-body-font-family-2: "RubikGlitch", sans-serif;
  --bs-body-color: #1e1e1e;
  --bs-front-h1: 407px;
  --bs-not-front-h1: 48px;
  --bs-block-title: 48px;
  --bs-form-title: 36px;
  --bs-link-color: #1e1e1e;
  --bs-link-hover-color: #3c2981;
  --btn-background: #fff;
  --bs-product-teaser-title: 20px;
  --bs-btn-font-weight: 700;
  --bs-padding-catalog: 100px 0 100px;
  --bs-padding-gallery: 0 0 100px;
  --bs-padding-form: 0 0 98px;
  --bs-border-color: #1e1e1e;
  --btn-background-hover: transparent;
  .nav {
    --bs-nav-link-font-weight: 500;
  }
  .btn-primary {
    --bs-btn-color: #1e1e1e;
    --bs-btn-bg: #fff;
    --bs-btn-border-color: #3c2981;
    --bs-btn-hover-bg: #3c2981;
    --bs-btn-hover-border-color: #3c2981;
    --bs-btn-active-bg: #3c2981;
    --bs-btn-active-border-color: #3c2981;
    --bs-btn-disabled-bg: #3c2981;
    --bs-btn-disabled-border-color: #3c2981;
  }
  .btn {
    --bs-btn-padding-y: 0.315rem;
    --bs-btn-border-radius: 104px;
    --bs-btn-border-width: 3px;
    --bs-btn-font-weight: 700;
  }
}
h1 {
  font-family: var(--bs-body-font-family-2);
}
.not-front main {
  margin-top: 30px;
}
.wr_front_content h1 {
  font-size: var(--bs-front-h1);

  text-align: center;
  line-height: 80%;
  margin-top: 40px;
}
.block-title {
  font-size: var(--bs-block-title);
  font-family: var(--bs-body-font-family-2);
  text-transform: uppercase;
  margin-bottom: 20px;
}
a {
  color: #1e1e1e;
  text-decoration: none;
}
a:hover {
  color: #1e1e1e;
}
.more-link {
  position: absolute;
  top: 16px;
  right: 0;
  text-align: right;
}
.more-link a {
  border: 3px solid #3c2981;
  background-color: #fff;
  display: block;
  text-align: center;
  width: 177px;
  padding: 5px;
  font-weight: 700;
  border-radius: 104px;
}
.more-link a:hover {
  background-color: #3c2981;
  color: #fff;
}

/* header */
a.link-front {
  font-weight: 600;
}
.contact a,
.contact {
  font-size: 24px;
  color: #3c2981;
  font-weight: 700;
}
header .col-contacts {
  gap: 20px;
  width: 575px;
}
header .col-contacts img {
  width: 24px;
}
header .col-icon {
  width: 113px;
}
header .col-callback {
  width: 177px;
}
.btn-form {
  width: 100%;
}
header .logo {
  width: 207px;
}
header .logo img {
  width: 100%;
}
.header-desktop {
  background-color: #fff;
  border-radius: 20px;
  padding: 30px 10px 16px 19px;
}
.header-top {
  margin-bottom: 34px;
}
.header-bottom {
  background: #fff;
  position: relative;
}
header {
  padding: 20px 0 15px;
}
.bg-block {
  background: url(/sites/all/themes/vesta_theme/image/bg-block.png) center
    center no-repeat;
  background-size: cover;
}
header .region-search {
  display: none;
}
header .region-search.active {
  display: block;
  position: absolute;
  bottom: 4px;
  right: 46px;
}
button.js-search-btn {
  background: url(/sites/all/themes/vesta_theme/image/search.svg) center center
    no-repeat;
  color: transparent;
  border: none;
  width: 34px;
  height: 43px;
  margin-left: 43px;
}
button.js-search-btn.active {
  background: url(/sites/all/themes/vesta_theme/image/close.svg) center center
    no-repeat;
}
.search-form__submit,
.search-form__submit:hover,
.search-form__submit:active,
.search-form__submit:first-child:active,
.search-form__submit:focus-visible,
.search-form__submit:focus,
.search-form__submi:not(:disabled):not(.disabled).active {
  color: transparent;
  background-color: transparent;
  border: none;
  background-image: url(/sites/all/themes/vesta_theme/image/search.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  width: 20px;
  height: 20px;
  padding: 0;
}
.nav {
  --bs-nav-link-padding-x: 10px;
}
.red {
  color: #ff4081;
}
.yellow {
  color: #fff940;
}
.blue {
  color: #40c9ff;
}
.pink {
  color: #f28cff;
}
.orange {
  color: #ff9f40;
}
.violet {
  color: #7479ff;
}
.green {
  color: #70ff40;
}
.col-cart img {
  width: 100%;
}
/* end header */

/* слайдер */
.slider-block {
  padding-top: 15px;
}
.node--type-slide .field--name-field-image {
  border-radius: 40px;
  overflow: hidden;
}
button.slick-next.slick-arrow {
  right: -115px;
}
button.slick-prev.slick-arrow {
  left: -115px;
}
.slider-block button.slick-next.slick-arrow::before,
.slider-block button.slick-prev.slick-arrow::before {
  background-image: url(/sites/all/themes/vesta_theme/image/arrow.svg);
}
button.slick-arrow {
  width: 62px;
  height: 52px;
}
button.slick-arrow::before {
  width: 52px;
  height: 62px;
}
/* end слайдер */

/* каталог */
.catalog-block {
  padding: var(--bs-padding-catalog);
  background: url(/sites/all/themes/vesta_theme/image/bg-catalog.svg) center
    80px no-repeat;
}
img.image-style-tizer-tovara {
  border-radius: 30px;
}
.product-teaser .field--name-quantity {
  display: none;
}
.product-teaser {
  gap: 10px;
  height: 100%;
  justify-content: space-between;
}
.product-teaser .field--name-field-image-product-view {
  margin-bottom: 20px;
}
.product-teaser .field--name-title {
  font-weight: 700;
  font-size: var(--bs-product-teaser-title);
  text-transform: uppercase;
}
.product-teaser .field--name-price {
  margin-bottom: 20px;
  font-weight: 700;
}
.product-teaser .button--buy-now {
  width: 100%;
}
.product-teaser .button--add-to-cart {
  display: none;
}
.view-id-tovary .view-content {
  row-gap: 30px;
}
.region-catalog {
  position: relative;
}
/* end каталог */

/* галерея */
.gallery-block {
  background: url(/sites/all/themes/vesta_theme/image/bg-gallery.svg) 103% 75px
    no-repeat;
  padding: var(--bs-padding-gallery);
}
.view-fotogalereya.view-display-id-block_1 .slick-slide.slick-active > div {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
}
.region-gallery {
  position: relative;
}

.node--type-photogallery.node--view-mode-full .field--name-field-gallery {
  row-gap: 30px;
}
.field--name-field-gallery img {
  border-radius: 30px;
}
.field--name-field-gallery .slick-slide img {
  height: 270px;
  object-fit: cover;
}
/* end галерея */

/* ФОС */
.form-block {
  background: url(/sites/all/themes/vesta_theme/image/bg-form.svg) center 15px
    no-repeat;
  padding: var(--bs-padding-form);
}
div#block-vesta-theme-vebforma {
  width: 66%;
}
#block-vesta-theme-kontentblokufos h3 {
  font-size: var(--bs-form-title);
  font-weight: 700;
}
#block-vesta-theme-kontentblokufos p {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 95px;
}
.region-form {
  display: flex;
  gap: 68px;
}
div#block-vesta-theme-kontentblokufos .field--name-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.webform-submission-callback-form .form-actions,
.js-form-item-message,
.webform-button--submit {
  width: 100%;
}

.form-block .form-control {
  padding: 20px 16px;
  border-radius: 10px;
  margin: 0;
}
.form-block .js-form-item-name,
.form-block .js-form-item-email {
  width: 46%;
}
.webform-submission-callback-form {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 15px;
}
.form-block .webform-submission-callback-form {
  flex-wrap: wrap;
  flex-direction: row;
  row-gap: 20px;
}
.js-form-item-privacy {
  display: flex;
  gap: 10px;
}
.js-form-item-privacy .form-item--error-message {
  order: 3;
}
div#block-vesta-theme-kontentblokufos .field--name-body.clearfix:after {
  display: none;
}
.form-control:focus {
  border-color: #3c2981;
  box-shadow: 0 0 0 0.25rem rgb(60 41 129 / 9%);
}
/* end ФОС */
.mapContainer {
  height: 494px;
}
/* footer */
footer {
  padding: 50px 0 28px;
}
#block-vesta-theme-osnovnayanavigaciya-menu,
#block-vesta-theme-katalog-menu {
  text-transform: uppercase;
  font-weight: 700;
}
footer .col-logo {
  width: 207px;
}
footer .col-logo img {
  width: 100%;
}
footer ul.nav {
  flex-direction: column;
}
footer a.nav-link {
  padding: 0 0 5px;
}
nav#block-vesta-theme-katalog .navbar-nav {
  height: 171px;
}
footer .col-nav {
  width: 228px;
}
.col-nav-catalog {
  width: 330px;
}
.row-copiryght {
  margin-top: 23px;
  color: #888888;
  font-weight: 500;
  row-gap: 10px;
}
.row-copiryght a {
  color: #888888;
}
/* end footer */

/* catalog */
.taxonomy-term--type-catalog {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
/* end catalog */

/* карточка товара */
.form-type-number label {
  display: none;
}
.field--name-quantity {
  display: flex;
}
.form-number {
  width: 50px;
  text-align: center;
  border: 2px solid #fff;
  background-color: transparent;
  width: 57px;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
}
span.btn-minus,
span.btn-plus {
  padding: 5px 23px;
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  cursor: pointer;
}
span.btn-minus {
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
span.btn-plus {
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.product-full-info .field--name-quantity {
  margin-bottom: 20px;
}
img.image-style-tovar {
  width: 100%;
  object-fit: cover;
  border-radius: 30px;
  height: 460px;
}
.field--name-field-image-product-view button.slick-arrow::before {
  width: 32px;
  height: 38px;
}
.product-full-info .field--name-price {
  font-size: 30px;
  font-weight: 700;
  color: #fff;
  display: flex;
  gap: 2px;
}
.product-full-info .field--name-price .field__label {
  order: 1;
}
.product-full-info h1 {
  font-size: var(--bs-not-front-h1);
  text-transform: uppercase;
  color: #fff;
}
.field--name-field-blok-s-dopami {
  margin-top: 30px;
}
.field--name-field-blok-s-dopami .field__label {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
}
.paragraph--type--blok-s-dop-cenami {
  display: flex;
  gap: 20px;
  width: 357px;
  justify-content: space-between;
  color: #fff;
  font-weight: 500;
  font-size: 20px;
}
.content-top {
  font-size: 18px;
  font-weight: 700;
}
.field--name-field-nalichie {
  color: #88ff91;
}
.field--name-field-link-reviews a {
  color: #fff;
  text-decoration: underline;
}
.field--name-field-link-reviews a:hover {
  color: #88ff91;
}
.current-slide.slick-initialized {
  order: 2;
  width: 480px;
}
.nav-slide .slick-list {
  width: 90px;
  margin-top: 55px;
}
.current-slide.slick-initialized .slick-slide img {
  width: 100%;
  height: 528px;
  object-fit: cover;
}
.nav-slide .element img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 20px;
  margin: 0 auto;
}
.product-view-full button.slick-prev.slick-arrow {
  top: 25px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.product-view-full button.slick-next.slick-arrow {
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -24px;
  top: auto;
}
.product-full-image {
  padding: 0;
}
.product-view-full button.slick-prev.slick-arrow::before {
  transform: rotate(0);
  background-image: url(/sites/all/themes/vesta_theme/image/arrow.svg);
}
.product-view-full button.slick-next.slick-arrow::before {
  transform: rotate(180deg);
  background-image: url(/sites/all/themes/vesta_theme/image/arrow.svg);
}
.slick-vertical .slick-slide {
  margin-bottom: 20px;
}
.product-view-full button.slick-arrow {
  width: 35px;
  height: 41px;
}
.product-full-info {
  padding-left: 30px;
}
.product-full .field--name-body,
.product-full .field--name-field-harakteristiki,
.product-full .field--name-body a {
  color: #fff;
  font-weight: 500;
}
.not-front div#block-vesta-theme-page-title {
  margin-bottom: 40px;
}
.product-full .field--name-body .field__label,
.product-full .field--name-field-harakteristiki .field__label {
  font-size: 20px;
  font-weight: 700;
}
.product-full .field--name-field-harakteristiki p {
  margin-bottom: 5px;
}

.product-full .field--name-body ul {
  padding-left: 20px;
}
.product-full .button--buy-now {
  width: 177px;
  background-color: transparent;
  border: 2px solid #fff;
  color: #fff;
}
.product-full .button--buy-now:hover {
  background-color: #fff;
  color: #000;
}
.product-full .button--add-to-cart {
  background-color: #fff;
  border: 2px solid #fff;
  width: 177px;
}
.product-full .button--add-to-cart:hover {
  color: #fff;
  background-color: transparent;
}
.wr_content {
  padding-bottom: 35px;
}
.product-full .form-actions {
  display: flex;
  gap: 20px;
}
.current-slide .element {
  width: 480px;
  height: 528px;
  border-radius: 20px;
  border: 5px solid #fff;
  overflow: hidden;
}
.current-slide .element img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.field--name-field-link-video a {
  color: #3c2981;
  text-decoration: underline;
  display: flex;
  gap: 5px;
  font-family: var(--bs-body-font-family-2);
}
.field--name-field-link-video a:before {
  content: "";
  background: url(/sites/all/themes/vesta_theme/image/rutube.png) center center
    no-repeat;
  background-size: contain;
  width: 20px;
  height: 20px;
  display: block;
}
/* end карточка товара */

/* страница корзины */
.js-form-type-number {
  display: flex;
}
.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type: rgb(162 53 129 / 12%);
}
.layout-region-checkout-footer {
  margin-top: 20px;
}
.field--type-address legend {
  display: none;
}
span.fieldset-legend a {
  font-size: 14px;
}
.views-field-edit-quantity .form-number {
  border: 3px solid #3c2981;
  border-radius: 10px;
  color: #000;
}
/* end страница корзины */

div#block-vesta-theme-vestaprivacyaccessblock {
  background: url(/sites/all/themes/vesta_theme/image/bg-metrika.png) center
    center no-repeat;
  background-size: cover;
}
.block.block-vesta-privacy-access-d10 .block-metrika-btns {
  margin: 0 auto;
}
.block.block-vesta-privacy-access-d10 .block-metrika-btns button {
  text-transform: none;
}
.block.block-vesta-privacy-access-d10 .block-metrika-content p strong,
.block.block-vesta-privacy-access-d10 .block-metrika-content p,
.block.block-vesta-privacy-access-d10 .block-metrika-content p a {
  text-align: center;
}
.ui-widget-header.ui-corner-all {
  background: #fff;
  border: none;
}
.ui-dialog .ui-dialog-titlebar-close {
  background: url(/sites/all/themes/vesta_theme/image/close.svg) center center
    no-repeat;
  border: none;
  width: 15px;
  background-size: contain;
}
.ui-dialog .ui-dialog-buttonpane button {
  background-color: #fff;
  border: 3px solid #3c2981;
  border-radius: 20px;
  padding: 5px;
}
.ui-dialog .ui-dialog-buttonpane button:hover {
  color: #fff;
  background-color: #3c2981;
}
.ui-widget.ui-widget-content {
  border-color: #3c298178;
  border-radius: 20px;
  overflow: hidden;
}
div#drupal-modal .webform-element-description {
  font-size: 12px;
}
.ajax-progress .throbber,
.ajax-progress-throbber .throbber {
  display: inline-block;
  float: none;
  margin: 400px auto 0 auto;
  width: 64px;
  height: 64px;
  background: url("../image/preloader.gif") no-repeat center center;
}
.ajax-progress,
.ajax-progress-throbber {
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.2);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4444;
  vertical-align: middle;
  text-align: center;
}
.pswp {
  --pswp-bg: rgba(0, 0, 0, 0.7);
}
