/* global styles */

*{ box-sizing: border-box; }

html, body{
    height: 100%;
    margin: 0px;
    padding: 0px;
}

body{
    background-color: #fdfdfd;
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    font-size: 15px;
    color: #3f474e;
}

body, div, a, span, ul, li{
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
}

h1, h2, h3, h4, h5, h6{
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    color: #155c9f;
    margin-bottom: 15px;
    line-height: 1.2em;
    font-weight: normal;
    font-weight: 700;
}

h1{ font-size: 30px; }
h2{ font-size: 26px; }
h3{ font-size: 22px; }
h4{ font-size: 20px; }
h5{ font-size: 18px; }
h6{ font-size: 16px; }

.content.custom_script h3{ margin-top: 0px; }


#site_container{ overflow-x: hidden;}


#bg_image{ width: 100%; position: absolute; top: 0px; left: 0px; z-index: -1; }


a img{ border: 0px solid #fff; }

/* FORM ELEMENTS */

input, select, textarea{
    background-color: #e7ebee;
    font-weight: normal;
    font-size: 15px;
    border: 0px solid #e2e2e2;
    padding: 10px;
    box-shadow: 0px 0px 3px rgba(70, 70, 70, .3);
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    border-radius: 4px;
}

.button, .button2, .button3, .button4{
    appearance: none; -moz-appearance: none; -webkit-appearance: none;
    border: 0px;
    cursor: pointer;
    font-size: 17px;
    font-weight: 600;
    padding: 14px 18px;
    text-align: center;
    text-decoration: none;
    transition: background .2s ease;
    border-radius: 4px;
    border-width: 2px;
    border-style: solid;
}

.button{ background-color: #155c9f; color: #fff; border-color: #155c9f; }
.button:hover{ background-color: transparent; color: #155c9f; border-color: #155c9f; }

.button2{ background-color: transparent; color: #155c9f; border-color: #155c9f; }
.button2:hover{ background-color: #155c9f; color: #fff; border-color: #155c9f; }

.button3{ background-color: #fff; color: #155c9f; border: 2px solid #fff; }
.button3:hover{ background-color: transparent; color: #fff; border-color: #fff; }

.button4{ background-color: transparent; color: #fff; }
.button4:hover{ background-color: #fff; color: #155c9f; border-color: #fff; }

a.button, a.button:hover, a.button2, a.button2:hover, a.button3, a.button3:hover, a.button4, a.button4:hover{ display: inline-block; }

.form_container .button{ background-color: #1ca561; color: #fff; border-color: #1ca561; }
.form_container .button:hover{ background-color: #159b58; color: #fff; border-color: #1ca561; }


/* END FORM ELEMENTS */

/* anchors */
a{ color: #155c9f; transition: color .2s ease; }
a:hover{ color: #298ae2; }

/* end anchors */

/* misc */
.clearBoth{ display: table; clear: both; }

.error{ font-weight: bold;  color: #FF0000; border: 0px solid #fff; padding: 0px 2px;}
.warn{ color: #dd9500; font-weight: bold; }
.good{ color: #090; font-weight: bold; }

form{ padding: 0px; margin: 0px; }

hr, div.hr{
    background: #ddd;
    height: 1px;

    padding: 0;
    margin: 20px 0px;

    line-height: 0;

    border: 0px solid #fff;

}
#main img {
    max-width: 100%;
}

/* end misc */

/* end global styles */

#top_bar_container{ display: none; background-color: #d4d4d4; text-align: left; position: relative; min-height: 30px; }
#top_bar{ display: none; position: relative; font-weight: 600; font-size: 14px; color: #636363; padding: 10px 32px; }
#top_bar::before, #top_bar::after{
    position: absolute;
    content: '';
    top: 50%;
    transform: translateY(-50%);
    height: 1px;
    width: 21px;
    background-color: #a5a5a5;
}

#top_bar::before{ left: 0px; }
#top_bar::after{ right: 0px; }

#h_menu{
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 151px;
}
#h_menu li{
    display: inline-block;
    margin-right: 10px;
    padding-right: 10px;
    line-height: 0.8em;
    border-right: 1px solid #a5a5a5;
}
#h_menu li:last-child{ border-right: 0px solid #a5a5a5; }
#h_menu li a{ font-size: 14px; color: #000; text-decoration: none; }

#top_bar_phone{
    position: absolute;
    right: 0;
    top: 0;
    width: 152px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    background-color: #155b9f;
}

#top_bar, #top_bar_phone, #h_menu{
    padding-top: 6px;
    padding-bottom: 6px;
}

/* header styles */

#header_container{
    position: relative;
    z-index: 20000;
    background-color: #fff;
    border-bottom: 1px solid #e9e9e9;
}
#home_body #header_container {
    box-shadow: 0 0 5px rgba(70, 70, 70, 0.33);
}

#header{
    position: relative;
    max-width: 1920px;
    margin: 0px auto;
    text-align: left;
    padding: 0px 15px
}

#print_logo{ display: none; }

#header_logo{
    position: relative;
    z-index: 1000;
    display: inline-block;
    padding: 15px 0px;
    text-align: center;
    vertical-align: middle;
}


.logo_link{
    display: inline-block;
    text-decoration: none;
    border: 0px solid #fff;
}
.logo_link img{ border: 0px solid #fff; max-width: 100%; display: block; height: 100%; }
#h_menu_button.hmb_active {
    bottom: auto;
    position: fixed;
    top: 10px;
}
#h_menu_button{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5px;

    z-index: 10000;
    cursor: pointer;

    margin: auto 0;
    height: 48px;
    width: 48px;

    overflow: hidden;
    white-space: nowrap;
}

#hmb_nav{
    width: 48px;
    height: 48px;
    display: block;
    background: #fff;
}
.hmb_active #hmb_nav{ background-color: #fff; }

#hmb_nav_inner{
    display: block;
    position: relative;
}

#hmb_nav_inner span{
    position: absolute;
    top: 8px;
    right: 11px;
    display: block;

    background: #717171;
    width: 26px !important;
    height: 4px;
    line-height: 0;
    padding: 0;
    margin: 5px auto;
    transition: top .1s, transform .2s linear;
}

#hmb_nav_inner span:first-child{
    top: 17px;
}
#hmb_nav_inner span:last-child{
    top: 26px;
}
.hmb_active #hmb_nav_inner span:first-child{
    top: 8px;
    transform: rotateZ(135deg);
}
.hmb_active #hmb_nav_inner span:last-child{
    top: 8px;
    transform: rotateZ(-135deg);
}
.hmb_active #hmb_nav_inner span:nth-child(2){
    top: 8px;
    transform: rotateZ(495deg);
}

