body
{
    font-family: 'Helvetica Neue',Helvetica,'Arial',sans-serif;

    color: #111;
}

a[href^=tel]
{
    text-decoration: none;

    color: inherit;
}

.flex
{
    display: -ms-flexbox;
    display: flex;
}

.full-height
{
    height: 100%;
}

.clear
{
    clear: both;
}

.site-container
{
    width: 100%;

    transition: all .4s;
}

@media screen and (max-width:720px)
{
    .open-left
    {
        overflow: hidden;
    }

    .open-left .site-container
    {
        margin: 0 0 0 -70%;

        transition: all .4s;
    }
}

strong
{
    font-weight: 600;
}

.container
{
    width: 90%;
    max-width: 1030px;
    margin: 0 auto;
}

.v-center
{
    position: absolute;
    top: 50%;

    width: 100%;

    transform: translateY(-50%);
}

.layout-table
{
    display: table;

    width: 100%;

    table-layout: fixed;
}

.layout-td
{
    display: table-cell;

    vertical-align: top;
}

img.img-full
{
    display: block;

    width: 100%;
    height: auto;
}

a
{
    color: inherit;
}

.button
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 20px;
    font-weight: 400;

    display: inline-block;

    padding: .4em 1em;

    transition: background .4s;
    text-decoration: none;
    text-transform: uppercase;
}

.button:hover
{
    transition: background .4s;
}

.button-grey
{
    color: #fff;
    background: #969696;
}

.button-grey:hover
{
    background: #525252;
}

.button-red
{
    color: #fff;
    background: #f00;
}

.button-red:hover
{
    background: #bd011c;
}

.button.icon-download i
{
    display: inline-block;

    margin: 0 7px 0 0;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .button
    {
        font-size: 16px;
    }
}

.product-downloads
{
    margin: 0 0 25px 0;
}

.product-downloads .button
{
    font-size: 20px;

    padding-top: .6em;
    padding-bottom: .6em;
}

.heading-2
{
    font-size: 24px;
    font-weight: 600;

    letter-spacing: 0;
}

.heading-3
{
    font-size: 20px;
    font-weight: 600;

    letter-spacing: 0;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .heading-2
    {
        font-size: 18px;
    }

    .heading-3
    {
        font-size: 14px;
    }
}

@media screen and (max-width:720px)
{
    .heading-2
    {
        font-size: 20px;
    }

    .heading-3
    {
        font-size: 16px;
    }
}

@media only screen and (min-device-width : 420px) and (max-device-width : 667px),
only screen and (min-device-width:320px) and (max-device-width:568px)
{
    .heading-2,
    .heading-3
    {
        letter-spacing: -1px;
    }
}

.top
{
    padding: 10px 0 15px 0;

    text-align: right;

    background: #111;
}

.top p
{
    font-size: 14px;
    font-weight: 600;

    color: #fff;
}

.top .submit
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 16px;

    display: inline-block;

    margin: 0 0 0 10px;
    padding: 11px 15px;

    transition: background .4s;
    text-decoration: none;
    text-transform: uppercase;

    color: #777;
    border: none;
    background: #3a3a3a;
}

.top .submit:hover
{
    transition: background .4s;

    background: #ccc;
}

.mobile-contact
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 18px;
    font-weight: 600;

    width: 100%;
    padding: 10px 0;

    text-align: center;

    background: #222;
}

.mobile-contact p
{
    text-transform: uppercase;

    color: #fff;
}

@media screen and (min-width:720px)
{
    .mobile-contact
    {
        display: none;
    }
}

@media screen and (max-width:720px)
{
    .top
    {
        display: none;
    }
}

.breadcrumbs
{
    font-size: 14px;
    line-height: 1.45;

    padding: 15px 0;

    color: #fff;
    background: #969696;
}

.breadcrumbs a
{
    text-decoration: none;

    color: #fff;
}

.breadcrumbs sup
{
    font-size: 10px;
}

.breadcrumb-for-182
{
    border-bottom: 6px solid #aeb5b4;
}

.breadcrumb-for-195
{
    border-bottom: 6px solid #ea8b3a;
}

.breadcrumb-for-245
{
    border-bottom: 6px solid #d62731;
}

.breadcrumb-for-218
{
    border-bottom: 6px solid #0e69a3;
}

.breadcrumb-for-729
{
    border-bottom: 6px solid #4e357c;
}

.breadcrumb-for-1164
{
    border-bottom: 6px solid #1a4687;
}

.breadcrumb-for-1169
{
    border-bottom: 6px solid #0b6737;
}

.breadcrumb-for-1235
{
    border-bottom: 6px solid #f5bc3a;
}

.breadcrumb-for-1637
{
    border-bottom: 6px solid #804084;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .breadcrumbs
    {
        font-size: 12px;
    }
}

@media screen and (max-width:420px)
{
    .breadcrumbs
    {
        font-size: 12px;
    }
}

.main-header
{
    background: #f0f0f0;
}

.main-header .col
{
    vertical-align: middle;
}

.main-header .col-1
{
    width: 10%;
    padding: 10px;

    background: #fff;
}

.main-header .col-1 img
{
    display: block;

    width: 100%;
    height: auto;
}

.main-header .col-2
{
    font-family: 'bebas-neue',sans-serif;

    width: 80%;
    padding: 0 2%;
}

