:root {

--font-code: 'Fira Code', monospace;
    --primary: #9b282c;

    --maxWidth: 1000px;

    --main-bg: rgb(245, 245, 245);
    --main-color: rgb(0, 0, 0);
    --footer-bg: #e6e6e6;
    --footer-b: #d9d9d9;
    --image-bg: rgb(240, 240, 240);
    --spinner-bg: rgb(245, 245, 245);
    --spinner-border: #9b282c;

    --button-bg: #792225;
    --button-bg-hover: #58191b;
    --input-bg: #7e592e41;

    --link-hover: #791c1f;
    --link: #9b282c;

    --bottom-p-indent: 1rem;

    --header-height: 150px;
    --container-indent: 6vw;
    --container-margin: 6vw;

    --small: 3vw;
    --medium: 5vw;
    --large: 7vw;

    --swiper-pagination-bullet-width: 10px;
    --swiper-pagination-bullet-height: 10px;
    --swiper-pagination-color: #58191b;
    --swiper-pagination-bullet-inactive-color: #9b282c;


    --h1: 34px;
    --h2: 32px;
    --h3: 28px;
    --h4: 24px;
    --h5: 22px;
    --p: 18px;
}

@media (min-width: 768px) {
    :root {
        --h1: 42px;
        --h2: 34px;
        --h3: 30px;
        --h4: 26px;
        --h5: 24px;
        --p: 18px;

        --bottom-p-indent: 2rem;
        --container-indent: 4vw;
        --container-margin: 4vw;

        --header-height: 180px;

        --small: 1vw;
        --medium: 2vw;
        --large: 5vw;
    }

}

@media (min-width: 1024px) {
    :root {
        --h1: 44px;
        --h2: 36px;
        --h3: 32px;
        --h4: 28px;
        --h5: 26px;
        --p: 20px;

        --bottom-p-indent: 1rem;
        --container-indent: 3vw;
        --container-margin: 2vw;

        --header-height: 200px;

        --small: 1vw;
        --medium: 2vw;
        --large: 3vw;
    }

}
@media (min-width: 2560px) {
    :root {
        --maxWidth: 1200px;

        --h1: 64px;
        --h2: 56px;
        --h3: 44px;
        --h4: 32px;
        --h5: 26px;
        --p: 22px;

        --bottom-p-indent: 1rem;
        --container-indent: 3vw;
        --container-margin: 2vw;

        --header-height: 200px;

        --small: 1vw;
        --medium: 2vw;
        --large: 3vw;
    }

}

.container {
    max-width: var(--maxWidth);
}

html,
body {
    overflow-x: hidden;
}

* {
    padding: 0px;
    margin: 0px;
    border: none;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    background: var(--main-bg);
    color: var(--main-color);
    min-height: 2vh;
    max-width: 100%;
    font-family: system-ui, sans-serif;
    font-size: var(--p);
    line-height: 1.4;
}





h1,
h2,
h3,
h4,
h5 {
    font-weight: normal;
    line-height: 1;
    margin-bottom: var(--bottom-p-indent);
}

.h1,
h1 {
    font-size: var(--h1);
}

.h2,
h2 {
    font-size: var(--h2);
}

.h3,
h3 {
    font-size: var(--h3);
}

.h4,
h4 {
    font-size: var(--h4);
}

.h5,
h5 {
    font-size: var(--h5);
}

h1 span,
h2 span,
h3 span,
h4 span,
h5 span {
    color: var(--button-bg);
}

p {
    font-size: var(--p);
    margin-bottom: var(--bottom-p-indent);
    line-height: inherit;
}

.small {
    font-size: 14px;
    color: rgb(136, 136, 136);
}

a {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
    padding: 0;
    text-decoration: inherit;
    word-break: break-word;
    word-wrap: break-word;

    text-decoration: none;
    color: var(--link);
    transition: color .3s ease-in-out;
}
.red {
    color: var(--link);
}

p.alert {
    background-color: #e3ebee;
    border-radius: 25px;
    padding: 3vh 40px 3vh 90px;
    margin-top: calc(2 * var(--bottom-p-indent));
    position: relative;
}

p.alert:after {
    position: absolute;
    top: calc(50% - 15px);
    left: 40px;
    content: "";
    background-image: url("../images/check.png");
    background-size: 100%;
    width: 30px;
    height: 30px;
}

.pt-small {
    padding-top: var(--small);
}

.pt-medium {
    padding-top: var(--medium);
}

.pt-large {
    padding-top: var(--large);
}

.pb-small {
    padding-bottom: var(--small);
}

.pb-medium {
    padding-bottom: var(--medium);
}

.pb-large {
    padding-bottom: var(--large);
}

.mt-small {
    margin-top: var(--small);
}

.mt-medium {
    margin-top: var(--medium);
}

.mt-large {
    margin-top: var(--large);
}

.mb-small {
    margin-bottom: var(--small);
}

.mb-medium {
    margin-bottom: var(--medium);
}

.mb-large {
    margin-bottom: var(--large);
}