#h_menu_button #h_menu_button_txt{
    float: left;
    padding: 7px 0px 0px 8px;
    font-size: 18px;
    color: #323e99;
}

/* MENUBAR STYLES */
#menubar {
    background-color: #fff;
    height: 100vh;
    max-height: 100%;
    overflow: auto;
    padding-top: 74px;
    padding-bottom: 51px;
    position: fixed;
    right: -100%;
    top: 0;
    transition: right 0.2s ease-out 0s;
    width: 100%;
    z-index: 2000;
}
#menubar.mb_active{
    right: 0px;
}

#menubar > ul{
    list-style: none;
    margin: 0px;
    max-height: 100%;
    overflow: auto;
    padding: 0px;
}

.tmenu li ul{ list-style: none; margin: 0px; padding: 0px; }
.tmenu li ul li{ margin: 0px; }
.tmenu li ul li ul{ display: none; }

.tmenu > li{
    float: none;
    list-style: none;
    display: block;
}

.tmenu > li a{
    position: relative;
    display: block;
    text-decoration: none;
    font-weight: normal;
    padding: 10px;

    border-bottom: 1px solid #dedede;
    font-size: 14px;

    color: #2b2b2b;
    transition: color .2s ease;
}
.tmenu li a > div, .bottommenu li a > div {
    height: 100%;
    min-width: 50px;
    position: absolute;
    right: 0;
    top: 0;
    width: 10%;
}

.tmenu > li:first-child > a{ border-top: 1px solid #dedede; }

.tmenu > li a.ta_cur, .tmenu > li a:active, .tmenu li a:hover{
    color: #155c9f;
}


.tmenu li a .material-icons{ display: none; }

.tmenu li div{ display: none; }

.tmenu li ul li a{
    padding: 10px 25px;
    text-decoration: none;
    background: #f7f7f7;
}

.tmenu li ul li a:before{
    /*content: "\00bb  ";*/
}

.tmenu li ul li ul li a{
    padding: 10px 60px;
}

.ta_drop .drop_icon{
    position: absolute;
    height: 100%;
    width: 35px;
    right: 0px;
    top: 0px;
}
.ta_drop .drop_icon::before{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 0px;
    content: '';
    border-color: #195b9f transparent;
    border-style: solid;
    border-width: 5px 5px 0px 5px;
    transition: all .2s linear;
}
.ta_active .drop_icon{
    transform: rotate(-180deg);
}

/* END MENUBAR STYLES */
/* Splash Styles */
#splash_c {
    position: relative;
}
#splash {
    overflow: hidden;
    position: relative;
}
#splash_img {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    max-height: 450px;
    position: relative;
    width: 100%;
}


.no_mobile_img #splash_img {
    min-height: 250px;
}

.home_splash #splash_content_c, #splash_content {
    background-color: rgba(21, 92, 159, 0.85);
}

.no_mobile_img #splash_img > img{ display: none; }

#splash_img > img {
    display: block;
    position: relative;
    /*top: 50%;
    transform: translateY(-50%);*/
    width: 100%;
}
#splash_content_c {
    bottom: 0;
    left: 0;
    margin: auto;
    max-width: 1920px;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.home_splash #splash_content_c {
    max-width: none;
    text-align: center;
}
.home_splash.home_video #splash_content_c {
}
#splash_content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    margin: auto;
    max-width: 650px;
    padding: 30px;
}
.home_splash #splash_content {
    background-color: transparent;
    left: 0;
    right: 0;
}
#splash_content > * {
    color: #fff;
    line-height: 1.5em;
    margin: 0;
    padding: 0;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.41);
}
#splash_content h1, #splash_content h2, #splash_content h3 {
    font-size: 30px;
    line-height: 1.17em;
    text-transform: none;
    font-weight: 600;
}
.home_video #splash_img {
    text-align: center;
}
#home_page_video {
    left: 50%;
    margin: auto;
    min-height: 100%;
    min-width: 100%;
    position: relative;
    top: 50%;
    transform: translateY(-50%) translateX(-50%);
}
/* End Splash Styles */
/* structure */

#pageContainer{
    position: relative;
    z-index: 1000;
    padding: 0px;
    width: 100%;
    text-align: left;
    background-color: #fff;
}

#main{
    background: #fff;
    overflow: hidden;
}

/*Content Styles*/

.content_container{
    overflow: hidden;
    position: relative;
    z-index: 1000;
}

.content{
    font-size: 16px;
    font-weight: 200;
    height: auto;
    line-height: 1.8em;
    margin: 0px auto;
    max-width: 1920px;
    padding: 30px;
}

