/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block
}

audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden], template {
    display: none
}

a {
    background-color: transparent
}

a:active, a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box
}

pre {
    overflow: auto
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button, select {
    text-transform: none
}

button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled], html input[disabled] {
    cursor: default
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    padding: 0
}

@font-face {
    font-family: ForcitGrotesk;
    src: url(../fonts/ForcitGrotesk1.eot);
    src: url(../fonts/ForcitGrotesk1.eot?#iefix) format("embedded-opentype"), url(../fonts/ForcitGrotesk1.woff) format("woff"), url(../fonts/ForcitGrotesk1.svg#ForcitGrotesk1) format("svg");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: ForcitGrotesk;
    src: url(../fonts/ForcitGrotesk1-Bold.eot);
    src: url(../fonts/ForcitGrotesk1-Bold.eot?#iefix) format("embedded-opentype"), url(../fonts/ForcitGrotesk1-Bold.woff) format("woff"), url(../fonts/ForcitGrotesk1-Bold.svg#ForcitGrotesk1-Bold) format("svg");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: ForcitGrotesk;
    src: url(../fonts/ForcitGrotesk1-BoldItalic.eot);
    src: url(../fonts/ForcitGrotesk1-BoldItalic.eot?#iefix) format("embedded-opentype"), url(../fonts/ForcitGrotesk1-BoldItalic.woff) format("woff"), url(../fonts/ForcitGrotesk1-BoldItalic.svg#ForcitGrotesk1-BoldItalic) format("svg");
    font-weight: 700;
    font-style: italic
}

@font-face {
    font-family: ForcitGrotesk;
    src: url(../fonts/ForcitGrotesk1-Italic.eot);
    src: url(../fonts/ForcitGrotesk1-Italic.eot?#iefix) format("embedded-opentype"), url(../fonts/ForcitGrotesk1-Italic.woff) format("woff"), url(../fonts/ForcitGrotesk1-Italic.svg#ForcitGrotesk1-Italic) format("svg");
    font-weight: 400;
    font-style: italic
}

.wrapper {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    max-width: 1040px;
    margin: 0 auto
}

.hidden {
    visibility: hidden
}

.news_feed .news_item .news_image, .page_header .bg, .scale_bg, .section_lift, .service_lift .img, .wrap.news_page .news_feed .news_item .news_image, .wrap.ruutiset_page .ruutiset_item .bg {
    background-size: cover;
    background-position: center center
}

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4
}

::selection {
    background: #b3d4fc;
    text-shadow: none
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0
}

audio, canvas, iframe, img, svg, video {
    vertical-align: middle
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

.browserupgrade {
    margin: .2em 0;
    background: #ccc;
    color: #000;
    padding: .2em 0
}

.hidden {
    display: none !important
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}

.invisible {
    visibility: hidden
}

.clearfix:after, .clearfix:before {
    content: " ";
    display: table
}

.clearfix:after {
    clear: both
}

@media print {
    *, :after, :before, :first-letter, :first-line {
        background: 0 0 !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important
    }

    a, a:visited {
        text-decoration: underline
    }

    a[href]:after {
        content: " (" attr(href) ")"
    }

    abbr[title]:after {
        content: " (" attr(title) ")"
    }

    a[href^="#"]:after, a[href^="javascript:"]:after {
        content: ""
    }

    blockquote, pre {
        border: 1px solid #999;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    img, tr {
        page-break-inside: avoid
    }

    img {
        max-width: 100% !important
    }

    h2, h3, p {
        orphans: 3;
        widows: 3
    }

    h2, h3 {
        page-break-after: avoid
    }
}

body {
    background-color: #fff;
    font-family: ForcitGrotesk, Helvetica, Arial, sans-serif
}

.wrap {
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding-top: 60px
}

a {
    color: inherit;
    text-decoration: none
}

.italic {
    font-style: italic
}

table {
    float: left;
    width: 100%;
    margin-bottom: 20px
}

table tr td {
    padding: 5px
}

.page_header {
    position: relative;
    z-index: 1;
    height: calc(100vh - 60px);
    min-height: 420px;
    max-height: 620px
}

.page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.page_header h1 {
    font-weight: 700;
    font-size: 3em;
    line-height: 1.2em;
    margin: 0 0 20px;
    text-align: center;
    color: #fff
}

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

.page_header p {
    font-size: 1.375em;
    margin: 0;
    text-align: center;
    color: #fff
}

.form_container .field {
    margin: 0 0 20px
}

.form_container textarea {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 100%;
    min-height: 100px;
    padding: 0 10px;
    border: 1px solid #d4d5d3;
    border-radius: 3px
}

.form_container input, .form_container select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    border: 1px solid #d4d5d3;
    border-radius: 3px
}

.form_container input[type=file] {
    width: auto;
    max-width: 300px;
    border: 0;
    padding: 0
}

.form_container label {
    display: block;
    width: 100%;
    height: 30px;
    line-height: 30px
}

.form_container input.action {
    display: block;
    width: 200px;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    opacity: 1;
    border: 0;
    border-radius: 0
}

.form_container input.action:hover {
    opacity: .9
}

.form_container .message.good {
    color: green
}

.form_container .message.bad {
    color: red
}

.notice_feed {
    z-index: 3;
    margin: -84px 0 70px;
    position: relative;
}

.products_feed {
    min-height: 340px;
    padding: 40px 0
}

.products_feed   .negative_margin {
    position: relative
}

.products_feed  .negative_margin h3 {
    margin: 0;
    padding: 0
}
.products_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -30px;
    margin: 0;
    padding: 6px 22px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    width: 132px;
    font-size: 1.125em
}

.products_feed  .negative_margin .label h3 {
    font-size: 1em
}

.products_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.products_feed .products_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    height: 320px;
    border-top: 12px solid #000;
    overflow: hidden
}

.products_feed .products_item .products_title {
    background-color: #cc0033;
}

.products_feed .products_item .products_title h4 {
    margin: 0;
    color: #fff;
    padding: 14px 38px;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1em;
}

.products_feed .products_item .products_content {
    min-height: 278px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.products_feed .products_item .products_image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-repeat: no-repeat;
}

.products_feed .products_item .products_description {
    padding: 40px;
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    z-index: 1;
}

.products_feed .products_item .products_image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.35);
    transition: 0.3s linear;
}

.products_feed .products_item:hover .products_image:before {
    background-color: transparent;
}

.references_feed {
    min-height: 340px;
    padding: 40px 0
}

.references_feed  .negative_margin {
    position: relative
}

.references_feed .negative_margin h3 {
    margin: 0;
    padding: 0
}
.references_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -30px;
    margin: 0;
    padding: 6px 22px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    width: 132px;
    font-size: 1.125em
}

.references_feed .negative_margin .label h3 {
    font-size: 1em
}

.references_feed .negative_margin .right_side {
    right: 0;
    background: #000
}

.references_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.references_feed .references_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    min-height: 340px;
    background: #f5f5f4;
    overflow: hidden
}

.references_feed .references_item .references_content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.references_feed .references_item .references_image {
    height: 200px;
    margin: 20px;
    background-color: #fff;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

.references_feed .references_item h4 {
    font-weight: 700;
    font-size: 1.25em;
    margin: 10px 0
}

.references_feed .references_item .references_text {
    padding: 20px 20px 50px
}

.references_feed .references_item .content {
    opacity: 0
}

.references_feed .references_item .references_link {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    line-height: 40px;
    z-index: 2;
    background: #f5f5f4
}

.references_feed .references_item .references_link .text {
    float: left;
    padding-left: 20px;
    font-style: italic
}

.references_feed .references_item .references_link .arrow {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    float: right;
    position: relative;
    padding-right: 20px
}

.references_feed .references_item .references_link:hover .arrow {
    left: 3px
}

.news_feed {
    min-height: 340px;
    padding: 40px 0
}

.news_feed .negative_margin {
    position: relative
}

.news_feed .negative_margin h3 {
    margin: 0;
    padding: 0
}

.news_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -30px;
    margin: 0;
    padding: 6px 22px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    width: 132px;
    font-size: 1.125em
}

.news_feed .negative_margin .label h3 {
    font-size: 1em
}

.news_feed .negative_margin .right_side {
    right: 0;
    background: #000
}

.news_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.news_feed .news_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    height: 320px;
    background: #f5f5f4;
    overflow: hidden
}

.news_feed .news_item .news_content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.news_feed .news_item .news_image {
    height: 160px
}

.news_feed .news_item h4 {
    font-weight: 700;
    font-size: 1.25em;
    margin: 10px 0
}

.news_feed .news_item .news_text {
    padding: 20px 20px 50px
}

.news_feed .news_item .date {
    font-size: .875em;
    color: #c03
}

.news_feed .news_item .content {
    opacity: 0
}

.news_feed .news_item .news_link {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    line-height: 40px;
    z-index: 2;
    background: #f5f5f4
}

.news_feed .news_item .news_link .text {
    float: left;
    padding-left: 20px;
    font-style: italic
}