.border-bt {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

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

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

.text-center {
    text-align: center;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 1024px) {
    .text-md-left {
        text-align: left;
    }

    .text-md-right {
        text-align: right;
    }

    .text-md-center {
        text-align: center;
    }
}



.hidden {
    display: none;
}

.banner {
    position: relative;
    padding: 3rem var(--container-margin);
    background-color: #e6e0e0;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1087%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c376.37C75.675%2c376.025%2c151.571%2c374.781%2c219.746%2c341.932C293.609%2c306.342%2c378.678%2c262.028%2c401.022%2c183.141C423.392%2c104.162%2c339.861%2c34.044%2c330.037%2c-47.452C319.85%2c-131.962%2c386.315%2c-223.964%2c343.108%2c-297.305C300.14%2c-370.239%2c202.124%2c-389.142%2c119.078%2c-405.541C41.12%2c-420.935%2c-42.577%2c-422.789%2c-113.788%2c-387.527C-180.37%2c-354.557%2c-200.843%2c-271.912%2c-254.523%2c-220.545C-316.147%2c-161.577%2c-443.242%2c-149.782%2c-451.001%2c-64.844C-458.912%2c21.758%2c-329.265%2c55.105%2c-286.627%2c130.898C-249.443%2c196.996%2c-278.638%2c294.608%2c-221.036%2c343.939C-163.306%2c393.38%2c-76.006%2c376.716%2c0%2c376.37' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 928.356C1525.602 941.06 1615.24 991.613 1693.086 953.81 1771.319 915.819 1796.016 818.185 1830.912 738.523 1865.301 660.019 1914.394 577.989 1894.205 494.695 1874.317 412.642 1792.193 365.06399999999996 1727.3020000000001 311.051 1671.896 264.932 1613.935 223.50099999999998 1544.617 203.707 1475.668 184.019 1401.207 173.94299999999998 1333.919 198.72000000000003 1268.484 222.81400000000002 1233.549 289.345 1182.638 336.994 1124.5059999999999 391.401 1038.7060000000001 423.16499999999996 1013.435 498.669 987.217 577.003 1007.5799999999999 666.989 1048.094 738.977 1087.17 808.409 1159.251 850.5640000000001 1230.988 885.229 1296.364 916.8199999999999 1368.1779999999999 917.697 1440 928.356' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1087'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-position: 50% 50%;
    background-size: 100% 100%;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    overflow: hidden;
}

@media (min-width: 800px) {
    .banner {
        padding: 6rem var(--container-margin);
    }
}

.banner.two {
    /*min-height: 660px;*/
    background-position: 60% 70%;
    /* background-size: cover;*/
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

@media (min-width: 1024px) {
    .banner.two {
        min-height: 660px;
    }
}

.banner.touch {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1008%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c387.807C71.114%2c372.455%2c137.09%2c347.854%2c199.105%2c309.814C262.306%2c271.046%2c329.978%2c232.182%2c362.408%2c165.506C395.147%2c98.195%2c379.54%2c20.698%2c376.093%2c-54.074C372.27%2c-137.018%2c402.031%2c-239.147%2c341.152%2c-295.61C279.023%2c-353.233%2c175.787%2c-298.678%2c92.978%2c-316.655C18.814%2c-332.755%2c-40.544%2c-403.542%2c-115.934%2c-394.836C-194.369%2c-385.779%2c-256.276%2c-326.343%2c-311.533%2c-269.945C-369.546%2c-210.735%2c-424.892%2c-144.735%2c-440.704%2c-63.364C-456.878%2c19.87%2c-429.221%2c103.029%2c-399.437%2c182.417C-367.779%2c266.798%2c-343.399%2c368.412%2c-263.25%2c409.625C-183.326%2c450.722%2c-87.847%2c406.771%2c0%2c387.807' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 1203.392C1566.589 1200.391 1693.693 1188.531 1804.192 1126.694 1918.93 1062.4859999999999 2051.741 978.855 2073.077 849.116 2094.754 717.3 1926.953 624.946 1908.461 492.645 1889.843 359.442 2039.987 215.945 1968.6390000000001 101.93099999999998 1900.364-7.1720000000000255 1731.7730000000001 5.469000000000051 1603.071 4.6299999999999955 1496.593 3.9360000000000355 1407.119 70.18900000000002 1304.227 97.59899999999999 1197.727 125.97000000000003 1078.885 105.92000000000002 988.124 168.447 885.599 239.07799999999997 779.33 339.703 772.361 464.008 765.388 588.383 904.561 667.617 953.7239999999999 782.075 1004.578 900.4680000000001 967.152 1059.855 1064.537 1144.231 1162.2730000000001 1228.911 1310.719 1206.4569999999999 1440 1203.392' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1008'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
}

.banner-img {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
}


.banner.price {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1005%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c426.815C114.404%2c429.498%2c225.209%2c561.319%2c326.425%2c507.927C425.101%2c455.875%2c388.379%2c300.006%2c433.672%2c198.051C478.293%2c97.609%2c613.045%2c22.615%2c589.738%2c-84.792C566.014%2c-194.121%2c419.263%2c-219.057%2c328.862%2c-284.96C260.91%2c-334.498%2c200.048%2c-387.056%2c124.487%2c-423.962C34.776%2c-467.779%2c-55.834%2c-544.209%2c-152.741%2c-520.188C-249.598%2c-496.18%2c-283.748%2c-377.745%2c-352.757%2c-305.666C-426.411%2c-228.735%2c-543.662%2c-184.903%2c-572.027%2c-82.245C-600.923%2c22.336%2c-544.372%2c129.334%2c-500.349%2c228.502C-455.919%2c328.586%2c-418.53%2c452.495%2c-316.731%2c492.843C-214.4%2c533.402%2c-110.046%2c424.234%2c0%2c426.815' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 1030.629C1558.39 1030.217 1678.307 1149.1889999999999 1782.388 1092.766 1884.892 1037.1979999999999 1873.4769999999999 885.515 1911.1970000000001 775.188 1944.799 676.905 2002.712 583.963 1991.655 480.68399999999997 1980.42 375.73900000000003 1928.472 275.344 1850.115 204.63299999999998 1775.856 137.62099999999998 1669.455 133.534 1573.966 103.75299999999999 1476.561 73.37400000000002 1384.018 8.886999999999944 1283.7930000000001 28.005999999999972 1180.719 47.668000000000006 1101.877 128.17200000000003 1032.635 207.017 963.0360000000001 286.268 911.857 378.03999999999996 886.485 480.41700000000003 859.114 590.861 845.284 707.131 882.003 814.828 920.728 928.4110000000001 984.153 1051.8690000000001 1096.077 1095.155 1207.115 1138.098 1320.948 1031.0430000000001 1440 1030.629' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1005'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
}

.banner.company {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1010%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c405.92C80.523%2c412.19%2c162.206%2c401.268%2c233.559%2c363.426C308.65%2c323.601%2c374.252%2c264.335%2c411.252%2c187.813C448.675%2c110.418%2c452.369%2c21.811%2c439.865%2c-63.243C427.389%2c-148.108%2c395.733%2c-229.412%2c340.294%2c-294.866C284.468%2c-360.777%2c208.193%2c-403.068%2c127.022%2c-432.598C41.621%2c-463.667%2c-54.328%2c-505.05%2c-137.633%2c-468.734C-220.458%2c-432.627%2c-247.282%2c-330.779%2c-289.628%2c-250.964C-323.283%2c-187.531%2c-340.246%2c-120.94%2c-358.94%2c-51.608C-380.428%2c28.084%2c-437.337%2c109.141%2c-407.473%2c186.087C-377.61%2c263.028%2c-283.935%2c289.6%2c-211.299%2c328.788C-143.947%2c365.125%2c-76.298%2c399.979%2c0%2c405.92' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 1200.001C1558.75 1185.909 1601.188 1031.594 1697.683 960.962 1785.732 896.512 1918.439 897.04 1978.422 805.889 2040.3 711.857 2032.7060000000001 588.502 2016.04 477.178 1999.441 366.303 1951.135 265.058 1884.01 175.26299999999998 1812.938 80.18799999999999 1730.595-9.833999999999946 1619.914-52.730999999999995 1504.206-97.57600000000002 1373.089-107.99800000000005 1255.506-68.32899999999995 1139.961-29.347999999999956 1046.62 59.59699999999998 981.452 162.666 921.587 257.348 901.409 371.429 906.706 483.324 911.403 582.547 970.438 665.27 1009.565 756.573 1049.808 850.48 1068.607 953.8620000000001 1139.768 1027.171 1221.8609999999999 1111.742 1322.959 1213.8899999999999 1440 1200.001' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1010'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
}



.product-item {
    height: 100%;
    padding: var(--container-indent) var(--container-margin);
    background-color: #fff;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    transition: all .3s ease-in-out;
    
    display: flex;
  flex-direction: column;
  align-items: last baseline;
  justify-content: space-between;
}

.product-item:hover {
    background-color: #eee3e3;
}

.product-item_desc {
    color: var(--main-color);
}

.contacts_image,
.contacts_items {
    position: relative;
    padding: var(--container-indent) var(--container-margin);
    background-color: #f0e8e8;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    overflow: hidden;
    min-height: 300px;
    height: 100%;
}
@media (min-width: 768px) {
    .contacts_image {
        min-height: 500px;
    }
}
@media (min-width: 1024px) {
    .contacts_image,
    .contacts_items {
        min-height: 660px;
    }
}

.contacts_image img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contacts_items {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
}

@media (min-width: 1024px) {
    .contacts_items {
        text-align: unset;
    }
}

.contacts_items p {
    color: #333;
}

p.contacts_label {
    color: #000;
    font-weight: bold;
}

.button,
button {
    background: var(--button-bg);
    color: #fff;
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    padding: 7px 20px;
    border-radius: 25px;
    border-bottom: 1px solid rgba(0, 0, 0, 1);
    font-size: inherit;
    cursor: pointer;
    transition: all .3s ease-in-out;
    text-align: center;
}

.button:hover,
button:hover {
    background: var(--button-bg-hover);
}

.button.light,
button.light {
    background: #b9f8c1;
    color: #333;
}

.button.light:hover,
button.light:hover {
    background: #6daf76;
}

button:disabled, button[disabled] {
  background-color: #eee;
  color: #666;
  cursor: not-allowed;
  pointer-events: none;
}

.hid {display:none;}

.layer-transition {
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--main-bg);
    opacity: 0;
    z-index: 1000;
    pointer-events: none;
}

.spinner {
    position: fixed;
    top: calc(50vh - 23px);
    left: calc(50vw - 23px);
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: 9px solid;
    border-color: var(--spinner-bg);
    border-right-color: var(--spinner-border);
    animation: spinner-d3wgkg 1s infinite linear;
}

@keyframes spinner-d3wgkg {
    to {
        transform: rotate(1turn);
    }
}




/**/

.borders p {
    border-top: 1px solid rgba(0, 0, 0, .1);
    padding-top: var(--container-margin);
    padding-bottom: var(--container-margin);
    margin: 0;
}


/* ШАПКА */

header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: rgba(255, 255, 255, .95);
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    transition: background-color .3s ease-in-out, transform .3s ease-in-out;
    width: 100vw;
    max-width: var(--maxWidth);
    z-index: 1001;
    padding: 1.2rem var(--container-margin);
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    border-radius: 50px;
}