.content img{
    max-width: 100%;
}

.r_col_2, .r_col_3, .r_col_4 {
    font-size: 0;
    overflow: hidden;
    text-align: center;
}
.r_col_2 .r_col, .r_col_3 .r_col, .r_col_4 .r_col {
    display: inline-block;
    font-size: 16px;
    margin-bottom: 50px;
    max-width: 100%;
    text-align: left;
    vertical-align: top;
}

/* end content styles */

/* footer */
#footer_outer{ background-color: #f3f3f3; padding: 0px 0px 80px; overflow: hidden; }
#footer{ position: relative; max-width: 1580px; margin: 0px auto; color: #000; }

.bottommenu{ list-style: none; margin: 0px; padding: 0px; overflow: hidden; max-width: 950px; }
.bm_a{
    position: relative;
    display: block;
    color: #155c9f;
    font-size: 16px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    border-bottom: 1px solid #dedede;
    padding: 15px 20px;
}
.bm_a:hover{ color: #155c9f; }

#social_block{ padding: 10px 0px 50px 0px; }

#footer_social_icons{
    display: block;
    padding-top: 30px;
    text-align: center;
}



.bottommenu > li{ }
.bm_a span {
    border-radius: 1px;
    bottom: 0;
    display: block;
    height: 3px;
    margin: auto;
    position: absolute;
    right: 17px;
    top: 0;
    transition: all 0.3s linear 0s;
    width: 12px;
    background-color: #155c9f;
}
.bm_a span:first-child{
    transform: rotate(-45deg);
}
.bm_a span:last-child{
    transform: rotate(45deg);
    right: 24px;
}

.bm_a.bm_active span:first-child{
    transform: rotate(45deg);
}
.bm_a.bm_active span:last-child{
    transform: rotate(-45deg);
}

.bottommenu li ul{ display: none; background-color: #fff; list-style: none; margin: 0px; padding: 10px; }
.bottommenu li ul li a{ display: block; color: #2b2b2b; font-size: 16px; font-weight: 200; text-decoration: none; transition: color .1s linear; padding: 5px 0px; }
.bottommenu li ul li a:hover{ color: #568aff; }

#footer_newsletter_title{ padding: 0px; }
#footer_newsletter{ margin-top: 35px; padding: 10px; }
#footer_newsletter input{
    width: 100%;
}
#footer_contact {text-align: center; }
#footer_contact h5{ font-size: 16px; }

#footer_follow, #footer_newsletter_title{ border-bottom: 0px solid #fff; }

#footer_call{ float: right; color: #c0c0c0; font-size: 20px; margin-top: -4px; }
#footer_call span{ color: #fff; }

#footer_categories{ list-style: none; margin: 0px; padding: 33px 0px 0px 0px; text-align: left; }
#footer_categories .footer_main_category{ float: left; margin-right: 24px; }
#footer_categories .footer_main_category a{ display: block; text-decoration: none; color: #fff; font-size: 20px; padding-bottom: 4px; }
#footer_categories .footer_main_category a:hover{ border-color: #fff; }
#footer_categories .footer_main_category ul{ list-style: none; margin: 8px 0px; padding: 0px; }
#footer_categories .footer_main_category ul li a{ display: inline; text-decoration: none; color: #fff; font-size: 15px; }
#footer_categories .footer_main_category ul li a:hover{ text-decoration: underline; }

#footer_bottom{ position: relative; margin: 0px auto; }
#footer_bottom, #footer_bottom a{ font-size: 16px; font-weight: 200; }
#footer_copyright{ text-align: center; }
#footer_copyright span{ display: block; }
#footer_copyright, #footer_copyright a{ color: #000; font-size: 12px; }
#footer_cred{ text-align: center; padding-bottom: 20px; }
#footer_cred a{ font-size: 16px; text-decoration: none; }
#footer_cred a:hover{ text-decoration: underline; }

/* end Footer */


/* Rounding Corners */
.round_3{border-radius: 3px;}
.round_4{border-radius: 4px;}
.round_5{border-radius: 5px;}
.round_6{border-radius: 6px;}
.round_8{border-radius: 8px;}

.round_top_3{border-top-left-radius: 3px;border-top-right-radius: 3px;}
.round_top_4{border-top-left-radius: 4px;border-top-right-radius: 4px;}
.round_top_5{border-top-left-radius: 5px;border-top-right-radius: 5px;}
.round_top_6{border-top-left-radius: 6px;border-top-right-radius: 6px;}
.round_top_8{border-top-left-radius: 8px;border-top-right-radius: 8px;}

.round_bottom_3{border-bottom-left-radius: 3px;border-bottom-right-radius: 3px;}
.round_bottom_4{border-bottom-left-radius: 4px;border-bottom-right-radius: 4px;}
.round_bottom_5{border-bottom-left-radius: 5px;border-bottom-right-radius: 5px;}
.round_bottom_6{border-bottom-left-radius: 6px;border-bottom-right-radius: 6px;}
.round_bottom_8{border-bottom-left-radius: 8px;border-bottom-right-radius: 8px;}

.round_left_3{border-bottom-left-radius: 3px;border-top-left-radius: 3px;}
.round_left_4{border-bottom-left-radius: 4px;border-top-left-radius: 4px;}
.round_left_5{border-bottom-left-radius: 5px;border-top-left-radius: 5px;}
.round_left_6{border-bottom-left-radius: 6px;border-top-left-radius: 6px;}
.round_left_7{border-bottom-left-radius: 7px;border-top-left-radius: 7px;}
.round_left_8{border-bottom-left-radius: 8px;border-top-left-radius: 8px;}

.round_right_3{border-bottom-right-radius: 3px;border-top-right-radius: 3px;}
.round_right_4{border-bottom-right-radius: 4px;border-top-right-radius: 4px;}
.round_right_5{border-bottom-right-radius: 5px;border-top-right-radius: 5px;}
.round_right_6{border-bottom-right-radius: 6px;border-top-right-radius: 6px;}
.round_right_8{border-bottom-right-radius: 8px;border-top-right-radius: 8px;}

/*end Rounding Corners*/
/* products */

#category_help_section{
    background: #0d5aa1 url(/images/help-section-bg.gif) no-repeat center center;
    padding: 100px 30px;
    color: #fff;
    font-size: 32px;
    text-align: center;
    font-weight: 600;
}

#category_name{ border-bottom: 1px solid #dfdfdf; padding-bottom: 30px; margin-bottom: 30px; font-size: 28px; }

#product_results_none{ font-size: 16px; font-style: italic; padding: 15px; }

#product_category_nav_inner{
    /* float left, show in higher res */
    display: none;
}