.news_feed .news_item .news_link .arrow {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    float: right;
    position: relative;
    padding-right: 20px
}

.news_feed .news_item .news_link:hover .arrow {
    left: 3px
}

.jobs_feed {
    padding: 40px 0;
    margin-bottom: 40px
}

.jobs_feed .negative_margin {
    position: relative
}

.jobs_feed .negative_margin h3 {
    margin: 0;
    padding: 0
}

.jobs_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -15px;
    margin: 0;
    padding: 0 10px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    font-size: 1.125em
}

.jobs_feed .negative_margin .label h3 {
    font-size: 1em
}

.jobs_feed .negative_margin .right_side {
    right: 0;
    background: #000
}

.jobs_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.jobs_feed .job_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
    padding: 40px 0 20px;
    background: #fff;
    overflow: hidden
}

.jobs_feed .job_item a {
    display: block
}

.jobs_feed .job_item h4 {
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    font-weight: 700;
    color: #c03;
    font-size: 1.25em;
    margin: 5px 0 0
}

.jobs_feed .job_item .date {
    font-size: .875em;
    color: #c03
}

.jobs_feed .job_item .job_link {
    display: block;
    height: 40px;
    line-height: 40px;
    z-index: 2;
    margin-top: 20px
}

.jobs_feed .job_item .job_link .text {
    float: left;
    font-style: italic
}

.jobs_feed .job_item .job_link .arrow {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    float: left;
    position: relative;
    margin: 0 0 0 10px
}

.all-jobs_feed {
    padding: 40px 0
}

.all-jobs_feed .negative_margin {
    position: relative
}

.all-jobs_feed .negative_margin h3 {
    margin: 0;
    padding: 0
}

.all-jobs_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -40px;
    margin: 0;
    padding: 6px 22px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    min-width: 132px;
    font-size: 1.125em;
    width: auto;
}

.all-jobs_feed .negative_margin .label h3 {
    font-size: 1em
}

.all-jobs_feed .negative_margin .right_side {
    right: 0;
    background: #000
}

.all-jobs_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.all-jobs_feed .all-jobs_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 30px auto 40px;
    overflow: hidden;
}

.all-jobs_feed .all-jobs_item .all-jobs_item_company {
     color: #222;
     line-height: 14px;
     font-size: 16px;
     font-weight: 400
}

.all-jobs_feed .all-jobs_item .all-jobs_item_position {
    color: #cc0033;
    font-size: 20px;
    font-weight: 700;
    margin: 7px 0;
    display: block;
    line-height: 1.2em;
}

.all-jobs_feed .all-jobs_item .all-jobs_item_description {
    color: #222;
    font-size: 16px;
    line-height: 1.2em;
    font-weight: 400
}

.partners_feed {
    min-height: 340px;
    padding: 40px 0
}

.partners_feed .negative_margin {
    position: relative
}

.partners_feed .negative_margin h3 {
    margin: 0;
    padding: 0
}

.partners_feed .negative_margin .label {
    display: block;
    position: absolute;
    height: 30px;
    top: -50px;
    margin: 0;
    padding: 6px 22px;
    line-height: 30px;
    color: #fff;
    z-index: 4;
    width: 132px;
    font-size: 1.125em
}

.partners_feed .negative_margin .label h3 {
    font-size: 1em
}

.partners_feed .negative_margin .right_side {
    right: 0;
    background: #000
}

.partners_feed .negative_margin .left_side {
    left: 0;
    background: #c03
}

.partners_feed .partners_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    height: 189px;
    overflow: hidden;
    background: #f5f5f4;
}

.partners_feed .partners_item .partners_image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

.services_feed {
    min-height: 340px;
    padding: 0;
    max-width: 1040px;
    margin: -68px auto 170px;
}

.services_feed .services_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    height: 320px;
    overflow: hidden;
    border-top: 12px solid #000;
    z-index: 1;
}

.services_feed .services_item .services_title {
    margin: 0px;
    background: #cc0033;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 9px 40px;
    line-height: 1.2;
}

.services_feed .services_item h4 {
    font-weight: 700;
    margin: 0px 0;
    font-size: 32px;
    color: #fff;
}

.services_feed .services_item .services_content {
    position: absolute;
    top: 56px;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 40px;
}

.services_feed .services_item .services_content:before {
    content: "";
    background-color: rgba(0, 0, 0, 0.35);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.services_feed .services_item .services_image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-size: cover;
 }

.services_image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.35);
}

.services_feed .services_item .services_description {
    z-index: 1;
    font-size: 32px;
    font-weight: 400;
    color: #fff;
}

.services_feed .services_item .services_item_btn {
    z-index: 1;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    color: #fff;
    border: 1px solid #ffffff;
    padding: 8px 18px;
    cursor: pointer;
}

@media screen and (max-width: 800px) {
    .services_feed .services_item .services_item_btn {
        font-size: 20px;
        line-height: 20px;
        padding: 14px 28px;
    }
}

@media screen and (max-width: 450px) {
    .wrap.explosives_landing_page .header_notice .header_notice_item {
        flex-direction: column;
    }
    .wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_img {
        height: 100px !important;
        width: auto !important;
        border-right: none !important;
    }
    .wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content {
        width: 100%;
    }
}

@media screen and (min-width: 620px) {

    .products_feed .products_item {
        width: calc(50% - 8px);
        max-width: 100%;
        float: left;
        margin-right: 15px;
    }

    .references_feed .references_item {
        width: 50%;
        max-width: 100%;
        float: left;
        min-height: 350px;
    }

    .news_feed .news_item {
        width: 50%;
        max-width: 100%;
        float: left;
    }

    .all-jobs_feed .all-jobs_item {
        width: 25%;
        max-width: 100%;
        float: left;
        margin-top: 30px;
    }

    .partners_feed .partners_item {
        width: 25%;
        max-width: 100%;
        float: left
    }

    .services_feed .services_item {
        width: calc(50% - 8px);
        max-width: 100%;
        float: left;
        margin-right: 15px;
    }
}
@media screen and (max-width: 1040px) {
    .wrap.explosives_landing_page .page_header .header_content {
        width: 100vw !important;
    }
    .wrap.explosives_landing_page .header_notice {
        flex-wrap: wrap !important;
    }
    .wrap.explosives_landing_page .header_notice .header_notice_item {
        width: 100% !important;
        margin-bottom: 15px;
    }

    .section_explosives .services_item {
        width: 100% !important;
        margin-bottom: 15px;
        max-width: 100%;
    }
    .services_feed .services_item {
        min-height: 400px;
    }
}
@media screen and (max-width: 800px) and (min-width: 620px) {
    .products_feed .products_item:nth-child(2n+1) {
        margin-right: 0;
    }
    .section_explosives .page_header .header_content {
        margin: 80px auto !important;
    }
}

@media screen and (min-width: 620px) {
    .news_feed .news_item {
        width: 50%;
        max-width: 100%;
        float: left
    }
}

@media screen and (min-width: 800px) {
    .wrap {
        padding-top: 80px
    }

    .page_header .vcenter {
        width: 800px;
        -webkit-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%)
    }

    .page_header h1 {
        font-size: 4em
    }

    .page_header .vcenter {
        position: absolute;
        left: 20px;
        right: 20px;
        top: 50%;
        -webkit-transform: translateX(0%) translateY(-50%);
        -moz-transform: translateX(0%) translateY(-50%);
        -ms-transform: translateX(0%) translateY(-50%);
        -o-transform: translateX(0%) translateY(-50%);
        transform: translateX(0%) translateY(-50%)
    }

    .products_feed .products_item {
        width: calc(33.33% - 10px);
        height: 340px;
        margin-right: 15px;
    }
    .products_feed .products_item:last-of-type {
        margin-right: 0;
    }

    .references_feed .references_item {
        width: 25%;
        height: 340px;
    }
    .news_feed .negative_margin .label {
        top: -28px
    }

    .news_feed .news_item {
        width: 25%;
        height: 340px
    }

    .news_feed .news_item:hover, .news_feed .news_item:hover .news_link {
        background: #e4e4e3
    }

    .jobs_feed .job_item {
        width: 33.33%;
        max-width: 100%;
        float: left
    }

    .jobs_feed .job_item:nth-of-type(2) {
        padding-left: 20px;
        padding-right: 20px
    }

    .all-jobs_feed .all-jobs_item {
        width: calc(25% - 12px);
        max-width: 100%;
        margin-top: 36px;
        margin-right: 15px;
    }

    .all-jobs_feed .all-jobs_item:last-of-type {
        margin-right: 0;
    }

    .partners_feed .partners_item {
        width: calc(16.667% - 12.5px);
        height: 161px;
        margin-right: 15px;
    }
    .partners_feed .partners_item:last-of-type {
        margin-right: 0;
    }

    .services_feed .services_item {
        width: calc(50% - 8px);
        height: 371px;
        margin-right: 15px;
    }
    .services_feed .services_item:last-of-type {
        margin-right: 0;
    }
}

