﻿body {
    font-family: "myriad-pro", sans-serif;
    line-height: 1.3em;
    background: #f0f0f0;
    color: #333;
    height: auto;
}

h1 {
    font-size: 2.00em;
    margin: 0 0 0.67em 0;
}

    h1.page-title {
        color: #333333;
        font-weight: 300;
        margin: 10px 0 0 0;
    }

        h1.page-title span {
            font-size: 16px;
            font-weight: 300;
        }

h2 {
    font-size: 1.50em;
    margin: 0 0 0.83em 0;
}

h3 {
    font-size: 1.17em;
    margin: 0 0 1.00em 0;
}

h4 {
    font-size: 1.00em;
    margin: 0 0 1.33em 0;
}

h5 {
    font-size: 0.83em;
    margin: 0 0 1.67em 0;
}

h6 {
    font-size: 0.75em;
    margin: 0 0 2.33em 0;
}

code, kbd, pre, samp {
    font-family: monospace, serif;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

b, strong {
    font-weight: bold;
}

mark {
    background: #ff0;
    color: #000;
}

abbr[title] {
    border-bottom: 1px dotted;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

blockquote {
    margin: 1em 40px;
}

p {
    margin: 0 0 1em 0;
    padding: 0;
    font-size: 16px;
}

.no-border {
    border: none !important;
}

.regular-font {
    font-weight: 400;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic; /* code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ */
}

figure {
    margin: 0;
}

dl, menu, ol, ul {
    margin: 0;
    list-style-type: none;
}

menu, ol, ul {
    padding: 0 0 0 40px;
}

/* #################################################################################################### */
/* HEADER */
/* #################################################################################################### */
header#Header {
    background: #fff;
    border-top: solid 3px #0079C1;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.15);
    height: 75px;
    min-width: 1024px;
    padding: 0;
    width: 100%;
    z-index: 1000;
}

header#Header.fixed-header {
    position: fixed;
    left: 0px;
    top: 0px;
}

/* First div after fixed header needs to be moved down 75px */
header#Header.fixed-header + div {
    margin-top: 75px;
    padding-top: 0;
}

header#Header.fixed-header + #Wrapper {
    margin-top: 95px;
}

[data-page="home"] header#Header {
    margin-bottom: 0px !important;
}

    header#Header a:hover {
        text-decoration: none;
    }

    header#Header .content-container,
    header#Header .row {
        height: 100%;
    }

    header#Header .logo {
        position: absolute;
        left: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 1000;
    }

    header#Header #NavigationWrapper {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 100%;
        z-index: 100;
    }

    /* -------------------------------------------------- */
    /* MAIN NAVIGATION */
    /* -------------------------------------------------- */
    header#Header nav.menu {
        float: right;
    }

        header#Header nav.menu ul,
        header#Header nav.menu ul li {
            list-style: none;
            margin: 0;
            padding: 0;
            position: relative;
        }

            header#Header nav.menu ul li a {
                color: #333;
                display: block;
                white-space: nowrap;
            }

                header#Header nav.menu ul li a:hover,
                header#Header nav.menu ul li.active > a,
                header#Header nav.menu ul li a.active,
                header#Header nav.menu ul li:hover > a {
                    color: #0079C1;
                }

        /* first level */
        header#Header nav.menu > ul > li {
            float: left;
        }

            header#Header nav.menu > ul > li > a {
                font-size: 16px;
                padding: 5px 15px 20px;
                border-left: solid 1px transparent;
                border-right: solid 1px transparent;
                -webkit-transition: all linear 0.25s;
                -moz-transition: all linear 0.25s;
                transition: all linear 0.25s;
            }

            header#Header nav.menu > ul > li > a[class*="-icon"] {
                color: #fff;
            }

            header#Header nav.menu > ul > li > a[class*="-icon"]:before {
                color: #333;
            }

            header#Header nav.menu > ul > li > a[class*="-icon"]:hover:before,
            header#Header nav.menu > ul > li > a[class*="-icon"].active:before {
                color: #0079C1;
            }

            header#Header nav.menu > ul > li > a[class*="-icon"] + ul {
                background: #f0f0f0;
                border-left-color: #f0f0f0;
                border-right-color: #f0f0f0;

                top: 145%;
                margin-left: 50%;
                -webkit-transform: translateX(-50%);
                -moz-transform: translateX(-50%);
                transform: translateX(-50%);
            }

            header#Header nav.menu > ul > li.has-children > ul > [class*="arrow-up-"] {
                position: absolute;
                left: 50%;
                top: -14px;
                -webkit-transform: translateX(-50%);
                -moz-transform: translateX(-50%);
                transform: translateX(-50%);
                border-color: transparent transparent #f0f0f0;
            }

            header#Header nav.menu > ul > li.has-children > a:hover,
            header#Header nav.menu > ul > li.has-children:hover > a {
                border-left: solid 1px #f0f0f0;
                border-right: solid 1px #f0f0f0;
            }

        /* level activation */
        header#Header nav.menu > ul ul {
            display: none;
        }

        header#Header nav.menu ul > li:hover > ul {
            display: block;
        }

        /* second level */
        header#Header nav.menu > ul > li > ul {
            background: #fff;
            border-left: solid 1px #f0f0f0;
            border-right: solid 1px #f0f0f0;
            border-bottom: solid 4px #0079C1;
            box-shadow: 1px 3px 4px rgba(0, 0, 0, 0.15);
            left: 0;
            position: absolute;
            top: 75%;
            z-index: 9990;
        }

            header#Header nav.menu > ul > li > ul > li {
                padding: 0 10px;
            }

                header#Header nav.menu > ul > li > ul > li > a {
                    border-bottom: solid 1px #f0f0f0;
                    display: block;
                    font-size: 14px;
                    padding: 10px;
                }

                header#Header nav.menu > ul > li > ul > li:hover {
                    background: #f0f0f0;
                }

                header#Header nav.menu > ul > li > ul > li:last-child > a {
                    border: none;
                }

                header#Header nav.menu > ul > li > ul > li.has-children > a {
                    background: url(/_Images/Icons/icon-black-arrow.png) 100% 50% no-repeat;
                    padding-right: 25px;
                }

                /* third level */
                header#Header nav.menu > ul > li > ul > li > ul {
                    background: #f0f0f0;
                    box-shadow: 1px 3px 4px rgba(0, 0, 0, 0.15);
                    position: absolute;
                    left: 100%;
                    top: 0px;
                    z-index: 9999;
                }

                    header#Header nav.menu > ul > li > ul > li > ul > li > a {
                        border-bottom: solid 1px #f0f0f0;
                        display: block;
                        font-size: 14px;
                        padding: 10px 20px;
                    }

                    header#Header nav.menu > ul > li > ul > li > ul > li:last-child > a {
                        border: none;
                    }

