

/* Start:/local/templates/custom/css/bootstrap-reboot.min.css?17557205413939*/
/*!
 * Bootstrap Reboot v4.1.1 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}p{margin:0;}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
/*# sourceMappingURL=bootstrap-reboot.min.css.map */
/* End */


/* Start:/local/templates/custom/css/typography.css?176245085211713*/
@font-face{
    font-family: 'Open-Sans';
    font-weight: normal;
    font-style: normal;

    src: url('/local/templates/custom/css/../fonts/OpenSans.woff2') format('woff2'),
    url('/local/templates/custom/css/../fonts/OpenSans.woff') format('woff'),
    url('/local/templates/custom/css/../fonts/OpenSans.ttf') format('truetype');
    font-display: swap;
}

@font-face{
    font-family: 'Open-Sans';
    font-weight: normal;
    font-style: italic;

    src: url('/local/templates/custom/css/../fonts/OpenSans-Italic.woff2') format('woff2'),
    url('/local/templates/custom/css/../fonts/OpenSans-Italic.woff') format('woff'),
    url('/local/templates/custom/css/../fonts/OpenSans-Italic.ttf') format('truetype');
    font-display: swap;
}

@font-face{
    font-family: 'Open-Sans';
    font-weight: 600;
    font-style: normal;

    src: url('/local/templates/custom/css/../fonts/OpenSans-Semibold.woff2') format('woff2'),
    url('/local/templates/custom/css/../fonts/OpenSans-Semibold.woff') format('woff'),
    url('/local/templates/custom/css/../fonts/OpenSans-Semibold.ttf') format('truetype');
    font-display: swap;
}

@font-face{
    font-family: 'Open-Sans';
    font-weight: bold;
    font-style: normal;

    src: url('/local/templates/custom/css/../fonts/OpenSans-Bold.woff2') format('woff2'),
    url('/local/templates/custom/css/../fonts/OpenSans-Bold.woff') format('woff'),
    url('/local/templates/custom/css/../fonts/OpenSans-Bold.ttf') format('truetype');
    font-display: swap;
}

@font-face{
    font-family: 'ProximaNova-Semibold';
    font-weight: 600;
    font-style: normal;

    src: url('/local/templates/custom/css/../fonts/ProximaNova-Semibold.woff2') format('woff2'),
    url('/local/templates/custom/css/../fonts/ProximaNova-Semibold.woff') format('woff'),
    url('/local/templates/custom/css/../fonts/ProximaNova-Semibold.ttf') format('truetype');
    font-display: swap;
}

body{
    font-family: 'Open-Sans';
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5;
    min-width: 320px;
    padding-top: 15px;
    color: #333;
    background: #f5f5f5;
}