.right_side .sidebarblock {
    margin-bottom: 40px
}

.right_side .sidebarblock .name {
    font-weight: 700
}

.right_side .sidebarblock a, .right_side .sidebarblock a:visited {
    text-decoration: underline;
    cursor: pointer
}

.right_side .sidebarblock a:hover, .right_side .sidebarblock a:visited:hover {
    color: #c03
}

.right_side .sidebarblock.pageList a:link, .right_side .sidebarblock.pageList a:visited {
    display: block;
    height: 25px;
    line-height: 25px;
    padding: 0 0 5px;
    margin: 0 0 5px;
    border-bottom: 1px solid #d4d5d3
}

.right_side .sidebarblock.pageList a:link.current, .right_side .sidebarblock.pageList a:visited.current {
    font-weight: 700
}

.right_side .sidebarblock.pageList h3 a:link, .right_side .sidebarblock.pageList h3 a:visited {
    display: inline;
    padding: 0;
    margin: 0;
    border: none;
    text-decoration: none
}

.right_side .sidebarblock.pageList h3 a:link:hover, .right_side .sidebarblock.pageList h3 a:visited:hover {
    color: #fff
}

.login {
    margin: 0 auto;
    max-width: 320px
}

.wrap.error .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.error .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 60px 0 0
}

.wrap.error .page_header .header_content {
    position: relative;
    z-index: 2
}

.header {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    height: 60px;
    background: #fff;
    color: #000;
    text-align: center;
    z-index: 5
}

.header .logo {
    display: block;
    position: absolute;
    left: 10px;
    top: 14px;
    width: 140px;
    height: 31px;
    margin-left: 0;
    z-index: 3
}

.header .logo svg {
    display: block;
    width: 140px;
    height: 31px
}

.header .logo #consulting, .header .logo #defence, .header .logo #explosives {
    display: none
}

.header .navi_trigger {
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    right: 10px;
    top: 15px;
    z-index: 3
}

.header .navi_trigger svg {
    display: block;
    width: 25px;
    height: 25px;
    margin: 3px 3px 2px 2px
}

.header .navi_trigger svg path {
    fill: #000
}

.header .navi {
    position: static;
    height: 60px;
    background: #fff;
    z-index: 2;
    margin: 0 auto
}

.header .menu_top {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /*display: none;*/
    position: fixed;
    top: 60px;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 20px 0 0 50px;
    margin: 0;
    z-index: 4;
    background: #fff;
    visibility: hidden;
}

.header .menu_top a {
    display: block;
    position: relative;
    text-align: left;
    height: 40px;
    line-height: 40px;
    padding: 0;
    margin: 0;
    font-weight: 700;
    font-size: 1em
}

.header .menu_top a.current, .header .menu_top a.section {
    color: #c03
}

.header .menu_top.active {
    display: block;
    z-index: 10;
    visibility: visible;
}

.header .menu_sub {
    display: none;
    position: relative;
    background: #fff;
    z-index: 1
}

.header .menu_sub .bg {
    display: none
}

.header .menu_sub .menu {
    position: relative;
    z-index: 2;
    margin: 0 auto;
    color: #000
}

.header .menu_sub .menu a {
    display: block;
    position: relative;
    height: 40px;
    line-height: 40px;
    padding-left: 20px
}

.header .menu_sub.active {
    display: block
}

.wrap.section_forcit .header .logo #consulting, .wrap.section_forcit .header .logo #defence, .wrap.section_forcit .header .logo #explosives {
    display: none
}

.wrap.section_explosives .header .navi {
    background: #000
}

.wrap.section_explosives .header .menu_top {
    background: #fff;
    overflow-x: auto;
}

.wrap.section_explosives .header .logo #forcit {
    display: none
}

.wrap.section_explosives .header .logo #explosives {
    display: block
}

.wrap.section_explosives .header .logo #consulting, .wrap.section_explosives .header .logo #defence {
    display: none
}

.wrap.section_explosives .header .navi_trigger svg path {
    fill: #fff
}

.wrap.section_consulting .header .navi {
    background: #000
}

.wrap.section_consulting .header .menu_top {
    background: #fff
}

.wrap.section_consulting .header .logo #explosives, .wrap.section_consulting .header .logo #forcit {
    display: none
}

.wrap.section_consulting .header .logo #consulting {
    display: block
}

.wrap.section_consulting .header .logo #defence {
    display: none
}

.wrap.section_consulting .header .navi_trigger svg path {
    fill: #fff
}

.wrap.section_defence .header .navi {
    background: #000
}

.wrap.section_defence .header .menu_top {
    background: #fff
}

.wrap.section_defence .header .logo #consulting, .wrap.section_defence .header .logo #explosives, .wrap.section_defence .header .logo #forcit {
    display: none
}

.wrap.section_defence .header .logo #defence {
    display: block
}

.wrap.section_defence .header .navi_trigger svg path {
    fill: #fff
}

@media screen and (min-width: 800px) {
    .header {
        height: 80px
    }

    .header .logo {
        left: 10px;
        top: 24px
    }

    .header .navi_trigger {
        display: none
    }

    .header .navi {
        height: 80px
    }

    .header .menu_top {
        display: block;
        position: relative;
        height: 80px;
        line-height: 80px;
        max-width: 1180px;
        padding: 0 200px 0 18%;
        margin: 0 auto;
        z-index: 2;
        top: 0;
        visibility: visible;
    }

    .header .menu_top a {
        float: left;
        height: 68px;
        line-height: 68px;
        padding: 12px 0 0;
        margin: 0 12px
    }

    .header .menu_top a.current:after, .header .menu_top a.section:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 12px;
        background: #c03
    }

    .header .menu_sub {
        display: block;
        position: relative;
        height: 60px;
        background: 0 0;
        z-index: 1
    }

    .header .menu_sub .bg {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background: #c03;
        opacity: .8;
        z-index: 1
    }

    .header .menu_sub .menu {
        position: relative;
        z-index: 2;
        height: 60px;
        max-width: 1040px;
        margin: 0 auto;
        color: #fff
    }

    .header .menu_sub .menu a {
        display: block;
        position: relative;
        float: left;
        height: 52px;
        line-height: 56px;
        padding-bottom: 8px;
        padding-left: 0;
        margin-right: 30px;
        margin-left: 10px
    }

    .header .menu_sub .menu a.current, .header .menu_sub .menu a.section {
        color: #fff
    }

    .header .menu_sub .menu a.current:after, .header .menu_sub .menu a.section:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 8px;
        background: #fff;
        color: #fff
    }

    .wrap.section_explosives .header .menu_top, .wrap.section_explosives .header .navi {
        background: #000
    }

    .wrap.section_explosives .header .menu_top a {
        color: #fff
    }

    .wrap.section_explosives .header .menu_top a.current, .wrap.section_explosives .header .menu_top a.section {
        color: #c03
    }

    .wrap.section_explosives a.current:after, .wrap.section_explosives a.section:after {
        background: #c03;
        color: #c03
    }

    .wrap.section_consulting .header {
        border-bottom: 12px solid #c03
    }

    .wrap.section_consulting .header .menu_top, .wrap.section_consulting .header .navi {
        background: #000
    }

    .wrap.section_consulting .header .menu_top a {
        color: #fff
    }

    .wrap.section_consulting .header .menu_top a.current, .wrap.section_consulting .header .menu_top a.section {
        color: #c03
    }

    .wrap.section_consulting .header .menu_sub {
        display: none
    }

    .wrap.section_consulting a.current:after, .wrap.section_consulting a.section:after {
        background: #c03;
        color: #c03
    }

    .wrap.section_defence .header .menu_top, .wrap.section_defence .header .navi {
        background: #000
    }

    .wrap.section_defence .header .menu_top a {
        color: #fff
    }

    .wrap.section_defence .header .menu_top a.current, .wrap.section_defence .header .menu_top a.section {
        color: #c03
    }

    .wrap.section_defence .header .menu_sub .bg {
        background: #2b3816
    }

    .wrap.section_defence a.current:after, .wrap.section_defence a.section:after {
        background: #c03;
        color: #c03
    }
}

@media screen and (min-width: 900px) {
    .header .menu_top a {
        margin: 0 20px
    }
}

@media screen and (min-width: 1040px) {
    .header .logo {
        left: 50%;
        top: 24px;
        /*margin-left: -520px*/
    }

    .header .menu_top a {
        margin: 0 20px;
    }

    .header .menu_sub .menu a {
        margin-left: 0;
        margin-right: 40px
    }
}

@media screen and (min-width: 1150px) {
    .header .logo {
        left: 20px !important;
        margin-left: calc((100% - 1040px) / 2);
    }
}

@media screen and (min-width: 1200px) {
    .header .logo {
        left: 0 !important;
    }
}

@media screen and (min-width: 1050px) {
    .header .logo {
        /*margin-left: 0;*/
        left: 60px;
    }
}

@media screen and (min-width: 1000px) {
    .header .logo {
        left: 20px;
    }
}

