/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

.calculate-page{position:relative;padding-top:30px;padding-bottom:80px;border-top:1px solid #e9e9e9}.calculate-page::before{position:absolute;content:'';top:0;left:0;right:0;width:100%;height:100%;background-image:url(../themes/zavod-kamnei/assets/images/calculate-background.jpg);background-repeat:no-repeat;background-position:top;background-attachment:fixed;background-size:cover;opacity:.23;z-index:-1}.breadcrumbs__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}.breadcrumbs__item{font-family:TTNorms-Regular;font-size:16px;line-height:20px;color:#038642}.breadcrumbs__item:not(:first-child){display:flex}.breadcrumbs__item:not(:first-child)::before{display:block;margin-right:10px;position:relative;content:'';top:50%;width:22px;height:1px;background-color:#bab9b9}.breadcrumbs__item:not(:last-child){margin-right:15px}.breadcrumbs__item:last-child{color:#767373}.breadcrumbs__item__link{cursor:pointer;transition:.2s}.breadcrumbs__item__link:hover{color:rgba(3,134,66,.4)}@media (max-width:575px){.breadcrumbs__item{font-size:14px;line-height:18px}}.calculate-page .info{margin-top:40px}.calculate-page .info__title{margin:0;padding:0;font-family:TTNorms-Bold;font-size:46px;line-height:53px;color:#48443e;text-align:center;text-align:left}.calculate-page .info__description{margin:25px 0 0;padding:0;font-family:TTNorms-Regular;font-size:18px;line-height:26px;color:#48443e}.step-list__list{list-style:none;margin:40px 0 0;padding:0;display:flex;justify-content:space-between;flex-wrap:wrap}.step-list__item{position:relative;width:14.28%;padding-right:10px;padding-left:10px;padding-bottom:30px;border-bottom:6px solid;border-color:#96c8ae}.wrapper__step-list__item{height:100%;display:flex;flex-direction:column;justify-content:center}.step-list__item__image{display:block;margin:0 auto}.step-list__item__title{margin:5px 0 0;padding:0;font-family:TTNorms-Medium;font-size:16px;line-height:normal;color:#48443e;text-align:center}.step-list__item__step{position:absolute;display:flex;justify-content:center;align-items:center;bottom:-20px;margin-left:auto;margin-right:auto;left:0;right:0;width:34px;height:34px;border-radius:50%;background-color:#038642;font-weight:700;font-size:16px;line-height:normal;color:#fff}.step-list__item:nth-child(odd){border-color:#038642}.step-list__item:nth-child(odd) .step-list__item__step{background-color:#96c8ae}@media (max-width:575px){.calculate-page .info{margin-top:20px}.calculate-page .info__title{font-size:26px;line-height:36px}.calculate-page .info__description{margin-top:15px;font-size:16px;line-height:24px}.step-list__item{width:50%;margin-bottom:40px}}@media (min-width:576px) and (max-width:767px){.calculate-page .info{margin-top:20px}.calculate-page .info__title{font-size:24px;line-height:35px}.calculate-page .info__description{margin-top:15px;font-size:16px;line-height:24px}.step-list__item{width:33.3%;margin-bottom:40px}}@media (min-width:768px) and (max-width:991px){.step-list__item{width:25%;margin-bottom:40px}}.package-services{margin-top:70px}.package-services__info{padding:45px 50px;margin-bottom:65px;background:url(../themes/zavod-kamnei/assets/images/calculate-info.jpg) top no-repeat #f0ede6;background-size:cover}.package-services__info__title{margin:0;padding:0;font-family:TTNorms-Medium;font-size:32px;line-height:53px;color:#48443e}.package-services__info__description{width:800px;padding:0;margin:15px 0;font-size:18px;line-height:26px;color:#48443e}.package-services__info__description a{color:#038642}.package-services__info__description i{color:#038642;font-style:normal}.package-services__title{font-family:TTNorms-Bold;font-size:46px;line-height:53px;color:#48443e;text-align:center;text-align:left}.package-services__list{margin:40px 0 0;padding:0;list-style:none;display:flex;justify-content:space-evenly;flex-wrap:wrap}.package-services__item{padding-bottom:20px;width:100%;height:100%;max-width:270px;background-color:#fff;border-bottom:1px solid #e9e9e9;border-left:1px solid #e9e9e9;border-right:1px solid #e9e9e9}.package-services__item:not(:last-child){margin-right:5px}.package-services__item__title{margin:0;padding:15px 0 10px;background-color:#f0ede6;font-family:Adventure;font-weight:400;font-size:32px;line-height:45px;color:#48443e;text-align:center}.package-services__item__cost{display:block;width:100%;font-family:TTNorms-Bold;font-size:24px;line-height:53px;color:#48443e;text-align:center}.package-services__selected-products__list{list-style:none;margin:0 0 20px;padding:0 20px;display:flex;flex-direction:column;transition:1.2s;max-height:250px;overflow:hidden}.package-services__selected-products__list--open{max-height:2500px}.package-services__selected-products__list--close{display:none}.package-services__selected-products__item{display:flex;justify-content:space-between;flex-wrap:wrap}.package-services__selected-products__item:not(:last-child){margin-bottom:20px}.selected-products__item__title{margin:0;padding:0;font-family:TTNorms-Medium;font-weight:400;font-size:16px;line-height:normal;color:#038642}.selected-products__item__title__link{cursor:pointer;transition:.2s}.selected-products__item__title__link:hover{opacity:.5}.selected-products__item__description{font-size:14px;line-height:18px;color:#767373;text-transform:lowercase}.selected-products__item__cost{font-family:TTNorms-Bold;font-size:16px;line-height:22px;color:#48443e}.wrapper__package-services__selected-products__footer{width:100%;padding-right:20px;padding-left:20px}.package-services__selected-products__button-list-toggle{display:block;padding:0;margin:0 auto;background-color:inherit;border:none;border-bottom:1px dashed #48443e;outline:0;font-size:16px;line-height:18px;color:#48443e;text-align:center;cursor:pointer;transition:.2s}.package-services__selected-products__button-list-toggle:hover{opacity:.5}.package-services__selected-products__button-order{width:100%;margin:30px 0 0;padding:15px 0;background-color:inherit;border:1px solid #038642;outline:0;font-size:16px;line-height:18px;color:#038642;text-align:center;cursor:pointer;transition:.2s}.package-services__selected-products__button-order:hover{background-color:#038642;color:#fff}.package-services__selected-products__button-order:active{opacity:.5}@media (max-width:575px){.package-services{margin-top:40px}.package-services__info{padding:25px 30px;margin-bottom:35px}.package-services__info__title{font-size:24px;line-height:32px}.package-services__info__description{width:100%;font-size:16px;line-height:22px}.package-services__title{font-size:26px;line-height:36px}.package-services__item:not(:last-child){margin-bottom:20px;margin-right:0}.package-services__item{width:100%;max-width:inherit}}@media (min-width:576px) and (max-width:767px){.package-services{margin-top:40px}.package-services__info{padding:25px 30px;margin-bottom:35px}.package-services__info__title{font-size:24px;line-height:32px}.package-services__info__description{width:100%;font-size:16px;line-height:22px}.package-services__title{font-size:26px;line-height:36px}.package-services__item:not(:last-child){margin-bottom:20px;margin-right:0}.package-services__item{width:48%}}@media (min-width:768px) and (max-width:991px){.package-services__info__description{width:100%}.package-services__item:not(:last-child){margin-bottom:30px;margin-right:0}.package-services__item{width:32%}}@media (min-width:992px) and (max-width:1199px){.package-services__item:not(:last-child){margin-bottom:30px;margin-right:0}}@media (min-width:1200px) and (max-width:1399px){.package-services__list{flex-wrap:nowrap}}.calculate-page .catalog{margin-top:60px}.calculate-page .catalog__title{margin:0 0 20px;padding:0;font-family:TTNorms-Medium;font-size:32px;line-height:53px;color:#48443e}.catalog__choose-product__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.catalog__choose-product__item:not(:last-child){margin-bottom:15px}.catalog__choose-product__item__header{display:flex;justify-content:space-between;background-color:#fff;border:1px solid #e9e9e9}.wrapper__catalog__choose-product__item__title{display:flex;align-items:center;padding:20px 30px;flex-grow:1}.catalog__choose-product__item--open .wrapper__catalog__choose-product__item__title{background-color:#ececeb}.catalog__choose-product__item__image-checked{display:none;margin-right:10px;transition:.3s}.catalog__choose-product__item__title--info{font-size:18px;line-height:18px;color:#767373;margin-right:5px;display:none}.catalog__choose-product__item__title,.catalog__choose-product__item__title--choose{color:#48443e;font-size:18px;line-height:18px}.catalog__choose-product__item__title{font-family:TTNorms-Bold;margin-right:5px}.catalog__choose-product__item__button-toggle{font-size:18px;line-height:18px;color:#038642;display:flex;align-items:center;padding-left:15px;padding-right:15px;border:none;background-color:#e5f3ec;cursor:pointer;transition:.2s}.catalog__choose-product__item__button-toggle:hover{opacity:.5}.catalog__choose-product__item__button-toggle::after{display:block;position:relative;content:'';margin-top:2px;margin-left:5px;width:9px;height:6px;background-image:url(../themes/zavod-kamnei/assets/images/icons/triangle-bottom.svg);cursor:pointer;transition:.2s}.catalog__choose-product__item--open .catalog__choose-product__item__button-toggle{background-color:#ececeb;color:#48443e}.catalog__choose-product__item--open .catalog__choose-product__item__button-toggle::after{background-image:url(../themes/zavod-kamnei/assets/images/icons/triangle-top.svg);cursor:pointer;transition:.2s}.catalog__choose-product__item__main{display:none;border:1px solid #e9e9e9;border-left:none;background-color:#fff}.catalog__choose-product__sort{display:flex;padding:20px 30px;border-left:1px solid #e9e9e9;border-right:1px solid #e9e9e9}.catalog__choose-product__sort__title{font-size:16px;line-height:normal;color:#48443e}.catalog__choose-product__sort-select{margin-left:5px;padding-right:15px;background-color:inherit;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:TTNorms-Medium;font-size:16px;line-height:normal;color:#038642;cursor:pointer;transition:.2s;outline:0;background-repeat:no-repeat;background-position:right}.catalog__choose-product__sort-select:hover{opacity:.6}.catalog__choose-product__main__item__button:hover,.catalog__choose-product__main__item__link:hover{opacity:.5}.catalog__choose-product__sort-select--top{background-image:url(../themes/zavod-kamnei/assets/images/icons/triangle-bottom.svg)}.catalog__choose-product__sort-select--bottom{background-image:url(../themes/zavod-kamnei/assets/images/icons/triangle-top.svg)}.catalog__choose-product__main__list{list-style:none;margin:0;padding:0;max-height:910px;overflow-y:auto;display:flex;flex-wrap:wrap}.catalog__choose-product__main__item{width:33.3%;padding:60px 50px;display:flex;flex-direction:column;justify-content:flex-end;border-top:1px solid #e9e9e9;border-left:1px solid #e9e9e9;border-right:1px solid #e9e9e9;overflow:hidden}.catalog__choose-product__main__item:nth-child(3n - 1){border-left:0;border-right:1px solid #e9e9e9}.catalog__choose-product__main__item:nth-child(3n){border-right:0;border-left:0}.catalog__choose-product__main__item__image{display:block;margin:0 auto;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.catalog__choose-product__main__item__title{padding:0;margin:30px auto 0;width:80%;font-family:TTNorms-Medium;font-weight:400;font-size:18px;line-height:22px;color:#48443e;text-align:center}.catalog__choose-product__main__item__link{cursor:pointer;transition:.2s}.catalog__choose-product__main__item__description{margin:0;padding:0;font-size:14px;line-height:22px;color:#767373;text-align:center}.catalog__choose-product__main__item__cost{font-family:TTNorms-Bold;font-size:18px;line-height:28px;color:#48443e;text-align:center}.catalog__choose-product__main__item__button{width:100%;margin-top:20px;padding:10px 0;border:1px solid #038642;background-color:inherit;font-size:16px;line-height:36px;color:#038642;text-align:center;cursor:pointer;transition:.2s}.catalog__choose-product__main__item__button:active{transition:.1s;opacity:.3;outline:0}.catalog__choose-product__main__item__button--success:disabled:hover,.catalog__choose-product__main__item__button:disabled:hover{opacity:inherit;cursor:inherit}.catalog__choose-product__main__item__button:focus{outline:0}.catalog__choose-product__main__item__button:disabled{background-color:#e9e9e9}.catalog__choose-product__main__item__button--success{background-color:#038642;color:#fff}.selected-product{padding:30px;border:1px solid #e9e9e9;background-color:#fff}.selected-product__title{font-family:TTNorms-Medium;font-size:32px;line-height:45px;color:#48443e}.selected-product__list{list-style:none;margin:15px 0 0;padding:0;display:flex;flex-direction:column}.selected-product__item{display:flex;justify-content:space-between;align-items:center;padding-top:5px;padding-bottom:5px}.selected-product__item:not(:last-child){border-bottom:1px solid #e9e9e9}.selected-product__item__title{margin:0;padding:0;font-size:16px;line-height:22px;color:#48443e}.selected-product__item__cost{font-family:TTNorms-Bold;font-size:18px;line-height:24px;color:#48443e}.selected-product__item__button__remove-cart{flex-shrink:0;width:31px;height:31px;border:none;background-color:inherit;background-image:url(../themes/zavod-kamnei/assets/images/icons/selected-product-remove-cart.png);background-position:center;background-repeat:no-repeat;font-size:0;cursor:pointer;transition:.2s}.selected-product__item__button__remove-cart:hover{opacity:.5}.selected-product__item__button__remove-cart:active{transition:.1s;opacity:.3}.selected-product__item__button__add-cart{display:block;margin:20px auto 0;padding:10px 35px;border:none;background-color:#038642;font-size:16px;line-height:36px;color:#fff;text-align:center;cursor:pointer;transition:.2s}.selected-product__item__button__add-cart:hover{opacity:.5}.selected-product__item__button__add-cart:active{transition:.1s;opacity:.3;outline:0}.selected-product__item__button__add-cart:focus{outline:0}@media (max-width:575px){.calculate-page .catalog{margin-top:30px}.calculate-page .catalog__title{font-size:26px;line-height:36px}.catalog__choose-product__item__header{flex-wrap:wrap}.wrapper__catalog__choose-product__item__title{padding:10px 15px}.catalog__choose-product__item__button-toggle,.catalog__choose-product__item__title,.catalog__choose-product__item__title--choose{font-size:16px}.catalog__choose-product__item__button-toggle{padding:10px}.catalog__choose-product__sort{padding:10px 15px;flex-wrap:wrap}.catalog__choose-product__sort-select,.catalog__choose-product__sort__title{font-size:14px}.catalog__choose-product__main__list{max-height:500px}.catalog__choose-product__main__item__title{width:100%;word-break:break-word}.catalog__choose-product__main__item{width:50%;padding:10px}.selected-product{padding:15px}.selected-product__title{font-size:26px}}@media (min-width:576px) and (max-width:767px){.calculate-page .catalog{margin-top:30px}.calculate-page .catalog__title{font-size:26px;line-height:36px}.wrapper__catalog__choose-product__item__title{width:auto;padding:10px 15px}.catalog__choose-product__item__button-toggle,.catalog__choose-product__item__title,.catalog__choose-product__item__title--choose{font-size:16px}.catalog__choose-product__item__button-toggle{padding:10px}.catalog__choose-product__sort{padding:10px 15px}.catalog__choose-product__sort-select,.catalog__choose-product__sort__title{font-size:14px}.catalog__choose-product__main__list{max-height:500px}.catalog__choose-product__main__item__title{width:100%;word-break:break-word}.catalog__choose-product__main__item{width:50%;padding:10px}.selected-product{padding:15px}.selected-product__title{font-size:26px}}@media (min-width:768px) and (max-width:991px){.catalog__choose-product__main__item{width:50%}.selected-product__item__button__add-cart{padding:15px}.catalog__choose-product__item__title{display:none}}@media (min-width:992px) and (max-width:1199px){.catalog__choose-product__main__item{width:50%}}@media (max-width:575px){.calculate-page{padding-top:15px;padding-bottom:50px}}
a,a:active,a:focus,a:hover{text-decoration:none}a{color:inherit}.visually-hidden:not(:focus):not(:active),input[type=checkbox].visually-hidden,input[type=radio].visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px;padding:0!important;border:0!important;white-space:nowrap;clip:rect(0 0 0 0);overflow:hidden}body{display:flex;flex-direction:column;min-height:100vh;margin:0;padding:0;background-color:#fff;font-family:TTNorms-Regular,sans-serif;font-weight:400;font-size:14px;line-height:18px;color:#141512}.loading:before,.loading:not(:required):after{display:block;content:''}main{flex-grow:1}footer{flex-shrink:0}.loading{position:fixed;z-index:999;height:2em;width:2em;overflow:visible;margin:auto;top:0;left:0;bottom:0;right:0}.loading:before{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(48,48,48,.3)}.loading:not(:required){font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.main-footer__phone__link,.main-footer__social__instagram__link,.main-footer__social__text,.modal__form__legend{font-family:TTNorms-Bold}.loading:not(:required):after{font-size:10px;width:1em;height:1em;margin-top:-.5em;-webkit-animation:spinner 1.5s infinite linear;animation:spinner 1.5s infinite linear;border-radius:.5em;box-shadow:rgba(0,0,0,.75) 1.5em 0 0 0,rgba(0,0,0,.75) 1.1em 1.1em 0 0,rgba(0,0,0,.75) 0 1.5em 0 0,rgba(0,0,0,.75) -1.1em 1.1em 0 0,rgba(0,0,0,.75) -1.5em 0 0 0,rgba(0,0,0,.75) -1.1em -1.1em 0 0,rgba(0,0,0,.75) 0 -1.5em 0 0,rgba(0,0,0,.75) 1.1em -1.1em 0 0}@-webkit-keyframes spinner{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes spinner{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.main-footer{padding-bottom:20px;background-color:#f4f4f4;border-top:1px solid #e9e9e9}.main-footer .container{display:flex;flex-wrap:wrap}.main-footer__block{width:50%}.main-footer__block--left{display:flex;justify-content:space-between;padding-top:30px;padding-bottom:30px;padding-right:30px;border-right:1px solid #e9e9e9}.main-footer__site-nav__list{list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;flex-wrap:wrap;width:50%}.main-footer__site-nav__item{width:50%;font-size:16px;line-height:36px;color:#5c574f}.main-footer__site-nav__item__link{cursor:pointer;transition:.2s}.main-footer__site-nav__item__link:hover{opacity:.5}.main-footer__address-phone{margin-top:15px}.main-footer__address{display:flex;margin:0 0 15px;padding:0}.main-footer__address span{margin-right:5px}.main-footer__phone__link{font-size:16px;line-height:20px;cursor:pointer;transition:.2s}.main-footer__phone__link:hover{opacity:.5}.wrapper__main-footer__phone-viber{display:flex;margin-bottom:15px}.main-footer__viber__link{font-size:0;display:block;margin-left:5px;width:17px;height:18px;background-image:url(../themes/zavod-kamnei/assets/images/icons/viber.png);cursor:pointer;transition:.2s}.main-footer__viber__link:hover{opacity:.5}.main-footer__block--right{display:flex;justify-content:space-between;padding-top:30px;padding-bottom:30px;padding-left:30px}.main-footer__email__link{font-size:16px;line-height:50px;color:#038642;text-decoration:underline;cursor:pointer;transition:.2s}.main-footer__email__link:hover{opacity:.5}.main-footer__social__text{margin:15px 0 0;padding:0;font-size:16px;line-height:20px}.main-footer__social__instagram__link{margin:25px 0 0;padding:0;display:flex;position:relative;font-size:16px;line-height:20px;cursor:pointer;transition:.2s}.main-footer__social__instagram__link:hover{opacity:.5}.main-footer__social__instagram__link::after{display:block;margin-left:5px;margin-top:2px;content:'';width:16px;height:16px;background-image:url(../themes/zavod-kamnei/assets/images/icons/instagram.png)}.main-footer__button{display:block;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;margin:15px 0 0;padding:10px 20px;border:none;background-color:#038642;outline:0;font-size:16px;line-height:20px;color:#fff;cursor:pointer;transition:.2s}.main-footer__button:hover{opacity:.75}.main-footer__button:active{opacity:.3}.main-footer__button:active,.main-footer__button:focus{outline:0}.wrapper__main-footer__bottom-row{display:flex;justify-content:space-between;width:100%;color:#5c574f}.wrapper__main-footer__bottom-row a{text-decoration:underline;cursor:pointer;transition:.2s}.wrapper__main-footer__bottom-row a:hover{opacity:.5}@media (max-width:575px){.main-footer__block,.main-footer__site-nav__list{width:100%}.main-footer__block--left{flex-wrap:wrap;padding:0;border-right:none}.main-footer__block--right{flex-direction:column;padding:0}.main-footer__social__text{margin-top:0}.main-footer__social{display:flex;flex-wrap:wrap}.main-footer__social__instagram__link{margin-top:0;margin-left:10px}.main-footer__site-nav__item{width:33%}}@media (min-width:576px) and (max-width:767px){.main-footer__block--left{flex-wrap:wrap}.main-footer__site-nav__list{width:100%}.main-footer__block--right{flex-wrap:wrap}}@media (min-width:768px) and (max-width:991px){.main-footer__block--left{flex-wrap:wrap}.main-footer__site-nav__list{width:100%}.main-footer__block--right{flex-wrap:wrap}}@media (min-width:992px) and (max-width:1199px){.main-footer__block--left{flex-wrap:wrap}.main-footer__site-nav__list{width:100%}.main-footer__block--right{flex-wrap:wrap}}.modal,.wrapper__modal__background{position:fixed;top:0;left:0;width:100vw;height:100vh}.modal{padding-bottom:50px;display:none;z-index:100;overflow:auto}.wrapper__modal__background{background-color:rgba(87,91,108,.7)}.wrapper__modal__content{margin:0 auto;padding:20px 50px;position:relative;top:calc(50% - 250px);width:75%;max-width:600px;min-height:148px;background-color:#fff;box-shadow:0 5px 10px 0 rgba(38,50,100,.03);border-radius:3px}.modal__header__close{display:block;margin:0 0 0 auto;padding:0;border:none;background-color:inherit;font-size:14px;line-height:20px;color:#808187;transition:.2s;cursor:pointer}.modal__header__close:hover{opacity:.7}.modal__header__close:active{outline:0;opacity:.4}.modal__header__close:focus{outline:0}.modal__form__fieldset{margin:0;padding:0;border:none}.modal__form__legend{margin:0;padding:0;font-size:32px;line-height:normal;color:#48443e}.modal__form__button,.modal__form__input,.modal__form__textarea{padding:15px 20px;font-size:18px;line-height:normal}.wrapper__modal__input{margin-top:15px;margin-bottom:20px;width:100%;display:flex;justify-content:space-between}.modal__form__input{width:48%;border:1px solid #038642}.modal__form__input:-moz-placeholder,.modal__form__input:-ms-input-placeholder,.modal__form__input::-moz-placeholder,.modal__form__input::-ms-input-placeholder,.modal__form__input::-webkit-input-placeholder{color:#adaaa7}.modal__form__input:focus{outline:0}.modal__form__textarea{margin:0;width:100%;min-height:180px;resize:none;border:1px solid #038642}.modal__form__textarea:-moz-placeholder,.modal__form__textarea:-ms-input-placeholder,.modal__form__textarea::-moz-placeholder,.modal__form__textarea::-ms-input-placeholder,.modal__form__textarea::-webkit-input-placeholder{color:#adaaa7}.modal__form__textarea:focus{outline:0}.modal__form__button{margin:15px 0 0;border:none;background-color:#038642;color:#fff;text-align:center;cursor:pointer;transition:.2s}.modal__form__button:hover{opacity:.5}@media (max-width:575px){.modal__form__button,.modal__form__input{width:100%}.wrapper__modal__content{padding:20px;top:10%}.modal__form__legend{font-size:24px}.wrapper__modal__input{flex-direction:column}.modal__form__input:last-child{margin-top:20px}}
body a,div,p,h1,h2,h3,h4,h5,h6,span,input,button,li{
  font-family: 'Montserrat', sans-serif!important;
}
.swiper-container {
    height: 300px;
}

.calculate-page p {
    margin: 25px 0 0;
    padding: 0;
    font-family: TTNorms-Regular;
    font-size: 18px;
    line-height: 26px;
    color: #48443e;
}

.calculate-page ul, .calculate-page ol {
    font-family: TTNorms-Regular;
    font-size: 18px;
    line-height: 26px;
    color: #48443e;
}

.calculate-page h1 {
    font-family: TTNorms-Bold;
    margin: 0;
    padding: 0;
    line-height: 53px;
    color: #48443e;
    text-align: left;
    font-size: 46px;

}

ol {
    margin: 20px 0 0 20px;
}

ol li {
    margin: 0 0 0.8rem 0;
    counter-increment: my-awesome-counter;
    position: relative;
}

ol li::before {
    content: counter(my-awesome-counter);
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    position: absolute;
    --size: 32px;
    left: calc(-1 * var(--size) - 10px);
    line-height: var(--size);
    width: var(--size);
    height: var(--size);
    top: 0;
    background: #038642;
    border-radius: 50%;
    text-align: center;
    box-shadow: 1px 1px 0 #999;
}

ol li::marker {
    font-size: 0;
}

.shopaholic-cart-remove {
    width: 20px;
    height: 20px;
    margin-left: 20px;
}

.cart__list li {
    align-items: center;
}

.cart__item__cost, .cart__list__total-cost {
    white-space: nowrap;
}

.rules-title {
    text-align: center;
}

.rules {
    list-style-type: none;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    align-items: start;
    justify-items: center;
    margin-top: 80px;
}

.rules-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.catalog {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    list-style-type: none;
    gap: 5px;
    background: #F3F2F1;

}
.close-button{
    display:none;
}

.catalog_drop {
    position: relative;
   }

.catalog_drop > .catalog_children {
    border-top: 2px solid green;
    display: none;
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: absolute;
    z-index: 1000;
    top: 100%;
    left: 0%;
    width: 280px;
    height: auto;
    background-color: #f6f6f6;
    border-radius: 3px;

}


.nextLVL > .catalog_children {
    display: none;
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: absolute;
    z-index: 1000;
    top: 0%;
!important;
    left: 100%;
!important;
    width: 270px;
    /*height: 470px;*/
    height: 300px;
    background-color: #f6f6f6;
    border-radius: 3px;

}

.catalog_children li {
    /*width: 100%;*/
    box-sizing: border-box;
    padding: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.catalog_children_item {

    padding: 5px 0;
    color: #151515;

}

.nextLVL ul {
    height: 300px;

}


.catalog_children_item:hover {
    color: white;
    background: #038642;;
}

.catalog_drop_link {
    display: block;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}


.catalog_children:hover .children {
    display: block;
}


.catalog_children_item.nextLVL::after {
    content: "›";
}

@media (max-width: 576px) {
    .header_categories {
        top: 21px;
        right: 50%;
        transform: translateX(50%);

    }

    .our-works-menu {
        width: auto !important;
    }

    .success {
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: calc(100% - 24px) !important;
    }

    .catalog-main__item__title {
        font-size: 14px !important;
        word-break: break-word;

    }


    .wrapper__modal__content {
        width: calc(100% - 24px);
    }

    .search-form {
        left: -206px !important;
        right: 50%;
        bottom: -34px !important;
    }

    .rules {
        margin-top: 40px;
        grid-template-columns: repeat(2, 1fr);
        padding: 0;
        row-gap: 40px;
    }

    .catalog {
        display: flex;
        justify-content: normal;
        column-gap: 21px;
        row-gap: 6px;
        width: 100%;
        padding: 0;
        margin: 0;

    }

    .close-button{
        display:block;
    }

    .catalog > li {
        width: auto;
    }

    .wrapper__cart__list {

        left: -225px !important;
        width: 100vw !important;
    }

}
.cart__list__footer {
   gap: 1px;
}

@media (min-width: 576px) and (max-width: 768px) {

    .success {
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: auto !important;
    }

    .catalog-main__item__title {
        font-size: 18px !important;
        word-break: break-word;
    }

    .wrapper__modal__content {
        width: calc(100% - 24px);
    }

    .rules {
        margin-top: 40px;
        grid-template-columns: repeat(2, 1fr);
        padding: 0;
        row-gap: 40px;
    }

    .catalog {
        display: flex;
        justify-content: normal;
        column-gap: 21px;
        row-gap: 6px;
        width: 100%;
        padding: 0;
        margin: 0;

    }

    .catalog > li {
        width: auto;
    }


}

@media (min-width: 768px) and (max-width: 992px) {
    .success {
        top: 50% !important;
        left: 50% !important;
        transform: translate(50%, -50%) !important;
        width: auto !important;
        padding: 10px 60px !important;
    }

    .rules {
        margin-top: 40px;
        grid-template-columns: repeat(3, 1fr);
        padding: 0;
        row-gap: 40px;
    }
}

.catalog-nav__item {
    position: relative;
}

.catalog-nav__more__list {
    width: 220px;
    position: absolute;
    top: 0;
    left: 200px;
    background: #f6f6f6;
    z-index: 3;
    padding: 20px !important;
    box-shadow: 0 0 10px 0 black;
    border-radius: 3px;

}

.section-works__works__list {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 320px) {
    .section-works__works__list {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 320px) and (max-width: 576px) {
    .section-works__works__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 576px) and (max-width: 768px) {
    .section-works__works__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .section-works__works__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .section-works__works__list {
        grid-template-columns: repeat(4, 1fr);
    }
}

.wrapper-form__feedback {
    margin-top: 80px !important;
    width: 500px;
    margin: 0 auto;

}

.form-feedback {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-feedback input {
    border: 1px solid #cecece;
    border-radius: 4px;
    padding: 20px;
    outline: none;
    height: 50px;
}

.form-feedback input:focus {
    border: 2px solid green;
}

.form-feedback textarea {
    border: 1px solid #cecece;
    border-radius: 4px;
    padding: 20px;
    outline: none;

}

.form-feedback textarea:focus {
    border: 2px solid #038642;
}

.form-feedback button {
    width: 100px;
    margin: 0 auto;
}

.form-feedback button {
    padding: 10px;
    color: white;
    background: #038642;
    border: none;
    cursor: pointer;
}

.calculate-page {
    margin-top: 20px;
}

.catalog-page {
    margin-top: 20px;
    padding-top: 0px;
}

.section-works__works__item {
    width: auto !important;

}

.header_categories {
    display: none;
    list-style: none;
    margin: 15px 0 0;
    width: 270px;
    position: absolute;
    background: #f6f6f6;
    z-index: 3;
    padding: 20px !important;
    box-shadow: 0 0 10px 0 black;
    border-radius: 3px;

}

.catalog-nav__more__item {
    position: relative;
}

.catalog-nav__more__item > .header_categories {
    top: -10px;
    left: 240px;
}

.main-footer__site-nav__item {
    position: relative;
}

.catalog-nav__item > .catalog-nav__list {
    margin-left: 10px;
}

.headerCategoryWithChildern > a::after {
    position: relative;
    background-image: url("https://www.zavodkamnya.ru/storage/app/media/TriangleArrow-Down-grey.png");
    background-size: 10px 5px;
    display: inline-block;
    width: 10px;
    height: 5px;
    content: "";
    left: 5px;
    bottom: 3px;

}

.categoryWithChildren::before {
    position: relative;
    background-image: url("https://www.zavodkamnya.ru/storage/app/media/532px-TriangleArrow-Down.svg.png");
    background-size: 10px 5px;
    display: inline-block;
    width: 10px;
    height: 5px;
    content: "";
    right: 5px;
    bottom: 3px;
}

.catalog-nav > .catalog-nav__list > .catalog-nav__item, .catalog-nav__list > .catalog-nav__list > .catalog-nav__item {
    padding-left: 20px;
    padding-top: 15px;
    padding-bottom: 15px;
    margin: 10px;
}

.categoryWithChildren {
    font-weight: bold;

}

li::marker {
    font-size: 24px;
}

.catalog-nav__item {
    margin-bottom: 7px !important;
    margin-right: 10px;

    background-color: white;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 3;
    background: rgba(0, 0, 0, 0.55);
    display: none;
}

.wrapper__cart-main__products__input-count {
    position: relative;
}

.max-value-cartItem {
    white-space: nowrap;
    color: white;
    padding: 10px 15px;
    background: rgba(3, 134, 66, 1);
    box-shadow: 0 0 10px 0 rgba(3, 134, 66, 1);
    position: absolute;
    top: -45px;
    right: 50%;
    right: 50%;
    transform: translateX(50%);
    border-radius: 6px;
    text-align: center;
    display: none;
}

.input-product {
    width: 100px;

}

.input-product::-webkit-outer-spin-button,
.input-product::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;

    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type='number'] {
    -moz-appearance: textfield;
}

.wrapper__product__info__form__input-count {
    position: relative;
    max-width: unset;
}

.catalog-main--products li {
    line-height: 2.2;
}

.catalog-main--products p {
    line-height: 2;
}

.catalog-main--products ul {
    margin-top: 20px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance: textfield; /* Firefox */
}

.action-banner {
    padding: 60px 0 60px;
}

@media (max-width: 1440px) {
    .action-banner {
        padding: 5vw 0 5vw;
    }
}

.wrapper__cart-main__form__input {
    gap: 24px;
}

.wrapper__cart-main__form__input input {
    width: 100%;

}


.close-button {
    position: absolute;
    top: 10px;
    right: 10px;
    background: none;
    border: none;
    font-size: 45px;
    cursor: pointer;
}

.catalog .site-nav__item {
    position: relative;
    top: 5%;
    left: 2%;
    text-align: center;
    font-size: 16px !important;
    font-weight: 500 !important;
}
.catalog {
    font-size: 16px !important;
    font-weight: 500 !important;

}

.catalog .site-nav__item--map::before{
    position: relative;
    top: 27px;
    left: 130px;
}

@media (max-width: 575px){
    .main-header .catalog {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: white;
        z-index: 1000;
        line-height: 30px;
    }
    .catalog .site-nav__item--phone__link{
        display: block !important;
    }

    .catalog .site-nav__item--email__link{
        display: block !important;
    }

    .catalog .site-nav__item--map::before{
        display: block !important;
    }

    .catalog .site-nav__item--map{
        display: block !important;
        position: relative;
        top: 40px;
    }
    .catalog_drop {
        top: 40px;
    }
    .site-nav__list {
        display: none !important;
    }
    .site-nav__item {
        line-height: 40px !important;
    }
}

.catalog .site-nav__item--phone__link{
    display: none;
}

.catalog .site-nav__item--email__link{
    display: none;
}

.catalog .site-nav__item--map::before{
    display: none;
}

.catalog .site-nav__item--map{
    display: none;
}

.selected-product {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 1000;

}

.catalog .site-nav__item {
    position: relative;
    top: 5%;
    left: 2%;
    text-align: center;
    font-size: 16px !important;
    font-weight: 500 !important;
}
.catalog {
    font-size: 16px !important;
    font-weight: 500 !important;

}

.catalog .site-nav__item--map::before{
    position: relative;
    top: 27px;
    left: 130px;
}

@media (max-width: 575px){
/*    .catalog {*/
/*        display: none; !* Скрыть меню по умолчанию *!*/
/*        position: absolute;*/
/*        top: 0;*/
/*        left: 0;*/
/*        width: 100%;*/
/*        height: 100%;*/
/*        background-color: white; !* Или любой другой цвет фона *!*/
/*        z-index: 1000; !* Чтобы меню было поверх других элементов *!*/
/*        line-height: 30px;*/
/*    }*/
    .catalog .site-nav__item--phone__link{
        display: block !important;
    }

    .catalog .site-nav__item--email__link{
        display: block !important;
    }

    .catalog .site-nav__item--map::before{
        display: block !important;
    }

    .site-nav__item--map  {align-items: baseline;}

    .catalog .site-nav__item--map{
        display: block !important;
        position: relative;
        top: 40px;
    }
    .catalog_drop {
        top: 40px;
    }
    .site-nav__list {
        display: none !important;
    }
    .site-nav__item {
        line-height: 40px !important;
    }
}

.catalog .site-nav__item--phone__link{
    display: none;
}

.catalog .site-nav__item--email__link{
    display: none;
}

.catalog .site-nav__item--map::before{
    display: none;
}

.catalog .site-nav__item--map{
    display: none;
}

.catalog-main p{
    line-height: 1.8;
}

.catalog-nav__item__button-toggle.active {
    font-weight: bold;
    color: #038642;
}

.catalog-main__item {max-width: 235px;}


 /*25 февраля*/
.catalog-nav {border: 2px solid #F3F2F1;
    margin-right: 10px;

}
.product__info__form__size__fieldset__main {max-height: fit-content;!important;}

@media (min-width: 1000px) {
    .main-footer__block--left {
        width: 70%;
    }

    .main-footer__block--right {
        width: 30%;
        display: grid;
        justify-content: end;
    }

    .main-footer__site-nav__list {
        width: 70%;
    }
}

.catalog-main__item__button{
    border: 1px solid #038642;
    background-color: white;
    color: #038642;
    border-radius: 5px;


}

.catalog-main__item__button-green{
    border: 1px solid #038642;
    background-color: #038642;
    max-width: 240px;
    width: 100%;
    margin: 20px auto 0;
    padding-top: 15px;
    padding-bottom: 15px;
    color: white;
    font-size: 21px;
    line-height: normal;
    transition: .2s;
    text-align: center;
    cursor: pointer;
    border-radius: 5px;
}

.catalog-main__item__link-mobile {
    border: 1px solid #038642;
    background-color: white;
    color: #038642;
    border-radius: 5px;
}

.catalog-main__item__button-green:hover  {
    border: 1px solid #038642;
    background-color: white;
    color: #038642;
}

.catalog-main__item__link-mobile:hover, .catalog-main__item__button:hover {
opacity: 1;
    border: 1px solid #038642;
    background-color: #038642;
    color: white;
}
.catalog-main__item__cost {text-align: left;
}

.catalog-main__item__title {text-align: left;font-weight: bold;}

.catalog-main__item__link {justify-content: normal; }


.catalog_drop.has-submenu > .catalog_drop_link {
    position: relative;
    padding-right: 20px;
}


.catalog_drop.has-submenu > .catalog_drop_link::after {
    content: '\23F7';
    position: absolute;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    font-size: 0.8em;
    color: inherit;
    transition: transform 0.3s ease;
}

.catalog_drop.has-submenu:hover > .catalog_drop_link::after {
    transform: translateY(-50%) rotate(180deg);
}






 .application-form-wrapper {
     width: 90%;
     margin: 3rem auto;
     padding: 30px;
     border: 1px solid #e0e0e0;
     border-radius: 8px;
     box-shadow: 0 2px 10px rgba(0,0,0,0.05);
 }

.application-form__title {
    font-size: 24px;
    margin-bottom: 25px;
    text-align: center;
    color: #333;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}

.form-group {
    margin-bottom: 20px;
    padding: 0 10px;
    flex: 1 0 100%;
}

.form-group--half {
    flex: 1 0 calc(50% - 20px);
}

.form-label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    color: #555;
}

.required {
    color: #f00;
}

.form-input {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
    transition: border-color 0.3s;
}

.form-input:focus {
    border-color: #0066cc;
    outline: none;
}

.form-consent {
    margin: 25px 0;
    font-size: 13px;
    line-height: 1.5;
    color: #666;
}

.submit-button {
    display: block;
    width: 100%;
    padding: 14px;
    background: #038642;
    color: white;
    border: none;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.3s;
}

.submit-button:hover {
    background: #027539;
}

.error {
    border-color: red !important;
}

@media (max-width: 768px) {
    .form-group--half {
        flex: 1 0 100%;
    }

    .form-row {
        margin: 0;
    }
}


.form-input {
    border: 1px solid #ddd;
    transition: all 0.3s ease;
}





.form-input.input-valid {
    border-color: #038642;
    box-shadow: 0 0 0 1px #038642;
}


.form-input.input-error {
    border-color: #ff0000;
    box-shadow: 0 0 0 1px #ff0000;
}

.phone-error {
    color: #ff0000;
    font-size: 12px;
    margin-top: 5px;
    display: none;
}

.form-input.input-error + .phone-error {
    display: block;
}



@media (max-width: 575px) {
     .main-footer__site-nav__item {
        width: 50%;
    }

    .site-nav__item--cart__count {
        display: flex!important;
        justify-content: center;
        align-items: center;

    }
}

@media (max-width: 992px) {
    .catalog-main__item__link-mobile {
        display: none !important;
    }
}


/* Мобильное меню */
.mobile-catalog-container {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: white;
    z-index: 1100;
    overflow-y: auto;
    padding: 20px;

}

.mobile-menu-header {
    display: flex;
    justify-content: flex-end;
    padding: 10px 0 15px;
    border-bottom: 1px solid #eee;
    margin-bottom: 10px;
}

.mobile-close-button {
    background: none;
    border: none;
    font-size: 40px;
    cursor: pointer;
    color: #333;
}

.mobile-catalog {
    list-style: none;
    padding: 0;
    margin: 0;
}



.mobile-menu-item, .mobile-submenu-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 0;
}

.mobile-catalog_link,
.mobile-catalog_children_link {
    flex-grow: 1;
    color: #333;
    text-decoration: none;
    font-size: 16px;
}

.mobile-catalog_link {
    font-weight: 500;
}

.mobile-submenu-toggle {
    position: relative;
    width: 24px;
    height: 24px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-left: 10px;
}

.mobile-toggle-icon {
    display: block;
    width: 12px;
    height: 12px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -6px;
    margin-left: -6px;
}

.mobile-submenu-toggle[aria-expanded="true"] .mobile-toggle-icon {
    transform: rotate(-135deg);
    margin-top: 0;
}

.mobile-submenu-toggle.nested .mobile-toggle-icon {
    transform: rotate(45deg);
}

.mobile-submenu-toggle.nested[aria-expanded="true"] .mobile-toggle-icon {
    transform: rotate(-135deg);
}

.mobile-catalog_children {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    padding-left: 15px;
}

.mobile-catalog_children.active {
    max-height: 2000px;
    transition: max-height 0.5s ease-in;
}

.mobile-catalog_children.nested {
    padding-left: 25px;
}



/* Адаптивные стили */
@media (max-width: 992px) {
    .main-header .catalog  {
        display: none !important;
    }


    .mobile-menu {
        display: block;
    }
}

@media (min-width: 993px) {
    .mobile-catalog-container {
        display: none !important;
    }

    .mobile-menu {
        display: none;
    }

    .main-header .catalog  {
        display: flex;
    }
}

.mobile-menu__list {
    display: flex;
    align-items: center;
    gap: 15px;
}

.site-nav__item--cart,
.site-nav__item--search {
    display: block !important;
}

@media (min-width: 576px) {
    .mobile-menu__list > .site-nav__item--cart,
    .mobile-menu__list > .site-nav__item--search {
        display: none !important;
    }
}



.mobile-menu {
    border: 1px solid green;
    padding: 20px;

}

.catalog-main__item__title {
    font-size: 18px;
    line-height: 24px;
}



/* Основной контейнер */
.main-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 20px;
    display: flex;
}
.main-container ul  {
    margin: 0;
    padding: 0;
}

/* Убираем маркеры списка */
.main-container ul, ol {
    list-style: none;
}

/** =======================
 * Боковое меню (Каталог)
 ===========================*/
.accordion-wrapper {
    width: 280px;
    margin-right: 20px;
}

.accordion {
    background: #FFF;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Заголовок "Каталог" */
.catalog-title {
    padding: 15px;
    background: #038642;
    color: white;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    border-radius: 4px 4px 0 0;
}

.accordion .link {
    cursor: pointer;
    display: block;
    padding: 12px 15px 12px 42px;
    color: #4D4D4D;
    font-size: 14px;
    font-weight: 700;
    border-bottom: 1px solid #e0e0e0;
    position: relative;
    transition: all 0.4s ease;
}

.accordion li:last-child .link { border-bottom: 0; }

.accordion li i {
    position: absolute;
    top: 14px;
    left: 12px;
    font-size: 16px;
    color: #595959;
    transition: all 0.4s ease;
}

.accordion li i.fa-chevron-down {
    right: 12px;
    left: auto;
    font-size: 14px;
}

.accordion li.open .link { color: #038642; }

.accordion li.open i { color: #b63b4d; }

.accordion li.open i.fa-chevron-down {
    transform: rotate(180deg);
}

/* Подменю */
.submenu {
    display: block;
    background: #f9f9f9;
    font-size: 13px;
}

.submenu li { border-bottom: 1px solid #e8e8e8; }

.submenu a {
    display: block;
    text-decoration: none;
    color: #4D4D4D;
    padding: 10px;
    padding-left: 42px;
    transition: all 0.25s ease;
}

.submenu a:hover {
    background: #038642;
    color: #FFF;
}

/* Основное содержимое */
.content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* Слайдер и вертикальные блоки */
.slider-container {
    display: flex;
    margin-bottom: 20px;
    height: 400px;
}

.slider {
    position: relative;
    flex: 1;
    background-color: #ddd;
    overflow: hidden;
    margin-right: 20px;
    border-radius: 8px;
}

.slide {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: opacity 1s;
    opacity: 0;
}

.slide.active {
    opacity: 1;
}

.vertical-blocks {
    display: flex;
    flex-direction: column;
    width: 280px;
}

.vertical-block {
    height: 190px;
    margin-bottom: 20px;
    background-color: #eee;
    overflow: hidden;
    border-radius: 8px;
}

.vertical-block:last-child {
    margin-bottom: 0;
}

.vertical-block img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Миниатюры внизу */
.thumbnails {
    display: flex;
    justify-content: space-between;
}

.thumbnail img {
    width: 100%;
    height: 120px;
    border-radius: 8px;
}

.thumbnail a {
    display: block;
    padding: 10px;
    text-align: center;
    color: #333;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
}

/* Медиа-запрос для мобильных устройств */
@media (max-width: 767px) {
    .slider {
        display: none; /* Скрываем слайдер */
    }

    .slider-container {
        height: auto;
        flex-direction: column;
    }

    .vertical-blocks {
        width: 100%;
        flex-direction: row;
        margin-top: 15px;
    }

    .vertical-block {
        width: 48%;
        height: 150px;
        margin-bottom: 0;
        margin-right: 4%;
    }

    .vertical-block:last-child {
        margin-right: 0;
    }

    .main-container {
        flex-direction: column;
        padding: 15px;
    }

    .accordion-wrapper {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .thumbnails {
        flex-wrap: wrap;
    }

    .thumbnail {
        width: 48%;
        margin-bottom: 15px;
    }
}

.catalog_drop:first-child > .catalog_drop_link {
    color: red; 
}
.button-up {
    display: none;
    width: 60px;
    height: 60px;
    position: fixed;
    z-index: 999;
    right: 20px;
    bottom: 20px;
    border-radius: 1px;
    border: 2px solid #038642;
    transition: all .2s ease-in-out;
    cursor: pointer;
}
.button-up__logo{
    width: 50%;
    height: 50%;
    transform: rotate(270deg);
    margin: 12px 15px;
}
.button-up:hover{
    background: #038642;
}