img{
    max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6{
    font-weight: bold;
    margin: 0;
}

.row-header-title h1{
    font-size: 40px;
    font-weight: bold;
    line-height: 1.2;
}

strong{
    font-weight: bold;
}

a{
    transition: all .25s;
    color: #333;
}

a:hover,
a:focus{
    text-decoration: none;
    outline: none;
}

ol,
ul{
    margin: 0;
    padding: 0;
    list-style-type: none;
}

button{
    cursor: pointer;
    text-align: left;
    border: none;
    background: none;
}

button:hover,
button:active,
button:focus{
    outline: none;
}

input[type='submit'],
input[type='text'],
button{
    padding: 0;
    color: #333;
    border: none;
    border-radius: 0;
    outline: none !important;

    -webkit-appearance: none;
}

label{
    margin: 0;
    padding: 0;
}

textarea{
    border: none;
    outline: none;
}

ol{
    margin: 0;
    padding: 0;
    list-style-type: decimal;
}

ol li{
    margin: 10px 0;
}

select{
    outline: none;
}

em{
    font-style: italic;
}

.m-auto{
    margin-right: auto;
    margin-left: auto;
}

.pt-0{
    padding-top: 0 !important;
}

.pb-0{
    padding-bottom: 0 !important;
}

.mb-0{
    margin-bottom: 0 !important;
}

.mt-0{
    margin-top: 0 !important;
}

.mb-30{
    margin-bottom: 70px;
}

.mb-70{
    margin-bottom: 70px;
}

.mb-100{
    margin-bottom: 100px;
}

.ta-c{
    text-align: center;
}

/* ==========================================================================
BTN
========================================================================== */

.btn{
    font-family: 'ProximaNova-Semibold';
    font-size: 16px;
    line-height: 1;
    display: inline-flex;
    height: 52px;
    padding: 0 20px;
    cursor: pointer;
    transition: background-color .3s;
    color: #333;
    border: none;
    border-radius: 12px;
    background-color: #ffd703;

    align-items: center;
    justify-content: center;
    gap: 15px;
}

.btn:hover{
    background-color: #ffe533;
}

.btn-blue{
    color: #fff;
    background-color: #1a73e8;
}

.btn-blue:hover{
    background-color: #1668c1;
}

.btn-dark{
    color: #fff;
    background-color: #2e2e2e;
}

.btn-dark:hover{
    background-color: #000;
}

.btn-gray{
    background-color: #f5f5f5;
}

.btn-gray:hover{
    background-color: #e0e0e0;
}

.btn-white{
    background-color: #fff;
}

.btn-white:hover{
    background-color: #f7f7f7;
}

.btn-red{
    color: #fff;
    background-color: #c60d30;
}

.btn-red:hover{
    background-color: #a50a26;
}

.btn-send-dove{
    position: relative;
    padding-right: 52px;
}

.btn-send-dove:after{
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 22px;
    height: 22px;
    content: '';
    transform: translateY(-50%);
    background: url('/local/templates/custom/css/../i/icons/dove.png') no-repeat center;
    background-size: 22px;
}

.btn-writing-hand{
    position: relative;
    padding-right: 52px;
}

.btn-writing-hand:after{
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 22px;
    height: 22px;
    content: '';
    transform: translateY(-50%);
    background: url('/local/templates/custom/css/../i/icons/writing-hand.png') no-repeat center;
    background-size: 22px;
}

.btn-mailbox{
    position: relative;
    padding-right: 52px;
}

.btn-mailbox:after{
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 22px;
    height: 22px;
    content: '';
    transform: translateY(-50%);
    background: url('/local/templates/custom/css/../i/icons/closed-mailbox-with-raised-flag.png') no-repeat center;
    background-size: 22px;
}

.btn-hammer-and-wrench{
    position: relative;
    height: 70px;
    padding-right: 62px;
}

.btn-hammer-and-wrench:after{
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 24px;
    height: 24px;
    content: '';
    transform: translateY(-50%);
    background: url('/local/templates/custom/css/../i/icons/hammer-and-wrench.png') no-repeat center;
    background-size: 24px;
}

.btn-arrow-right{
    position: relative;
    padding-right: 50px;
}

.btn-arrow-right:after{
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 8px;
    height: 13px;
    content: '';
    transition: transform .3s ease;
    transform: translateY(-50%);
    background: url('/local/templates/custom/css/../i/icons/arrow-right.svg') no-repeat center;
}

.btn-arrow-right.arrow-rotated:after{
    transform: translateY(-50%) rotate(90deg);
}

.btn-large-text{
    font-size: 18px;
}

.btn-emoji-backhand:before{
    width: 18px;
    height: 22px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/backhand-index-pointing-right.png') center top / contain no-repeat;
}

.btn-emoji-backhand:after{
    width: 18px;
    height: 22px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/backhand-index-pointing-left.png') center top / contain no-repeat;
}

.backhand-index-pointing-right:after{
    width: 22px;
    height: 26px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/backhand-index-pointing-right.png') center top / contain no-repeat;
}

/* note */

.note{
    position: relative;
    overflow-x: auto;
    max-width: 100%;
    margin: 24px 0;
    padding: 16px 20px;
    padding-left: 68px;
    border-left: 6px solid #999;
    border-radius: 8px;
    background: #f9f9f9;
}

.note::before{
    font-size: 30px;
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translate(0, -50%);
}

/* Типы блоков */
.note-success{
    border-color: #28a745;
    background-color: #e6f4ea;
}

.note-success:before{
    display: block;
    width: 34px;
    height: 34px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/light-bulb.png') center top / contain no-repeat;
}

.note-warning{
    border-color: #ffc107;
    background-color: #fff8e1;
}

.note-warning::before{
    display: block;
    width: 34px;
    height: 34px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/warning.png') center top / contain no-repeat;
}

.note-error{
    border-color: #dc3545;
    background-color: #fbeaea;
}

.note-error::before{
    display: block;
    width: 24px;
    height: 24px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/cross-mark.png') center top / contain no-repeat;
}

.note-info{
    border-color: #17a2b8;
    background-color: #e2f4f9;
}

.note-info::before{
    display: block;
    width: 30px;
    height: 30px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/information.png') center top / contain no-repeat;
}

.note-download{
    border-color: #1976d2;
    background-color: #e3f2fd;
}

.note-download::before{
    display: block;
    width: 26px;
    height: 26px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/floppy-disk.png') center top / contain no-repeat;
}

.note-dev{
    border-color: #6f42c1;
    background-color: #f0e9fb;
}

.note-dev::before{
    display: block;
    width: 26px;
    height: 26px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/man-technologist.png') center top / contain no-repeat;
}

.note-seo{
    border-color: #fd7e14;
    background-color: #fff3e8;
}

.note-seo::before{
    display: block;
    width: 26px;
    height: 26px;
    content: '';
    background: url('/local/templates/custom/css/../i/icons/chart-increasing.png') center top / contain no-repeat;
}

/* ==========================================================================
ARTICLE
========================================================================== */

.article h1,
.article h2{
    font-size: 32px;
    line-height: 1.3;
    margin-bottom: 30px;
}

.article h3{
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 30px;
}

.article h4{
    font-size: 18px;
    line-height: 1.3;
    margin-bottom: 30px;
}

.article a{
    text-decoration: underline;
    color: #1a73e8;
}

.article a:hover{
    text-decoration: none;
}

.article a.btn{
    text-decoration: inherit;
    color: inherit;
}

.article p,
.article ul,
.article ol{
    margin-bottom: 30px;
}

.article p:last-child,
.article ul:last-child{
    margin-bottom: 0;
}

.article ul li{
    position: relative;
    margin-bottom: 5px;
    padding-left: 30px;
}

.article ul li:before{
    position: absolute;
    top: 11px;
    left: 11px;
    width: 4px;
    height: 4px;
    content: '';
    border-radius: 50%;
    background: #333;
}

.article ul li a{
    text-decoration: underline;
    color: #1a73e8;
}

.article ul li a:hover{
    text-decoration: none;
}

.article ol{
    padding-left: 30px;
}

.article ol li{
    margin: 0 0 5px;
    padding-left: 5px;
}

.article blockquote{
    font-style: italic;
    margin: 0 0 30px;
    padding: 10px 20px;
    border-left: 3px solid #333;
}

.article table{
    width: 100%;
    margin-bottom: 30px;
}

.article table th{
    background: #f5f5f5;
}

.article table th,
.article table td{
    padding: 10px;
    vertical-align: top;
    border: 1px solid #ddd;
}

.article figure{
    overflow: hidden;
    margin: 0 0 30px;
    border: 1px solid #ddd;
    border-radius: 12px;
    background: #f5f5f5;
}

.article figcaption{
    font-size: 13px;
    padding: 10px;
    text-align: center;
    color: #666;
}

.article table{
    display: block;
    overflow-x: auto;
    max-width: 100%;

    -webkit-overflow-scrolling: touch;
}

.code-toolbar{
    margin: 30px 0;
}

.code-toolbar pre[class*=language-]{
    margin: 0;
    padding: 30px;
    border-radius: 12px;
}

code{
    color: red;
    overflow-wrap: anywhere;
}

@media (max-width: 991px){
    .article h1,
    .article h2{
        font-size: 22px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    .article h3{
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    .article p,
    .article ul,
    .article ol{
        margin-bottom: 20px;
    }
    .article blockquote{
        margin-bottom: 20px;
        padding: 15px;
    }
    code[class*=language-],
    pre[class*=language-]{
        font-size: 14px !important;
    }
    .code-toolbar:last-child{
        margin-bottom: 0;
    }
    .mb-lg-50{
        margin-bottom: 50px;
    }
    .mb-lg-70{
        margin-bottom: 70px !important;
    }
}

/* End */


/* Start:/local/templates/custom/css/slick.css?17557205411327*/
.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}
/* End */


/* Start:/local/templates/custom/css/bootstrap-grid.min.css?175572054128977*/
/*!
 * Bootstrap Grid v4.1.1 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */@-ms-viewport{width:device-width}html{box-sizing:border-box;-ms-overflow-style:scrollbar}*,::after,::before{box-sizing:inherit}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:750px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1200px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}
/*# sourceMappingURL=bootstrap-grid.min.css.map */
/* End */


/* Start:/local/templates/custom/css/prism.css?17557205412748*/
/* PrismJS 1.29.0
https://prismjs.com/download.html#themes=prism-okaidia&languages=markup+css+clike+javascript+markup-templating+php&plugins=toolbar+copy-to-clipboard */
code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:0 0;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#8292a2}.token.punctuation{color:#f8f8f2}.token.namespace{opacity:.7}.token.constant,.token.deleted,.token.property,.token.symbol,.token.tag{color:#f92672}.token.boolean,.token.number{color:#ae81ff}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#a6e22e}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url,.token.variable{color:#f8f8f2}.token.atrule,.token.attr-value,.token.class-name,.token.function{color:#e6db74}.token.keyword{color:#66d9ef}.token.important,.token.regex{color:#fd971f}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
div.code-toolbar{position:relative}div.code-toolbar>.toolbar{position:absolute;z-index:10;top:.3em;right:.2em;transition:opacity .3s ease-in-out;opacity:0}div.code-toolbar:hover>.toolbar{opacity:1}div.code-toolbar:focus-within>.toolbar{opacity:1}div.code-toolbar>.toolbar>.toolbar-item{display:inline-block}div.code-toolbar>.toolbar>.toolbar-item>a{cursor:pointer}div.code-toolbar>.toolbar>.toolbar-item>button{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}div.code-toolbar>.toolbar>.toolbar-item>a,div.code-toolbar>.toolbar>.toolbar-item>button,div.code-toolbar>.toolbar>.toolbar-item>span{color:#bbb;font-size:.8em;padding:0 .5em;background:#f5f2f0;background:rgba(224,224,224,.2);box-shadow:0 2px 0 0 rgba(0,0,0,.2);border-radius:.5em}div.code-toolbar>.toolbar>.toolbar-item>a:focus,div.code-toolbar>.toolbar>.toolbar-item>a:hover,div.code-toolbar>.toolbar>.toolbar-item>button:focus,div.code-toolbar>.toolbar>.toolbar-item>button:hover,div.code-toolbar>.toolbar>.toolbar-item>span:focus,div.code-toolbar>.toolbar>.toolbar-item>span:hover{color:inherit;text-decoration:none}

/* End */


/* Start:/local/templates/custom/css/fancybox.css?175572054115598*/
.carousel{position:relative;box-sizing:border-box}.carousel *,.carousel *:before,.carousel *:after{box-sizing:inherit}.carousel.is-draggable{cursor:move;cursor:grab}.carousel.is-dragging{cursor:move;cursor:grabbing}.carousel__viewport{position:relative;overflow:hidden;max-width:100%;max-height:100%}.carousel__track{display:flex}.carousel__slide{flex:0 0 auto;width:var(--carousel-slide-width, 60%);max-width:100%;padding:1rem;position:relative;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.has-dots{margin-bottom:calc(0.5rem + 22px)}.carousel__dots{margin:0 auto;padding:0;position:absolute;top:calc(100% + 0.5rem);left:0;right:0;display:flex;justify-content:center;list-style:none;user-select:none}.carousel__dots .carousel__dot{margin:0;padding:0;display:block;position:relative;width:22px;height:22px;cursor:pointer}.carousel__dots .carousel__dot:after{content:"";width:8px;height:8px;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);background-color:currentColor;opacity:.25;transition:opacity .15s ease-in-out}.carousel__dots .carousel__dot.is-selected:after{opacity:1}.carousel__button{width:var(--carousel-button-width, 48px);height:var(--carousel-button-height, 48px);padding:0;border:0;display:flex;justify-content:center;align-items:center;pointer-events:all;cursor:pointer;color:var(--carousel-button-color, currentColor);background:var(--carousel-button-bg, transparent);border-radius:var(--carousel-button-border-radius, 50%);box-shadow:var(--carousel-button-shadow, none);transition:opacity .15s ease}.carousel__button.is-prev,.carousel__button.is-next{position:absolute;top:50%;transform:translateY(-50%)}.carousel__button.is-prev{left:10px}.carousel__button.is-next{right:10px}.carousel__button[disabled]{cursor:default;opacity:.3}.carousel__button svg{width:var(--carousel-button-svg-width, 50%);height:var(--carousel-button-svg-height, 50%);fill:none;stroke:currentColor;stroke-width:var(--carousel-button-svg-stroke-width, 1.5);stroke-linejoin:bevel;stroke-linecap:round;filter:var(--carousel-button-svg-filter, none);pointer-events:none}html.with-fancybox{scroll-behavior:auto}body.compensate-for-scrollbar{overflow:hidden !important;touch-action:none}.fancybox__container{position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;margin:0;padding:env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);box-sizing:border-box;display:flex;flex-direction:column;color:var(--fancybox-color, #fff);-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:hidden;z-index:1050;outline:none;transform-origin:top left;--carousel-button-width: 48px;--carousel-button-height: 48px;--carousel-button-svg-width: 24px;--carousel-button-svg-height: 24px;--carousel-button-svg-stroke-width: 2.5;--carousel-button-svg-filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.4))}.fancybox__container *,.fancybox__container *::before,.fancybox__container *::after{box-sizing:inherit}.fancybox__container :focus{outline:none}body:not(.is-using-mouse) .fancybox__container :focus{box-shadow:0 0 0 1px #fff,0 0 0 2px var(--fancybox-accent-color, rgba(1, 210, 232, 0.94))}@media all and (min-width: 1024px){.fancybox__container{--carousel-button-width:48px;--carousel-button-height:48px;--carousel-button-svg-width:27px;--carousel-button-svg-height:27px}}.fancybox__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--fancybox-bg, rgba(24, 24, 27, 0.92))}.fancybox__carousel{position:relative;flex:1 1 auto;min-height:0;height:100%;z-index:10}.fancybox__carousel.has-dots{margin-bottom:calc(0.5rem + 22px)}.fancybox__viewport{position:relative;width:100%;height:100%;overflow:visible;cursor:default}.fancybox__track{display:flex;height:100%}.fancybox__slide{flex:0 0 auto;width:100%;max-width:100%;margin:0;padding:48px 8px 8px 8px;position:relative;overscroll-behavior:contain;display:flex;flex-direction:column;outline:0;overflow:auto;--carousel-button-width: 36px;--carousel-button-height: 36px;--carousel-button-svg-width: 22px;--carousel-button-svg-height: 22px}.fancybox__slide::before,.fancybox__slide::after{content:"";flex:0 0 0;margin:auto}@media all and (min-width: 1024px){.fancybox__slide{padding:64px 100px}}.fancybox__content{margin:0 env(safe-area-inset-right, 0px) 0 env(safe-area-inset-left, 0px);padding:36px;color:var(--fancybox-content-color, #374151);background:var(--fancybox-content-bg, #fff);position:relative;align-self:center;display:flex;flex-direction:column;z-index:20}.fancybox__content :focus:not(.carousel__button.is-close){outline:thin dotted;box-shadow:none}.fancybox__caption{align-self:center;max-width:100%;margin:0;padding:1rem 0 0 0;line-height:1.375;color:var(--fancybox-color, currentColor);visibility:visible;cursor:auto;flex-shrink:0;overflow-wrap:anywhere}.is-loading .fancybox__caption{visibility:hidden}.fancybox__container>.carousel__dots{top:100%;color:var(--fancybox-color, #fff)}.fancybox__nav .carousel__button{z-index:40}.fancybox__nav .carousel__button.is-next{right:8px}@media all and (min-width: 1024px){.fancybox__nav .carousel__button.is-next{right:40px}}.fancybox__nav .carousel__button.is-prev{left:8px}@media all and (min-width: 1024px){.fancybox__nav .carousel__button.is-prev{left:40px}}.carousel__button.is-close{position:absolute;top:8px;right:8px;top:calc(env(safe-area-inset-top, 0px) + 8px);right:calc(env(safe-area-inset-right, 0px) + 8px);z-index:40}@media all and (min-width: 1024px){.carousel__button.is-close{right:40px}}.fancybox__content>.carousel__button.is-close{position:absolute;top:-40px;right:0;color:var(--fancybox-color, #fff)}.fancybox__no-click,.fancybox__no-click button{pointer-events:none}.fancybox__spinner{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:50px;height:50px;color:var(--fancybox-color, currentColor)}.fancybox__slide .fancybox__spinner{cursor:pointer;z-index:1053}.fancybox__spinner svg{animation:fancybox-rotate 2s linear infinite;transform-origin:center center;position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:100%;height:100%}.fancybox__spinner svg circle{fill:none;stroke-width:2.75;stroke-miterlimit:10;stroke-dasharray:1,200;stroke-dashoffset:0;animation:fancybox-dash 1.5s ease-in-out infinite;stroke-linecap:round;stroke:currentColor}@keyframes fancybox-rotate{100%{transform:rotate(360deg)}}@keyframes fancybox-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.fancybox__backdrop,.fancybox__caption,.fancybox__nav,.carousel__dots,.carousel__button.is-close{opacity:var(--fancybox-opacity, 1)}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop,.fancybox__container.is-animated[aria-hidden=false] .fancybox__caption,.fancybox__container.is-animated[aria-hidden=false] .fancybox__nav,.fancybox__container.is-animated[aria-hidden=false] .carousel__dots,.fancybox__container.is-animated[aria-hidden=false] .carousel__button.is-close{animation:.15s ease backwards fancybox-fadeIn}.fancybox__container.is-animated.is-closing .fancybox__backdrop,.fancybox__container.is-animated.is-closing .fancybox__caption,.fancybox__container.is-animated.is-closing .fancybox__nav,.fancybox__container.is-animated.is-closing .carousel__dots,.fancybox__container.is-animated.is-closing .carousel__button.is-close{animation:.15s ease both fancybox-fadeOut}.fancybox-fadeIn{animation:.15s ease both fancybox-fadeIn}.fancybox-fadeOut{animation:.1s ease both fancybox-fadeOut}.fancybox-zoomInUp{animation:.2s ease both fancybox-zoomInUp}.fancybox-zoomOutDown{animation:.15s ease both fancybox-zoomOutDown}.fancybox-throwOutUp{animation:.15s ease both fancybox-throwOutUp}.fancybox-throwOutDown{animation:.15s ease both fancybox-throwOutDown}@keyframes fancybox-fadeIn{from{opacity:0}to{opacity:1}}@keyframes fancybox-fadeOut{to{opacity:0}}@keyframes fancybox-zoomInUp{from{transform:scale(0.97) translate3d(0, 16px, 0);opacity:0}to{transform:scale(1) translate3d(0, 0, 0);opacity:1}}@keyframes fancybox-zoomOutDown{to{transform:scale(0.97) translate3d(0, 16px, 0);opacity:0}}@keyframes fancybox-throwOutUp{to{transform:translate3d(0, -30%, 0);opacity:0}}@keyframes fancybox-throwOutDown{to{transform:translate3d(0, 30%, 0);opacity:0}}.fancybox__carousel .carousel__slide{scrollbar-width:thin;scrollbar-color:#ccc rgba(255,255,255,.1)}.fancybox__carousel .carousel__slide::-webkit-scrollbar{width:8px;height:8px}.fancybox__carousel .carousel__slide::-webkit-scrollbar-track{background-color:rgba(255,255,255,.1)}.fancybox__carousel .carousel__slide::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:2px;box-shadow:inset 0 0 4px rgba(0,0,0,.2)}.fancybox__carousel.is-draggable .fancybox__slide,.fancybox__carousel.is-draggable .fancybox__slide .fancybox__content{cursor:move;cursor:grab}.fancybox__carousel.is-dragging .fancybox__slide,.fancybox__carousel.is-dragging .fancybox__slide .fancybox__content{cursor:move;cursor:grabbing}.fancybox__carousel .fancybox__slide .fancybox__content{cursor:auto}.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content{cursor:zoom-in}.fancybox__carousel .fancybox__slide.can-zoom_out .fancybox__content{cursor:zoom-out}.fancybox__carousel .fancybox__slide.is-draggable .fancybox__content{cursor:move;cursor:grab}.fancybox__carousel .fancybox__slide.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__image{transform-origin:0 0;user-select:none;transition:none}.has-image .fancybox__content{padding:0;background:rgba(0,0,0,0);min-height:1px}.is-closing .has-image .fancybox__content{overflow:visible}.has-image[data-image-fit=contain]{overflow:visible;touch-action:none}.has-image[data-image-fit=contain] .fancybox__content{flex-direction:row;flex-wrap:wrap}.has-image[data-image-fit=contain] .fancybox__image{max-width:100%;max-height:100%;object-fit:contain}.has-image[data-image-fit=contain-w]{overflow-x:hidden;overflow-y:auto}.has-image[data-image-fit=contain-w] .fancybox__content{min-height:auto}.has-image[data-image-fit=contain-w] .fancybox__image{max-width:100%;height:auto}.has-image[data-image-fit=cover]{overflow:visible;touch-action:none}.has-image[data-image-fit=cover] .fancybox__content{width:100%;height:100%}.has-image[data-image-fit=cover] .fancybox__image{width:100%;height:100%;object-fit:cover}.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,.fancybox__carousel .fancybox__slide.has-map .fancybox__content,.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,.fancybox__carousel .fancybox__slide.has-video .fancybox__content,.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,.fancybox__carousel .fancybox__slide.has-map .fancybox__content,.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content{width:100%;height:80%}.fancybox__carousel .fancybox__slide.has-video .fancybox__content,.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.fancybox__carousel .fancybox__slide.has-map .fancybox__content,.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,.fancybox__carousel .fancybox__slide.has-video .fancybox__content,.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content{padding:0;background:rgba(24,24,27,.9);color:#fff}.fancybox__carousel .fancybox__slide.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:rgba(0,0,0,0)}.fancybox-placeholder{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.fancybox__thumbs{flex:0 0 auto;position:relative;padding:0px 3px;opacity:var(--fancybox-opacity, 1)}.fancybox__container.is-animated[aria-hidden=false] .fancybox__thumbs{animation:.15s ease-in backwards fancybox-fadeIn}.fancybox__container.is-animated.is-closing .fancybox__thumbs{opacity:0}.fancybox__thumbs .carousel__slide{flex:0 0 auto;width:var(--fancybox-thumbs-width, 96px);margin:0;padding:8px 3px;box-sizing:content-box;display:flex;align-items:center;justify-content:center;overflow:visible;cursor:pointer}.fancybox__thumbs .carousel__slide .fancybox__thumb::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-width:5px;border-style:solid;border-color:var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));opacity:0;transition:opacity .15s ease;border-radius:var(--fancybox-thumbs-border-radius, 4px)}.fancybox__thumbs .carousel__slide.is-nav-selected .fancybox__thumb::after{opacity:.92}.fancybox__thumbs .carousel__slide>*{pointer-events:none;user-select:none}.fancybox__thumb{position:relative;width:100%;padding-top:calc(100%/(var(--fancybox-thumbs-ratio, 1.5)));background-size:cover;background-position:center center;background-color:rgba(255,255,255,.1);background-repeat:no-repeat;border-radius:var(--fancybox-thumbs-border-radius, 4px)}.fancybox__toolbar{position:absolute;top:0;right:0;left:0;z-index:20;background:linear-gradient(to top, hsla(0deg, 0%, 0%, 0) 0%, hsla(0deg, 0%, 0%, 0.006) 8.1%, hsla(0deg, 0%, 0%, 0.021) 15.5%, hsla(0deg, 0%, 0%, 0.046) 22.5%, hsla(0deg, 0%, 0%, 0.077) 29%, hsla(0deg, 0%, 0%, 0.114) 35.3%, hsla(0deg, 0%, 0%, 0.155) 41.2%, hsla(0deg, 0%, 0%, 0.198) 47.1%, hsla(0deg, 0%, 0%, 0.242) 52.9%, hsla(0deg, 0%, 0%, 0.285) 58.8%, hsla(0deg, 0%, 0%, 0.326) 64.7%, hsla(0deg, 0%, 0%, 0.363) 71%, hsla(0deg, 0%, 0%, 0.394) 77.5%, hsla(0deg, 0%, 0%, 0.419) 84.5%, hsla(0deg, 0%, 0%, 0.434) 91.9%, hsla(0deg, 0%, 0%, 0.44) 100%);padding:0;touch-action:none;display:flex;justify-content:space-between;--carousel-button-svg-width: 20px;--carousel-button-svg-height: 20px;opacity:var(--fancybox-opacity, 1);text-shadow:var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.4))}@media all and (min-width: 1024px){.fancybox__toolbar{padding:8px}}.fancybox__container.is-animated[aria-hidden=false] .fancybox__toolbar{animation:.15s ease-in backwards fancybox-fadeIn}.fancybox__container.is-animated.is-closing .fancybox__toolbar{opacity:0}.fancybox__toolbar__items{display:flex}.fancybox__toolbar__items--left{margin-right:auto}.fancybox__toolbar__items--center{position:absolute;left:50%;transform:translateX(-50%)}.fancybox__toolbar__items--right{margin-left:auto}@media(max-width: 640px){.fancybox__toolbar__items--center:not(:last-child){display:none}}.fancybox__counter{min-width:72px;padding:0 10px;line-height:var(--carousel-button-height, 48px);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased}.fancybox__progress{background:var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;z-index:30;user-select:none}.fancybox__container:fullscreen::backdrop{opacity:0}.fancybox__button--fullscreen g:nth-child(2){display:none}.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(1){display:none}.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(2){display:block}.fancybox__button--slideshow g:nth-child(2){display:none}.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(1){display:none}.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(2){display:block}
/* End */


/* Start:/local/templates/custom/template_styles.css?1789712309130997*/
/* ==========================================================================
HEADER
========================================================================== */

.row-header{
    position: fixed;
    z-index: 998;
    top: 15px;
    right: 0;
    left: 0;
    transition: transform .1s ease-out;
}

.row-header .container{
    padding-right: 20px;
    padding-left: 20px;
}

.header-inner{
    padding: 10px 15px;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .1);
}


/* nav */

.header-nav ul{
    display: flex;
    margin: 0 -15px;

    gap: 0 20px;
    justify-content: center;
}

.header-nav ul li{
    position: relative;
}

.header-nav ul a:hover{
    color: #1a73e8;
}

.header-nav > ul > li.selected > a{
    font-weight: bold;
}

/* arrow */

.header-nav a.has-arrow{
    position: relative;
    display: inline-block;
    padding-bottom: 13px;
}

.header-nav a.has-arrow::after{
    position: absolute;
    z-index: 5;
    bottom: 3px;
    left: 50%;
    width: 10px;
    height: 10px;
    content: '';
    transition: .2s ease;
    transform: translateX(-50%);
    pointer-events: none;
    opacity: .7;
    background: url('/local/templates/custom/i/icons/arrow-down.svg') center / contain no-repeat;
}

.header-nav ul li ul{
    z-index: 4;
}

.header-nav > ul > li:hover > a.has-arrow::after{
    transform: translateX(-50%) translateY(2px);
    opacity: 1;
    background: url('/local/templates/custom/i/icons/arrow-down-blue.svg') center / contain no-repeat;
}

.header-nav > ul > li.selected > a{
    font-weight: bold;
    color: #000 !important;
}

/* subnav */

.header-nav ul li ul{
    font-size: 15px;
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    flex-direction: column;
    padding: 35px 0 20px;
    border-radius: 0 0 12px 12px;
    background: #fff;

    gap: 15px 0;
}

.header-nav ul li:hover ul{
    display: flex;
}

.header-nav ul li ul li{
    padding: 0 15px;
    white-space: nowrap;
}

.header-nav > ul > li > ul > li.selected a{
    font-weight: bold;
}

/* social */

.header-social{
    display: flex;

    gap: 0 10px;
    margin: 0 -15px 0 -5px;
}

.header-social a{
    display: flex;
    width: 36px;
    height: 36px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 50%;
    background: #f7f7f7;

    align-items: center;
    justify-content: center;
    will-change: transform;
}

.header-social a svg{
    width: 18px;
}

.header-social a.wa{
    background: #25d366;
}

.header-social a.tg{
    background: #08c;
}

.header-social a.vk{
    background: #0078ff;
}

.header-social a.yt{
    background: #f00;
}

.header-social a.max{
    background: linear-gradient(135deg, #35C8F5 0%, #4264F4 50%, #A522E8 100%);
}

.header-social a svg path{
    transition: fill .3s ease;

    fill: #fff;
}

.header-social a:hover{
    transform: scale(1.1);
}

/* mob nav */

.header-burger{
    position: relative;
    display: flex;
    overflow: hidden;
    width: 42px;
    height: 42px;
    margin-left: auto;
    cursor: pointer;
    border-radius: 50%;
    background: #ffd703;

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

.header-burger span{
    position: absolute;
    width: 21px;
    height: 2px;
    transition: all .3s ease;
    background: #000;
}

.header-burger span:nth-child(1){
    top: calc(50% - 8px);
}

.header-burger span:nth-child(2){
    top: 50%;
    transform: translateY(-50%);
}

.header-burger span:nth-child(3){
    top: calc(50% + 6px);
}

.row-header.active .header-burger span{
    background: #fff;
}

.header-burger.open span:nth-child(1){
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}

.header-burger.open span:nth-child(2){
    left: -50px;
    opacity: 0;
}

.header-burger.open span:nth-child(3){
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
}

/* ==========================================================================
SIDEBAR
========================================================================== */

body.sidebar-open{
    overflow: hidden;
}

body.sidebar-open::before{
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    transition: right .3s ease;
    background: rgba(0, 0, 0, .5);
}

.sidebar{
    position: fixed;
    z-index: 1000;
    top: 0;
    right: -320px;
    display: flex;
    overflow: auto;
    flex-direction: column;
    width: 320px;
    height: 100%;
    transition: right .3s ease;
    background: #fff;

    justify-content: space-between;
}

.sidebar.open{
    right: 0;
}

.sidebar-header{
    display: flex;
    padding: 15px;

    justify-content: space-between;
}

.close-btn{
    font-size: 28px;
    cursor: pointer;
    color: #333;
}

/* nav */

.sidenav-nav{
    margin: 0;
    list-style: none;

    flex: 1;
}

.sidenav-nav > ul > li > a{
    display: block;
    padding: 10px 15px;
    color: #333;
}

.sidenav-nav > ul > li.parent{
    position: relative;
}

.sidenav-nav > ul > li.parent > span{
    position: absolute;
    top: -1px;
    right: 0;
    width: 50px;
    height: 50px;
    content: '';
    -webkit-transition: -webkit-transform .3s ease-out;
            transition:         transform .3s ease-out;
    background: url(/local/templates/custom/i/icons/arrow-right-mob.svg) center no-repeat;
    background-size: 26px 26px;
}

.sidenav-nav > ul > li.parent > span.active{
    -webkit-transition: -webkit-transform .3s ease-out;
            transition:         transform .3s ease-out;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
}

.sidenav-nav > ul > li.selected > a{
    font-weight: bold;
}

/* sub */

.sidenav-nav > ul > li.parent > ul{
    display: none;
}

.sidenav-nav > ul > li.selected > ul{
    display: block;
}

.sidenav-nav > ul > li > ul > li > a{
    display: block;
    padding: 10px 15px 10px 30px;
    color: #333;
}

.sidenav-nav > ul > li > ul > li.selected > a{
    font-weight: bold;
}

/* footer */

.sidebar-footer{
    padding: 15px;
}

.sidebar-footer{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

/* ==========================================================================
FOOTER
========================================================================== */

.row-footer{
    padding: 30px 0;
    background: #312b3e;
}

/* top */

.footer-top{
    padding-bottom: 30px;
    border-bottom: 1px solid #5d5968;
}

.footer-nav ul{
    display: flex;

    gap: 10px 20px;
    flex-wrap: wrap;
}

.footer-nav ul li{
    position: relative;
}

.footer-nav ul li a{
    color: #fff;
}

.footer-nav ul a:hover{
    color: #1a73e8;
}

.footer-nav > ul > li > a.selected{
    font-weight: bold;
}

/* social */

.footer-social{
    display: flex;
    gap: 0 10px;
    margin: 0 -15px 0 -5px;
}

.footer-social a{
    display: flex;
    width: 36px;
    height: 36px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 50%;
    background: #fff;

    align-items: center;
    justify-content: center;
    will-change: transform;
}

.footer-social a svg{
    width: 18px;
}

.footer-social a.wa{
    background: #25d366;
}

.footer-social a.tg{
    background: #08c;
}

.footer-social a.vk{
    background: #0078ff;
}

.footer-social a.max{
    background: #4264F4;
    background: linear-gradient(135deg, #35C8F5 0%, #4264F4 50%, #A522E8 100%);
}

.footer-social a.yt{
    background: #f00;
}

.footer-social a svg path{
    transition: fill .3s ease;

    fill: #fff;
}

.footer-social a:hover{
    transform: scale(1.1);
}

/* bottom */

.footer-bottom{
    padding-top: 30px;
}

.footer-info{
    display: flex;

    gap: 15px;
    align-items: center;
}

.footer-info-thumb{
    width: 60px;
}

.footer-info-text{
    color: #fff;
}

.footer-copy{
    display: flex;
    color: #fff;

    align-items: center;
    gap: 15px;
    justify-content: flex-end;
}

.footer-policy{
    margin-top: 5px;
    text-align: right;
}

.footer-policy a{
    color: #fff;
}

.footer-policy a:hover{
    text-decoration: underline;
}

/* ==========================================================================
HERO
========================================================================== */

.row-hero{
    margin: 50px 0;
}

/* header */

.hero-header{
    position: relative;
}

.hero-header:after{
    position: absolute;
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 50px;
    content: '';
    border-radius: 0 20px 0 0;
    background: #e5e5e5;
}

.hero-header-tab{
    font-size: 20px;
    font-weight: bold;
    position: relative;
    z-index: 1;
    display: flex;
    max-width: 277px;
    padding: 15px 30px;
    color: #fff;
    border-radius: 20px 20px 0 0;
    background: #381328;

    align-items: center;
    gap: 15px;
}

.hero-header-tab:after{
    width: 30px;
    height: 30px;
    content: '';
    background: url('/local/templates/custom/i/icons/man-technologist.png') center top / contain no-repeat;
}

/* body */

.hero-body{
    position: relative;
    z-index: 1;
    padding: 30px;
    color: #fff;
    border-radius: 0 20px 20px 20px;
    background: linear-gradient(124.263deg, #381328 52%, #040c28 100%);
}

.hero-body-info{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.hero-body-image img{
    border-radius: 25px;
}

.hero-body-title{
    font-size: 38px;
    font-weight: bold;
    line-height: 1.2;
}

.hero-body-title img{
    width: 40px;
    height: 40px;
}

.hero-body-title span{
    color: #c60d30;
}

.hero-body-subtitle{
    font-size: 17px;
    font-weight: bold;
}

.hero-body-list ul{
    line-height: 1.3;
    display: flex;

    flex-wrap: wrap;
    gap: 15px 0;
}

.hero-body-list ul li{
    position: relative;
    width: 48%;
    padding-right: 10px;
    padding-left: 35px;
}

.hero-body-list ul li:before{
    position: absolute;
    top: 8px;
    left: 0;
    width: 20px;
    height: 20px;
    content: '';
    border-radius: 50%;
    background: url('/local/templates/custom/i/icons/star-gr.svg') center / contain no-repeat;
}

.hero-body-btn{
    display: flex;

    gap: 30px;
}

/* footer */

.hero-footer{
    margin: 0 100px;
    border-radius: 0 0 20px 20px;
    background: #fff;
}

.hero-footer-info{
    display: none;
    padding: 40px 30px 0 30px;
}

.hero-footer-info-item{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 0 0 30px 80px;

    gap: 10px;
}

.hero-footer-info-item:before{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 50px;
    height: 50px;
    content: '';
    background: url('/local/templates/custom/i/icons/star-gold.svg') center / contain no-repeat;
}

.hero-footer-info-item:after{
    position: absolute;
    top: 0;
    left: 24px;
    width: 1px;
    height: 100%;
    content: '';
    border: 1px dashed #cdcdcd;
}

.hero-footer-info-item:last-child:after{
    content: none;
}

.hero-footer-info-item-title{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2;
}

/* arrow */

.hero-footer-arrow{
    padding: 20px 0;
    cursor: pointer;
}

.hero-footer-arrow:after{
    display: block;
    width: 23px;
    height: 14px;
    margin: 0 auto;
    content: '';
    background: #000;
    background: url('/local/templates/custom/i/icons/arrow-dn.svg') center top / contain no-repeat;
}

.hero-footer-arrow.arrow-rotated:after{
    transform: translateY(-50%) rotate(180deg);
}

/* ==========================================================================
TO TOP
========================================================================== */

.scroll-to-top{
    position: fixed;
    z-index: 999;
    right: 26px;
    bottom: 20px;
    display: none;
    width: 50px;
    height: 50px;
    cursor: pointer;
    transition: opacity .3s, transform .3s;
    border-radius: 50%;
    background: #fff url('/local/templates/custom/i/icons/arrow-top.svg') center / 14px 8px no-repeat;
    box-shadow: 0 4px 6px rgba(0, 0, 0, .2);
}

.scroll-to-top:hover{
    transform: scale(1.1);
    background-color: #ffd703;
}

/* ==========================================================================
INDEX MAP
========================================================================== */

.row-map{
    position: relative;
    padding: 50px 0;
}

.row-map:before{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    opacity: .5;
    background: url('/local/templates/custom/i/map.webp') center / contain no-repeat;
}

.map-content{
    display: flex;
    flex-direction: column;
    text-align: center;

    gap: 20px;
}

.map-glag img{
    max-width: 60px;
}

.map-title{
    font-size: 40px;
    font-weight: bold;
}

.map-title span{
    font-size: 36px;
}

.map-text{
    font-size: 18px;
    font-style: italic;
}

.map-gerb{
    margin-top: 50px;
    text-align: center;
}

.map-gerb img{
    width: 240px;
}

/* ==========================================================================
FINAL
========================================================================== */

.row-final{
    position: relative;
    overflow: hidden;
    height: 1000px;
    padding: 50px 0;
}

/* animate */

.final-animate-first{
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    transform: translateY(-50%);

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

.final-animate-second{
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    transform: translateY(-50%);

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

.final-animate-first img{
    max-width: 900px;
}

.final-animate-second img{
    max-width: 1000px;
    transform: rotate(45deg);
}

/* content */

.final-content{
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    margin-right: auto;
    margin-left: auto;
    transform: translateY(-50%);
    text-align: center;

    gap: 50px;
}

.final-content-numb{
    font-size: 160px;
    font-weight: bold;
    line-height: 1;
    color: #4b3e6f;
}

.final-content-title{
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
}

.final-content-text{
    font-size: 28px;
    font-weight: bold;
}

/* ==========================================================================
HEADER H1 BLOCK
========================================================================== */

.header-h1-block{
    position: relative;
    margin-bottom: 50px;
    padding: 0 70px 50px 70px;
    text-align: center;
}

.header-h1-block h1{
    font-size: 40px;
    margin-bottom: 20px;
}

.header-h1-block:after{
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 70px;
    height: 3px;
    content: '';
    transform: translate(-50%, 0);
    background: #ffd703;
}

.header-h1-block p{
    margin-top: 15px;
}

/* ==========================================================================
HEADER H2 BLOCK
========================================================================== */

.header-h2-block{
    font-size: 18px;
    line-height: 1.3;
    padding-right: 30px;
    padding-left: 30px;
    text-align: center;
}

.header-h2-block h2{
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 10px;
}

.header-h2-block .ico{
    max-width: 61px;
    margin: 30px auto 0;
}

.header-bx span{
    display: inline-flex;
    color: #c60d30;

    align-items: center;
}

.header-bx span img{
    width: 60px;
    height: 60px;
    margin-left: 15px;
}

.header-h2-block-ico{
    margin-bottom: 50px;
}

/* ==========================================================================
TASK
========================================================================== */

.row-task{
    padding: 70px 0;
}

.row-task .row > div{
    margin-bottom: 70px;
}

.row-task .row > div:last-child{
    margin-bottom: 0;
}

.task-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 70px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.task-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.task-item-content{
    display: flex;
    flex-direction: column;

    gap: 30px;
    flex: 1;
}

.task-item-content-ico{
    position: absolute;
    top: -45px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border: 5px solid #f5f5f5;
    border-radius: 50%;
    background: #fff;

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

.task-item-content-ico img{
    max-width: 50px;
}

.task-item-content-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
}

.task-item-content-text{
    display: flex;
    flex-direction: column;

    gap: 20px;
}

.task-item-btn{
    text-align: center;
}

/* ==========================================================================
SLOGAN
========================================================================== */

.row-slogan{
    padding: 50px 0;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%), linear-gradient(#433954, #433954), linear-gradient(#fff, #fff);
}

.slogan-author{
    display: flex;
    margin-bottom: 50px;

    align-items: start;
    gap: 30px;
    justify-content: center;
}

.slogan-author-frame img{
    width: 150px;
    border: 5px solid #fff;
    border-radius: 50%;
}

.slogan-author-frame video{
    display: block;
    width: 150px;
    height: 150px;
    border: 5px solid #fff;
    border-radius: 50%;
}

.slogan-author span{
    font-size: 128px;
    line-height: 1;
    color: #ffd703;
}

.slogan-text{
    margin-bottom: 50px;
    padding: 0 15px;
    text-align: center;
    color: #fff;
}

.slogan-text h2{
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #ffd703;
}

.slogan-text h2 span{
    color: #ffd703;
}

.slogan-text p{
    font-size: 18px;
}

.slogan-btn{
    margin-bottom: 50px;
    text-align: center;
}

/* progressline */

.slogan-progressline{
    font-size: 18px;
    position: relative;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
}

.slogan-track{
    display: flex;
    width: max-content;
    animation: marquee 60s linear infinite;
    white-space: nowrap;
    color: #fff;
}

.slogan-track div{
    display: flex;
    margin-right: 30px;

    gap: 30px;
}

@keyframes marquee{
    from{
        transform: translateX(0);
    }

    to{
        transform: translateX(-50%);
    }
}

@keyframes sloganPulse{
    0%,
    100%{
        opacity: 1;
        text-shadow: 0 0 0 transparent;
    }
    50%{
        opacity: 1;
        text-shadow: 0 0 8px rgba(255, 255, 255, .7);
    }
}

.slogan-track div{
    animation: sloganPulse 3s ease-in-out infinite;
}


/* ==========================================================================
PROJECTS
========================================================================== */

.row-projects{
    padding: 80px 0;
}

.row-projects .row > div{
    margin-right: auto;
    margin-bottom: 90px;
    margin-left: auto;
}

.projects-btn{
    text-align: center;
}

.projects-item{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px 15px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 6px;

    gap: 30px;
}

.projects-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.projects-item-content{
    display: flex;
    flex-direction: column;
    height: 100%;

    gap: 10px;
}

.projects-item-title{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}

.projects-item-subtitle{
    font-style: italic;
}

.projects-item-desc{
    margin: 20px 0;
    padding: 10px;
    text-align: left;
    border-radius: 6px;
    background: #eee;

    flex: 1;
}

.projects-item-desc table td:first-child{
    width: 1%;
    white-space: nowrap;
}

.projects-item-desc table td{
    padding: 10px ;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
}

.projects-item-desc table tr:last-child td{
    border: none;
}

.projects-item-cms{
    font-size: 14px;
    display: inline-flex;

    justify-content: center;
    align-items: center;
    gap: 10px;
}

.projects-item-cms:after{
    width: 16px;
    height: 16px;
    content: '';
    background: url('/local/templates/custom/i/icons/bx.svg') center / contain no-repeat;
}

/* ==========================================================================
TRUST
========================================================================== */

.row-trust{
    padding: 50px 0 80px;
    background: #fff;
}

.header-h2-block-trust{
    margin-bottom: 100px;
}

.trust-item{
    height: 100%;
    padding: 80px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #ddfadc;
}

.trust-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.trust-item-ico{
    position: absolute;
    top: -45px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border-radius: 50%;
    background: #fff;

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

.trust-item-ico img{
    max-width: 50px;
}

/* slick */

.trust-slider .slick-list{
    padding-top: 45px !important;
}

/* ==========================================================================
SLICK
========================================================================== */

.slick-dots{
    display: flex !important;
    width: 100%;
    margin-top: 30px;

    justify-content: center;
    gap: 7px;
}

.slick-dots li{
    font-size: 0;
    width: 6px;
    height: 6px;
    border-radius: 50px;
    background: #999;
}

.slick-dots li.slick-active{
    background: #000;
}

/* ==========================================================================
ADVANTAGES
========================================================================== */

.row-advantages{
    padding: 70px 0;
}

.row-advantages .header-h2-block{
    margin-bottom: 100px;
}

.row-advantages .row .col-6{
    margin-bottom: 90px;
}

.row-advantages .row .col-lg-4{
    margin-bottom: 90px;
}

.advantages-item{
    position: relative;
    height: 100%;
    padding: 70px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;
}

.advantages-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.advantages-item-ico{
    position: absolute;
    top: -45px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border-radius: 50%;
    background: #fff;

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

.advantages-item-ico img{
    max-width: 42px;
}

.advantages-item-content{
    line-height: 1.3;
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.advantages-item-content strong{
    font-size: 26px;
}

.advantages-item-content em{
    color: #666;
}

.advantages-btn{
    text-align: center;
}

.advantages-btn .btn-send-dove{
    height: 70px;
}

/* slick */

.advantages-slider .slick-list{
    padding-top: 45px !important;
}

/* ==========================================================================
BITRIX SITE
========================================================================== */

.row-bitrix-site{
    padding: 50px 0;
    background: #fff;
}

.bitrix-site-container{
    display: flex;
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;

    align-items: center;
    gap: 30px;
}

.bitrix-site-ico{
    display: flex;
    height: 100px;
    border-radius: 50%;
    background: #fff;

    flex: 0 0 100px;
    align-items: center;
    justify-content: center;
}

.bitrix-site-ico img{
    width: 85px;
    height: 85px;
}

.bitrix-site-content{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.bitrix-site-content p:first-child{
    font-size: 26px;
    font-weight: bold;
}

.bitrix-site-content p:first-child span{
    color: #c60d30;
}

.bitrix-site-btn{
    flex: 0 0 auto;
}

/* ==========================================================================
INDEX REVIEWS
========================================================================== */

.row-index-reviews{
    padding: 50px 0;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%), linear-gradient(#433954, #433954), linear-gradient(#fff, #fff);
}

.row-index-reviews .header-h2-block{
    margin-bottom: 50px;
    color: #fff;
}

.row-index-reviews .header-h2-block h2{
    color: #ffd703;
}

.index-reviews-item{
    display: flex !important;
    max-width: 470px;
    margin-right: 30px;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 15px;
}

.index-reviews-item-author{
    flex: 0 0 100px;
}

.index-reviews-item-author img{
    border-radius: 50%;
}

.index-reviews-item-content{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.index-reviews-item-name{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
}

.index-reviews-item-post strong{
    display: block;
}

.index-reviews-item-post a{
    color: #1a73e8;
}

.index-reviews-item-post a:hover{
    text-decoration: underline;
}

.index-reviews-item-text{
    line-height: 1.3;
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.index-reviews-item-text a{
    text-decoration: underline;
    color: #1a73e8;
}

.index-reviews-item-text a:hover{
    text-decoration: none;
}

.index-reviews-item-rating{
    display: flex;
    margin: 5px 0;

    gap: 8px;
}

/* slick */

.index-reviews-slider{
    display: flex;
}

.index-reviews-item{
    height: 100%;
}

.index-reviews-slider .slick-track{
    display: flex !important;

    align-items: stretch;
}

.index-reviews-slider .slick-slide{
    display: flex !important;
    height: auto !important;
}

.reviews-slider-arrows-container{
    display: flex;
    flex-direction: column;
    margin: 50px 0;

    align-items: center;
}

.reviews-slider-arrows{
    display: inline-flex;
    padding: 7px 9px;
    border-radius: 100px;
    background: #9b8993;

    align-items: center;
    gap: 10px;
}

.reviews-slider-arrows button{
    font-size: 0;
    width: 40px;
    height: 40px;
    cursor: pointer;
    transition: background-color .3s, transform .2s ease;
    border: none;
    border-radius: 50%;
    background: #fff;
}

.reviews-slider-arrows button:hover,
.reviews-slider-arrows button.slick-disabled{
    background-color: #e0e0e0 !important;
}

.reviews-slider-arrows button:active{
    transform: scale(.9);
}

.reviews-slider-arrows button.slick-prev{
    background: #fff url('/local/templates/custom/i/icons/arrow-left.svg') center / 8px 12px no-repeat;
}

.reviews-slider-arrows button.slick-next{
    background: #fff url('/local/templates/custom/i/icons/arrow-right.svg') center / 8px 12px no-repeat;
}

/* ==========================================================================
SECRET
========================================================================== */

.row-secret{
    padding: 50px 0;
}

.row-secret .header-h2-block{
    margin-bottom: 50px;
}

.secret-inner{
    max-width: 970px;
    margin: 0 auto;
    padding-top: 40px;
    padding-bottom: 40px;
    border-radius: 12px;
    background: #fff;
}

.secret-items{
    padding: 0 30px;
}

.secret-items-item{
    position: relative;
    display: flex;
    padding-bottom: 40px;

    gap: 30px;
}

.secret-items-item:last-child{
    padding-bottom: 0;
}

.secret-items-item:after{
    position: absolute;
    top: 0;
    left: 28px;
    width: 1px;
    height: 100%;
    content: '';
    border: 1px dashed #cdcdcd;
}

.secret-items-item:last-child:after{
    content: none;
}

.secret-items-item-numb{
    font-size: 22px;
    font-weight: bold;
    position: relative;
    z-index: 1;
    display: flex;
    height: 60px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #ffd703;

    flex: 0 0 60px;
    align-items: center;
    justify-content: center;
}

.secret-items-item-content{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.secret-items-item-content strong{
    font-size: 24px;
}

.secret-text{
    margin: 30px 0;
    text-align: center;
}

.secret-btn{
    text-align: center;
}

/* ==========================================================================
QWA
========================================================================== */

.row-qwa{
    padding: 80px 0;
}

.row-qwa .header-h2-block{
    margin-bottom: 50px;
}

.qwa-items{
    max-width: 970px;
    margin: 0 auto;
    padding: 0 30px;
    border-radius: 12px;
    background: #fff;
}

.qwa-item{
    display: flex;
    flex-direction: column;
    padding: 30px 0;
    border-bottom: 1px solid #f5f5f5;

    gap: 30px;
}

.qwa-item-title{
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    position: relative;
    padding-right: 60px;
    cursor: pointer;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
}

.qwa-item.active .qwa-item-title,
.qwa-item-title:hover{
    color: #1a73e8;
}


.qwa-item-title:after{
    position: absolute;
    top: 0;
    top: 50%;
    right: 0;
    width: 40px;
    height: 40px;
    content: '';
    transform: translateY(-50%) rotate(180deg);
    border-radius: 50%;
    background: #f7f7f7 url('/local/templates/custom/i/icons/arrow-top.svg') center / 12px 13px no-repeat;
}

.qwa-item.active .qwa-item-title:after{
    transform: translateY(-50%) rotate(0);
}

.qwa-item-text{
    display: none;
    padding: 20px 30px;
    border-radius: 12px;
    background: #f5f5f5;
}

.qwa-item-title.active + .qwa-item-text{
    display: block;
}

/* ==========================================================================
CONSULT
========================================================================== */

.row-consult{
    padding: 120px 30px 50px;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%), linear-gradient(#433954, #433954), linear-gradient(#fff, #fff);
}

.consult-container{
    position: relative;
    max-width: 970px;
    margin: 0 auto;
    padding: 90px 30px 40px 30px;
    border-radius: 12px;
    background: #fff;
}

.consult-author{
    position: absolute;
    top: -75px;
    left: 50%;
    width: 150px;
    height: 150px;
    transform: translate(-50%, 0);
    border: 7px solid #fff;
    border-radius: 50%;
}

.consult-author span{
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 28px;
    height: 28px;
    animation: pulse 1.5s infinite ease-out;
    border: 5px solid #fff;
    border-radius: 50%;
    background: #47cf73;
    box-shadow: 0 0 0 0 rgba(71, 207, 115, .8);
}

/* Анимация пульсации */
@keyframes pulse{
    0%{
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(71, 207, 115, .8);
    }

    50%{
        transform: scale(1.2);
        box-shadow: 0 0 0 10px rgba(71, 207, 115, 0);
    }

    100%{
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(71, 207, 115, 0);
    }
}

.consult-header{
    display: flex;
    flex-direction: column;
    text-align: center;

    gap: 20px;
}

.consult-header h2{
    font-size: 40px;
    font-weight: bold;
    line-height: 1;
    display: flex;

    gap: 10px;
    align-items: center;
    justify-content: center;
}

.consult-header h2:after{
    width: 40px;
    height: 40px;
    content: '';
    background: url('/local/templates/custom/i/icons/direct-hit.png') center top / contain no-repeat;
}

.consult-body{
    display: flex;
    max-width: 710px;
    margin: 40px auto;
    padding: 25px 0;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 10px;
}

.consult-body-item{
    display: flex;
    flex-direction: column;
    text-align: center;

    justify-content: center;
    align-items: center;
    gap: 10px;
    flex: 1 1 33.3%;
}

.consult-body-item-ico{
    max-width: 30px;
}

.consult-body-item-desc{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
}

.consult-body-item-desc span{
    font-size: 18px;
    font-weight: normal;
}

.consult-footer{
    display: flex;

    justify-content: center;
    gap: 30px;
}

.consult-footer a{
    height: 70px;
}

.consult-footer a:after{
    width: 30px;
    height: 30px;
}

/* ==========================================================================
CONNECT
========================================================================== */

.row-connect{
    padding: 80px 0;
    color: #fff;
    background: linear-gradient(124.2633deg, #381328 52%, #040c28 100%);
}

.row-connect .header-h2-block h2{
    margin-bottom: 20px;
    color: #ffd703;
}

.row-connect .header-h2-block{
    margin-bottom: 80px;
}

/* info */

.connect-info{
    display: flex;
    flex-direction: column;
    padding: 15px 30px 0 30px;

    gap: 30px;
}

.connect-info-author{
    display: flex;

    justify-content: center;
    gap: 30px;
}

.connect-info-author video{
    display: block;
    width: 150px;
    height: 150px;
    border-radius: 50%;
}

.connect-info-author span{
    font-size: 128px;
    line-height: 1;
    color: #ffd703;
}

.connect-info-title{
    font-size: 36px;
    font-weight: bold;
}

.connect-info-title img{
    width: 36px;
}

.connect-info-list ul{
    display: flex;
    flex-direction: column;
    padding: 0 30px;

    gap: 15px;
}

.connect-info-list ul li{
    line-height: 1.3;
    position: relative;
    padding-left: 26px;
}

.connect-info-list ul li:before{
    position: absolute;
    top: 3px;
    left: 0;
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/star-gr.svg') center / contain no-repeat;
}

.connect-info-text{
    text-align: center;
}

.connect-info-text img{
    width: 16px;
}

/* form */

.connect-form{
    display: flex;
    flex-direction: column;
    padding-right: 30px;
    padding-left: 30px;

    gap: 30px;
}

.connect-form-title{
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 15px;
}

.connect-form-fields{
    display: flex;
    flex-direction: column;

    gap: 27px;
}

.connect-form-fields .input-row input{
    width: 100%;
    padding: 10px 15px;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 12px;
    background: none;
}


.connect-form-fields .select-row select{
    width: 100%;
    padding: 15px;
    cursor: pointer;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 12px;
    background: none;

            appearance: none;
    -webkit-appearance: none;
       -moz-appearance: none;
}

.connect-form-fields .select-row{
    position: relative;
}

.connect-form-fields .select-row::after{
    position: absolute;
    top: 50%;
    right: 15px;
    width: 13px;
    height: 8px;
    content: '';
    transform: translateY(-50%);
    pointer-events: none;
    background: url('/local/templates/custom/i/icons/arrow-dn-wt.svg') no-repeat center;
    background-size: contain;
}

.connect-form-fields .textarea-row textarea{
    font-size: 16px;
    line-height: 1.5;
    width: 100%;
    min-height: 92px;
    padding: 15px;
    resize: none;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 12px;
    background: none;
}

.connect-form-fields .input-row input::placeholder,
.connect-form-fields .textarea-row textarea::placeholder{
    color: #fff;
}

.submit-row button{
    height: 70px;
    padding-right: 70px;
    padding-left: 30px;
}

.submit-row button:after{
    width: 40px;
    height: 40px;
    background-size: 40px;
}

.rule-row{
    font-size: 14px;
    line-height: 1.1;
    color: #999;
}

.rule-row label{
    position: relative;
    padding-left: 20px;
}

.rule-row label input{
    position: absolute;
    top: 2px;
    left: 0;
}

.rule-row label a{
    text-decoration: none;
    color: #1a73e8;
}

.rule-row label a:hover{
    text-decoration: underline;
}

.checkbox-row{
    font-size: 14px;
    line-height: 1.2;
    color: #666;
}

.checkbox-row a{
    color: #1a73e8;
}

.checkbox-row a:hover{
    text-decoration: underline;
}

/* ==========================================================================
BREADCRUMBS
========================================================================== */

.row-breadcrumbs{
    margin: 40px 0 30px;
}

.breadcrumbs{
    font-size: 14px;
    display: flex;

    gap: 10px;
    flex-wrap: wrap;
}

.breadcrumbs-item:after{
    margin-left: 10px;
    content: '/';
}

.breadcrumbs-item:last-child:after{
    content: none;
}

.breadcrumbs-item a{
    color: #666;
}

.breadcrumbs-item:last-child a{
    color: #999;
}

/* ==========================================================================
PAGE
========================================================================== */

.row-header-title{
    margin-bottom: 50px;
}

.row-page{
    margin-top: 50px;
    margin-bottom: 60px;
}

.row-page.bg-wt{
    background: #fff;
}

.page-price{
    padding: 70px 0;
}

/* ==========================================================================
ARTICLE LIST
========================================================================== */

.article-list-container{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.article-list-desc{
    margin-top: 30px;
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.article-list-item{
    display: flex;
    flex-direction: column;
    padding: 30px 0;
    border-top: 1px solid #f5f5f5;

    gap: 20px;
}

.article-list-item-title a{
    font-size: 20px;
    line-height: 1.3;
    color: #1a73e8;
}

.article-list-item-info{
    display: flex;

    gap: 15px;
}

.article-list-item-info-thumb{
    flex: 0 0 200px;
}

.article-list-item.golosom .article-list-item-info-thumb{
    flex: 0 0 100px;
}

.article-list-item-info-thumb a{
    display: inline-flex;
    overflow: hidden;
    border-radius: 12px;
}

.article-list-item-info-thumb:hover a{
    opacity: .7;
}

.article-list-item-info-text{
    display: flex;
    flex-direction: column;

    gap: 15px;
    flex: 1 1 auto;
}

.article-list-item-info-text-readmore a{
    color: #1a73e8;
}

.article-list-item-info-text-readmore a:hover{
    text-decoration: underline;
}

.article-list-item-meta{
    font-size: 14px;
    display: flex;
    color: #979797;

    gap: 10px 15px;
    flex-wrap: wrap;
}

.article-list-item-meta-views{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-list-item-meta-views:before{
    width: 15px;
    height: 12px;
    content: '';
    background: url('/local/templates/custom/i/icons/eye.svg') center top / contain no-repeat;
}

.article-list-item-meta-comments{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-list-item-meta-comments:before{
    width: 14px;
    height: 12px;
    content: '';
    background: url('/local/templates/custom/i/icons/comment.svg') center top / contain no-repeat;
}

.article-list-item-meta-time{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-list-item-meta-time:before{
    width: 13px;
    height: 13px;
    content: '';
    background: url('/local/templates/custom/i/icons/clock.svg') center top / contain no-repeat;
}

.article-list-item-meta-date{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-list-item-meta-date:before{
    width: 16px;
    height: 16px;
    content: '';
    background: url('/local/templates/custom/i/icons/date.svg') center top / contain no-repeat;
}

.article-list-item-meta-section{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-list-item-meta-section a{
    color: #979797;
}

.article-list-item-meta-section a:hover{
    text-decoration: underline;
}

.article-list-item-meta-section.section-bitrix:before{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/bx.svg') center top / contain no-repeat;
}

.article-list-item-meta-section.section-php:before{
    width: 30px;
    height: 17px;
    content: '';
    background: url('/local/templates/custom/i/icons/php.svg') center top / contain no-repeat;
}

.article-list-item-meta-section.section-instrumenty:before{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/wrench.png') center top / contain no-repeat;
}

.article-list-item-meta-section.section-golosom:before{
    width: 17px;
    height: 17px;
    content: '';
    background: url('/local/templates/custom/i/icons/studio-microphone.png') center top / contain no-repeat;
}

/* audio */

.article-list-item-audio audio{
    width: 100%;
}

/* ==========================================================================
SEARCH
========================================================================== */

.article-list-search{
    margin-bottom: 30px;
}

.article-detail-sidebar .search-default{
    padding: 15px;
    border-radius: 12px;
    background-color: #fff;
}

.search-default{
    position: relative;
}

.search-default input[type='text']{
    width: 100%;
    padding: 15px 50px 15px 20px;
    border-radius: 12px;
    background: #f5f5f5;
}

.search-default input[type='submit']{
    font-size: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 18px;
    height: 18px;
    transform: translate(0, -50%);
    background: url('/local/templates/custom/i/icons/loop.svg') center top / contain no-repeat;
}

/* ==========================================================================
PAGINATION
========================================================================== */

.pagination{
    display: flex;
    margin-top: 30px;

    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.pagination span.active{
    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ffd703;

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

.pagination a.paginationPage{
    display: flex;
    width: 40px;
    height: 40px;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 50%;
    background: #fff;

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

.pagination .pagination-prev{
    display: flex;
    width: 40px;
    height: 40px;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 50%;
    background: #fff url('/local/templates/custom/i/icons/arrow-left.svg') center / 8px 12px no-repeat;

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

.pagination .pagination-next{
    display: flex;
    width: 40px;
    height: 40px;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 50%;
    background: #fff url('/local/templates/custom/i/icons/arrow-right.svg') center / 8px 12px no-repeat;

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

.pagination a:hover{
    background-color: #ffd703;
}

/* ==========================================================================
SIDEBAR ARTICLE
========================================================================== */

.sidebar-article-container{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.sidebar-article{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.sidebar-article-title{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}

.sidebar-article-list{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.sidebar-article-list-item-title{
    padding-top: 15px;
    border-top: 1px solid #f5f5f5;
}

.sidebar-article-list-item-title a:hover{
    color: #1a73e8;
}

.sidebar-article-list-item-title{
    margin-bottom: 10px;
}

.sidebar-article-list-item .article-list-item-audio{
    margin: 15px 0;
}

/* ==========================================================================
SECTION NAV
========================================================================== */

.row-section-nav{
    margin: 50px 0;
}

ul.section-nav{
    display: flex;

    gap: 10px;
    flex-wrap: wrap;
}

ul.section-nav li a{
    font-weight: 600;
    display: inline-flex;
    padding: 13px 15px;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 12px;
    background: #fff;

    align-items: center;
    gap: 7px;
}

ul.section-nav li a:hover,
ul.section-nav li a.selected{
    background: #ffd703;
}

ul.section-nav li a.bitrix:after{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/bx.svg') center top / contain no-repeat;
}

ul.section-nav li a.instrumenty:after{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/wrench.png') center top / contain no-repeat;
}

ul.section-nav li a.php:after{
    width: 30px;
    height: 17px;
    content: '';
    background: url('/local/templates/custom/i/icons/php.svg') center top / contain no-repeat;
}

/* ==========================================================================
SIDEBAR DONATE
========================================================================== */

.sidebar-donate{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    border-radius: 12px;
    background: linear-gradient(124.263deg, #381328 52%, #040c28 100%);

    gap: 40px;
    justify-content: center;
}

.sidebar-donate-header{
    display: flex;
    flex-direction: column;
    text-align: center;
    color: #fff;

    gap: 10px;
}

.sidebar-donate-header p:first-child{
    font-size: 18px;
    font-weight: 600;
    display: flex;

    align-items: center;
    justify-content: center;
    gap: 10px;
}

.sidebar-donate-header p:first-child img{
    width: 26px;
}

.sidebar-donate-body{
    display: flex;

    justify-content: center;
    gap: 20px;
}

.sidebar-donate-body img{
    width: 90px;
    height: 90px;
    border-radius: 50%;
}

.sidebar-donate-body span{
    font-size: 78px;
    line-height: 1;
    color: #ffd703;
}

.sidebar-donate-footer a{
    font-weight: bold;
    display: flex;
    width: 100%;
    height: 54px;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 12px;
    background-color: #ffd703;

    align-items: center;
    gap: 20px;
    justify-content: center;
}

.sidebar-donate-footer a:hover{
    background-color: #ffe533;
}

.sidebar-donate-footer span{
    display: inline-flex;

    gap: 5px;
}

.sidebar-donate-footer img{
    width: 24px;
}

.sidebar-donate-frame{
    text-align: center;
}

.sidebar-donate-frame iframe{
    overflow: hidden;
    width: 320px;
    height: 50px;
    border: none;
    background-color: transparent;
}

/* ==========================================================================
SEARCH
========================================================================== */

.search-result{
    margin-bottom: 50px;
}

.search-result-container{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

/* ==========================================================================
DETAIL
========================================================================== */

.article-detail{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.article-detail-inner{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.article-detail-sidebar{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.sidebar-wrp-section-nav{
    padding: 15px;
    border: 1px solid #fff;
    border-radius: 12px;
}

/* ==========================================================================
DETAIL AUTHOR
========================================================================== */

.article-detail-author{
    display: flex;
    flex-direction: column;
    padding: 0;
    border-radius: 12px;
    background: #fff;

    gap: 15px;
}

.article-detail-author.v1{
    padding: 15px;
}

.article-detail-author-header{
    display: flex;
    padding: 15px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 30px;
}

.article-detail-author-header-l{
    display: flex;

    flex: 1 1 auto;
    gap: 15px;
}

.article-detail-author-header-r{
    display: flex;

    flex: 0 0 auto;
}

.article-detail-author-image{
    width: 120px;
    height: 120px;
}

.article-detail-author-text{
    font-size: 14px;
    line-height: 1.4;
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.article-detail-author-text a{
    text-decoration: underline;
    color: #1a73e8;
}

.article-detail-author-text-cta{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.article-detail-author-text-cta .btn{
    text-decoration: none;
    color: #333;
}

/* social */

.article-detail-author-social{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.article-detail-author-social-header{
    font-weight: bold;
    color: #333;
}

.article-detail-author-social-items{
    display: flex;

    gap: 0 15px;
}

.article-detail-author-social-items a{
    width: 40px;
    height: 40px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 50%;

    will-change: transform;
}

.article-detail-author-social-items a:hover{
    transform: scale(1.1);
}

/* meta */

.article-detail-author-meta{
    display: flex;

    justify-content: space-between;
}

.article-detail-author-meta-l{
    font-size: 14px;
    display: flex;
    color: #979797;

    gap: 20px;
}

.article-detail-author-meta-views{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-detail-author-meta-views:before{
    width: 15px;
    height: 12px;
    content: '';
    background: url('/local/templates/custom/i/icons/eye.svg') center top / contain no-repeat;
}

.article-detail-author-meta-comments{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-detail-author-meta-comments:before{
    width: 14px;
    height: 12px;
    content: '';
    background: url('/local/templates/custom/i/icons/comment.svg') center top / contain no-repeat;
}

.article-detail-author-meta-time{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-detail-author-meta-time:before{
    width: 13px;
    height: 13px;
    content: '';
    background: url('/local/templates/custom/i/icons/clock.svg') center top / contain no-repeat;
}

.article-detail-author-meta-section{
    display: flex;

    align-items: center;
    gap: 7px;
}

.article-detail-author-meta-section a{
    color: #979797;
}

.article-detail-author-meta-section a:hover{
    text-decoration: underline;
}

.article-detail-author-meta-section.section-bitrix:before{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/bx.svg') center top / contain no-repeat;
}

.article-detail-author-meta-section.section-instrumenty:before{
    width: 15px;
    height: 15px;
    content: '';
    background: url('/local/templates/custom/i/icons/wrench.png') center top / contain no-repeat;
}

.article-detail-author-meta-section.section-php:before{
    width: 30px;
    height: 17px;
    content: '';
    background: url('/local/templates/custom/i/icons/php.svg') center top / contain no-repeat;
}

.article-detail-author-meta-section.section-golosom:before{
    width: 17px;
    height: 17px;
    content: '';
    background: url('/local/templates/custom/i/icons/studio-microphone.png') center top / contain no-repeat;
}

/* v2 */

.article-detail-author.v2{
    padding: 15px;
}

.article-detail-author.v2 .article-detail-author-social-items .wa{
    display: flex;
    background: #25d366;

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

.article-detail-author.v2 .article-detail-author-social-items .tg{
    display: flex;
    background: #08c;

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

/* text */

.article-detail-text{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.article-detail-back a{
    display: flex;
    height: 54px;
    padding: 15px;
    color: #1a73e8;
    border-radius: 12px;
    background: #fff;

    align-items: center;
    gap: 10px;
}

.article-detail-back a:hover{
    text-decoration: underline;
}

/* share */

.article-detail-share{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.article-detail-share-title{
    font-size: 16px;
    font-weight: bold;
    display: flex;

    gap: 10px;
    align-items: center;
    justify-content: center;
}

.article-detail-share-title img{
    width: 22px;
}


.article-detail-share-container{
    display: flex;

    gap: 0 15px;
    justify-content: center;
}

.article-detail-share-container a{
    display: flex;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f7f7f7;

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

.article-detail-share-container a.wa:hover{
    background: #25d366;
}

.article-detail-share-container a.tg:hover{
    background: #08c;
}

.article-detail-share-container a.yt:hover{
    background: #f00;
}

.article-detail-share-container a.ok:hover{
    background: #f70;
}

.article-detail-share-container a.vk:hover{
    background: #07f;
}

.article-detail-share-container a:hover svg path{
    transition: fill .3s ease;

    fill: #fff;
}

/* cta */

.article-detail-cta{
    display: flex;
    margin: 30px 0;
    padding: 30px;
    border-radius: 12px;
    background: #ddfadc;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%), linear-gradient(#433954, #433954), linear-gradient(#fff, #fff);

    align-items: center;
    gap: 30px;
}

.article-detail-cta.v2{
    box-shadow: 0 0 30px #000;
}

.article-detail-cta-image video{
    display: block;
    width: 130px;
    height: 130px;
    border: 2px solid #fff;
    border-radius: 50%;
}

.article-detail-cta-text{
    display: flex;
    flex-direction: column;
    color: #fff;

    gap: 30px;
}

.article-detail-cta-text p{
    margin: 0;
}

.article-detail-cta-text p a.btn{
    color: #333 !important;
}

/* vote */

.iblock-vote{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
    justify-content: center;
}

.iblock-vote-body{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.iblock-vote-container{
    display: flex;

    justify-content: center;
    gap: 6px;
}

.star-active{
    cursor: pointer;
}

.star-empty{
    width: 23px;
    height: 22px;
    background: url('/local/templates/custom/i/icons/star-default.svg') center top / contain no-repeat;
}

.star-voted{
    width: 23px;
    height: 22px;
    background: url('/local/templates/custom/i/icons/star-voted.svg') center top / contain no-repeat;
}

.star-over{
    width: 23px;
    height: 22px;
    background: url('/local/templates/custom/i/icons/star-over.svg') center top / contain no-repeat;
}

.vote-result{
    font-size: 14px;
    text-align: center;
    color: #666;
}

.iblock-vote-title{
    font-size: 16px;
    font-weight: bold;
    display: flex;

    gap: 10px;
    align-items: center;
    justify-content: center;
}

.iblock-vote-title img{
    width: 23px;
}

/* related */

.article-detail-related{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.article-detail-related-title{
    font-size: 18px;
    font-weight: bold;
}

.article-detail-related-list{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.article-detail-related-list-item{
    padding-top: 15px;
    border-top: 1px solid #f5f5f5;
}

.article-detail-related-list-item a{
    position: relative;
    display: block;
    padding-left: 30px;
    color: #1a73e8;
}

.article-detail-related-list-item a:before{
    position: absolute;
    top: 5px;
    left: 0;
    width: 16px;
    height: 16px;
    content: '';
    background: url('/local/templates/custom/i/icons/star-gr.svg') center / contain no-repeat;
}

.article-detail-related-list-item a:hover{
    text-decoration: underline;
}

/* ==========================================================================
NEXT PREV
========================================================================== */

.article-detail-np{
    display: flex;

    gap: 30px;
}

.article-detail-np-prev,
.article-detail-np-next{
    display: flex;
    padding: 10px;
    border-radius: 100px;
    background: #fff;

    gap: 30px;
    align-items: center;
    flex: 1;
}

.article-detail-np-next{
    justify-content: flex-end;
}

.article-detail-np-prev-ico{
    width: 60px;
    height: 60px;
    transition: transform .3s ease;
    border-radius: 50%;
    background: #f5f5f5 url('/local/templates/custom/i/icons/backhand-index-pointing-left.png') center / 30px no-repeat;

    flex: 0 0 60px;
}

.article-detail-np-next-ico{
    width: 60px;
    height: 60px;
    transition: transform .3s ease;
    border-radius: 50%;
    background: #f5f5f5 url('/local/templates/custom/i/icons/backhand-index-pointing-right.png') center / 30px no-repeat;

    flex: 0 0 60px;
}

/* Двигаем кружок влево при наведении на блок */
.article-detail-np-prev:hover .article-detail-np-prev-ico{
    transform: translateX(-6px);
}

/* Двигаем кружок вправо при наведении на блок */
.article-detail-np-next:hover .article-detail-np-next-ico{
    transform: translateX(6px);
}

.article-detail-np-prev-text,
.article-detail-np-next-text{
    display: flex;
    flex-direction: column;

    gap: 5px;
}

.article-detail-np-prev-text-title{
    font-size: 14px;
    font-style: italic;
    line-height: 1;
    color: #999;
}

.article-detail-np-next-text-title{
    font-size: 14px;
    font-style: italic;
    line-height: 1;
    text-align: right;
    color: #999;
}

.article-detail-np-prev-text-link{
    font-size: 14px;
    line-height: 1.3;
    color: #1a73e8;
}

.article-detail-np-next-text-link{
    font-size: 14px;
    line-height: 1.3;
    text-align: right;
    color: #1a73e8;
}

/* ==========================================================================
VOITING
========================================================================== */

.voting-form-container .voting-form{
    display: block;
}

.voting-form{
    display: none;
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.vote-form{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.vote-form-header{
    font-size: 18px;
    font-weight: bold;
}

ol.vote-items-list{
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style-type: none;

    gap: 10px;
}

ol.vote-items-list li{
    margin: 0;
    padding: 0;
}

.vote-form-footer input{
    font-family: 'ProximaNova-Semibold';
    width: 100%;
    height: 52px;
    cursor: pointer;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border-radius: 12px;
    background: #ffd703 url('/local/templates/custom/i/icons/trophy.png') right 18px center / 22px 22px no-repeat;
}

.vote-form-footer input:hover{
    background-color: #ffe533;
}

/* ==========================================================================
VOTE RESULT
========================================================================== */

.vote-note-box.vote-note-error{
    display: none !important;
}

.vote-answer-table{
    width: 100%;
}

.vote-answer-table td{
    padding: 0 10px 10px 0;
    white-space: nowrap;
}

.vote-answer-table td:first-child{
    width: 1%;
}

.vote-answer-bar{
    float: left;
    height: 16px;
    margin-top: 3px;
}

.vote-answer-counter{
    line-height: 23px;
    display: block;
    float: left;
    width: 19%;
}

/* ==========================================================================
CONTACTS
========================================================================== */

.contacts-page{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

/* author */

.contacts-author{
    display: flex;
    flex-direction: column;
    text-align: center;

    gap: 30px;
}

.contacts-author-image{
    text-align: center;
}

.contacts-author-image img{
    width: 160px;
}

.contacts-author-title{
    font-size: 32px;
    font-weight: 600;
}

.contacts-author-text{
    font-size: 18px;
    font-style: italic;
}

/* list */

.contacts-list{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 40px;
}

.contacts-list-title{
    font-size: 26px;
    font-weight: 600;
    text-align: center;
}

.contacts-list-title img{
    width: 26px;
}

.contacts-list-ul{
    display: flex;
}

.contacts-list-ul ul{
    display: flex;
    flex-direction: column;
    width: 50%;
    padding-right: 14px;

    gap: 15px;
}

.contacts-list-ul ul li{
    position: relative;
    padding-left: 26px;
}

.contacts-list-ul ul li:before{
    position: absolute;
    top: 5px;
    left: 0;
    width: 16px;
    height: 16px;
    content: '';
    background: url('/local/templates/custom/i/icons/star-gr.svg') center / contain no-repeat;
}

/* qua */

.contacts-qua{
    display: flex;
    flex-direction: column;
    border-radius: 6px;

    gap: 50px;
}

.contacts-qua h2{
    margin: 0;
    text-align: center;
}

.contacts-qua blockquote{
    margin: 0;
    text-align: center;
}

.contacts-qua-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-left: 51px;
    transition: transform .3s ease, box-shadow .3s ease;

    gap: 5px;
}

.contacts-qua-item:hover{
    transform: translateY(-3px);
}

.contacts-qua-item:before{
    position: absolute;
    top: 0;
    left: 0;
    width: 33px;
    height: 33px;
    content: '';
    background: url('/local/templates/custom/i/icons/check.svg') center top / contain no-repeat;
}

/* blockquote */

.contacts-blockquote{
    line-height: 1.3;
    padding: 30px;
    border-radius: 12px;
    background: #ddfadc;
}

.contacts-blockquote p{
    font-weight: 600;
}

.contacts-blockquote ul li{
    margin-bottom: 10px;
}

/* info */

.contacts-info-row{
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;
}

.contacts-info{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 40px;
}

.contacts-info-title{
    font-size: 26px;
    text-align: center;
}

.contacts-info-title img{
    width: 16px;
    animation: pulse 1.5s infinite ease-in-out;
}

@keyframes pulse{
    0%,
    100%{
        transform: scale(1);
    }

    50%{
        transform: scale(1.3);
    }
}

.contacts-info-author{
    display: flex;

    gap: 30px;
    justify-content: center;
}

.contacts-info-author span{
    font-size: 100px;
    line-height: 1;
    color: #ffd703;

    justify-content: center;
}

.contacts-info-author img{
    width: 120px;
    height: 120px;
    border-radius: 50%;
}

.contacts-info-desc{
    text-align: center;
}

.contacts-info-desc img{
    width: 24px;
    margin-bottom: 5px;
    margin-left: 3px;
}

.contacts-info-social{
    display: flex;

    justify-content: center;
    gap: 20px;
}

.contacts-info-social a img{
    width: 50px;
    height: 50px;
}

.contacts-info-social a{
    width: 50px;
    height: 50px;
    transition: transform .3s ease, background-color .3s ease;
}

.contacts-info-social a:hover{
    transform: scale(1.1);
}

/* form */

.contacts-form{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.contacts-form-title{
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}

.contacts-form-title img{
    width: 24px;
    margin-bottom: 6px;
    margin-left: 10px;
}

.contacts-form-fields{
    display: flex;
    flex-direction: column;

    gap: 20px;
}

.contacts-form-fields .input-row input{
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.contacts-form-fields .textarea-row textarea{
    font-size: 16px;
    line-height: 1.5;
    width: 100%;
    min-height: 92px;
    padding: 15px;
    resize: none;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

/* ==========================================================================
404
========================================================================== */

.page-404{
    display: flex;
    flex-direction: column;
    text-align: center;

    gap: 50px;
}

.page-404-header{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.page-404-header h1{
    font-size: 80px;
    line-height: 1;
}

.page-404-header h2{
    font-size: 40px;
    line-height: 1.3;
}

.page-404-header img{
    width: 40px;
    margin-left: 10px;
}

.page-404-text{
    display: flex;
    flex-direction: column;

    gap: 20px;
}

.page-404-text img{
    width: 141px;
}

/* ==========================================================================
PORTFOLIO
========================================================================== */

.portfolio-list{
    display: flex;
    flex-direction: column;

    gap: 50px;
}

.g-30{
    gap: 30px 0;
}

.g-50{
    gap: 50px 0;
}

.g-70{
    gap: 70px 0;
}

.portfolio-list-item{
    overflow: hidden;
    height: 100%;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 12px;
    background: #fff;
}

.portfolio-list-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.portfolio-list-item-info{
    display: flex;
    flex-direction: column;
    padding: 30px;

    gap: 20px;
}

.portfolio-list-item-image a img{
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
}

.portfolio-list-item-image a:hover img{
    opacity: .7;
}

.portfolio-list-item-info-title a{
    font-size: 20px;
    font-weight: bold;
}

.portfolio-list-item-info-title a:hover{
    color: #1a73e8;
}

.portfolio-list-item-info-text{
    line-height: 1.2;
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.portfolio-list-item-info-btn .btn{
    height: 40px;
}

/* text */

.portfolio-list-text{
    display: flex;
    flex-direction: column;
    padding: 30px;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 20px;
}

.portfolio-list-text strong{
    font-size: 18px;
}

/* ==========================================================================
HERO FORM
========================================================================== */

.hero-form-container{
    position: relative;
    display: flex;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.hero-form-l{
    flex: 0 0 150px;
}

.hero-form-author{
    position: relative;
    border: 10px solid #f5f5f5;
    border-radius: 50%;
}


.hero-form-author span{
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 28px;
    height: 28px;
    animation: pulse 1.5s infinite ease-out;
    border: 5px solid #f5f5f5;
    border-radius: 50%;
    background: #47cf73;
    box-shadow: 0 0 0 0 rgba(71, 207, 115, .8);
}

.hero-form-header p:first-child{
    font-size: 26px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 8px;
}

.hero-form-header p:first-child img{
    position: relative;
    top: -3px;
    width: 26px;
}

.hero-form-header p:last-child{
    display: inline-flex;

    align-items: center;
    gap: 8px;
}

.hero-form-header p:last-child img{
    width: 16px;
}

.hero-form-body{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.hero-form-r{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

/* form */

.hero-form{
    display: flex;

    gap: 15px;
    flex-wrap: wrap;
}

.hero-form .input-row,
.hero-form .submit-row{
    flex: 1 1 23%;
}

.hero-form .rule-row{
    width: 100%;
}

.hero-form .input-row input{
    width: 100%;
    padding: 13px 15px;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.hero-form .submit-row button{
    width: 100%;
    height: 100%;
}

.hero-form .submit-row button:after{
    width: 20px;
    height: 20px;
    background-size: 20px;
}

.hero-form-footer{
    font-size: 14px;
    color: #999;
}

.hero-form-footer a{
    color: #1a73e8;
}

.hero-form-footer a:hover{
    text-decoration: underline;
}

.form-note{
    font-size: 14px;
    font-style: italic;
    line-height: 1;
    text-align: center;
    color: #666;
}

/* ==========================================================================
DETAIL
========================================================================== */

.portfolio-container{
    display: flex;
    flex-direction: column;

    gap: 50px;
}

.portfolio-detail-info{
    display: flex;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.portfolio-detail-info-l,
.portfolio-detail-info-r{
    flex: 0 0 calc(50% - 15px);
}

.portfolio-detail-info-container{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 30px;
}

.portfolio-detail-info-title{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}

.portfolio-detail-info-info{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.portfolio-detail-info-license img{
    width: 16px;
    margin-left: 3px;
}

.portfolio-detail-info-site a{
    color: #1a73e8;
}

.portfolio-detail-info-site a:hover{
    text-decoration: underline;
}

.portfolio-detail-info-site img{
    width: 12px;
    margin-left: 6px;
}

/* gallery */

.portfolio-detail-gallery{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    gap: 50px;
}

.portfolio-detail-gallery-title{
    font-size: 26px;
    font-weight: bold;
}

/* slick */

.portfolio-detail-gallery-slick-slider{
    visibility: hidden;
    margin-bottom: 50px;
    opacity: 0;
}

.portfolio-detail-gallery-slick-slider.slick-initialized{
    visibility: visible;
    opacity: 1;
}

.portfolio-detail-gallery-slick-slider .slick-list{
    margin: 0 -15px;
}

.portfolio-detail-gallery-slick-slider .slick-slide{
    padding: 0 15px;
}

.portfolio-detail-gallery-slick-slider .slick-slide a{
    display: block;
    overflow: hidden;
    -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
         -o-transition-duration: .2s;
            transition-duration: .2s;
    border: 1px solid #d4d4d4;
    border-radius: 12px;
}

.portfolio-detail-gallery-slick-slider .slick-slide a:hover{
    opacity: .7;
}

/* arrows */

.portfolio-detail-gallery-slick-arrows-container{
    text-align: center;
}

.portfolio-detail-gallery-slick-arrows{
    display: inline-flex;
    padding: 7px 9px;
    border-radius: 100px;
    background: #f5f5f5;

    align-items: center;
    gap: 10px;
}

.portfolio-detail-gallery-slick-arrows button{
    font-size: 0;
    width: 40px;
    height: 40px;
    cursor: pointer;
    transition: background-color .3s, transform .2s ease;
    border: none;
    border-radius: 50%;
    background: #fff;
}

.portfolio-detail-gallery-slick-arrows button:hover,
.portfolio-detail-gallery-slick-arrows button.slick-disabled{
    background-color: #e0e0e0 !important;
}

.portfolio-detail-gallery-slick-arrows button:active{
    transform: scale(.9);
}

.portfolio-detail-gallery-slick-arrows button.slick-prev{
    background: #fff url('/local/templates/custom/i/icons/arrow-left.svg') center / 8px 12px no-repeat;
}

.portfolio-detail-gallery-slick-arrows button.slick-next{
    background: #fff url('/local/templates/custom/i/icons/arrow-right.svg') center / 8px 12px no-repeat;
}

/* info */

.portfolio-detail-text-container{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 30px;
}

.portfolio-detail-text{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.portfolio-detail-features{
    padding: 50px 30px;
    border-radius: 12px;
    background: #fff;
}

.portfolio-detail-text-block-title{
    font-size: 26px;
    font-weight: bold;
    display: inline-flex;
    margin-bottom: 15px;

    align-items: center;
    gap: 6px;
}

.portfolio-detail-text-block-title img{
    width: 26px;
}

.portfolio-detail-text-block-content{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

/* plan */

.portfolio-detail-plan-item{
    position: relative;
    height: 100%;
    padding: 50px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 12px;
    background: #fff;
}

.portfolio-detail-plan-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.portfolio-detail-plan-item-ico{
    position: absolute;
    top: -35px;
    left: 50%;
    display: flex;
    width: 70px;
    height: 70px;
    transform: translate(-50%, 0);
    border: 5px solid #fff;
    border-radius: 50%;
    background: #f5f5f5;

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

.portfolio-detail-plan-item-ico img{
    width: 40px;
}

.portfolio-detail-plan-item-num{
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
    width: 50px;
    margin: 0 auto 10px;
    padding-bottom: 10px;
    text-align: center;
    border-bottom: 2px solid #ffd703;
}

.portfolio-detail-plan-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
}

/* slick */

.portfolio-detail-plan-slider .slick-list{
    padding-top: 45px !important;
}

/* ==========================================================================
CLIENTS
========================================================================== */

.clients{
    display: flex;
    padding: 30px;
    border-radius: 12px;
    background: #fff;

    align-items: center;
    gap: 50px;
}

.page-reviews .clients{
    margin-bottom: 120px;
}

.clients-percent{
    font-size: 140px;
    font-weight: 600;
    line-height: 1;
    color: #ff6202;
}

.clients-text{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.clients-text p:first-child{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}

.clients-text p:first-child{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.3;
}

.clients-avatars{
    display: flex;
    flex-direction: column;
    padding-right: 10px;

    gap: 10px;
}

.clients-avatars-row{
    display: flex;
}

.clients-avatars-item{
    width: 60px;
    height: 60px;
    margin-right: -10px;
    border: 2px solid #fff;
    border-radius: 50%;
}

.clients-avatars-item img{
    border-radius: 50%;
}

/* ==========================================================================
REVIEW
========================================================================== */

.review{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 80px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 15px;
}

.review:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.review-author{
    position: absolute;
    top: -50px;
    left: 50%;
    width: 100px;
    height: 100px;
    transform: translate(-50%, 0);
    border: 5px solid #fff;
    border-radius: 50%;
}

.review-author img{
    border-radius: 50%;
}

.review-rating{
    display: flex;
    margin: 5px 0;

    justify-content: center;
    gap: 8px;
}

.review-name{
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
}


.review-post{
    line-height: 1;
}

.review-post a{
    color: #1a73e8;
}

.review-post a:hover{
    text-decoration: underline;
}

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

.review-text.ta-c{
    text-align: center;
}

/* ==========================================================================
ORDER FORM
========================================================================== */

.order-form-container{
    position: relative;
    max-width: 970px;
    margin: 150px auto 70px;
    padding: 110px 30px 30px 30px;
    border-radius: 12px;
    background: #fff;
}

.order-form-author{
    position: relative;
    position: absolute;
    top: -75px;
    left: 50%;
    width: 150px;
    transform: translate(-50%, 0);
    border: 10px solid #f5f5f5;
    border-radius: 50%;
}

.order-form-author span{
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 28px;
    height: 28px;
    animation: pulse 1.5s infinite ease-out;
    border: 5px solid #f5f5f5;
    border-radius: 50%;
    background: #47cf73;
    box-shadow: 0 0 0 0 rgba(71, 207, 115, .8);
}

.order-form-header{
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
    text-align: center;

    gap: 10px;
}

.order-form-header p:first-child{
    font-size: 40px;
    font-weight: bold;
    line-height: 1.1;
}

.order-form-header p:first-child img{
    position: relative;
    top: -6px;
    width: 40px;
}

.order-form-header p:last-child{
    font-size: 18px;
}

.order-form-fields p{
    font-weight: bold;
}

.order-form-body{
    display: flex;
    flex-direction: column;

    gap: 30px;
}

.order-form-fields{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.order-form-fields-row{
    display: flex;

    gap: 15px;
}

.order-form-fields-row .input-row input{
    width: 100%;
    padding: 15px;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.order-form-fields-row .select-row{
    position: relative;
}

.order-form-fields-row .select-row select{
    width: 100%;
    padding: 15px;
    cursor: pointer;
    color: #999;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;

            appearance: none;
    -webkit-appearance: none;
       -moz-appearance: none;
}

.order-form-fields-row .select-row:after{
    position: absolute;
    top: 50%;
    right: 15px;
    width: 13px;
    height: 8px;
    content: '';
    transform: translateY(-50%);
    pointer-events: none;
    background: url('/local/templates/custom/i/icons/arrow-dn-gr.svg') no-repeat center;
    background-size: contain;
}

.order-form-fields-row .input-row,
.order-form-fields-row .select-row{
    flex: 1;
}

.order-form-fields-row .radio-row{
    flex: 1;
}

.order-form-fields-row .radio-row input{
    display: none;
}

.order-form-fields-row .radio-row label{
    font-weight: bold;
    width: 100%;
    padding: 15px;
    cursor: pointer;
    text-align: center;
    color: #999;
    color: #333;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.order-form-fields-row .radio-row input:checked + label{
    color: #1a73e8;
    border-color: #1a73e8;
}

.order-form-fields-row .textarea-row{
    flex: 1;
}

.order-form-fields-row .textarea-row textarea{
    font-size: 16px;
    line-height: 1.5;
    width: 100%;
    min-height: 120px;
    padding: 15px;
    resize: none;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.order-form-footer{
    flex-direction: column;

    gap: 15px;
}

.order-form-footer .submit-row{
    flex: 0 0 auto;
}

/* ==========================================================================
PRICE LIST
========================================================================== */

.price-list-group h2{
    font-size: 32px;
    margin: 30px 0;
}

.price-list-item{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.price-list-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-list-item-title{
    display: flex;
    flex-direction: column;
    padding-bottom: 20px;
    border-bottom: 1px solid #f5f5f5;

    gap: 10px;
}

.price-list-item-title p:first-child{
    font-size: 26px;
    font-weight: bold;
    line-height: 1.2;
    display: flex;

    gap: 15px;
    align-items: flex-start;
    justify-content: space-between;
}

.price-list-item-title p:first-child span{
    font-size: 12px;
    line-height: 1;
    display: flex;
    padding: 6px;
    color: #fff;
    border-radius: 8px;
    background-color: red;

    align-items: center;
    flex: 0 0 auto;
}

.price-list-item-title p:first-child + p{
    font-size: 14px;
    display: inline-flex;
    color: #999;

    gap: 10px;
    align-items: center;
}

.price-list-item-title p:first-child + p:after{
    width: 16px;
    height: 16px;
    content: '';
    background: url('/local/templates/custom/i/icons/bx.svg') center top / contain no-repeat;
}

.price-list-item-title p:first-child + p.ico-skype:after{
    background: url('/local/templates/custom/i/icons/skype.svg') center top / contain no-repeat;
}

.price-list-item-title p:first-child + p.ico-medal:after{
    background: url('/local/templates/custom/i/icons/1st-place-medal.png') center top / contain no-repeat;
}

.price-list-item-title p:first-child + p.ico-zoom:after{
    background: url('/local/templates/custom/i/icons/magnifying-glass.png') center top / contain no-repeat;
}

.price-list-item-text{
    padding-bottom: 20px;
    border-bottom: 1px solid #f5f5f5;

    flex: 1;
}

.price-list-item-info{
    display: flex;
    flex-direction: column;
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 20px;
}

.price-list-item-info-header{
    display: flex;

    gap: 30px;
}

.price-list-item-info-time{
    line-height: 1;
    display: flex;
    flex-direction: column;
    text-align: center;

    flex: 1;
    gap: 10px;
}

.price-list-item-info-time:before{
    width: 30px;
    height: 30px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/twelve-oclock.png') center top / contain no-repeat;
}

.price-list-item-info-time strong{
    font-size: 20px;
}

.price-list-item-info-service{
    line-height: 1;
    display: flex;
    flex-direction: column;
    text-align: center;

    flex: 1;
    gap: 10px;
}

.price-list-item-info-service:before{
    width: 30px;
    height: 30px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/hammer-and-wrench.png') center top / contain no-repeat;
}

.price-list-item-info-service strong{
    font-size: 20px;
}

.price-list-item-info-body{
    line-height: 1;
    display: flex;
    flex-direction: column;
    padding-top: 20px;
    text-align: center;
    border-top: 1px solid #ffd703;

    gap: 10px;
}

.price-list-item-info-body:before{
    width: 36px;
    height: 36px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/label.png') center top / contain no-repeat;
}


.price-list-item-info-body p:last-child{
    font-size: 26px;
}

.price-list-item-info-body p:last-child strong{
    font-size: 36px;
}

.price-list-item-btns{
    display: flex;

    gap: 30px;
}

.price-list-item-btns a{
    font-weight: 600;
    text-align: center;

    flex: 1;
}

/* filter */

.price-list-filter-nav{
    display: flex;

    gap: 12px;
    flex-wrap: wrap;
}

.price-list-filter-nav button{
    padding: 8px 14px;
    cursor: pointer;
    transition: all .2s ease;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #f3f3f3;
}

.price-list-filter-nav button.active{
    color: #fff;
    border-color: #db1835;
    background: #db1835;
}

.price-list-group{
    transition: all .3s ease;
}

.price-list-group.hidden{
    overflow: hidden;
    height: 0;
    margin: 0;
    padding: 0;
    pointer-events: none;
    opacity: 0;
}

.price-list-group.visible{
    overflow: visible;
    height: auto;
    margin: initial;
    padding: initial;
    opacity: 1;
}


/* ==========================================================================
PRICE
========================================================================== */

.price-option{
    display: flex;
    margin-bottom: 50px;
    padding: 10px 0 50px;

    justify-content: center;
    gap: 30px;
}

.price-option-item{
    font-size: 18px;
    line-height: 1;
    display: flex;
    flex-direction: column;
    text-align: center;

    gap: 15px;
    flex: 0 250px;
}

.price-option-item p:last-child{
    font-size: 24px;
}

.price-option-item p:last-child strong{
    font-size: 36px;
}

.price-option-item.time:before{
    width: 40px;
    height: 40px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/twelve-oclock.png') center top / contain no-repeat;
}

.price-option-item.price:before{
    width: 40px;
    height: 40px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/label.png') center top / contain no-repeat;
}

.price-option-item.service:before{
    width: 40px;
    height: 40px;
    margin: 0 auto;
    content: '';
    background: url('/local/templates/custom/i/icons/hammer-and-wrench.png') center top / contain no-repeat;
}

/* btns */

.price-btns{
    display: flex;

    justify-content: center;
    gap: 50px;
}

.price-btns a{
    height: 70px;
    padding-right: 70px;
}

.price-btns a:after{
    width: 36px;
    height: 36px;
    background-size: 36px;
}

/* ==========================================================================
PRICE DEV
========================================================================== */

.price-dev{
    display: flex;
    flex-direction: column;
    padding: 70px 30px 30px 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 30px;
}

.price-dev-btn{
    text-align: center;
}

.price-dev-btn a{
    height: 70px;
    padding-right: 70px;
    padding-left: 30px;
}

.price-dev-btn .btn-send-dove:after{
    width: 40px;
    height: 40px;
    background-size: 40px;
}

.price-dev-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 70px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 20px;
}

.price-dev-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-dev-item-ico{
    position: absolute;
    top: -35px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border: 5px solid #f5f5f5;
    border-radius: 50%;
    background: #fff;

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

.price-dev-item-ico img{
    width: 40px;
}

.price-dev-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

.price-dev-item-text{
    line-height: 1.7;
}

/* steps */

.price-steps{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 120px 30px 30px 30px;
    border-radius: 12px;
    background: #fff;

    gap: 40px;
}

.price-steps-gerb{
    position: absolute;
    top: -75px;
    left: 50%;
    display: flex;
    width: 150px;
    height: 150px;
    transform: translate(-50%, 0);
    border: 8px solid #f5f5f5;
    border-radius: 50%;
    background: #fff;

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

.price-steps-gerb img{
    width: 94px;
}

.price-steps-header{
    font-size: 18px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
    text-align: center;
    color: #666;

    gap: 15px;
}

.price-steps-header img{
    width: 36px;
}

.price-steps-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 60px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 20px;
}

.price-steps-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-steps-item span{
    font-size: 22px;
    font-weight: bold;
    position: absolute;
    top: -25px;
    left: 50%;
    display: flex;
    width: 60px;
    height: 60px;
    transform: translate(-50%, 0);
    border: 5px solid #fff;
    border-radius: 50%;
    background: #ffd703;

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

.price-steps-item p:first-child{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

.price-steps-btn{
    text-align: center;
}

.price-steps-btn a{
    height: 70px;
    padding-right: 70px;
    padding-left: 30px;
}

.price-steps-btn .btn-send-dove:after{
    width: 40px;
    height: 40px;
    background-size: 40px;
}

/* biz */

.price-biz{
    display: flex;
    flex-direction: column;
    padding: 70px 30px 30px 30px;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 50px;
}

.price-biz-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 70px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 20px;
}

.price-biz-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-biz-item-ico{
    position: absolute;
    top: -35px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border: 5px solid #f5f5f5;
    border-radius: 50%;
    background: #fff;

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

.price-biz-item-ico img{
    width: 40px;
}

.price-biz-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

.price-biz-item-text{
    line-height: 1.7;
}

/* ==========================================================================
PRICE SEO
========================================================================== */

.header-h2-block-ico img{
    width: 60px;
}

.price-seo-item{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.price-seo-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-seo-item-ico{
    text-align: center;
}

.price-seo-item-ico img{
    width: 52px;
}

.price-seo-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

/* ==========================================================================
COST
========================================================================== */

.price-cost{
    padding: 70px 30px 30px 30px;
    border-radius: 12px;
    background: #f5f5f5;
}

.price-cost-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 70px 30px 30px 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 50px;
}

.price-cost-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-cost-item-ico{
    position: absolute;
    top: -45px;
    left: 50%;
    display: flex;
    width: 90px;
    height: 90px;
    transform: translate(-50%, 0);
    border-radius: 50%;
    background: #fff;

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

.price-cost-item-ico img{
    width: 40px;
}

.price-cost-item-info{
    display: flex;
    flex-direction: column;
    height: 100%;

    gap: 20px;
}

.price-cost-item-title{
    font-size: 26px;
    font-weight: bold;
    line-height: 1.3;
}

.price-cost-item-text{
    line-height: 1.7;

    flex: 1 1 auto;
}

.price-cost-item-text img{
    width: 16px;
}

.price-cost-item-from{
    font-size: 24px;
}

.price-cost-item-from strong{
    font-size: 40px;
}

.price-cost-item-btn a{
    /*width: 170px;*/
}

/* ==========================================================================
PRICE FUNC
========================================================================== */

.price-func{
    display: flex;
    flex-direction: column;

    gap: 70px;
}

.price-func-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-left: 51px;
    transition: transform .3s ease, box-shadow .3s ease;

    gap: 5px;
}

.price-func-item:hover{
    transform: translateY(-3px);
}

.price-func-item:before{
    position: absolute;
    top: 0;
    left: 0;
    width: 33px;
    height: 33px;
    content: '';
    background: url('/local/templates/custom/i/icons/check.svg') center top / contain no-repeat;
}

.price-func-btn{
    text-align: center;
}

.price-func-btn a{
    height: 70px;
    padding-right: 70px;
    padding-left: 30px;
}

.price-func-btn .btn-send-dove:after{
    width: 40px;
    height: 40px;
    background-size: 40px;
}

/* ==========================================================================
PRICE TEXT
========================================================================== */

.price-text .article{
    max-width: 970px;
    margin: 0 auto;
}

.article .readmore span{
    cursor: pointer;
    text-decoration: underline;
    color: #1a73e8;
}

.article .readmore span:hover{
    text-decoration: none;
}

.hidden-text{
    display: none;
    margin-bottom: 30px;
}

/* ==========================================================================
INDEX TEXT
========================================================================== */

.index-text{
    max-width: 970px;
    margin: 0 auto;
    padding-bottom: 50px;
}

.index-text h2{
    font-size: 26px;
}

/* ==========================================================================
MODAL
========================================================================== */

.custom-modal .fancybox__content{
    border-radius: 12px;
}

.custom-modal .modal-content{
    text-align: center;
}

.custom-modal .modal-content p:first-child{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}

.custom-modal .carousel__button{
    top: -44px !important;
    border: 1px solid #fff;
}

/* ==========================================================================
CALLBACK FORM
========================================================================== */

.callback-form{
    display: flex;
    flex-direction: column;
    max-width: 360px;

    gap: 20px;
}

.callback-form-author{
    position: relative;
    width: 100px;
    height: 100%;
    margin: 0 auto;
    border-radius: 50%;
}

.callback-form-author span{
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 20px;
    height: 20px;
    animation: pulse 1.5s infinite ease-out;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #47cf73;
    box-shadow: 0 0 0 0 rgba(71, 207, 115, .8);
}

.callback-form-title{
    font-size: 22px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
}

.callback-form-fields{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.callback-form-fields .input-row input{
    width: 100%;
    padding: 10px 15px;
    color: #333;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.callback-form-fields .textarea-row textarea{
    font-size: 16px;
    line-height: 1.5;
    width: 100%;
    min-height: 92px;
    padding: 15px;
    resize: none;
    color: #333;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.callback-form-fields .input-row input::placeholder,
.callback-form-fields .textarea-row textarea::placeholder{
    color: #333;
}

.callback-form .submit-row button{
    width: 100%;
}

/* ==========================================================================
REVIEW SLIDER
========================================================================== */

.review-slider-container{
    position: relative;
    max-width: 800px;
    margin: 0 auto 120px;
}

.review-slider-container h2{
    font-size: 24px;
    margin-bottom: 30px;
    text-align: center;
}

.review-slider{
    border-radius: 12px;
    background-color: #fff;
}

.review-slider .slick-list{
    overflow: hidden;
    border-radius: 12px;
}

.review-slider .slick-slide > div{
    font-size: 17px;
    display: block !important;
    width: 100%;
    padding: 30px;
    text-align: center;
    border-radius: 12px;
    background: #fff;
}

.review-slider .slick-prev{
    font-size: 0;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: -20px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    transition: background-color .3s, transform .2s ease;
    transform: translate(0, -50%);
    border: none;
    border-radius: 50%;
    background: #f5f5f5 url('/local/templates/custom/i/icons/arrow-left.svg') center / 8px 12px no-repeat;
}

.review-slider .slick-next{
    font-size: 0;
    position: absolute;
    z-index: 1;
    top: 50%;
    right: -20px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    transition: background-color .3s, transform .2s ease;
    transform: translate(0, -50%);
    border: none;
    border-radius: 50%;
    background: #f5f5f5 url('/local/templates/custom/i/icons/arrow-right.svg') center / 8px 12px no-repeat;
}

.progress-bar-container{
    position: relative;
    bottom: -15px;
    overflow: hidden;
    width: 200px;
    height: 4px;
    margin: 0 auto;
    border-radius: 4px;
    background: #ccc;
}

.progress-bar{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 100%;
    transition: width .1s linear;
    background: #ffd703;
}

/* ==========================================================================
QUIZ
========================================================================== */

.row-quiz-bx{
    margin: 50px 0;
}

.quiz-bx{
    max-width: 970px;
    margin: 0 auto;
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.quiz-bx-header{
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
    text-align: center;

    gap: 10px;
}

.quiz-bx-header p:first-child{
    font-size: 40px;
    font-weight: bold;
}

.quiz-bx-header p:last-child{
    font-size: 18px;
}

/* step */

.quiz-bx-step-header{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
}

.quiz-bx-step-fields{
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;

    gap: 8px;
}

.quiz-bx-step-fields label{
    cursor: pointer;
}

.quiz-bx-step .btn{
    height: 46px;
}

/* result */

.quiz-bx-result-header{
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
    text-align: center;

    gap: 10px;
    ;
}

.quiz-bx-result-header p:first-child{
    font-size: 40px;
    font-weight: bold;
}

.quiz-bx-result-header p:last-child{
    font-size: 18px;
}

.quiz-bx-result-fields{
    display: flex;
    flex-direction: column;
    max-width: 600px;
    margin: 0 auto;
    margin-bottom: 30px;

    gap: 20px;
}

.quiz-bx-result-fields input[type='text'],
.quiz-bx-result-fields input[type='tel'],
.quiz-bx-result-fields input[type='email']{
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.alt-cta-block{
    display: flex;
    margin-top: 40px;
    padding: 24px;
    border-radius: 12px;
    background: #f8f9fc;
    box-shadow: 0 0 0 1px #eaeaea;

    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.alt-cta-avatar img{
    width: 64px;
    height: 64px;
    border-radius: 50%;

    object-fit: cover;
}

.alt-cta-text{
    min-width: 260px;

    flex: 1;
}

.alt-cta-text p{
    font-size: 16px;
    margin: 0 0 12px;
}

.alt-cta-text .btn-yellow{
    display: inline-block;
}

/* ==========================================================================
ALT CTA
========================================================================== */

.row-alt-cta{
    padding: 50px 0;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%), linear-gradient(#433954, #433954), linear-gradient(#fff, #fff);
}

.alt-cta-author{
    display: flex;
    margin-bottom: 50px;

    align-items: start;
    gap: 30px;
    justify-content: center;
}

.alt-cta-author-frame video{
    display: block;
    width: 150px;
    height: 150px;
    border: 5px solid #fff;
    border-radius: 50%;
}

.alt-cta-author span{
    font-size: 128px;
    line-height: 1;
    color: #ffd703;
}

.alt-cta-text{
    padding: 0 15px;
    text-align: center;
    color: #fff;
}

.alt-cta-text-title{
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 10px;
}

.alt-cta-text-info{
    font-size: 18px;
    margin-bottom: 30px;
}

.alt-cta-text-btn a{
    height: 60px;
}

/* ==========================================================================
PRICE PROJECTS
========================================================================== */

.price-project-items{
    padding: 30px;
    border-radius: 12px;
    background: #f5f5f5;
}

.price-project-item{
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #fff;

    gap: 20px;
}

.price-project-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-project-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

.price-project-item-image img{
    width: 320px;
}

.price-project-item-readmore a{
    color: #1a73e8;
}

.price-project-item-readmore a:hover{
    text-decoration: underline;
}

.price-project-item-readmore img{
    width: 12px;
    margin-left: 6px;
}

/* retention */

.price-retention-item{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    transition: transform .3s ease, box-shadow .3s ease;
    text-align: center;
    border-radius: 12px;
    background: #f5f5f5;

    gap: 30px;
}

.price-retention-item:hover{
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
}

.price-retention-item-ico{
    text-align: center;
}

.price-retention-item-ico img{
    width: 52px;
}

.price-retention-item-title{
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

/* ==========================================================================
FX BTN
========================================================================== */

.shine-button{
    position: relative;
    overflow: hidden;
}

.shine-button .shine-glow{
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    transform: skewX(-25deg);
    pointer-events: none;
    background: linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.5) 50%, rgba(255,255,255,0) 100%);
}

/* ==========================================================================
SUBSCRIBE
========================================================================== */

.sidebar-subscribe{
    padding: 30px;
    border-radius: 12px;
    background: #fff;
}

.sidebar-subscribe-title{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
    padding-bottom: 15px;
    border-bottom: 1px solid #f5f5f5;
}

.sidebar-subscribe-subtitle{
    font-size: 14px;
    margin-bottom: 15px;
}

.subscribe-form{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.subscribe-form input[type='email']{
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #999;
    border-radius: 12px;
    background: none;
}

.subscribe-form .submit-row button{
    width: 100%;
    height: 60px;
}

.subscribe-form .submit-row button:after{
    width: 30px;
    height: 30px;
    background-size: 30px;
}

/* ==========================================================================
COOKIE WIDGET
========================================================================== */

.cookie-widget{
    font-size: 12px;
    position: fixed;
    z-index: 1000;
    bottom: 20px;
    left: 50%;
    display: flex;
    width: 90%;
    max-width: 430px;
    padding: 15px;
    transform: translateX(-50%);
    color: #fff;
    border-radius: 12px;
    background: #1c1c1e;

    gap: 15px;
    justify-content: space-between;
    align-items: center;
}

.cookie-widget a{
    text-decoration: underline;
    color: #fff;
}

.cookie-widget a:hover{
    text-decoration: none;
}

.btn-cookie-ok{
    padding: 10px 20px;
    cursor: pointer;
    transition: background .2s ease;
    color: #fff;
    border: none;
    border-radius: 12px;
    background: #3a3a3c;
}

.btn-cookie-ok:hover{
    background: #525255;
}

/* ==========================================================================
PROGRESS BAR
========================================================================== */

#article-progress-bar{
    position: fixed;
    z-index: 9999;
    bottom: 0;
    left: 0;
    width: 0;
    height: 4px;
    transition: width .2s ease-out, opacity .5s ease;
    opacity: 0;
    background-color: #ff5317;
}

/* ==========================================================================
TOK
========================================================================== */

.toc-float-group{
    position: fixed;
    z-index: 1000;
    top: 50%;
    left: 20px;
    display: flex;
    flex-direction: column;
    transform: translateY(-50%);

    align-items: flex-start;
}

.toc-float-lines{
    z-index: 2;
    display: flex;
    flex-direction: column;
    cursor: pointer;

    align-items: end;
    gap: 6px;
}

.toc-line{
    width: 16px;
    height: 2px;
    transition: background-color .2s ease;
    background-color: #ccc;
}

.toc-line.h3{
    width: 10px;
}

.toc-line.active{
    background-color: #000;
}

.toc-popup{
    font-size: 14px;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 30px;
    overflow-y: auto;
    width: 280px;
    max-height: 400px;
    padding: 12px 16px;
    transition: opacity .3s ease, transform .3s ease;
    transform: translateX(0);
    pointer-events: none;
    opacity: 0;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
}

.toc-popup ul{
    line-height: 1.3;
    margin: 0;
    padding: 0 15px;
    list-style: decimal;
}

.toc-popup li{
    margin-bottom: 6px;
}

.toc-popup li > ul{
    padding: 10px 0;
    list-style-type: none;
}

.toc-popup li > ul > li{
    position: relative;
    padding-left: 15px;
}

.toc-popup li > ul > li:before{
    position: absolute;
    top: 10px;
    left: 0;
    width: 3px;
    height: 3px;
    content: '';
    border-radius: 50%;
    background-color: #000;
}

.toc-popup li a:hover,
.toc-popup li.active > a{
    color: #1a73e8;
}

/* Появление поверх при наведении */
.toc-float-group:hover .toc-popup{
    transform: translateX(-35px);
    pointer-events: auto;
    opacity: 1;
}

/* ==========================================================================
TOK
========================================================================== */

.article-toc-expandable{
    font-size: 14px;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ddd;
}

.article-toc-expandable .toc-title{
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

.article-toc-expandable ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.article-toc-expandable li{
    margin-bottom: 6px;
}

.article-toc-expandable li a{
    color: #1a73e8;
}

.article-toc-expandable li.h3{
    margin-left: 20px;
}

.article-toc-expandable li a:hover{
    text-decoration: underline;
}

.toc-show-more,
.toc-show-less{
    font-weight: bold;
    margin-top: 10px;
    cursor: pointer;
    color: #666;
}

.toc-show-more:hover{
    color: #333;
}

.toc-show-more.hidden{
    display: none;
}

.toc-show-less.hidden{
    display: none;
}

.article-toc-expandable .toc-list-container.collapsed li:nth-child(n+4){
    display: none;
}

/* ==========================================================================
PLAYER
========================================================================== */

.article-podcast-player{
    display: flex;
    flex-direction: column;
    padding: 15px;
    border-radius: 12px;
    background: #fff;

    gap: 30px;
}

.article-podcast-player audio{
    display: block;
    width: 100%;
}

/* ==========================================================================
SELFCHECK
========================================================================== */

.selfcheck{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #2aa745;
    border-radius: 12px;
    background: #e6f5ea;
}

.selfcheck .article-detail-cta{
    margin-bottom: 0;
}

.selfcheck-form-list{
    display: flex;
    flex-direction: column;
    margin-bottom: 15px;

    gap: 5px;
}

/* ==========================================================================
INFECTION BLOCK
========================================================================== */

.infection-block{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #ffc107;
    border-radius: 12px;
    background: #fff8e1;
}

.infection-timer-filds{
    display: flex;
    flex-direction: column;

    gap: 15px;
}

.infection-timer .input-row label{
    margin-bottom: 5px;
}

.infection-timer .input-row{
    position: relative;
}

.infection-timer .input-row input{
    font-size: 16px;
    width: 200px;
    height: 46px;
    padding: 10px 15px;
    text-align: left;
    color: #333;
    border: 1px solid #999;
    border-radius: 12px;
    outline: none;
    background-color: #fff;
}

.infect-result{
    margin-top: 30px;
    padding: 15px;
    border: 1px solid #dc3545;
    border-radius: 12px;
    background-color: #fbeaea;
}

/* ==========================================================================
CHECKLIST
========================================================================== */

.checklist-block{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #ffc107;
    border-radius: 12px;
    background: #fff8e1;
}

.checklist-block .checklist{
    display: flex;
    flex-direction: column;

    gap: 10px;
}

.checklist-block .checklist label:hover{
    cursor: pointer;
    color: #1a73e8;
}

.checklist-block progress{
    background: #28a745;
}

.checklist-block progress{
    overflow: hidden;
    width: 100%;
    height: 8px;
    margin: 20px 0;
    border: none;
    border-radius: 5px;
    background-color: #e9ecef;
}

.checklist-block .check-status{
    margin: 0;
}

/* WebKit (Chrome, Safari, Edge) */
.checklist-block progress::-webkit-progress-bar{
    border-radius: 5px;
    background-color: #e9ecef;
}

.checklist-block progress::-webkit-progress-value{
    transition: width .6s ease; /* плавное заполнение */
    border-radius: 5px;
    background-color: #28a745;
}

/* Firefox */
.checklist-block progress::-moz-progress-bar{
    transition: width .6s ease;
    border-radius: 5px;
    background-color: #28a745;
}

/* ==========================================================================
FANCYBOX ARTICLE IMG
========================================================================== */

.article a[data-fancybox]{
    position: relative;
    display: block;
    overflow: hidden;
}

.article a[data-fancybox] img{
    height: auto;
    transition: transform .3s ease, filter .3s ease, opacity .3s ease;
}

/* Эффект затемнения и масштабирования */
.article a[data-fancybox]:hover img{
    transform: scale(1.03);
    opacity: .75;
}

/* Лупа при наведении */
.article a[data-fancybox]::after{
    font-size: 32px;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    content: '';
    transition: opacity .3s ease;
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0;
    background: url('/local/templates/custom/i/icons/magnifying-glass-tilted-left.png') center top / contain no-repeat;
}

.article a[data-fancybox]:hover::after{
    opacity: 1;
}

.floating-widget{
    position: fixed;
    z-index: 999;
    right: 26px;
    bottom: 75px;
}

.floating-btn{
    position: relative;
    width: 50px;
    height: 50px;
    cursor: pointer;
    transition: transform .3s ease, box-shadow .3s ease;
    border: none;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 10px rgba(0,0,0,.15);

    will-change: transform;
}

.floating-btn:hover{
    transform: scale(1.1);
}

.floating-btn.tg{
    background: #08c url('/local/templates/custom/i/icons/tg.svg') center / 26px 26px no-repeat;
}

.floating-btn.wa{
    background: #25d366 url('/local/templates/custom/i/icons/wa.svg') center / 26px 26px no-repeat;
}

.floating-sub{
    position: absolute;
    right: 0;
    bottom: 56px;
    display: flex;
    flex-direction: column;
    transition: all .3s ease;
    pointer-events: none;
    opacity: 0;

    align-items: flex-end;
    gap: 10px;
}

.floating-widget.active .floating-sub{
    transform: translateY(-10px);
    pointer-events: all;
    opacity: 1;
}

.floating-widget.active .floating-btn.main{
    transform: rotate(45deg);
    animation: none;
    background: #ffd703 url('/local/templates/custom/i/icons/close.svg') center / 20px 20px no-repeat;
}

.floating-btn.main{
    animation: pulse-ring 2.5s infinite ease-in-out,
    wiggle 2s ease-in-out infinite;
    background: #ee1d24 url('/local/templates/custom/i/icons/comment-wt.svg') center / 26px 26px no-repeat;
}

@keyframes pulse-ring{
    0%{
        box-shadow: 0 0 0 0 rgba(238, 29, 36, .6); /* #EE1D24 с прозрачностью */
    }
    70%{
        box-shadow: 0 0 0 15px rgba(238, 29, 36, 0); /* Расширение кольца */
    }
    100%{
        box-shadow: 0 0 0 0 rgba(238, 29, 36, 0);
    }
}

@keyframes wiggle{
    0%,
    100%{
        transform: translateY(0) rotate(0deg);
    }
    10%{
        transform: translateY(-1px) rotate(-5deg);
    }
    20%{
        transform: translateY(1px) rotate(5deg);
    }
    30%{
        transform: translateY(-1px) rotate(-3deg);
    }
    40%{
        transform: translateY(1px) rotate(3deg);
    }
    50%{
        transform: translateY(0) rotate(0deg);
    }
}

/* mail test block */

.mail-test-block{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #ffc107;
    border-radius: 12px;
    background: #fff8e1;
}

.mail-test-form{
    display: flex;
    margin-bottom: 10px;

    gap: 15px;
    align-items: center;
    flex-wrap: wrap;
}

.mail-test-form input{
    font-size: 16px;
    width: 200px;
    height: 46px;
    padding: 10px 15px;
    text-align: left;
    color: #333;
    border: 1px solid #999;
    border-radius: 12px;
    outline: none;
    background-color: #fff;
}

/* ==========================================================================
COMPARE TABS
========================================================================== */

.compare-tabs{
    overflow: hidden;
    color: #fff;
    border-radius: 12px;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%);
    box-shadow: 0 10px 25px rgba(0,0,0,.2);
}

.compare-tabs__buttons{
    display: flex;
    background: rgba(255,255,255,.05);

    justify-content: space-between;
}

.compare-btn{
    font-weight: 600;
    line-height: 1;
    padding: 15px;
    cursor: pointer;
    text-align: center;
    color: #ddd;
    border: none;
    background: none;

    flex: 1;
}

.compare-btn:hover{
    color: #ffd703;
}

.compare-btn.active{
    color: #333;
    background: linear-gradient(124.263deg, #ffd703 0%, #ffb703 100%);
}

.compare-tabs__content{
    display: none;
    padding: 30px;
    animation: fadeIn .4s ease;
}

.compare-tabs__content.active{
    display: block;
}

.compare-tabs__content ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.compare-tabs__content li{
    line-height: 1.5;
    position: relative;
    margin: 10px 0;
    padding-left: 30px;
}

.article .compare-tabs__content ul li:before{
    background: #fff;
}

/* ==========================================================================
SPEED SALES
========================================================================== */

.speed-sales-calc{
    margin: 30px 0;
    padding: 15px;
    color: #fff;
    border-radius: 12px;
    background: linear-gradient(124.263deg, #040c28 0%, #381328 48%);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .35);
}

.speed-sales-calc__grid{
    display: grid;
    margin: 15px 0;

    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.speed-sales-calc label span{
    font-size: 13px;
    display: block;
    margin-bottom: 4px;
}

.speed-sales-calc input{
    width: 100%;
    padding: 8px 10px;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 8px;
    background: rgba(0, 0, 0, .2);
}

.speed-sales-calc input:focus{
    border-color: #ffd703;
    outline: none;
    box-shadow: 0 0 0 1px rgba(255, 215, 3, .6);
}

.speed-sales-calc__btn{
    font-size: 14px;
    font-weight: 600;
    display: inline-flex;
    margin-top: 4px;
    padding: 10px 18px;
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
    border: none;
    border-radius: 8px;
    background: #ffd703;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .4);

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

.speed-sales-calc__btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .5);

    filter: brightness(1.03);
}

.speed-sales-calc__btn:active{
    transform: translateY(0);
    box-shadow: 0 5px 12px rgba(0, 0, 0, .4);
}

.speed-sales-calc__results{
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .15);
}

.speed-sales-calc__row{
    display: flex;

    gap: 15px;
    flex-wrap: wrap;
}

.speed-sales-calc__col{
    padding: 10px 15px;
    border-radius: 12px;
    background: rgba(0, 0, 0, .18);

    flex: 1 1 200px;
}

.speed-sales-calc__col h4{
    font-size: 14px;
    margin: 0 0 6px;
    letter-spacing: .4px;
    text-transform: uppercase;
    opacity: .9;
}

.speed-sales-calc__col p{
    font-size: 14px;
    margin: 4px 0;
}

.speed-sales-calc__col span{
    font-weight: 600;
    color: #ffd703;
}

.speed-sales-calc__summary{
    font-size: 14px;
    margin-top: 14px;
}

.speed-sales-calc__summary strong{
    color: #ffd703;
}

.speed-sales-calc__hint{
    font-size: 12px;
    margin-top: 6px;
    opacity: .8;
}

@media (max-width: 640px){
    .speed-sales-calc__grid{
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
BITRIX CHECKLIST
========================================================================== */

.bitrix-checklist{
    margin-bottom: 30px;
}

.bitrix-checklist table{
    margin: 20px 0;
}

.bitrix-checklist input[type='checkbox']{
    width: 20px;
    height: 20px;
    cursor: pointer;
    transform: scale(1.1);

    accent-color: #ffd703;
}

.checklist-bar{
    overflow: hidden;
    width: 100%;
    height: 14px;
    margin-top: 4px;
    border-radius: 6px;
    background: #f5f5f5;
}

.checklist-bar-fill{
    width: 0;
    height: 14px;
    transition: width .3s ease;
    border-radius: 6px;
    background: linear-gradient(90deg, #ffd703 0%, #ffb703 100%);
}

/* ==========================================================================
SERVER UPGRADE
========================================================================== */

.server-upgrade-table{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #ffc107;
    border-radius: 12px;
    background: #fff8e1;
}

.server-upgrade-table input{
    width: 80px;
    margin-right: 3px;
    padding: 4px 6px;
    text-align: right;
    border: 1px solid #ddd;
    border-radius: 6px;
}

.server-upgrade-result p{
    margin: 0 !important;
}

.server-upgrade-progress-bar{
    height: 10px;
    margin-top: 15px;
    border-radius: 6px;
}

.server-upgrade-progress-bar-fill{
    width: 0;
    height: 10px;
    transition: width .3s ease;
    border-radius: 6px;
    background: linear-gradient(90deg, #ffd703, #ff9303);
}

/* ==========================================================================
DIAGNOSTIC
========================================================================== */

.diagnostic{
    margin-bottom: 30px;
    padding: 15px;
    border: 1px solid #ffc107;
    border-radius: 12px;
    background: #fff8e1;
}

.diagnostic p{
    margin-bottom: 15px;
}

.diagnostic-step{
    margin-bottom: 25px;
}

.diagnostic-step p strong{
    color: #1a73e8;
}

.diagnostic label{
    display: block;
    margin: 5px 0;
    cursor: pointer;
}

.diagnostic input[type='radio']{
    margin-right: 8px;
}

.diagnostic-result{
    margin-top: 25px;
    padding: 25px;
    transition: opacity .5s ease;
    opacity: 1;
    border-radius: 12px;
    background: #ddfadc;
}

.diagnostic-result.hidden{
    display: none;
    opacity: 0;
}

.diagnostic-result.fade-in{
    animation: fadeIn .6s ease forwards;
}
@keyframes fadeIn{
    from{
        transform: translateY(10px);
        opacity: 0;
    }
    to{
        transform: translateY(0);
        opacity: 1;
    }
}

.diagnostic-progress{
    margin-top: 20px;
    padding: 25px;
    text-align: center;
    border-radius: 12px;
    background: #f2f6ff;
}

.diagnostic-progress p{
    margin-top: 10px;
    color: #444;
}

.diagnostic-progress-bar{
    width: 0;
    height: 6px;
    transition: width 1s ease-in-out;
    border-radius: 4px;
    background: linear-gradient(90deg, #1a73e8 0%, #63b3ed 100%);
}

.diagnostic-progress.hidden{
    display: none;
}

/* Обёртка */
.lnf-quiz{
    margin-bottom: 32px;
    padding: 24px;
    border: 1px solid #e1e6ec;
    border-radius: 12px;
    background: #f7f9fc;
}

/* Вопросы */
.lnf-quiz__step{
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e3e8ee;
}

.lnf-quiz__step:last-child{
    padding-bottom: 0;
    border-bottom: none;
}

/* Текст вопроса */
.lnf-quiz__step p{
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
}

/* Радиокнопки */
.lnf-quiz__step label{
    font-size: 15px;
    line-height: 1.4;
    display: block;
    margin-bottom: 8px;
    cursor: pointer;
}

.lnf-quiz__step input[type='radio']{
    margin-right: 8px;
}

/* Кнопка запуска */
.lnf-quiz__button{
    font-size: 15px;
    margin-top: 8px;
    padding: 12px 22px;
    cursor: pointer;
    transition: background .25s;
    color: #fff;
    border: none;
    border-radius: 10px;
    background: #2d75ff;
}

.lnf-quiz__button:hover{
    background: #1c5dea;
}

/* Результат */

.lnf-quiz__result{
    margin-top: 28px;
    padding: 20px;
    animation: fadeIn .35s ease;
    border: 1px solid #d8dfe9;
    border-radius: 10px;
    background: #eef3fa;
}

/* Заголовок результата */

.lnf-quiz__result h3{
    font-size: 18px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 12px;
}

/* Анимация появления */

@keyframes fadeIn{
    from{
        transform: translateY(6px);
        opacity: 0;
    }
    to{
        transform: translateY(0);
        opacity: 1;
    }
}

/* ==========================================================================
VIDEO WIDGET
========================================================================== */

.video-widget {
    position: fixed;
    z-index: 999;
    bottom: 20px;
    left: 20px;
    opacity: 0;
    transform: translateY(20px) scale(.95);
    transform-origin: left bottom;
    pointer-events: none;
    transition: opacity .35s ease, transform .35s cubic-bezier(.2, .8, .2, 1);
    will-change: opacity, transform;
    backface-visibility: hidden;
}

.video-widget,
.video-widget * {
    box-sizing: border-box;
}

.video-widget.is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.video-widget.is-hidden {
    opacity: 0;
    transform: translateY(20px) scale(.95);
    pointer-events: none;
}

.video-widget__preview-box {
    position: relative;
    overflow: hidden;
    width: 120px;
    transition: opacity .25s ease, transform .25s ease;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .28);

    aspect-ratio: 9 / 16;
}

.video-widget.is-open .video-widget__preview-box {
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
}

.video-widget__preview-video {
    display: block;
    width: 100%;
    height: 100%;
    background: #000;

    object-fit: cover;
}

.video-widget__preview-open {
    position: absolute;
    z-index: 1;
    cursor: pointer;
    border: 0;
    background: transparent;

    inset: 0;
}

.video-widget__preview-hide {
    font-size: 20px;
    line-height: 1;
    position: absolute;
    z-index: 3;
    top: 8px;
    right: 8px;
    display: flex;
    width: 28px;
    height: 28px;
    cursor: pointer;
    color: #fff;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .55);

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

.video-widget__modal {
    position: absolute;
    bottom: 0;
    left: 0;
    visibility: hidden;
    width: 380px;
    max-width: calc(100vw - 20px);
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
    transform: translateY(14px) scale(.96);
    opacity: 0;
    will-change: opacity, transform;
    backface-visibility: hidden;
}

.video-widget.is-open .video-widget__modal {
    visibility: visible;
    transform: translateY(0) scale(1);
    opacity: 1;
}

.video-widget__modal-inner {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    background: #111;
    box-shadow: 0 18px 50px rgba(0, 0, 0, .35);
}

.video-widget__modal-close {
    font-size: 24px;
    line-height: 1;
    position: absolute;
    z-index: 10;
    top: 10px;
    right: 10px;
    display: flex;
    width: 36px;
    height: 36px;
    cursor: pointer;
    color: #fff;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .55);

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

.video-widget__player-box {
    position: relative;
    width: 100%;
    background: #000;

    aspect-ratio: 9 / 16;
}

.video-widget__player-video {
    display: block;
    width: 100%;
    height: 100%;
    background: #000;

    object-fit: cover;
}

.video-widget__timeline {
    position: absolute;
    z-index: 7;
    top: 0;
    right: 0;
    left: 0;
    overflow: hidden;
    height: 10px;
    cursor: pointer;
    background: rgba(255, 255, 255, .22);
}

.video-widget__timeline-value {
    display: block;
    width: 0;
    height: 100%;
    background: #fff;
}

.video-widget__play-toggle {
    position: absolute;
    z-index: 4;
    width: 72px;
    height: 72px;
    margin: auto;
    cursor: pointer;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .45);

    inset: 0;
}

.video-widget__play-toggle::before {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -12px;
    margin-left: -6px;
    content: '';
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 18px solid #fff;
}

.video-widget__play-toggle.is-hidden {
    display: none;
}

.video-widget__telegram {
    font-weight: 700;
    position: absolute;
    z-index: 5;
    right: 12px;
    bottom: 12px;
    left: 12px;
    display: flex;
    min-height: 48px;
    padding: 12px 16px;
    transition: all .2s ease;
    text-decoration: none;
    color: #fff;
    border-radius: 12px;
    background: linear-gradient(135deg, #2aabee, #229ed9);

    align-items: center;
    justify-content: center;
    gap: 15px;
}

.video-widget__telegram:hover {
    transform: translateY(-3px);
    text-decoration: none;
    color: #fff;
    box-shadow: 0 12px 28px rgba(34, 158, 217, .5);
}

.video-widget__telegram:active {
    transform: scale(.98);
}

.video-widget__telegram-icon {
    display: flex;

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

.video-widget__telegram-text {
    line-height: 1;
}

.video-widget-show {
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    position: fixed;
    z-index: 99998;
    bottom: 20px;
    left: 20px;
    display: none;
    min-height: 44px;
    padding: 12px 16px;
    cursor: pointer;
    transition: all .2s ease;
    color: #fff;
    border: 0;
    border-radius: 14px;
    background: #111;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .25);

    align-items: center;
    justify-content: center;
    gap: 8px;
}

.video-widget-show.is-visible {
    display: inline-flex;
}

.video-widget-show:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(0, 0, 0, .35);
}

.video-widget-show:active {
    transform: scale(.97);
}

.video-widget-show__icon {
    display: flex;
    opacity: .9;

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

.video-widget-show__text {
    white-space: nowrap;
}

@media (max-width: 767px) {
    .video-widget {
        bottom: 12px;
        left: 12px;
    }

    .video-widget__preview-box {
        width: 96px;
    }

    .video-widget__modal {
        width: min(240px, calc(100vw - 24px));
        max-width: calc(100vw - 24px);
    }

    .video-widget-show {
        bottom: 12px;
        left: 12px;
    }

    .video-widget__telegram {
        font-size: 14px;
        padding: 12px;

        gap: 10px;
    }
}


/* ==========================================================================
DETAIL TELEGRAM
========================================================================== */

.article-detail-telegram {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 30px;
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(124.263deg, #381328 0%, #24152e 52%, #040c28 100%);
}

.article-detail-telegram-header {
    display: flex;
    align-items: center;
    gap: 14px;
}

.article-detail-telegram-icon {
    display: flex;
    flex: 0 0 48px;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 215, 3, .28);
    border-radius: 12px;
    background: rgba(255, 215, 3, .08);
    color: #ffd703;
}

.article-detail-telegram-name {
    margin-bottom: 3px;
    font-size: 15px;
    font-weight: 600;
}

.article-detail-telegram-label {
    color: #c9becb;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.article-detail-telegram-content h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 28px;
    line-height: 1.3;
}

.article-detail-telegram-content p {
    max-width: 620px;
    margin: 0;
    color: #e5dfe7;
    font-size: 16px;
    line-height: 1.65;
}

.article-detail-telegram-footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px 20px;
}

.article-detail-telegram-footer span {
    color: #c9becb;
    font-size: 13px;
}

.article-detail-telegram-footer .btn {
    gap: 10px;
    background-color: #0088cc;
    color: #fff;
}

.article-detail-telegram-footer .btn:hover {
    background-color: #0077b5;
    color: #fff;
}

.article-detail-telegram-footer .btn svg {
    flex-shrink: 0;
}

.article-detail-telegram-footer .btn:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 4px;
}

@media (max-width: 575px) {
    .article-detail-telegram {
        gap: 20px;
        padding: 20px;
    }

    .article-detail-telegram-content h2 {
        font-size: 24px;
    }

    .article-detail-telegram-footer {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        text-align: center;
    }
}
/* End */


/* Start:/local/templates/custom/css/media.css?177289914024836*/
/* ==========================================================================
1199
========================================================================== */
@media (max-width: 1199px){
    .container{
        max-width: none;
    }
    /* donate */
    .sidebar-donate{
        padding: 15px;
    }
    .sidebar-donate-footer a{
        gap: 10px;
    }
    .sidebar-donate-footer img{
        width: 18px;
    }
    .sidebar-donate-header p:first-child{
        font-size: 16px;
    }
    .sidebar-donate-header p:last-child{
        font-size: 14px;
    }
    /* voting form */
    .vote-form-footer input{
        background-image: none;
    }
    .clients{
        flex-direction: column;
    }
    .clients-text{
        text-align: center;
    }
}
/* ==========================================================================
991
========================================================================== */
@media (max-width: 991px){
    body{
        padding-top: 5px;
    }
    .row-header-title{
        margin-bottom: 20px;
    }
    .row-header-title h1{
        font-size: 24px;
        line-height: 1.3;
    }
    .header-h2-block{
        font-size: 16px;
        padding-right: 0;
        padding-left: 0;
    }
    .header-h2-block h2{
        font-size: 24px;
        margin-bottom: 5px;
    }
    /* header */
    .row-header .container{
        padding-right: 20px;
        padding-left: 20px;
    }
    .header-inner{
        padding: 5px 15px;
    }
    /* footer */
    .row-footer{
        padding: 15px 0;
    }
    .footer-nav{
        margin-top: 30px;
    }
    .footer-nav ul{
        justify-content: space-between;
    }
    .footer-copy{
        margin-top: 30px;

        justify-content: start;
    }
    .footer-info{
        flex-direction: column;
        text-align: center;
    }
    .footer-copy{
        justify-content: center;
    }
    .footer-policy{
        font-size: 14px;
        text-align: center;
    }
    /* hero */
    .hero-header-tab{
        font-size: 16px;
    }
    .hero-footer{
        margin: 0 15px;
    }
    .hero-body-title img{
        display: none;
        width: 20px;
        height: 20px;
        margin: 0 5px;
    }
    .hero-body-image{
        max-width: 160px;
        margin-bottom: 30px;
    }
    .hero-body-title{
        font-size: 24px;
    }
    .hero-body-subtitle{
        font-size: 16px;
    }
    .hero-body-list{
        margin-top: 12px;
    }
    .hero-body-list ul li{
        width: 100%;
    }
    .hero-body-btn{
        flex-direction: column;

        gap: 15px;
    }
    .hero-footer-info{
        padding: 30px 15px 0 15px;
    }
    .hero-footer-info-item{
        padding-left: 40px;
    }
    .hero-footer-info-item-title{
        font-size: 20px;
    }
    .hero-footer-info-item:before{
        width: 30px;
        height: 30px;
    }
    .hero-footer-info-item:after{
        left: 14px;
    }
    /* map */
    .row-map{
        margin: 50px 0;
        padding: 0;
    }
    .map-title{
        font-size: 30px;
        line-height: 1.2;
    }
    .map-title span{
        font-size: 24px;
    }
    .map-text{
        font-size: 13px;
    }
    .map-gerb{
        margin-top: 30px;
    }
    .map-gerb img{
        width: 150px;
    }
    /* final */
    .row-final{
        height: 700px;
    }
    .final-animate-first img{
        max-width: 600px;
    }
    .final-animate-second img{
        max-width: 700px;
    }
    .final-content{
        gap: 30px;
    }
    .final-content-numb{
        font-size: 50px;
    }
    .final-content-title{
        font-size: 30px;
    }
    .final-content-text{
        font-size: 22px;
    }
    /* slogan */
    .slogan-text h2{
        font-size: 24px;
    }
    .slogan-text p{
        font-size: 14px;
    }
    .slogan-progressline{
        font-size: 16px;
    }
    .slogan-author-frame video{
        width: 120px;
        height: 120px;
    }
    .slogan-author span{
        font-size: 100px;
    }
    /* projects */
    .row-projects{
        padding: 50px 0;
    }
    .row-projects .row > div{
        margin-bottom: 0;
    }
    .row-projects .row .col-md-6{
        padding: 0 7.5px;
    }
    .projects-item{
        width: 310px;
    }
    .projects-item-content{
        gap: 5px;
    }
    .projects-item-title{
        font-size: 20px;
    }
    .projects-item-desc table tr{
        display: flex;
        flex-direction: column;
    }
    .projects-item-desc table tr td:first-child{
        border-bottom: none;
    }

    .projects-btn{
        margin-top: 30px;
    }
    /* trust */
    .row-trust{
        padding: 50px 0 30px;
    }
    .row-trust .row .col-lg-4{
        padding: 0 7.5px;
    }
    .header-h2-block .ico{
        width: 50px;
    }
    .header-h2-block-trust{
        margin-bottom: 30px;
        padding-right: 0;
        padding-left: 0;
    }
    .trust-item{
        width: 290px;
    }
    /* advantages */
    .row-advantages{
        padding: 50px 0;
    }
    .row-advantages .header-h2-block{
        margin-bottom: 40px;
    }
    .advantages-item{
        width: 290px;
    }
    .row-advantages .row .col-lg-4 .advantages-item{
        width: auto;
    }
    .row-advantages .row .col-lg-4:last-child{
        margin-bottom: 0;
    }
    .row-advantages .row .col-lg-4{
        margin-bottom: 60px;
    }
    .row-advantages .row .col-6{
        margin-bottom: 0;
        padding: 0 7.5px;
    }
    .advantages-btn{
        margin-top: 30px;
    }
    .advantages-item-content strong{
        font-size: 18px;
        line-height: 1.2;
    }
    /* bitrix site */
    .row-bitrix-site{
        padding: 30px 0;
    }
    .bitrix-site-container{
        text-align: center;

        flex-wrap: wrap;
        justify-content: center;
    }
    .bitrix-site-content p:first-child{
        font-size: 24px;
    }
    .bitrix-site-ico{
        height: 80px;

        flex: 0 0 80px;
    }
    .bitrix-site-ico img{
        width: 65px;
        height: 65px;
    }
    /* index reviews */
    .row-index-reviews{
        padding: 30px 0;
    }
    .row-index-reviews .header-h2-block{
        margin-bottom: 30px;
    }
    .index-reviews-item{
        flex-direction: column;
        max-width: 290px;
        margin-right: 15px;
        text-align: center;
    }
    .index-reviews-item-author{
        width: 110px;
        margin: 0 auto;
    }
    .index-reviews-item-rating{
        justify-content: center;
    }
    .reviews-slider-arrows-container{
        margin: 30px 0;
    }
    /* secret */
    .row-secret{
        padding: 30px 0;
    }
    .row-secret .header-h2-block{
        margin-bottom: 30px;
    }
    .secret-items-item-numb{
        font-size: 18px;
        width: 40px;
        height: 40px;

        flex: 0 0 40px;
    }
    .secret-items{
        padding: 0 15px;
    }
    .secret-items-item-content strong{
        font-size: 20px;
        line-height: 1;
    }
    .secret-items-item:after{
        left: 20px;
    }
    /* qwa */
    .row-qwa{
        padding: 30px 0;
    }
    .qwa-items{
        padding: 0 15px;
    }
    .qwa-item{
        padding: 15px 0;

        gap: 20px;
    }
    .qwa-item-title{
        font-size: 18px;
    }
    .qwa-item-text{
        padding: 15px;
    }
    /* consult */
    .row-consult{
        padding-top: 110px;
        padding-bottom: 30px;
    }
    .consult-author{
        width: 120px;
        height: 120px;
        border-width: 5px;
    }
    .consult-author span{
        width: 24px;
        height: 24px;
        border-width: 4px;
    }
    .consult-container{
        padding-top: 70px;
    }
    .consult-header h2{
        font-size: 24px;
    }
    .consult-header{
        gap: 5px;
    }
    .consult-header h2:after{
        width: 30px;
        height: 30px;
    }
    .consult-body{
        margin: 30px auto;
    }
    /* connect */
    .row-connect{
        padding: 30px 0;
    }
    .row-connect .header-h2-block{
        margin-bottom: 30px;
    }
    .connect-info{
        margin-bottom: 50px;
        padding: 0;

        gap: 35px;
    }
    .connect-info-author span{
        font-size: 100px;
    }
    .connect-info-author video{
        width: 120px;
        height: 120px;
    }
    .connect-info-title{
        font-size: 24px;
        text-align: center;
    }
    .connect-info-list{
        max-width: 360px;
        margin: 0 auto;
    }
    .connect-info-text{
        font-size: 14px;
        max-width: 400px;
        margin: 0 auto;
    }
    .connect-form{
        padding: 0;
    }
    .connect-form-title{
        margin-bottom: 0;
        text-align: center;
    }
    .connect-form-fields{
        gap: 15px;
    }
    /* breadcrumbs */
    .row-breadcrumbs{
        margin-top: 30px;
        margin-bottom: 10px;
    }
    .breadcrumbs-item{
        display: none;
    }
    .breadcrumbs-item:after{
        content: none;
    }
    .breadcrumbs-item:nth-last-child(2){
        display: inline-flex;

        align-items: center;
    }
    .breadcrumbs-item:nth-last-child(2) a{
        margin-left: 10px;
    }
    .breadcrumbs-item:nth-last-child(2):before{
        width: 7px;
        height: 6px;
        content: '';
        -webkit-transform: rotate(-180deg);
            -ms-transform: rotate(-180deg);
                transform: rotate(-180deg);
        border-width: 3.335px 0 3.335px 5px;
        border-style: solid;
        border-color: transparent transparent transparent #666;
    }
    /* section nav */
    .row-section-nav{
        margin: 20px 0;
    }
    ul.section-nav li a{
        padding: 8px 12px;
    }
    /* page */
    .row-page{
        margin: 20px 0 30px;
    }
    /* article list */
    .article-list-search{
        margin-bottom: 20px;
    }
    .article-list-container{
        padding: 15px;
    }
    .article-list-item{
        padding: 15px 0;
    }
    /* pagination */
    .pagination{
        margin-bottom: 30px;
    }
    /* sidebar article */
    .sidebar-article{
        margin-top: 30px;
        padding: 15px;
    }
    /* search result */
    .search-result{
        margin-bottom: 30px;
    }
    /* article detail */
    .article-detail-author-header{
        flex-wrap: wrap;
        gap: 20px;
    }
    .article-detail-author-header-l{
        flex: 0 0 100%;
        flex-direction: column;
    }
    .article-detail-author-header-r{
        flex: 0 0 100%;
    }
    .article-detail-author-social{
        margin: 0;
    }
    .article-detail-author-meta{
        flex-wrap: wrap;
        gap: 15px;
    }
    .article-detail-author-meta-l{
        flex-wrap: wrap;
        gap: 10px 15px;
    }
    .article-detail-author-text{
        font-size: 16px;
    }
    .iblock-vote-container{
        justify-content: start;
    }
    /* article detail */
    .article-detail-text{
        padding: 15px;
    }
    /* vote */
    .iblock-vote{
        height: auto;
        margin-bottom: 30px;
        padding: 20px;

        gap: 20px;
    }
    /* share */
    .article-detail-share{
        padding: 20px;

        gap: 20px;
    }
    /* related */
    .article-detail-related{
        padding: 15px;

        gap: 15px;
    }
    /* next prev */
    .article-detail-np{
        flex-direction: column;

        gap: 15px;
    }
    .article-detail-np-prev,
    .article-detail-np-next{
        gap: 15px;
    }
    .article-detail-np-prev-ico,
    .article-detail-np-next-ico{
        width: 40px;
        height: 40px;
        background-size: 20px;

        flex: 0 0 40px;
    }
    /* sidebar */
    .article-detail-sidebar{
        margin-top: 30px;
    }
    /* voting form */
    .voting-form{
        padding: 15px;
    }
    .vote-form-footer input{
        /* voiting */
        background-image: url('/local/templates/custom/css/../i/icons/trophy.png');
    }
    /* contacts */
    .contacts-page{
        padding: 15px;
    }
    .contacts-author{
        gap: 20px;
    }
    .contacts-author-title{
        font-size: 22px;
        line-height: 1.4;
    }
    .contacts-author-image img{
        width: 100px;
    }
    .contacts-list{
        padding: 15px;

        gap: 20px;
    }
    .contacts-list-title{
        font-size: 22px;
        line-height: 1.3;
    }
    .contacts-list-ul{
        flex-direction: column;
    }
    .contacts-list-ul ul{
        width: 100%;
    }
    .contacts-info{
        height: auto;
        margin-bottom: 30px;
        padding: 15px;

        gap: 20px;
    }
    .contacts-form{
        height: auto;
        padding: 15px;

        gap: 15px;
    }
    .contacts-form-title{
        font-size: 20px;
    }
    .contacts-form-title img{
        width: 20px;
    }
    .contacts-form-fields{
        gap: 15px;
    }
    .contacts-info-row{
        padding: 15px;
    }
    .contacts-info-title{
        font-size: 20px;
    }
    .contacts-info-author img{
        width: 90px;
        height: 90px;
    }
    .contacts-info-author span{
        font-size: 70px;
        line-height: 1.1;
    }
    .contacts-info-title img{
        width: 14px;
        margin-bottom: 3px;
        margin-left: 7px;
    }
    .contacts-info-text{
        font-size: 14px;
    }
    .contacts-info-desc{
        font-size: 14px;
    }
    .contacts-blockquote{
        padding: 15px;
    }
    /* 404 */
    .page-404{
        margin-top: 50px;
    }
    .page-404-header h1{
        font-size: 60px;
    }
    .page-404-header h2{
        font-size: 30px;
        line-height: 1.4;
    }
    .page-404-header h2 img{
        width: 34px;
        margin-left: 5px;
    }
    /* portfolio */
    .portfolio-list-item-info{
        padding: 15px;

        gap: 15px;
    }
    .portfolio-list-item-info-title{
        font-size: 18px;
        line-height: 1.2;
    }

    .portfolio-list-text{
        padding: 15px;
    }
    /* hero form */
    .hero-form-container{
        flex-direction: column;
        margin-top: 30px;
        padding: 15px;
    }
    .hero-form-author{
        position: absolute;
        top: -50px;
        left: 50%;
        max-width: 120px;
        margin: 0 auto;
        transform: translate(-50%, 0);
        border-width: 5px;
    }
    .hero-form-header{
        text-align: center;
    }
    .hero-form-header p:first-child{
        font-size: 24px;
    }
    .hero-form{
        flex-direction: column;
    }
    .hero-form-l{
        flex: 0 0 50px;
    }
    .hero-form .submit-row button{
        width: 100%;
        height: 50px;
    }
    .hero-form-author span{
        width: 24px;
        height: 24px;
        border-width: 3px;
    }
    /* portfolio detail */
    .portfolio-detail-info{
        flex-direction: column;
        padding: 15px;

        gap: 15px;
    }
    .portfolio-detail-features{
        padding: 30px;
    }
    .portfolio-detail-info-image{
        max-width: 470px;
        margin: 0 auto;
    }
    .portfolio-detail-info-title{
        font-size: 20px;
    }
    .portfolio-detail-gallery-title{
        font-size: 20px;
    }
    .portfolio-detail-info-container{
        padding: 15px;
    }
    .portfolio-detail-gallery-slick-slider{
        margin-bottom: 15px;
    }
    .portfolio-detail-gallery{
        padding: 15px;

        gap: 15px;
    }
    .portfolio-detail-gallery-slick-slider .slick-slide{
        padding: 0 5px;
    }
    .portfolio-detail-gallery-slick-slider .slick-slide a{
        max-width: 160px;
    }
    .portfolio-detail-text{
        padding: 15px;
    }
    .portfolio-detail-text-container{
        padding: 15px;
    }
    .portfolio-detail-text-block-title{
        font-size: 22px;
    }
    .portfolio-detail-plan .header-h2-block{
        margin-bottom: 40px;
        padding: 0;
    }
    .portfolio-detail-plan .row{
        gap: 0;
    }
    .portfolio-detail-plan .row .col-lg-4{
        margin-bottom: 0;
        padding: 0 7.5px;
    }
    .portfolio-detail-plan-item{
        width: 290px;
    }
    /* clients */
    .header-h1-block{
        margin-bottom: 30px;
        padding: 0 0 30px;
    }
    .header-h1-block h1{
        font-size: 24px;
    }
    /* clients */
    .clients{
        padding: 15px;

        gap: 30px;
    }
    .page-reviews .clients{
        margin-bottom: 70px;
    }
    .clients-percent{
        font-size: 80px;
    }
    .clients-text p:first-child{
        font-size: 22px;
        margin-bottom: 10px;
    }
    .clients-avatars-item{
        width: 50px;
        height: 50px;
    }
    .review{
        padding: 60px 15px 15px 15px;
    }
    .review-name{
        font-size: 22px;
    }
    /* quiz */
    .quiz-bx{
        padding: 15px;
    }
    .quiz-bx-header{
        margin-bottom: 30px;
    }
    .quiz-bx-header p:first-child{
        font-size: 24px;
        line-height: 1.2;
    }
    .quiz-bx-header p:last-child{
        font-size: 16px;
    }
    .quiz-bx-result-fields{
        max-width: none;
    }
    .quiz-bx-result-header{
        margin-bottom: 30px;
    }
    .quiz-bx-result-header p:first-child{
        font-size: 24px;
        line-height: 1.2;
    }
    .quiz-bx-result-header p:last-child{
        font-size: 16px;
    }
    /* order form */
    .order-form-container{
        margin-top: 75px;
        padding: 75px 15px 15px 15px;
    }
    .order-form-author{
        position: absolute;
        top: -50px;
        left: 50%;
        max-width: 120px;
        margin: 0 auto;
        transform: translate(-50%, 0);
        border-width: 5px;
    }
    .order-form-header p:first-child{
        font-size: 24px;
        line-height: 1.2;
    }
    .order-form-header p:first-child img{
        top: -4px;
        width: 24px;
    }
    .order-form-header p:last-child{
        font-size: 16px;
    }
    .order-form-fields-row{
        flex-wrap: wrap;
    }
    .order-form-fields-row .input-row,
    .order-form-fields-row .select-row{
        flex: 100%;
    }
    .order-form-fields-row .radio-row{
        flex: 100%;
    }
    .order-form-fields-row .textarea-row textarea{
        min-height: 100px;
    }
    .order-form-fields-row .rule-row{
        padding: 0;
    }
    .order-form-fields-row .submit-row{
        width: 100%;
    }
    .order-form-body{
        gap: 15px;
    }
    /* price */
    .price-list h2{
        font-size: 24px;
    }
    .price-list-item{
        padding: 15px;

        gap: 15px;
    }
    .price-list-item-title p:first-child{
        font-size: 22px;
        flex-direction: column;
    }
    .price-list-item-title p:first-child span{
        order: -1;
    }
    .price-list-item-info{
        padding: 15px;
    }
    .price-list-item-info-time,
    .price-list-item-info-service{
        font-size: 14px;
    }
    .price-list-item-info-time p:first-child,
    .price-list-item-info-service p:first-child{
        min-height: 30px;
    }
    .price-list-item-info-time strong,
    .price-list-item-info-service strong{
        font-size: 18px;
    }
    .price-list-item-info-body{
        font-size: 14px;
        padding-top: 10px;
    }
    .price-list-item-info-body p:last-child{
        font-size: 14px;
    }
    .price-list-item-info-body p:last-child strong{
        font-size: 22px;
    }
    .price-list-item-btns{
        gap: 10px;
    }
    /* price */
    .price-option{
        margin-bottom: 30px;
        padding: 10px 0;

        flex-wrap: wrap;
    }
    .price-option-item{
        font-size: 16px;

        flex: 0 150px;
    }
    .price-option-item.time:before,
    .price-option-item.price:before,
    .price-option-item.service:before{
        width: 24px;
        height: 24px;
    }
    .price-option-item p:last-child{
        font-size: 20px;
    }
    .price-option-item p:last-child strong{
        font-size: 24px;
    }
    .price-btns{
        flex-wrap: wrap;
        gap: 15px;
    }
    .price-btns a{
        width: 100%;
        height: 60px;
    }
    .price-btns a:after{
        width: 28px;
        height: 28px;
        background-size: 28px;
    }
    /* page price */
    .page-price{
        padding: 30px 0 30px;
    }
    .price-dev{
        padding: 50px 15px 15px 15px;
    }
    .g-lg-50{
        gap: 50px 0;
    }
    .price-dev-item{
        padding: 50px 15px 15px 15px;

        gap: 15px;
    }
    .price-dev-item-ico{
        width: 70px;
        height: 70px;
    }
    .price-dev-item-ico img{
        width: 30px;
    }
    /* steps */
    .header-bx span img{
        width: 25px;
    }
    .price-steps-gerb{
        top: -45px;
        width: 90px;
        height: 90px;
    }
    .price-steps-gerb img{
        width: 50px;
    }
    .price-steps-header{
        font-size: 16px;
        margin-bottom: 15px;
    }
    .price-steps{
        margin-top: 70px;
        padding: 70px 15px 30px 15px;
    }
    .price-steps-item{
        padding: 60px 15px 15px 15px;
    }
    /* biz */
    .price-biz{
        padding: 50px 15px 15px 15px;
    }
    .price-biz-item{
        padding: 50px 15px 15px 15px;

        gap: 15px;
    }
    .price-biz-item-ico{
        width: 70px;
        height: 70px;
    }
    .price-biz-item-ico img{
        width: 30px;
    }
    /* price seo */
    .header-h2-block-ico{
        margin-bottom: 30px;
    }
    .price-seo-item{
        padding: 30px 15px;

        gap: 15px;
    }
    .price-seo-item-ico img{
        width: 40px;
    }
    /* cost */
    .price-cost{
        padding: 50px 15px 15px 15px;
    }
    .price-cost-item{
        padding: 40px 15px 15px 15px;

        gap: 20px;
    }
    .price-cost-item-ico{
        top: -35px;
        width: 70px;
        height: 70px;
    }
    .price-cost-item-ico img{
        width: 35px;
    }
    .price-cost-item-title{
        font-size: 20px;
    }
    .price-cost-item-info{
        gap: 10;
    }
    /* price func */
    .price-func{
        gap: 30px;
    }
    /* index text */
    .index-text{
        padding-bottom: 10px;
    }
    .index-text h2{
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    /* alt cta */
    .row-alt-cta{
        padding: 30px 0;
    }
    .alt-cta-text-title{
        font-size: 26px;
        line-height: 1.2;
        margin-bottom: 20px;
    }
    .alt-cta-author-frame video{
        width: 120px;
        height: 120px;
    }
    .alt-cta-author span{
        font-size: 100px;
    }
    /* price projects */
    .price-project-items{
        padding: 15px;
    }
    .price-project-item{
        padding: 15px;

        gap: 10px;
    }
    /* retention */
    .price-retention-item{
        padding: 30px 15px;

        gap: 15px;
    }
    .price-retention-item-ico img{
        width: 40px;
    }
    .contacts-qua{
        gap: 30px;
    }
    .hidden-lg{
        display: none !important;
    }
    /* subscribe */
    .sidebar-subscribe{
        margin-bottom: 30px;
        padding: 15px;
    }
    /* tok */
    .toc-float-group{
        display: none !important;
    }
    /* cta */
    .article-detail-cta{
        flex-direction: column;
        text-align: center;

        align-items: center;
    }
}
/* ==========================================================================
767
========================================================================== */
@media (max-width: 767px){
    /* final */
    .row-final{
        height: 500px;
    }
    .final-animate-first img{
        max-width: 400px;
    }
    .final-animate-second img{
        max-width: 450px;
    }
    /* consult */
    .consult-footer{
        flex-wrap: wrap;
        gap: 15px;
    }
    .consult-footer a{
        width: 100%;
    }
    .consult-body{
        flex-wrap: wrap;
    }
}

/* ==========================================================================
575
========================================================================== */
@media (max-width: 575px){
    .footer-top .header-order-btn a{
        width: 100%;
        margin-top: 30px;
    }
    .footer-copy{
        /*flex-direction: column;*/
        /*gap: 5px;*/
        font-size: 14px;
    }
    .footer-nav ul{
        justify-content: flex-start;
    }
    /* consult */
    .consult-body{
        padding: 20px 0;

        gap: 20px;
    }
    .consult-body-item{
        padding-bottom: 20px;
        border-bottom: 1px solid #fff;

        flex: 1 1 100%;
    }
    .consult-body-item:last-child{
        padding-bottom: 0;
        border: none;
    }
    .row-consult{
        padding-right: 15px;
        padding-left: 15px;
    }
    .consult-container{
        padding-right: 15px;
        padding-left: 15px;
    }
    .consult-footer a{
        font-size: 16px;
    }
    /* connect */
    .submit-row button{
        width: 100%;
        height: 60px;
    }
    .article-list-item-info{
        flex-direction: column;
    }
    .article-list-item.golosom .article-list-item-info{
        flex-direction: row;
    }
    .article-detail-author-social-items a{
        width: 50px;
        height: 50px;
    }
    .footer-social{
        margin: 0;
    }
}

/* End */
/* /local/templates/custom/css/bootstrap-reboot.min.css?17557205413939 */
/* /local/templates/custom/css/typography.css?176245085211713 */
/* /local/templates/custom/css/slick.css?17557205411327 */
/* /local/templates/custom/css/bootstrap-grid.min.css?175572054128977 */
/* /local/templates/custom/css/prism.css?17557205412748 */
/* /local/templates/custom/css/fancybox.css?175572054115598 */
/* /local/templates/custom/template_styles.css?1789712309130997 */
/* /local/templates/custom/css/media.css?177289914024836 */