#geoMenu {
    display: flex;
    position: absolute;
    z-index: 3;
    top: 0;
    right: 50px;
    height: 100%;
    font-weight: 700;
    line-height: 70px;
    text-align: left
}

#geoMenu ul {
    height: 100%;
    width: 40px;
    margin: 0 10px 0 0;
    padding: 0
}

#geoMenu ul li {
    display: none;
    float: left;
    width: 120px;
    height: 100%;
    list-style: none;
    margin: 0;
    padding: 0 10px;
    background-color: #fff
}

#geoMenu ul li img {
    width: 16px;
    margin: 0 10px 0 0
}

#geoMenu ul li a, #geoMenu ul li a:visited {
    float: left;
    width: 100%;
    height: 100%
}

#geoMenu ul li a:hover, #geoMenu ul li a:visited:hover {
    color: #c03
}

#geoMenu ul li:first-child {
    width: 100%;
    overflow: hidden
}

#geoMenu ul li.current, #geoMenu ul li:first-child, #geoMenu ul:hover li {
    display: block
}

.section_consulting #geoMenu ul li, .section_defence #geoMenu ul li, .section_explosives #geoMenu ul li {
    color: #fff;
    background-color: #000
}

@media screen and (min-width: 1150px) {
    #geoMenu ul {
    width: 120px;
    }

    #geoMenu {
    height: 60px;
    right: 0;
    margin-top: 12px
    }

    #geoMenu ul li {
    width: 100%
    }
}

@media screen and (max-width: 1150px) {
    #geoMenu {
        right: 60px;
        margin-top: 10px;
        height: calc(100% - 10px);
        margin-left: 0;
    }

    .header .logo, .header .logo svg {
        width: 100px;
    }
}

@media screen and (max-width: 800px) {
    #geoMenu {
        margin-top: 0;
        height: 58px;
        line-height: 60px;
    }
}

.footer {
    background: #242325;
    color: #fff
}

.footer .footer_logo {
    display: block;
    position: absolute;
    left: 10px;
    top: 14px;
    width: 140px;
    height: 31px;
    margin-left: 0;
    z-index: 3
}

.footer .footer_logo svg {
    display: block;
    width: 140px;
    height: 31px
}

.footer .footer_logo svg * {
    fill: #fff
}

.footer .top {
    position: relative;
    padding: 70px 0
}

.footer .top .section_navi {
    width: 200px;
    margin: 20px auto;
    text-align: center
}

.footer .top .section_navi a {
    font-weight: 700;
    display: inline-block;
    border-bottom: 2px solid #fff;
    margin: 0 0 10px
}

.footer .top .section_navi a.Forcit {
    border-color: #fff
}

.footer .top .section_navi a.Explosives {
    border-color: #c03
}

.footer .top .section_navi a.Consulting {
    border-color: #2b3816
}

.footer .top .section_navi a.Defence {
    border-color: #666
}

.footer .top .section_navi div a {
    display: block;
    margin: 0;
    border: 0
}

.footer .top .some_links {
    position: absolute;
    right: 10px;
    top: 20px;
    width: 140px;
    height: 25px
}

.footer .top .some_links a {
    display: block;
    float: right;
    margin: 0 0 0 20px
}

.footer .top .some_links .facebook_logo {
    width: 11px;
    height: 24px
}

.footer .top .some_links .facebook_logo svg {
    display: block;
    width: 11px;
    height: 24px
}

.footer .top .some_links .facebook_logo svg path {
    fill: #fff
}

.footer .top .some_links .linkedin_logo {
    width: 25px;
    height: 25px
}

.footer .top .some_links .linkedin_logo svg {
    display: block;
    width: 25px;
    height: 25px
}

.footer .top .some_links .twitter_logo {
    width: 37px;
    height: 30px;
    overflow: hidden;
    margin: 0
}

.footer .top .some_links .twitter_logo svg {
    display: block;
    position: relative;
    width: 45px;
    height: 45px;
    top: -10px;
    left: 0
}

.footer .top .some_links .twitter_logo svg path {
    fill: #fff
}

.footer .badge {
    float: left;
    width: 100%;
    margin-top: 10px;
    margin-bottom: 40px;
    text-align: center
}

.footer .badge img {
    max-width: 100%
}

.footer .bottom {
    padding: 20px 0;
    min-height: 40px;
    line-height: 40px;
    background: #000
}

.footer .bottom a, .footer .bottom span {
    display: block;
    text-align: center
}

.wrap.section_forcit .footer .footer_logo svg #forcit {
    display: block
}

.wrap.section_consulting .footer .footer_logo svg #forcit, .wrap.section_forcit .footer .footer_logo svg #consulting, .wrap.section_forcit .footer .footer_logo svg #defence, .wrap.section_forcit .footer .footer_logo svg #explosives {
    display: none
}

.wrap.section_consulting .footer .footer_logo svg #consulting {
    display: block
}

.wrap.section_consulting .footer .footer_logo svg #defence, .wrap.section_consulting .footer .footer_logo svg #explosives, .wrap.section_explosives .footer .footer_logo svg #consulting, .wrap.section_explosives .footer .footer_logo svg #forcit {
    display: none
}

.wrap.section_explosives .footer .footer_logo svg #explosives {
    display: block
}

.wrap.section_defence .footer .footer_logo svg #consulting, .wrap.section_defence .footer .footer_logo svg #explosives, .wrap.section_defence .footer .footer_logo svg #forcit, .wrap.section_explosives .footer .footer_logo svg #defence {
    display: none
}

.wrap.section_defence .footer .footer_logo svg #defence {
    display: block
}

@media screen and (min-width: 800px) {
    .footer {
        background: #242325;
        color: #fff
    }

    .footer .wrapper {
        padding: 0
    }

    .footer .top {
        margin: 0 auto;
        max-width: 1040px
    }

    .footer .top .some_links {
        top: 65px
    }

    .footer .top .footer_navi {
        padding: 0 200px
    }

    .footer .top .section_navi {
        float: left;
        width: 20%;
        text-align: left;
        margin: 0
    }

    .footer .footer_logo {
        left: 10px;
        top: 60px
    }

    .footer .bottom {
        padding: 0
    }

    .footer .bottom a {
        float: right;
        margin-left: 40px
    }

    .footer .bottom span {
        float: left
    }

    .footer .badge {
        position: absolute;
        right: 10px;
        top: 120px;
        width: 140px;
        margin-top: 0
    }
}

@media screen and (min-width: 1040px) {
    .footer .top {
        margin: 0 auto;
        max-width: 1040px
    }

    .footer .top .footer_navi {
        padding: 0 80px 0 200px
    }

    .footer .some_links a {
        margin-left: 25px
    }

    .footer .footer_logo {
        left: 50%;
        top: 60px;
        margin-left: -520px
    }

    .footer .footer_navi {
        margin: 0 auto;
        padding: 0 140px
    }
}

@media screen and (min-width: 1050px) {
    .footer .footer_logo {
        margin-left: -530px
    }
}

.wrap.landing_page .page_header {
    height: auto
}

.wrap.landing_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1
}

.wrap.landing_page .page_header .vcenter {
    position: relative;
    margin: 40px 0;
    padding: 0 10px;
    z-index: 2
}

.section_lifts {
    position: relative;
    z-index: 2;
    min-height: 320px;
    margin-bottom: 0
}

.section_lift {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-position: top center;
    padding: 40px;
    margin: 40px auto 60px;
    color: #fff;
    position: relative;
    min-height: 320px
}

.section_lift .brand_color_bar {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: -20px;
    bottom: 100%;
    z-index: 2;
    -webkit-transition: top .15s ease-out;
    -moz-transition: top .15s ease-out;
    transition: top .15s ease-out
}

.section_lift .brand_color_bg {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    opacity: .4
}

.section_lift h2 {
    font-weight: 700;
    font-size: 2em;
    margin: 0 0 10px;
    position: relative;
    z-index: 2
}

.section_lift p {
    font-size: 1.125em;
    position: relative;
    z-index: 2
}

.section_lift a {
    display: block;
    position: absolute;
    right: 20px;
    bottom: 20px;
    margin: 0;
    border: 1px solid #fff;
    padding: 10px 20px;
    z-index: 2
}

.section_lift:hover .brand_color_bar {
    top: -40px
}

@media screen and (min-width: 800px) {
    .negative_margin {
        margin: 0 -10px
    }

    .wrap.landing_page .page_header {
        height: calc(100vh - 60px);
        max-height: 600px
    }

    .wrap.landing_page .page_header .vcenter {
        position: absolute;
        width: 800px;
        left: 50%;
        top: 50%;
        color: #fff;
        text-align: center;
        margin: 0;
        padding: 0;
        -webkit-transform: translateX(-50%) translateY(-50%);
        -moz-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        -o-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%)
    }

    .section_lifts {
        margin-bottom: 70px
    }

    .section_lift {
        width: 33.33%;
        height: 100%;
        float: left;
        margin: 0;
        min-height: 340px
    }

    .section_lift .brand_color_bar {
        display: block
    }

    .section_lift:first-child {
        margin: 0
    }
}

