/* -------------------- Reset -------------------- */
* { margin: 0; outline: none; }
article, aside, figure, footer, header, nav, main, section, details, summary { display: block; }
body, p, ul, li, ol, pre, caption, h1, h2, h3, h4, h5, h6, form, div, fieldset, legend { padding: 0; }

html { width: 100%; height: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body { display: block; position: relative; min-height: 100%; height: 100%; width: 100%; font: 400 .625em 'Arial', sans-serif; color: #131313; background: #fff; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -ms-overflow-style: scrollbar; }
img, fieldset { border: 0; }

input, textarea { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
input::-moz-focus-inner, textarea::-moz-focus-inner, select::-moz-focus-inner, button::-moz-focus-inner { padding: 0; border: 0; }
input[type="text"], input[type="password"], button, textarea { -webkit-appearance: none; }

a, button { transition: color 250ms, background 250ms, border 250ms, opacity 250ms; }

iframe { border: none; }


/* ----------------------- Global ----------------------- */
.g-hidden { display: none; visibility: hidden; }
.g-invisible { opacity: 0; visibility: hidden; }

.g-relative { position: relative; z-index: 5; }

@media (min-width: 768px) {

    .g-pull-left { float: left; margin: 4px 30px 10px 0 !important; }
    .g-pull-right { float: right; margin: 4px 0 10px 30px !important; }

    .g-pull-left:first-child + p,
    .g-pull-right:first-child + p { margin-top: auto; }

    .g-pull-wrapper { overflow: hidden; }

}

.g-left { text-align: left; }
.g-center { text-align: center; }
.g-right { text-align: right; }

@media (max-width: 479px) {

    .g-left-xs { text-align: left; }
    .g-center-xs { text-align: center; }
    .g-right-xs { text-align: right; }

}

@media (min-width: 480px) and (max-width: 767px) {

    .g-left-sm { text-align: left; }
    .g-center-sm { text-align: center; }
    .g-right-sm { text-align: right; }

}

@media (min-width: 768px) and (max-width: 1199px) {

    .g-left-md { text-align: left; }
    .g-center-md { text-align: center; }
    .g-right-md { text-align: right; }

}

@media (min-width: 1200px) {

    .g-left-lg { text-align: left; }
    .g-center-lg { text-align: center; }
    .g-right-lg { text-align: right; }

}

.g-thin { font-weight: 100; }
.g-nowrap { white-space: nowrap; }

.g-dashed { line-height: 1; text-decoration: none !important; border-bottom-width: 1px; border-bottom-style: dashed !important; }
.g-solid { line-height: 1; text-decoration: none !important; border-bottom-width: 1px; border-bottom-style: solid !important; }

.g-dashed:hover { border-bottom-color: transparent !important; }
.g-solid:hover { border-bottom-color: transparent !important; }

.g-transition { transition: all 250ms; }
.g-transition-transform { transition: transform 250ms, opacity 250ms, visibility 250ms; }

.g-expand-background { position: relative; }

.g-expand-background:after,
.g-expand-background:before { position: absolute; z-index: -1; top: 0; bottom: 0; width: 200%; background: inherit; content: ''; }

.g-expand-background:after { left: 99%; }
.g-expand-background:before { right: 99%; }

.g-yellow { color: #ffcd32 !important; }

/* * * Buttons * * */
.e-btn { display: inline-block; vertical-align: top; position: relative; text-decoration: none !important; text-align: center; outline: none; cursor: pointer; overflow: visible !important; background: transparent; border: none; background-clip: padding-box; box-sizing: border-box; transition: color 250ms, background 250ms, border 250ms, opacity 250ms; }
.e-btn:before { position: absolute; z-index: 0; left: 0; top: 0; right: 0; bottom: 0; transform-origin: 50% 50%; transition: all 250ms; content: ''; }

.e-btn span { position: relative; z-index: 1; }

.e-btn_md { position: relative; padding: 16px 56px 15px; font: 400 11px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; }
.e-btn_md:before { transform: skew(26.57deg); }

.e-btn_yellow { color: #000 !important; }
.e-btn_yellow:before { background: #ffcd32; }

.e-btn_yellow:hover:before { box-shadow: 0 0 30px rgba(0, 0, 0, .25); }

.e-btn[disabled] { text-shadow: none !important; color: #eee !important; background: #848484 !important; border-color: #848484 !important; cursor: default; }

/* * * Buttons :: mods * * */
.e-btn_block { display: block; padding-left: 5px; padding-right: 5px; margin-left: 0; margin-right: 0; width: 100%; }

@media (max-width: 479px) {
    .e-btn_block_xs { display: block; padding-left: 5px; padding-right: 5px; margin-left: 0; margin-right: 0; width: 100%; }
}

@media (min-width: 480px) and (max-width: 767px) {
    .e-btn_block_sm { display: block; padding-left: 5px; padding-right: 5px; margin-left: 0; margin-right: 0; width: 100%; }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .e-btn_block_md { display: block; padding-left: 5px; padding-right: 5px; margin-left: 0; margin-right: 0; width: 100%; }
}

@media (min-width: 1200px) {
    .e-btn_block_lg { display: block; padding-left: 5px; padding-right: 5px; margin-left: 0; margin-right: 0; width: 100%; }
}


/* -------------------- Page -------------------- */
.b-page { position: relative; overflow: hidden; min-width: 320px; min-height: 100%; box-sizing: border-box; }

.b-page_content { padding-top: 45px; padding-bottom: 64px; font: 400 1.6em 'Arial', sans-serif; color: #000; }

@media (max-width: 767px) {

    .b-page_content { padding-top: 24px; padding-bottom: 56px; }

}

/* * * Page triangle * * */
.b-header + *:before { position: absolute; z-index: -1; top: 0; right: 0; border-left: 275px solid transparent; border-top: 550px solid #ffcc32; transition: border 250ms; content: ''; }

@media (max-width: 1299px) {

    .b-header + *:before { border-left: 160px solid transparent; border-top: 320px solid #ffcc32; }

}

@media (max-width: 867px) {

    .b-header + *:before { border-left: 120px solid transparent; border-top: 240px solid #ffcc32; }

}

@media (max-width: 479px) {

    .b-header + *:before { border-left: 115px solid transparent; border-top: 56px solid #ffcc32; }

}


/* -------------------- Header -------------------- */
.b-header { position: relative; min-width: 320px; font: 400 1.6em/1 'Arial', sans-serif; color: #000; }

.b-header__fixed { position: fixed; z-index: 50; left: 0; top: 0; right: 0; }
.b-header__fixed + * { position: relative; border-top: 89px solid transparent; }

@media (max-width: 1199px) {

    .b-header__fixed { z-index: 100; }
    .b-header__fixed + * { border-top: 73px solid transparent; }

}

@media (max-width: 767px) {

    .b-header__fixed + * { border-top: 64px solid transparent; }

}

.b-header_bar { z-index: 50; padding: 20px 0; background: #fff; box-shadow: 0 5px 21px rgba(21, 21, 21, .06); }

@media (max-width: 1199px) {

    .b-header_bar { padding: 12px 0; }

}

/* * * Header :: logo  * * */
.b-header_logo { display: inline-block; float: left; position: relative; }
.b-header_logo img { display: block; position: relative; }

@media (max-width: 767px) {

    .b-header_logo img { width: 110px; height: 40px; }

}

/* * * Header :: contacts  * * */
.b-header_contacts { float: right; font: 400 .875em/1 'Arial', sans-serif; text-align: right; color: #000; }
.b-header_contacts p ~ p { margin-top: 6px; }

@media (max-width: 479px) {

    .b-header_contacts { float: none; margin-top: 24px; text-align: center; }
    .b-header_contacts p ~ p { margin-top: 16px; }

}

.b-header_contacts_phone { font: 400 1em/1 'Arial', sans-serif; letter-spacing: .1em; text-decoration: none; color: #4c4b4b; }
.b-header_contacts_phone strong { font: 700 1.42857142857143em/1 'Arial', sans-serif; color: #000; }

.b-header_contacts_phone:hover { color: #000; }

.b-header_contacts_email { font: 400 1em/1 'Arial', sans-serif; letter-spacing: .1em; text-decoration: none; color: #000; border-bottom-width: 1px; border-bottom-style: dotted; }
.b-header_contacts_email:hover { border-bottom-color: transparent; }

/* * * Header :: nav  * * */
@media (max-width: 1199px) {

    .b-header_nav { position: fixed; z-index: 100; left: 0; top: 0; right: 0; bottom: 0; min-width: 320px; color: #000; background: #fff; overflow-y: auto; overflow-x: hidden; opacity: 0; visibility: hidden; transition: opacity 250ms, visibility 250ms, transform 250ms; }
    .b-header.opened .b-header_nav { opacity: 1; visibility: visible; transform: none; }

    .b-header_nav_capsule { display: table; position: relative; width: 100%; height: 100%; border-collapse: collapse; table-layout: fixed; }
    .b-header_nav_capsule_cell { display: table-cell; vertical-align: middle; padding: 20px 0; text-align: center; }

    .b-header_nav_list { list-style: none; }

    .b-header_nav_list > li ~ li { margin-top: 10px; }
    .b-header_nav_list > li strong { position: relative; z-index: 1; font-weight: inherit; }

    .b-header_nav_list > li > a,
    .b-header_nav_list > li > span { display: inline-block; position: relative; margin: 0 10px; padding: 15px 24px 13px; font: 700 12px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; color: #000; }

    .b-header_nav_list > li > a:before,
    .b-header_nav_list > li > span:before { position: absolute; z-index: 0; left: 0; top: 0; right: 0; bottom: 0; background: transparent; transform-origin: 50% 50%; transform: skew(26.57deg); transition: background 250ms; content: ''; }

    .b-header_nav_list > li > a:hover:before,
    .b-header_nav_list > li > span:before,

    .b-header_nav_list > li.opened > a:before,
    .b-header_nav_list > li.opened > span:before { background: #ffcd32; }

    .b-header_nav_list > li.hasChild > a strong:after,
    .b-header_nav_list > li.hasChild > span strong:after { display: inline-block; vertical-align: 2px; margin: 0 -10px 0 8px; font: normal 9px/1 'RDM', sans-serif; content: '\e801'; transform-origin: 50% 50%; transition: transform 250ms; }

    .b-header_nav_list > li.hasChild.opened > a strong:after,
    .b-header_nav_list > li.hasChild.opened > span strong:after { transform: rotate(-180deg); }

    .m-mouse .b-header_nav_list > li.hasChild > span { cursor: pointer; }

    /* * * 2nd level * * */
    .b-header_nav_level { margin-top: 10px; padding: 10px 0; background: #f4f4f4; }

    .b-header_nav_level_list { list-style: none; }
    .b-header_nav_level_list > li ~ li { margin-top: 5px; }

    .b-header_nav_level_list > li > a,
    .b-header_nav_level_list > li > span { display: block; position: relative; padding: 13px 10px 12px; font: 700 12px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; color: #8c8c8c; }

    .b-header_nav_level_list > li > span,
    .b-header_nav_level_list > li > a:hover { color: #000; }

    /* * * Close btn * * */
    .b-header_nav_close { position: fixed; z-index: 110; top: 0; right: 0; padding: 12px; color: #000; background: none; border: none; }
    .b-header_nav_close span { display: block; position: relative; z-index: 1; width: 20px; height: 20px; font-size: 20px; line-height: 1; backface-visibility: hidden; }

    .b-header_nav_close:before { position: absolute; left: auto; top: 0; right: 0; border-left: 60px solid transparent; border-top: 120px solid #ffcd32; content: ''; }

    /* * * Sandwich btn * * */
    .b-header_nav_toggle { float: right; position: relative; margin: 0 -10px 0 0; padding: 9px 10px; width: 44px; background: transparent; border: none; }
    .b-header_nav_toggle_icon { display: inline-block; vertical-align: middle; position: relative; z-index: 1; margin: 8px 0; width: 24px; height: 4px; background: #000; }

    .b-header_nav_toggle_icon span:first-child { position: absolute; left: 0; top: 8px; width: 24px; height: 4px; transform-origin: 50% 50%; }
    .b-header_nav_toggle_icon span:first-child:before { position: absolute; left: 0; top: 0; right: 0; bottom: 0; background: #000; content: ''; transform-origin: 50% 50%; }

    .b-header_nav_toggle_icon span:last-child { position: absolute; left: 0; bottom: 8px; width: 24px; height: 4px; transform-origin: 50% 50%; }
    .b-header_nav_toggle_icon span:last-child:before { position: absolute; left: 0; top: 0; right: 0; bottom: 0; background: #000; content: ''; transform-origin: 50% 50%; }

    .b-header_nav_toggle_icon,
    .b-header_nav_toggle_icon span,

    .b-header_nav_toggle_icon span:after,
    .b-header_nav_toggle_icon span:before { transition: all 250ms; }

    /*
    .b-header_nav_toggle:hover span:first-child { transform: translate(0, -2px); }
    .b-header_nav_toggle:hover span:last-child { transform: translate(0, 2px); }*/

    .b-header_nav_toggle:hover .b-header_nav_toggle_icon,
    .b-header_nav_toggle:hover .b-header_nav_toggle_icon span:first-child:before,
    .b-header_nav_toggle:hover .b-header_nav_toggle_icon span:last-child:before { background: #ffcd32; }

    .b-header_nav_menu.opened .b-header_nav_toggle { position: fixed; top: 20px; right: 20px; }
    .b-header_nav_menu.opened .b-header_nav_toggle_icon { background: transparent; transform: rotate(180deg); }

    .b-header_nav_menu.opened .b-header_nav_toggle_icon span:first-child { transform: translate(0, -8px); }
    .b-header_nav_menu.opened .b-header_nav_toggle_icon span:first-child:before { background: #fff; transform: rotate(-45deg); }

    .b-header_nav_menu.opened .b-header_nav_toggle_icon span:last-child { transform: translate(0, 8px); }
    .b-header_nav_menu.opened .b-header_nav_toggle_icon span:last-child:before { background: #fff; transform: rotate(45deg); }

}

@media (min-width: 1200px) {

    .b-header_nav { margin: 0 15px 0 25px; }

    .b-header_nav_list { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; justify-content: space-between; align-items: center; list-style: none; }

    .b-header_nav_list > li { display: inline-block; vertical-align: middle; }
    .b-header_nav_list > li strong { position: relative; z-index: 1; font-weight: inherit; }

    .b-header_nav_list > li > a,
    .b-header_nav_list > li > span { display: block; position: relative; padding: 15px 24px 13px; font: 700 12px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; color: #000; }

    .b-header_nav_list > li.hasChild:hover { margin-bottom: -45px; padding-bottom: 45px; }

    .b-header_nav_list > li.hasChild > a strong:after,
    .b-header_nav_list > li.hasChild > span strong:after { display: inline-block; vertical-align: 2px; margin: 0 -10px 0 8px; font: normal 9px/1 'RDM', sans-serif; content: '\e801'; }

    .b-header_nav_list > li > a:before,
    .b-header_nav_list > li > span:before { position: absolute; z-index: 0; left: 0; top: 0; right: 0; bottom: 0; background: transparent; transform-origin: 50% 50%; transform: skew(26.57deg); transition: background 250ms; content: ''; }

    .b-header_nav_list > li:hover > a:before,
    .b-header_nav_list > li > span:before { background: #ffcd32; }

    .m-mouse .b-header_nav_list > li.hasChild > span { cursor: pointer; }

    /* * * 2nd level * * */
    .b-header_nav_level { display: block !important; position: absolute; z-index: -5; left: 0; top: 100%; right: 0; padding: 17px 0; background: #f4f4f4; opacity: 0; visibility: hidden; transition: opacity 250ms, visibility 250ms; }

    .b-header_nav_level_list { list-style: none; margin: 0 auto; padding: 0 10px; max-width: 1200px; text-align: center; box-sizing: border-box; }
    .b-header_nav_level_list > li { display: inline-block; vertical-align: middle; }

    .b-header_nav_level_list > li > a,
    .b-header_nav_level_list > li > span { display: block; position: relative; padding: 15px 24px 13px; font: 700 12px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; color: #8c8c8c; }

    .b-header_nav_level_list > li > span,
    .b-header_nav_level_list > li > a:hover { color: #000; }

    .m-mouse .b-header_nav_list > li.hasChild:hover > .b-header_nav_level,
    .m-touch .b-header_nav_list > li.hasChild.opened > .b-header_nav_level { opacity: 1; visibility: visible; }

}


/* -------------------- Footer -------------------- */
.b-footer { position: relative; padding: 35px 0 0; min-width: 320px; font: 400 1em 'Arial', sans-serif; color: #fff; background: #000; }

@media (max-width: 767px) {

    .b-footer_info { text-align: center; }
    .b-footer_info > [class*="col-"] ~ [class*="col-"] { margin-top: 12px; }

}

/* * * Footer :: logo  * * */
.b-footer_logo { display: inline-block; position: relative; }
.b-footer_logo img { display: block; position: relative; }

/* * * Footer :: social * * */
.b-footer_social { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; flex-flow: row wrap; justify-content: space-between; align-items: center; max-width: 135px; margin-top: 26px; font: 400 18px/1 'Arial', sans-serif; }

.b-footer_social a { display: inline-block; vertical-align: middle; position: relative; text-decoration: none; color: #4d4d4d; }
.b-footer_social a:hover { color: #fff; }

@media (max-width: 767px) {

    .b-footer_social { margin: 20px auto; }

}

/* * * Footer :: sentence * * */
.b-footer_sentence { margin-top: 20px; font: 400 1.3em/1.5 'Arial', sans-serif; letter-spacing: .1em; }

@media (max-width: 1199px) {

    .b-footer_sentence { margin: -4px 0 20px; }

}

@media (max-width: 767px) {

    .b-footer_sentence { margin: 0 0 10px; }

}

@media (min-width: 1200px) {

    .b-footer_sentence { margin-top: -8px; font: 400 1.4em/2 'Arial', sans-serif; }

}

/* * * Footer :: lists * * */
.b-footer_title { margin-bottom: 16px; font: 700 1em 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #fff; }

@media (max-width: 767px) {

    .b-footer_title { margin-bottom: 10px; text-align: center; }

}

.b-footer_nav { list-style: none; font: 700 1em 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; }
.b-footer_nav li ~ li { margin-top: 16px; }

.b-footer_nav a { text-decoration: none; color: #858585; border-bottom-width: 1px; border-bottom-style: dotted; }
.b-footer_nav a:hover { color: #fff; }

@media (max-width: 767px) {

    .b-footer_nav { margin-right: -10px; text-align: center; }

    .b-footer_nav li { display: inline-block; vertical-align: top; margin: 0 10px 10px 0; }
    .b-footer_nav li ~ li { margin-top: auto; }

}

/* * * Footer :: copyright * * */
.b-footer_copyright { margin-top: 10px; padding: 15px 0; font: 400 1em/1 'Arial', sans-serif; letter-spacing: .2em; text-align: center; color: #757575; }

@media (min-width: 1200px) {

    .b-footer_copyright { margin-top: 55px; }

}


/* -------------------- Page elements -------------------- */
/* * * Bread crumbs * * */
.b-path { clear: both; margin-bottom: 45px; font: 400 .6875em/2.72727272727273 'Arial', sans-serif; letter-spacing: .185em; color: #8c8c8c; cursor: default; }
.b-path li { display: inline; margin-right: 5px; }

.b-path li:after { margin-left: 8px; content: '/'; color: #000; }
.b-path li:last-child:after { content: none; }

.b-path a { display: inline-block; line-height: 1.5; text-decoration: none; color: #000; border-bottom-width: 1px; border-bottom-style: dotted; }
.b-path a:hover { color: inherit; }

@media (max-width: 767px) {

    .b-path { clear: both; margin-bottom: 24px; margin-right: 60px; }

}

/* * * Headers * * */
.b-heading { position: relative; margin: 32px 0 42px; }

.b-heading:first-child { margin-top: auto; }
.b-heading:last-child { margin-bottom: auto; }

.b-path + .b-heading { margin-top: 80px; }

@media (min-width: 1200px) {

    .b-page_content > .container > .b-heading:first-child { margin-top: 40px; }

}

.b-heading_label { font: 400 italic 12px/1.5 'Arial', serif; letter-spacing: .2em; color: #7e7e7e; }

.b-heading_title { font: 700 40px/1 'Arial Black', 'Arial', serif; letter-spacing: .025em; color: #000; }
.b-heading_subtitle { font: 700 12px/1.5 'Arial', serif; letter-spacing: .2em; text-transform: uppercase; color: #000; }

@media (max-width: 767px) {

    .b-heading { position: relative; margin: 16px 0 32px; }
    .b-path + .b-heading { margin-top: 48px; }

    .b-heading_label { margin-top: 12px; }
    .b-heading_title { font: 700 30px/1 'Arial Black', 'Arial', serif; letter-spacing: .025em; }

}

/* * * Intro * * */
.b-intro_pic { position: relative; margin: 42px 0 72px; overflow: hidden; }
.b-intro_pic img { display: block; position: relative; max-width: 100%; height: auto; -ms-interpolation-mode: nearest-neighbor; image-rendering: -moz-crisp-edges; image-rendering: pixelated; }

@media (max-width: 767px) {

    .b-intro_pic { margin: 24px 0 32px; height: 190px; }
    .b-intro_pic img { position: absolute; left: 50%; top: 0; bottom: 0; max-width: none; width: auto; height: 100%; transform: translate(-50%, 0); }

}

.b-intro_pic:first-child { margin-top: auto; }


/* -------------------- Blocks / elements -------------------- */
/* * * Magnifier angle * * */
.e-magnifier { position: relative; overflow: hidden; }

.e-magnifier:after { position: absolute; z-index: 1; top: 0; right: 0; border-left: 60px solid transparent; border-top: 120px solid #ffcc32; content: ''; }
.e-magnifier:before { position: absolute; z-index: 2; top: 20px; right: 0; width: 40px; height: 20px; font: normal 20px/1 'RDM', sans-serif; text-align: center; color: #000; content: '\e80d'; }

.e-magnifier:after { transform: translate(30px, -60px); transition: all 250ms; transition-delay: 100ms; }
.e-magnifier:before { opacity: 0; visibility: hidden; transition: all 250ms; transition-delay: 0ms; }

.e-magnifier:hover:after { transform: none; transition-delay: 0ms; }
.e-magnifier:hover:before { opacity: 1; visibility: visible; transition-delay: 100ms; }

/* * * Certificates * * */
.e-certificate,
.e-certificate img { display: block; position: relative; max-width: 100%; height: auto; transition: all 250ms; -ms-interpolation-mode: nearest-neighbor; image-rendering: -moz-crisp-edges; image-rendering: pixelated; }

.e-certificate img { box-shadow: 0 0 8px rgba(0, 0, 0, .15); filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); filter: gray; -webkit-filter: grayscale(100%); backface-visibility: hidden; transition: all 250ms; }
.e-certificate:hover img { box-shadow: 0 0 21px rgba(0, 0, 0, .25); -webkit-filter: none; filter: none; }

/* * * Gallery * * */
.b-gallery { margin-top: 72px; margin-bottom: 72px; }

@media (max-width: 767px) {

    .b-gallery { margin-top: 32px; margin-bottom: 32px; }

}

/* * * Nav * * */
.b-nav { position: relative; margin: 0 -50px 64px 0; }
.b-nav__inter { margin: 70px -50px 10px 0; }

.b-nav > a,
.b-nav > span { display: inline-block; vertical-align: middle; position: relative; margin-right: 50px; padding: 10px 0 18px; font: 700 12px/1 'Arial', sans-serif; letter-spacing: .2em; text-transform: uppercase; text-decoration: none; color: #8c8c8c; }

.b-nav > span,
.b-nav > a:hover { color: #000; }

@media (max-width: 1199px) {

    .b-nav { position: relative; margin: 0 -20px 32px 0; }
    .b-nav__inter { margin: 32px -20px 10px 0; }

    .b-nav > a,
    .b-nav > span { margin-right: 20px; }

}

@media (max-width: 767px) {

    .b-nav { position: relative; margin: 0 -20px 24px 0; }
    .b-nav__inter { margin: 32px -20px 10px 0; }

    .b-nav > a,
    .b-nav > span { margin-right: 20px; }

}

/* * * Widget * * */
.b-widget,

.b-widget > *,
.b-widget iframe { width: 100% !important; }

/* * * Map * * */
.b-map { position: relative; background: #f5f5f5; }
.b-map_marker { position: relative; width: 16px; height: 16px; background: #ffcd32; border-radius: 50%; animation: pulse 3s infinite; }

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 205, 50, .4);
    }
    100% {
        box-shadow: 0 0 0 20px rgba(255, 205, 50, 0);
    }
}


/* -------------------- Carousels -------------------- */
/* * * Carousel * * */
.b-carousel { position: relative; width: auto; }
.b-carousel__padding { padding-left: 32px; padding-right: 32px; }

/* * * Carousel :: no js * * */
.b-carousel { display: -webkit-flex; display: -ms-flexbox; display: flex; position: relative; -webkit-flex-flow: row wrap; flex-flow: row wrap; letter-spacing: -6px; }
.b-carousel > .b-carousel_item { display: inline-block; vertical-align: top; letter-spacing: normal; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

/* * * Carousel :: js * * */
.b-carousel.owl-carousel { letter-spacing: normal; }
.b-carousel.owl-carousel.owl-drag { cursor: move; }

.b-carousel.owl-carousel.flex { margin-left: auto; margin-right: auto; }
.b-carousel.owl-carousel.flex .b-carousel_item[class*="col-"] { display: block; float: none; width: auto; padding-left: 0; padding-right: 0; }

/* * * Carousel :: overflow * * */
.b-carousel__overflow .owl-stage-outer { overflow: visible; }

.b-carousel__overflow .owl-stage-outer .owl-item { opacity: 0; visibility: hidden; transition: opacity 250ms, visibility 250ms; }
.b-carousel__overflow .owl-stage-outer .owl-item.active { opacity: 1; visibility: visible; }

/* * * Carousel :: disabled * * */
.b-carousel.owl-carousel .owl-nav.disabled,
.b-carousel.owl-carousel .b-carousel_arrow.disabled,
.b-carousel.owl-carousel .b-carousel_paging.disabled { display: none; }

/* * * Carousel :: arrows * * */
.b-carousel_arrow { position: absolute; z-index: 25; top: 50%; margin-top: -25px; width: 50px; height: 50px; text-decoration: none; text-align: center; color: #000; background: #fff; box-shadow: 0 0 16px rgba(7, 7, 7, 0.1); transition: all 250ms; cursor: pointer; }
.b-carousel_arrow:before { display: block; position: relative; width: inherit; height: inherit; font-size: 15px; line-height: 50px; }

.b-carousel_arrow:hover { background: #ffcd32; box-shadow: 0 0 30px rgba(7, 7, 7, 0.3); }

.b-carousel_arrow__prev { left: 0; }
.b-carousel_arrow__next { right: 0; }

/* * * Carousel :: paging * * */
.b-carousel_paging { position: relative; margin-top: 20px; line-height: 8px; white-space: nowrap; text-align: center; counter-reset: pagination; }
.b-carousel_paging_bullet { display: inline-block; vertical-align: middle; position: relative; margin: 0 4px; transition: all 250ms; }

.b-carousel_paging_bullet span { display: block; width: 8px; height: 8px; background: #e5e5e5; border-radius: 50%; transition: all 250ms; cursor: pointer; }
.b-carousel_paging_bullet span:hover { background: #ffcd32; }

.b-carousel_paging_bullet.active span { background: #ffcd32; transform: scale(1.25); }


/* -------------------- Slider -------------------- */
.b-slider { position: relative; min-height: 64px; }

.b-slider_inner { position: relative; list-style: none; height: 100%; }
.b-slider_inner:after { display: table; clear: both; content: ''; }

.b-slider_inner > div { display: block; position: relative; overflow: hidden; height: auto; max-width: 100%; }
.b-slider_inner > div + div { display: none; }

.b-slider_inner img { display: block; max-width: 100%; -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; backface-visibility: hidden; }

.b-slider__neighbors .b-slider_item { opacity: .15; transition: opacity 650ms; }
.b-slider__neighbors .b-slider_item__current { opacity: 1; }

.b-slider.mouseDragMove,
.b-slider.mouseDragMove a { cursor: move !important; }

/* * * Slider :: arrows * * */
.b-slider_arrow { position: absolute; z-index: 25; top: 50%; margin-top: -25px; width: 50px; height: 50px; text-decoration: none; text-align: center; color: #000; background: #fff; box-shadow: 0 0 16px rgba(7, 7, 7, 0.1); transition: all 250ms; cursor: pointer; }
.b-slider_arrow:before { display: block; position: relative; width: inherit; height: inherit; font-size: 15px; line-height: 50px; }

.b-slider_arrow:hover { background: #ffcd32; box-shadow: 0 0 30px rgba(7, 7, 7, 0.3); }

.b-slider_arrow__prev { left: 0; }
.b-slider_arrow__next { right: 0; }

/* * * Slider :: dots * * */
.b-slider_dots { position: absolute; z-index: 5; left: 0; bottom: 10px; right: 0; white-space: nowrap; text-align: center; }
.b-slider_dots_item { display: inline-block; vertical-align: middle; margin: 0 3px; backface-visibility: hidden; }

.b-slider_dots_item_bullet { display: block; overflow: hidden; width: 8px; height: 8px; text-indent: 100000px; text-decoration: none; background: #e5e5e5; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; cursor: pointer; transition: all 250ms; -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; backface-visibility: hidden; }
.b-slider_dots_item_bullet:hover { background: #ffcd32; }
.b-slider_dots_item_bullet.b-slider_active { background: #ffcd32; }


/* -------------------- Slick plugin -------------------- */
.b-slick.slick-slider { position: relative; overflow: hidden; }

.b-slick.slick-slider .slick-list { margin-left: -10px; margin-right: -10px; }
.b-slick.slick-slider .slick-slide { margin-left: 10px; margin-right: 10px; border: none; }

.b-slick.slick-vertical .slick-list { margin-left: auto; margin-right: auto; margin-bottom: -20px; }
.b-slick.slick-vertical .slick-slide { margin-left: auto; margin-right: auto; margin-bottom: 20px; }

/* * * Slick :: arrows * * */
.b-slick_arrow { position: absolute; z-index: 25; top: 50%; margin-top: -25px; padding: 0; width: 50px; height: 50px; text-decoration: none; text-align: center; color: #000; background: #fff; border: none; box-shadow: 0 0 16px rgba(7, 7, 7, 0.1); transition: all 250ms; cursor: pointer; }
.b-slick_arrow:before { display: block; position: relative; width: inherit; height: inherit; font-size: 15px; line-height: 50px; transform-origin: 50% 50%; }

.b-slick_arrow:hover { background: #ffcd32; box-shadow: 0 0 30px rgba(7, 7, 7, 0.3); }

.b-slick_arrow__prev { left: 0; }
.b-slick_arrow__next { right: 0; }

.b-slick.slick-vertical .b-slick_arrow { left: 50%; top: auto; margin: 0 0 0 -25px; }
.b-slick.slick-vertical .b-slick_arrow:before { transform: rotate(90deg); }

.b-slick.slick-vertical .b-slick_arrow__prev { top: 0; }
.b-slick.slick-vertical .b-slick_arrow__next { bottom: 0; }


/* -------------------- UI modules -------------------- */
/* * * Tabs * * */
.js-init .js-tabs-wrapper { position: relative; border-top: 1px solid transparent; border-bottom: 1px solid transparent; transform: translateZ(0px); }

.js-init .js-tabs-page { position: absolute; z-index: -5; left: 0; top: 0; right: 0; visibility: hidden; opacity: 0; border-top: 1px solid transparent; border-bottom: 1px solid transparent; }
.js-init .js-tabs-page.opened { position: static; left: auto !important; top: auto !important; right: auto !important; visibility: visible; opacity: 1; }

.js-transition .js-tabs-page { transition: visibility 300ms ease, opacity 300ms ease; }

/* * * Accordions * * *
.js-accordion li > ul { visibility: hidden; opacity: 0; transition: opacity 250ms, visibility 250ms; }
.js-accordion li.opened > ul { visibility: visible; opacity: 1; }*/

/* * * Pockets * * */
.js-pocket-toggle { display: none; font: 400 14px 'Arial', sans-serif; cursor: pointer; transition: border 250ms, color 250ms; }
.js-pocket-toggle:hover { border-bottom-color: transparent; }

.js-pocket.active .js-pocket-box { position: relative; margin-bottom: 12px; }
.js-pocket.active .js-pocket-box-inner { /*margin-bottom: -12px;*/ }

.js-pocket.active .js-pocket-toggle { display: inline; }
