
:root {
	--light-green: #EEF4F3;
	--green: #519032;
	--green-accessible: #45792A;
	--dark-green: #39721D;
	--blue: #155896;
	--dark-blue: #043869;
	--light-blue: #EFF5FA;
	--dark-grey: #333333;
	--light-red:#f9dcdd;
	--red:#b11116;
	--grey: #666666;
	
	--medium-text: clamp(1rem, 0.955rem + 0.23vw, 1.125rem);

	--transition: ease all 200ms;

}

/* DASHBOARD ------------------------------- */
body:not(.fullWidth) main {
	background: #fff;
}

main.dashboard {
	padding: 0;
}

.dashboard-header {
	text-align: center;
}

.dashboard-header header {
	margin-bottom: 0;
	max-width: 100%;
}

.dashboard-header :is(h1, p) {
	max-width: 45.625rem;
	margin-inline: auto;
}

.dashboard-header .back {
	margin-top: 2em;
}

.dashboard-header .back .button:before {
    background-color: #fff;
    content: '';
	display: inline-block;
	vertical-align: middle;
    height: 1em;
    margin-right: 0.8125em;
    mask: url(/images/icons/arrow-right-sharp-regular-full.svg) center/contain no-repeat;
    transform: scaleX(-1);
    width: 1em;
	padding-left: 1em;
}

.content .dashboard-quick-links {
	display: flex;
	gap: 1em;
	margin: clamp(1.875em, 1.42em + 2.27vw, 3.125em) 0 0;
}

.content .dashboard-quick-links li {
	flex: 1 1 auto;
}

.content .dashboard-quick-links a {
    background: #fff;
	border: 2px solid var(--ws-shade-4);
    border-radius: 0.625rem;
    color: #000;
    display: block;
    font-size: var(--medium-text);
    font-weight: 700;
	text-decoration: none;
    padding: clamp(1rem, 0.773rem + 1.14vw, 1.625rem);
}

.content .dashboard-quick-links a:is(:hover, :focus-visible) {
	border-color: var(--green);
    color: var(--dark-green);
}

.content .dashboard-quick-links a .icon {
    align-items: center;
    aspect-ratio: 1;
    background: var(--light-green);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    margin: 0 auto 1rem;
	transition: var(--transition);
    width: 3.375rem;
}

.content .dashboard-quick-links a:is(:hover, :focus-visible) .icon {
	background: var(--green);
}

.content .dashboard-quick-links a.waste-management .icon {
	background: var(--light-red);
}

.content .dashboard-quick-links a.waste-management:is(:hover, :focus-visible) {
	border-color: var(--red);
	color: var(--red);
}

.content .dashboard-quick-links a.waste-management:is(:hover, :focus-visible) .icon {
	background: var(--red);
}

.content .dashboard-quick-links a .icon:before {
    content: "";
	background: var(--green);
    display: block;
    height: 1.5rem;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
	transition: var(--transition);
    width: 100%;
}

.content .dashboard-quick-links a:is(:hover, :focus-visible) .icon:before,
.content .dashboard-quick-links a.waste-management:is(:hover, :focus-visible) .icon:before {
    background: #fff;
}

.content .dashboard-quick-links a.schedule-pickup .icon:before {
	mask-image: url(/images/icons/account/dashboard-icon-schedule-a-pickup.svg);
}
.content .dashboard-quick-links a.product-sales .icon:before {
	mask-image: url(/images/icons/account/dashboard-icon-product-sales.svg);
}
.content .dashboard-quick-links a.compliance-services .icon:before {
	mask-image: url(/images/icons/account/dashboard-icon-compliance-services.svg);
}
.content .dashboard-quick-links a.waste-management .icon:before {
	background: var(--red);
	mask-image: url(/images/icons/account/dashboard-icon-waste-management.svg);
}



/* Account Blocks ------ */
.account-blocks {
	align-items: flex-start;
	display: flex;
	gap: 0.625em 1.875em;
	padding: 1.875em;
}

.account-blocks > * {
	width: 100%;
}

.account-blocks > div {
	display: flex;
	gap: 0.625em;
	flex-direction: column;
}

.account-blocks section {
    border-radius: 0.625em;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 1.25em;
    padding-block: clamp(1.563em, 1.449em + 0.57vw, 1.875em);
}

.account-blocks .account-services {
	background: var(--light-green);
	padding-inline: clamp(1em, 0.682em + 1.59vw, 1.875em);
}

.account-blocks .account-resources {
	background: var(--light-blue);
	padding-inline: clamp(1em, 0.682em + 1.59vw, 1.875em);
}

.account-blocks h2 {
	margin: 0;
	font-size: clamp(1.5rem, 1.295rem + 1.02vw, 2.063rem);
}

.account-blocks p,
.account-blocks ul {
	font-size: var(--medium-text);
	line-height: 1.35em;
}

.account-blocks p:last-child,
.account-blocks ul:last-child {
	margin: 0;
}

.content .account-blocks li.icon {
    align-items: flex-start;
    display: flex;
	gap: 0.625rem;
    padding: 0;
}

.content .account-blocks li.icon:not(:first-child) {
	margin-top: 0.625rem;
}

.content .account-blocks li.icon:before {
	background-position: center;
	background-repeat: no-repeat;
    content: "";
    left: auto;
    position: relative;
    top: 0.05em;
    height: 1.25rem;
    width: 1.25rem;
}