/* -------------------------------------------------- */
/* UTILITY NAV */
/* -------------------------------------------------- */
nav.utility-nav {
    float: right;
    margin-right: 10px;
}

.__bootstrap nav.utility-nav {
    display: none;
}

nav.utility-nav a {
    color: #333;
    display: inline-block;
    padding: 10px;
}

nav.utility-nav ul {
    z-index: 9999;
}

nav.utility-nav > ul > li {
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
}

.__bootstrap nav.utility-nav > ul > li:after {
    color: #000;
    content: "|";
    display: inline-block;
    padding: 5px 0;
}

nav.utility-nav > ul > li:last-child:after {
    content: "";
}

nav.utility-nav > ul > li > a {
    padding: 5px 10px;
}

nav.utility-nav > ul > li:last-child a {
    background: none;
}

nav.utility-nav > ul > li a.icon-cart {
    background: url('/_images/icons/icon-cart.png') no-repeat;
    padding-left: 30px;
    background-position: 10px 9px;
}


nav.utility-nav > ul > li:hover > a {
    color: #0779bd;
}

nav.utility-nav > ul > li.has-children:hover > a {
    background: #0779bd;
    color: #fff;
}

/* Secondary level */
nav.utility-nav > ul > li > ul {
    background: #0779bd;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: none;
    left: 0;
    min-width: 150px;
    padding: 0 10px;
    position: absolute;
    top: 100%;
}

    nav.utility-nav > ul > li > ul > li {
        border-bottom: 1px solid #7ba1b9;
    }

        nav.utility-nav > ul > li > ul > li:last-child,
        nav.utility-nav > ul > li > ul > li:last-of-type {
            border-bottom: none;
        }

        nav.utility-nav > ul > li > ul > li > a {
            color: #fff;
        }

nav.utility-nav > ul > li:hover > ul {
    display: block;
}

/* Hide tertiary navs for now */
nav.utility-nav > ul > li > ul > li > ul {
    display: none;
}

/* -------------------------------------------------- */
/* COMPANY DROPDOWN */
/* -------------------------------------------------- */
.company-dropdown,
.company-drop { display: none !important; }

header#Header .company-drop {
    background: #0079C1;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    margin-right: 15px;
    padding: 5px 15px;
    float: right;
}

.__bootstrap .company-drop {
    display: none;
}