main {
    padding-top: var(--header-height);
    position: relative;
}

.header-left {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}

@media (min-width: 1024px) {
    .header-left {
        display: flex;
        align-items: center;
        width: auto;
        justify-content: unset;
    }
}



.header-right {
    display: none;
}

@media (min-width: 992px) {
    .header-right {
        display: flex;
        align-items: center;
    }
}
.footer_about svg,
.header_left svg {
    width: 200px;
    height: 46px;
}

@media (min-width: 1024px) {
    .footer_about svg,
    .header_left svg {
        width: 260px;
        height: 60px;
    }
}


/* бургер для адаптивного меню */
.burger {
    position: relative;
    width: 30px;
    height: 26px;
    /*height: 2rem;*/
    transition-duration: 1s;
    cursor: pointer;
}

.burger span:before,
.burger span:after {
    content: "";
    position: absolute;
    background-color: var(--button-bg);
    transition-duration: 0.25s;
    transition: background-color 0.3s, transform 0.25s, top 0.25s 0.25s;
}

header button:hover .burger span:before,
header button:hover .burger span:after {
    background-color: #fff;
}

.burger span:before {
    left: 0;
    top: 9px;
    width: 30px;
    height: 2px;
}

.burger span:after {
    top: 17px;
    left: 5px;
    width: 25px;
    height: 2px;
}


