html { box-sizing: border-box; }

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

.contain { width: 1200px; margin: 0 auto; }

.active { background: #E7E7E7; color: #262626; }

.error-input { border: 2px solid #F38585 !important; }

.nav-item { padding-left: 15px; padding-right: 15px; }

.nav-link { position: relative; font-family: Arial !important; font-size: 16px !important; font-weight: 500 !important; color: #262626 !important; }

.nav-link::before { content: ''; position: absolute; top: 30px; left: 0; height: 2px; width: 100%; background: #262626; opacity: 0; transition: 0.3s ease; }

.nav-link:hover::before { opacity: 1; }

.navbar-nav { width: 100% !important; display: flex; justify-content: center; }

.top { display: flex; justify-content: space-between; align-items: center; height: 100px; margin-top: 50px; margin-bottom: 10px; }

.top .logo a { display: flex; align-items: center; position: relative; }

.top .logo a:hover { text-decoration: none; border-bottom: none; }

.top .logo img { width: 80px; height: 80px; }

.top .logo h1 { font-family: Roboto; font-size: 20px; font-weight: 500; color: #262626; margin-top: 18px; }

.top .logo .prefix_logo { font-family: Roboto; font-size: 14px; font-weight: 500; color: #505050; }

.top .contacts .phone a { color: #3ca8db; font-size: 20px; font-family: Arial; font-weight: normal; }

.top .contacts .adress span { color: #2f2f2f; font-size: 14px; font-family: Arial; font-weight: normal; }

.block-banner { height: 85vh; width: 100%; position: relative; }

.block-banner .block-banner-info { position: absolute; top: 20%; left: 35%; background: #4db7ec; opacity: 0.8; z-index: 1; width: 700px; height: 280px; padding-top: 50px; }

.block-banner .block-banner-info .big { font-family: Arial; font-weight: 600; color: #fff; font-size: 36px; z-index: 10; text-align: center; text-transform: uppercase; }

.block-banner .block-banner-info .small { font-family: Arial; font-weight: 600; color: #fff; font-size: 24px; text-align: center; }

.block-banner__media { display: none; background: #4db7ec; padding-top: 15px; padding-bottom: 15px; }

.block-banner__media .big { color: #fff; font-family: Arial; font-weight: 400; font-size: 20px; text-align: center; }

.block-banner__media .small { color: #fff; font-family: Arial; font-weight: 400; font-size: 16px; text-align: center; }

.advantages { margin-top: 50px; margin-bottom: 45px; }

.advantages .advantage img { display: block; margin: auto; }

.advantages .advantage .text { margin-top: 50px; text-transform: uppercase; color: #262626; font-family: Roboto; font-weight: 600; text-align: center; }

.advantages .advantage .text::after { content: ""; top: 125px; left: 25%; height: 3px; width: 50%; background: #4db7ec; position: absolute; }

.assortment { position: relative; }

.assortment .block-assortment { margin-top: 45px; margin-bottom: 90px; width: 100%; }

.assortment .block-assortment h3 { text-transform: uppercase; color: #262626; text-align: center; font-family: Roboto; font-weight: 500; font-size: 24px; }

.assortment .block-assortment .tovary .mn-left { position: absolute; top: 100px; left: -15px; }

.assortment .block-assortment .tovary .mn-right { position: absolute; right: -15px; bottom: 50px; z-index: -1; }

.assortment .block-assortment .tovary .tovar { margin-top: 60px; border: 1px solid #4db7ec; border-radius: 9px; z-index: 999; }

.assortment .block-assortment .tovary .tovar strong { color: #262626; font-size: 16px; font-family: Roboto; font-weight: 600; margin-top: 10px; margin-bottom: 10px; display: block; text-align: center; }

.assortment .block-assortment .tovary .tovar img { width: 80%; display: block; margin: auto; margin-bottom: 5px; }

.shema-raboty { margin-top: 90px; }

.shema-raboty h3 { text-transform: uppercase; color: #262626; text-align: center; font-family: Roboto; font-weight: 500; font-size: 24px; }

.shema-raboty .b_shema { margin-top: 90px; }

.shema-raboty .block-step { border: 5px solid #4db7ec; margin-bottom: 15px; padding: 5px; }

.shema-raboty .block-step .step { text-align: center; }

.shema-raboty .block-step .step strong { margin-top: 10px; color: #4db7ec; font-family: Roboto; font-size: 22px; font-weight: 600; }

.shema-raboty .block-step .description { text-align: center; margin-top: 20px; }

.shema-raboty .block-step .description p { font-family: Roboto; font-size: 16px; font-weight: 400; color: #000; text-transform: uppercase; }

.shema-raboty .block-step .phone-block-shema { text-align: center; display: flex; flex-direction: column; }

.shema-raboty .block-step .phone-block-shema a { font-family: Roboto; color: #4db7ec; font-size: 16px; font-weight: 400; }

.shema-raboty .block-step .description-only { margin-top: 20px; text-align: center; }

.shema-raboty .block-step .description-only p { font-family: Roboto; font-size: 16px; font-weight: 400; color: #000; text-transform: uppercase; }

.shema-raboty .block-step .step-adress { margin-top: 40px; text-align: center; }

.shema-raboty .block-step .step-adress p { font-family: Roboto; font-size: 16px; font-weight: 400; font-style: italic; color: #000; margin: 0; }

.zayavka { margin-top: 90px; }

.zayavka .block-callback { background: #4db7ec; width: 100%; }

.zayavka .block-callback h3 { text-align: center; font-family: Roboto; font-size: 18px; font-weight: 500; color: #fff; text-transform: uppercase; margin-top: 25px; }

.zayavka .block-callback .block-forma { margin-top: 50px; margin-bottom: 25px; width: 40%; margin-left: auto; margin-right: auto; }

.zayavka .block-callback .block-forma .name-callback, .zayavka .block-callback .block-forma .phone-callback { height: 50px; width: 49%; outline: none; border: none; color: #3d3e41; font-family: Roboto; font-size: 14px; font-weight: 400; text-align: center; }

.zayavka .block-callback .block-forma .btn_callback { display: block; margin-left: auto; margin-right: auto; margin-top: 50px; padding: 13px 40px; border: 3px solid #fff; background: none; font-family: Roboto; font-size: 24px; font-weight: 600; color: #fff; transition: all 0.5s ease; }

.zayavka .block-callback .block-forma .btn_callback:hover { color: #4db7ec; background: #fff; }

.zayavka .block-success { display: none; margin-top: 50px; margin-bottom: 50px; }

.zayavka .block-success h3 { text-align: center; font-size: 24px; }

.zayavka .block-error { display: none; margin-top: 50px; margin-bottom: 50px; }

.zayavka .block-error h3 { text-align: center; font-size: 24px; color: red; }

.block-footer { margin-top: 90px; margin-bottom: 30px; }

.block-footer .block-footer-left .contact-info { position: relative; }

.block-footer .block-footer-left .contact-info p { color: #999999; font-family: Roboto; font-size: 15px; font-weight: 400; text-align: center; margin: 0; }

.block-footer .block-footer-left .contact-info::after { content: ''; position: absolute; height: 1px; width: 30%; background: #999; top: 175px; left: 35%; }

.block-footer .block-footer-left .working-hours { margin-top: 40px; }

.block-footer .block-footer-left .working-hours p { color: #999999; font-family: Roboto; font-size: 15px; font-weight: 400; text-align: center; }

.block-footer .block-footer-left .working-hours span { display: block; text-align: center; color: #999999; font-family: Roboto; font-size: 15px; font-weight: 400; }

.block-footer .block-footer-logo .logo a { text-align: center; display: flex; align-items: center; padding-left: 30px; }

.block-footer .block-footer-logo .logo a:hover { text-decoration: none; border-bottom: none; }

.block-footer .block-footer-logo .logo img { width: 150px; height: 150px; margin-right: auto; margin-left: auto; }

.block-footer .block-footer-logo .logo h1 { font-family: Roboto; font-size: 24px; font-weight: 500; color: #262626; }

.block-footer .block-footer-right .contacts .block-contact { position: relative; }

.block-footer .block-footer-right .contacts .block-contact span { display: block; text-align: center; font-family: Roboto; font-size: 18px; font-weight: 500; color: #999; }

.block-footer .block-footer-right .contacts .block-contact::after { content: ''; position: absolute; height: 1px; width: 50%; background: #999; top: 35px; left: 25%; }

.block-footer .block-footer-right .contacts .block-phone { margin-top: 25px; position: relative; }

.block-footer .block-footer-right .contacts .block-phone p { margin: 0; text-align: center; font-family: Roboto; font-size: 15px; font-weight: 400; color: #999; }

.block-footer .block-footer-right .contacts .block-phone::after { content: ''; position: absolute; height: 1px; width: 50%; background: #999; top: 60px; left: 25%; }

.block-footer .block-footer-right .contacts .mail { margin-top: 25px; }

.block-footer .block-footer-right .contacts .mail p { margin: 0; text-align: center; font-family: Roboto; font-size: 15px; font-weight: 400; color: #999999; }

.block-footer .block-footer-right .contacts .social { text-align: center; margin-top: 20px; }

.block-footer .block-footer-right .contacts .social a i { color: #4db7ec; font-size: 30px; margin-right: 10px; margin-left: 10px; }

.block-footer .block-footer-right .contacts .social a:hover { color: #47A8D9; }


.upbtn {
    z-index: 9999;
    width: 60px;
    height: 60px;
    color: #FFF;
    position: fixed;
    left: 25px;
    bottom: 20px;
    right: 20px;
    cursor: pointer;
    border:3px solid #BFE2FF;
    border-radius:50%;
    transform: scale(0);
    transition: all .7s ease-in-out;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: #337AB7;
    background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMS4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQ5MS44NTggNDkxLjg1OCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDkxLjg1OCA0OTEuODU4OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgd2lkdGg9IjMycHgiIGhlaWdodD0iMzJweCI+CjxnPgoJPGc+CgkJPHBhdGggZD0iTTQ5MS44NTgsNDQyLjQ2MWMwLDEzLjkzMS0xMS4yOTMsMjUuMjI0LTI1LjIyNCwyNS4yMjRMMjQ1LjkzLDM3My4wOTdMMjUuMjI0LDQ2Ny42ODYgICAgQzExLjI5Miw0NjcuNjg2LDAsNDU2LjM5MiwwLDQ0Mi40NjFMMjI3LjAxMSwzMi41OGMwLDAsMTguOTE4LTE4LjkxOCwzNy44MzQsMEMyODMuNzY0LDUxLjQ5OSw0OTEuODU4LDQ0Mi40NjEsNDkxLjg1OCw0NDIuNDYxeiIgZmlsbD0iI0ZGRkZGRiIvPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgoJPGc+Cgk8L2c+Cgk8Zz4KCTwvZz4KCTxnPgoJPC9nPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=)
}
.upbtn:hover {
    transform: scale(1.2)!important;
}


.main_block_price h3 {
    text-transform: uppercase; 
    color: #262626; 
    text-align: center; 
    font-family: Roboto; 
    font-weight: 500; 
    font-size: 24px;
}

.main_block_price .block-price {
    margin-top: 90px;
}

.main_block_price .block-price .block-file {
    /*display: flex;*/
    /*align-items: center;*/
}

.main_block_price .block-price .block-file .block-file_fa {
    margin-right: 15px;
}

.main_block_price .block-price .block-file .block-file_fa img {
    width: 20px;
    height: 20px;
}

.block_price_modal {
    width: 100%;
    /*border: 1px solid #DEE2E6;*/
}

table {
    border-spacing: 0 10px;
    font-family: 'Open Sans', sans-serif;
    width: 100%;
}

th {
    padding: 10px 20px;
    color: #848484;
    border-right: 1px solid #D2D3CF;
    font-size: 0.9em;
    border-top: 1px solid #D2D3CF;
}

th:first-child {
    text-align: left;
    border-left: 1px solid #D2D3CF;
}

td {
    vertical-align: middle;
    padding: 10px;
    font-size: 14px;
    text-align: center;
    border-top: 1px solid #D2D3CF;
    border-bottom: 1px solid #D2D3CF;
    border-right: 1px solid #D2D3CF;
}
td:first-child {
    border-left: 1px solid #D2D3CF;
    border-right: 1px solid #D2D3CF;
}
td:nth-child(2){
    border-left: 1px solid #D2D3CF;
    text-align: center;
}


.hover-effect-scale {
    margin: 0;
    width: 100%;
    text-align: center;
}
.hover-effect-scale .tovar {
    position: relative;
    margin: 0;
    overflow: hidden;
}

.hover-effect-scale .tovar img {
    transition: all 0.5s linear;
}
.hover-effect-scale .tovar:hover img {
    transform: scale(1.3);
    border-radius: 10px;
}

.hover-effect-scale .tovar .hidden-button {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    flex-direction: column;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.35); /* Фон блока при наведении */
    transition: all 0.4s ease-in-out;
    color: #fff;
    border-radius: 8px;
}

.hover-effect-scale .tovar:hover .hidden-button {
    overflow: hidden;
    opacity: 1;
}

.hover-effect-scale .hidden-button a {
    text-decoration: none;
    padding: 10px 15px;
    color: #fff;
    background: #156abb;
    border-radius: 5px;
    margin: 0 auto;
    transition: all 0.4s ease-in-out;
    font-size: 14px;
    margin-bottom: 20px;
}
.hover-effect-scale .hidden-button a:hover {
    background: #454545;
    color: #fff;
}

.information_for_customer {
    margin: 5px 15px;
    font-size: 14px;
    color: #e53e4f;
}