header#Header .company-drop.dropdown-active i {
    transform-origin: 50% 50%;
    transform: rotate(180deg);
    -webkit-transform-origin: 50% 50%;
    -webkit-transform: rotate(180deg);
}

header#Header .company-drop a {
    color: #fff;
}

.header-links {
    margin: 15px 0;
}

.header-image-wrapper {
    float: left;
}

.header-nav,
.header-nav ul {
    font-size: 14px;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .header-nav li {
        padding: 2px 20px 2px 20px;
    }

        .header-nav li a {
            font-size: 12px;
        }

            .header-nav li a:hover,
            .header-links .links-col a:hover {
                color: #000;
            }

.header-links .links-col {
    width: 20%;
    display: table-cell;
    margin-left: 30px;
    border-right: 1px solid #f0f0f0;
}

    .header-links .links-col:last-child {
        border-right: 0px;
    }

    .header-links .links-col a.link-col-heading {
        color: #000000;
        display: inline-block;
        font-size: 16px;
        margin: -5px 20px 5px 20px;
        height: 20px;
        overflow: hidden;
        font-weight: 500;
    }

        .header-links .links-col a.link-col-heading:hover {
            color: #0079C1;
        }

.company-dropdown {
    background: #f0f0f0;
}

    .company-dropdown .content-container {
        background: none;
    }

    .company-dropdown .header-links .link-col .header-nav {
        margin-right: 20px;
    }

    .company-dropdown nav a {
        padding: 0;
    }

    .company-dropdown .header-links .header-image-wrapper img {
        max-width: 250px;
        max-height: 125px;
    }

/* -------------------------------------------------- */
/* SITE SEARCH */
/* -------------------------------------------------- */
header#Header .site-search-wrap {
    float: right;
    margin-top: -2px; /* TODO: Fix this alignment issue */
}

    header#Header .site-search-wrap > div {
        position: relative;
    }

    header#Header .site-search-wrap .site-search-input {
        background: #fff;
        border: solid 1px #fff;
        font-size: 14px;
        padding: 6px 28px 7px 5px;
        -webkit-transition: ease-in-out 0.5s;
        -moz-transition: width ease-in-out 0.5s;
        -o-transition: width ease-in-out 0.5s;
        transition: width ease-in-out 0.5s;
        width: 20px;
    }

        header#Header .site-search-wrap .site-search-input:active,
        header#Header .site-search-wrap .site-search-input:hover,
        header#Header .site-search-wrap .site-search-input:focus {
            background: #f0f0f0;
            border: solid 1px #f0f0f0;
            width: 125px;
        }

    header#Header .site-search-wrap .site-search-submit {
        height: 28px;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 3px;
        width: 26px;
    }

        header#Header .site-search-wrap .site-search-submit .metricon-search {
            vertical-align: middle;
            pointer-events: none;
        }

            header#Header .site-search-wrap .site-search-submit .metricon-search:before {
                font-size: 30pt;
                vertical-align: middle;
                pointer-events: none;
                color: #333;
            }

/* #################################################################################################### */
/* MAIN CONTENT */
/* #################################################################################################### */
#Wrapper {
    z-index: 0;
}

.feature-list {
    width: 100%;
}

.feature-list li a > i:first-child {
    margin-right: 5px;
}

.feature-list li a > i:first-child:before {
    /*font-size: 28px;*/
}

.feature-list li {
    background-image: url('/_Images/Icons/icon-black-arrow.png');
    background-repeat: no-repeat;
    background-position: right center;
    padding: 10px 0;
}

.feature-list li {
    border-top: solid 1px #ccc;
}

.feature-list li:last-child {
    border-bottom: solid 1px #ccc;
}

/*.feature-wrapper.feature-black {
    background: #2d2d2d;
}*/

/* -------------------------------------------------- */
/* HOMEPAGE: FEATURE SLIDER */
/* -------------------------------------------------- */
.homepage-feature-slider {
    margin-bottom: 0;
}

.homepage-feature-slider .slick-dots {
    width: 100%;
    padding-left: 50%;
    top: auto;
    bottom: 15px;
}

.homepage-feature-slider [class*="col-"] {
    height: 100%;
}

.homepage-feature-slider .home-slider-cta {
    font-size: 36px;
    font-weight: 400;
    max-width: 480px;
}

.homepage-feature-slider .slick-slide > div {
    margin-bottom: 0;
}

.homepage-feature-slider .slide-hero,
.homepage-feature-slider .slide-content {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
}

/* -------------------------------------------------- */
/* HOMEPAGE: PRODUCT SLIDER */
/* -------------------------------------------------- */
.homepage-product-slider {
    border: solid 2px #e5e5e5;
    margin-bottom: 0;
}