/* ПОДВАЛ */

footer {
    background-color: var(--footer-bg);
}

footer p {
    margin-bottom: 0;
}

ul.footer-menu {
    list-style: none;
}
.footer-b {
    background-color: var(--footer-b);
}
.flex-footer {
    display: flex;
    justify-content: space-between;
}

.footer-nav ul {
    list-style: none;
    display: flex;
    flex-direction: column;
}
@media (min-width: 1024px) {
    .footer-nav ul {
    flex-direction: row;
}
}

.footer-nav ul li {
    padding-right: 1rem;
 }
footer a {
    color: #000;
}










nav.top-menu {
    display: none;
}

@media (min-width: 992px) {
    nav.top-menu {
        transition: opacity .3s ease-in-out;
        pointer-events: auto;
        display: block;
    }
}

nav.top-menu ul {
    list-style: none;
    display: flex;
}

nav.top-menu ul li {
    padding: .5em;
    margin: 0 .5em;
}

nav.top-menu ul li a {
    color: var(--link);
}

nav.top-menu ul li a:hover {
    color: var(--link-hover);
}

nav.top-menu ul li.active a {
    color: var(--button-bg-hover)
}

header button {
    /*background-color: rgba(0,0,0,.2);*/
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
    border-radius: 7px;
    /*text-transform: uppercase;*/
    font-size: inherit;
    cursor: pointer;
    transition: all .3s ease-in-out;
    background: #eee3e3;
    border: none;
    padding: 7px 12px;
}




/* адаптивное меню */

.adaptive-menu-wrapper {
    position: fixed;
    z-index: 1002;
    right: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    will-change: transform;
    background-color: rgba(0, 0, 0, .3);
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease-in-out;
}

.adaptive-menu-wrapper.active {
    opacity: 1;
    pointer-events: auto;
}

.adaptive-menu-container {
    position: fixed;
    right: 0;
    transform: translateX(100vw);
    transition: transform .7s ease-in-out;
    background-color: #fff;
    color: #000;
    width: 66vw;
    height: 100vh;
    overflow-Y: auto;
}

.active .adaptive-menu-container {
    transform: translateX(0);
    /* Показываем меню */
}

.adaptive-menu {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: var(--header-height) var(--container-margin);
}

.adaptive-menu ul {
    list-style: none;
}

.adaptive-menu ul ul {
    padding-left: 30px;
    margin: 20px 0;
}

