/* Content Hiding */

.hideDesktop {
    display: none;
}

.hideMob {
    display: block;
}

.hideMobInline {
    display: inline;
}

.hideTablet {
    display: block;
}

.hideTablet Inline {
    display: inline;
}

/* Desktop (1280) Media Queries */

@media only screen and (min-width: 1280px) {
    .siteGrid {
        width: 1280px;
        margin-left: auto;
        margin-right: auto;
    }
    .siteGridHalfLeft {
        float: right;
        width: 640px;
    }
    .siteGridHalfRight {
        float: left;
        width: 640px;
    }
    .logoLeft {
        float: left;
        width: 280px;
	margin-top: 30px;
	margin-bottom: 30px;
    }
    .logoRight {
        float: right;
    }
    .productPageTitleLeft {
	float: left;
	width: 300px;
    }
    .productPageTitleRight {
	float: left;
	width: 980px;
    }
    .productButtonsBox:nth-of-type(6n+1) {
	clear: both;
    }
    .productButtonsBox:nth-of-type(6n) {
	margin-right: 0;
    }
}


/* Desktop (996) Media Queries */

@media only screen and (min-width: 996px) and (max-width: 1279px) {
    .siteGrid {
        width: 996px;
        margin-left: auto;
        margin-right: auto;
    }
    .siteGridHalfLeft {
        float: right;
        width: 498px;
    }
    .siteGridHalfRight {
        float: left;
        width: 498px;
    }
    .logoLeft {
        float: left;
        width: 280px;
	margin-top: 30px;
	margin-bottom: 30px;
    }
    .logoRight {
        float: right;
    }
    .productButtonsBox:nth-of-type(8n+1) {
	clear: both;
    }
    .productPageTitleBar h2 {
	font-size: 25pt;
    }
    .homepageRightInside {
	height: 272px;
    }
    .productPageTitleLeft {
	float: left;
	width: 280px;
	padding: 0;
    }
    .productPageTitleRight {
	float: left;
	width: 716px;
	margin-top: 0;
    }
    .pageRight {
	font-size: 32pt;
    }
    .productTopRight {
	width: 670px;
    }
    .homeProductsBar h3 {
	font-size: 11pt;
    }
    .pageTitleBarGreen {
	padding-left: 0;
    }
    .pageTitleBarGreen {
	padding-left: 5px;
    }
}


/* Tablet (768) Media Queries */

@media only screen and (min-width: 768px) and (max-width: 995px) {
    .hideTablet {
        display: none !important;
    }
    .hideTabletInline {
        display: none !important;
    }
    .siteGrid {
        width: 768px;
        margin-left: auto;
        margin-right: auto;
    }
    .siteGridHalfLeft {
        float: right;
        width: 384px;
    }
    .siteGridHalfRight {
        float: left;
        width: 384px;
    }
    .logoLeft {
        float: left;
	margin-top: 30px;
	margin-bottom: 30px;
    }
    .logoRight {
        float: right;
    }
    .productButtonsBox:nth-of-type(6n+1) {
	clear: both;
    }
    .homepageLeft, .homepageRight {
	width: 100%;
    }
    .homepageRight {
	margin-top: 12px;
    }
    .productPageTitleLeft {
	float: left;
	width: 240px;
	font-size: 10pt;
	padding: 0;
    }
    .productPageTitleBar h2 {
	font-size: 20pt;
    }
    .productPageTitleRight {
	float: left;
	width: 528px;
    }
    .productTopRight {
	width: 442px;
    }
    .pageRight {
	font-size: 30pt;
    }
    header.large ul li a, header.small ul li a {
	padding: 0 12px;
	font-size: 9pt;
    }
    .homeProductsBar h3 {
	font-size: 10pt;
    }
    .pageTitleBarGreen {
	padding-left: 5px;
    }
}


/* All Mobile Sizes */