.content .account-blocks li.icon-info:before {background-image: url(/images/icons/account/icon-link-account.svg)}
.content .account-blocks li.icon-change:before {background-image: url(/images/icons/account/icon-link-key.svg)}
.content .account-blocks li.icon-logout:before {background-image: url(/images/icons/account/icon-link-logout.svg)}
.content .account-blocks li.icon-schedule:before {background-image: url(/images/icons/account/icon-link-schedule.svg)}
.content .account-blocks li.icon-schedule-pickup:before {background-image: url(/images/icons/account/icon-link-schedule-a-pickup.svg); background-size: contain;}
.content .account-blocks li.icon-history:before {background-image: url(/images/icons/account/icon-link-history.svg)}
.content .account-blocks li.icon-invoices:before {background-image: url(/images/icons/account/icon-link-invoices.svg)}
.content .account-blocks li.icon-documents:before {background-image: url(/images/icons/account/icon-link-documents.svg)}
.content .account-blocks li.icon-naid:before {background-image: url(/images/icons/account/icon-link-naid.svg)}
.content .account-blocks li.icon-services:before {background-image: url(/images/icons/account/icon-link-services.svg)}
.content .account-blocks li.icon-compliance:before {background-image: url(/images/icons/account/icon-link-compliance.svg)}
.content .account-blocks li.icon-expired:before {background-image: url(/images/icons/account/icon-link-pharmaceutical.svg)}
.content .account-blocks li.icon-contact:before {background-image: url(/images/icons/account/icon-link-contact.svg)}
.content .account-blocks li.icon-help:before {background-image: url(/images/icons/account/icon-link-help.svg)}

.content .account-blocks li.icon a {
	color: var(--dark-grey);
}




/* Client Type */
.account-blocks .account-details .account-type {
	border-bottom: 2px solid #EBEEF1;
	border-top: 2px solid #EBEEF1;
	padding-block: clamp(1.563rem, 1.449rem + 0.57vw, 1.875rem);
	margin-block: clamp(1.563rem, 1.449rem + 0.57vw, 1.875rem);
}

.content .account-blocks .account-type li.icon:before {
	top: -0.125em;
    height: 1.875rem;
    width: 1.875rem;
}

.content .account-blocks .account-type li.icon.icon-bioserv {
	color: var(--red);
}

.content .account-blocks .account-type li.icon.icon-bioserv:before {
	background-image: url(/images/icons/account/account-type-bioserv.svg);
	color: #B11116;
}

.content .account-blocks .account-type li.icon.icon-shredsmart {
	color: var(--blue);
}

.content .account-blocks .account-type li.icon.icon-shredsmart:before {
	background-image: url(/images/icons/account/account-type-shredsmart.svg);
}






/* ORDER ONLINE ------------------------------ */

main :is(input, textarea):not([type=radio], [type=checkbox], [type=file], [type=submit]) {
	background: #f7f7f7;
	border-radius: 4px;
	border-color: #C4C4CD;
}

select {
    background-color: #f7f7f7;
    background-image: url("/images/icons/chevron-down.svg");
    background-position: right 1rem center;
    background-repeat: no-repeat;
    background-size: 1rem;
    border-color: #C4C4CD;
    border-radius: 4px;
	padding-right: 2em;
}

.content button {
	box-shadow: none;
	border-radius: 4px;
	font-size: 1em;
	line-height: 1.2em;
	padding: 0.5em 1em;
}

.order-online-links {
	align-content: flex-start;
	align-items: flex-start;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 68.1875rem;
}

.order-online-links a {
	color: #155896;
	font-size: 1.375rem;
	font-weight: 600;
	max-width: 13.75rem;
	text-align: center;
	width: 25%;
}

.order-online-links a:before {
	background-color: #fff;
	border: 1px solid #D0DDEA;
	border-radius: 50%;
	content: "";
	display: block;
	height: 11.25rem;
	margin: 0 auto 1.25rem;
	transition: ease all 200ms;
	width: 11.125rem;
}

.order-online-links a.disposal-services:before {
	background: #fff url(/images/icons/misc/order-online-icons-disposal-services.svg) no-repeat center;
}

.order-online-links a.product-sales:before {
	background: #fff url(/images/icons/misc/order-online-icons-product-sales.svg) no-repeat center;
}

.order-online-links a.compliance-services:before {
	background: #fff url(/images/icons/misc/order-online-icons-compliance-services.svg) no-repeat center;
}

.order-online-links a.waste-management:before {
	background: #fff url(/images/icons/misc/order-online-icons-waste-management.svg) no-repeat center;
}

.order-online-links a:hover {
	color: var(--dark-blue);
}

.order-online-links a:hover:before {
	border-color: var(--green);
	box-shadow: none;
}

main > .wrap > aside {
	align-items: flex-start;
	background: var(--ws-gradient-bg-1);
	box-shadow: 0 0 0 1px #EBEEF1;
	display: flex;
	justify-content: center;
	min-width: unset;
	position: relative;
}

main > .wrap > aside:before {
	content: url(/images/dots-vertical.svg);
  	position: absolute;
	top: 1.25em;
	left: 1.25em;
}