.wrap.page .page_header {
    height: auto;
    min-height: 375px
}

.wrap.page .page_header h1 {
    line-height: 1em;
    hyphens: none;
    padding: 0 10px;
}

.wrap.page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.page .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 60px auto
}

.wrap.page .two_column {
    margin: 60px 0
}

.wrap.page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.page .two_column .left_side p {
    margin: 0 0 20px
}

.wrap.page .two_column .left_side p img.center, .wrap.page .two_column .left_side p img.left, .wrap.page .two_column .left_side p img.leftAlone {
    float: left;
    margin: 10px 10px 10px 0
}

.wrap.page .two_column .left_side p img.right {
    float: right;
    margin: 10px 0 10px 10px
}

.wrap.page .two_column .left_side a, .wrap.page .two_column .left_side a:visited {
    text-decoration: underline
}

.wrap.page .two_column .left_side a:hover, .wrap.page .two_column .left_side a:visited:hover {
    color: #c03
}

.wrap.page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.page .two_column .right_side .sidebarblock {
    margin-bottom: 40px
}

.wrap.page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.page .two_column .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

@media screen and (min-width: 800px) {
        .wrap.page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 800px;
        margin: 120px auto 60px
    }

    .wrap.page .two_column .left_side {
        padding: 0 10px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.page .two_column .right_side {
        padding: 0 0 0 10px;
        width: 30%;
        float: right
    }

    .section_explosives .page_header .header_content {
        max-width: 1040px !important;
        margin: 168px auto 60px !important;
    }

    .section_explosives .page_header .header_content h1 {
        font-size: 48px;
        font-weight: 700;
        line-height: 40px;
    }

    .section_explosives .page_header .bg {
        background-position: 50% 80%;
        background-size: cover;
        background-repeat: no-repeat;
    }
}

.wrap.history_page .page_header {
    height: auto;
    min-height: 375px
}

.wrap.history_page .page_header h1 {
    line-height: 1em
}

.wrap.history_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.history_page .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 60px auto
}

.wrap.history_page .two_column {
    margin: 60px 0
}

.wrap.history_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.history_page .two_column .left_side .history_item {
    margin: 0 0 60px
}

.wrap.history_page .two_column .left_side .history_item h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #c03;
    font-weight: 700;
    margin: 0 0 20px
}

.wrap.history_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.history_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.history_page .two_column .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

.wrap.history_page .two_column .right_side .sidebarblock a {
    display: block;
    height: 25px;
    line-height: 25px;
    padding: 0 0 5px;
    margin: 0 0 5px;
    border-bottom: 1px solid #d4d5d3
}

.wrap.history_page .two_column .right_side .sidebarblock a.current {
    font-weight: 700
}

@media screen and (min-width: 800px) {
    .wrap.history_page .page_header .header_content {
        position: relative;
        z-index: 2;
        margin: 100px auto 60px
    }

    .wrap.history_page .two_column .left_side {
        padding: 0 10px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.history_page .two_column .right_side {
        padding: 0 0 0 10px;
        width: 30%;
        float: right
    }
}

.wrap.section_consulting .page_header {
    height: auto;
    min-height: 375px
}

.wrap.section_consulting .page_header h1 {
    line-height: 1em
}

.wrap.section_consulting .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.section_consulting .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 60px auto
}

.wrap.section_consulting .map_wrapper {
    padding: 0 10px;
    height: 350px
}

.wrap.section_consulting .map_wrapper #map_canvas {
    height: 350px
}

.wrap.section_consulting .consultants_feed {
    margin: 60px 0
}

.wrap.section_consulting .consultants_feed .page_content {
    text-align: center;
    max-width: 620px;
    margin: 0 auto
}

.wrap.section_consulting .consultants_feed .page_content p {
    font-size: 1.375em
}

.wrap.section_consulting .consultants_column h3 {
    color: #c03;
    font-weight: 700;
    font-size: 1.375em;
    line-height: 50px
}

.wrap.section_consulting .consultant_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 0 20px;
    border: 1px solid #ededee
}

.wrap.section_consulting .consultant_item .consultant_logo {
    display: block;
    margin: 20px auto;
    width: 100%;
    max-width: 200px;
    height: auto
}

.wrap.section_consulting .consultant_item .content {
    padding: 10px;
    background: #ededee
}

.wrap.section_consulting .consultant_item .content a {
    display: block;
    margin: 20px 0 0;
    font-weight: 700
}

@media screen and (min-width: 800px) {
    .wrap.section_consulting .page_header .header_content {
        position: relative;
        z-index: 2;
        margin: 100px auto 60px
    }

    .wrap.section_consulting .map_wrapper {
        padding: 0
    }

    .wrap.section_consulting .consultants_feed {
        margin: 60px 0
    }

    .wrap.section_consulting .consultants_column {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 33.33%;
        float: left;
        padding: 0 10px
    }
}

.wrap.products_page .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.products_page .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 0
}

.wrap.products_page .page_header .header_content {
    position: relative;
    z-index: 2
}

.wrap.products_page .two_column {
    margin: 60px 0
}

.wrap.products_page .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.products_page .left_side .search {
    border-bottom: 2px solid #c9cac8;
    margin-bottom: 20px;
    position: relative
}

.wrap.products_page .left_side .search input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    border: 0;
    width: 100%;
    padding: 5px 10px 5px 35px;
    height: 30px;
    line-height: 30px
}

.wrap.products_page .left_side .search svg {
    display: block;
    position: absolute;
    left: 5px;
    top: 5px;
    width: 20px;
    height: 20px
}

.wrap.products_page .left_side .category_label {
    height: 40px;
    line-height: 40px;
    border-bottom: 4px solid #000;
    margin-top: 20px
}

.wrap.products_page .left_side .filter_item {
    display: block;
    height: 40px;
    line-height: 40px;
    padding: 0 40px 0 20px;
    margin: 0 4px 4px 0;
    float: left;
    color: #fff;
    position: relative;
    background: #c9cac8
}

.wrap.products_page .left_side .filter_item svg {
    display: none;
    position: absolute;
    right: 10px;
    top: 12px;
    width: 15px;
    height: 15px
}

.wrap.products_page .left_side .filter_item svg line {
    stroke: #fff;
    stroke-width: 10
}

.wrap.products_page .left_side .filter_item.active:hover svg {
    display: block
}

.wrap.products_page .left_side .product_item {
    padding: 10px;
    font-size: 1em;
    line-height: 1em;
    min-height: 20px;
    background: #fff
}

.wrap.products_page .left_side .product_item .product_link {
    display: block;
    width: 100%;
    margin: 0
}

.wrap.products_page .left_side .product_item .file_link, .wrap.products_page .left_side .product_item .filler {
    font-size: .85em;
    display: block;
    float: left;
    margin: 10px 10px 0 0;
    font-style: italic
}

.wrap.products_page .left_side .product_item .file_link.empty {
    text-decoration: line-through;
    pointer-events: none;
    color: #fff
}

.wrap.products_page .left_side .product_item:nth-child(odd) {
    background: #efefef
}

.wrap.products_page .left_side .product_item:nth-child(odd) .file_link.empty {
    color: #efefef
}

.wrap.products_page .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.products_page .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px
}

.wrap.products_page .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

@media screen and (min-width: 800px) {
    .wrap.products_page .page_header h1 {
        text-align: left
    }

    .wrap.products_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 1040px;
        margin: 60px auto 0
    }

    .wrap.products_page .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.products_page .left_side .product_item .product_link {
        width: auto;
        float: left
    }

    .wrap.products_page .left_side .product_item .file_link {
        font-size: 1em;
        float: right;
        margin: 0
    }

    .wrap.products_page .left_side .product_item .file_link:last-child {
        margin: 0 20px 0 0
    }

    .wrap.products_page .right_side {
        padding: 0 0 0 20px;
        width: 30%;
        float: right
    }

    .wrap.products_page .sidebarblock {
        margin: 0 0 40px
    }
}

.wrap.single_product_page .page_header {
    height: auto;
    min-height: 200px
}

.wrap.single_product_page .page_header h1 {
    line-height: 1em
}

.wrap.single_product_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1
}

.wrap.single_product_page .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 620px;
    margin: 60px auto
}

.wrap.single_product_page .two_column {
    margin: 60px 0
}

.wrap.single_product_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.single_product_page .two_column .left_side p {
    margin: 0 0 20px
}

.wrap.single_product_page .two_column .left_side .photo {
    margin-top: 20px
}

.wrap.single_product_page .two_column .left_side .photo img {
    float: left;
    width: 100%;
    margin: 0 0 20px
}

.wrap.single_product_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.single_product_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.single_product_page .two_column .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

.wrap.single_product_page .product_downloads a {
    display: block
}