.adaptive-menu ul li {
    padding: 7px 0;
    font-size: var(--h5);
    line-height: 1.2;
}

.adaptive-menu ul li a {
    color: #333;
}

.adaptive-menu ul li.active a {
    color: var(--button-bg);
}

/* кнопка для закрытия меню */
button.adaptive-menu-close {
    position: absolute;
    background-color: green;
    right: 30px;
    top: 50px;
    width: 2rem;
    height: 2rem;
    cursor: pointer;
    background: none;
    border: none;
}

.adaptive-menu-close span:before,
.adaptive-menu-close span:after {
    content: "";
    position: absolute;
    height: 2px;
    background-color: #000;
}

.adaptive-menu-close span:before {
    top: 13px;
    width: 25px;
    left: 3px;
    transition: top 0.25s, transform 0.25s 0.25s;
    transform: rotateZ(-45deg);
}

.adaptive-menu-close span:after {
    top: 13px;
    left: 3px;
    width: 25px;
    transition: top 0.4s, transform 0.25s 0.25s;
    transform: rotateZ(45deg);
}


.img-bg {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.img-box img {
    scale: 1;
    transition: scale .3s ease-in-out;
}

.img-box:hover img {
    scale: 1.1;

}

.img-box .lazyload,
.img-box .lazyloading {
    opacity: 0.1;
    transition: opacity 400ms;
}

.img-box img.lazyloaded {
    opacity: 1;
}




.scroll-to-top-btn {
    position: fixed;
    bottom: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
    background: var(--link);
    color: white;
    border-radius: 50%;
    cursor: pointer;
    font-size: 20px;
    z-index: 1010;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.scroll-to-top-btn:hover {
    background: var(--link-hover);
}

.scroll-to-top-btn svg {
    width: 40px;
    height: 40px;
    padding: 10px;
    fill: currentColor;
}

@media (min-width: 1024px) {
    .scroll-to-top-btn {
        width: 80px;
        height: 80px;
        bottom: 30px;
        right: 30px;
    }

    .scroll-to-top-btn svg {
        width: 80px;
        height: 80px;
        padding: 20px;
    }
}



/* Аккордеоны */

.accordion-menu {
    position: relative;
    display: flex;
    justify-content: space-between;
    border-bottom: 2px dashed var(--button-bg);
    cursor: pointer;
    user-select: none;
    transition: ease 0.4s;
}

.accordion-menu .title {
    transition: color .3s ease-in-out;
    width: calc(100% - 2rem);
    margin: var(--medium) 0px;
}

@media (min-width: 1024px) {
    .accordion-menu .title {
        margin: var(--small) 0px;
    }
}

.accordion-menu:hover .title,
.accordion-menu.active .title {
    color: var(--button-bg);
}

.accordion-content {
    height: 0;
    overflow: hidden;
}

.accordion-inner-content {
    padding-top: calc(var(--container-margin) / 2);
    padding-bottom: calc(var(--container-margin) / 2);
}

.accordion-content.expanded {
    height: auto;
}

.accordion-plus {
    position: absolute;
    top: calc(50% - 15px);
    right: 0;
    width: 2rem;
    height: 2rem;
}

.accordion-plus::before {
    content: "";
    height: 20px;
    width: 3px;
    background: var(--link);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.accordion-plus::after {
    content: "";
    width: 20px;
    height: 3px;
    background: var(--link);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

@media (min-width: 1024px) {
    .accordion-plus::before {
        height: 30px;
    }

    .accordion-plus::after {
        width: 30px;
    }
}

.active .accordion-plus::before {
    opacity: 0;
}

.active .accordion-plus::after,
.active .accordion-plus::before {
    background: var(--button-bg);
}

.accordion-menu:hover .accordion-plus::after,
.accordion-menu:hover .accordion-plus::before {
    background: var(--button-bg);
}

.accordion-content ul {
    list-style: none;
    margin-bottom: var(--bottom-p-indent);
    margin-left: 1.953vw;
}

.accordion-content li::before {
    content: "\2014";
    margin: 0 10px 0 0px;
}

.accordion-content button {
    margin-top: 1.953vw;
    margin-bottom: 1.953vw;
}



/* Кукисы */

.cookie_notice {
    position: fixed;
    z-index: 50;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    color: black;
    padding: 20px 10px;
    background-color: #fff;
    border-top: 4px solid var(--main-red-color);
    transition: all 1s ease;
    transform: translateY(100%);
}

.cookie_notice.visible {
    opacity: 1;
    transform: translateY(0px);
}

.cookie_notice p {
    margin-bottom: 0;
}

a.cookie_btn {
    color: var(--color-link);
    margin: 15px 10px 10px 10px;
}






/* хлебные крошки */

ul.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 14px;
    list-style: none;
}

ul.breadcrumb li:not(:first-child) {
    margin-left: 8px;
}

ul.breadcrumb li a {
    margin-right: 8px;
    color: rgb(54, 54, 54)
}

ul.breadcrumb li,
ul.breadcrumb li.active a {
    color: rgb(136, 136, 136);
}

ul.breadcrumb svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}



/* статья / базовый шаблон */

.article ul,
.article ol {
    margin-bottom: 1.5rem;
    margin-left: 1.953vw;
}

.article ul li,
.article ol li {
    margin-bottom: 0.391vw;
}

.article ul {
    list-style: none;
}

.article ul li::before {
    content: "\2014";
    margin: 0 10px 0 0px;
}



/* пагинация для новостей */

ul.pagination {
    display: flex;
    margin: 2rem 0 5rem 0;
    list-style: none;
}

ul.pagination a {
    color: #333;
}

ul.pagination li.page-item .page-link,
ul.pagination li.control a {
    padding: 10px 14px;
    color: #333;
    transition: all .3s ease-in-out;
}

ul.pagination li.control a:hover {
    color: var(--main-red-color);
}

@media (min-width: 768px) {

    ul.pagination li.page-item .page-link,
    ul.pagination li.control a {
        padding: 16px 20px;
    }
}

ul.pagination li.page-item.active .page-link {
    border: 1px solid var(--button-bg);
    border-radius: 3px;
    cursor: default;
}

ul.pagination li.page-item.disabled {
    display: none;
}



/* анимации */

.thumbnail-stagger {
    opacity: 0.01;
    transform: translate(0px, 25px);
}

.list-stagger {
    opacity: 0.01;
    transform: translate(-50px, 0px);
}

.slide-stagger {
    opacity: 0.01;
    transform: translate(50px, 0px);
}

.scale-stagger {
    opacity: 0.01;
    transform: scale(0.9);
}

/* слайдеры */

.swiper-controls {
    position: relative;
}

.swiper-buttons {
    display: flex;
    justify-content: center;
    margin-top: 40px;

}

@media (min-width: 1024px) {
    .swiper-buttons {
        margin-top: var(--container-margin);
    }
}

.swiper-pagination {
    position: relative;
    margin-top: var(--container-margin);
}

.swiper-button-next,
.swiper-button-prev {
    position: relative;
    width: 50px;
    height: 50px;
    font-size: 22px;
    background: #fff;
    color: #333;
    border-radius: 25%;
    opacity: 1;
    transition: all 0.3s;
    margin-right: 15px;
    margin-left: 15px;
}

.swiper-button-next::after,
.swiper-button-prev::after {
    font-size: inherit;
}

.partners-slider {
    width: 100%;
    /*  overflow: hidden;
    height: 260px;*/
}

.partners-slide {
    background-color: #fff;
    border-radius: 25px;
    padding: var(--container-margin);
    width: 100%;
    height: 100%;

    display: flex;
    justify-content: center;
    align-items: center;
}

@media (min-width: 1024px) {
    .partners-slide {
        min-height: 260px;
    }
}

.partners-slide img {
    height: 100px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

/* делаем слайды для новостей одинаковой высоты */
@media (min-width: 768px) {
    .news-slider .swiper-wrapper {
        align-items: stretch;
    }

    .news-slider .swiper-slide {
        height: auto;
    }
}



/* файлы на скачивание */

.files {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.file-group {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid rgba(0, 0, 0, .1);
}

.file-title {
    max-width: 70%;
    padding: 10px 0;
}

@media (min-width: 1024px) {
    .file-title {
        padding: 1vw 0;
    }
}

.file-link {
    padding: 1vw 0;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
}

.file-link span {
    display: none;
}

@media (min-width: 1024px) {
    .file-link span {
        display: block;
    }
}

svg.download {
    width: 40px;
    height: 40px;
    background: var(--button-bg);
    stroke: #fff;
    border-radius: 7px;
    margin-left: 24px;
    padding: 4px;
}

@media (min-width: 1024px) {
    svg.download {
        width: 2vw;
        height: 2vw;
        padding: 10px;
    }
}


.file-info {
    color: #aaa;
    font-size: 80%;
    margin: 0;
}

a:hover .file-link svg.download {
    background-color: var(--button-bg-hover);
}



/* секция для паралакса */

[data-item] {
    position: relative;
}

section.light {
    background: #fff;
    border-radius: 50px 50px 0 0;
}

section.dark {
    background: var(--main-bg);
    border-radius: 50px 50px 0 0;
}



/* новости */

.blog-item {
    padding: 3rem var(--container-margin);
    background-color: #fff;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    /*height: 100%;*/
    transition: background-color 0.3s;
    overflow: hidden;
}

@media (min-width: 800px) {
    .blog-item {
        height: 100%;
        padding: var(--container-margin);
    }
}

.blog-item.padding-12 {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1065%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c366.271C67.639%2c359.776%2c94.115%2c272.053%2c152.527%2c237.336C214.232%2c200.662%2c306.824%2c217.601%2c348.486%2c159.148C390.135%2c100.714%2c370.562%2c19.19%2c358.418%2c-51.533C346.536%2c-120.732%2c325.632%2c-189.258%2c279.563%2c-242.243C233.537%2c-295.178%2c170.293%2c-331.567%2c101.794%2c-346.68C35.876%2c-361.223%2c-31.134%2c-345.56%2c-95.422%2c-324.976C-158.413%2c-304.807%2c-218.239%2c-276.441%2c-264.675%2c-229.342C-313.175%2c-180.15%2c-358.721%2c-121.227%2c-364.197%2c-52.364C-369.573%2c15.251%2c-328.342%2c75.832%2c-293.571%2c134.069C-262.021%2c186.912%2c-220.86%2c230.374%2c-172.589%2c268.554C-119.666%2c310.414%2c-67.168%2c372.721%2c0%2c366.271' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 1177.357C1568.5 1192.827 1720.521 1233.897 1819.467 1150.462 1919.753 1065.896 1886.003 904.844 1914.9180000000001 776.888 1937.285 677.908 1982.499 584.498 1970.123 483.78 1957.595 381.828 1913.069 285.995 1845.1309999999999 208.952 1777.556 132.32 1684.642 88.32499999999999 1589.215 51.81900000000002 1486.706 12.604000000000042 1376.204-46.327 1272.613-10.066000000000031 1169.458 26.043000000000006 1142.228 157.699 1065.212 235.24400000000003 980.315 320.723 835.576 353.212 798.095 467.70799999999997 760.115 583.728 817.164 710.467 874.336 818.3299999999999 929.325 922.0740000000001 1015.9 1002.735 1115.035 1065.656 1213.742 1128.3049999999998 1323.9279999999999 1163.383 1440 1177.357' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1065'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-size: 100% 100%;
}

@media (min-width: 800px) {
    .blog-item.padding-12 {
        padding-top: 200px;
    }
}

.blog-main .blog-item {
    background-color: #f5f5f5;
}

.blog-item:hover {
    background-color: #eee3e3;
}

.company-news .blog-item {
    background-color: #fff;
}

.company-news .blog-item:hover {
    background-color: #eee3e3;
}

.blog-item_content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.read_more {
    display: flex;
    flex-direction: row;
    align-items: center;
    color: #333;
}

.read_more svg {
    width: var(--p);
    height: var(--p);
    margin-left: 15px;
    fill: #333;
    transition: all 0.3s ease;
}

.product-item:hover .read_more svg,
.blog-item:hover .read_more svg {
    transform: translateX(10px);
    fill: var(--link);
}

.blog-item_title,
.blog-item_content .introtext p {
    /*  overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;*/
}

.blog-item_content .introtext p {
    color: #333;
}

.goverlay {
    background: rgba(162, 162, 162, 0.92);
}

#glightbox-body button {
    padding: unset;
}

picture img {
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 25px;
}


/* контакты */


.form-control {
    font-size: inherit;
    background: #fbfbfb;
    border-top: 1px solid rgba(0, 0, 0, .1);
    border-radius: 25px;
    width: 100%;
    padding: 1.4rem 2rem;
    transition: background .3s ease-in-out;
}

.form-control:active,
.form-control:focus {
    background: #fff;
}



.contacts {
    margin-bottom: 0;
    color: #a7a7a7;
}


.contacts-block_content {
    height: 100%;
    padding: var(--container-margin);
    background-color: #fff;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    transition: all .3s ease-in-out;
}

.contacts-block_map {
    background: #d3d3d3;
    height: 100%;
    min-height: 250px;
    border-radius: 50px;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    overflow: hidden;
}

.contacts-block_content.bg {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='1440' height='560' preserveAspectRatio='none' viewBox='0 0 1440 560'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1008%26quot%3b)' fill='none'%3e%3crect width='1440' height='560' x='0' y='0' fill='rgba(249%2c 245%2c 245%2c 1)'%3e%3c/rect%3e%3cpath d='M0%2c387.807C71.114%2c372.455%2c137.09%2c347.854%2c199.105%2c309.814C262.306%2c271.046%2c329.978%2c232.182%2c362.408%2c165.506C395.147%2c98.195%2c379.54%2c20.698%2c376.093%2c-54.074C372.27%2c-137.018%2c402.031%2c-239.147%2c341.152%2c-295.61C279.023%2c-353.233%2c175.787%2c-298.678%2c92.978%2c-316.655C18.814%2c-332.755%2c-40.544%2c-403.542%2c-115.934%2c-394.836C-194.369%2c-385.779%2c-256.276%2c-326.343%2c-311.533%2c-269.945C-369.546%2c-210.735%2c-424.892%2c-144.735%2c-440.704%2c-63.364C-456.878%2c19.87%2c-429.221%2c103.029%2c-399.437%2c182.417C-367.779%2c266.798%2c-343.399%2c368.412%2c-263.25%2c409.625C-183.326%2c450.722%2c-87.847%2c406.771%2c0%2c387.807' fill='%23eee3e3'%3e%3c/path%3e%3cpath d='M1440 1203.392C1566.589 1200.391 1693.693 1188.531 1804.192 1126.694 1918.93 1062.4859999999999 2051.741 978.855 2073.077 849.116 2094.754 717.3 1926.953 624.946 1908.461 492.645 1889.843 359.442 2039.987 215.945 1968.6390000000001 101.93099999999998 1900.364-7.1720000000000255 1731.7730000000001 5.469000000000051 1603.071 4.6299999999999955 1496.593 3.9360000000000355 1407.119 70.18900000000002 1304.227 97.59899999999999 1197.727 125.97000000000003 1078.885 105.92000000000002 988.124 168.447 885.599 239.07799999999997 779.33 339.703 772.361 464.008 765.388 588.383 904.561 667.617 953.7239999999999 782.075 1004.578 900.4680000000001 967.152 1059.855 1064.537 1144.231 1162.2730000000001 1228.911 1310.719 1206.4569999999999 1440 1203.392' fill='white'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1008'%3e%3crect width='1440' height='560' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-size: 100% 100%;
}







.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
        background-image: linear-gradient(to bottom right,#1452554a,#dc42254f);

}


.code-grid-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        linear-gradient(var(--primary) 1px, transparent 1px),
        linear-gradient(90deg, var(--primary) 1px, transparent 1px);
    background-size: 50px 50px;
    opacity: 0.05;
  /*  animation: gridMove 20s linear infinite;*/
}
/*
@keyframes gridMove {
    0% { transform: translate(0, 0); }
    100% { transform: translate(50px, 50px); }
}
*/
.floating-particles {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.particle {
    position: absolute;
    font-family: var(--font-code);
    font-size: 1.5rem;
    color: var(--primary);
    opacity: 0.01;
    animation: float 15s infinite ease-in-out; /* 15s */
}

@keyframes float {
    0%, 100% {
        transform: translateY(100vh) rotate(0deg);
        opacity: 0;
    }
    10%, 90% {
        opacity: 0.1;
    }
    50% {
        transform: translateY(-100px) rotate(180deg);
        opacity: 0.5;
    }
}



table {
  border-collapse:collapse;
  width:100%;
  border:1px solid #555
}
th,
td {
  text-align:left;
  vertical-align: top;
  padding:15px 8px;
  border:none
}
tr:nth-child(even) {
  background-color:#f0f0f0
}
tr:hover {
  background-color:#edf3f7
}
table,
tr,
td {
  border-color:#eee;
  border-left:none;
  border-right:none
}
table caption {
  font-weight:600
}
table p {
  margin:0
}
table.noborder,
.noborder tr,
.noborder td {
  border:none;
  border-color:transparent
}
.noborder tr:hover,
.noborder tr:nth-child(even) {
  background:transparent
}
.widetable table {
  font-size:92%
}
.widetable th,
.widetable td {
  border-color:#ddd;
  border-width:0 1px 1px 1px;
  border-style:solid;
  padding:0.25em 0.5em
}
.widetable tr:nth-child(even),
.widetable tr,
.widetable th,
.widetable td,
.widetable tr:hover {
  background-color:transparent !important
}
.widetable {
  overflow-x:auto;
  background-image:-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #fff), color-stop(100%, rgba(255,255,255,0))),-webkit-gradient(linear, 100% 50%, 0% 50%, color-stop(0%, #fff), color-stop(100%, rgba(255,255,255,0))),-webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #c3c3c5), color-stop(100%, rgba(195,195,197,0))),-webkit-gradient(linear, 100% 50%, 0% 50%, color-stop(0%, #c3c3c5), color-stop(100%, rgba(195,195,197,0)));
  background-image:-webkit-linear-gradient(left, #fff, rgba(255,255,255,0)),-webkit-linear-gradient(right, #fff, rgba(255,255,255,0)),-webkit-linear-gradient(left, #c3c3c5, rgba(195,195,197,0)),-webkit-linear-gradient(right, #c3c3c5, rgba(195,195,197,0));
  background-image:-moz-linear-gradient(left, #fff, rgba(255,255,255,0)),-moz-linear-gradient(right, #fff, rgba(255,255,255,0)),-moz-linear-gradient(left, #c3c3c5, rgba(195,195,197,0)),-moz-linear-gradient(right, #c3c3c5, rgba(195,195,197,0));
  background-image:-o-linear-gradient(left, #fff, rgba(255,255,255,0)),-o-linear-gradient(right, #fff, rgba(255,255,255,0)),-o-linear-gradient(left, #c3c3c5, rgba(195,195,197,0)),-o-linear-gradient(right, #c3c3c5, rgba(195,195,197,0));
  background-image:linear-gradient(left, #fff, rgba(255,255,255,0)),linear-gradient(right, #fff, rgba(255,255,255,0)),linear-gradient(left, #c3c3c5, rgba(195,195,197,0)),linear-gradient(right, #c3c3c5, rgba(195,195,197,0));
  background-position:0 0, 100% 0, 0 0, 100% 0;
  background-repeat:no-repeat;
  background-color:white;
  background-size:6em 100%, 6em 100%, 1em 100%, 1em 100%;
  background-attachment:local, local, scroll, scroll
}
table.ya-site-form__wrap {
  border:none !important
}
td.ya-site-form__search-wrap {
  padding:0
}




.stable_icon {
    display:none;
    position:fixed; z-index:9999; top:50px; right:0;
}
@media (min-width: 1400px) {
    .stable_icon {
        display:block;
    }
}