#product_category_main{
    /* float right in higher res */
}

.product_category_tools{ width: 100%; overflow: hidden; }
.product_category_tools_left{ text-align: center; padding: 0px 0px 10px 0px; }
.product_category_tools_left .button{ min-width: 0; }
.product_category_tools_right{ text-align: center; font-weight: bold; padding: 12px 0px 10px 0px; }
.product_category_tools_right a{ text-decoration: none; color: #383838; }
.product_category_tools_right .product_navigation_current{ color: #fff; padding: 2px 4px; background-color: #323e99; }
.product_category_tools_right a:hover{ text-decoration: underline; }



#product_category_nav_top{ padding: 0px 10px 10px; margin-bottom: 20px; border-bottom: 1px solid #e9e9e9; }
#product_category_nav_bottom {
    border-top: 1px solid #e9e9e9;
    clear: both;
    display: block;
    margin-top: 10px;
    padding: 10px;
}
#product_category_nav_top select, #product_category_nav_bottom select{ border: 1px solid #d1d1d1; box-shadow: 0px 0px 0px 3px #f8f8f8; }


#ajax_loader_container{ }
#ajax_product_loader{ position: fixed; width: 220px; font-size: 18px; text-align: center; padding: 20px 0px; background: #fff; }

.p_list_thumb{ text-align: center; padding: 15px 0px; }
.p_list_thumb img{ margin-bottom: 15px; }
.p_list_thumb a{ font-size: 20px; font-weight: 700; text-decoration: none; }
.p_list_ctext{ font-size: 13px; text-transform: uppercase; margin-bottom: 10px; margin-top: -10px; }
.p_list_thumb a.p_list_view_link{
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}
.p_list_view_link span{ font-size: 20px; display: inline-block; vertical-align: middle; }

/* product details */

#product_name{ font-weight: 700; text-transform: none; margin-bottom: 5px; }
#product_type{
    font-weight: 700;
    color: #627a91;
    font-size: 19px;
}
#product_description{
    line-height: 1.6em;
    padding: 20px 0px 30px;
    font-size: 15px;
    color: #3e3e3e;
}

#p_product_c{ }
#p_product_details_c{ padding: 30px; }

#p_product_top{
    padding: 30px 0px 0px;
    background: #e8e9eb url(/images/product_splash_bg.gif) repeat-x top left;
    border-bottom: 1px solid #d7d7d7;
}

#product_main_img img{
    display: inline-block;
    vertical-align: bottom;
}

.p_product_i{ max-width: 1920px; margin: 0 auto; padding: 0px 30px; }

#product_error, .product_error{
    border: 2px solid #f76767;
    margin-bottom: 10px;
    padding: 10px 10px 10px 30px;
    background: #fff2d6 url(/images/warning.png) no-repeat 4px 4px;
    font-weight: bold;
    font-size: 14px;
    color: #a01e1e;
}

.product_good{
    border: 2px solid #7cc466;
    margin-bottom: 10px;
    padding: 10px 10px 10px 30px;
    background: #fff url(/images/checkmark.gif) no-repeat 4px center;
    font-weight: bold;
    font-size: 14px;
    color: #7cc466;
}

/* product tabs */

#product_tabs_section{
    background-color: #fff;
    border-bottom: 1px solid #d7d7d7;
}

#product_tabs_section .p_product_i{ padding: 0px; }

#product_tabs {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: 0;
}