@media screen and (min-width: 800px) {
    .wrap.single_product_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 620px;
        margin: 120px auto 60px
    }

    .wrap.single_product_page .two_column .left_side {
        padding: 0 10px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.single_product_page .two_column .right_side {
        padding: 0 0 0 10px;
        width: 30%;
        float: right
    }
}

.wrap.jobs_page .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.jobs_page .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 0
}

.wrap.jobs_page .page_header .header_content {
    position: relative;
    z-index: 2
}

.wrap.jobs_page .page_content p {
    margin: 0 0 20px
}

.wrap.jobs_page .jobs_item {
    position: relative;
    margin: 0 0 40px
}

.wrap.jobs_page .jobs_item .date {
    display: block;
    font-size: .875em;
    color: #666;
    margin: 0 0 5px;
    height: 20px;
    line-height: 20px
}

.wrap.jobs_page .jobs_item .location {
    display: block;
    margin: 0 0 5px;
    height: 20px;
    line-height: 20px
}

.wrap.jobs_page .jobs_item a {
    display: block;
    margin: 10px 0 5px;
    font-weight: 700
}

.wrap.jobs_page .two_column {
    margin: 0 0 60px
}

.wrap.jobs_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.jobs_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 60px 0 0
}

.wrap.jobs_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.jobs_page .two_column .right_side .sidebarblock .job_link {
    display: block;
    line-height: 25px;
    font-weight: 700;
    color: #c03
}

.wrap.jobs_page .two_column .right_side .sidebarblock .job_link.active {
    font-weight: 700
}

@media screen and (min-width: 800px) {
    .wrap.jobs_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 1040px;
        margin: 60px auto 0
    }

    .wrap.jobs_page .two_column .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.jobs_page .two_column .right_side {
        padding: 0 0 0 20px;
        margin: 0;
        width: 30%;
        float: right
    }
}

.wrap.jobs_page.single .date {
    display: block;
    color: #c03;
    margin: 0 0 40px
}

.wrap.jobs_page.single .content p {
    margin: 0 0 20px
}

.wrap.jobs_page.single .content p:after {
    content: "";
    display: table;
    clear: both
}

.wrap.jobs_page.single .content p img {
    margin: 20px 0 0
}

.wrap.jobs_page.single .content img {
    width: 100% !important;
    height: auto !important;
    margin: 20px 0
}

.wrap.jobs_page.single .content p.caption {
    padding: 0 20px;
    margin: 0 0 40px;
    font-size: .875em
}

.wrap.jobs_page.single .content blockquote {
    border-left: 6px solid #c03;
    padding: 0 10px 0 40px;
    margin: 40px 0;
    font-style: italic;
    color: #666 !important
}

.wrap.news_page .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.news_page .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 0
}

.wrap.news_page .page_header .header_content {
    position: relative;
    z-index: 2
}

.wrap.news_page .two_column {
    margin: 60px 0
}

.wrap.news_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.news_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.news_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 10px
}

.wrap.news_page .two_column .right_side .sidebarblock .archive_link {
    display: block;
    height: 25px;
    line-height: 25px;
    padding: 0 0 5px;
    margin: 0 0 5px;
    border-bottom: 1px solid #d4d5d3
}

.wrap.news_page .two_column .right_side .sidebarblock .archive_link.active {
    font-weight: 700
}

.wrap.news_page .news_feed .news_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    height: 320px;
    background: 0 0;
    overflow: hidden
}

.wrap.news_page .news_feed .news_item .news_content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    right: 10px;
    background: #f5f5f4;
    z-index: 2
}

.wrap.news_page .news_feed .news_item .news_image {
    height: 160px
}

.wrap.news_page .news_feed .news_item h4 {
    font-weight: 700;
    font-size: 1.25em;
    margin: 10px 0
}

.wrap.news_page .news_feed .news_item .news_text {
    padding: 20px 20px 50px
}

.wrap.news_page .news_feed .news_item .date {
    font-size: .875em;
    color: #c03
}

.wrap.news_page .news_feed .news_item .content {
    opacity: 0
}

.wrap.news_page .news_feed .news_item .news_link {
    position: absolute;
    bottom: 0;
    left: 10px;
    right: 10px;
    height: 40px;
    line-height: 40px;
    z-index: 2;
    background: #f5f5f4
}

.wrap.news_page .news_feed .news_item .news_link .text {
    float: left;
    padding-left: 20px;
    font-style: italic
}

.wrap.news_page .news_feed .news_item .news_link .arrow {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    float: right;
    position: relative;
    padding-right: 20px
}

.wrap.news_page .news_feed .news_item .news_link:hover .arrow {
    left: 3px
}

.wrap.news_page .news_feed .news_item:after {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    right: 10px;
    background: #e4e4e3;
    z-index: 1
}

@media screen and (min-width: 620px) {
    .wrap.news_page .news_feed .news_item {
        width: 100%;
        max-width: 300px;
        float: none
    }
}

@media screen and (min-width: 800px) {
    .wrap.news_page .page_header h1 {
        text-align: left
    }

    .wrap.news_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 1040px;
        margin: 60px auto 0
    }

    .wrap.news_page .two_column .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.news_page .two_column .right_side {
        padding: 0 0 0 20px;
        width: 30%;
        float: right
    }

    .wrap.news_page .news_feed .news_item {
        float: left;
        width: 33%;
        height: 340px;
        background: #fff;
        padding: 0 10px
    }

    .wrap.news_page .news_feed .news_item:hover .news_content, .wrap.news_page .news_feed .news_item:hover .news_link {
        background: #e4e4e3
    }
}

@media screen and (min-width: 1050px) {
    .wrap.news_page .news_feed .negative_margin {
        margin: 0 -20px
    }
}

.wrap.news_page.single .date {
    display: block;
    color: #c03;
    margin: 0 0 40px
}

.wrap.news_page.single .content p {
    margin: 0 0 20px
}

.wrap.news_page.single .content p:after {
    content: "";
    display: table;
    clear: both
}

.wrap.news_page.single .content p img {
    margin: 20px 0 0
}

.wrap.news_page.single .content img {
    width: 100% !important;
    height: auto !important;
    margin: 20px 0
}

.wrap.news_page.single .content p.caption {
    padding: 0 20px;
    margin: 0 0 40px;
    font-size: .875em
}

.wrap.news_page.single .content blockquote {
    border-left: 6px solid #c03;
    padding: 0 10px 0 40px;
    margin: 40px 0;
    font-style: italic;
    color: #666 !important
}

.wrap.explosives_landing_page .page_header {
    height: auto;
    min-height: 760px;
    z-index: 3;
    margin-bottom: 0;
}

@media screen and (max-width: 800px) {
    .wrap.explosives_landing_page .page_header {
        min-height: 600px;
    }
}

@media screen and (max-width: 620px) {
    .wrap.explosives_landing_page .page_header {
        min-height: 600px;
    }
    .wrap.explosives_landing_page .page_header .header_content {
        bottom: 60px;
    }
}

.wrap.explosives_landing_page .page_header h1 {
    line-height: 1em
}

.wrap.explosives_landing_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 760px;
    max-height: 1000px
}

.wrap.explosives_landing_page .page_header .header_content {
    position: absolute !important;
    z-index: 2;
    top: 50px;
    left: 50%;
    margin: 0;
    width: 1040px;
    transform: translateX(-50%);
}

.wrap.explosives_landing_page .page_header .header_content .header_hero {
    background-color: #cc0033;
    padding: 19px 26px;
    border-top: 12px solid #000000;
    max-width: 594px;
}
.wrap.explosives_landing_page .page_header .header_content .header_hero * {
    text-align: left;
}

.wrap.explosives_landing_page .page_header .header_content .header_hero h1 {
    font-size: 48px;
    font-weight: 700;
    line-height: 54px;
}

@media screen and (max-width: 676px) {
    .wrap.explosives_landing_page .page_header .header_content .header_hero h1 {
        font-size: 30px;
        line-height: 40px;
    }
}

.wrap.explosives_landing_page .page_header .header_content .header_hero p {
    font-size: 18px;
    font-weight: 400;
    line-height: 18px;
}

.wrap.explosives_landing_page .header_notice {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1040px;
}

.wrap.explosives_landing_page .header_notice {
    display: flex;
    justify-content: space-between;
}