.homepage-product-slider .slick-dots {
    position: absolute;
    left: 50%;
    bottom: 10px;
    top: auto;
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.homepage-product-slider [class*="col-"] {
    height: 100%;
}

.homepage-product-slider .slick-slide > div {
    margin-bottom: 0;
}

.homepage-product-slider .slide-hero {
    width: 100%;
    z-index: 0;
}

.homepage-product-slider .slide-content {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.homepage-product-slider h2 {
    font-size: 28px;
    left: 20px;
    top: 20px;
    position: absolute;
    width: 350px;
}

.homepage-product-slider .slide-content .slide-copy {
    position: absolute;
    top: 100px;
    left: 20px;
    width: 325px;
}

.homepage-product-slider .slide-cta {
    position: absolute;
    left: 20px;
    bottom: 20px;
    padding: 10px 40px 10px 10px;
    background: #0079c1 url('/_CSS/images/icons/icon-white-arrow.png') right center no-repeat;
    color: #fff;
}

#HomepageBox {
    height:206px;
    padding-top: 30px;
    text-align:center;
}

#HomepageBox h3 {
    color: #1d1d1d;
    font-size: 26pt;
}

/* -------------------------------------------------- */
/* HOMEPAGE: TABS */
/* -------------------------------------------------- */
.tabs-home .swap-controller a {
    color: #808080;
    display: block;
    width: 100%;
    text-align: center;
}

.tabs-home .swap-controller a:hover,
.tabs-home .swap-controller a.active {
    color: #0079C1;
}

.tabs-home .swap-controller a i:before {
    width: 100%;
}

.tabs-home .swap-controller a i:before {
    font-size: 62pt;
    line-height: 64pt;
}

.tabs-home .swap-container {
    padding: 0;
}

.tabs-home .swap-container > div {
    background: #f0f0f0;
}

.tabs-home .swap-container .widget-image img {
    border: solid 4px #fff;
    display: block;
    height: auto;
    width: 100%;
}

.tabs-home [class*="arrow-up-"] {
    position: absolute;
    left: 0px;
    bottom: 0px;
    /*transform: translateX(-50%);*/
}

/* -------------------------------------------------- */
/* HOMEPAGE: BOTTOM SLIDER */
/* -------------------------------------------------- */
.home-bottom-slider {

}

.home-bottom-slider .slick-prev {
    left: -40px;
}

.home-bottom-slider .slick-next {
    right: -40px;
}

.home-bottom-slider .slick-dots {
    display: none !important;
}

.home-bottom-slider .slick-slide {
    margin: 0;
    padding: 0;
}

.home-bottom-slider .slick-slide .slide-inner {
    background: #fff;
    min-height: 305px;
    margin: 15px;
    padding: 15px 0;
    border-bottom: solid 3px #0079C1;
}

/*.home-bottom-slider .slick-slide:first-child {
    margin-left: 0;
}*/

.home-bottom-slider .slick-slide p {
    font-size: 0.85em;
    line-height: 1.25em;
}

.home-bottom-slider .slide-hero {
    width: 100%;
    float: none;
}

.home-bottom-slider .slide-content {
    width: 100%;
    float: none;
}

/* #################################################################################################### */
/* SECTIONS */
/* #################################################################################################### */

/* -------------------------------------------------- */
/* ARTICLE CONTAINER */
/* -------------------------------------------------- */
.article-container .feed-item-title {
    display: block;
    font-size: 1.1em;
    font-size: 1.1rem;
}

.article-container .non-list li img {
    display: none;
}

.col-md-2 [class*="col-"].block {
    padding-left: 0;
    padding-right: 0;
}

@-moz-document url-prefix() {
    @media all and (min-width:992px) {
        .masonry-container .col-md-6 {
            width: 49.99999%;
        }
    }
}

/* #################################################################################################### */
/* FOOTER */
/* #################################################################################################### */
#PageFooter {
    margin: 0 auto;
    max-width: 1024px;
    padding: 20px 10px 40px;
}

footer#Footer {
    background: transparent;
    margin: 0;
    max-width: 100%;
    width: 100%;
}

footer#Footer * {
    line-height: 1em;
}

.link-columns {
    float: left;
    margin-left: 0;
    margin-right: 0;
    width: 75%;
}

    .link-columns .link-column-heading {
        color: #333;
        font-weight: bold;
        font-size: 12px;
        margin: 10px 0;
    }

    .link-columns .link-column {
        float: left;
        margin-top: 10px;
        margin-bottom: 10px;
        padding-left: 10px;
        padding-right: 10px;
    }