#tab_content_c {
    display: block;
    padding: 40px 0;
    line-height: 1.8em;
    overflow-x: hidden;
}
.product_tab {
    text-align: left;
    width: 50%;
    display: inline-block;
}
.product_tab:nth-child(1n+1){ border-right: 1px solid #d7d7d7; }
.product_tab:nth-child(1), .product_tab:nth-child(2){ border-bottom: 1px solid #d7d7d7; }

.product_tab > a {
    color: #3f474e;
    display: block;
    font-weight: 700;
    padding: 15px;
    font-size: 11px;
    text-decoration: none;
    text-transform: uppercase;
}
.product_tab > a:hover, .product_tab.p_highlight_tab > a {
    color: #0d5aa0;
}

.product_tab a > span{ vertical-align: middle; margin-right: 5px; }
/*

media stuff


*/

#product_tab_content_section{ background-color: #fff; }

.tab_content ul{ margin: 0; padding: 0; }
.tab_content ul > li { list-style: none; }
.tab_content ul > li > span.material-icons {
    vertical-align: middle;
    color: #0878dc;
}

#product_specifications{ border-top: 1px solid #ddd; border-left: 1px solid #ddd; width: 100%; }
#product_specifications td{ border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: 4px 12px; font-size: 14px; }
#product_specifications tr td:first-child{ background-color: #f5f5f5; font-weight: 700; }

#product_featured_specs{ background-color: #eaeaea; padding: 30px 35px; }
#product_featured_specs_title{ font-size: 16px; text-transform: uppercase; color: #155c9f; font-weight: 700; padding-bottom: 10px; }
#product_featured_specs table{ width: 100%; }
#product_featured_specs td{ border-bottom: 1px solid #c6c6c6; padding: 7px 0px; font-size: 14px; }
#product_featured_specs tr:last-child td{ border-bottom: 0px solid #fff; padding-bottom: 0px; }
#product_featured_specs tr td:first-child{ font-weight: 700; padding-right: 10px; }
#product_featured_specs, #product_video{ margin-bottom: 40px; }
#product_video iframe{ max-width: 100%; }

#product_gallery > div{
    margin: 10px 10px 30px;
    text-align: center;
    background-color: #eaeaea;
}
#product_gallery > div:last-child{ margin-bottom: 0px; }
#product_gallery > div img{
    display: block;
    margin: 0px auto;
    max-width: 100%;
}

/* End Product Tabs */

/* cart */

#cart_form .button{ text-transform: none; }
#cart_form .product_list_price{ margin-top: 0px; }
#cart_form .price_strike{ text-decoration: line-through; color: #2cabe3; }
#cart_form .final_price{ font-size: 24px; padding: 5px 0px; margin: 0px; font-weight: normal; }
#cart_form .call_for_availability{ color: #e02b34; font-weight: bold; }

#cart_form_top{
    overflow: hidden;
    border-top: 1px solid #dfdfdf;
    border-bottom: 1px solid #dfdfdf;
    padding: 10px 0px;
}
#cart_form_bottom{
    overflow: hidden;
    padding: 10px 0px;
    text-align: right;
}

#cart_form_table{ width: 100%; }
#cart_form_table td{ vertical-align: bottom;}
#cart_form_options{ float: left; text-align: left; margin: 0px 20px 20px 0px; width: auto !important; max-width: 100%; }
#cart_form_options select{ max-width: 99%; }

.p_option_name{ font-size: 15px; color: #464646; }
.p_option_sel{ padding: 5px 0px 10px 0px; }
.p_option_sel select{ font-size: 17px; max-width: 100%; }
.p_option_sel:last-child{ padding-bottom: 0px; }

.p_option_sku{ padding-top: 5px; clear: both; }
.p_sku_id{float: left; margin-right: 10px; margin-bottom: 40px;}
.p_sku_label{ display: block; padding-top: 0px; color: #262626; font-size: 14px; }

#product_options .product_details_heading{ margin-top: 0px; padding-top: 0px; }

#cart_message{ }

#cart_form_checkout{
    white-space: nowrap;
    padding-top: 20px;
    font-size: 17px;
    overflow: hidden;
}

.cfc_controls{
    float: right;
    width: 220px;
}

.cfc_left{
    float: left;
}

.cfc_right{
    float: right;
    white-space: normal;
}


#cart_form_checkout input[type=text]{ width: 20px; }

/* end products */

/* This node is for preload work and we don't want it to be seen */
#workNode{ display: none; }

/* custom forms */

#cust_form_c{
    max-width: 1080px;
    margin: 0px auto;
    padding-top: 0px;
}
#cust_form_c h1, #cust_form_c h2, #cust_form_c h3, #cust_form_c h4, #cust_form_c h5, #cust_form_c h6{ padding-top: 0px; margin-top: 0px; }

#cust_form_left{ margin-bottom: 40px; line-height: 1.8em; }

.form_items, .form_items li{
    position: relative;
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.form_items{
    padding-bottom: 12px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}

.form_items li{
    padding-bottom: 10px;
    flex: 1 0 0;
    justify-content: bottom;
    min-width: 50%;
    padding: 5px;
}
.form_items input[type=text], .form_items select, .form_items textarea {
    background-color: #f7f7f7;
    width: 100%;
    padding: 16px;
}

.custom_form_item_error{ position: relative; padding: 4px; color: #303030; border: 4px solid #fcb040; margin: 5px 5px 6px; border-radius: 4px; background-color: #fffbdb; font-weight: normal; font-size: 12px; }

.form_items li.form_item_label{
    color: #701400;
    text-transform: uppercase;
    margin-top: 40px;
    padding-bottom: 10px;
}

.form_items li.form_item_textarea {
    width: 100%;
    flex: auto;
}

.form_main_label{ padding: 10px 20px 0px 0px; font-size: 18px; }

/* end custom forms */



#phone_buttons{
    position: fixed;
    bottom: 0px;
    left: 0px;
    z-index: 20000;

    background-color: #155c9f;

    width: 100%;
    height: 51px;

    overflow: hidden;
}
#phone_buttons a{
    position: absolute;
    top: 0px;

    display: block;
    text-align: center;
    padding: 15px 0;
    font-size: 15px;
    width: 50%;

    color: #fff;
    text-decoration: none;
}

#phone_buttons a:hover{
    background: #525e9c;
}

#phone_buttons a:first-child{
    left: 0px;
}

#phone_buttons a:last-child{
    right: -1px;
    border-left: 1px solid #21307a;
}

/* promo banner */

#contact_c{
    position: relative;
    width: 100%;
    height: 540px;
    max-height: 540px;
}

/* homepage content */
.featured_categories_outer{ margin: 20px 0px 50px; }
.industry_applications{ margin: 45px 0px; }