.main-header .col-3
{
    display: -ms-flexbox;
    display: flex;

    width: 10%;

    -ms-flex-item-align: stretch;
    align-self: stretch;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.main-header .col-2 p
{
    font-size: 20px;

    margin: 0 0 5px 0;

    text-transform: uppercase;

    color: #969696;
}

.main-header .logo
{
    max-width: 65px;
    height: auto;
    margin: 0 auto;
}

.main-header .icon-search
{
    display: block;

    height: auto;
}

.main-header.fixed
{
    position: fixed;
    z-index: 500;
    top: 0;
    left: 0;

    width: 100%;
}

.main-header .container
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (min-width:720px)
{
    .main-header .col-2
    {
        padding-top: 11px;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .main-header .icon-search
    {
        top: 8px;
    }
}

.main-header-spacer
{
    display: none;
}

.main-header.fixed + .main-header-spacer
{
    display: block;
}

@media screen and (max-width:720px)
{
    .main-header-spacer
    {
        display: block;

        margin: 0;
    }
}

.main-header
{
    position: relative;
}

.main-header .primary-navigation
{
    font-size: 20px;

    text-transform: uppercase;
}

.main-header .primary-navigation li
{
    display: inline-block;

    margin: 0 10px 0 0;
}

.main-header .primary-navigation .menu
{
    position: relative;

    float: left;
}

.main-header .primary-navigation .menu > li > a
{
    position: relative;

    display: block;

    padding: 0 0 29px 0;

    transition: color .4s;
    text-decoration: none;

    color: #111;
}

.main-header .primary-navigation .mobile-toggle
{
    display: none;
}

.main-header .primary-navigation li
{
    position: relative;

    text-transform: none;
}

.main-header .primary-navigation li .sub-menu-wrap
{
    min-width: 300px;

    transition: all .4s;

    background: rgba(255,255,255,.75);
    background: rgba(240, 240, 240, .95);
}

.main-header .primary-navigation li .sub-menu-wrap .sub-menu
{
    font-family: 'Helvetica Neue',Helvetica,'Arial',sans-serif;
    font-size: 14px;
}

.main-header .primary-navigation li .sub-menu-wrap .sub-menu li
{
    display: block;
    float: none;

    width: 100%;
    margin: 0 0 5px 0;
    padding: 0 0 4px 0;

    border-bottom: 1px solid #fff;
}

.main-header .primary-navigation li .sub-menu-wrap .sub-menu li a
{
    text-decoration: none;
}

@media screen and (min-width:720px)
{
    .main-header .primary-navigation .menu > li.current-menu-ancestor > a,
    .main-header .primary-navigation .menu > li.current-menu-item > a,
    .main-header .primary-navigation .menu > li a:hover
    {
        transition: color .4s;

        color: #f00;
    }

    .main-header .primary-navigation .sub-menu-wrap
    {
        position: absolute;
        z-index: 50;
        top: 100%;
        left: -24px;

        visibility: hidden;

        width: 100%;
        padding: 25px 15px;

        transition: all .4s;

        opacity: 0;
    }

    .main-header .primary-navigation .menu > li:first-child
    {
        display: none;
    }

    .main-header .primary-navigation .menu > li > a:after
    {
        position: absolute;
        bottom: 0;
        left: 0;

        width: 100%;
        height: 3px;

        content: ' ';
        transition: opacity .4s;

        opacity: 0;
        background: #f00;
    }

    .main-header .primary-navigation .menu > li.current-menu-ancestor > a:after,
    .main-header .primary-navigation .menu > li.current-menu-item > a:after,
    .main-header .primary-navigation .menu > li a:hover:after
    {
        transition: opacity .4s;

        opacity: 1;
    }

    .main-header .primary-navigation .menu > li:hover .sub-menu-wrap
    {
        visibility: visible;

        opacity: 1;
    }
}

@media screen and (max-width:1024px)
{
    .main-header .primary-navigation .menu > li > a:after
    {
        top: 94%;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .main-header .primary-navigation .menu > li > a:after
    {
        top: 95%;
    }

    .main-header .primary-navigation .sub-menu-wrap
    {
        top: 101%;
    }
}

@media screen and (max-width:1024px)
{
    .main-header .col-2 p,
    .main-header .primary-navigation
    {
        font-size: 18px;
    }

    .main-header .icon-search
    {
        width: 15px;
    }
}

@media screen and (max-width:912px)
{
    .main-header .primary-navigation
    {
        font-size: 17px;
    }

    .main-header .primary-navigation .menu > li > a
    {
        padding-bottom: 27px;
    }

    .main-header .primary-navigation .menu > li > a:after
    {
        top: 95%;
    }
}

@media only screen and (max-width: 768px)
{
    .main-header .col-2 p,
    .main-header .primary-navigation
    {
        font-size: 14px;
    }

    .main-header .col-2
    {
        width: 75%;
        padding: 0;
    }

    .main-header .primary-navigation .menu > li > a
    {
        padding-bottom: 24px;
    }

    .main-header .primary-navigation .menu > li > a:after
    {
        top: 95%;
    }
}

@media screen and (max-width:720px)
{
    .main-header
    {
        position: fixed;
        z-index: 50;
        top: 0;
        left: 0;

        width: 100%;

        transition: left .4s;
    }

    .main-header .col-1
    {
        width: 25%;
    }

    .main-header .col-2 p,
    .main-header .col-3
    {
        display: none;
    }

    .main-header .primary-navigation
    {
        font-family: 'Helvetica Neue',Helvetica,'Arial',sans-serif;
        font-size: 16px;
        line-height: 1.2;

        position: fixed;
        z-index: 50;
        top: 0;
        right: -70%;

        width: 70%;
        height: 100%;
        padding: 20px 10px;

        transition: all .4s;
        text-transform: none;

        background: #979797;
    }

    .main-header .primary-navigation .mobile-toggle
    {
        position: absolute;
        top: 65px;
        left: -65px;

        display: block;

        transition: all .4s;
    }

    .open-left .main-header .primary-navigation
    {
        right: 0;

        transition: all .4s;
    }

    .open-left .main-header .primary-navigation .menu
    {
        float: none;
    }

    .open-left .main-header .primary-navigation .overflow
    {
        position: absolute;
        top: 0;
        left: 5px;

        overflow-x: hidden;
        overflow-y: scroll;

        width: 100%;
        height: 100%;
    }

    .open-left .main-header .primary-navigation .mobile-toggle
    {
        transition: all .4s;
        transform: rotate(45deg);
    }

    .open-left .main-header
    {
        left: -70%;

        transition: left .4s;
    }

    .main-header .primary-navigation .menu > li > a
    {
        display: inline-block;

        color: #fff;
    }

    .main-header .primary-navigation li
    {
        display: block;

        padding: 8px 0;

        border-bottom: 1px solid #aaa;
    }

    .main-header .primary-navigation .sub-menu li:last-child
    {
        border-bottom: none;
    }

    .main-header .primary-navigation li:first-child
    {
        display: block;
    }

    .main-header .primary-navigation li a
    {
        text-decoration: none;

        color: #e8e8e8;
    }

    .main-header .primary-navigation li a:hover
    {
        color: #b4b4b4;
    }

    .main-header .primary-navigation li .sub-menu
    {
        display: none;

        margin: 10px 0 10px 0;
        padding: 0 0 0 15px;

        transition: all 0s;

        border-top: 1px solid #aaa;
    }

    .main-header .primary-navigation li.current-page-ancestor > .sub-menu,
    .main-header .primary-navigation li.current-menu-ancestor .sub-menu.open
    {
        position: static;

        display: block;
        visibility: visible;

        min-width: 0;

        opacity: 1;
        background: none;
    }

    .main-header .primary-navigation .menu
    {
        padding: 15px;
    }

    .main-header .primary-navigation .menu > li > a
    {
        padding-bottom: 0;
    }

    .main-header .primary-navigation .menu li.current-menu-item > a
    {
        color: #c2c2c2;
    }

    .current-menu-ancestor > .sub-menu
    {
        display: block;
    }

    .main-header .primary-navigation .menu .icon
    {
        display: inline-block;

        margin: 0 4px 0 0;
    }

    .main-header .primary-navigation .menu .fa-caret-down
    {
        display: none;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .main-header .col-2 p,
    .main-header .primary-navigation
    {
        font-size: 16px;
    }

    .main-header .primary-navigation li a:after
    {
        top: 27px;
    }
}

@media only screen and (max-width: 414px)
{
    .main-header .primary-navigation .mobile-toggle
    {
        top: 49px;
    }
}

@media only screen and (max-width: 420px)
{
    .main-header .primary-navigation .mobile-toggle
    {
        top: 49px;
    }
}

.main-image
{
    margin: -30px 0 35px 0;
}

.main-image img
{
    display: block;

    width: 100%;
    height: auto;
}

.news-list
{
    margin: -4px 0 9px 0;

    list-style: none;
}

.news-list li
{
    font-size: 14px;
    line-height: 1.3;

    display: block;

    margin: 0 0 10px 0;
    padding: 0 0 10px 0;

    border-bottom: 1px solid #e0e0e0;
}

.news-list li:last-child
{
    margin: 0;
}

.news-list li a
{
    font-weight: 600;

    transition: color .4s;
    text-decoration: none;

    color: #111;
}

.news-list li a:hover
{
    transition: color .4s;

    color: #969696;
}

.news-list li time
{
    display: block;

    margin: 2px 0 0 0;

    color: #6e6e6e;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .news-list li
    {
        font-size: 12px;
    }
}

.block-info img
{
    display: block;

    width: 100%;
    height: auto;
    margin: 0 0 15px 0;
}

.block-info p
{
    font-size: 14px;
    line-height: 1.4;
}

@media screen and (max-width:720px)
{
}

.hero-slideshow
{
    position: relative;

    height: 500px;
}

.hero-slideshow .container
{
    max-width: 700px;

    text-align: center;
}

.hero-slideshow .v-center.hide
{
    transition: all .4s;

    opacity: 0;
}

.hero-slideshow h1
{
    font-size: 40px;
    font-weight: 600;

    margin: 0 0 10px 0;

    color: #fff;
}

.hero-slideshow p
{
    font-size: 24px;
    line-height: 1.4;

    color: #fff;
}

.hero-slideshow .button
{
    margin: 15px 0 0 0;
}

@media screen and (max-width:720px)
{
    .hero-slideshow .container
    {
        padding: 0 25px;
    }

    .hero-slideshow h1
    {
        font-size: 32px;
    }

    .hero-slideshow p
    {
        font-size: 18px;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .hero-slideshow
    {
        height: 300px;
    }

    .hero-slideshow .container
    {
        max-width: 525px;
    }

    .hero-slideshow h1
    {
        font-size: 24px;
    }

    .hero-slideshow p
    {
        font-size: 12px;
    }
}

.view-front-page .heading-2
{
    margin: 0 0 25px 0;

    color: #111;
}

.block-product-range
{
    margin: 40px 0;
}

.block-product-range .product
{
    position: relative;

    float: left;

    width: 25%;

    background: #222;
}

.block-product-range .product .category
{
    font-size: 14px;
    font-weight: 600;

    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;

    display: block;

    padding: 7px 13px;

    text-decoration: none;

    color: #fff;
    background: #515252;
}

.block-product-range .product img
{
    display: block;

    width: 100%;
    height: auto;

    transition: opacity .4s;
}

.block-product-range .product:hover img
{
    transition: opacity .4s;

    opacity: .25;
}

.view-front-page .asides
{
    margin: 40px 0;
}

.view-front-page .asides .flex
{
    -ms-flex-align: stretch;
    align-items: stretch;
}

.view-front-page .asides .col
{
    position: relative;

    width: 31%;
    margin: 0 0 0 3%;
}

.view-front-page .asides .col-1
{
    margin: 0;
}

.view-front-page .asides .button
{
    margin: 35px 0 0 0;
}

.view-front-page .asides .col-3 .button
{
    position: absolute;
    bottom: 0;
    left: 0;
}

@media screen and (max-width:1000px)
{
    .view-front-page .block-product-range .product
    {
        width: 33.33333%;
    }
}

@media screen and (max-width:720px)
{
    .view-front-page .block-product-range .product
    {
        width: 50%;
    }

    .view-front-page .block-product-range .product .category
    {
        font-size: 16px;

        padding: 10px 15px;
    }

    .view-front-page .asides .flex
    {
        display: block;
    }

    .view-front-page .asides .col
    {
        width: 100%;
        margin: 0 0 50px 0;
    }

    .view-front-page .asides .col:last-child
    {
        margin: 0;
    }

    .view-front-page .asides .col-3 .button
    {
        position: static;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .view-front-page .block-product-range .product .category
    {
        font-size: 12px;
    }

    .view-front-page .asides p
    {
        font-size: 12px;
    }
}

@media only screen and (min-device-width : 420px) and (max-device-width : 667px),
only screen and (min-device-width:320px) and (max-device-width:568px)
{
    .view-front-page .block-product-range .product
    {
        width: 100%;
    }
}

.view-page
{
    overflow: hidden;

    padding: 30px 0;
}

.view-page .sidebar
{
    float: left;

    width: 28%;

    color: #969696;
}

.view-page .sidebar.right
{
    float: right;
}

.view-page .sidebar .heading-3
{
    margin: 0 0 10px 0;
}

.view-page .sidebar .heading-3 a
{
    text-decoration: none;
}

.view-page .side-navigation
{
    font-size: 14px;
    line-height: 1.4;
}

.view-page .side-navigation li
{
    margin: 0 0 5px 0;

    list-style: none;
}

.view-page .side-navigation li a
{
    transition: color .4s;
    text-decoration: none;

    color: #969696;
}

.view-page .side-navigation li a sup
{
    font-size: 9px;
}

.view-page .side-navigation li a:hover
{
    transition: color .4s;

    color: rgb(82,82,82);
}

.view-page .side-navigation li.current_page_item:not(.crosslink) > a
{
    font-weight: 600;
}

.view-page .side-navigation .children
{
    margin: .2em 0 0 25px;
}

.view-page .side-navigation li
{
    position: relative;
}

.view-page .side-navigation li .icon
{
    font-size: 18px;

    position: relative;
    top: 1px;

    margin: 0 4px 0 0;
}

.view-page .side-navigation li .fa-caret-down
{
    display: none;
}

.view-page .side-navigation li.current_page_ancestor.dropdowned > .fa-caret-down,
.view-page .side-navigation li.current_page_item.dropdowned > .fa-caret-down
{
    display: inline-block;
}

.view-page .side-navigation li.current_page_ancestor.dropdowned > .fa-caret-right,
.view-page .side-navigation li.current_page_item.dropdowned > .fa-caret-right
{
    display: none;
}

.view-page .side-navigation .crosslink:before
{
    font-family: FontAwesome;
    font-size: 11px;

    margin: 0 5px 0 1px;

    content: '\f08e';
}

.view-page .side-navigation .sub-menu
{
    display: none;

    margin: .2em 0 0 25px;
}

.view-page .side-navigation .menu-item-has-children.current-menu-item > .sub-menu,
.view-page .side-navigation .current-menu-ancestor > .sub-menu
{
    display: block;
}

.view-page .content
{
    float: right;

    width: 70%;
}

.view-page .content.left
{
    float: left;
}

.view-page .content .header
{
    margin: 0 0 30px 0;
}

.view-page .content .header h1
{
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;

    word-wrap: break-word;
}

.view-page .content .header h1 sup
{
    font-size: 12px;

    vertical-align: super;
}

.view-page .content strong
{
    font-weight: 600;
}

.view-page .content h2
{
    font-size: 18px;
    line-height: 1.3;

    display: -ms-flexbox;
    display: flex;

    margin: 0 0 .5em 0;

    -ms-flex-align: center;
    align-items: center;
}

.view-page .content h2 img
{
    display: block;

    max-width: 15px;
    height: auto;
    margin-right: 10px;
}

.view-page .content h2:first-of-type
{
    margin-bottom: 1em;
}

.view-page .content h3
{
    font-size: 22px;
    font-weight: 600;
    line-height: 26px;

    margin: 0 0 .6em 0;
}

.view-page .content p
{
    font-size: 14px;
    line-height: 1.4;
}

.view-page .content p:not(:last-child)
{
    margin: 0 0 1.4em 0;
}

.view-page .content p img
{
    max-width: 100%;
    height: auto;
}

.view-page .content p small
{
    font-size: 10px;
}

.view-page .content ul
{
    font-size: 14px;
    line-height: 1.4;

    margin: 0 0 1.3em 2.5em;
}

.view-page .content ul li ul
{
    margin-bottom: 5px;
}

.view-page .content ol
{
    font-size: 14px;
    line-height: 1.4;

    position: relative;
    left: 1.3em;

    margin: 0 0 1.3em 0;
}

.view-page .content ol li
{
    margin: 0 0 0 0;
}

.view-page .content ol li ol
{
    margin: 0 0 2px 0;

    list-style: none;
}

.view-page .content ol li ol li
{
    position: relative;
}

.view-page .content ol li ol li:before
{
    content: '- ';
}

.view-page .content blockquote
{
    position: relative;

    max-width: 74%;
    margin: 45px 0 55px 0;
    padding: 0 0 0 25px;
}

.view-page .content blockquote:before
{
    position: absolute;
    top: 8px;
    left: 0;

    height: 88%;

    content: ' ';

    border-left: 1px solid #969696;
}

.view-page .content blockquote p
{
    font-size: 22px;
    font-weight: 600;
    line-height: 1.4;

    color: #969696;
}

.view-page .content img.alignleft
{
    float: left;

    margin: 0 55px 0 0;
}

.view-page .content figure.alignnone,
.view-page .content img.size-full,
.view-page .content img.alignnone
{
    max-width: 100%;
    height: auto;
}

.view-page .content hr
{
    clear: both;

    border: none;
}

.view-page .content hr.lined
{
    margin: 65px 0;

    border-top: 1px solid #ccc;
}

.view-page .content .column-group + hr
{
    border-top: 1px solid #ccc;
}

.view-page .content .block-product-range .container
{
    width: 100%;
}

.view-page .content .block-product-range .product
{
    width: 33.33333%;
}

.view-page .content img.wp-image-998
{
    margin-right: 118px !important;
}

.view-page .content img.wp-image-999
{
    margin-right: 118px !important;
}

.view-page .content img.wp-image-1098
{
    margin-right: 40px;
}

.view-page .content img.wp-image-826
{
    margin: 50px 0;
}

@media screen and (max-width:720px)
{
    .view-page .content .block-product-range .product
    {
        width: 100%;
    }

    .view-page .content img.alignleft
    {
        float: none;

        margin: 0;
    }

    .view-page .tablepress-wrapper
    {
        overflow-y: scroll;

        overflow-scrolling: touch;
    }

    .view-page .content h2 > img.alignleft
    {
        margin-bottom: 25px;
    }
}

.page-id-211 .view-page .content ul
{
    margin-left: 18px;
}

.view-page .content .wp-caption
{
    font-size: 14px;

    margin: 0 0 1.3em 0;
}

.view-page .content .wp-caption img
{
    margin: 0 0 5px 0;
}

.view-page .content .wp-caption figcaption
{
    font-size: 12px;
}

.view-page .content .gallery-container
{
    position: relative;
}

.view-page .content .gallery .gallery-pagers a
{
    position: absolute;
    z-index: 500;
    top: 50%;

    transform: translateY(-50%);
}

.view-page .content .gallery .gallery-pagers a.arrow-left
{
    left: 10px;
}

.view-page .content .gallery .gallery-pagers a.arrow-right
{
    right: 10px;
}

.view-page .content .gallery .gallery-pagers .fa
{
    font-size: 45px;

    transition: color .4s;

    color: rgba(255,255,255,.5);
}

.view-page .content .gallery .gallery-pagers a:hover .fa
{
    color: rgba(255,255,255,1);
}

.view-page .content .gallery .slideshow
{
    margin: 0 0 15px 0;
}

.view-page .content .gallery .thumbs .thumb
{
    float: left;

    width: 10%;

    transition: opacity .4s;
}

.view-page .content .gallery .thumbs .thumb.active
{
    border-bottom: 4px solid #f00;
}

.view-page .content .gallery .thumbs .thumb.non-active
{
    transition: opacity .4s;

    opacity: .4;
}

.view-page .content .gallery .thumbs .thumb:hover
{
    transition: opacity .4s;

    opacity: 1;
}

.view-page .content .gallery .thumbs .thumb img
{
    display: block;

    width: 100%;
    height: auto;
}

.flexbox .view-page .content .gallery .thumbs
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flexbox .view-page .content .gallery .thumbs .thumb
{
    margin: 0 3px 0 0;

    -ms-flex: 1;
        flex: 1;
}

.flexbox .view-page .content .gallery .thumbs .thumb:last-child
{
    margin: 0;
}

.page-id-1640 .view-page .column-number-1,
.page-id-733 .view-page .column-number-1,
.page-id-248 .view-page .column-number-1,
.page-id-222 .view-page .column-number-1
{
    width: 33%;
}

.page-id-1640 .view-page .column-number-2,
.page-id-733 .view-page .column-number-2,
.page-id-248 .view-page .column-number-2,
.page-id-222 .view-page .column-number-2
{
    width: 58%;
}

.page-id-1679 .view-page .column-number-1
{
    width: 25%;
}

.page-id-1679 .view-page .column-number-2
{
    width: 70%;
}

@media screen and (max-width:720px)
{
    .view-page .content blockquote
    {
        max-width: 100%;
    }

    .view-page .content blockquote p
    {
        line-height: 1.2;
    }

    .view-page .content blockquote:before
    {
        top: 6px;

        height: 95%;
    }

    .view-page .sidebar
    {
        display: none;
    }

    .view-page .content
    {
        float: none;

        width: 100%;
    }

    .view-page .columns-2 .column
    {
        float: none;

        width: 100%;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .view-page .content .header h1
    {
        font-size: 24px;
    }

    .view-page .content h2
    {
        font-size: 14px;
    }

    .view-page .content h3
    {
        font-size: 20px;
    }

    .view-page .side-navigation
    {
        font-size: 12px;
    }

    .view-page .content ul,
    .view-page .content p
    {
        font-size: 12px;
    }

    .view-page .content blockquote p
    {
        font-size: 16px;
    }

    .view-page .content blockquote:before
    {
        top: 5px;

        height: 90%;
    }
}

.view-page .content .me-box-contact
{
    max-width: 300px;
    margin: 0 0 50px 0;
    padding: 25px;

    color: #fff;
    border-radius: 10px;
    background: #525252;
}

.view-page .content .me-box-contact:last-child
{
    margin: 0;
}

.view-page .content .me-box-contact h1
{
    font-size: 22px;
    font-weight: 600;

    margin: 0 0 10px 0;
    padding: 0 0 10px 0;

    border-bottom: 1px solid #fff;
}

.view-page .content .me-box-contact p
{
    margin: 0;
}

.view-page .content .me-box-contact p a
{
    text-decoration: underline;
}

.view-page .content .me-box-contact-technical
{
    float: left;

    margin: 0 0 0 35px;
}

.view-page .content .me-box-contact-technical .phone
{
    font-size: 18px;
    font-weight: 600;
}

.view-page .content .me-links-box
{
    margin: 0 0 50px 0;
    padding: 45px 45px 25px 45px;

    border-radius: 2px;
    background: #ebebeb;
}

.view-page .content .me-links-box:last-child
{
    margin: 0;
}

.view-page .content .me-links-box h1
{
    font-size: 22px;
    font-weight: 600;

    margin: 0 0 0 0;
}

.view-page .content .me-links-box h1 a
{
    text-decoration: none;
}

.view-page .content .me-links-box ul
{
    margin: 0;

    list-style: none;
}

.view-page .content .me-links-box ul sup
{
    font-size: 11px;
}

@media screen and (max-width:720px)
{
    .view-page .content .me-links-box
    {
        padding-bottom: 35px;
    }

    .view-page .content .me-links-box h1
    {
        margin-bottom: 15px;
    }

    .view-page .content .me-links-box .column-number-2
    {
        margin-top: -17px;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .view-page .content .me-links-box h1
    {
        font-size: 20px;
    }
}

.view-page .tablepress-wrapper
{
    margin-bottom: 1.4em;
}

.view-page .tablepress-table-description
{
    font-size: 12px;
    line-height: 1.4;
}

.view-page .tablepress:last-child
{
    margin: 0;
}

.view-page .tablepress:not(:last-child)
{
    margin-bottom: 1em;
}

.view-page .tablepress th,
.view-page .tablepress td
{
    font-size: 14px;
}

.view-page .tablepress td sup
{
    font-size: 9px;
}

.view-page .tablepress th
{
    font-size: 14px;

    color: #fff;
    border-bottom: none;
    background: #322f31;
}

.view-page .tablepress .odd td,
.view-page .tablepress .even td
{
    color: #fff;
    border: 1px solid #7a7b7e;
    background: #4c4d4f;
}

.view-page .tablepress:not(.table-active-col-first):not(.table-active-col-last) .odd td.column-2,
.view-page .tablepress:not(.table-active-col-first):not(.table-active-col-last) .even td.column-2
{
    background: #636466;
}

.view-page .tablepress .row-hover tr:hover td
{
    background-color: #4c4d4f;
}

.view-page .tablepress:not(.table-active-col-first):not(.table-active-col-last) tr.odd:hover td.column-2,
.view-page .tablepress:not(.table-active-col-first):not(.table-active-col-last) tr.even:hover td.column-2
{
    background: #636466;
}

.view-page .tablepress.table-active-col-first:hover td.column-1,
.view-page .tablepress.table-active-col-first td.column-1
{
    background: #636466;
}

.view-page .tablepress.table-active-col-last:hover td:last-child,
.view-page .tablepress.table-active-col-last td:last-child
{
    background: #636466;
}

.view-page .tablepress-id-60,
.view-page .tablepress-id-61,
.view-page .tablepress-id-109
{
    table-layout: fixed;
}

.view-page .tablepress-id-51 th,
.view-page .tablepress-id-51 td,
.view-page .tablepress-id-52 th,
.view-page .tablepress-id-52 td,
.view-page .tablepress-id-53 th,
.view-page .tablepress-id-53 td
{
    font-size: 9px;

    padding: 7px 2px;

    text-align: center;
}

.view-page .tablepress-id-51 tbody tr:hover td:first-child,
.view-page .tablepress-id-51 tbody tr td:first-child,
.view-page .tablepress-id-52 tbody tr:hover td:first-child,
.view-page .tablepress-id-52 tbody tr td:first-child,
.view-page .tablepress-id-53 tbody tr:hover td:first-child,
.view-page .tablepress-id-53 tbody tr td:first-child
{
    background: #322f31;
}

.view-page .tablepress-id-27,
.view-page .tablepress-id-30,
.view-page .tablepress-id-31,
.view-page .tablepress-id-48,
.view-page .tablepress-id-46,
.view-page .tablepress-id-50,
.view-page .tablepress-id-54,
.view-page .tablepress-id-55,
.view-page .tablepress-id-60,
.view-page .tablepress-id-61,
.view-page .tablepress-id-62,
.view-page .tablepress-id-80,
.view-page .tablepress-id-81,
.view-page .tablepress-id-82,
.view-page .tablepress-id-83,
.view-page .tablepress-id-84,
.view-page .tablepress-id-85,
.view-page .tablepress-id-86,
.view-page .tablepress-id-107,
.view-page .tablepress-id-108,
.view-page .tablepress-id-109
{
    width: auto;
    min-width: 340px;
}

.view-page .tablepress-id-9 td.column-5:hover,
.view-page .tablepress-id-9 td.column-6:hover,
.view-page .tablepress-id-1 td.column-3:hover,
.view-page .tablepress-id-9 td.column-5,
.view-page .tablepress-id-9 td.column-6,
.view-page .tablepress-id-1 td.column-3
{
    background: rgb(266,6,19) !important;
}

@media screen and (max-width:720px)
{
    /* .view-page .content 																	{overflow-x:hidden;} */
}

.view-page .tablepress.tablepress-id-10
{
    max-width: 350px;
}

.view-page .tablepress.tablepress-id-11
{
    max-width: 350px;
}

.view-page-contact
{
    padding: 0;
}

.view-page-contact .row .box
{
    width: 50%;
    padding: 50px;

    vertical-align: top;

    color: #fff;
}

.view-page-contact .row-1 .box-1
{
    background: #515252;
}

.view-page-contact .row-1 .box-2
{
    background: #3e3f3f;
}

.view-page-contact .row-1 .icon
{
    font-size: 40px;

    display: block;

    margin: 0 0 35px 0;
}

.view-page-contact .row-2
{
    background: #2a2b2b;
}

.view-page-contact .row-2 .box-2
{
    /*vertical-align:middle;*/
}

.view-page-contact .row h1
{
    font-size: 24px;
    line-height: 1.2;

    margin: 0 0 25px 0;
}

.view-page-contact .row h1 a
{
    padding: 0 0 3px 0;

    text-decoration: none;

    border-bottom: 1px solid #fff;
}

.view-page-contact .row p
{
    font-size: 16px;
    line-height: 1.4;
}

.view-page-contact .social a
{
    margin: 0 5px 0 0;

    text-decoration: none;
}

.view-page-contact .social .icon
{
    font-size: 34px;
}

.view-page-contact .map-container
{
    position: relative;
    z-index: 0;
}

.view-page-contact .map-container .map
{
    min-height: 500px;

    background: #ccc;
}

.view-page-contact .map-container .locations
{
    position: absolute;
    z-index: 50;
    top: 0;
    left: 0;

    width: 235px;

    background: #fff;
}

.view-page-contact .map-container .locations ul
{
    list-style: none;
}

.view-page-contact .map-container .locations li
{
    border-bottom: 1px solid #eee;
}

.view-page-contact .map-container .locations a
{
    font-size: 16px;

    display: block;

    padding: 15px;

    text-decoration: none;

    color: #969696;
}

.view-page-contact .map-container .locations h1
{
    margin: 0 0 5px 0;
}

.view-page-contact .map-container .locations address
{
    line-height: 1.5;

    display: none;
}

.view-page-contact .map-container .locations .active a
{
    color: #fff;
    background: #e7002d;
}

.view-page-contact .map-container .locations .active address
{
    display: block;
}

@media screen and (max-width:720px)
{
    .view-page-contact .row h1
    {
        font-size: 20px;
    }

    .view-page-contact #map
    {
        display: none;
    }

    .view-page-contact .map-container .locations
    {
        position: static;

        width: 100%;
    }

    .view-page-contact .row .box
    {
        display: block;

        width: 100%;
        padding: 50px 40px;
    }

    .view-page-contact .map-container .locations
    {
        background: #515252;
    }

    .view-page-contact .map-container .locations .active a
    {
        color: #fff;
        background: none;
    }

    .view-page-contact .map-container .locations li
    {
        padding: 20px 0;

        border-bottom-color: #fff;
    }

    .view-page-contact .map-container .locations a
    {
        color: #fff;
    }

    .view-page-contact .map-container .locations address
    {
        display: block;
    }
}

.view-casestudy .content h2.heading
{
    font-size: 32px;
    font-weight: 600;

    margin-bottom: 35px;
}

.view-casestudy .content .text p:first-child
{
    font-size: 18px;
}

.view-casestudy .info .box
{
    float: left;

    width: 25%;
}

.view-casestudy .info .meta
{
    margin-top: 35px;
}

.view-casestudy .info .meta li
{
    list-style: none;
}

.view-casestudy .info .meta li:not(:last-child)
{
    margin-bottom: 25px;
}

.view-casestudy .info .meta-heading
{
    font-weight: 600;

    margin-bottom: 5px;
}

.view-casestudy .info .meta-content
{
    font-size: 14px;
    line-height: 22px;
}

.view-casestudy .images
{
    padding-top: 50px;
}

.view-casestudy .images img
{
    display: block;

    width: 100%;
    height: auto;
}

.view-casestudy .image
{
    clear: both;
}

.view-casestudy .two-images:not(:last-child),
.view-casestudy .image:not(:last-child)
{
    margin-bottom: 2%;
}

.view-casestudy .two-images
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: justify;
    justify-content: space-between;
}

.view-casestudy .two-images .left
{
    width: 49%;
}

.view-casestudy .two-images .right
{
    width: 49%;
}

.view-casestudy .action
{
    clear: both;

    padding-top: 60px;
}

@media screen and (max-width:768px)
{
    .view-casestudy .content h2.heading
    {
        font-size: 24px;
    }

    .view-casestudy .action,
    .view-casestudy .images
    {
        float: right;

        width: 70%;
    }

    .view-casestudy .button
    {
        font-size: 16px;
    }

    .view-casestudy .action
    {
        padding-top: 40px;
    }
}

@media screen and (max-width: 420px)
{
    .view-casestudy .info .box,
    .view-casestudy .action,
    .view-casestudy .images
    {
        float: none;

        width: 100%;
    }

    .view-casestudy .info .box
    {
        display: -ms-flexbox;
        display: flex;
            flex-direction: column-reverse;

        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-direction: column-reverse;
    }

    .view-casestudy .info .meta
    {
        margin-bottom: 35px;
    }

    .view-casestudy .info .box .button.button-grey
    {
        display: none;
    }
}

.view-casestudies .heading
{
    font-size: 32px;
    font-weight: 600;

    margin-bottom: 40px;
}

.view-casestudies .subheading
{
    font-size: 18px;
    font-weight: 600;

    margin-bottom: 20px;

    color: #000;
}

.view-casestudies .grouped
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex: 1 50%;
        flex: 1 50%;
}

.view-casestudies .links
{
    font-size: 14px;

    display: -ms-flexbox;
    display: flex;

    margin-bottom: 25px;

    color: #969696;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.view-casestudies .links a
{
    text-decoration: none;
}

.view-casestudies .links a.active
{
    text-decoration: underline;

    color: #111;
}

.view-casestudies .links .group
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex: 1 50%;
        flex: 1 50%;
}

.view-casestudies .links .box
{
    width: 207px;
    max-width: 100%;
    margin-right: 15px;
}

.view-casestudies .links .box > div
{
    margin-bottom: 5px;
}

.view-casestudies .items
{
    margin-top: 45px;
}

.view-casestudies .casestudies
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.view-casestudies .casestudies .box
{
    width: 32%;
}

.view-casestudies .items
{
    margin-bottom: 50px;
}

.view-casestudies .items .gutter-sizer
{
    width: 2%;
}

.view-casestudies .items .grid-sizer
{
    width: 32%;
}

.view-casestudies .items .grid-sizer-large
{
    width: 100%;
}

.view-casestudies .divider
{
    width: 1px;

    background: #000;

    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.view-casestudies .clear
{
    font-size: 14px;

    color: #969696;
}

.view-casestudies select
{
    font-size: 14px;

    display: block;

    width: 100%;
    padding: 18px;

    border: none;
    background: #f4f4f4;
    background-image: url(../images/select-arrow.svg);
    background-repeat: no-repeat;
    background-position: right 25px center;

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

.links.»mobile .filters
{
    width: 49%;
}

@media screen and (min-width:769px)
{
    .links.»mobile
    {
        display: none;
    }

    .view-casestudies .items .grid-sizer:nth-last-child(-n + 3)
    {
        margin-bottom: 30px;
    }
}

@media screen and (max-width:768px)
{
    .links.»desktop
    {
        display: none;
    }

    .view-casestudies .items .grid-sizer
    {
        width: 48%;
    }

    .view-casestudies .items .grid-sizer:nth-last-child(-n + 2)
    {
        margin-bottom: 30px;
    }
}

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

@media screen and (max-width: 420px)
{
    .links.»mobile .filters
    {
        width: 100%;
    }

    .links.»mobile .filters:first-child
    {
        margin-bottom: 15px;
    }

    .view-casestudies .casestudies .box
    {
        width: 100%;
    }

    .view-casestudies .featured-case-study,
    .view-casestudies .casestudies .box:not(:last-child)
    {
        margin-bottom: 30px;
    }

    .view-casestudies .items
    {
        margin-bottom: 20px;
    }

    .view-casestudies
    {
        padding-bottom: 0;
    }
}

.link-cta
{
    font-size: 14px;
    font-weight: 600;
    line-height: 18px;

    padding: 30px;

    background: #ebebeb;
}

.link-cta a
{
    text-decoration: underline;
}

.view-page-search .result
{
    margin: 0 0 45px 0;
}

.view-page-search .result h1
{
    font-size: 18px;
    font-weight: 600;

    margin: 0 0 10px 0;
}

.view-page-search .result p
{
    font-size: 14px;
    line-height: 1.4;

    margin-bottom: 10px;
}

.news-post-excerpt
{
    width: 48%;
    margin: 0 0 35px 0;
}

.news-post-excerpt .thumbnail
{
    display: block;

    max-width: 100%;
    height: auto;
    margin: 0 0 15px 0;
}

.news-post-excerpt h1
{
    font-size: 22px;
    font-weight: 600;

    margin: 0 0 10px 0;
}

.news-post-excerpt h1 a
{
    text-decoration: none;
}

.news-post-excerpt .cats
{
    font-size: 14px;

    margin: 0 0 5px 0;

    color: #bbb;
}

.news-post-excerpt .time
{
    font-size: 14px;

    color: #bbb;
}

.news-post-excerpt:nth-child(odd)
{
    float: left;
    clear: both;
}

.news-post-excerpt:nth-child(even)
{
    float: right;
}

.news-post-full .header h1
{
    margin: 0 0 5px 0;
}

.news-post-full .header .time
{
    font-size: 14px;

    color: #bbb;
}

.news-post-full .thumbnail
{
    display: block;

    max-width: 100%;
    height: auto;
    margin: 0 0 15px 0;
}

@media screen and (max-width:720px)
{
    .news-post-excerpt h1
    {
        font-size: 18px;
        line-height: 1.3;
    }

    .news-post-excerpt
    {
        float: none;

        width: 100%;
        margin: 0 0 25px 0;
    }
}

.box-share
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 20px;

    display: inline-block;

    margin: 50px 0 25px 0;
    padding: 10px 15px;

    color: #fff;
    background: #969696;
}

.box-share .text
{
    display: inline-block;

    margin: 0 10px 0 0;
}

.box-share a
{
    font-size: 22px;

    display: inline-block;

    margin: 0 5px;

    text-decoration: none;
}

.box-share a i.fa-facebook
{
    font-size: 20px;
}

.box-share a i.fa-google-plus
{
    font-size: 19px;
}

.box-share a i.fa-envelope
{
    font-size: 20px;
}

.table-jobs
{
    font-size: 14px;

    margin: 50px 0;

    text-align: left;
}

.table-jobs tr
{
    transition: background .4s;

    border-bottom: 1px solid #f0f0f0;
}

.table-jobs tr:first-child
{
    border: none;
}

.table-jobs tr:hover
{
    background: #e6e6e6;
}

.table-jobs th
{
    font-weight: 600;

    padding: 15px;

    text-transform: uppercase;

    background: #f0f0f0;
}

.table-jobs td
{
    padding: 15px;
}

.table-jobs tr td:first-child
{
    font-weight: 600;
}

.table-jobs td a
{
    text-decoration: none;
}

.pagers
{
    font-size: 14px;
}

.pagers .arrow
{
    font-size: 25px;

    vertical-align: -4px;

    color: #aeafb1;
}

.useful-links
{
    clear: both;

    margin: 45px 0 0 0;
    padding: 20px 0 0 0;

    border-top: 1px solid #969696;
}

.useful-links h2.heading-2
{
    font-size: 22px;

    margin: 0 0 10px 0;
}

.useful-links ul
{
    margin: 0 !important;

    list-style: none;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .useful-links h2.heading-2
    {
        font-size: 20px;
    }
}

.related-info
{
    clear: both;

    margin: 45px 0 0 0;
    padding: 20px 0 0 0;

    border-top: 1px solid #969696;
}

.related-info h2.heading-2
{
    font-size: 22px;

    margin: 0 0 10px 0;
}

.related-info .col
{
    position: relative;

    float: left;

    width: 50%;

    background: #222;
}

.related-info .col .link
{
    font-size: 14px;
    font-weight: 600;

    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;

    display: block;

    padding: 7px 13px;

    text-decoration: none;

    color: #fff;
    background: #515252;
}

.related-info .col img
{
    display: block;

    width: 100%;
    height: auto;

    transition: opacity .4s;
}

.related-info .col:hover img
{
    transition: opacity .4s;

    opacity: .25;
}

@media screen and (max-width:720px)
{
    .related-info .col
    {
        float: none;

        width: 100%;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .related-info h2.heading-2
    {
        font-size: 20px;
    }

    .related-info .col .link
    {
        font-size: 10px;
    }
}

.main-footer
{
    margin: 60px 0 0 0;
    padding: 35px 0;

    background: #525252;
}

.main-footer .col
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 21px;

    text-align: left;
    vertical-align: middle;
    text-transform: uppercase;

    color: #f0f1f2;
}

.main-footer .col a
{
    transition: color .4s;
    text-decoration: none;

    color: #f0f1f2;
}

.main-footer .col a:hover
{
    transition: color .4s;

    color: #ccc;
}

.main-footer .col img
{
    margin: 0 7px 0 0;

    vertical-align: middle;
}

.main-footer .col-1
{
    width: 10%;
}

.main-footer .col-2
{
    width: 35%;
}

.main-footer .col-3
{
    width: 30%;
    padding: 0 0 0 5%;
}

.main-footer .col-4
{
    width: 25%;
    padding: 0 0 0 5%;
}

.main-footer .cite
{
    font-size: 14px;
    line-height: 1.4;

    margin: 15px 0 0 0;

    color: #6d6e71;
}

.main-footer .cite a
{
    transition: color .4s;

    color: #6d6e71;
}

.main-footer .cite a:hover
{
    transition: color .4s;

    color: #ccc;
}

.main-footer .email
{
    margin: -2px 0 0 0;
}

.main-footer .col .icon-phone
{
    margin: 0 7px 0 0;

    vertical-align: -1px;
}

.main-footer .col .icon-mail
{
    margin: 0 7px 0 0;

    vertical-align: 0;
}

.main-footer .col .icon-twitter
{
    font-size: 22px;
}

.main-footer .col .icon-facebook
{
    font-size: 21px;

    margin: 0 0 0 5px;
}

.main-footer .col .icon-twitter:hover,
.main-footer .col .icon-facebook:hover
{
    color: #ccc;
}

/*@media screen and (max-width:1000px){

}*/

@media screen and (max-width:1100px)
{
    .main-footer .col
    {
        font-size: 19px;
    }
}

@media screen and (max-width:1000px)
{
    .main-footer .col
    {
        font-size: 17px;
    }
}

@media screen and (max-width:900px)
{
    .main-footer .col
    {
        font-size: 15px;
    }
}

@media screen and (max-width:720px)
{
    .main-footer .col
    {
        display: block;
        float: none;

        width: 100%;
        padding: 0;
    }

    .main-footer .col-1
    {
        margin: 0 0 20px 0;
    }

    .main-footer .col-4
    {
        margin: 20px 0 0 0;
    }

    .main-footer .col-2
    {
        margin: 0 0 10px 0;
    }

    .main-footer .col .icon-phone,
    .main-footer .col .icon-mail
    {
        display: none;
    }

    .break
    {
        display: block;
    }
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .main-footer .col
    {
        font-size: 15px;
    }

    .main-footer .col .icon-twitter,
    .main-footer .col .icon-facebook
    {
        font-size: 15px;
    }

    .main-footer .cite
    {
        font-size: 12px;
    }
}

@media only screen and (min-device-width : 420px) and (max-device-width : 667px),
only screen and (min-device-width:320px) and (max-device-width:568px)
{
    .main-footer .col
    {
        font-size: 18px;
    }

    .main-footer .cite
    {
        font-size: 12px;
    }
}

.popup
{
    position: fixed;
    z-index: 300;
    top: 0;
    left: 0;

    visibility: hidden;

    width: 100%;
    height: 100%;
    padding: 15% 0 0 0;

    transition: all .5s;

    opacity: 0;
    background: rgba(0,0,0,.9);
}

.popup.open
{
    visibility: visible;

    transition: all .5s;

    opacity: 1;
}

.popup .close
{
    display: block;

    width: 17px;
    margin: 0 auto 35px auto;
}

.global-search .text
{
    font-size: 100px;

    display: block;

    width: 100%;

    color: #fff;
    border: none;
    border-bottom: 1px solid #fff;
    background: none;
}

.global-search .text::-webkit-input-placeholder
{
    color: #fff;
}

.global-search .text::-moz-placeholder
{
    color: #fff;
}

.global-search .text:-ms-input-placeholder
{
    color: #fff;
}

.global-search .text::placeholder
{
    color: #fff;
}

.global-search .text:focus
{
    outline: none;
}

.global-search form
{
    margin: 0 0 25px 0;
}

.global-search p
{
    font-size: 12px;

    color: #fff;
}

.global-search .box
{
    transition: all .4s;
    transform: translate3d(0,50px,0);

    opacity: 0;
}

.global-search .icon-search
{
    max-width: 14px;
    height: auto;
    margin: 0 4px 0 0;

    vertical-align: -4px;
}

.open.global-search .box
{
    transition: all .4s .5s;
    transform: translate3d(0,0,0);

    opacity: 1;
}

.global-newsletter .container
{
    position: relative;

    max-width: 400px;
}

.global-newsletter .success
{
    position: absolute;
    top: 45px;
    left: 0;

    width: 100%;
}

.global-newsletter .success,
.global-newsletter .box
{
    visibility: hidden;

    transition: all .4s;
    transform: translate3d(0,50px,0);

    opacity: 0;
}

.global-newsletter .heading-2
{
    font-weight: 600;

    margin: 0 0 20px 0;

    text-align: center;

    color: #fff;
}

.global-newsletter p
{
    font-size: 16px;
    line-height: 1.4;

    margin: 0 0 20px 0;

    text-align: center;

    color: #fff;
}

.global-newsletter .element
{
    position: relative;

    margin: 10px 0;
}

.global-newsletter .element:last-child
{
    margin-bottom: 0;
}

.global-newsletter .text
{
    font-size: 16px;

    display: block;

    width: 100%;
    padding: 10px 10px;

    color: #969696;
    border: 1px solid #fff;
    background: none;
}

.global-newsletter .text:focus
{
    outline: none;
}

.global-newsletter .text:focus::-webkit-input-placeholder
{
    color: transparent;
}

.global-newsletter .text:focus::-moz-placeholder
{
    color: transparent;
}

.global-newsletter .text:focus:-ms-input-placeholder
{
    color: transparent;
}

.global-newsletter .text:focus::placeholder
{
    color: transparent;
}

.global-newsletter .tooltip
{
    font-size: 10px;
    font-weight: 600;

    position: absolute;
    z-index: 4;
    right: 1px;
    bottom: 1px;

    visibility: hidden;

    padding: 4px;

    transition: all .4s;
    letter-spacing: 1px;
    text-transform: uppercase;

    opacity: 0;
    color: #222;
    background: red;
}

.global-newsletter .text.error + .tooltip
{
    visibility: visible;

    transition: all .4s;

    opacity: 1;
}

.global-newsletter .button
{
    display: block;

    margin: 35px auto 0 auto;
    padding: 7px 15px;

    text-transform: uppercase;

    color: #fff;
    border: none;
}

.global-newsletter .success.show,
.open.global-newsletter .box
{
    visibility: visible;

    transition: all .4s .5s;
    transform: translate3d(0,0,0);

    opacity: 1;
}

.form-global-newsletter
{
    transition: opacity .4s;

    opacity: 1;
}

.form-global-newsletter.submitting
{
    opacity: .5;
}

.global-newsletter .success.show
{
    trasnition-delay: .5s;
}

.global-newsletter .box.animate-out
{
    transition: opacity .3s,transform .3s;
    transform: translate3d(0,50px,0);

    opacity: 0;
}

.slick-track .slide
{
    position: relative;
}

.slick-track .slide,
.slick-track,
.slick-list
{
    height: 100%;
    margin: 0;
}

.slick-dots
{
    position: absolute;
    z-index: 50;
    bottom: 10%;
    left: 0;

    width: 100%;

    text-align: center;
}

.slick-dots li
{
    display: inline-block;

    margin: 0 5px;
    padding: 0;

    list-style: none;

    border: 1px solid #fff;
    border-radius: 100%;
}

.slick-dots li button
{
    display: block;
    overflow: hidden;

    width: 13px;
    height: 13px;
    padding: 0;

    text-indent: -9999999px;

    border: none;
    border-radius: 100%;
    background: none;

    -webkit-appearance: none;
}

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

.view-page .content ul.nobullets
{
    margin-left: 0;
    padding-left: 0;

    list-style: none;
}

@media only screen and (min-device-width : 768px) and (max-device-width : 1024px)
{
    .slick-dots li button
    {
        width: 9px;
        height: 9px;
    }
}

.columns-3 .column
{
    width: 33%;
    margin-right: 1%;
}

.slick-slide img
{
    width: 100%;
    height: auto;
}

@media screen and (max-width:720px)
{
    .media-query
    {
        display: none;
    }
}

@media screen and (max-width:720px)
{
    .page-id-245 .column-number-2
    {
        margin-top: -19px;
    }
}

.timeline
{
    max-width: 900px;
    margin: 0 auto;
    padding-top: 25px;

    transition: opacity .5s;

    opacity: 0;
}

.timeline.»loaded
{
    opacity: 1;
}

.timeline .grid-sizer
{
    width: 40%;
}

.timeline .grid-gutter
{
    width: 50px;
}

.timeline_dot
{
    position: absolute;
    z-index: 2;

    width: 22px;
    height: 22px;

    transition: background .5s;

    border: 3px solid #fff;
    border-radius: 100%;
    background: #969696;
    box-shadow: 1px 1px 2px rgba(0,0,0,.15);
}

.timeline_row.is-left .timeline_dot
{
    top: 51px;
    right: -61px;
}

.timeline_row.is-right .timeline_dot
{
    top: 51px;
    left: -61px;
}

/* .timeline_row.»active .timeline_dot {background: var(--red);} */

.timeline-line,
.timeline-line-active
{
    position: absolute;
    z-index: 0;
    top: 76px;
    left: 50%;

    width: 3px;
    height: 100%;
    height: calc(100% - 75px);
    margin-left: -40px;

    transform: translateX(-50%);

    opacity: 0;
    background: #dbdbdb;
}

.timeline-line-active
{
    height: 0;

    transition: height .5s;

    background: #f00;
}

.timeline.»loaded .timeline-line,
.timeline.»loaded .timeline-line-active
{
    opacity: 1;
}

.timeline_content
{
    margin-top: -39px;
}

.timeline_content,
.timeline_extra
{
    font-size: 14px;
    font-weight: 600;

    position: relative;

    padding-top: 60px;

    color: #919191;

    -ms-flex: 1;
        flex: 1;
}

@media screen and (max-width:768px)
{
    .timeline-line-active,
    .timeline-line
    {
        margin-left: -20px;
    }
}

@media screen and (max-width: 420px)
{
    .timeline_dot
    {
        margin-left: 0;

        -ms-flex-order: -1;
        order: -1;
    }

    .timeline_row:nth-child(even)
    {
            flex-direction: row;

        -ms-flex-direction: row;
    }

    .timeline_row:not(:last-child):before,
    .timeline_row:not(:last-child):after
    {
        left: 16px;
    }

    .timeline_content,
    .timeline_extra
    {
        width: 100%;

        -ms-flex: auto;
            flex: auto;
    }

    .timeline_extra
    {
        text-align: right;
    }

    .timeline .grid-sizer
    {
        width: 80%;
    }

    .timeline .grid-gutter
    {
        width: 0;
    }

    .timeline-line-active,
    .timeline-line
    {
        right: 14px;
        left: auto;
    }
}

@media screen and (max-width: 420px)
{
    .timeline-line-active,
    .timeline-line
    {
        right: 21px;
    }
}

@media screen and (max-width: 375px)
{
    .timeline-line-active,
    .timeline-line
    {
        right: 15px;
    }
}

@media screen and (max-width: 325px)
{
    .timeline-line-active,
    .timeline-line
    {
        right: 5px;
    }
}

.card_timeline:before
{
    position: absolute;
    z-index: 1;
    top: 35px;

    width: 0;
    height: 0;

    content: ' ';
}

.timeline_row.is-right
{
    /* margin-top: 110px; */
}

.timeline_row.is-right .card_timeline:before
{
    top: 30px;
    left: -10px;

    border-top: 10px solid transparent;
    border-right: 10px solid #f4f4f4;
    border-bottom: 10px solid transparent;
}

.timeline_row.is-left .card_timeline:before
{
    right: -10px;

    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #f4f4f4;
}

/* .timeline_row:nth-child(even) .timeline_extra {
	text-align: right;
} */

.card_timeline
{
    position: relative;

    max-width: 400px;
    margin-bottom: 50px;
    padding: 30px;

    background: #f4f4f4;
}

.card_timeline.»staff
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.card_timeline .year
{
    font-family: 'bebas-neue',sans-serif;
    font-size: 34px;
    font-weight: 400;

    color: #f00;
}

.card_timeline .year:not(:last-child)
{
    margin-bottom: 15px;
}

.card_timeline .text
{
    font-size: 14px;
    line-height: 22px;
}

.card_timeline .text strong
{
    font-weight: 600;
}

.card_timeline .text:not(:last-child)
{
    margin-bottom: 20px;
}

.card_timeline .image img
{
    display: block;

    max-width: 100%;
    height: auto;
}

.card_timeline .image:not(:last-child)
{
    margin-bottom: 20px;
}

.card_timeline .photo
{
    margin-right: 20px;
}

.card_timeline .photo img
{
    display: block;

    width: 120px;
    max-width: 100%;
    height: auto;

    border-radius: 100%;
}

@media screen and (max-width: 420px)
{
    .timeline_row:nth-child(odd) .card_timeline:before
    {
        right: -10px;
        left: auto;

        border-top: 10px solid transparent;
        border-right: none;
        border-bottom: 10px solid transparent;
        border-left: 10px solid #f4f4f4;
    }

    .timeline_row .card_timeline:before
    {
        top: 31px;
    }
}

/* New Home Page */

.view-front-page + .main-footer
{
    margin-top: 0;
}

.Slider
{
    position: relative;

    margin-bottom: 90px;
}

.Slider .slick-dots
{
    bottom: 3%;
}

.Slider .slick-dots li button
{
    width: 8px;
    height: 8px;

    border-width: 2px;
}

.Slider .slick-dots li.slick-active button
{
    background: #fff;
}

.Slide
{
    position: relative;
}

.Slide--image img
{
    display: block;

    width: 100%;
    height: auto;
}

.Slide--overlay
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;
    padding: 5vw 0;

    -ms-flex-align: end;
    align-items: flex-end;
}

.Slide--box
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.Slide--content
{
    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;

    max-width: 505px;

    color: #fff;
}

.Slide--graphic
{
    max-width: 420px;
}

.Slide--graphic img
{
    display: block;

    max-width: 100%;
    height: auto;
}

@media screen and (max-width:768px)
{
    .Slider
    {
        margin-bottom: 40px;
    }

    .Slide--content
    {
        font-size: 18px;

        max-width: 300px;
    }

    .Slide--graphic
    {
        max-width: 270px;
    }

    .Slider .slick-dots
    {
        display: none !important;
    }
}

@media screen and (max-width:420px)
{
    .Slider
    {
        margin-bottom: 0;
    }

    .Slide--box
    {
        display: block;
    }

    .Slide--content
    {
        margin-bottom: 20px;
    }
}

.ProductRange
{
    padding: 90px 0;

    background: #f4f4f4;
}

.ProductRange--boxed
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.ProductRange--box:first-child
{
    width: 35%;
}

.ProductRange--box:last-child
{
    width: 55%;
}

.ProductRange--box img
{
    display: block;

    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.ProductRange--heading
{
    font-size: 24px;
    font-weight: 600;

    margin-bottom: 30px;
}

.ProductRange--content
{
    font-size: 14px;
    line-height: 22px;

    margin-bottom: 25px;
}

.ProductRange--links
{
    font-size: 14px;
    font-weight: 600;

    display: -ms-flexbox;
    display: flex;

    margin-bottom: 40px;

    list-style: none;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.ProductRange--links li a
{
    display: block;

    transition: color .4s;
    text-decoration: none;
}

.ProductRange--links li a:hover
{
    color: #969696;
}

.ProductRange--links li
{
    width: 48%;
    margin-bottom: 4px;
    padding-bottom: 4px;

    border-bottom: 1px solid #111;
}

@media screen and (max-width:768px)
{
    .ProductRange--heading
    {
        font-size: 18px;

        margin-bottom: 30px;
    }

    .ProductRange--box:first-child
    {
        margin-bottom: 80px;
    }

    .ProductRange--box
    {
        width: 100% !important;
    }
}

@media screen and (min-width: 376px) and (max-width: 768px)
{
    .ProductRange--heading
    {
        font-size: 20px;

        margin-bottom: 30px;
    }

    .ProductRange
    {
        padding-top: 45px;
        padding-bottom: 45px;
    }

    .ProductRange--boxes
    {
        display: -ms-flexbox;
        display: flex;
    }

    .ProductRange--content
    {
        width: 50%;
    }

    .ProductRange--links
    {
        width: 45%;
        margin-bottom: 0;
    }
}

@media screen and (max-width:420px)
{
    .ProductRange--heading
    {
        font-size: 18px;
    }

    .ProductRange
    {
        padding-top: 40px;
        padding-bottom: 40px;

        background: #fff;
    }
}

.IndustryRange
{
    padding-top: 90px;
}

.IndustryRange--heading
{
    font-size: 24px;
    font-weight: 600;

    margin-bottom: 40px;
}

.IndustryRange--boxes
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width:768px)
{
    .IndustryRange
    {
        padding-top: 45px;
    }

    .IndustryRange--heading
    {
        font-size: 18px;
    }
}

@media screen and (max-width:420px)
{
    .IndustryRange
    {
        padding-top: 40px;
    }

    .IndustryRange--heading
    {
        font-size: 20px;
    }
}

.IndustryRangeCard
{
    position: relative;
    z-index: 0;

    width: 25%;

    background: #111;
}

.IndustryRangeCard:hover .IndustryRangeCard--image img
{
    opacity: .4;
}

.IndustryRangeCard:hover .IndustryRangeCard--icon
{
    transform: rotate(180deg);
}

.IndustryRangeCard--image img
{
    display: block;

    width: 100%;
    height: auto;

    transition: opacity .4s;
}

.IndustryRangeCard--overlay
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
    padding: 8%;
}

.IndustryRangeCard--icon
{
    position: absolute;
    z-index: 2;
    bottom: 8%;
    left: 8%;

    transition: transform 1s;
}

.IndustryRangeCard--heading
{
    font-size: 18px;
    font-weight: 600;

    max-width: 212px;

    color: #fff;
}

@media screen and (max-width:768px)
{
    .IndustryRangeCard
    {
        width: 50%;
    }

    .IndustryRangeCard--heading
    {
        font-size: 16px;
    }
}

@media screen and (max-width:420px)
{
    .IndustryRangeCard--heading
    {
        font-size: 14px;
    }
}

.PageBlocks
{
    padding: 90px 0;
}

.PageBlocks--boxed
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.PageBlock
{
    width: 30%;
}

.PageBlock--image
{
    margin-bottom: 35px;
}

.PageBlock--image img
{
    display: block;

    width: 100%;
    height: auto;
}

.PageBlock--heading
{
    font-size: 24px;
    font-weight: 600;

    margin-bottom: 15px;
}

.PageBlock--content
{
    font-size: 14px;
    line-height: 22px;

    margin-bottom: 35px;
}

.PageBlock--action .button
{
    min-width: 120px;

    text-align: center;
}

@media screen and (max-width:768px)
{
    .PageBlocks
    {
        padding: 45px 0;
    }

    .PageBlock--heading
    {
        font-size: 18px;
    }
}

@media screen and (max-width:420px)
{
    .PageBlock
    {
        width: 100%;
    }

    .PageBlock--heading
    {
        font-size: 20px;
    }

    .PageBlock:not(:last-child)
    {
        margin-bottom: 45px;
    }
}

.QualityPolicy
{
    font-size: 14px;
    line-height: 22px;

    padding-top: 90px;

    color: #969696;
    background: #111;
}

.QualityPolicy--box
{
    position: relative;

    max-width: 640px;
    padding: 0 22px;
    padding-bottom: 90px;
}

.QualityPolicy--box:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 1px;
    height: 100%;

    content: ' ';

    background: #505352;
}

.QualityPolicy--heading
{
    font-weight: 600;

    margin-bottom: 15px;
}

.QualityPolicy--quote
{
    margin-bottom: 90px;
}

.QualityPolicy--quote p
{
    font-size: 24px;
    font-weight: 600;
    line-height: 1.15;

    margin-bottom: 40px;

    color: #fff;
}

.QualityPolicy--author
{
    font-weight: 600;

    margin-bottom: 4px;
}

@media screen and (max-width: 768px)
{
    .QualityPolicy
    {
        padding-top: 45px;
    }

    .QualityPolicy--quote
    {
        margin-bottom: 60px;
    }

    .QualityPolicy--box
    {
        padding-bottom: 45px;
    }
}

@media screen and (max-width: 768px)
{
    .QualityPolicy
    {
        padding-top: 40px;
    }

    .QualityPolicy--quote
    {
        margin-bottom: 55px;
    }

    .QualityPolicy--box
    {
        padding-bottom: 40px;
    }
}

.Numbers
{
    overflow: hidden;

    padding-top: 90px;

    background: #f00;
}

.Numbers--heading
{
    font-size: 24px;
    font-weight: 600;

    margin-bottom: 40px;

    color: #fff;
}

.Numbers--columns
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

@media screen and (max-width:768px)
{
    .Numbers
    {
        padding-top: 45px;
    }

    .Numbers--heading
    {
        font-size: 18px;
    }
}

@media screen and (max-width:420px)
{
    .Numbers
    {
        padding-top: 40px;
    }

    .Numbers--heading
    {
        font-size: 20px;
    }
}

.Number
{
    position: relative;

    width: 30%;
    padding: 0 22px;
    padding-bottom: 85px;
}

.Number:before
{
    position: absolute;
    top: 12px;
    left: 0;

    width: 1px;
    height: 150%;

    content: ' ';

    background: #111;
}

.Number--figure
{
    font-size: 70px;
    font-weight: 600;

    margin-bottom: 20px;

    text-transform: uppercase;

    color: #111;
}

.Number--content
{
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;

    max-width: 212px;

    color: #fff;
}

@media screen and (max-width: 769px)
{
    .Number:nth-last-child(-n + 3)
    {
        padding-bottom: 50px;
    }
}

@media screen and (max-width:768px)
{
    .Number:before
    {
        top: 9px;
    }

    .Number--figure
    {
        font-size: 54px;
    }
}

@media screen and (max-width: 376px)
{
    .Number:nth-last-child(-n + 3)
    {
        padding-bottom: 45px;
    }
}

@media screen and (max-width:420px)
{
    .Number
    {
        width: 50%;
    }

    .Number--figure
    {
        font-size: 52px;

        margin-bottom: 25px;
    }
}

.CaseStudies
{
    padding: 90px 0;
}

.CaseStudies--heading
{
    font-size: 24px;
    font-weight: 600;

    margin-bottom: 35px;
}

.CaseStudies--columns
{
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 45px;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.CaseStudies--column:first-child
{
    width: 65%;
}

.CaseStudies--column:last-child
{
    width: 31.5%;
}

@media screen and (max-width:768px)
{
    .CaseStudies
    {
        padding: 45px 0;
    }

    .CaseStudies--heading
    {
        font-size: 18px;

        margin-bottom: 25px;
    }

    .CaseStudies--column:first-child,
    .CaseStudies--column:last-child
    {
        width: 100%;
    }

    .CaseStudies--column:first-child
    {
        margin-bottom: 4%;
    }
}

@media screen and (max-width:420px)
{
    .CaseStudies
    {
        padding: 40px 0;
    }

    .CaseStudies--heading
    {
        font-size: 20px;
    }

    .CaseStudies--column:first-child
    {
        margin-bottom: 8%;
    }
}

.CaseStudy
{
    font-size: 14px;
}

.CaseStudy:not(:last-child)
{
    margin-bottom: 8%;
}

.view-casestudies .CaseStudy:not(:last-child)
{
    margin-bottom: 4%;
}

.CaseStudy--image
{
    position: relative;

    margin-bottom: 15px;

    background: #000;
}

.CaseStudy--image img
{
    display: block;

    width: 100%;
    height: auto;

    transition: opacity .4s;

    opacity: .8;
}

.CaseStudy:hover .CaseStudy--image picture img
{
    opacity: .5;
}

.CaseStudy--image .CaseStudy--icon
{
    position: absolute;
    z-index: 1;
    bottom: 15px;
    left: 15px;

    width: 50px;
    height: 50px;
}

.CaseStudy--heading
{
    font-weight: 600;

    margin-bottom: 4px;
}

.CaseStudy--heading a,
.CaseStudy--category a
{
    text-decoration: none;
}

@media screen and (min-width: 376px) and (max-width:768px)
{
    .CaseStudies--column:last-child
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .CaseStudy:not(:last-child)
    {
        margin-bottom: 0;
    }

    .CaseStudies--column:last-child .CaseStudy
    {
        width: 48%;
    }
}

@media screen and (max-width: 420px)
{
    .CaseStudy--category
    {
        font-size: 14px;
        line-height: 18px;
    }
}

.Logos
{
    padding: 70px 0;

    background: #f4f4f4;
}

.ProductsDrainage
{
    position: relative;

    margin-top: 80px;
    padding: 80px 0;

    background: #f4f4f4;
}

.ProductsDrainage:not(:last-child)
{
    margin-bottom: 80px;
}

.ProductsDrainage:before,
.ProductsDrainage:after
{
    position: absolute;
    top: 0;

    width: 70vw;
    height: 100%;

    content: ' ';

    background: #f4f4f4;
}

.ProductsDrainage:before
{
    right: 100%;
}

.ProductsDrainage:after
{
    left: 100%;
}

.ProductsDrainage--heading
{
    font-size: 24px !important;
    font-weight: 600;
    line-height: 26px;

    margin-bottom: 20px !important;
}

.ProductsDrainage--boxes
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.ProductsDrainage--box
{
    width: 48%;
}

.ProductsDrainage--box:not(:nth-last-child(-n + 2))
{
    margin-bottom: 25px;
}

.ProductDrainage--image
{
    margin-bottom: 10px;
}

.ProductDrainage--image img
{
    display: block;

    width: 100%;
    height: auto;
}

.ProductDrainage--heading
{
    font-weight: 600;

    margin-bottom: 4px;
}

.ProductDrainage a
{
    text-decoration: none;

    border: none;
}

@media screen and (max-width: 420px)
{
    .ProductsDrainage
    {
        margin-top: 40px;
        padding: 40px 0;
    }

    .ProductsDrainage:not(:last-child)
    {
        margin-bottom: 40px;
    }
}

.CaseStudiesPromo--heading
{
    font-size: 24px !important;

    margin-bottom: 25px !important;
}

.CaseStudiesPromo--boxes
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.CaseStudiesPromo--box
{
    width: 48%;
    margin-bottom: 5%;
}

@media screen and (max-width: 420px)
{
    .CaseStudiesPromo--box
    {
        width: 100%;
    }
}

.FeatureImage
{
    position: relative;
}

.FeatureImage--overlay
{
    position: absolute;
    top: 0;
    left: 0;

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;
    padding: 50px 0;
}

.FeatureImage--heading
{
    font-size: 60px;
    font-weight: 600;

    color: #fff;
}

.FeatureImage--image img
{
    display: block;

    width: 100%;
    height: auto;
}

@media screen and (max-width: 768px)
{
    .FeatureImage--heading
    {
        font-size: 32px;
    }
}

@media screen and (max-width: 420px)
{
    .FeatureImage--heading
    {
        font-size: 24px;
    }

    .FeatureImage + .view-page .header
    {
        display: none;
    }
}

.Industries
{
    margin-top: 85px;
    margin-top: calc(85px - 1.4em);
}

.Industries--heading
{
    font-size: 24px !important;
    font-weight: 600;
    line-height: 26px;

    margin-bottom: 20px !important;
}

.Industries--boxes
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.Industries--box
{
    width: 48%;
}

.Industries--box:not(:nth-last-child(-n + 2))
{
    margin-bottom: 2%;
}

.IndustriesCard--image
{
    position: relative;
    z-index: 0;

    margin-bottom: 15px;

    background: #000;
}

.IndustriesCard--image img
{
    display: block;

    max-width: 100%;
    height: auto;
}

.IndustriesCard--heading
{
    font-size: 18px;
    font-weight: 600;

    margin-bottom: 10px;
}

.IndustriesCard--heading a
{
    text-decoration: none;
}

.IndustriesCard--icon
{
    position: absolute;
    z-index: 1;
    bottom: 25px;
    left: 25px;

    transition: transform 1s ease;
}

.IndustriesCard:hover .IndustriesCard--icon
{
    transform: rotate(180deg);
}

.IndustriesCard .IndustriesCard--image > a:last-child > img
{
    transition: opacity .4s;
}

.IndustriesCard:hover .IndustriesCard--image > a:last-child > img
{
    opacity: .5;
}

@media screen and (max-width: 420px)
{
    .Industries
    {
        margin-top: 40px;
        margin-top: calc(40px - 1.4em);
    }

    .IndustriesCard--icon
    {
        bottom: 10px;
        left: 10px;
    }

    .IndustriesCard--heading
    {
        font-size: 14px;
        line-height: 18px;
    }
}

.CallToAction
{
    position: relative;

    margin: 85px 0;
    padding: 85px 0;

    background: #f4f4f4;
}

.CallToAction:after,
.CallToAction:before
{
    position: absolute;
    top: 0;

    width: 60vw;
    height: 100%;

    content: ' ';

    background: #f4f4f4;
}

.CallToAction:before
{
    right: 100%;
}

.CallToAction:after
{
    left: 100%;
}

.CallToAction--logos
{
    margin: 35px 0;
}

.CallToAction--logos img
{
    display: block;

    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 420px)
{
    .CallToAction
    {
        margin: 40px 0;
        padding: 40px 0;
    }
}

.ProductBoxes--grid
{
    display: grid;

    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 10px;
}

.ProductBox
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    padding: 15px;

    background: #ededed;

    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.ProductBox--category
{
    font-weight: 600;

    display: block;

    margin-bottom: 15px;

    text-decoration: none;
}

.ProductBox--image
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex: 1;
        flex: 1;
}

.ProductBox--image img
{
    display: block;

    width: 100%;
    height: auto;
    margin: 0 auto;
}

@media screen and (max-width: 775px)
{
    .ProductBoxes--grid
    {
        grid-template-columns: 1fr 1fr;
    }
}

@media screen and (max-width: 420px)
{
    .ProductBoxes--grid
    {
        grid-template-columns: 1fr;
    }
}

/* Uber Menu */

.ubermenu-nav
{
    border: none !important;
}

.ubermenu-skin-black-white-2
{
    border: none !important;
    background: transparent !important;
}

.ubermenu-main .ubermenu-nav .ubermenu-item-level-0
{
    border: none !important;
}

.ubermenu-skin-black-white-2 .ubermenu-item-level-0.ubermenu-current-menu-item > .ubermenu-target,
.ubermenu-main .ubermenu-nav .ubermenu-item-level-0 > .ubermenu-target:hover,
.ubermenu-main .ubermenu-nav .ubermenu-item-level-0.ubermenu-active > .ubermenu-target
{
    color: #f00 !important;
    border-color: #f00 !important;
}

.ubermenu .ubermenu-nav .ubermenu-column
{
    width: auto !important;

    background-color: transparent !important;
}

a.ubermenu-skin-black-white-2.ubermenu-responsive-toggle
{
    font-size: 20px;

    padding: 15px 0;

    text-align: right;

    color: #000 !important;
}

.ubermenu-skin-black-white-2 .ubermenu-submenu.ubermenu-submenu-drop
{
    background: #fff !important;
}

.ubermenu-main,
.ubermenu-main .ubermenu-target,
.ubermenu-main div,
.ubermenu-main p,
.ubermenu-main input,
.ubermenu-submenu div,
.ubermenu-submenu p,
.ubermenu-submenu input
{
    font-family: 'Helvetica Neue',Helvetica,'Arial',sans-serif !important;
}

.ubermenu-skin-black-white-2 .ubermenu-submenu .ubermenu-item-header.ubermenu-has-submenu-stack > .ubermenu-target
{
    border: none !important;
}

.ubermenu-skin-black-white-2 .ubermenu-submenu .ubermenu-item-header.ubermenu-has-submenu-stack > .ubermenu-item-layout-text_only
{
    font-weight: 600 !important;

    padding-bottom: 0;
}

.ubermenu .ubermenu-item-level-4
{
    padding-top: 10px;
    padding-bottom: 10px;
}

.ubermenu .ubermenu-item-level-4 .ubermenu-target
{
    padding: 7px 20px;
}

.ubermenu-main .ubermenu-nav .ubermenu-item-level-0 > .ubermenu-target
{
    font-family: 'bebas-neue',sans-serif !important;
    font-size: 20px;

    padding: 0 10px 20px 10px !important;

    text-transform: uppercase;

    color: #000;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    background-color: transparent !important;
}

@media only screen and (max-width: 961px)
{
    .ubermenu-responsive-default.ubermenu-responsive
    {
        position: absolute;
        left: 0;

        padding-top: 15px;
        padding-bottom: 10px;

        background: #eee !important;
    }

    .wp-megamenu .main-header .container
    {
        -ms-flex-align: center;
        align-items: center;
    }

    .wp-megamenu .main-header .container .col-2
    {
        padding-top: 0;
    }

    .ubermenu-responsive-default.ubermenu-responsive ul.ubermenu-nav
    {
        width: 90% !important;
        margin: 0 auto !important;
    }

    .ubermenu-main .ubermenu-nav .ubermenu-item-level-0 > .ubermenu-target
    {
        padding: 0 10px 10px 0 !important;
    }
}