main > .wrap > aside:after {
	content: url(/images/dots-vertical.svg);
  	position: absolute;
	bottom: 1.25em;
	right: 1.25em;
}

main > .wrap > aside #sidenav  {
	all: unset;
	position: relative;
	width: 100%;
	z-index: 1;
}

main.logged-in>div>aside #sidenav li {
	position: relative;
}

main.logged-in>.wrap>aside #sidenav>ul>li>a,
main.logged-in>.wrap>aside #sidenav>ul>li>span {
	background: none;
	color: #000;
	display: block;
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.25em;
	padding: 0.5em 0;
}

main.logged-in>.wrap>aside #sidenav>ul>li.on>a {
	color: var(--blue);
}

main.logged-in>.wrap>aside #sidenav ul {
	display: flex;
	flex-direction: column;
	margin: 0 0 1px;
}

main.logged-in>.wrap>aside #sidenav ul li {
	margin: 0 0 1px;
}

main.logged-in>.wrap>aside #sidenav>ul>li {
	border-radius: 0;
}

main.logged-in.waste-management-portal>.wrap>aside #sidenav>ul>li + li {
	margin-top: 1.5em;
}

main.logged-in:not(.waste-management-portal)>.wrap>aside #sidenav>ul>li+li {
	border-top: 1px dashed var(--grey);
	margin-top: 0.5em;
	padding-top: 0.5em;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul {
	background: #FFFFFF;
	border: 1px solid #CED7E2;
	border-radius: 0.625rem;
	box-shadow: 0 4px 6px 0 rgba(66,95,142,0.10);
	padding: 0.625rem;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li.on {
	background: #EBEEF1;
	border-radius: 2px;
	overflow: clip;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li a {
	font-size: 1em;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li>a {
	border-radius: 0.125rem;
	padding: 0.5em;
	text-decoration: none;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li.on>a,
main.logged-in>.wrap>aside #sidenav>ul>li>ul>li>a:is(:hover, :focus-visible) {
	background: var(--green-accessible);
	color: #fff;
}

.account-waste-management main.logged-in>.wrap>aside #sidenav>ul>li>ul>li>a {
	align-items: flex-start;
	display: flex;
	gap: 0.5em;
}

.account-waste-management main.logged-in>.wrap>aside #sidenav>ul>li>ul>li>a:before {
	background: var(--green);
    mask-image: url(/images/icons/misc/pdf-green.svg);
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
	mask-position: center;
    content: "";
    flex-shrink: 0;
    height: 1em;
	transition: var(--transition);
    width: 1em;
}

.account-waste-management main.logged-in>.wrap>aside #sidenav>ul>li>ul>li>a:is(:hover, :focus-visible):before {
	background: #fff;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li.on>a {
	border-radius: 0;
	font-weight: 600;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li ul {
	padding: 0.25em;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li li {
	padding: 0;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li li:before {
	display: none;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li li a{
	border-radius: 0.125em;
	color: var(--dark-grey);
	padding: 0.5em 1em;
}

main.logged-in>.wrap>aside #sidenav>ul>li>ul>li li.on a,
main.logged-in>.wrap>aside #sidenav>ul>li>ul>li li a:is(:hover, :focus-visible) {
	background: var(--blue);
	color: #fff;
	text-decoration: none;
}
.tabs.icon-links {
    border-bottom: 1px solid #519032;
    margin: 3em 0 2em;
}

.tabs.icon-links .tab {
    background: #e3f0dd;
    border-radius: 4px 4px 0 0;
	box-shadow: none;
	color: var(--dark-green);
    cursor: pointer;
	font-size: 1em;
    padding: 0.75em 1.5em;
	text-decoration: none;
}

.tabs.icon-links .tab u {
    text-decoration: underline;
}

.tabs.icon-links .tab.on {
    background: #519032;
    color: #fff;
    cursor: text;
    pointer-events: none;
}

.tabs.icon-links .tab.on * {
    color: #fff;
}

.tabs.icon-links .tab.on:before {
    filter: brightness(100);
    opacity: 1;
}

.tabs.icon-links .tab:hover {
    box-shadow: inset 0 0 0 1px #519032;
    color: #519032;
}

.tabs.icon-links .tab:hover * {
    color: #519032;
}

.tabs.icon-links .tab:hover:before {
    filter: none;
    opacity: 1;
}

main.logged-in .product-links {
	align-content: flex-start;
	align-items: flex-start;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	max-width: 67.5em;
}

main.logged-in .product-links li {
	margin: 0 0.875rem 2rem 0;
	padding: 0;
	width: calc(25% - 0.6875rem);
}

main.logged-in .product-links li:nth-child(4n+4) {
	margin-right: 0;
}

main.logged-in .product-links li:before {
	display: none;
}

main.logged-in .product-links li a {
	color: var(--blue);
	display: block;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.25rem;
	text-align: center;
	text-decoration: none;
}

main.logged-in .product-links li a:hover {
	color: var(--dark-blue);
}

main.logged-in .product-links li a .product-image {
    align-items: center;
    aspect-ratio: 1;
    background: #fff;
    border: 1px solid #EEF4F3;
    border-radius: 4px;
    box-shadow: inset 0 0 20px 0 #EEF4F3;
    display: flex;
    justify-content: center;
    margin-bottom: 0.5rem;
    overflow: hidden;
}

main.logged-in .product-links li a:hover .product-image {
	border-color: var(--green);
	box-shadow: none;
}

main.logged-in .product-links li a .product-image img {
	display: block;
	height: auto;
	margin: 0;
	width: 100%;
}

main:has(.tooltip:is(:hover, :focus-visible)) {
	position: relative;
	z-index: 1;
}
.tooltip {position:relative; display: inline-block; vertical-align: text-bottom; padding:0 0.25rem}
.tooltip .helper {position:relative; cursor:pointer; display: inline-block; line-height:1rem; width:1rem; font-size:0.875rem; font-weight:600; text-align:center; border-radius: 50%; background: #519032; color:#fff;}
.tooltip:is(:hover, :focus-visible) .helper {background:#32621b}
.tooltip .tooltip-text {position:absolute; opacity:0; transition:ease all 200ms; pointer-events: none; transform: translateX(-5px); border-radius:5px; top:-1.5rem; left:100%; width:320px; line-height:1.25em; font-size:0.875rem; background:#fff; padding:2em 1.5em; box-shadow: 0 10px 40px 0 rgba(0,0,0,0.125)}
.tooltip:is(:hover, :focus-visible) .tooltip-text {opacity:1; transform:none; pointer-events: all;}
.tooltip .tooltip-text h2 {font-size:1.125rem; margin-bottom:0.5rem;}
.tooltip .tooltip-text ul {margin:0}
.tooltip .tooltip-text ul li {padding-left:1.25em}
.tooltip .tooltip-text ul li + li {margin-top:0.5em}
.tooltip .tooltip-text ul li:before {left: 4px;top: -2px;}







body.products-shoppingcart-10_cartview:not(.fullWidth) main > .wrap,
body.products-shoppingcart-thanks:not(.fullWidth) main > .wrap {
	max-width: calc(74em + 2 * var(--ws-gap));
}
body.products-shoppingcart-10_cartview main > .wrap > aside,
body.products-shoppingcart-thanks main > .wrap > aside {display: none;}





/* DESKTOP ---------------------------------------- */
@media screen and (min-width: 750px) {

	.dashboard-quick-links li {
		width: 25%;
	}

	body:not(.fullWidth) main > .wrap {
        grid-template-columns: auto 1fr;
        max-width: 100%;
        padding: 0;
    }

	body:not(.fullWidth) main > .wrap > aside {
        grid-column: 1 / span 1;
		padding: 3.9375rem 4vw 6.6875rem;
	}

	body:not(.fullWidth) .account-waste-management main > .wrap > aside {
        padding-inline: 2.5em;
	}

	body:not(.fullWidth) main > .wrap > aside #sidenav  {
		width: 15.625em;
	}

	main.waste-management-portal > .wrap > aside #sidenav  {
		width: 20.0625em;
	}

	body:not(.fullWidth) main > .wrap > #content  {
        grid-column: 2 / span 1;
		padding: 3.9375rem 4vw 6.6875rem;
    }

	h1.with-search {
		padding-right: 7.5em;
	}

	main.logged-in .predictive-search {
		position: absolute;
		top: 4.625em;
		right: 4vw;
	}

	main.logged-in .predictive-search input {
		max-width:10rem; 
		margin-left:0.5em
	}

	/* Legacy styles */
		main.logged-in .table-wrap {
			overflow: visible;
		}

		main.logged-in table.orderForm th {
			background: none;
			padding: 0.5em;
			vertical-align: bottom;
			font-weight: 500;
			font-size: 1em;
			font-weight: 700;
			color: #000;
			line-height: 1.25em;
		}
	main.logged-in table.orderForm th .tablesorter-header-inner {cursor:pointer}
	main.logged-in table.orderForm th .tablesorter-header-inner:after {content:"\f0dc"; font-size:0.875rem; opacity:0.5; margin-left:0.5rem; font-family: FontAwesome}
	main.logged-in table.orderForm th.unsorted .tablesorter-header-inner {display: none}
	main.logged-in table.orderForm th.tablesorter-headerSortDown .tablesorter-header-inner,
	main.logged-in table.orderForm th.tablesorter-headerSortUp .tablesorter-header-inner {color:var(--green)}
	main.logged-in table.orderForm th.tablesorter-headerSortDown .tablesorter-header-inner:after {content:"\f0dd"; opacity: 1; color:var(--green)}
	main.logged-in table.orderForm th.tablesorter-headerSortUp .tablesorter-header-inner:after {content:"\f0de"; opacity: 1; color:var(--green)}
	main.logged-in table.orderForm th.qty {text-align: center;}
	main.logged-in table.orderForm tbody {counter-reset: my-awesome-counter;}
	main.logged-in table.orderForm tbody tr {counter-increment: my-awesome-counter;}
	main.logged-in table.orderForm tbody tbody tr:is(:hover, :focus-within) {background: lightyellow;}
	main.logged-in table.orderForm td {padding: 0.5em; font-size:1em; color:var(--dark-grey); vertical-align: middle; line-height: 1.25em; border:0; border-top: 1px dashed #ccc}
	main.logged-in table.orderForm tbody tr:last-child td {border-bottom: 1px dashed #ccc}
	main.logged-in table.orderForm tbody td:last-child {width:1%; white-space: nowrap;}
	main.logged-in table.orderForm td .view {line-height: 1.875rem; font-size:0.875rem; padding:0 1em; font-weight:500; display: inline-block; background: var(--blue); border-radius:4px; color:#fff}
	main.logged-in table.orderForm td .view:hover {background: var(--dark-blue)}
	main.logged-in table.orderForm td .prodImage {
		display: inline-block;
		overflow: hidden;
		width: auto;
		background: #fff;
		position: relative;
		width: 3.0625rem;
		height: 3.0625rem;
	}
	
	main.logged-in table.orderForm td .prodImage:hover {
		overflow: visible;
		z-index: 3;
	}
	
	main.logged-in table.orderForm td .prodImage img {
        aspect-ratio: 1;
        background: #fff;
        border: 1px solid #ccc;
        bottom: 0;
        display: block;
        left: 0;
        object-fit: cover;
        object-position: center;
        overflow: hidden;
        pointer-events: none;
        position: absolute;
        transform-origin: bottom left;
        width: 100%;
    }

	main.logged-in table.orderForm tr:first-child td .prodImage img {
		bottom: auto;
		top: 0;
        transform-origin: top left;
	}
	
	main.logged-in table.orderForm td .prodImage:hover img {
		transform: scale(5.5);
		z-index: 1;
	}	
	main.logged-in table.orderForm td .remove-item {height:1.875rem; width:1.875rem; display: inline-block; vertical-align:top; box-shadow: none; padding:0; background: url(/images/icons/misc/remove-item.svg) no-repeat center}
	main.logged-in table.orderForm td .remove-item:hover {opacity:0.5; filter: grayscale(1)}
	main.logged-in table.orderForm td.qty input {width:6.9375rem; padding: 0 1em; height: 1.875rem;}
	main.logged-in table.orderForm td.reference,
	main.logged-in table.orderForm td.letter {min-width: 8.125rem;}
	main.logged-in table.orderForm tr.empty:hover {background:none}
	main.logged-in table.orderForm tr.empty td:before {display: none}
	main.logged-in table.orderForm tr.empty td .nothing-to-show {text-align: center;font-size: 1rem;color: var(--grey);padding: 1rem;border: 1px solid var(--light-green);border-radius: 5px;box-shadow: inset 0 0 20px 0 var(--light-green);}
	main.logged-in table.orderForm tr.empty td .nothing-to-show button {font-size: 1rem; margin-left:0.5em; background: var(--green);color: #fff;line-height: 2.75rem;padding: 0 1em;}
	main.logged-in table.orderForm tr.empty td .nothing-to-show button:hover {background:var(--dark-green)}
	main.logged-in table.orderForm tr.empty td .nothing-to-show button:before {content: ""; padding-left: 1em; margin-right: 0.5em; background: url(/images/layer-plus-icon.svg) no-repeat center;}
	main.logged-in table.orderForm tr.empty td .nothing-to-show button:before {content: ""; padding-left: 1em; margin-right: 0.5em; background: url(/images/layer-plus-icon.svg) no-repeat center;}
	main.logged-in table.orderForm tfoot {position:sticky; bottom:0; z-index:2; padding:1em 0 2em; text-align:right;}
	main.logged-in table.orderForm tfoot td {padding-top:1em; position:relative; text-align:right;}
	main.logged-in table.orderForm tfoot td:before {content:""; display: block; position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(0deg, rgba(255,255,255,1) 81%, rgba(255,255,255,0) 100%);}
	main.logged-in table.orderForm tfoot td input,
	main.logged-in table.orderForm tfoot td button {position:relative; font-size:1rem; z-index:1; color:#fff; line-height: 2.6875rem; padding:0 2em; background: var(--blue); border-radius: 4px;}
	main.logged-in table.orderForm tfoot td input:hover,
	main.logged-in table.orderForm tfoot td button:hover {background:var(--green)}
	main.logged-in .sticky-action {position:sticky; bottom:0; z-index:2; padding:1em 0 2em; text-align:right;}
	main.logged-in .sticky-action:before {content:""; display: block; position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(0deg, rgba(255,255,255,1) 81%, rgba(255,255,255,0) 100%);}
	main.logged-in .sticky-action .icon-link {font-size:1rem; z-index:1; float:left; line-height: 2.6875rem; padding:0 2em; position:relative; z-index:1; border-radius: 4px;}
	main.logged-in .sticky-action input {position:relative; font-size:1rem; z-index:1; color:#fff; height: 2.6875rem; padding:0 2em; background: var(--blue); border-radius: 4px;}
	main.logged-in .sticky-action input:hover {background:var(--green)}
	main.logged-in .extra-info {margin-top:4.0625rem}
	.products-shoppingcart-10_cartview .wrap .intro-text a {display: inline-block; font-weight:700}
	.products-shoppingcart-10_cartview .wrap .intro-text a[href^="tel:"] {color:var(--red)}
	.item-block {margin-top:2.5rem; padding-top:2.5rem; border-top: 1px solid #ccc}
	.item-block h2 {font-size:1.625rem; margin:0 0 0.5rem}
	.item-block h2 .item-count {font-weight: 600;background: var(--light-green);color: var(--blue);padding: 0 0.8125rem;margin-left: 0.25rem;display: inline-block;border-radius: 2rem;font-size:1rem;line-height: 2rem;vertical-align: middle;}
	.products-shoppingcart-10_cartview table.orderForm tfoot {position: initial;}
	.products-shoppingcart-10_cartview table.orderForm tfoot td:before {display: none}
	.products-shoppingcart-10_cartview table.orderForm tfoot td button {line-height:2.1875rem;}
	.products-shoppingcart-10_cartview table.orderForm tfoot td button.update {padding:0 2.9375rem}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody {counter-reset: my-awesome-counter;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody tr {counter-increment: my-awesome-counter;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody tr:hover {background: #ffffed;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td:first-child {font-weight:600; color: var(--dark-grey)}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td:first-child:before {content: counter(my-awesome-counter)"."; margin-right: 0.5em; color: var(--grey)}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td .view {line-height: 1.875rem; font-size:1rem; padding:0 1.125rem; font-weight:500; display: inline-block; background: var(--blue); border-radius:4px; color:#fff}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td .view:hover {background: var(--dark-blue)}
	.products-shoppingcart-10_cartview .order-info {margin:1rem 0 3.75rem}
	.products-shoppingcart-10_cartview .order-info .row {margin-bottom:1.75rem; display: -ms-flexbox;display: -webkit-flex;display: flex;-webkit-flex-direction: row;-ms-flex-direction: row;flex-direction: row;-webkit-flex-wrap: nowrap;-ms-flex-wrap: nowrap;flex-wrap: nowrap;-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;-webkit-align-content: stretch;-ms-flex-line-pack: stretch;align-content: stretch;}
	.products-shoppingcart-10_cartview .order-info .row > * {width:50%; flex:1 1 auto}
	.products-shoppingcart-10_cartview .order-info .row > *+* {margin-left:1rem}
	.products-shoppingcart-10_cartview .order-info input,
	.products-shoppingcart-10_cartview .order-info select {height: 2.125rem; font-size: 1rem; font-weight: 400; color: var(--dark-grey); width: 100%; padding: 0 0.5rem; background: #F2F2F2; border: 1px solid #CCCCCC;}
	.products-shoppingcart-10_cartview .order-info input:focus,
	.products-shoppingcart-10_cartview .order-info select:focus {border-color:var(--blue)}
	.products-shoppingcart-10_cartview .order-info select {padding: 0 2rem 0 0.5rem;background: #F2F2F2 url(/images/select-arrow.svg) no-repeat center right;}
	.products-shoppingcart-10_cartview .order-info textarea {height: 5.4375rem; font-size: 1rem; font-weight: 400; color: var(--dark-grey); width: 100%; padding: 0.5rem; background: #F2F2F2; border: 1px solid #CCCCCC; font-family:"proxima-nova" , sans-serif}
	.products-shoppingcart-10_cartview .order-info textarea:focus {border-color:var(--blue)}
	.products-shoppingcart-10_cartview .form-action {text-align: center;}
	.products-shoppingcart-10_cartview .form-action .submit {line-height:3.5625rem; padding:0; width: 15.6875rem;background: var(--green);border-radius: 4px; font-size:1.125rem}
	.products-shoppingcart-10_cartview .form-action .submit:hover {background: var(--dark-green);}
	.products-shoppingcart-thanks .item-block{border:0;margin:1rem 0;}
	.products-shoppingcart-thanks .submitted-order-info {border-radius: 4px; background: var(--light-green); font-size: 1rem; line-height: 1.5rem; padding:1.25em; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch;}
	.products-shoppingcart-thanks .submitted-order-info > * {width:calc(50% - 0.75rem);}
	.products-shoppingcart-thanks .submitted-order-info > * + * {margin-left: 1.5rem}
	.products-shoppingcart-thanks .submitted-order-info table td:first-child {font-weight:700}
	.products-shoppingcart-thanks .submitted-order-info table td:last-child {text-align:left}
	.products-shoppingcart-thanks .submitted-order-info .text-area-container + .text-area-container {margin-top:1rem}
	.products-shoppingcart-thanks table tbody td:last-child {text-align: center;}
	.products-shoppingcart-thanks .item-block .alert {background:rgba(177,17,22,0.07); margin: 2em 0; border-radius:4px; padding:1.5em}
	.products-shoppingcart-thanks .item-block .alert h2 {font-weight: 700; margin-bottom:1rem; font-size: 1rem;color: #B11116;}
	.products-shoppingcart-thanks .item-block .alert ol li {font-size:1rem; margin-bottom:0.625rem}
	.products-shoppingcart-thanks .account-links {border-top:1px solid #ccc; text-align:center; margin-top: 2rem; padding-top:2rem}



}

/* Desktop 1200px */
@media screen and (min-width: 750px) and (max-width: 1200px) {
	main > .wrap > #content,
	main > .wrap > aside {
		padding: 2rem 2vw 4rem;
	}

	main.logged-in .product-links li {
		width: calc(49% - 0.6875rem);
	}

	main > .wrap > #content h1 {
		font-size: 2em;
	}

	h1.with-search {
		padding-right: 0;
	}

	main.logged-in .predictive-search {
		position: relative;
		top: auto;
		right: auto;
		margin-bottom: 1em;
		display: block;
	}

	main > .wrap > aside #sidenav {
		font-size: 0.875em;
	}
}

/* Desktop 1000px */
@media screen and (min-width: 750px) and (max-width: 1000px) {
	body:not(.fullWidth) main > .wrap {
		grid-template-columns: 1fr;
	}
	body:not(.fullWidth) main > .wrap > #content,
	body:not(.fullWidth) main > .wrap > aside {
		grid-column: 1 / span 1;
	}
	body:not(.fullWidth) main > .wrap > aside {
		grid-row: 2;
		justify-content: flex-start;
	}
	body:not(.fullWidth) main > .wrap > aside #sidenav {
		max-width: 100%;
		width: 100%;
		font-size: 1em;
	}
}














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

	.dashboard > .wrap,
	main.logged-in > .wrap  {
		padding: 0;
	}

	main.logged-in #content,
	main > .wrap > aside {
		padding: 2em 1em;
	}

	main > .wrap > aside:before,
	main > .wrap > aside:after {
		display: none;
	}


	.content .dashboard-quick-links,
	.account-blocks {
		flex-direction: column;
	}

	.tabs.icon-links {
		display: flex;
		flex-direction: column;
	}

	.tabs.icon-links .tab {
		border-radius: 4px;
		margin-bottom: 0.25em;
	}


	/* Legacy styles */
	main.logged-in .predictive-search {margin-bottom:1rem; display: block}
	main.logged-in .predictive-search input {width:100%}
	main.logged-in .product-links {display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start;}
	main.logged-in .product-links li {width:calc(50% - 0.5rem); padding: 0; margin: 1rem 0}
	main.logged-in .product-links li:nth-child(even) {margin-left:1rem}
	main.logged-in .product-links li:before {display: none}
	main.logged-in .product-links li a {display: block; text-align:center; font-weight: 500; font-size: 1rem; color: var(--blue); line-height: 1.25rem;}
	main.logged-in .product-links li a:hover {color:var(--dark-blue)}
	main.logged-in .product-links li a .product-image {background:#fff; overflow:hidden; margin-bottom:0.5rem; border: 1px solid #EEF4F3;box-shadow: inset 0 0 20px 0 #EEF4F3;border-radius: 4px;}
	main.logged-in .product-links li a:hover .product-image {border-color:var(--green); box-shadow: none;}
	main.logged-in .product-links li a .product-image img {max-width:100%; height:auto; display: block; margin:0 auto}
	main.logged-in table.orderForm {width:100%}
	main.logged-in table.orderForm colgroup,
	main.logged-in table.orderForm thead {display: none}
	main.logged-in table.orderForm tr {display: block; width:100%; background:none; padding: 2rem 0}
	main.logged-in table.orderForm tbody tr {border-top:1px dashed #ccc}
	main.logged-in table.orderForm tbody tr:last-child {border-bottom:1px dashed #ccc}
	main.logged-in table.orderForm td {padding: 0; border:0; line-height:1.25em; display: block; background:none}
	main.logged-in table.orderForm tbody td + td {padding-top:0.5rem}
	main.logged-in table.orderForm tbody td.product-name {font-weight:600}
	main.logged-in table.orderForm tbody td:not(.qty):not(.prod-image):not(.view):not(.product-name):before {content: attr(data-attribute)":"; display: block; font-size:0.75rem; color:#666; line-height:1em; font-style: italic}
	main.logged-in table.orderForm tbody td.qty {display: -ms-flexbox;display: -webkit-flex;display: flex;-webkit-flex-direction: row;-ms-flex-direction: row;flex-direction: row;-webkit-flex-wrap: nowrap;-ms-flex-wrap: nowrap;flex-wrap: nowrap;-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;-webkit-align-content: center;-ms-flex-line-pack: center;align-content: center;-webkit-align-items: center;-ms-flex-align: center;align-items: center;}
	main.logged-in table.orderForm tbody td.qty:before {content: "Qty:"; margin-right:0.5rem}
	main.logged-in table.orderForm td .remove-item {height:1.875rem; width:1.875rem; display: inline-block; vertical-align:top; box-shadow: none; padding:0; background: url(/images/icons/misc/remove-item.svg) no-repeat center}
	main.logged-in table.orderForm tfoot {position:sticky; bottom:0; z-index:2; padding:1em 0 2em; text-align:right;}
	main.logged-in table.orderForm tfoot td {padding-top:1em; position:relative; text-align:right;}
	main.logged-in table.orderForm tfoot td:before {content:""; display: block; position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(0deg, rgba(255,255,255,1) 81%, rgba(255,255,255,0) 100%);}
	main.logged-in table.orderForm tfoot td input,
	main.logged-in table.orderForm tfoot td button {position:relative; display: block; width:100%; font-size:1rem; z-index:1; color:#fff; line-height: 2.6875rem; padding:0 2em; background: var(--blue); border-radius: 4px;}
	main.logged-in .sticky-action {position:sticky; bottom:0; z-index:2; padding:1em 0 2em; text-align:center;}
	main.logged-in .sticky-action:before {content:""; display: block; position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(0deg, rgba(255,255,255,1) 81%, rgba(255,255,255,0) 100%);}
	main.logged-in .sticky-action .button {position: relative; z-index: 1; border-radius: 4px; margin-bottom: 0.25em !important;}
	main.logged-in .sticky-action input {position:relative; width:100%; font-size:1rem; z-index:1; color:#fff; line-height: 2.6875rem; padding:0 2em; background: var(--blue); border-radius: 4px; float:none !important}
	.products-shoppingcart-10_cartview .intro-text a {display: inline-block; font-weight:700}
	.products-shoppingcart-10_cartview .intro-text a[href^="tel:"] {color:var(--red)}
	.item-block {margin-top:2.5rem; padding-top:2.5rem; border-top: 1px solid #ccc}
	.item-block h2 {font-size:1.5rem; font-weight:500; margin:0 0 1rem}
	.item-block h2 .item-count {font-weight: 600;background: var(--light-green);color: var(--blue);padding: 0 0.8125rem;margin-left: 0.25rem;display: inline-block;border-radius: 2rem;font-size:1rem;line-height: 2rem;vertical-align: middle;}
	.products-shoppingcart-10_cartview table.orderForm tfoot {position: initial;}
	.products-shoppingcart-10_cartview table.orderForm tfoot td:before {display: none}
	.products-shoppingcart-10_cartview table.orderForm tfoot td button {line-height:2.1875rem;}
	.products-shoppingcart-10_cartview table.orderForm tfoot td button.update {padding:0 2.9375rem}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody {counter-reset: my-awesome-counter;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody tr {counter-increment: my-awesome-counter;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management tbody tr:hover {background: #ffffed;}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td:first-child {font-weight:600; color: var(--dark-grey)}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td:first-child:before {content: counter(my-awesome-counter)"."; margin-right: 0.5em; color: var(--grey)}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td .view {line-height: 1.875rem; font-size:1rem; padding:0 1.125rem; font-weight:500; display: inline-block; background: var(--blue); border-radius:4px; color:#fff}
	.products-shoppingcart-10_cartview table.orderForm.waste-management td .view:hover {background: var(--dark-blue)}
	.products-shoppingcart-10_cartview .order-info {margin:1rem 0 3.75rem}
	.products-shoppingcart-10_cartview .order-info .row {margin-bottom:1rem;}
	.products-shoppingcart-10_cartview .order-info .row > *+* {margin-top:1rem}
	.products-shoppingcart-10_cartview .order-info input,
	.products-shoppingcart-10_cartview .order-info select {height: 2.125rem; font-size: 1rem; font-weight: 400; color: var(--dark-grey); width: 100%; padding: 0 0.5rem; background: #F2F2F2; border: 1px solid #CCCCCC;}
	.products-shoppingcart-10_cartview .order-info input:focus,
	.products-shoppingcart-10_cartview .order-info select:focus {border-color:var(--blue)}
	.products-shoppingcart-10_cartview .order-info select {padding: 0 2rem 0 0.5rem;background: #F2F2F2 url(/images/select-arrow.svg) no-repeat center right;}
	.products-shoppingcart-10_cartview .order-info textarea {height: 5.4375rem; font-size: 1rem; font-weight: 400; color: var(--dark-grey); width: 100%; padding: 0.5rem; background: #F2F2F2; border: 1px solid #CCCCCC; font-family:"proxima-nova" , sans-serif}
	.products-shoppingcart-10_cartview .order-info textarea:focus {border-color:var(--blue)}
	.products-shoppingcart-10_cartview .form-action {text-align: center; padding-bottom:2rem}
	.products-shoppingcart-10_cartview .form-action .submit {line-height:3.5625rem; padding:0; max-width: 15.6875rem; width:100%; background: var(--green);border-radius: 4px; font-size:1.125rem}
	.products-shoppingcart-10_cartview .form-action .submit:hover {background: var(--dark-green);}
	.products-shoppingcart-thanks .wrap .item-block{border:0;margin:1rem 0;}
	.products-shoppingcart-thanks .submitted-order-info {border-radius: 4px; background: var(--light-green); font-size: 1rem; line-height: 1.5rem; padding:1.25em;}
	.products-shoppingcart-thanks .submitted-order-info > * + * {margin-top: 1rem}
	.products-shoppingcart-thanks .submitted-order-info table td {display: block; width:100%;}
	.products-shoppingcart-thanks .submitted-order-info table td:first-child {font-weight:700}
	.products-shoppingcart-thanks .submitted-order-info .text-area-container + .text-area-container {margin-top:1rem}
	.products-shoppingcart-thanks table tbody td:last-child {text-align: left; display: block; margin-bottom:0.75rem}
	.products-shoppingcart-thanks .item-block {border:0; padding:0}
	.products-shoppingcart-thanks .item-block .orderForm tr {border:1px solid #ccc; padding:1rem; border-radius: 4px}
	.products-shoppingcart-thanks .item-block .orderForm tr + tr {margin-top:0.5rem}
	.products-shoppingcart-thanks .item-block .alert {background:rgba(177,17,22,0.07); margin: 2em 0; border-radius:4px; padding:1.5em}
	.products-shoppingcart-thanks .item-block .alert h2 {font-weight: 700; margin-bottom:1rem; font-size: 1rem;color: #B11116;}
	.products-shoppingcart-thanks .item-block .alert ol {margin:0; padding-left:2rem}
	.products-shoppingcart-thanks .item-block .alert ol li {font-size:1rem; margin-bottom:0.625rem}
	.products-shoppingcart-thanks .account-links {border-top:1px solid #ccc; text-align:center; margin-top: 2rem; padding-top:2rem}

}