.featured_categories_inner{ width: 1920px; max-width: 100%; margin: 0px auto; }

.featured_categories_text, #product_category_desc{ width: 1040px; max-width: 100%; text-align: center; font-size: 16px; line-height: 1.5em; padding: 0px 10px; }
.featured_categories_text{ margin: 0px auto 25px; }
#product_category_desc{ margin: 45px auto 0px; }

.featured_category{
    height: 250px;
    margin: 2px;
    position: relative;

    background-size: cover;
    background-position: center center;
}
.featured_category a{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*background-color: rgba(70, 70, 70, 0.4);*/
    transition: all .2s linear;
}
.featured_category a:hover{ background-color: rgba(17, 71, 121, 0.5); }

.your_application a{ background-color: transparent; }
.your_application a:hover{ background-color: rgba(156, 181, 199, 0.1); }

/* .featured_category span{ */
/* Changed this because they wanted the link taken off of these on the applications page, so I just took off the "a" selector */
.featured_category span{
    position: absolute;
    top: 50%;
    left: 0;

    transform: translateY(-50%);

    width: 100%;
    padding: 0px 60px;

    text-align: center;
    color: #fff;
    font-size: 30px;
    font-weight: 600;

    line-height: 1.5em;

    text-shadow: 0px 0px 5px rgba(0, 0, 0, .8);
}

#home_popular_products{ text-align: center; background-color: #e7ebee; }
#home_popular_products h3{ margin: 0px 0px 6px; font-size: 30px; }

/* dnd homepage content */

/* Page Sections */
.page_section{ background: #fff url(/images/page-section-bg.gif) repeat-x top left; }

.page_section:nth-child(odd) .content{
    flex-direction: row-reverse;
}

.page_section_title{ font-size: 14px; text-transform: uppercase; color: #4a5f73; font-weight: 600; line-height: 1.8em; }


.inner_text.inner_content{ padding: 30px 0px; }

.inner_text > h3{ margin: 0px 0px 23px; font-size: 30px; }
.inner_text > h3 a{ text-decoration: none; }

.mid_inner_img, .cont_inner {
    border-bottom: 1px solid #eaeaea;
}
.mid_inner_img:last-child, .cont_inner:last-child {
    border-bottom: 0 none;
}
.mid_inner_img .content .inner_img {
    display: block;
    margin: 0 auto;
}
.mid_inner_img .content {
    font-size: 0;
}
.mid_inner_img .content > * {
    font-size: 16px;
    line-height: 1.8em;
}
.product_links {
    color: #3756b6;
}
.inner_content h3 {
    line-height: 1.2em;
}

/* End Page Sections */
/* CTA Form */

.home_form, .inner_form {
    text-align: center;
}
.inner_form {
    border-top: 1px solid #eaeaea;
    background: #155c9f url(/images/cta-bg.gif) no-repeat top center;
    background-size: cover;
}
.home_form h3, .inner_form h3 {
    margin-top: 0px;
    font-size: 30px;
    line-height: 1em;
}
.inner_form h3, .intro_text, .inner_form {
    color: #fff;
}
.home_form .form_required_message, .inner_form .form_required_message { display: none; }
.home_form .form_container, .inner_form .form_container {
    margin: 0 auto;
    max-width: 700px;
}
.home_form .intro_text, .inner_form .intro_text {
    line-height: 1.8em;
    margin-bottom: 50px;
}
.home_form .intro_text {
    color: #616161;
}
.home_form .form_container form, .inner_form .form_container form {
    margin: 0 auto;
    max-width: 700px;
}
.home_form .form_buttons, .inner_form .form_buttons {
    text-align: left;
    margin-bottom: 5px;
}
.home_content_block > .arrow {
    display: inline-block;
}
.home_content_block > h3, .home_content_block > p, .home_content_block > .arrow {
    margin: 10px 0 0;
}

/* End CTA Form */

/* Customer Reviews */

.content.cust_rev {
    max-width: 1024px;
    text-align: center;
}
.prod_rev {
    background-color: #fcfcfc;
    border-top: 1px solid #eaeaea;
}
.content.cust_rev > h5 {
    margin: 0px 0px 30px;
    font-size: 30px;
}
.content.cust_rev > div {
    font-style: italic;
    font-weight: 300;
    line-height: 1.8em;
    margin-bottom: 25px;
    position: relative;
    z-index: 2;
}
.content.cust_rev > div > span {
    display: block;
    text-align: justify;
    z-index: 1;
}
.content.cust_rev > div > span::after, .content.cust_rev > div > span::before {
    color: #e7e7e7;
    display: block;
    font-family: "Arial";
    font-size: 169px;
    font-weight: 700;
    height: 75px;
    position: absolute;
    transition: left .2s ease, right .2s ease;
    width: 75px;
    z-index: -1;
}
.content.cust_rev > div > span::after {
    content: '\201D';
    right: -15px;
    bottom: -90px;
}
.content.cust_rev > div > span::before {
    content: '\201C';
    left: -40px;
    top: 7%;
}
.content.cust_rev > img {
    border-radius: 50%;
    display: block;
    margin: 0 auto;
    max-width: 66px;
}

/* End Customer Reviews */

/* Youtube Videos */

.vid_c {
    padding: 0 20px;
}
.play_youtube > .toob_creat {
    cursor: pointer;
    display: inline-block;
    height: 100%;
    position: relative;
    width: 100%;
}
.toob_creat.has_video {
    height: 400px;
}
.youtube_container {
    display: block;
}
.play-button {
    border-color: transparent transparent transparent rgba(255, 255, 255, .7);
    border-style: solid;
    border-width: 50px 0 50px 100px;
    margin: auto;
    height: 0;
    position: absolute;
    right: 0; top: 0; bottom: 0; left: 0;
    width: 0;
}
.youtube_iframe {
    display: block;
    height: 100%;
    width: 100%;
}

.content iframe {
    max-width: 100% !important;
    aspect-ratio: 16/9;
    height: auto;
}

/* End Youtube Videos */

.product_disclaimer{ line-height: 1.9em; font-size: 13px; margin-top: 40px; }
/*Contact Page*/

#distributors {
    margin-top: 70px;
    padding-top: 70px;
    border-top: 1px solid #ededed;
}
#distributors h3 {
    margin-top: 0px;
    padding-top: 0px;
}
#distributor_list {
    font-size: 0px;
}
#distributors > div {
    display: inline-block;
}
#slct_dstr {
    display: none;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
}
.distributor_location {
    background-color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    line-height: 1.8em;
    margin-top: 70px;
    min-width: 260px;
    padding-left: 35px;
    padding-right: 5%;
    position: relative;
    text-align: left;
    vertical-align: top;
    width: 100%;
}
.distributor_location:first-child {
    margin-top: 0;
}
.distributor_location:nth-child(2n) {
    background-color: #fafafa;
}
.distributor_name {
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.2em;
    margin-top: 3px;
    margin-bottom: 10px;
}