@media only screen and (max-width: 767px) {
    .hideDesktop {
        display: block !important;
    }
    .hideMob {
        display: none !important;
    }
    .hideMobInline {
        display: none !important;
    }
    .textLeft {
        text-align: center;
    }
    .textRight {
        text-align: center;
    }
    .detailsWidget,
    .featureWidget,
    .aboutLeft {
        margin-bottom: 12px;
    }
    .headerPadding {
	float: left;
	width: 100%;
        padding-top: 81px;
    }
    .logoBar {
        width: 100%;
        padding: 6px 0;
        position: fixed;
        top: 0;
        z-index: 1999;
    }
    .logoBar p {
	padding: 0;
	margin: 0;
    }
    .logoMenu {
	float: left;
	width: 30px;
	padding: 15px 0 0;
    }
    .logoLeft {
        float: left;
        width: 118px;
	padding: 15px 0;
    }
    .logoLeft img {
	width: auto;
	height: auto;
	max-height: 39px;
    }
    .menuItem {
	min-width: initial;
	display: inline-block;
        float: none;
    }
    .menuItem img {
	height: 30px;
	margin-bottom: 0;
	margin: 0 1px;
    }
    .logoRight {
        float: right;
        width: calc(100% - 148px);
	text-align: right;
	padding: 18px 0 0 0;
    }
    .homepageRight {
	margin-top: 12px;
    }
    .sliderBar {
        padding: 0 !important;
    }
    .sliderWidget {
        width: 100%;
    }
    .featureWidget {
        width: 100%;
    }
    .gallery {
        float: left;
        width: 100%;
        padding: 0;
        margin: 0;
    }
    .contact3 {
        width: 65%;
    }
    .grid1,
    .grid2,
    .grid3,
    .grid3Middle,
    .grid3_2,
    .grid4,
    .grid4_3,
    .grid5,
    .grid5_2,
    .grid5_3,
    .grid5_4,
    .grid6 {
        width: 100%;
    }
    .siteGrid {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .siteGridHalfLeft {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .siteGridHalfRight {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .homepageLeft, .homepageRight {
	float: left;
	width: 100%;
    }
     .productTopLeft {
	width: 100%;
     }
     .productTopRight {
	width: 100%;
     }
     .productPageTitleLeft {
	width: 100%;
	padding-top: 10px;
	padding-bottom: 10px;
     }
     .productPageTitleRight {
	width: 100%;
     }
     .pageRight {
	font-size: 20pt;
     }
     .pageBar {
	padding-top: 12px;
     }
     .pageHeaderImage {
	height: 230px;
     }
     .menu-item-home a {
	background-image: none !important;
     }
    .productPageTitleBar h2 {
	font-size: 30pt;
    }
    .productButtonsBox {
	width: calc(50% - 4px);
	font-size: 8pt;
	min-height: 120px;
	margin-right: 8px;
    }
    .productButtonsBox:nth-of-type(2n) {
	margin-right: 0;
    }
    .productButtonsBox:nth-of-type(2n+1) {
	clear: both;
    }
    .productCategoriesButton {
	padding: 8px;
	font-size: 10pt;
    }
    .socialGrey {
	padding: 15px 6px;
	width: 20px;
    }
     .sliderTitleBox {
	font-size: 16pt !important;
     }
     .sliderText {
	margin-left: 10px !important;
     }
     .sliderCaptionBox, .sliderCaptionBox strong {
	font-size: 7pt !important;
     }
     .homeProductsLarge, .homeProductsSmall {
	width: calc(100% - 30px);
	margin-left: 15px;
	margin-right: 15px;
     }
     .homeProductsTitle {
	opacity: 1 !important;
     }
     .homeProductsOverlay {
	display: none !important;
     }
    .pageTitleBarGreen {
	padding-left: 5px;
	font-size: 18px;
	line-height: 0.9em;
	padding-top: 12px;
	height: 47px;
    }
    .pageTitleBarGreen span {
	font-size: 11px;
    }
}

@media only screen and (max-width: 360px) {
    .headerPadding {
	float: left;
	width: 100%;
        padding-top: 114px;
    }
    .homepageRight {
	margin-top: 12px;
    }
     .logoLeft {
	width: calc(100% - 60px);
	margin-right: 30px;
	padding-bottom: 6px;
     }
     .logoRight {
	width: 100%;
	text-align: center;
	padding-top: 0;
	padding-bottom: 12px;
     }
     .menuItem img {
	height: 30px;
	margin: 0 2px;
     }
     .pageHeaderImage {
	height: 230px;
     }
     .homeProductsLarge, .homeProductsSmall {
	width: calc(100% - 30px);
	margin-left: 15px;
	margin-right: 15px;
     }
     .homeProductsTitle {
	opacity: 1 !important;
     }
     .homeProductsOverlay {
	display: none !important;
     }
     .sliderTitleBox {
	font-size: 16pt !important;
     }
     .sliderText {
	margin-left: 10px !important;
     }
     .sliderCaptionBox, .sliderCaptionBox strong {
	font-size: 7pt !important;
     }
}


/* WooCommerce Mobile */

@media screen and (max-width: 767px) {
    /* Force table to not be like tables anymore */
    .woocommerce-page table.shop_table,
    .woocommerce-page table.shop_table thead,
    .woocommerce-page table.shop_table tbody,
    .woocommerce-page table.shop_table th,
    .woocommerce-page table.shop_table td,
    .woocommerce-page table.shop_table tr {
        display: block;
    }
    /* Hide table headers (but not display: none;, for accessibility) */
    .woocommerce-page table.shop_table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .woocommerce-page table.shop_table tr {
        /*border: 1px solid #d2d3d3; */
    }
    .woocommerce-page table.shop_table td {
        /* Behave like a "row" */
        border: 1px solid #d2d3d3;
        position: relative;
        padding-left: 30% !important;
    }
    .woocommerce-page table.shop_table {
        border: none;
    }
    .woocommerce-page table.shop_table td.product-spacer {
        border-color: #FFF;
        height: 10px;
    }
    .woocommerce-page table.shop_table td:before {
        /* Now like a table header */
        position: absolute;
        /* Top/left values mimic padding */
        top: 6px;
        left: 6px;
        width: 25%;
        padding-right: 10px;
        white-space: nowrap;
    }
    /*Label the data*/
    .woocommerce-page table.shop_table td.product-remove:before {
        content: "DELETE";
    }
    .woocommerce-page table.shop_table td.product-thumbnail:before {
        content: "IMAGE";
    }
    .woocommerce-page table.shop_table td.product-name:before {
        content: "PRODUCT";
    }
    .woocommerce-page table.shop_table td.product-price:before {
        content: "PRICE";
    }
    .woocommerce-page table.shop_table td.product-quantity:before {
        content: "QUANTITY";
    }
    .woocommerce-page table.shop_table td.product-subtotal:before {
        content: "SUBTOTAL";
    }
    .woocommerce-page table.shop_table td.product-total:before {
        content: "TOTAL";
    }
    .woocommerce .quantity,
    .woocommerce #content .quantity,
    .woocommerce-page .quantity,
    .woocommerce-page #content .quantity {
        margin: 0;
    }
    .woocommerce-page table.cart td.actions,
    .woocommerce-page #content table.cart td.actions {
        text-align: left;
        border: 0;
        padding-left: 6px !important;
    }
    .woocommerce-page table.cart td.actions .button.alt,
    .woocommerce-page #content table.cart td.actions .button.alt {
        float: left;
        margin-top: 10px;
    }
    .woocommerce-page table.cart td.actions div,
    .woocommerce-page #content table.cart td.actions div,
    .woocommerce-page table.cart td.actions input,
    .woocommerce-page #content table.cart td.actions input {
        margin-bottom: 10px;
    }
    .woocommerce-page .cart-collaterals .cart_totals {
        float: left;
        width: 100%;
        text-align: left;
    }
    .woocommerce-page .cart-collaterals .cart_totals th,
    .woocommerce-page .cart-collaterals .cart_totals td {
        border: 0 !important;
    }
    .woocommerce-page .cart-collaterals .cart_totals table tr.cart-subtotal td,
    .woocommerce-page .cart-collaterals .cart_totals table tr.shipping td,
    .woocommerce-page .cart-collaterals .cart_totals table tr.total td {
        padding-left: 6px !important;
    }
    .woocommerce-page table.shop_table tr.cart-subtotal td,
    .woocommerce-page table.shop_table tr.shipping td,
    .woocommerce-page table.shop_table tr.total td,
    .woocommerce-page table.shop_table.order_details tfoot th,
    .woocommerce-page table.shop_table.order_details tfoot td {
        padding-left: 6px !important;
        border: 0 !important;
    }
    .woocommerce-page table.shop_table tbody {
        padding-top: 10px;
    }
    .woocommerce .col2-set .col-1,
    .woocommerce-page .col2-set .col-1,
    .woocommerce .col2-set .col-2,
    .woocommerce-page .col2-set .col-2,
    .woocommerce form .form-row-first,
    .woocommerce form .form-row-last,
    .woocommerce-page form .form-row-first,
    .woocommerce-page form .form-row-last {
        float: none;
        width: 100%;
    }
    .woocommerce .order_details ul,
    .woocommerce-page .order_details ul,
    .woocommerce .order_details,
    .woocommerce-page .order_details {
        padding: 0;
    }
    .woocommerce .order_details li,
    .woocommerce-page .order_details li {
        clear: left;
        margin-bottom: 10px;
        border: 0;
    }
    /* make buttons full width, text wide anyway, improves effectiveness */
    #content table.cart td.actions .button,
    .woocommerce #content table.cart td.actions .input-text,
    .woocommerce #content table.cart td.actions input,
    .woocommerce table.cart td.actions .button,
    .woocommerce table.cart td.actions .input-text,
    .woocommerce table.cart td.actions input,
    .woocommerce-page #content table.cart td.actions .button,
    .woocommerce-page #content table.cart td.actions .input-text,
    .woocommerce-page #content table.cart td.actions input,
    .woocommerce-page table.cart td.actions .button,
    .woocommerce-page table.cart td.actions .input-text,
    .woocommerce-page table.cart td.actions input {
        width: 100%;
    }
    /* keep coupon at 50% */
    #content table.cart td.actions .coupon .button,
    .woocommerce #content table.cart td.actions .coupon .input-text,
    .woocommerce #content table.cart td.actions .coupon input,
    .woocommerce table.cart td.actions .coupon .button,
    .woocommerce table.cart td.actions .coupon .input-text,
    .woocommerce table.cart td.actions .coupon input,
    .woocommerce-page #content table.cart td.actions .coupon .button,
    .woocommerce-page #content table.cart td.actions .coupon .input-text,
    .woocommerce-page #content table.cart td.actions .coupon input,
    .woocommerce-page table.cart td.actions .coupon .button,
    .woocommerce-page table.cart td.actions .coupon .input-text,
    .woocommerce-page table.cart td.actions .coupon input {
        width: 48%;
    }
    /* clean up how coupon inputs display */
    #content table.cart td.actions .coupon,
    .woocommerce table.cart td.actions .coupon,
    .woocommerce-page #content table.cart td.actions .coupon,
    .woocommerce-page table.cart td.actions .coupon {
        margin-top: 1.5em;
    }
    #content table.cart td.actions .coupon .input-text,
    .woocommerce table.cart td.actions .coupon .input-text,
    .woocommerce-page #content table.cart td.actions .coupon .input-text,
    .woocommerce-page table.cart td.actions .coupon .input-text {
        margin-bottom: 1em;
    }
    /* remove cross sells, they interfere with flow between cart and cart totals + shipping calculator */
    .woocommerce .cart-collaterals .cross-sells,
    .woocommerce-page .cart-collaterals .cross-sells {
        display: none;
    }
    /* full-width tabs */
    .woocommerce-tabs {
        float: left !important;
        width: 100% !important;
        -webkit-box-sizing: border-box !important;
        -moz-box-sizing: border-box !important;
        box-sizing: border-box !important;
        padding: 0 15px !important;
    }
}