.column-span-2 .link-column {
    width: 50%;
}

.column-span-3 .link-column {
    width: 33%;
}

.column-span-4 .link-column {
    width: 25%;
}

.column-span-5 .link-column {
    width: 20%;
}

.nav-column ul,
.nav-column li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-column li {
    font-size: 12px;
    padding: 5px 0;
}

footer#Footer .legal * {
    margin: 0;
}

footer#Footer .legal .legal-content {
    max-width: 1024px;
    margin: 0 auto;
    width: 100%;
}

footer#Footer .legal .copyright {
    float: left;
    margin-right: 40px;
}

footer#Footer .legal p,
footer#Footer .legal nav {
    margin: 10px 0;
}

    footer#Footer .legal nav ul,
    footer#Footer .legal nav li {
        float: left;
        list-style: none;
        margin: 0;
        padding: 0;
    }

        footer#Footer .legal nav li a {
            border-right: solid 1px #f0f0f0;
            color: #fff;
            display: block;
            padding: 0 10px;
        }

            footer#Footer .legal nav li a:hover {
                color: #000;
                text-decoration: none;
            }

        footer#Footer .legal nav li:last-child a {
            border-right: solid 1px #0079C1;
        }

    footer#Footer .legal nav.simple li a {
        border-right: none;
    }

/* #################################################################################################### */
/* HELPER CLASSES */
/* #################################################################################################### */
.filter-list {
    margin-left: 0;
    padding-left: 0;
}

    .filter-list li:before {
        content: '&';
        display: inline-block;
        font-family: "gfi-metricon";
        font-size: 32pt;
        -webkit-font-smoothing: antialiased;
        -webkit-font-smoothing: subpixel-antialiased;
        font-style: normal;
        font-variant: normal;
        font-weight: normal;
        line-height: 18px;
        speak: none;
        text-decoration: inherit;
        text-transform: none;
        transform: scale(0.75, 0.75);
        -ms-transform: scale(0.75, 0.75);
        -webkit-transform: scale(0.75, 0.75);
        vertical-align: text-top;
    }

.block h1,
.block h2,
.block h3,
.block h4 {
    border-bottom: solid 1px #f0f0f0;
    margin-bottom: 0.5em;
}

.callout-header h1,
.callout-header h2,
.callout-header h3,
.callout-header h4 {
    border-bottom: solid 1px #f0f0f0;
    margin-bottom: 0.5em;
}

.callout-content,
.callout-content * {
    font-size: 12px;
}

    .callout-content img {
        margin: 0 auto 5px;
    }

.twitter-feed li,
.rss-feed li {
    /*border: solid 1px #ccc;
    border-radius: 4px;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.05);
    font-size: 12px;*/
    margin-bottom: 10px;
    padding: 5px;
}

/* #################################################################################################### */
/* PAGINATION */
/* #################################################################################################### */
.pagination {
    border-radius: 2px;
    display: inline-block;
    margin: 18px 0;
    padding-left: 0;
}

    .pagination > li {
        display: inline;
    }

        .pagination > li > a,
        .pagination > li > span {
            -moz-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
            -webkit-box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
            box-shadow: inset 0 -2px 0 rgba(0, 0, 0, 0.05);
        }

        .pagination > li > a,
        .pagination > li > span {
            background-color: #fff;
            border: 1px solid #ddd;
            color: #0079c1;
            float: left;
            line-height: 1.42857143;
            margin-left: -1px;
            padding: 6px 12px;
            position: relative;
            text-decoration: none;
        }

            .pagination > li > a:hover {
                background: #0079c1;
                color: #fff;
            }

/* #################################################################################################### */
/* PAGE SPECIFIC ITEMS */
/* #################################################################################################### */
.channel-display .article-list li {
    border-bottom: solid 1px #f0f0f0;
    margin-bottom: 10px;
}

/* #################################################################################################### */
/* RESPONSIVE */
/* #################################################################################################### */
@media all and (max-width: 660px) {
    .company-dropdown,
    .company-drop {
        display: none !important;
    }

    .link-columns {
        width: 100%;
    }

    .press-wrapper {
        width: 100%;
    }

    .column-span-5 .link-column {
        width: 33%;
    }

        .column-span-5 .link-column:nth-child(3n + 1) {
            clear: both;
        }
}

@media all and (max-width: 400px) {
    .column-span-5 .link-column {
        width: 50%;
    }

        .column-span-5 .link-column:nth-child(3n + 1) {
            clear: none;
        }

        .column-span-5 .link-column:nth-child(2n + 1) {
            clear: both;
        }
}