.distributor_num {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 28px;
    width: 28px;
    padding-top: 4px;
    text-align: center;
    color: #fff;
    background-color: #c93939;
    border: 1px solid #a92525;
    border-radius: 50%;
    line-height: 1.2em;
}

.distributor_location:first-child .distributor_num {
    background-color: #155c9f;
    border: 1px solid #1a347e;
}

/*Google Maps - Contact Page*/
.map_text{
    background-color: rgba(25, 34, 41, .6);
    border-radius: 5px;
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    font-weight: bold;
    left: -90px;
    padding: 5px;
    position: absolute;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, .65);
    top: -145px;
    white-space: nowrap;
}
#address_select {
    display: block;
    height: 50px;
    left: 0;
    margin: auto auto 25px auto;
    min-width: 190px;
    padding: 13px 20px;
    position: relative;
    right: 63px;
    top: 0;
    z-index: 1002;
}


#contact_c{
    position: relative;
    width: 100%;
    height: 540px;
    max-height: 540px;
    overflow: hidden;
    padding-top: 50px;
}

#contact_map{
    width: 100% !important;
    height: 100%;
}

#contact_c > #address_holder {
    border: 1px solid #dbdbdb;
    box-shadow: 2px 2px 5px #bfbfbf;
    display: none;
    left: 75px;
    max-width: 325px;
    min-width: 250px;
    position: absolute;
    top: 25px;
    width: 36%;
    z-index: 1001;
}
#address_holder > ul {
    background-color: #fff;
    list-style: outside none none;
    margin: 0;
    padding: 0;
    text-align: left;
    width: 100%;
}
.address_list a, .address_list a:visited {
    color: #686868;
    display: inline-block;
    padding: 10px 5px;
    text-decoration: none;
    width: 100%;
}
#address_holder .address_list {
    border-top: 1px solid #dddddd;
    padding: 0;
}
#address_holder  .address_list {
    border-top: 1px solid #dddddd;
    padding: 0;
}
.address_list .address_header > img {
    /*display: none;*/
    float: right;
    position: relative;
    right: 5px;
    top: 10px;
    transition: transform 0.2s linear 0s;
}
.address_item {
    background-color: #f9f9f9;
    box-shadow: 0 8px 12px -12px #000 inset;
    display: none;
    padding: 15px 10px;
}
.google_map {
    height: 400px;
    width: 100%;
    z-index: 1000;
}
.contact_page_map {
    margin-top: 0;
    max-width: 100%;
}
.gm-style-iw {
    /*height: 200px;*/
    left: 0 !important;
    margin: 0 auto;
    min-width: 200px;
    padding: 0 10px;
    right: 0;
    text-align: left;
}
.gm-style-iw div {
    line-height: 1.9em;
}
.gm-style-iw strong {
    font-weight: 700;
}
.contact_page_form {
    display: inline-block;
    vertical-align: middle;
}
/*End Google Maps - Contact Page*/
/*End Contact Page*/

/* BreadCrumb Navigation */

#bc_container{ background-color: #fafafa; border-bottom: 1px solid #e9e9e9 }
.breadcrumb_navigation{ max-width: 1920px; margin: 0 auto; font-size: 14px; padding: 17px 10px; }
.breadcrumb_navigation a{ text-decoration: none; font-size: 14px; color: #616161; padding: 0px 5px; }
.breadcrumb_navigation a:first-child{ padding-left: 0px; }
.breadcrumb_navigation a:hover{ text-decoration: underline; }
.breadcrumb_navigation h5{ font-size: 14px; display: inline; font-weight: normal; padding-left: 5px; text-transform: none; font-family: 'Open Sans', sans-serif; }

/* End BreadCrumb Navigation */


/*Stacktable*/

/*#product_specs .item_accordion_content .stacktable .st-key, #product_specs .item_accordion_content .stacktable .st-val {
    white-space: normal;
}
#product_specs .item_accordion_content .stacktable .st-val {
}*/
.stacktable.small-only tr .st-key {
    display: none;
}
#product_specs .item_accordion_content div > .keep_table_keys:first-of-type {
    display: none;
}
#product_specs .keep_table_keys.stacktable.small-only tr .st-key {
    display: table-cell;
    padding: 4px;
    white-space: normal;
    width: 50%;
}
#product_specs .keep_table_keys.stacktable.small-only tr .st-val {
    padding: 4px;
    width: 50%;
}
.large-only {
    display: none;
}
.stacktable.small-only tr td, .stacktable.small-only tr, .stacktable.small-only tbody, .stacktable.small-only {
    width: 100%;
}
.stacktable.small-only tr td {
    word-wrap: break-word;
}
.stacktable.small-only tr:first-child td {
    background-color: #f7f7f7;
    font-weight: 500;
}
#product_specs .item_accordion_content .stacktable.small-only {
    margin-bottom: 20px;
    min-width: 0;
}