.wrap.explosives_landing_page  .header_notice .header_notice_item {
    display: flex;
    background-color: #cc0033;
    padding: 12px 0;
    width: calc(50% - 12px);
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_img {
    width: 27%;
    border-right: 2px solid #fff;
    position: relative;
}
.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_img img {
    max-width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content {
    width: 73%;
    padding: 10px 27px;
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content .notice_item_label {
    font-size: 14px;
    font-weight: 700;
    line-height: 18px;
    text-transform: uppercase;
    letter-spacing: 0.35px;
    color: #fff;
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content .notice_item_title {
    font-size: 30px;
    font-weight: 700;
    margin: 5px 0 5px;
    color: #fff;
    line-height: 1.2em;
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content .notice_item_description {
    font-size: 18px;
    font-weight: 400;
    line-height: 18px;
    text-align: left;
    margin: 0 0 16px;
}

.wrap.explosives_landing_page .header_notice .header_notice_item .notice_item_content .notice_item_btn {
    border: 1px solid #ffffff;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    padding: 6px 18px;
    color: #fff;
}
.wrap.explosives_landing_page .page_header .header_content .header_notice .header_notice_item .notice_item_img {
    width: 25%;
    border-right: 2px solid #fff;
}
.wrap.explosives_landing_page .header_content .header_notice .header_notice_item .notice_item_img img {
    max-width: 100%;
}

.wrap.explosives_landing_page .header_content .header_notice .header_notice_item .notice_item_content {
    width: 75%;
    padding: 17px 31px;
}

.wrap.explosives_landing_page .products_shortcut {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 10;
    width: 300px;
    margin: 0 0 0 -150px
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger {
    display: block;
    position: relative;
    color: #fff;
    height: 40px;
    line-height: 40px
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger .text {
    display: block;
    background: #c03;
    margin: 0 45px 0 0;
    border-radius: 5px 0 0 5px;
    padding: 0 0 0 10px;
    font-weight: 700
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger .triangle {
    display: block;
    position: absolute;
    height: 40px;
    width: 40px;
    right: 0;
    top: 0;
    margin: 0;
    background: #c03;
    border-radius: 0 5px 5px 0
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger .triangle svg {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 7px;
    margin: -3px 0 0 -6px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger .triangle svg * {
    fill: #fff
}

.wrap.explosives_landing_page .products_shortcut .dropdown_trigger.active .triangle svg {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg)
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper {
    position: absolute;
    top: 45px;
    left: 0;
    right: 0
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper .category {
    position: relative;
    border-radius: 5px;
    margin: 0 0 5px;
    background: #fff;
    overflow: hidden;
    opacity: 0;
    display: none
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper .category_bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    opacity: .7
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper .category_label {
    position: relative;
    height: 40px;
    line-height: 40px;
    color: #fff;
    text-transform: uppercase;
    padding: 0 10px;
    z-index: 2
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper .product_link {
    position: relative;
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    padding: 0 10px;
    z-index: 2;
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    transition-property: transform;
    -webkit-transition-duration: .2s;
    -moz-transition-duration: .2s;
    transition-duration: .2s
}

.wrap.explosives_landing_page .products_shortcut .categories_wrapper .product_link:hover {
    -webkit-transform: translateX(5px);
    -moz-transform: translateX(5px);
    -ms-transform: translateX(5px);
    -o-transform: translateX(5px);
    transform: translateX(5px)
}

.service_lifts {
    position: relative;
    z-index: 1;
    margin: 60px 0
}

.service_lift {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 20px;
    position: relative;
    margin: 0 0 40px
}

.service_lift .img {
    height: 250px;
    background-position: center center;
    margin: 0
}

.service_lift .content {
    position: relative;
    background-color: #c03;
    color: #fff;
    padding: 20px 20px 50px;
    overflow: hidden
}

.service_lift h2 {
    font-weight: 700;
    font-size: 1.25em;
    margin: 0 0 10px
}

.service_lift p {
    font-size: 1em;
    margin: 0
}

.service_lift a {
    display: block;
    height: 40px;
    line-height: 40px;
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 0;
    margin: 0;
    padding: 0;
    font-style: italic;
    font-size: 1em
}

.service_lift a .text {
    position: absolute;
    left: 0;
    top: 0
}

.service_lift a .arrow {
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    position: absolute;
    right: 0;
    top: 0
}

.service_lift a:hover .arrow {
    right: -3px
}

@media screen and (min-width: 800px) {
    .wrap.explosives_landing_page .page_header .header_content {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        margin: 100px auto 0
    }

    .service_lifts .wrapper {
        padding: 0
    }

    .service_lift {
        width: 50%;
        height: 100%;
        float: left;
        padding: 0 10px
    }

    .service_lift .content {
        height: 250px
    }
}

.wrap.services_page .page_header {
    height: auto;
    min-height: 375px;
    z-index: 3
}

.wrap.services_page .page_header h1 {
    line-height: 1em
}

.wrap.services_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.services_page .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 60px auto;
    padding-bottom: 80px
}

.wrap.services_page .page_content {
    max-width: 900px;
    margin: 60px auto 0;
    text-align: center
}

@media screen and (min-width: 800px) {
    .wrap.services_page .page_header .header_content {
        position: relative;
        z-index: 2;
        margin: 100px auto 60px
    }

    .service_lifts .wrapper {
        padding: 0
    }

    .service_lift {
        width: 25%;
        height: 100%;
        float: left
    }

    .service_lift .content {
        height: 250px
    }
}

.wrap.service_page .page_header {
    height: auto;
    min-height: 375px
}

.wrap.service_page .page_header h1 {
    line-height: 1em
}

.wrap.service_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.service_page .page_header .header_content {
    position: relative;
    z-index: 2;
    margin: 60px auto;
    max-width: 800px
}

.wrap.service_page .two_column {
    margin: 60px 0
}

.wrap.service_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.service_page .two_column .left_side p {
    margin: 0 0 20px
}

.wrap.service_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.service_page .two_column .right_side .sidebarblock {
    margin-bottom: 40px
}

.wrap.service_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.service_page .two_column .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

@media screen and (min-width: 800px) {
    .wrap.service_page .page_header .header_content {
        position: relative;
        z-index: 2;
        margin: 120px auto 60px
    }

    .wrap.service_page .two_column .left_side {
        padding: 0 10px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.service_page .two_column .right_side {
        padding: 0 0 0 10px;
        width: 30%;
        float: right
    }
}

.wrap.ruutiset_page .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.ruutiset_page .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 0
}

.wrap.ruutiset_page .page_header .header_content {
    position: relative;
    z-index: 2
}

.wrap.ruutiset_page .two_column {
    margin: 0 0 60px
}

.wrap.ruutiset_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.ruutiset_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.ruutiset_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 10px
}

.wrap.ruutiset_page .two_column .right_side .sidebarblock .archive_link {
    display: block;
    height: 25px;
    line-height: 25px;
    padding: 0 0 5px;
    margin: 0 0 5px;
    border-bottom: 1px solid #d4d5d3
}

.wrap.ruutiset_page .two_column .right_side .sidebarblock .archive_link.active {
    font-weight: 700
}

.wrap.ruutiset_page .issuu_wrapper {
    background: #e6e6e6
}

.wrap.ruutiset_page .issuu_wrapper.loading .issuuembed {
    opacity: 0
}

.wrap.ruutiset_page .issuu_wrapper.loaded {
    margin: 0 0 60px
}

.wrap.ruutiset_page .issuu_wrapper.loaded .issuuembed {
    opacity: 1
}

.wrap.ruutiset_page .issuuembed {
    height: 0;
    overflow: hidden;
    margin: 0 auto 60px;
    max-width: 740px
}

.wrap.ruutiset_page .issuuembed.active {
    height: 500px;
    overflow: hidden
}

.wrap.ruutiset_page .intro_text {
    margin: 0 0 40px
}

.wrap.ruutiset_page .intro_text p {
    margin: 0 0 20px
}

.wrap.ruutiset_page .ruutiset_item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 40px;
    overflow: hidden
}

.wrap.ruutiset_page .ruutiset_item .bg {
    height: 160px
}

.wrap.ruutiset_page .ruutiset_item .cover {
    margin: 0 0 20px
}

.wrap.ruutiset_page .ruutiset_item .cover img {
    width: 100%;
    height: auto
}

.wrap.ruutiset_page .ruutiset_item h3 {
    margin: 0;
    font-weight: 700;
    color: #000
}

.wrap.ruutiset_page .ruutiset_item .date {
    display: block;
    font-size: .875em;
    color: #666;
    margin: 0 0 10px;
    height: 20px;
    line-height: 20px
}

.wrap.ruutiset_page .ruutiset_item .content {
    margin: 10px 0
}

.wrap.ruutiset_page .ruutiset_item .content ul {
    margin: 0;
    padding: 0 0 0 20px
}

.wrap.ruutiset_page .ruutiset_item a {
    display: block;
    margin: 5px 0;
    color: #c03
}

@media screen and (min-width: 800px) {
    .wrap.ruutiset_page .page_header h1 {
        text-align: left
    }

    .wrap.ruutiset_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 1040px;
        margin: 60px auto 0
    }

    .wrap.ruutiset_page .two_column .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.ruutiset_page .two_column .right_side {
        padding: 0 0 0 20px;
        width: 30%;
        float: right
    }

    .wrap.ruutiset_page .ruutiset_item {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 33.33%;
        padding: 0 10px;
        float: left
    }
}

@media screen and (min-width: 1040px) {
    .wrap.ruutiset_page .row {
        margin: 0 -10px
    }
}

.wrap.personnel_page .page_header {
    height: auto;
    min-height: 375px
}

.wrap.personnel_page .page_header h1 {
    line-height: 1em
}

.wrap.personnel_page .page_header .bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1;
    height: auto;
    min-height: 375px;
    max-height: 1000px
}

.wrap.personnel_page .page_header .header_content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 60px auto
}

.wrap.personnel_page .two_column {
    margin: 60px 0
}

.wrap.personnel_page .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.personnel_page .left_side .search {
    border-bottom: 2px solid #c9cac8;
    margin-bottom: 20px;
    position: relative
}

.wrap.personnel_page .left_side .search input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    border: 0;
    width: 100%;
    padding: 5px 10px 5px 35px;
    height: 30px;
    line-height: 30px
}

.wrap.personnel_page .left_side .search svg {
    display: block;
    position: absolute;
    left: 5px;
    top: 5px;
    width: 20px;
    height: 20px
}

.wrap.personnel_page .left_side .category_label {
    height: 40px;
    line-height: 40px;
    border-bottom: 4px solid #000;
    margin-top: 20px
}

.wrap.personnel_page .left_side .category_label::first-letter {
    text-transform: capitalize
}

.wrap.personnel_page .left_side .filter_item {
    display: block;
    height: 40px;
    line-height: 40px;
    padding: 0 40px 0 20px;
    margin: 0 4px 4px 0;
    float: left;
    color: #fff;
    position: relative;
    background: #c9cac8
}

.wrap.personnel_page .left_side .filter_item .category_name::first-letter, .wrap.personnel_page .left_side .filter_item::first-letter {
    text-transform: capitalize
}

.wrap.personnel_page .left_side .filter_item svg {
    display: none;
    position: absolute;
    right: 10px;
    top: 12px;
    width: 15px;
    height: 15px
}

.wrap.personnel_page .left_side .filter_item svg line {
    stroke: #fff;
    stroke-width: 10
}

.wrap.personnel_page .left_side .filter_item.active {
    background: #000
}

.wrap.personnel_page .left_side .filter_item.active:hover svg {
    display: block
}

.wrap.personnel_page .left_side .product_item {
    padding: 10px 0;
    font-size: 1em;
    line-height: 1em;
    min-height: 20px;
    background: #fff
}

.wrap.personnel_page .left_side .product_item span {
    display: block;
    width: 50%;
    padding: 0 0 10px;
    float: left
}

.wrap.personnel_page .left_side .product_item .italic {
    color: #666;
    font-size: .8em;
    float: left;
    width: 100%
}

.wrap.personnel_page .left_side .product_item:nth-child(odd) {
    background: #efefef
}

.wrap.personnel_page .left_side .category_label {
    font-weight: 700
}

.wrap.personnel_page .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px
}

.wrap.personnel_page .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px
}

.wrap.personnel_page .right_side .sidebarblock h4 {
    display: block;
    font-weight: 700;
    margin: 0 0 10px
}

.wrap.personnel_page .right_side .sidebarblock span {
    display: block;
    line-height: 25px
}

@media screen and (min-width: 800px) {
    .wrap.personnel_page .page_header .header_content {
        position: relative;
        z-index: 2;
        margin: 120px auto 60px
    }

    .wrap.personnel_page .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.personnel_page .left_side .product_item {
        padding: 10px
    }

    .wrap.personnel_page .left_side .product_item span {
        width: 25%;
        padding: 0
    }

    .wrap.personnel_page .left_side .product_item span.city {
        width: 20%
    }

    .wrap.personnel_page .left_side .product_item span.city.long {
        width: 45%
    }

    .wrap.personnel_page .left_side .product_item span.phone {
        width: 25%
    }

    .wrap.personnel_page .left_side .product_item span.email {
        width: 30%
    }

    .wrap.personnel_page .right_side {
        padding: 0 0 0 20px;
        width: 30%;
        float: right
    }

    .wrap.personnel_page .sidebarblock {
        margin: 0 0 40px
    }
}

.wrap.contact_page .page_header {
    height: auto;
    min-height: 0;
    margin: 40px 0
}

.wrap.contact_page .page_header h1 {
    line-height: 1em;
    color: #000;
    text-align: center;
    margin: 0
}

.wrap.contact_page .page_header .header_content {
    position: relative;
    z-index: 2
}

.wrap.contact_page .page_content p {
    margin: 0 0 20px
}

.wrap.contact_page .jobs_item {
    position: relative;
    margin: 0 0 40px
}

.wrap.contact_page .jobs_item .date {
    display: block;
    font-size: .875em;
    color: #666;
    margin: 0 0 5px;
    height: 20px;
    line-height: 20px
}

.wrap.contact_page .jobs_item .location {
    display: block;
    margin: 0 0 5px;
    height: 20px;
    line-height: 20px
}

.wrap.contact_page .jobs_item a {
    display: block;
    margin: 10px 0 5px;
    font-weight: 700
}

.wrap.contact_page .two_column {
    margin: 0 0 60px
}

.wrap.contact_page .two_column .left_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 0 0 60px
}

.wrap.contact_page .two_column .right_side {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 10px;
    margin: 60px 0 0
}

.wrap.contact_page .two_column .right_side .sidebarblock h3 {
    display: block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #c03;
    font-weight: 700;
    text-indent: 10px;
    margin: 0 0 20px
}

.wrap.contact_page .two_column .right_side .sidebarblock .job_link {
    display: block;
    line-height: 25px;
    font-weight: 700;
    color: #c03
}

.wrap.contact_page .two_column .right_side .sidebarblock .job_link.active {
    font-weight: 700
}

@media screen and (min-width: 800px) {
    .wrap.contact_page .page_header h1 {
        text-align: left
    }

    .wrap.contact_page .page_header .header_content {
        position: relative;
        z-index: 2;
        max-width: 1040px;
        margin: 60px auto 0
    }

    .wrap.contact_page .two_column .left_side {
        padding: 0 20px 0 0;
        margin: 0;
        width: 70%;
        float: left
    }

    .wrap.contact_page .two_column .right_side {
        padding: 0 0 0 20px;
        margin: 0;
        width: 30%;
        float: right
    }
}

.annualreport_page .downloadLink {
    color: #c03;
    text-decoration: underline;
    cursor: pointer
}

.annualreport_page .email_form label {
    font-weight: 700;
    margin: 0 0 20px
}

.annualreport_page .email_form input.text {
    float: left;
    width: 100%;
    margin: 0 0 20px
}

.annualreport_page .email_form a, .annualreport_page .email_form a:visited, .annualreport_page .email_form input.action {
    float: left;
    padding: 10px;
    margin: 0 10px 10px 0;
    background-color: #c03;
    color: #fff;
    cursor: pointer;
    border: none;
    line-height: 1
}

.annualreport_page .email_form a:hover, .annualreport_page .email_form a:visited:hover, .annualreport_page .email_form input.action:hover {
    background-color: #000
}

input.addsearch {
    background-size: 16px !important;
    position: fixed !important;
    height: 32px !important;
    right: 270px !important;
    top: 29px !important;
    width: 280px !important;
    transform: none !important;
    border: none;
}

input.addsearch::-webkit-input-placeholder {
    color: #d6d6d6
}
input.addsearch::-moz-placeholder {
    color: #d6d6d6
}
input.addsearch:-ms-input-placeholder {
    color: #d6d6d6
}
input.addsearch:-moz-placeholder {
    color: #d6d6d6
}

input.addsearch:focus {
    outline: none;
}

@media screen and (max-width: 1150px) {
    input.addsearch {
        right: 170px !important;
        width: 280px !important;
    }
}

@media screen and (max-width: 1024px) {
    input.addsearch {
        width: 8px !important;
        background-color: transparent;
        border: none;
        transition: width .5s ease-in-out;
    }
    input.addsearch::-webkit-input-placeholder {
        color: transparent;
    }
    input.addsearch::-moz-placeholder {
        color: transparent;
    }
    input.addsearch:-ms-input-placeholder {
        color: transparent;
    }
    input.addsearch:-moz-placeholder {
        color: transparent;
    }
    input.addsearch:focus {
        background-color: #fff;
        border: 1px solid #ccc;
        width: 120px !important;
    }
    input.addsearch:focus::-webkit-input-placeholder {
        color: #d6d6d6
    }
    input.addsearch:focus::-moz-placeholder {
        color: #d6d6d6
    }
    input.addsearch:focus:-ms-input-placeholder {
        color: #d6d6d6
    }
    input.addsearch:focus:-moz-placeholder {
        color: #d6d6d6
    }
}

@media screen and (max-width: 800px) {
    input.addsearch {
        top: 14px !important;
    }
    .menu_top.search-id input.addsearch {
        visibility: visible;
    }
}

.menu_top a[title="OY FORCIT AB PRIVACY POLICY"],
.menu_top a[title*="privacy"],
.menu_top a[title*="PRIVACY"] {
    display: none;
}

.footer .top .section_navi div a[data-id="102"] {
    display: none;
}

.footer .top .section_navi div a[data-id="102"][data-region="Finland"] {
    display: block;
}