/*end stacktable*/

/* responsive comparison tables */
.comparison_table ul {
    display:flex;
    top:0px;
    z-index:10;
    padding: 0px 0px 14px;
    margin: 0px;
}
.comparison_table li {
    list-style:none;
    flex:1;
}
.comparison_table li:last-child {
    border-right:1px solid #DDD;
}
.comparison_table button {
    width:100%;
    border: 1px solid #DDD;
    border-right:0;
    border-top:0;
    padding: 10px;
    background:#FFF;
    font-size:14px;
    font-weight:bold;
    height:60px;
    color:#999
}
.comparison_table li.active button {
    background:#F5F5F5;
    color:#000;
}
.comparison_table table { border-collapse:collapse; table-layout:fixed; width:100%; }
.comparison_table th { background:#F5F5F5; display:none; }
#product_compare_container .comparison_table th{ background-color: #ecf1f5; }
.comparison_table td, .comparison_table th {
    height:53px;
}
.comparison_table td, .comparison_table th { border:1px solid #DDD; padding:10px; empty-cells:show; }
.comparison_table td, .comparison_table th {
    text-align:left;
}
.comparison_table td+td, .comparison_table th+th {
    text-align:center;
    display:none;
}
.comparison_table td.default {
    display:table-cell;
}
.comparison_table tr td:first-child{
    font-weight: 700;
    background-color: #f5f5f5;
}
#product_compare_container .comparison_table td{ background-color: #fff; }

.comparison_table .bg-purple {
    border-top:3px solid #1c7dd9;
}
.comparison_table .bg-blue {
    border-top:3px solid #155c9f;
}
.comparison_table .sep {
    background:#F5F5F5;
    font-weight:bold;
}
.comparison_table .txt-l { font-size:28px; font-weight:bold; }
.comparison_table .txt-top { position:relative; top:-9px; left:-2px; }
.comparison_table .tick { font-size:18px; color:#2CA01C; }
.comparison_table .hide, #product_compare_container .comparison_table .hide {
    border:0;
    background:none;
}

.comparison_table_img{ text-decoration: none; }

#product_compare_section{ background-color: #f2f3f7; padding: 70px 0px; text-align: center; }

#product_compare_section h3{ margin: 0px; margin-bottom: 10px; }
#product_compare_container .comparison_table{ max-width: 1000px; margin: 40px auto 0; }
#product_compare_container .comparison_table tr:last-child td{ background-color: transparent; border: 0px solid #fff; padding-top: 25px; }

/* related products */

#product_related_products_container{ text-align: center; }
#product_related_products_container h3{ margin-top: 0px; }

/* advanced dropdown */
#advanced_dropdown{
    background: url(/images/advanced-dropdown-bg.gif) no-repeat center center / cover;
    text-align: center;
    border-top: 1px solid #d5d5d5;
    display: none;
}

@media screen and (max-width: 949px){
    #advanced_dropdown{ display: none !important; }
}

#advanced_dropdown .material-icons{ color: #000; font-size: 32px; letter-spacing: -0.1em; }

#advanced_dropdown ul{ list-style: none; margin: 0 auto; padding: 0; max-width: 1280px; display: flex; }
#advanced_dropdown ul li{ background-color: #fff; text-align: center; flex: 1 0 0; padding: 20px 42px; border-right: 1px solid #d5d5d5; }
#advanced_dropdown ul li:last-child{ border-right: 0px solid #d5d5d5; }

#advanced_dropdown .am_name, #advanced_dropdown .am_desc{ font-family: Roboto, sans-serif; }
#advanced_dropdown .am_name{ text-transform: uppercase; color: #000; font-weight: 700; font-size: 18px; }
#advanced_dropdown .am_desc{ color: #434343; font-size: 14px; }

#advanced_dropdown a{
    display: inline-block;
    font-size: 13px;
    margin-top: 20px;
    color: #000;
    font-weight: 600;
    padding: 5px 10px;
    border: 1px solid #000;
    border-radius: 4px;
    text-decoration: none;
    transition: all .2s linear;
}
#advanced_dropdown a:hover{
    background-color: #000;
    color: #fff;
}

.hfc_container{ padding: 5px; }


#map_container{
    display: inline-block;
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 100%;
}

.google_map{ width: 100%; min-height: 400px; }

#event_direction_form label {
    display: block;
    margin: 0 15px 15px 0;
}

#event_direction_form > div{
    display: flex;
    width: 100%;
}

#mapDirectionsC{
    padding: 20px;
}

#event_direction_form .startAddress {
    display: inline-block;
    padding: 10px;
    flex-grow: 1;
}
#event_direction_form .button {
    border-radius: 0;
    display: inline-block;
    padding: 10px;
    position: relative;

    font-size: 16px;
    font-weight: normal;

    width: 64px;
}

#tmenu_pay {}

.pay_here_button{ text-align: center; margin-top: 20px;  }

.pay_here_button .button {
    background-color: #42cc03;
    border-color: #42cc03;
}

.pay_here_button .button:hover {
    color: #42cc03;
    background-color: transparent;
}