/* reset paddings and margins on everything */
* { padding: 0; margin: 0; }

/* page wxh */
html, body { height: 100%; min-width: 320px; }

/* page background (same as footer) */
html, body { background: #fff; }

/* set up font defaults */
html {
	font-size: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body {
	font-family: "proxima-nova-alt", Trebuchet MS, Tahoma, Geneva, Arial, Helvetica, sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1em; /* 16px, usually */
	color: #787878;
	line-height: 1.4;
	-webkit-text-size-adjust: 1em;
	-ms-text-size-adjust: 1em;
	-moz-text-size-adjust: 1em;
}
@media only screen and (min-width: 1681px) {
	body { font-size: 26px; }/* start out with ridiculously gigantic fonts */
	body #header { font-size: 16px; }
}
@media only screen and (max-width: 1680px) { body { font-size: 21px; } }
@media only screen and (max-width: 1280px) { body { font-size: 18px; } }
@media only screen and (max-width: 1024px) { body { font-size: 16px; } }
@media only screen and (max-width: 920px)  { body { font-size: 15px; } }
strong {
	font-family: "proxima-nova-alt", Trebuchet MS, Tahoma, Geneva, Arial, Helvetica, sans-serif;
	font-style: normal;
	font-weight: 700;
}
em {
	font-family: "proxima-nova-alt", Trebuchet MS, Tahoma, Geneva, Arial, Helvetica, sans-serif;
	font-style: italic;
	font-weight: 400;
}
em strong, strong em {
	font-family: "proxima-nova-alt", Trebuchet MS, Tahoma, Geneva, Arial, Helvetica, sans-serif;
	font-style: italic;
	font-weight: 700;
}
.font-weight-normal 	{ font-weight: 400 !important; }
.font-weight-bold 		{ font-weight: 700 !important; }
.font-weight-light 	{ font-weight: 100 !important; }

/* links */
a:link, a:visited { color: #0078ad; text-decoration: none; }
a:active, a:hover { color: #094663; text-decoration: none; outline: 0; }
*:focus { text-decoration: none; outline: 0 none; }
.islink { cursor: pointer; }
/* links for white text that's not a button */
.text-white a:link, .text-white a:visited,
.bgc-green a:link, .bgc-green a:visited,
.bgc-teal a:link, .bgc-teal a:visited,
.bgc-orange a:link, .bgc-orange a:visited,
.bgc-blue a:link, .bgc-blue a:visited { color: #fff; text-decoration: underline; }
.text-white a:active, .text-white a:hover,
.bgc-green a:active, .bgc-green a:hover,
.bgc-teal a:active, .bgc-teal a:hover,
.bgc-orange a:active, .bgc-orange a:hover,
.bgc-gray a:active, .bgc-gray a:hover,
.bgc-blue a:active, .bgc-blue a:hover { color: #fff; text-decoration: underline; text-shadow: 0px 0px 6px #fff;  }

/* breadcrumbs */
.breadcrumb.text-green a:link, .breadcrumb.text-green a:visited { color: #80BD01; }
.breadcrumb.text-green a:active, .breadcrumb.text-green a:hover { color: #094663; }
.breadcrumb { margin: 0 !important; padding-top: 18px !important; padding-bottom: 18px !important; }
.breadcrumb, .breadcrumb .ppspmx-r 		{ padding-right: 301px !important; }
@media only screen and (min-width: 1681px) { .breadcrumb { min-height: 40px; } }
@media only screen and (max-width: 1680px) { .breadcrumb { min-height: 31px; } }
@media only screen and (max-width: 1024px) { .breadcrumb { min-height: 24px; } .chrome .breadcrumb { min-height: 23px; } }
@media only screen and (max-width: 920px) { .breadcrumb, .breadcrumb .ppspmx-r {  padding-right: 0 !important; } }

/* text */
/* because the font sizes vary greatly, normalize the header sizes and apply font-size classes to each element */
/* yeah, I know */
h1, h2, h3, h4, h5, h6 {
	margin: 1em 0 .5em 0;
	font-size: 1em;
	font-weight: 400;
}
h1 { line-height: .95em !important; }
h2 { line-height: 1em !important; }
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	font-size: .6em;
	font-weight: 400 !important;
}
/*
Font sizes used in the psds converted to ems.
No, these aren't the exact conversion values. I rounded here and there to something more sensible.
80px == 3em
66px == 2.5em
64px == 2.45em
54px == 2em
48px == 1.85em
42px == 1.6em
40px == 1.525em
36px == 1.375em
34px == 1.3em
26px == 1em
24px == .925em
21px == .8em
18px == .75em
*/
.font-size-80 { font-size: 2.75em; line-height: 1.3; 	}
.us_es .font-size-80 { font-size: 2.35em; }
@media only screen and (max-width: 768px) {
	.us_es .font-size-80 { font-size: 1.68em; }
	
}

.font-size-66 { font-size: 2.5em; line-height: 1.3; 	}
.font-size-64 { font-size: 2.45em; line-height: 1.3; 	}
.font-size-54 { font-size: 2em; line-height: 1.3; 		}
.font-size-48 { font-size: 1.85em; line-height: 1.3; 	}
.font-size-42 { font-size: 1.6em; line-height: 1.3; 	}
.font-size-40 { font-size: 1.525em; line-height: 1.3; }
.font-size-36 { font-size: 1.375em; line-height: 1.3; }
.font-size-34 { font-size: 1.3em; 	}
.font-size-30 { font-size: 1.15em; 	}
.font-size-26 { font-size: 1em; 		}
.font-size-24 { font-size: .925em; 	}
.font-size-21 { font-size: .8em; 		}
.font-size-18 { font-size: .75em; 	}
.font-size-14 { font-size: .55em;   } 
@media only screen and (max-width: 1680px) {}
@media only screen and (max-width: 1280px) {
	.font-size-80 { font-size: 2.5em; 	}
	.font-size-66 { font-size: 2.25em; 	}
	.font-size-64 { font-size: 2.125em; 	}
}
@media only screen and (max-width: 1024px) {}
@media only screen and (max-width: 920px) {
	.font-size-21 { font-size: .9em; 		}
	.font-size-18 { font-size: .85em; 	}
	.font-size-14 { font-size: .75em;   } 
}
@media only screen and (max-width: 767px) {}
@media only screen and (max-width: 480px) {
	.font-size-80 { font-size: 2.25em; }
	.font-size-66 { font-size: 2.125em; }
	.font-size-64 { font-size: 2em; }
	.font-size-54 { font-size: 1.9em; }
}


p { margin: 1.25em 0; }
@media only print { p { margin: 1em 0; } }

.text-left   	{ text-align: left; }
.text-right  	{ text-align: right; }
.text-center 	{ text-align: center; }

.text-uppercase 	{ text-transform: uppercase; }
.text-normalcase 	{ text-transform: none; }

.text-error 	{ color: #a94442; }
.text-white 	{ color: #ffffff; }
.text-green 	{ color: #80bd01; }
.text-blue 		{ color: #00add9; }
.text-teal 		{ color: #18ab8b; }
.text-orange 	{ color: #ff9e19; }
.text-gray,
.text-color-gray { color: #787878; }

.border-bottom-green 	{ border-bottom: 1px solid #80bd01 ; }
.border-bottom-blue 	{ border-bottom: 1px solid #00add9; }
.border-bottom-teal 	{ border-bottom: 1px solid #18ab8b; }
.border-bottom-orange 	{ border-bottom: 1px solid #ff9e19; }
.border-bottom-gray 	{ border-bottom: 1px solid #787878; }


.nowrap { white-space: nowrap; }

blockquote { padding: 0 50px; line-height: 1.2em; }
blockquote p { margin: .5em 0; }
@media only screen and (max-width: 767px) {
	blockquote { padding: 0 30px; }
}
@media only screen and (max-width: 480px) {
	blockquote { padding: 0 20px; }
		.width-90p-480 { width: 90% }
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup { top: -0.5em; }
sub { bottom: -0.25em; }

/* lists */
ul { margin: 1.25em 0; padding: 0 0 0 2.5em; }
ul ul { margin: 0; }
ul.no-indent { padding: 0 0 0 1em; }

/* horizontal rules */
hr {
	height: 1px;
	border: 0;
	color: #787878;
	background-color: /*#787878;*/ #ccc;
	margin: 1em auto 1.125em auto;
	font-size: 1.5em;
	line-height: 1em;
	/*margin-left: auto;
	margin-right: auto;*/
}
.bgc-green   hr,
.bgc-teal  	 hr,
.bgc-blue  	 hr,
.bgc-orange  hr,
.text-white  hr, hr.text-white 	{ color: #ffffff; background-color: #ffffff; }
.text-green  hr, hr.text-green 	{ color: #80bd01; background-color: #80bd01; }
.text-blue   hr, hr.text-blue 	{ color: #00add9; background-color: #00add9; }
.text-teal 	 hr, hr.text-teal		{ color: #18ab8b; background-color: #18ab8b; }
.text-orange hr, hr.text-orange	{ color: #ff9e19; background-color: #ff9e19; }
hr.hr-sm { max-width: 225px; }
hr.hr-left { margin-left: 0; /* margin-right: 0; */}

hr.hr-dot:after {
	 content:  "\00b7";
	 position: relative;
	 top: -13px;
	 font-size: 150px;
	 line-height: 5px;
}

/* margin adjustments */
.no-gap-top	    { margin-top: 0 !important; padding-top: 0 !important; }
.no-gap-bot     { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.no-margin-top	{ margin-top: 0 !important; }
.no-margin-bot  { margin-bottom: 0 !important; }
.no-padding-top { padding-top: 0 !important; }
.no-padding-bot { padding-bottom: 0 !important; }
.no-margin  		{ margin: 0 !important; }
.no-padding 		{ padding: 0 !important; }
/* things with a little extra vertical space */
.vspace { margin: 2.5em 0; }
.vspace + .vspace { margin-top: 3.5em; }

/* floats */
.pull-right  { float: right; }
.pull-left   { float: left; }
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
.clear {
	clear: both;
	overflow: hidden;
	margin: 0;
	padding: 0;
	height: 0;
	line-height: 0;
	font-size: 0;
}

/* image defaults */
img {
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
}
/* responsive images */
img.shrinkable { max-width: 100%; }

/* ///// backgrounds ////////////////////////////////////////////////////////////////// */

/* background images */
.bgi-fill {/* fill the space background image */
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	color: #fff;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 1), 0px 1px 1px rgba(0, 0, 0, .5);
}
.bgi-fill .no-shadow { text-shadow: none; }
.no-backgroundsize .bgi-fill {
	-ms-behavior: url(scripts/background-size/backgroundsize.min.htc);/* path relative to page */
}
.popover-content, .popover-title {
		text-shadow: none!important; 
}

/* background colors */
.slice,
.bgc-white 	    { background-color: #ffffff; }
.bgc-green 	    { background-color: #80bd01; color: #fff; }
.bgc-green-dark { background-color: #4C9D2E; color: #fff; }
.bgc-blue 	    { background-color: #00add9; color: #fff; }
.bgc-teal 	    { background-color: #18ab8b; color: #fff; }
.bgc-orange     { background-color: #ff9e19; color: #fff; }
.bgc-gray 	    { background-color: #787878; color: #fff; }

.ig-hover.bgc-white 	{ background-color: rgba(255,255,255,.9); }
.ig-hover.bgc-green 	{ background-color: rgba(128,189,1,.9); 	}
.ig-hover.bgc-blue 		{ background-color: rgba(0,173,217,.9); 	}
.ig-hover.bgc-teal 		{ background-color: rgba(24,171,139,.9); 	}
.ig-hover.bgc-orange 	{ background-color: rgba(255,158,25,.9); 	}
.ig-hover.bgc-gray 	{ background-color: rgba(120, 120, 120, .9); 	}

/* fix browser gap bug */
.slice.bgc-white 	{ border-top: 1px solid #ffffff; }

/* print */
@media only print { 
	body:not(#sect-peop) .slice { page-break-inside: avoid; } 
}

/* half and half background colors : when using, also apply a bgc to the individual cells for old browsers */
/* only made one set b/c that's all the design called for, but follow this format to make more if needed */
.bgc-green-blue { background: linear-gradient(90deg, #80bd01 50%, #00add9 50%); }
.no-cssgradients .bgc-green-blue { background: #eee; }/* unsupported fallback = gray bg for full length */

/* background sizing (override the default cover) */
.bgs-cover {
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.bgs-auto { background-size: auto; }
.bgs-contain { background-size: contain; }
.bgs-100a { background-size: 100% auto; }
.bgs-a100 { background-size: auto 100%; }
.no-backgroundsize .bgs-contain,
.no-backgroundsize .bgs-cover {
	-ms-behavior: url(scripts/background-size/backgroundsize.min.htc);/* path relative to page */
}

/* background positions (override the default center center) */
.bgp-ct { background-position: center top; }
.bgp-lt { background-position: left top; }
.bgp-rt { background-position: right top; }
.bgp-cc { background-position: center center; }
.bgp-lc { background-position: left center; }
.bgp-rc { background-position: right center; }
.bgp-cb { background-position: center bottom; }
.bgp-lb { background-position: left bottom; }
.bgp-rb { background-position: right bottom; }

/* ///// viridian buttons ///////////////////////////////////////////////////////////// */
.vbtn {
	display: inline-block;
	margin: 2px;
	padding: 6px 18px;
	min-width: 100px;
	font-size: 1em;
	font-weight: 400;
	line-height: 1.42857143;
	text-align: center;
	text-decoration: none !important;
	text-shadow: none !important;
	white-space: nowrap;
	vertical-align: middle;
	-ms-touch-action: manipulation;
			touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
		 -moz-user-select: none;
			-ms-user-select: none;
					user-select: none;
	border: 2px solid #fff;
	-webkit-border-radius: 1.2em;
	-moz-border-radius: 1.2em;
	border-radius: 1.2em;
	background-position: center center;
	background-repeat: repeat;
}
.vbtn:hover, .vbtn:focus, .vbtn:active {
	outline: 0 none;
	text-decoration: none;
}
.vbtn-no-radius {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}
.vbtn-no-border { border: 0; }
.vbtn-block { display: block; }
@media only screen and (min-width: 1681px) { 
	.vbtn-wide { min-width: 375px; max-width: 100%; } 
	.vbtn-vspace { margin-bottom: 20px; }
}
@media only screen and (max-width: 1680px) { 
	.vbtn-wide { min-width: 275px; max-width: 100%; } 
	.vbtn-vspace { margin-bottom: 15px; }
}
@media only screen and (max-width: 1280px) { 
	.vbtn-wide { min-width: 200px; max-width: 100%; } 
	.vbtn-vspace { margin-bottom: 10px; }
}
.vbtn-bottom { position: relative; }
.vbtn-bottom > div { 	padding-bottom: 8em; }
.vbtn-bottom .vbtn-group { position: absolute; bottom: 5em; left: 0; right: 0; }
@media only screen and (max-width: 767px) {
	.pxc-2col.pxc-lg .vbtn-bottom > div { padding-bottom: 3em; }
	.pxc-2col.pxc-lg .vbtn-bottom .vbtn-group { position: static; bottom: auto; left: auto; right: auto; padding-left: 0 !important; padding-right: 0 !important; }
}
@media only screen and (max-width: 640px) {
	.pxc-2col.pxc-med .vbtn-bottom > div { padding-bottom: 3em; }
	.pxc-2col.pxc-med .vbtn-bottom .vbtn-group { position: static; bottom: auto; left: auto; right: auto; padding-left: 0 !important; padding-right: 0 !important; }
}
@media only screen and (max-width: 540px) {
	.pxc-2col .vbtn-bottom > div { padding-bottom: 3em; }
	.pxc-2col .vbtn-bottom .vbtn-group { position: static; bottom: auto; left: auto; right: auto; padding-left: 0 !important; padding-right: 0 !important; }
}
@media only screen and (max-width: 480px) { .vbtn.vbtn-wordy { padding: 6px 6px; font-size: .9em; white-space: normal; } }


/* green buttons with white text (== products section & general) */
.bgc-green .vbtn, .bgc-green a.vbtn, .bgc-green a:link.vbtn, .bgc-green a:visited.vbtn,
.vbtn, a.vbtn, a.vbtn:link, a.vbtn:visited,
.vbtn-default, a.vbtn-default, a.vbtn-default:link, a.vbtn-default:visited {
	color: #fff;
	background-color: #80bd01;
}
.bgc-green a:active.vbtn, .bgc-green a:hover.vbtn, .bgc-green a:focus.vbtn,
.bgc-green .vbtn:active, .bgc-green .vbtn:hover, .bgc-green .vbtn:focus,
a.vbtn:active, a.vbtn:hover, s.vbtn:focus,
.vbtn:active, .vbtn:hover, .vbtn:focus,
a.vbtn-default:active, a.vbtn-default:hover, a.vbtn-default:focus,
.vbtn-default:active, .vbtn-default:hover, .vbtn-default:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}

/* teal buttons with white text (== projects section) */
.bgc-teal .vbtn, .bgc-teal a.vbtn, .bgc-teal a:link.vbtn, .bgc-teal a:visited.vbtn,
.vbtn-teal, a.vbtn-teal, a.vbtn-teal:link, a.vbtn-teal:visited {
	color: #fff;
	background-color: #18ab8b;
}
.bgc-teal a:active.vbtn, .bgc-teal a:hover.vbtn, .bgc-teal a:focus.vbtn,
.bgc-teal .vbtn:active, .bgc-teal .vbtn:hover, .bgc-teal .vbtn:focus,
a.vbtn-teal:active, a.vbtn-teal:hover, a.vbtn-teal:focus,
.vbtn-teal:active, .vbtn-teal:hover, .vbtn-teal:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}

/* blue buttons with white text (== people section) */
.bgc-blue .vbtn, .bgc-blue a.vbtn, .bgc-blue a:link.vbtn, .bgc-blue a:visited.vbtn,
.vbtn-blue, a.vbtn-blue, a.vbtn-blue:link, a.vbtn-blue:visited {
	color: #fff;
	background-color: #00add9;
}
.bgc-blue a:active.vbtn, .bgc-blue a:hover.vbtn, .bgc-blue a:focus.vbtn,
.bgc-blue .vbtn:active, .bgc-blue .vbtn:hover, .bgc-blue .vbtn:focus,
a.vbtn-blue:active, a.vbtn-blue:hover, a.vbtn-blue:focus,
.vbtn-blue:active, .vbtn-blue:hover, .vbtn-blue:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}

/* orange buttons with white text (== solar section) */
.bgc-orange .vbtn, .bgc-orange a.vbtn, .bgc-orange a:link.vbtn, .bgc-orange a:visited.vbtn,
.vbtn-orange, a.vbtn-orange, a.vbtn-orange:link, a.vbtn-orange:visited {
	color: #fff;
	background-color: #ff9e19;
}
.bgc-orange a:active.vbtn, .bgc-orange a:hover.vbtn, .bgc-orange a:focus.vbtn,
.bgc-orange .vbtn:active, .bgc-orange .vbtn:hover, .bgc-orange .vbtn:focus,
a.vbtn-orange:active, a.vbtn-orange:hover, a.vbtn-orange:focus,
.vbtn-orange:active, .vbtn-orange:hover, .vbtn-orange:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}


/* clear buttons with white text (== solar section) */
.bgc-clear .vbtn, .bgc-clear a.vbtn, .bgc-clear a:link.vbtn, .bgc-clear a:visited.vbtn,
.vbtn-clear, a.vbtn-clear, a.vbtn-clear:link, a.vbtn-clear:visited {
	color: #4e9d2d;
	background-color: rgba(250,250,250,.6);
	border-color: #a1a1a1 !important;
}
.bgc-clear a:active.vbtn, .bgc-clear a:hover.vbtn, .bgc-clear a:focus.vbtn,
.bgc-clear .vbtn:active, .bgc-clear .vbtn:hover, .bgc-clear .vbtn:focus,
a.vbtn-clear:active, a.vbtn-clear:hover, a.vbtn-clear:focus,
.vbtn-clear:active, .vbtn-clear:hover, .vbtn-clear:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}

/* semi-transparent black buttons with white text (== big image sections and repbox) */
.bgi-fill .vbtn, .bgi-fill a.vbtn, .bgi-fill a:link.vbtn, .bgi-fill a:visited.vbtn,
.vbtn-black, a.vbtn-black, a.vbtn-black:link, a.vbtn-black:visited {
	color: #fff;
	background-color: rgba(0,0,0,.5);
}
.bgi-fill a:active.vbtn, .bgi-fill a:hover.vbtn, .bgi-fill a:focus.vbtn,
.bgi-fill .vbtn:active, .bgi-fill .vbtn:hover, .bgi-fill .vbtn:focus,
a.vbtn-black:active, a.vbtn-black:hover, a.vbtn-black:focus,
.vbtn-black:active, .vbtn-black:hover, .vbtn-black:focus {
	color: #fff;
	background-image: url(../images/2016/btn-hover.png);
}

/* disabled buttons */
.vbtn.disabled,
.vbtn[disabled],
.vbtn.disabled:hover,
.vbtn[disabled]:hover,
.vbtn.disabled:focus,
.vbtn[disabled]:focus,
.vbtn.disabled:active,
.vbtn[disabled]:active,
.vbtn.disabled.active {
	pointer-events: none;
	cursor: not-allowed;
	color: #666 !important;
	background-color: #ccc !important;
	background-image: none !important;
}

/* ///// horizontal centering of content ////////////////////////////////////////////// */
/* content that is centered on the page to a max page width, with padding */
.page-width-outer {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: 100%;
	max-width: 1920px;
}
.page-width-inner {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 1280px;
}
.page-width-inner-half {
	display: inline-block;
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 640px;
}
@media only screen and (max-width: 1024px) {
	.ie11 .page-width-inner-half { max-width: 100%; }
}


.page-width-inner.height-100p { height: 100%; }
.vbtn-bottom, .height-100p { height: 100%; }
.limit-content {/* can be inside one of the page-width areas, limits the width even more */
	margin-left: auto;
	margin-right: auto;
	/*width: 100%;*/
	max-width: 980px;
}
@media only screen and (max-width: 1680px) { .limit-content { max-width: 875px; } }

.pp-trbl, .pp-tb, .pp-lr, .pp-t, .pp-b, .pp-l, .pp-r,
.pplg-trbl, .pplg-tb, .pplg-lr, .pplg-t, .pplg-b, .pplg-l, .pplg-r,
.ppmx-trbl, .ppmx-tb, .ppmx-lr, .ppmx-t, .ppmx-b, .ppmx-l, .ppmx-r { padding: 0; }

.pp-trbl 		{ padding: 20px 30px; }
.pp-tb 			{ padding-top: 20px; padding-bottom: 20px; }
.pp-lr 			{ padding-left: 30px; padding-right: 30px; }
.pp-t 			{ padding-top: 20px; }
.pp-b 			{ padding-bottom: 20px; }
.pp-l 			{ padding-left: 30px; }
.pp-r       { padding-right: 30px; }

.pplg-trbl 	{ padding: 90px; }
.pplg-tb 		{ padding-top: 90px; padding-bottom: 90px; }
.pplg-lr 		{ padding-left: 90px; padding-right: 90px; }
.pplg-t 		{ padding-top: 90px; }
.pplg-b 		{ padding-bottom: 90px; }
.pplg-l 		{ padding-left: 90px; }
.pplg-r 		{ padding-right: 90px; }

.ppmx-trbl 	{ padding: 140px; }
.ppmx-tb 		{ padding-top: 140px; padding-bottom: 140px; }
.ppmx-lr 		{ padding-left: 140px; padding-right: 140px; }
.ppmx-t 		{ padding-top: 140px; }
.ppmx-b 		{ padding-bottom: 140px; }
.ppmx-l 		{ padding-left: 140px; }
.ppmx-r 		{ padding-right: 140px; }

.pp-l-30    {padding-left: 30px; }
.pp-r-30 		{ padding-right: 30px; }

.ppsm-lr 		{ padding-left: 10px; padding-right: 10px; }

.width-60-c { width: 60%; margin-left: auto; margin-right: auto; }

.vbtn-bottom .pp-trbl .vbtn-group, 
.vbtn-bottom .pp-lr .vbtn-group, 
.vbtn-bottom .pp-l .vbtn-group { padding-left: 30px; }
.vbtn-bottom .pp-trbl .vbtn-group, 
.vbtn-bottom .pp-lr .vbtn-group, 
.vbtn-bottom .pp-r .vbtn-group { padding-right: 30px; }

.vbtn-bottom .pplg-trbl .vbtn-group, 
.vbtn-bottom .pplg-lr .vbtn-group, 
.vbtn-bottom .pplg-l .vbtn-group { padding-left: 90px; }
.vbtn-bottom .pplg-trbl .vbtn-group, 
.vbtn-bottom .pplg-lr .vbtn-group, 
.vbtn-bottom .pplg-r .vbtn-group { padding-right: 90px; }

.vbtn-bottom .ppmx-trbl .vbtn-group, 
.vbtn-bottom .ppmx-lr .vbtn-group, 
.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 140px; }
.vbtn-bottom .ppmx-trbl .vbtn-group, 
.vbtn-bottom .ppmx-lr .vbtn-group, 
.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 140px; }

@media only screen and (max-width: 1680px) {
	/*
	.pp-trbl 		{ padding: 20px 30px; }
	.pp-tb 			{ padding-top: 20px; padding-bottom: 20px; }
	.pp-lr 			{ padding-left: 30px; padding-right: 30px; }
	.pp-t 			{ padding-top: 20px; }
	.pp-b 			{ padding-bottom: 20px; }
	.pp-l 			{ padding-left: 30px; }
	.pp-r 			{ padding-right: 30px; }

	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-l .vbtn-group { padding-left: 30px; }
	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-r .vbtn-group { padding-right: 30px; }
	*/

	.pplg-trbl 	{ padding: 50px 60px; }
	.pplg-tb 		{ padding-top: 50px; padding-bottom: 50px; }
	.pplg-lr 		{ padding-left: 60px; padding-right: 60px; }
	.pplg-t 		{ padding-top: 50px; }
	.pplg-b 		{ padding-bottom: 50px; }
	.pplg-l 		{ padding-left: 60px; }
	.pplg-r 		{ padding-right: 60px; }

	.ppmx-trbl 	{ padding: 100px 120px; }
	.ppmx-tb 		{ padding-top: 100px; padding-bottom: 100px; }
	.ppmx-lr 		{ padding-left: 120px; padding-right: 120px; }
	.ppmx-t 		{ padding-top: 100px; }
	.ppmx-b 		{ padding-bottom: 100px; }
	.ppmx-l 		{ padding-left: 120px; }
	.ppmx-r 		{ padding-right: 120px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 60px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 60px; }

	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 120px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 120px; }
}
@media only screen and (max-width: 1024px) {
	/*
	.pp-trbl 		{ padding: 20px 30px; }
	.pp-tb 			{ padding-top: 20px; padding-bottom: 20px; }
	.pp-lr 			{ padding-left: 30px; padding-right: 30px; }
	.pp-t 			{ padding-top: 20px; }
	.pp-b 			{ padding-bottom: 20px; }
	.pp-l 			{ padding-left: 30px; }
	.pp-r 			{ padding-right: 30px; }

	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-l .vbtn-group { padding-left: 30px; }
	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-r .vbtn-group { padding-right: 30px; }
	*/

	.pplg-trbl 	{ padding: 50px; }
	.pplg-tb 		{ padding-top: 50px; padding-bottom: 50px; }
	.pplg-lr 		{ padding-left: 50px; padding-right: 50px; }
	.pplg-t 		{ padding-top: 50px; }
	.pplg-b 		{ padding-bottom: 50px; }
	.pplg-l 		{ padding-left: 50px; }
	.pplg-r 		{ padding-right: 50px; }

	.ppmx-trbl 	{ padding: 75px; }
	.ppmx-tb 		{ padding-top: 75px; padding-bottom: 75px; }
	.ppmx-lr 		{ padding-left: 75px; padding-right: 75px; }
	.ppmx-t 		{ padding-top: 75px; }
	.ppmx-b 		{ padding-bottom: 75px; }
	.ppmx-l 		{ padding-left: 75px; }
	.ppmx-r 		{ padding-right: 75px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 50px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 50px; }

	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 75px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 75px; }
}
@media only screen and (max-width: 920px) {
	.pplg-trbl 	{ padding: 40px; }
	.pplg-tb 		{ padding-top: 40px; padding-bottom: 40px; }
	.pplg-lr 		{ padding-left: 40px; padding-right: 40px; }
	.pplg-t 		{ padding-top: 40px; }
	.pplg-b 		{ padding-bottom: 40px; }
	.pplg-l 		{ padding-left: 40px; }
	.pplg-r 		{ padding-right: 40px; }
	.ppmx-trbl 	{ padding: 60px; }
	.ppmx-tb 		{ padding-top: 60px; padding-bottom: 60px; }
	.ppmx-lr 		{ padding-left: 60px; padding-right: 60px; }
	.ppmx-t 		{ padding-top: 60px; }
	.ppmx-b 		{ padding-bottom: 60px; }
	.ppmx-l 		{ padding-left: 60px; }
	.ppmx-r 		{ padding-right: 60px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 40px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 40px; }

	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 60px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 60px; }

	/* 4 column tables >>> 2 column blocks */
	.pxc-4col .pxc-td:nth-child(2) .pp-trbl,
	.pxc-4col .pxc-td:nth-child(2) .pplg-trbl,
	.pxc-4col .pxc-td:nth-child(2) .ppmx-trbl,

	.pxc-4col .pxc-td:nth-child(2) .pp-lr,
	.pxc-4col .pxc-td:nth-child(2) .pplg-lr,
	.pxc-4col .pxc-td:nth-child(2) .ppmx-lr,

	.pxc-4col .pxc-td:nth-child(2) .pp-r,
	.pxc-4col .pxc-td:nth-child(2) .pplg-r,
	.pxc-4col .pxc-td:nth-child(2) .ppmx-r { padding-right: 0; }

	.pxc-4col .pxc-td:nth-child(3) .pp-trbl,
	.pxc-4col .pxc-td:nth-child(3) .pplg-trbl,
	.pxc-4col .pxc-td:nth-child(3) .ppmx-trbl,

	.pxc-4col .pxc-td:nth-child(3) .pp-lr,
	.pxc-4col .pxc-td:nth-child(3) .pplg-lr,
	.pxc-4col .pxc-td:nth-child(3) .ppmx-lr,

	.pxc-4col .pxc-td:nth-child(3) .pp-l,
	.pxc-4col .pxc-td:nth-child(3) .pplg-l,
	.pxc-4col .pxc-td:nth-child(3) .ppmx-l { padding-left: 0; }
}
@media only screen and (max-width: 767px) {

	.pp-trbl 		{ padding: 10px 30px; }
	.pp-tb 			{ padding-top: 10px; padding-bottom: 10px; }
	.pp-lr 			{ padding-left: 30px; padding-right: 30px; }
	.pp-t 			{ padding-top: 10px; }
	.pp-b 			{ padding-bottom: 10px; }
	.pp-l 			{ padding-left: 30px; }
	.pp-r 			{ padding-right: 30px; }

	.pplg-trbl 	{ padding: 20px 30px; }
	.pplg-tb 		{ padding-top: 20px; padding-bottom: 20px; }
	.pplg-lr 		{ padding-left: 30px; padding-right: 30px; }
	.pplg-t 		{ padding-top: 20px; }
	.pplg-b 		{ padding-bottom: 20px; }
	.pplg-l 		{ padding-left: 30px; }
	.pplg-r 		{ padding-right: 30px; }

	.ppmx-trbl 	{ padding: 30px 30px; }
	.ppmx-tb 		{ padding-top: 30px; padding-bottom: 30px; }
	.ppmx-lr 		{ padding-left: 30px; padding-right: 30px; }
	.ppmx-t 		{ padding-top: 30px; }
	.ppmx-b 		{ padding-bottom: 30px; }
	.ppmx-l 		{ padding-left: 30px; }
	.ppmx-r 		{ padding-right: 30px; }

	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-l .vbtn-group { padding-left: 30px; }
	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-r .vbtn-group { padding-right: 30px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 30px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 30px; }
	
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 30px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 30px; }

	/* 2 column (lg) tables >>> 1 column blocks */
	.pxc-2col.pxc-lg .pxc-td .pp-trbl,
	.pxc-2col.pxc-lg .pxc-td .pplg-trbl,
	.pxc-2col.pxc-lg .pxc-td .ppmx-trbl,

	.pxc-2col.pxc-lg .pxc-td .pp-lr,
	.pxc-2col.pxc-lg .pxc-td .pplg-lr,
	.pxc-2col.pxc-lg .pxc-td .ppmx-lr,

	.pxc-2col.pxc-lg .pxc-td .pp-r,
	.pxc-2col.pxc-lg .pxc-td .pplg-r,
	.pxc-2col.pxc-lg .pxc-td .ppmx-r,

	.pxc-2col.pxc-lg .pxc-td .pp-l,
	.pxc-2col.pxc-lg .pxc-td .pplg-l,
	.pxc-2col.pxc-lg .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pp-trbl,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pplg-trbl,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .ppmx-trbl,

	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pp-lr,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pplg-lr,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .ppmx-lr,

	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pp-r,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pplg-r,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .ppmx-r,

	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pp-l,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .pplg-l,
	.pxc-2col.pxc-lg .pxc-td .page-width-inner-half .ppmx-l { padding-left: 30px; padding-right: 30px; }
	
	.pxc-2col.pxc-lg .page-width-inner-half { max-width: 100%; }

	.pxc-2col.pxc-lg .vbtn-bottom .vbtn-group { padding-left: 30px; padding-right: 30px; }


	/* 3 column (lg) tables >>> 1 column blocks (only the ones marked sooner) */
	.pxc-3col.pxc-lg .pxc-td .pp-trbl,
	.pxc-3col.pxc-lg .pxc-td .pplg-trbl,
	.pxc-3col.pxc-lg .pxc-td .ppmx-trbl,

	.pxc-3col.pxc-lg .pxc-td .pp-lr,
	.pxc-3col.pxc-lg .pxc-td .pplg-lr,
	.pxc-3col.pxc-lg .pxc-td .ppmx-lr,

	.pxc-3col.pxc-lg .pxc-td .pp-r,
	.pxc-3col.pxc-lg .pxc-td .pplg-r,
	.pxc-3col.pxc-lg .pxc-td .ppmx-r,

	.pxc-3col.pxc-lg .pxc-td .pp-l,
	.pxc-3col.pxc-lg .pxc-td .pplg-l,
	.pxc-3col.pxc-lg .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	/* remove extra padding on small screens - usually used for 3-col/4-col tables */
	.ppsm-rm-lr { padding-left: 0; padding-right: 0; }
	.ppsm-rm-l  { padding-left: 0; }
	.ppsm-rm-r  { padding-right: 0; }
}
@media only screen and (max-width: 640px) {
	/* 2 column (med) tables >>> 1 column blocks */
	.pxc-2col.pxc-med .pxc-td .pp-trbl,
	.pxc-2col.pxc-med .pxc-td .pplg-trbl,
	.pxc-2col.pxc-med .pxc-td .ppmx-trbl,

	.pxc-2col.pxc-med .pxc-td .pp-lr,
	.pxc-2col.pxc-med .pxc-td .pplg-lr,
	.pxc-2col.pxc-med .pxc-td .ppmx-lr,

	.pxc-2col.pxc-med .pxc-td .pp-r,
	.pxc-2col.pxc-med .pxc-td .pplg-r,
	.pxc-2col.pxc-med .pxc-td .ppmx-r,

	.pxc-2col.pxc-med .pxc-td .pp-l,
	.pxc-2col.pxc-med .pxc-td .pplg-l,
	.pxc-2col.pxc-med .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pp-trbl,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pplg-trbl,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .ppmx-trbl,

	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pp-lr,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pplg-lr,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .ppmx-lr,

	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pp-r,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pplg-r,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .ppmx-r,

	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pp-l,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .pplg-l,
	.pxc-2col.pxc-med .pxc-td .page-width-inner-half .ppmx-l { padding-left: 30px; padding-right: 30px; }

	.pxc-2col.pxc-med .page-width-inner-half { max-width: 100%; }

	.pxc-2col.pxc-med .vbtn-bottom .vbtn-group { padding-left: 30px; padding-right: 30px; }

	/* 3 column tables >>> 1 column blocks (all 3 column tables this time) */
	.pxc-3col .pxc-td .pp-trbl,
	.pxc-3col .pxc-td .pplg-trbl,
	.pxc-3col .pxc-td .ppmx-trbl,

	.pxc-3col .pxc-td .pp-lr,
	.pxc-3col .pxc-td .pplg-lr,
	.pxc-3col .pxc-td .ppmx-lr,

	.pxc-3col .pxc-td .pp-r,
	.pxc-3col .pxc-td .pplg-r,
	.pxc-3col .pxc-td .ppmx-r,

	.pxc-3col .pxc-td .pp-l,
	.pxc-3col .pxc-td .pplg-l,
	.pxc-3col .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	 .width-60-c { width: 90%; margin-left: auto; margin-right: auto; }

}
@media only screen and (max-width: 540px) {
	.pp-trbl 		{ padding: 20px 20px; }
	.pp-tb 			{ padding-top: 20px; padding-bottom: 20px; }
	.pp-lr 			{ padding-left: 20px; padding-right: 20px; }
	.pp-t 			{ padding-top: 20px; }
	.pp-b 			{ padding-bottom: 20px; }
	.pp-l 			{ padding-left: 20px; }
	.pp-r 			{ padding-right: 20px; }

	.pplg-trbl 	{ padding: 20px 20px; }
	.pplg-tb 		{ padding-top: 20px; padding-bottom: 20px; }
	.pplg-lr 		{ padding-left: 20px; padding-right: 20px; }
	.pplg-t 		{ padding-top: 20px; }
	.pplg-b 		{ padding-bottom: 20px; }
	.pplg-l 		{ padding-left: 20px; }
	.pplg-r 		{ padding-right: 20px; }

	.ppmx-trbl 	{ padding: 20px 20px; }
	.ppmx-tb 		{ padding-top: 20px; padding-bottom: 20px; }
	.ppmx-lr 		{ padding-left: 20px; padding-right: 20px; }
	.ppmx-t 		{ padding-top: 20px; }
	.ppmx-b 		{ padding-bottom: 20px; }
	.ppmx-l 		{ padding-left: 20px; }
	.ppmx-r 		{ padding-right: 20px; }

	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-r .vbtn-group { padding-right: 20px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 20px; }
	
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 20px; }
	
	/* 2 column tables >>> 1 column blocks */
	.pxc-2col .pxc-td .pp-trbl,
	.pxc-2col .pxc-td .pplg-trbl,
	.pxc-2col .pxc-td .ppmx-trbl,

	.pxc-2col .pxc-td .pp-lr,
	.pxc-2col .pxc-td .pplg-lr,
	.pxc-2col .pxc-td .ppmx-lr,

	.pxc-2col .pxc-td .pp-r,
	.pxc-2col .pxc-td .pplg-r,
	.pxc-2col .pxc-td .ppmx-r,

	.pxc-2col .pxc-td .pp-l,
	.pxc-2col .pxc-td .pplg-l,
	.pxc-2col .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	.pxc-2col .pxc-td .page-width-inner-half .pp-trbl,
	.pxc-2col .pxc-td .page-width-inner-half .pplg-trbl,
	.pxc-2col .pxc-td .page-width-inner-half .ppmx-trbl,

	.pxc-2col .pxc-td .page-width-inner-half .pp-lr,
	.pxc-2col .pxc-td .page-width-inner-half .pplg-lr,
	.pxc-2col .pxc-td .page-width-inner-half .ppmx-lr,

	.pxc-2col .pxc-td .page-width-inner-half .pp-r,
	.pxc-2col .pxc-td .page-width-inner-half .pplg-r,
	.pxc-2col .pxc-td .page-width-inner-half .ppmx-r,

	.pxc-2col .pxc-td .page-width-inner-half .pp-l,
	.pxc-2col .pxc-td .page-width-inner-half .pplg-l,
	.pxc-2col .pxc-td .page-width-inner-half .ppmx-l { padding-left: 20px; padding-right: 20px; }

	.pxc-2col .page-width-inner-half { max-width: 100%; }

	.pxc-2col .vbtn-bottom .vbtn-group { padding-left: 20px; padding-right: 20px; }

	/* 4 column tables (shown as 2 column blocks) >>> 1 column blocks */
	.pxc-4col .pxc-td .pp-trbl,
	.pxc-4col .pxc-td .pplg-trbl,
	.pxc-4col .pxc-td .ppmx-trbl,

	.pxc-4col .pxc-td .pp-lr,
	.pxc-4col .pxc-td .pplg-lr,
	.pxc-4col .pxc-td .ppmx-lr,

	.pxc-4col .pxc-td .pp-r,
	.pxc-4col .pxc-td .pplg-r,
	.pxc-4col .pxc-td .ppmx-r,

	.pxc-4col .pxc-td .pp-l,
	.pxc-4col .pxc-td .pplg-l,
	.pxc-4col .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

	/* 1 column tables >>> 1 column blocks (which won't really change much) */
	.pxc-table .pxc-td .pp-trbl,
	.pxc-table .pxc-td .pplg-trbl,
	.pxc-table .pxc-td .ppmx-trbl,

	.pxc-table .pxc-td .pp-lr,
	.pxc-table .pxc-td .pplg-lr,
	.pxc-table .pxc-td .ppmx-lr,

	.pxc-table .pxc-td .pp-r,
	.pxc-table .pxc-td .pplg-r,
	.pxc-table .pxc-td .ppmx-r,

	.pxc-table .pxc-td .pp-l,
	.pxc-table .pxc-td .pplg-l,
	.pxc-table .pxc-td .ppmx-l { padding-left: 0; padding-right: 0; }

}
@media only print {
	.pp-trbl 		{ padding: 20px 20px; }
	.pp-tb 			{ padding-top: 20px; padding-bottom: 20px; }
	.pp-lr 			{ padding-left: 20px; padding-right: 20px; }
	.pp-t 			{ padding-top: 20px; }
	.pp-b 			{ padding-bottom: 20px; }
	.pp-l 			{ padding-left: 20px; }
	.pp-r 			{ padding-right: 20px; }

	.pplg-trbl 	{ padding: 20px 20px; }
	.pplg-tb 		{ padding-top: 20px; padding-bottom: 20px; }
	.pplg-lr 		{ padding-left: 20px; padding-right: 20px; }
	.pplg-t 		{ padding-top: 20px; }
	p.pplg-t 		{ padding-top: 5px; }
	.pplg-b 		{ padding-bottom: 20px; }
	.pplg-l 		{ padding-left: 20px; }
	.pplg-r 		{ padding-right: 20px; }

	.ppmx-trbl 	{ padding: 20px 20px; }
	.ppmx-tb 		{ padding-top: 20px; padding-bottom: 20px; }
	.ppmx-lr 		{ padding-left: 20px; padding-right: 20px; }
	.ppmx-t 		{ padding-top: 20px; }
	.ppmx-b 		{ padding-bottom: 20px; }
	.ppmx-l 		{ padding-left: 20px; }
	.ppmx-r 		{ padding-right: 20px; }

	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .pp-trbl .vbtn-group, 
	.vbtn-bottom .pp-lr .vbtn-group, 
	.vbtn-bottom .pp-r .vbtn-group { padding-right: 20px; }

	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .pplg-trbl .vbtn-group, 
	.vbtn-bottom .pplg-lr .vbtn-group, 
	.vbtn-bottom .pplg-r .vbtn-group { padding-right: 20px; }
	
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-l .vbtn-group { padding-left: 20px; }
	.vbtn-bottom .ppmx-trbl .vbtn-group, 
	.vbtn-bottom .ppmx-lr .vbtn-group, 
	.vbtn-bottom .ppmx-r .vbtn-group { padding-right: 20px; }
	
	.breadcrumb,
	.slice.bgc-white .page-width-inner > .pp-lr { padding-left: 0; padding-right: 0; }
	
	.pxc-table.pxc-3col .td-top-left  > .pp-trbl,
	.pxc-table.pxc-3col .td-top-mid 	> .pp-trbl,
	.pxc-table.pxc-3col .td-top-right > .pp-trbl { padding-left: 0; padding-right: 0; }
}

/* ///// columns ////////////////////////////////////////////////////////////////////// */
/* columns are done table-style with divs so they can be stacked on small screens */
.pxc-table { display: table; margin: 0 auto; width: 100%; height: 100%; }
.pxc-table.auto-height { height: auto; }
.pxc-tr { display: table-row; height: 100%; }
.pxc-td { display: table-cell; height: 100%; }
/* default alignment is middle, else set to top */
.pxc-td { vertical-align: middle; }
.pxc-td.td-top { vertical-align: top !important; }
.pxc-td.td-bot { vertical-align: bottom !important; }
/* if the table has an image in it that needs to be shrinkable, it has to be fixed layout */
.pxc-img { table-layout: fixed; }
/* one column table */
.pxc-td { padding: 0; }
/* two column table - by default 50% columns, else set other % */
.pxc-2col .pxc-td { width: 50%; }
.pxc-2col .pxc-td.td-30p { width: 30%; }
.pxc-2col .pxc-td.td-70p { width: 70%; }
.pxc-2col .pxc-td.td-35p { width: 35%; }
.pxc-2col .pxc-td.td-65p { width: 65%; }
.pxc-2col .pxc-td.td-40p { width: 40%; }
.pxc-2col .pxc-td.td-50p { width: 50%; }
.pxc-2col .pxc-td.td-60p { width: 60%; }
.pxc-2col .pxc-td.td-45p { width: 45%; }
.pxc-2col .pxc-td.td-55p { width: 55%; }
.pxc-2col .pxc-td.td-25p { width: 25%; }
.pxc-2col .pxc-td.td-75p { width: 75%; }
/* three column table */
.pxc-3col .pxc-td { width: 33%; }
.pxc-3col .pxc-td-left  {}
.pxc-3col .pxc-td-mid   { width: 34%; }
.pxc-3col .pxc-td-right {}
/* four column table */
.pxc-4col .pxc-td { width: 25%; }
/* on small screens, stack the columns */

@media only screen and (max-width: 1024px) {
	.ie11 .pxc-4col { display: block; }
	.ie11 .pxc-4col .pxc-tr { display: block; }
	.ie11 .pxc-4col .pxc-td { float: left; display: block; margin: 0; padding: 0; width: 50% !important; vertical-align: top; }
	
	
/* 2 column (lg) tables >>> 1 column blocks */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.ie11 .pxc-2col.pxc-lg, ie11 .pxc-2col.pxc-lg .pxc-tr { display: block; }
	.ie11 .pxc-2col.pxc-lg .pxc-td { display: block; width: auto; vertical-align: top; }
	/* cells with no content in them when stacked */
	.ie11 .pxc-2col.pxc-lg .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.ie11 .pxc-2col.pxc-lg .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 240px; }/* big image with no content */
	.ie11 .pxc-2col.pxc-med, .pxc-2col.pxc-med .pxc-tr { display: block; }
	.ie11 .pxc-2col.pxc-med .pxc-td { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.ie11 .pxc-2col.pxc-med .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.ie11 .pxc-2col.pxc-med .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 180px; }/* big image with no content */
	/* switch text alignment when stacked */
	.ie11 .pxc-2col.pxc-lg .text-center-stack,
	.ie11 .pxc-3col.pxc-lg .text-center-stack { text-align: center; }
	.ie11 .pxc-2col.pxc-lg .text-right-stack,
	.ie11 .pxc-3col.pxc-lg .text-right-stack  { text-align: right; }
	.ie11 .pxc-2col.pxc-lg .text-left-stack,
	.ie11 .pxc-3col.pxc-lg .text-left-stack 	{ text-align: left; }
}

@media only screen and (max-width: 920px) {
	/* 4 column tables >>> 2 column blocks */
	/* change table/tr/td display to block like a normal div, make all columns 50% wide, and remove the vertical alignment */
	.pxc-4col { display: block; }
	.pxc-4col .pxc-tr { display: block; }
	.pxc-4col .pxc-td { float: left; display: block; margin: 0; padding: 0; width: 50% !important; vertical-align: top; }
	 .pxc-4col .pxc-td:nth-child(3) { clear: both; }
	
	
}
@media only screen and (max-width: 767px) {
	/* 2 column (lg) tables >>> 1 column blocks */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.pxc-2col.pxc-lg, .pxc-2col.pxc-lg .pxc-tr { display: block; }
	.pxc-2col.pxc-lg .pxc-td { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.pxc-2col.pxc-lg .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-2col.pxc-lg .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 240px; }/* big image with no content */
	/* when 2-col table cells stack on small screens, sometimes you want the order flip-flopped */
	/* (only works on newer browsers, but doesn't hurt the old ones) */
	.pxc-2col.pxc-lg.pxc-swap .pxc-row { display: flex; flex-direction: column; }
	.pxc-2col.pxc-lg.pxc-swap .pxc-row .pxc-td:nth-child(1) { order: 2; }
	.pxc-2col.pxc-lg.pxc-swap .pxc-row .pxc-td:nth-child(2) { order: 1; }

	/* 3 column (lg) tables >>> 1 column blocks (only the ones marked sooner) */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.pxc-3col.pxc-lg, .pxc-3col.pxc-lg .pxc-tr { display: block; }
	.pxc-3col.pxc-lg .pxc-td,
	.pxc-3col.pxc-lg .pxc-td-left,
	.pxc-3col.pxc-lg .pxc-td-mid,
	.pxc-3col.pxc-lg .pxc-td-right { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.pxc-3col.pxc-lg .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-3col.pxc-lg .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 180px; }/* big image with no content */
	
	/* switch text alignment when stacked */
	.pxc-2col.pxc-lg .text-center-stack,
	.pxc-3col.pxc-lg .text-center-stack { text-align: center; }
	.pxc-2col.pxc-lg .text-right-stack,
	.pxc-3col.pxc-lg .text-right-stack  { text-align: right; }
	.pxc-2col.pxc-lg .text-left-stack,
	.pxc-3col.pxc-lg .text-left-stack 	{ text-align: left; }
}
@media only screen and (max-width: 640px) {
	/* 2 column (med) tables >>> 1 column blocks */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.pxc-2col.pxc-med, .pxc-2col.pxc-med .pxc-tr { display: block; }
	.pxc-2col.pxc-med .pxc-td { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.pxc-2col.pxc-med .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-2col.pxc-med .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 180px; }/* big image with no content */
	/* when 2-col table cells stack on small screens, sometimes you want the order flip-flopped */
	/* (only works on newer browsers, but doesn't hurt the old ones) */
	.pxc-2col.pxc-med.pxc-swap .pxc-row { display: flex; flex-direction: column; }
	.pxc-2col.pxc-med.pxc-swap .pxc-row .pxc-td:nth-child(1) { order: 2; }
	.pxc-2col.pxc-med.pxc-swap .pxc-row .pxc-td:nth-child(2) { order: 1; }

	/* 3 column tables >>> 1 column blocks (all 3 column tables this time) */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.pxc-3col, .pxc-3col .pxc-tr { display: block; }
	.pxc-3col .pxc-td,
	.pxc-3col .pxc-td-left,
	.pxc-3col .pxc-td-mid,
	.pxc-3col .pxc-td-right { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.pxc-3col .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-3col .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 180px; }/* big image with no content */

	/* switch text alignment when stacked */
	.pxc-2col.pxc-med .text-center-stack,
	.pxc-3col .text-center-stack { text-align: center; }
	.pxc-2col.pxc-med .text-right-stack,
	.pxc-3col .text-right-stack  { text-align: right; }
	.pxc-2col.pxc-med .text-left-stack,
	.pxc-3col .text-left-stack 	{ text-align: left; }
}
@media only screen and (max-width: 540px) {
	/* 2 column tables >>> 1 column blocks */
	/* change table/tr/td display to block like a normal div, make all columns 100% wide, and remove the vertical alignment */
	.pxc-2col, .pxc-2col .pxc-tr { display: block; }
	.pxc-2col .pxc-td { display: block; width: 100% !important; vertical-align: top; }
	/* cells with no content in them when stacked */
	.pxc-2col .pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-2col .pxc-td.bgi-fill.pxc-empty { display: block; min-height: 180px; }/* big image with no content */
	/* when 2-col table cells stack on small screens, sometimes you want the order flip-flopped */
	/* (only works on newer browsers, but doesn't hurt the old ones) */
	.pxc-2col.pxc-swap .pxc-row { display: flex; flex-direction: column; }
	.pxc-2col.pxc-swap .pxc-row .pxc-td:nth-child(1) { order: 2; }
	.pxc-2col.pxc-swap .pxc-row .pxc-td:nth-child(2) { order: 1; }

	/* 4 column tables (shown as 2 column blocks) >>> 1 column blocks */
	.pxc-4col .pxc-td { float: none; width: 100% !important; }

	/* 1 column tables >>> 1 column blocks (which won't really change much) */
	.pxc-table { display: block; }
	.pxc-tr { display: block; }
	.pxc-td { display: block; vertical-align: top; }
	.pxc-td { width: 100% !important; vertical-align: top; }
	.pxc-td.pxc-empty { display: none; }/* no image with no content, so hide on stack */
	.pxc-td.bgi-fill.pxc-empty { display: block; min-height: 240px; }/* big image with no content */

	/* switch text alignment when stacked */
	.pxc-2col .text-center-stack,
	.pxc-table .text-center-stack { text-align: center; }
	.pxc-2col .text-right-stack,
	.pxc-table .text-right-stack  { text-align: right; }
	.pxc-2col .text-left-stack,
	.pxc-table .text-left-stack 	{ text-align: left; }

}
/* don't collapse sub tables ever */
.pxc-table.pxc-sub { display: table !important; }
.pxc-table.pxc-sub .pxc-tr { display: table-row !important; }
.pxc-table.pxc-sub .pxc-td { display: table-cell !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-td { width: auto !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-4col .pxc-td { width: 25% !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-2col .pxc-td { width: 50% !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-3col .pxc-td { width: 33% !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-3col .pxc-td-left { width: 33% !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-3col .pxc-td-mid { width: 34% !important; vertical-align: middle; }
.pxc-table.pxc-sub .pxc-3col .pxc-td-right { width: 33% !important; vertical-align: middle; }
.pxc-td.v-align-top { vertical-align: top; } 

/* ///// image grids ////////////////////////////////////////////////////////////////// */
/* outer container for the image grid */
.img-grid {
	margin: 0;
	padding: 0;
	font-size: 0;
	text-align: center;
}
/* a btn in an image grid that should fill the width */
.img-grid .vbtn-block { margin: 3px auto; max-width: 200px; }
/* an image block in the image grid */
.img-grid .ig-img {
	display: inline-block;
	position: relative;
	overflow: hidden; 
}
/* an image in an image grid */
.img-grid .ig-img img  { width: 100%; }
/* the hover area shown on top of an image in an image grid - align to bottom, cover only partially */
.img-grid .ig-img .ig-hover {
	display: none;
	position: absolute;
	top: auto; bottom: 0; left: 0; right: 0;
	overflow: hidden;
}
/* the hover area shown on top of an image in an image grid - cover entirely */
.img-grid .ig-img .ig-hover.ig-hover-cover {
	top: 0;
}
/* on hover, show the image hover */
.img-grid .ig-img:hover .ig-hover  { display: block; }
/* the hover content is top aligned to stay even when blocks are next to each other.
to make it vertically centered instead (on supported browsers) add the ig-vcenter class */
.img-grid.ig-vcenter .ig-img:hover .ig-hover  { display: flex; }
.img-grid.ig-vcenter .ig-img.ig-spacer .ig-hover  { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; justify-content: center; }
/* on touch screens that don't have a hover state, always show the hover & cover only partially */
.touch .img-grid .ig-img .ig-hover.ig-hover-cover,
.touch .img-grid .ig-img .ig-hover { display: block; top: auto; }
/* on touch screens to make the hover as small as possible since it's always shown, shrink buttons into normal links */
.touch .img-grid .ig-img .ig-hover .vbtn { 
	display: inline-block;
	margin: 2px;
	padding: 0;
	min-width: 0;
	white-space: normal;
	border: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	background: none;
}
/* on touch screens the links are shown like link link link, so add borders to make it link | link | link */
.touch .img-grid .ig-img .ig-hover .vbtn + .vbtn { padding-left: 7px; border-left: 1px solid #fff; }
/* on touch screens trim the link text down by hiding unimportant words */
.touch .img-grid .ig-img .ig-hover .vbtn .text-long { display: none; }
/* on touch screens trim the text down by reducing white space */
.touch .img-grid .ig-img .ig-hover h1, 
.touch .img-grid .ig-img .ig-hover h2, 
.touch .img-grid .ig-img .ig-hover h3, 
.touch .img-grid .ig-img .ig-hover h4, 
.touch .img-grid .ig-img .ig-hover h5, 
.touch .img-grid .ig-img .ig-hover h6, 
.touch .img-grid .ig-img .ig-hover p { margin: 3px 0 0 0; }
/* for grids with spacers, always show the spacer content, not just on hover */
.img-grid .ig-img.ig-spacer .ig-hover { display: block; }
.img-grid.ig-vcenter .ig-img.ig-spacer .ig-hover  { display: flex; }
/* initially show an image grid as 3-across */
.img-grid.ig-3 .ig-img { width: 33.33%; }
/* initially show an image grid as 4-across */
.img-grid.ig-4 .ig-img { width: 25%; }
/* initially show an image grid as 5-across */
.img-grid.ig-5 .ig-img { width: 20%; }

/* for image grids that are 3 across initially, 
if it has 3, 6, 12, 18, or 24 images and a spacer block,
show the spacer as a BAR when showing 3 across */
.img-grid.ig-3 .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-3 .ig-img.ig-spacer img { display: none; }
.img-grid.ig-3 .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-3 .ig-img.ig-spacer.ig-fluff { display: none; }
.img-grid.ig-3.ig-A .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-3.ig-A .ig-img.ig-spacer img { display: none; }
.img-grid.ig-3.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-3.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }

/* for image grids that are 3 across initially, 
if it has 9, 15, or 21 images and a spacer block, 
show the spacer as a BAR when showing 3 across */
.img-grid.ig-3.ig-B .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-3.ig-B .ig-img.ig-spacer img { display: none; }
.img-grid.ig-3.ig-B .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-3.ig-B .ig-img.ig-spacer.ig-fluff { display: none; }

/* for image grids that are 3 across initially, 
if it has 8, 14, or 20 images and a spacer block, 
show the spacer as a BLOCK when showing 3 across */
.img-grid.ig-3.ig-C .ig-img.ig-spacer { width: 33.33%; }
.img-grid.ig-3.ig-C .ig-img.ig-spacer img { display: inline-block; }
.img-grid.ig-3.ig-C .ig-img.ig-spacer .ig-hover { position: absolute; }
.img-grid.ig-3.ig-C .ig-img.ig-spacer.ig-fluff { display: inline-block; }

/* for image grids that are 3 across initially, 
if it has 5, 11, 17, or 23 images and a spacer block,
show the spacer as a BLOCK when showing 3 across */
.img-grid.ig-3.ig-D .ig-img.ig-spacer { width: 33.33%; }
.img-grid.ig-3.ig-D .ig-img.ig-spacer img { display: inline-block; }
.img-grid.ig-3.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
.img-grid.ig-3.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

/* WHEN 4 ACROSS: */
/* A: SPACER = BAR if there are 4, 8, 12, etc. images */
.img-grid.ig-4 .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-4 .ig-img.ig-spacer img { display: none; }
.img-grid.ig-4 .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-4 .ig-img.ig-spacer.ig-fluff { display: none; }
.img-grid.ig-4.ig-A .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-4.ig-A .ig-img.ig-spacer img { display: none; }
.img-grid.ig-4.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-4.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }
/* B: SPACER = QUARTER-WIDTH if there are 7 images */
.img-grid.ig-4.ig-B .ig-img.ig-spacer { width: 25%; }
.img-grid.ig-4.ig-B .ig-img.ig-spacer img { display: inline-block; /*height: 1px;*/ }
.img-grid.ig-4.ig-B .ig-img.ig-spacer .ig-hover { position: absolute; top: 0; }
.img-grid.ig-4.ig-B .ig-img.ig-spacer.ig-fluff { display: inline-block; }
/* D: SPACER = HALF-WIDTH if there are 14 images */
.img-grid.ig-4.ig-D .ig-img.ig-spacer { width: 50%; }
.img-grid.ig-4.ig-D .ig-img.ig-spacer img { display: inline-block; height: 1px; }
.img-grid.ig-4.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
.img-grid.ig-4.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

/* WHEN 5 >> 5 ACROSS: */
/* A: SPACER = BAR if there are 5 images */
.img-grid.ig-5 .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-5 .ig-img.ig-spacer img { display: none; }
.img-grid.ig-5 .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-5 .ig-img.ig-spacer.ig-fluff { display: none; }
.img-grid.ig-5.ig-A .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-5.ig-A .ig-img.ig-spacer img { display: none; }
.img-grid.ig-5.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-5.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }
/* B: SPACER = BAR if there are 15 or 25 images */
.img-grid.ig-5.ig-B .ig-img.ig-spacer { width: 100%; }
.img-grid.ig-5.ig-B .ig-img.ig-spacer img { display: none; }
.img-grid.ig-5.ig-B .ig-img.ig-spacer .ig-hover { position: static; }
.img-grid.ig-5.ig-B .ig-img.ig-spacer.ig-fluff { display: none; }
/* C: SPACER = BOX if there are 9 images */
.img-grid.ig-5.ig-C .ig-img.ig-spacer { width: 20%; }
.img-grid.ig-5.ig-C .ig-img.ig-spacer img { display: inline-block; }
.img-grid.ig-5.ig-C .ig-img.ig-spacer .ig-hover { position: absolute; }
.img-grid.ig-5.ig-C .ig-img.ig-spacer.ig-fluff { display: inline-block; }
/* D: SPACER = BOX if there are  images */
.img-grid.ig-5.ig-D .ig-img.ig-spacer { width: 20%; }
.img-grid.ig-5.ig-D .ig-img.ig-spacer img { display: inline-block; }
.img-grid.ig-5.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
.img-grid.ig-5.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

/* shrink the padding and font sizes in hover blocks responsively 
(based on products 3 across grid & people 4/5 across grids - we may need to adjust for other types of image grids) */
@media only screen and (min-width: 1681px) { 
	.img-grid .ig-img .ig-hover { font-size: 26px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 80px; } 
	.img-grid.ig-4 .ig-img .ig-hover { padding: 25px; } 
	.img-grid.ig-5 .ig-img .ig-hover { padding: 20px; } 
}
@media only screen and (max-width: 1680px) { 
	.img-grid .ig-img .ig-hover { font-size: 21px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 60px; } 
	.img-grid.ig-4 .ig-img .ig-hover { padding: 15px; } 
	.img-grid.ig-5 .ig-img .ig-hover { padding: 10px; } 
}
@media only screen and (max-width: 1280px) { 
	.img-grid .ig-img .ig-hover { font-size: 18px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 50px; } 
}
@media only screen and (max-width: 1024px) { 
	.img-grid .ig-img .ig-hover { font-size: 16px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 40px; } 
}
@media only screen and (max-width: 920px)  { 
	.img-grid .ig-img .ig-hover { font-size: 15px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 20px; } 
}
@media only screen and (max-width: 767px)  { 
	.img-grid .ig-img .ig-hover { font-size: 18px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 30px; } 
}
@media only print, only screen and (max-width: 640px)  { 
	.img-grid .ig-img .ig-hover { font-size: 15px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 20px; } 
}
@media only screen and (max-width: 520px)  { 
	.img-grid .ig-img .ig-hover { font-size: 14px; } 
	.img-grid.ig-3 .ig-img .ig-hover { padding: 15px; } 
}
/* on touch screens, keep the padding & font small always */
.touch .img-grid.ig-3 .ig-img .ig-hover { padding: 10px; }
.touch .img-grid.ig-4 .ig-img .ig-hover { padding: 10px; }
.touch .img-grid.ig-5 .ig-img .ig-hover { padding: 10px; }

/* on small screens */
@media only screen and (max-width: 767px) {
	/* switch a 3-across to a 2-across grid on smaller screens */
	.img-grid.ig-3 .ig-img { width: 50% }

	/* for image grids that are 3 across initially, 
	if it has 3, 6, 12, 18, or 24 images and a spacer block,
	show the spacer as a BAR when showing 2 across */
	.img-grid.ig-3 .ig-img.ig-spacer { width: 100%; }
	.img-grid.ig-3 .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3 .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3 .ig-img.ig-spacer.ig-fluff { display: none; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer { width: 100%; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }

	/* for image grids that are 3 across initially, 
	if it has 9, 15, or 21 images and a spacer block, 
	show the spacer as a BLOCK when showing 2 across */
	.img-grid.ig-3.ig-B .ig-img.ig-spacer { width: 50%; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer.ig-fluff { display: inline-block; }

	/* for image grids that are 3 across initially, 
	if it has 8, 14, or 20 images and a spacer block, 
	show the spacer as a BAR when showing 2 across or 1 across */
	.img-grid.ig-3.ig-C .ig-img.ig-spacer { width: 100%; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer.ig-fluff { display: none; }

	/* for image grids that are 3 across initially, 
	if it has 5, 11, 17, or 23 images and a spacer block,
	show the spacer as a BLOCK when showing 2 across */
	.img-grid.ig-3.ig-D .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

	/* switch a 4-across to a 3-across grid on smaller screens */
	.img-grid.ig-4 .ig-img { width: 33.33%; }
	/* WHEN 4 >> 3 ACROSS:
	/* A: SPACER = BOX if there are 4 images */
	.img-grid.ig-4 .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-4 .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-4 .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-4 .ig-img.ig-spacer.ig-fluff { display: inline-block; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer.ig-fluff { display: inline-block; }
	/* B: SPACER = BOX if there are 7 images -- go down to half-width faster */
	.img-grid.ig-4.ig-B .ig-img { width: 50%; }
	.img-grid.ig-4.ig-B .ig-img.ig-spacer { width: 50%; }
	.img-grid.ig-4.ig-B .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-4.ig-B .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-4.ig-B .ig-img.ig-spacer.ig-fluff { display: inline-block; }
	/* D: SPACER = BOX if there are 14 images */
	.img-grid.ig-4.ig-D .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

	/* switch a 5-across to a 3-across grid on smaller screens */
	.img-grid.ig-5 .ig-img { width: 33.33%; }
	/* WHEN 5>> 3 ACROSS:
	/* A: SPACER = BOX if there are 5 images */
	.img-grid.ig-5 .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-5 .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-5 .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-5 .ig-img.ig-spacer.ig-fluff { display: inline-block; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer.ig-fluff { display: inline-block; }
	/* B: SPACER = BAR if there are 15 or 25 images */
	.img-grid.ig-5.ig-B .ig-img.ig-spacer { width: 100%; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer.ig-fluff { display: none; }
	/* C: SPACER = BAR if there are 9 images */
	.img-grid.ig-5.ig-C .ig-img.ig-spacer { width: 100%; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer.ig-fluff { display: none; }
	/* D: SPACER = BOX if there are 14 or 24 images */
	.img-grid.ig-5.ig-D .ig-img.ig-spacer { width: 33.33%; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

}
/* on teeny tiny screens */
@media only screen and (max-width: 479px) {
	/* switch a 3-across to a 1-across grid on teeny screens, and crop the image height */
	.img-grid.ig-3 .ig-img { width: 100%; height: 180px; }

	/* for image grids that are 3 across initially, 
	if it has 3, 6, 12, 18, or 24 images and a spacer block,
	show the spacer as a BAR when showing 2 across */
	.img-grid.ig-3 .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-3 .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3 .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3 .ig-img.ig-spacer.ig-fluff { display: none; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }

	/* for image grids that are 3 across initially, 
	if it has 9, 15, or 21 images and a spacer block, 
	show the spacer as a BAR when showing 3 across */
	.img-grid.ig-3.ig-B .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-B .ig-img.ig-spacer.ig-fluff { display: none; }

	/* for image grids that are 3 across initially, 
	if it has 8, 14, or 20 images and a spacer block, 
	show the spacer as a BAR when showing 2 across or 1 across */
	.img-grid.ig-3.ig-C .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-C .ig-img.ig-spacer.ig-fluff { display: none; }

	/* for image grids that are 3 across initially, 
	or 5, 11, 17, or 23 images and a spacer block,
	show the spacer as a BAR when showing 1 across */
	.img-grid.ig-3.ig-D .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-3.ig-D .ig-img.ig-spacer.ig-fluff { display: none; }

	/* when switching to 1-across, we crop the image height */
	/* position the image inside the cropped area so the important bits still show */
	.img-grid.ig-3 .ig-img.bgp-cc img,
	.img-grid.ig-3 .ig-img.bgp-lc img,
	.img-grid.ig-3 .ig-img.bgp-rc img,
	.img-grid.ig-3 .ig-img.bgp-ct img,
	.img-grid.ig-3 .ig-img.bgp-lt img,
	.img-grid.ig-3 .ig-img.bgp-rt img ,
	.img-grid.ig-3 .ig-img.bgp-cb img,
	.img-grid.ig-3 .ig-img.bgp-lb img,
	.img-grid.ig-3 .ig-img.bgp-rb img,

	.img-grid.ig-4:not(.indexPeople) .ig-img.bgp-cc img,
	.img-grid.ig-4 .ig-img.bgp-lc img,
	.img-grid.ig-4 .ig-img.bgp-rc img,
	.img-grid.ig-4 .ig-img.bgp-ct img,
	.img-grid.ig-4 .ig-img.bgp-lt img,
	.img-grid.ig-4 .ig-img.bgp-rt img ,
	.img-grid.ig-4:not(.indexPeople) .ig-img.bgp-cb img,
	.img-grid.ig-4 .ig-img.bgp-lb img,
	.img-grid.ig-4 .ig-img.bgp-rb img,

	.img-grid.ig-5 .ig-img.bgp-cc img,
	.img-grid.ig-5 .ig-img.bgp-lc img,
	.img-grid.ig-5 .ig-img.bgp-rc img,
	.img-grid.ig-5 .ig-img.bgp-ct img,
	.img-grid.ig-5 .ig-img.bgp-lt img,
	.img-grid.ig-5 .ig-img.bgp-rt img ,
	.img-grid.ig-5 .ig-img.bgp-cb img,
	.img-grid.ig-5 .ig-img.bgp-lb img,
	.img-grid.ig-5 .ig-img.bgp-rb img {
		position: absolute;
		left:0; right: 0;
		margin: auto;
	}
	/* if the center of the image is the best */
	.img-grid.ig-3 .ig-img.bgp-cc img,
	.img-grid.ig-3 .ig-img.bgp-lc img,
	.img-grid.ig-3 .ig-img.bgp-rc img,

	.img-grid.ig-4 .ig-img.bgp-cc img,
	.img-grid.ig-4 .ig-img.bgp-lc img,
	.img-grid.ig-4 .ig-img.bgp-rc img,

	.img-grid.ig-5 .ig-img.bgp-cc img,
	.img-grid.ig-5 .ig-img.bgp-lc img,
	.img-grid.ig-5 .ig-img.bgp-rc img {
		top:-100%; bottom:-100%;
	}
	/* if the top of the image is the best */
	.img-grid.ig-3 .ig-img.bgp-ct img,
	.img-grid.ig-3 .ig-img.bgp-lt img,
	.img-grid.ig-3 .ig-img.bgp-rt img,

	.img-grid.ig-4 .ig-img.bgp-ct img,
	.img-grid.ig-4 .ig-img.bgp-lt img,
	.img-grid.ig-4 .ig-img.bgp-rt img,

	.img-grid.ig-5 .ig-img.bgp-ct img,
	.img-grid.ig-5 .ig-img.bgp-lt img,
	.img-grid.ig-5 .ig-img.bgp-rt img {
		top: 0;
	}
	/* if the bottom of the image is the best */
	.img-grid.ig-3 .ig-img.bgp-cb img,
	.img-grid.ig-3 .ig-img.bgp-lb img,
	.img-grid.ig-3 .ig-img.bgp-rb img,

	.img-grid.ig-4 .ig-img.bgp-cb img,
	.img-grid.ig-4 .ig-img.bgp-lb img,
	.img-grid.ig-4 .ig-img.bgp-rb img,

	.img-grid.ig-5 .ig-img.bgp-cb img,
	.img-grid.ig-5 .ig-img.bgp-lb img,
	.img-grid.ig-5 .ig-img.bgp-rb img {
		bottom: 0;
	}

	/* switch a 4-across to a 1-across grid on teeny screens, and crop the image height */
	.img-grid.ig-4:not(.indexPeople) .ig-img { width: 100%; height: 180px; }
	/* WHEN 4 >> 1 ACROSS: */
	/* SPACER = BAR always */
	/* A: SPACER = BAR */
	.img-grid.ig-4 .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-4 .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-4 .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-4 .ig-img.ig-spacer.ig-fluff { display: none; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-4.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }
	/* B: SPACER = BAR */
	.img-grid.ig-4.ig-B:not(.indexPeople) .ig-img { width: 100%; }
	.img-grid.ig-4.ig-B:not(.indexPeople) .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-4.ig-B:not(.indexPeople) .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-4.ig-B:not(.indexPeople) .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-4.ig-B:not(.indexPeople) .ig-img.ig-spacer.ig-fluff { display: none; }
	/* D: SPACER = BAR */
	.img-grid.ig-4.ig-D .ig-img { width: 50%; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer { width: 50%; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer img { display: inline-block; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer .ig-hover { position: absolute; }
	.img-grid.ig-4.ig-D .ig-img.ig-spacer.ig-fluff { display: inline-block; }

	/* switch a 5-across to a 1-across grid on teeny screens, and crop the image height */
	.img-grid.ig-5 .ig-img { width: 100%; height: 180px; }
	/* WHEN 5 >> 1 ACROSS: */
	/* SPACER = BAR always */
	/* A: SPACER = BAR */
	.img-grid.ig-5 .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-5 .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5 .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5 .ig-img.ig-spacer.ig-fluff { display: none; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-A .ig-img.ig-spacer.ig-fluff { display: none; }
	/* B: SPACER = BAR */
	.img-grid.ig-5.ig-B .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-B .ig-img.ig-spacer.ig-fluff { display: none; }
	/* C: SPACER = BAR */
	.img-grid.ig-5.ig-C .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-C .ig-img.ig-spacer.ig-fluff { display: none; }
	/* D: SPACER = BAR */
	.img-grid.ig-5.ig-D .ig-img.ig-spacer { width: 100%; height: auto; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer img { display: none; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer .ig-hover { position: static; }
	.img-grid.ig-5.ig-D .ig-img.ig-spacer.ig-fluff { display: none; }

	/* when showing 1-across, vertically center the hover content 
	(it's usually top aligned to stay even when blocks are next to each other) */
	.img-grid .ig-img:hover .ig-hover  { display: flex; align-items: center; justify-content: center; }
	
	/* when showing 1-across, don't use full width buttons, let them align in a row instead to save space */
	.img-grid .vbtn-block { display: inline-block; }
}
/* on print */
@media only print {
	#sect-home .img-grid.ig-3 .ig-img .ig-hover { font-size: 14px !important; } 
	#sect-home .img-grid.ig-3 .ig-img .ig-hover { padding: 15px !important; } 
	#sect-home .img-grid.ig-3 .ig-img .ig-hover h2 { font-size: 1em !important; margin: 0 !important; }
	#sect-home .img-grid.ig-3 .ig-img .ig-hover p { display: none !important; }
	#sect-peop .img-grid.ig-4.ig-D .ig-img:not(.ig-spacer) .ig-hover,
	#sect-home .img-grid.ig-4.ig-B .ig-img:not(.ig-spacer) .ig-hover,
	#sect-home .img-grid.ig-3 .ig-img:not(.ig-spacer) .ig-hover.ig-hover-cover,
	#sect-home .img-grid.ig-3 .ig-img:not(.ig-spacer) .ig-hover { display: block !important; top: auto !important; }
	#sect-peop .img-grid.ig-4.ig-D .ig-img:not(.ig-spacer) .ig-hover,
	#sect-home .img-grid.ig-4.ig-B .ig-img:not(.ig-spacer) .ig-hover { padding: 1px 5px; font-size: 14px !important; }
	#sect-peop .img-grid.ig-4.ig-D .ig-img:not(.ig-spacer) .ig-hover h2,
	#sect-home .img-grid.ig-4.ig-B .ig-img:not(.ig-spacer) .ig-hover h2 { font-size: 12px !important; }
}

/* ///// header /////////////////////////////////////////////////////////////////////// */
/* make the header sticky */
#header {
	position: fixed;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	width: 100%;
	min-width: 300px;
	background: #fff;
	border-bottom: 2px solid #80bd01;
	z-index: 999; /* below modals that have z-index: 1040; */
}
@media print {
	#header { position: static; }
}

/* display header as a table so we can vertically align content */
.header-table {
	display: table;
	/*table-layout: fixed; */
	width: 100%;
	border-collapse: collapse;
}
.header-table-row { display: table-row; }
.header-table-cell { display: table-cell; vertical-align: middle; }
/* cell 1: logo */
.header-table-cell.ht-logo { text-align: right; }
/* default logo font in case images are turned off */
.header-table-cell.ht-logo a {
	font-weight: 700;
	line-height: 1px;
	color: #80BD01;
}
/* scale the logo responsively */
.header-table-cell.ht-logo img { width: 100%; }
/* cell 2: header menu */
.header-table-cell.ht-menu { text-align: center; }
/* cell 3: header login buttons and cola */
.header-table-cell.ht-btns { text-align: center; }
/* cell 4: repbox */
.header-table-cell.ht-rbox { text-align: right; }

/* ///// header menu ////////////////////////////////////////////////////////////////// */
/* header menu */
.main-nav {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
	width: 100%;
}


#header .footer-only {
		display:none;
}

/* link colors for header menu */
.main-nav a:link, .main-nav a:visited { color: #7f7f7f; text-decoration: none; }
.main-nav a:active, .main-nav a:hover { color: #80bd01; text-decoration: none; }
.main-nav .section a { background-repeat: no-repeat; }
#sect-home .main-nav .section a.sect-home:link, #sect-home .main-nav .section a.sect-home:visited,
#sect-oppy .main-nav .section a.sect-oppy:link, #sect-oppy .main-nav .section a.sect-oppy:visited,
#sect-peop .main-nav .section a.sect-peop:link, #sect-peop .main-nav .section a.sect-peop:visited,
#sect-proj .main-nav .section a.sect-proj:link, #sect-proj .main-nav .section a.sect-proj:visited,
#sect-prod .main-nav .section a.sect-prod:link, #sect-prod .main-nav .section a.sect-prod:visited {
	color: #80bd01;
	background-image: url(../images/2016/menu-underline.gif);
}
#sect-home .main-nav .section a.sect-home:active, #sect-home .main-nav .section a.sect-home:hover,
#sect-oppy .main-nav .section a.sect-oppy:active, #sect-oppy .main-nav .section a.sect-oppy:hover,
#sect-peop .main-nav .section a.sect-peop:active, #sect-peop .main-nav .section a.sect-peop:hover,
#sect-proj .main-nav .section a.sect-proj:active, #sect-proj .main-nav .section a.sect-proj:hover,
#sect-prod .main-nav .section a.sect-prod:active, #sect-prod .main-nav .section a.sect-prod:hover  {
	color: #6b9e00;
	background-image: url(../images/2016/menu-underline.gif);
}
.main-nav .section a:active, .main-nav .section a:hover {
	background-image: url(../images/2016/menu-underline.gif);
}
/* display header menu as a table */
.main-nav ul {
	display: table;
	margin: 0;
	padding: 0;
	width: 100%;
	list-style-type: none;
	list-style-image: none;
}
.main-nav ul > li {
	position: relative;
	display: table-cell;
	margin: 0;
	padding: 0;
	text-align: center;
	vertical-align: middle;
}
.main-nav .section a {
	display: inline-block;
	padding: 0 10px;
}
/* dropdown menus */
.main-nav ul li ul {
	display: none;
	position: absolute;
	left: 50%;
	margin: 0 0 0 -87px;
	padding: 0;
	width: 175px;
	border: 1px solid #80bd01;
	border-top: 0;
	z-index: 9999;
}
/* when a top level main nav item is hovered over, show the dropdown */
.main-nav ul li:hover ul {
	display: block;
	z-index: 1000;
}
/* each item in the dropdown */
.main-nav ul li ul li {
	display: block;
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: 1.1em;
	list-style-image: none;
	list-style-type: none;
}
/* each item's link in the dropdown */
.main-nav ul li ul li a {
	display: block;
	clear: both;
	float: left;
	padding: 5px;
	width: 165px;
	height: auto;
	border-top: 1px solid #80bd01;
	background: #fff;
}
/* each item's link in the dropdown on hover */
.main-nav ul li ul li a:hover {
	color: #fff;
	background: #6da000;
}
/* non-link subheadings */
.main-nav ul li ul li span {
	display: block;
	clear: both;
	float: left;
	padding: 1px 5px;
	width: 165px;
	height: auto;
	border-top: 1px solid #80bd01;
	background: #80bd01;
	color: #fff;
	text-transform: uppercase;
	font-size: .85em;
}
/* collapsed menu */
.main-nav-sm,
.main-nav ul li.dd-only { display: none; }



/* ///// header logins //////////////////////////////////////////////////////////////// */
.header-login {}
.header-table-cell.ht-btns .vbtn { margin: 2px 0; line-height: 1.1em; }
.header-table-cell.ht-btns .vbtn img { position: relative; top: -2px; }
.header-login-sm { display: none; line-height: 11px; }
.header-login-sm .login-icon {
	display: inline-block;
	margin: 0 2px 0 0;
	width: 18px;
	height: 16px;
	text-align: center;
	background: #80bd01;
	border-radius: 2px;
}
.header-login-sm .login-icon:hover { background: #80bd01 url(../images/2016/btn-hover.png) center center repeat; }
.header-login-sm .login-icon img {}
.header-login-sm .popover { line-height: 1.4; }
.header-login-sm .popover .pl-icon { position: relative; top: -1px; margin-right: 5px; }
/* ///// header cola ////////////////////////////////////////////////////////////////// */
.cola { line-height: 1em; }
.cola a:link, .cola a:visited { color: #7f7f7f; text-decoration: none; }
.cola a:active, .cola a:hover { color: #80bd01; text-decoration: none; }
.header-table-cell.ht-btns .cola-flag,
.header-table-cell.ht-btns .cola-lang { display: inline-block; }
.header-table-cell.ht-btns .cola-flag img {
	position: relative;
	top: -1px;
}

/* ///// repbox /////////////////////////////////////////////////////////////////////// */
.ht-rbox {
	position: relative;
	height: 100%;
	background-color: #f3f2f2;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.rep-pic {
	display: inline-block;
	width: 100%;
	height: 100%;
	cursor: pointer;
}
.rb-arrow {
	position: absolute;
	bottom: -4px;
	right: -4px;
	width: 48px;
	height: 48px;
	background-position: right bottom;
	background-repeat: no-repeat;
	cursor: pointer;
}
.rb-info {
	position: absolute;
	top: 100%;
	right: 0;
	margin-top: 2px;
	min-width: 290px;
	text-align: left;
	color: #80bd01;
	background-color: #424242;
}
.rb-info1 {
	padding: 7px 15px;
	font-size: 21px;
	font-weight: 100;
	line-height: 1.4em;
	background-position: right bottom;
	background-repeat: no-repeat;
	cursor: pointer;
}
.rb-info1.rb-ln1 { font-size: 16px; }
.rb-info1.rb-ln2 { font-size: 14px; }
.rb-name { font-size: 1.2em; }
.rb-rank {}
.rb-info2 {
	padding: 15px 15px 5px 15px;
	color: #fff;
	background: #80bd01;
}
.rb-phone { margin-bottom: 10px; }
.rb-phone-icon { margin-right: 5px; }
.rb-phone-lg { display: inline; }
.rb-phone-sm { display: none; }
.rb-arrow { background-image: url(../images/2016/icon-sm-wcirclearrow-down.png); }
.rb-expanded .rb-arrow { background-image: url(../images/2016/icon-sm-wcirclearrow-up.png); }
.rb-info1 { background-image: url(../images/2016/icon-sm-circlearrow-down.png); }
.rb-expanded .rb-info1 { background-image: url(../images/2016/icon-sm-circlearrow-up.png); }

/* adjust form styles for this form only */
#formRepContact label { margin-bottom: 0; }
#formRepContact .control-group.has-success .help-block,
#formRepContact .control-group.has-success .control-label,
#formRepContact .control-group.has-success .radio,
#formRepContact .control-group.has-success .checkbox,
#formRepContact .control-group.has-success .radio-inline,
#formRepContact .control-group.has-success .checkbox-inline,
#formRepContact .control-group.has-success.radio label,
#formRepContact .control-group.has-success.checkbox label,
#formRepContact .control-group.has-success.radio-inline label,
#formRepContact .control-group.has-success.checkbox-inline label,
#formRepContact .control-group.has-warning .help-block,
#formRepContact .control-group.has-warning .control-label,
#formRepContact .control-group.has-warning .radio,
#formRepContact .control-group.has-warning .checkbox,
#formRepContact .control-group.has-warning .radio-inline,
#formRepContact .control-group.has-warning .checkbox-inline,
#formRepContact .control-group.has-warning.radio label,
#formRepContact .control-group.has-warning.checkbox label,
#formRepContact .control-group.has-warning.radio-inline label,
#formRepContact .control-group.has-warning.checkbox-inline label,
#formRepContact .control-group.has-error .help-block,
#formRepContact .control-group.has-error .control-label,
#formRepContact .control-group.has-error .radio,
#formRepContact .control-group.has-error .checkbox,
#formRepContact .control-group.has-error .radio-inline,
#formRepContact .control-group.has-error .checkbox-inline,
#formRepContact .control-group.has-error.radio label,
#formRepContact .control-group.has-error.checkbox label,
#formRepContact .control-group.has-error.radio-inline label,
#formRepContact .control-group.has-error.checkbox-inline label,
#formRepContact .help-block {
	color: #333;
}
/* social media icons (currently not used) */
.repbox .social-links,
.repbox .social-links .addthis_toolbox,
.repbox .social-links .custom_images {
	display: inline-block;
}
.repbox .social-links a {
	display: inline-block;
	margin: 0 0 0 2px;
	width: 28px;
	height: 27px;
}
.repbox .social-links a img {
	width: 28px;
	height: 27px;
	line-height: 27px;
	font-family: Arial Black, Arial, sans-serif;
	font-size: 24px;
}
/* share in email */
.repbox a.icon-email:link, .repbox a.icon-email:visited {
	background: url(../images/icons/bg-email.png) top left no-repeat;
}
.repbox a.icon-email:active, .repbox a.icon-email:hover {
	background: url(../images/icons/bg-email.png) bottom left no-repeat;
}
/* share on facebook */
.repbox a.icon-facebook:link, .repbox a.icon-facebook:visited {
	background: url(../images/icons/bg-facebook.png) top left no-repeat;
}
.repbox a.icon-facebook:active, .repbox a.icon-facebook:hover {
	background: url(../images/icons/bg-facebook.png) bottom left no-repeat;
}
/* share on twitter */
.repbox a.icon-twitter:link, .repbox a.icon-twitter:visited {
	background: url(../images/icons/bg-twitter.png) top left no-repeat;
}
.repbox a.icon-twitter:active, .repbox a.icon-twitter:hover {
	background: url(../images/icons/bg-twitter.png) bottom left no-repeat;
}

/* ///// header responsiveness & animations /////////////////////////////////////////// */
/* when the header height adjusts on scroll, animate it so it's smooth */
#header,
.header-table-cell.ht-logo img,
.main-nav .section a, .main-nav ul li ul,
.rep-pic, .rep-pic img,
.header-back, .footer-back {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-backface-visibility:hidden;
	-webkit-transform: translateZ(0);
}

/* site at the largest widths */
@media (min-width: 1681px) {
	/* 165 px tall header | full width */
	#header .page-width-outer { max-width: 1920px; }
	#header, .header-table  { height: 165px; }

	.header-back { padding-top: 165px; }
	.footer-back { padding-top: 0px; }

	.header-table-cell.ht-logo { width: 20%; }
	.header-table-cell.ht-logo img { max-width: 265px; }

	.main-nav { max-width: 855px; font-size: 21px;  }
	.main-nav .section a { height: 136px; line-height: 155px; }
	.main-nav ul li ul { top: 97px; font-size: 16px; }
	.main-nav .section a { background-position: center center; }

	.header-table-cell.ht-btns { width: 165px; padding-right: 35px; }
	.header-table-cell.ht-btns .vbtn { padding: 7px 0; font-size: 14px; }
	.header-table-cell.ht-btns .vbtn .text-short { display: none; }
	.header-table-cell.ht-btns .vbtn .text-long  { display: inline; }
	.header-table-cell.ht-btns .cola-flag,
	.header-table-cell.ht-btns .cola-lang { margin: 0 11px; font-size: 14px; }

	.ht-rbox { width: 143px; }
	.rb-info1 { padding-right: 35px; min-height: 60px; }
	.rb-arrow { display: none; }
	.rb-info1 { display: block; }
	.rb-info2 { display: none; }
	.rb-expanded .rb-info1, .rb-expanded .rb-info2 { display: block; }

	/* 85 px tall header | full width */
	.shrink #header, .shrink .header-table { height: 85px; }

	.shrink .header-back { padding-top: 80px; }
	.shrink .footer-back { padding-top: 85px; }

	.shrink .main-nav .section a { height: 78px; line-height: 89px; }
	.shrink .main-nav ul li ul { top: 62px; }
	.shrink .main-nav .section a { background-position: center 3px; }

	.shrink .header-table-cell.ht-btns { width: 165px; padding-right: 35px; }
	.shrink .header-table-cell.ht-btns .vbtn { padding: 5px 0; font-size: 12px; }
	.shrink .header-table-cell.ht-btns .vbtn .text-short { display: inline; }
	.shrink .header-table-cell.ht-btns .vbtn .text-long  { display: none; }
	.shrink .header-table-cell.ht-btns .cola-flag,
	.shrink .header-table-cell.ht-btns .cola-lang { margin: 0 2px; font-size: 12px; }

	.shrink .ht-rbox { width: 74px; }
	.shrink .rb-info1 { padding-right: 10px; }
	.shrink .rb-arrow { display: block; }
	.shrink .rb-info1, .shrink .rb-info2 { display: none; }
	.shrink .rb-expanded .rb-info1, .shrink .rb-expanded .rb-info2 { display: block; }
	.shrink .rb-expanded .rb-info1 { background-image: none; }
}
/* site at my monitor size */
@media (max-width: 1680px) {
	/* 100px tall header | centered width */
	#header .page-width-outer { max-width: 1280px; }
	#header, .header-table  { height: 100px; }

	.header-back { padding-top: 100px; }
	.footer-back { padding-top: 0px; }

	.header-table-cell.ht-logo { width: 235px; }
	.header-table-cell.ht-logo img { max-width: 210px; }

	.main-nav { max-width: 600px; font-size: 18px; }
	.main-nav .section a { height: 80px; line-height: 95px; }
	.main-nav ul li ul { top: 64px; font-size: 16px; }
	.main-nav .section a { background-position: center 5px; }

	.header-table-cell.ht-btns { width: 135px; padding-right: 25px; }
	.header-table-cell.ht-btns .vbtn { padding: 5px 0; font-size: 12px; }
	.header-table-cell.ht-btns .vbtn .text-short { display: inline; }
	.header-table-cell.ht-btns .vbtn .text-long  { display: none; }
	.header-table-cell.ht-btns .cola-flag,
	.header-table-cell.ht-btns .cola-lang { margin: 0 2px; font-size: 12px; }

	.ht-rbox { width: 87px; }
	.rb-arrow { display: none; }
	.rb-info1 { display: block; padding-right: 20px; min-height: 50px; font-size: 18px; }
	.rb-info2 { display: none; }
	.rb-expanded .rb-info1, .rb-expanded .rb-info2 { display: block; }

	.rb-phone-lg { display: none; }
	.rb-phone-sm { display: inline; }
	.rb-phone-icon { height: 30px; }

	/* 65px tall header | centered width */
	.shrink #header, .shrink .header-table { height: 65px; }

	.shrink .header-back { padding-top: 60px; }
	.shrink .footer-back { padding-top: 105px; }

	.shrink .header-table-cell.ht-logo { width: 215px; }
	.shrink .header-table-cell.ht-logo img { max-width: 190px; }

	.shrink .main-nav { max-width: 550px; }
	.shrink .main-nav .section a { height: 58px; line-height: 72px; }
	.shrink .main-nav ul li ul { top: 51px; }
	.shrink .main-nav .section a { background-position: center -8px; }

	.shrink .header-table-cell.ht-btns { width: 115px; padding-right: 25px; white-space: nowrap; }
	.shrink .header-table-cell.ht-btns .vbtn { padding: 5px 0; font-size: 12px; }
	.shrink .header-table-cell.ht-btns .vbtn .text-short { display: inline; }
	.shrink .header-table-cell.ht-btns .vbtn .text-long  { display: none; }

	.shrink .header-table-cell.ht-btns .header-login { display: none; }
	.shrink .header-table-cell.ht-btns .header-login-sm,
	.shrink .header-table-cell.ht-btns .cola { display: inline; }
	.shrink .header-table-cell.ht-btns .cola-flag,
	.shrink .header-table-cell.ht-btns .cola-lang { margin: 0 2px; font-size: 12px; }

	.shrink .ht-rbox { width: 56px; }
	.shrink .rb-info1 { padding-right: 10px; }
	.shrink .rb-arrow { display: block; }
	.shrink .rb-info1, .shrink .rb-info2 { display: none; }
	.shrink .rb-expanded .rb-info1, .shrink .rb-expanded .rb-info2 { display: block; }
	.shrink .rb-expanded .rb-info1 { background-image: none; }

}
/* browser width = centered content width */
@media (max-width: 1280px) {

	.header-table-cell.ht-logo { width: 230px; }
	.main-nav { max-width: 480px; margin-right: 5px; }
	.header-table-cell.ht-btns { width: 100px; padding-right: 20px; }

	.shrink .header-table-cell.ht-logo { width: 180px; }
	.shrink .header-table-cell.ht-logo img { max-width: 165px; }
}
/* ipad landscape */
@media (max-width: 1024px) {

	.header-login-sm { line-height: 13px; }

	.main-nav { max-width: 475px; font-size: 15px; }
	.main-nav ul li ul { width: 150px; margin-left: -75px; font-size: 13px; }
	.main-nav ul li ul li a { width: 140px; }

	.shrink .main-nav { max-width: 415px; }
	.shrink .header-table-cell.ht-btns { width: 105px; padding-right: 15px; }

	.rb-info1 { font-size: 14px; min-height: 40px; }
	.rb-info2 { font-size: 14px; }
}
@media (max-width: 1024px) {		
}
/* tight squeeze for header content, but too soon to collapse, so squeeze */
@media (max-width: 920px) {

	#header, .header-table,
	.shrink #header, .shrink .header-table { height: 55px; }

	.header-back,
	.shrink .header-back { padding-top: 55px; }
	.footer-back,
	.shrink .footer-back { padding-top: 110px; }

	.header-table-cell.ht-logo,
	.shrink .header-table-cell.ht-logo { width: 165px; }
	.header-table-cell.ht-logo img,
	.shrink .header-table-cell.ht-logo img { max-width: 150px; }

	.main-nav,
	.shrink .main-nav { max-width: 380px; }
	.main-nav .section a,
	.shrink .main-nav .section a { height: 48px; line-height: 58px; }
	.main-nav ul li ul,
	.shrink .main-nav ul li ul { top: 42px; }
	.main-nav .section a,
	.shrink .main-nav .section a { background-position: center -17px; }

	.header-table-cell.ht-btns,
	.shrink .header-table-cell.ht-btns { width: 100px; padding-right: 10px; white-space: nowrap; }
	.header-table-cell.ht-btns .vbtn,
	.shrink .header-table-cell.ht-btns .vbtn { padding: 5px 0; font-size: 12px; }
	.header-table-cell.ht-btns .vbtn .text-short,
	.shrink .header-table-cell.ht-btns .vbtn .text-short { display: inline; }
	.header-table-cell.ht-btns .vbtn .text-long,
	.shrink .header-table-cell.ht-btns .vbtn .text-long  { display: none; }

	.header-table-cell.ht-btns .header-login,
	.shrink .header-table-cell.ht-btns .header-login { display: none; }
	.header-table-cell.ht-btns .header-login-sm,
	.shrink .header-table-cell.ht-btns .header-login-sm,
	.header-table-cell.ht-btns .cola,
	.shrink .header-table-cell.ht-btns .cola { display: inline; }
	.header-table-cell.ht-btns .cola-flag,
	.header-table-cell.ht-btns .cola-lang,
	.shrink .header-table-cell.ht-btns .cola-flag,
	.shrink .header-table-cell.ht-btns .cola-lang { margin: 0 2px; font-size: 12px; }

	.ht-rbox,
	.shrink .ht-rbox { width: 48px; }
	.rb-expanded .rb-info1,
	.shrink .rb-expanded .rb-info1 { cursor: default; }
	.rb-info1,
	.shrink .rb-info1 { padding-right: 10px; font-size: 16px; }
	.rb-arrow,
	.shrink .rb-arrow { display: block; }
	.rb-info1, .rb-info2,
	.shrink .rb-info1, .shrink .rb-info2 { display: none; }
	.rb-expanded .rb-info1, .rb-expanded .rb-info2,
	.shrink .rb-expanded .rb-info1, .shrink .rb-expanded .rb-info2 { display: block; }
	.rb-arrow,
	.shrink .rb-arrow { display: none; }
	 
}
@media (min-width: 768px) { .main-nav { display: inline-block !important; } }
/* ipad portrait: collapse all into dropdown */
@media (max-width: 767px) {
	.shrink .footer-back, .footer-back { padding-top: 0; }
	.header-table-cell.ht-menu { font-size: 16px; }
	.main-nav, .shrink .main-nav { max-width: 100%; }
	.header-table { position: relative; }
	.header-table, .shrink .header-table,
	.header-table-row { display: block; width: 100%; height: auto; text-align: right; }
	.header-table-row:before, .header-table-row:after { content: " "; display: table; }
	.header-table-row:after { clear: both; }
	.header-table-row { *zoom: 1; }
	.header-table-cell { display: block; }
	.header-table-cell.ht-logo,
	.shrink .header-table-cell.ht-logo { text-align: left; float: left; padding: 4px 5px 0 20px; }
	.header-table-cell.ht-menu { display: inline-block; width: 50px; text-align: left; }
	.header-table-cell.ht-rbox { display: inline-block; text-align: left; height: 55px; }
	.main-nav-sm, .main-nav ul li.dd-only { display: block; }
	.main-nav-sm { cursor: pointer; padding: 11px 10px; }
	.main-nav, .ht-btns { display: none; }
	.main-nav {
		position: absolute;
		top: 57px;
		left: 0;
		max-width: 100%;
	}
	.main-nav .multi { padding: 2px 0; }
	.main-nav .multi span {
		display: inline-block;
		min-width: 80px;
		padding: 0 0 0 17px;
		text-transform: uppercase;
		font-size: 12px;
		color: #80bd01;
	}
	.main-nav .multi a,
	.main-nav .section a,
	.shrink .main-nav .section a { height: auto;  line-height: 1em; }
	.main-nav .section a { background-repeat: no-repeat; }
	#sect-home .main-nav .section a.sect-home:link, #sect-home .main-nav .section a.sect-home:visited,
	#sect-oppy .main-nav .section a.sect-oppy:link, #sect-oppy .main-nav .section a.sect-oppy:visited,
	#sect-peop .main-nav .section a.sect-peop:link, #sect-peop .main-nav .section a.sect-peop:visited,
	#sect-proj .main-nav .section a.sect-proj:link, #sect-proj .main-nav .section a.sect-proj:visited,
	#sect-prod .main-nav .section a.sect-prod:link, #sect-prod .main-nav .section a.sect-prod:visited {
		background-image: none; font-weight: 700; }
	#sect-home .main-nav .section a.sect-home:active, #sect-home .main-nav .section a.sect-home:hover,
	#sect-oppy .main-nav .section a.sect-oppy:active, #sect-oppy .main-nav .section a.sect-oppy:hover,
	#sect-peop .main-nav .section a.sect-peop:active, #sect-peop .main-nav .section a.sect-peop:hover,
	#sect-proj .main-nav .section a.sect-proj:active, #sect-proj .main-nav .section a.sect-proj:hover,
	#sect-prod .main-nav .section a.sect-prod:active, #sect-prod .main-nav .section a.sect-prod:hover  {
		background-image: none; font-weight: 700; }
	.main-nav .section a:active, .main-nav .section a:hover { background-image: none; }
	.main-nav ul { display: block; border-bottom: 1px solid #80bd01; }
	.main-nav ul > li {
		display: block;
		text-align: left;
		background: rgba(255,255,255,.95);
		border-bottom: 1px solid #80bd01;
	}
	.main-nav ul > li:hover { background: #fff; }
	.main-nav .section a { display: block; padding: 5px 17px; }
	.main-nav ul li ul,
	.main-nav ul li:hover ul { display: none !important; }
	.cola-chosen { font-weight: 700; }
	.rb-info1 { background-image: none; }
	.rb-expanded .rb-info1 { background-image: none; cursor: default; }
	.rb-info1 { padding-right: 10px; }
	.rb-info1, .rb-info2 { display: none; }
	.rb-expanded .rb-info1, .rb-expanded .rb-info2 { display: block; }
}
@media only screen and (max-width: 480px) {
	.header-table-cell.ht-logo,
	.shrink .header-table-cell.ht-logo { text-align: left; float: left; padding: 4px 5px 0 10px; }
}
@media only print {
	#header .ht-logo { padding-bottom: 5px; }
	.ht-btns, .header-back { display: none; }
}

/* ///// PROJECTS PAGE CUSTOM STYLES /////// */
.width-percent-70 { width: 70%; }
.width-percent-80 { width: 80%; }
.width-percent-90 { width: 90%; }
#projectNav {
	border-top: 1px solid #787878;
	border-bottom: 1px solid #787878;
	padding: 14px 0 10px 0;
	text-align: center;
	font-size: 26px;
}
#projectNav li {
	display: inline-block;
}
#projectNav span.pipe {
	display: inline-block;
	padding: 0 10px 0 10px;
}
#navIconProjects {
	vertical-align: top;
	padding-right: 20px;
	padding-top: 6px;
}
.bigmap {
	display: none;
}
.bigmapContainerAnchor {
	position: relative;
	width: 750px;
	height: 1px;
	margin-bottom: 70px;
}
.bigmapContainer {
	position: absolute;
	width: 750px;
	height: 373px;
	bottom: 1px;
}
.mapPlot {
	position: absolute;
	width: 20px;
	height: 20px;
	border-radius: 100px;
}
#oakland { top: 134px; left: 90px; }
#guatamala { top: 183px; left: 138px; }
#portchester { top: 120px; left: 195px; }
#australia { top: 269px; left: 655px; }
#us { top: 128px; left: 176px; }
#brazilSouthAmerica { top: 232px; left: 217px; }
#nicaragua { top: 185px; left: 155px; }
#indonesia { top: 230px; left: 575px; }
#ghana { top: 199px; left: 335px; }
#fiji { top: 255px; left: 715px; }
#albania { top: 122px; left: 385px; }
#brazil { top: 230px; left: 234px; }
#peru { top: 242px; left: 188px; }
.maplinkText.current .maplinkLine {
	border-bottom: 1px solid;
	display: inline-block;
	width: 70%;
	position: absolute;
	bottom: 0;
	left: 15%;
}
.maplinkText.current {
	display: inline-block;
	position: relative;
	width: auto;
}
.maplink {
	cursor: pointer;
}
.tooltip-inner {
	text-align: left;
	color: #fff;
	background-color: rgba(0, 0, 0, 0.9);
	padding: 10px;
	line-height: 1.1em;
}
.tooltip-inner h2 {
	color: #80bd01;
	text-align: left;
	padding: 0;
	margin: 0;
	margin-bottom: 5px;
	font-size: 18px;
}
.tooltip-inner a {
	color: #80bd01 !important;
}
.tooltip.top .tooltip-arrow {
	border-top-color: #000;
}
.tooltip-inner a:hover {
	text-decoration: underline;
}
.tooltip-inner a {
	display: inline-block;
	margin-top: 5px;
}
.tooltip {
	min-width: 200px;
}
/* modal styles for home page modals */
#my-modal-data-travel .modal-body, #my-modal-data-elec .modal-body, #my-modal-data-solar .modal-body, #my-modal-data-gas .modal-body, #my-modal-data-usopp .modal-body, #my-modal-data-auopp .modal-body   { background: transparent; }
#my-modal-data-travel .modal-content, #my-modal-data-elec .modal-content, #my-modal-data-solar .modal-content, #my-modal-data-gas .modal-content, #my-modal-data-usopp .modal-content, #my-modal-data-auopp .modal-content { box-shadow: none; }
#my-modal-data-travel .modal-header, #my-modal-data-elec .modal-header, #my-modal-data-solar .modal-header, #my-modal-data-gas .modal-header, #my-modal-data-usopp .modal-header, #my-modal-data-auopp .modal-header { background: transparent; border: none; }
#my-modal-data-travel .modal-header .close, #my-modal-data-elec .modal-header .close, #my-modal-data-solar .modal-header .close, #my-modal-data-gas .modal-header, #my-modal-data-usopp .modal-header, #my-modal-data-auopp .modal-header .close { right: 111px; } 
@media only print {
	#projectNav { font-size: 16px; margin: 0 auto; }
	#sect-proj .bigmap img { width: 500px !important; margin-bottom: 10px; }
	#sect-proj .text-teal.hide767 { display: none; }
	#sect-proj .bigmapContainerAnchor { margin-bottom: 0; }
	#sect-proj .slice.bgc-white > .page-width-inner > .pplg-tb.pp-lr { padding-bottom: 0; }
	#sect-proj .slice.bgc-white > .page-width-inner > .pp-trbl { padding-left: 0; padding-right: 0; }
	.proj-logo { max-height: 85px; }
	#blueimp-gallery .prev,
	#blueimp-gallery .next,
	#blueimp-gallery .close,
	#blueimp-gallery .play-pause,
	#blueimp-gallery .indicator { display: none; }
	#blueimp-gallery .slide,
	#blueimp-gallery { background: #fff; }
}

#projectPics {
	font-size: 0;
}
#projectPics a {
	display: inline-block;
	width: 25%;
	vertical-align: bottom;
	padding: 0;
	margin: 0;
	position: relative;
}
#projectPics a img {
	width: 100%;
	z-index: 0;
}
#projectPics a span.outer {
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	vertical-align: bottom;
	text-align: center;
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	z-index: 200;
	background: rgba(24, 171, 139, 0.9);
	font-size: 18px;
	color: #fff;
	line-height: 1em;
}
#projectPics a span b {
	display: block;
}
#projectPics a span.outer span {
	display: none;
	display: inline-block;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	width: 85%;
	font-size: 0.89em;
}
.valign-m {
	display: inline-block;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	/* vendor prefixes omitted due to brevity */
}
#imageGallery {
	font-size: 0;
}
#imageGallery a {
	display: inline-block;
	vertical-align: top;
	padding: 0;
	margin: 0;
	font-size: 0;
	position: relative;
}
#imageGallery a span {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 0;
	margin: 0;
	z-index: 200;
	background-color: rgba(0, 173, 217, 0.9);
}
#imageGallery a span img {
	position: relative;
	margin-top: 50%;
	top: -20px;
}
.igb-4 a { width: 25%; }
.igb-4 img.igb-4-img { width: 100%; }
@media only screen and (max-width: 640px) {
	.igb-4 a { width: 50%; }
}

@media only screen and (min-width: 1600px) {
	#projectPics a span.outer { font-size: 16px; }
}
@media only screen and (max-width: 1280px) {
	#projectPics a span.outer { font-size: 14px; }
}
@media only screen and (max-width: 1024px) {		
}
@media only screen and (max-width: 920px) {
	#projectPics a { width: 50%; }
	#projectPics a span.outer {  font-size: 14px;}
}
@media only screen and (max-width: 767px) {
	#projectPics a span.outer { font-size: 16px; }
}
@media only screen and (max-width: 640px) {
	#projectPics a {
		display: block;
		width: 80%;
		margin: auto;
	}
	#projectPics a span.outer {
		font-size: 18px;
	}
}
@media only screen and (max-width: 480px) {
	#projectPics a {
		display: block;
		width: 100%;
	}
}
.readMoreContainer, .doubleUp {
	display: none;
}
.doubleDown, .doubleUp {
	margin-top: -2px;
	width: 12px;
}
.doubleUp {
	margin-top: -3px;
}
.readMore, .doubleDown, .doubleUp {
	cursor: pointer;
}
.companyHR {
	width: 100%;
	margin-top: 40px;
	margin-bottom: 50px;
	background-color: #ccc;
}


/* ///// INDEX PAGE CUSTOM STYLES /////// */
#home-hero { background-image: url(../images/2016/home/bg_home-hero.jpg); }
@media only screen and (max-width: 767px) {
	#home-hero { background-image: url(../images/2016/home/bg_home-hero-sm.jpg); }
}
/* products subsection with stats */
.tree-small-text { display: block; margin-left: 40px; margin-top: -11px; }
.vertical-hr-white { background-color: #fff; display: inline-block; height: 297px; width: 1px; margin: 100px 20px 0 20px; }
@media only screen and (max-width: 768px) {
	.vertical-hr-white { display: none;  }
}
@media only screen and (max-width: 980px) {
	.ie11 .vertical-hr-white { display: none;  }
}
@media only screen and (max-width: 1024px) {
	.ie11 .vertical-hr-white { display: none;  }
	.vertical-hr-white { display: none;  }
}
/* people subsection with smiley face boxes */
.box-outline-home-people-container {
	display: table;
	height: 100%;
	position: relative;
	z-index: 0;
}
.box-outline-home-people-container .smiley {
	position: absolute;
	top: -10px;
	left: 50%;
	margin-left: -71px;
	z-index: 10;
}
.box-outline-home-people-container:hover .smiley {
	top: -80px;
}
.box-outline-home-people {
	background: #fff;
	border: 1px solid #cacaca;
	display: table-cell;
	margin: 0 auto;
	height: 480px;
	padding: 15px 15px;
	position: relative;
	z-index: 20;
}
.us_es .box-outline-home-people {
	height: 569px;
}
@media only screen and (min-width: 1681px) {
	.box-outline-home-people { font-size: 21px; }
}
@media only screen and (max-width:1024px) {
	.ie11 .box-outline-home-people { height: 310px; }
	.us_es .box-outline-home-people { height: 500px; }
}
@media only screen and (max-width: 768px) {
	.us_es .box-outline-home-people { height: 569px; }
}
@media only screen and (max-width: 700px) {
	.us_es .box-outline-home-people { height: 300px; }
}

.box-outline-home-people .vbtn  {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 50px;
	width: 200px;
	margin: auto;
}
#productsSection .pxc-td { vertical-align: top; }
#travel-light-home-hero {
	background-image: url(../images/2016/home/bg_home-swimmers-hero.jpg);
	min-height: 400px;
}
#travel-light-home-hero .travel-light-logo {
	width: 200px;
}

@media only screen and (max-width: 920px) {
	.box-outline-home-people-container .smiley {
		width: 100px;
		margin-left: -50px;
	}
	.box-outline-home-people-container:hover .smiley { top: -50px; }
	.swpImg { width: 300px; }
	.ie11 .vertical-hr-white { background-color: #fff; display: none; height: 297px; width: 1px; margin: 100px 20px 0 20px; }
}
@media only screen and (max-width: 767px) {
	.box-outline-home-people-container .smiley {
		width: 70px;
		margin-left: -35px;
	}
	.box-outline-home-people {
		height: 100%;
		padding: 10px 10px 70px 10px;
	}
	.box-outline-home-people .vbtn  { bottom: 30px; }
	.vertical-hr-white { display: none; }
	.pxc-td:last-child .box-outline-home-people-container { margin-top: 40px; }
}
@media only print {
	#productsSection .ppmx-tb { padding-bottom: 0; }
	#productsSection .font-size-42.text-white { margin-bottom: 0; }
	#productsSection .pp-b > img { max-height: 40px; }
	#productsSection .vertical-hr-white { display: none; }
	.box-outline-home-people { height: 225px; }
	.slice.bgc-blue { margin-top: 15px; }
	.smiley { display: none; }
	.font-size-42.text-blue.no-gap-top { margin-bottom: 0; }
	.box-outline-home-people .font-size-42.font-weight-light { margin-top: 0; }
	.box-outline-home-people .vbtn  { bottom: 20px; }
}
/* people subsection with image grid */
.see-more-people {border-top: 2px solid #fff; }


/* ////////// PEOPLE PAGE /////////////////// */
@media only print {
	#sect-peop .slice.bgc-blue { background: #fff; }
}
 
/* ////////// COMPANY PAGE /////////////////// */
@media only screen and (max-width: 1024px) {
	.ie11 .execs hr.hr-left { margin: auto; }
}
@media only screen and (max-width: 767px) {
	.execs hr.hr-left { margin: auto; }
	.width-767-90p-c {width: 90%; margin-left: auto; margin-right: auto; }
}


/* ////////// OPPORTUNITY PAGE /////////////////// */
/* background images */
.bg-oppy-hero { background-image: url(../images/2016/opportunity/bg_opp-hero.jpg); }
.bg-oppy-team { background-image: url(../images/2016/opportunity/bg-opp-team.jpg); }
.bg-oppy-cash { background-image: url(../images/2016/opportunity/bg-opp-compensation.jpg); }
.bg-oppy-syst {
	background-image: url(../images/2016/opportunity/bg_bikeguy_repeat.jpg);
	background-repeat: repeat;
}
.bg-oppy-syst .page-width-outer {
	background-image: url(../images/2016/opportunity/bg_bikeguy.jpg);
	background-repeat: no-repeat;
}
/* switch to smaller image files on smaller screens */
@media only screen and (max-width: 767px) {
	.bg-oppy-hero { background-image: url(../images/2016/opportunity/bg_opp-hero-sm.jpg); }
	/*.bg-oppy-team {} not needed */
	.bg-oppy-cash { background-image: url(../images/2016/opportunity/bg-opp-compensation-sm.jpg); }
	.bg-oppy-syst { background-image: url(../images/2016/opportunity/bg_bikeguy_repeat-sm.jpg); }
	.bg-oppy-syst .page-width-outer { background-image: url(../images/2016/opportunity/bg_bikeguy-sm.jpg); }
}
@media only screen and (max-width: 1680px) {
	.bg-oppy-syst { background-size: auto 120%; }
	.bg-oppy-syst .page-width-outer { background-size: auto 120%; }
}
@media only screen and (max-width: 1280px) {
	.bg-oppy-syst { background-size: auto 120%; background-position: right center; }
	.bg-oppy-syst .page-width-outer { background-size: auto 120%; background-position: right center; }
	.bg-oppy-syst .pxc-td.text-right { width: 70%; }
	.bg-oppy-syst .pxc-td.text-right .page-width-inner-half { max-width: 860px; }
}
@media only screen and (max-width: 767px) {
	.bg-oppy-syst { background-position: right center; }
	.bg-oppy-syst .page-width-outer { background-position: right center; }
	.bg-oppy-syst .pp-spacer { height: 100px; }
}
@media only screen and (max-width: 540px) {
	.bg-oppy-syst .pxc-td.text-right { width: 70% !important; }
	.bg-oppy-syst .pp-spacer { height: 150px; }
	.bg-oppy-syst { background-position: 50% bottom;  }
	.bg-oppy-syst .page-width-outer { background-position: 50% bottom;  }
}
@media only screen and (max-width: 480px) {
	.bg-oppy-syst .pxc-td.text-right { width: 80% !important; }
	.bg-oppy-syst .pp-spacer { height: 100px; }
	.bg-oppy-syst { background-position: 65% 40%;  }
	.bg-oppy-syst .page-width-outer { background-position: 65% 40%;  }
	.bg-oppy-syst { background-size: auto 100%; }
	.bg-oppy-syst .page-width-outer { background-size: auto 100%; }
}	

/* company section */
#oppy-comp h2 span { position: relative; top: .125em; }
/* compensation section */
#oppy-cash .ppxs-t p { padding-top: .5em; }
#oppy-cash .ppxs-t p.pp-t { padding-top: 1em; }


/* ///////////// PRODUCTS PAGES /////////////// */

/* Products main page --------- */

/* background images */
.bg-products-home { background-image: url(../images/2016/products/bg_products_home.jpg); }
.bg-products-business-us { background-image: url(../images/2016/products/bg_products_business.jpg); }
.bg-products-travel { background-image: url(../images/2016/products/bg_products_travel.jpg); }
.bg-products-path { background-image: url(../images/2016/products/bg_products_path.jpg); }
.bg-products-simple-choice { background-image: url(../images/2016/products/bg_products_au_house.jpg); }
.bg-products-report { background-image: url(../images/2016/products/bg_products_au_vreport.jpg); }
/* switch to smaller image files on smaller screens */
@media only screen and (max-width: 767px) {
	.bg-products-home { background-image: url(../images/2016/products/bg_products_home-sm.jpg); }
	.bg-products-business { background-image: url(../images/2016/products/bg_products_business-sm.jpg); }
	.bg-products-travel { background-image: url(../images/2016/products/bg_products_travel-sm.jpg); }
	.bg-products-path { background-image: url(../images/2016/products/bg_products_path-sm.jpg); }
	.bg-products-simple-choice { background-image: url(../images/2016/products/bg_products_au_house-sm.jpg); }
	.bg-products-report { background-image: url(../images/2016/products/bg_products_au_vreport-sm.jpg); }
}

/* products for home page -------- */

/* background images */
.bg-products-homesimple { background-image: url(../images/2016/products/bg_products_home_electricity.jpg); }
.bg-products-everydaygreen { background-image: url(../images/2016/products/bg_products_electricity_windmill.jpg); }
.bg-products-simplyright { background-image: url(../images/2016/products/bg_products_naturalgas.jpg); }
.bg-products-solar { background-image: url(../images/2016/products/bg_products_house_solar.jpg); }
.bg-products-ecobee3 { background-image: url(../images/2016/products/bg_products_ecobee.jpg); }
/* switch to smaller image files on smaller screens */
@media only screen and (max-width: 767px) {
	.bg-products-homesimple { background-image: url(../images/2016/products/bg_products_home_electricity-sm.jpg); }
}
@media only screen and (max-width: 640px) {
	.bg-products-everydaygreen { background-image: url(../images/2016/products/bg_products_electricity_windmill-sm.jpg); }
	.bg-products-simplyright { background-image: url(../images/2016/products/bg_products_naturalgas-sm.jpg); }
	.bg-products-solar { background-image: url(../images/2016/products/bg_products_house_solar-sm.jpg); }
	.bg-products-ecobee3 { background-image: url(../images/2016/products/bg_products_ecobee-sm.jpg); }
}

/* border boxes (used on multiple products pages) */
.box-outline-help {
	border: 1px solid #cacaca;
	box-sizing: border-box;
	display: inline-block;
	height: 100%;
	margin: 0 auto;
	padding: 15px;
	position: relative;
	width: 95%;
}
@media only screen and (min-width: 1681px) { 
	.ie11 .box-outline-help { height: 840px; } 
	.edge .box-outline-help { height: 840px; }
}
@media only screen and (max-width: 1680px) { 
	.ie11 .box-outline-help { height: 840px; }
	.edge .box-outline-help { height: 840px; }
}
@media only screen and (max-width: 1024px) { 
	.ie11 .box-outline-help { height: 100%;  margin: 10px auto;}
	.edge .box-outline-help { height: 660px;  margin: 10px auto;}
}
@media only screen and (max-width: 767px) { 
	.edge .box-outline-help { height: 660px;  margin: 10px auto;}
}

/* padding/text inside border box */
.box-outline-help p { margin: 14px; }
.box-outline-help p.infoPlanet {
	line-height: 13px;
	margin-top: -10px;
	text-transform: uppercase;
}
/* align buttons */
.box-outline-help .small-spacer { min-height: 113px; }
.box-outline-help .vbtn-group {
	box-sizing: border-box;
	margin: 0;
	width: 100%;
	position: absolute;
	bottom: 1.8em;
	left: 0;
	right: 0;
}
@media only screen and (max-width: 767px) {
	/* when border boxes stack */
	.box-outline-help { margin: 0 0 15px auto; padding: 15px 0; width: 100%; }
	/* squeeze spacing */
	.box-outline-help .hp-2col .hp-equiv p { margin: 14px 3px; }
	.box-outline-help .hp-2col p { margin: 14px 3px; }
	/* don't need to align buttons any more */
	.box-outline-help .small-spacer { min-height: 10px; }
	.box-outline-help .vbtn-group { position: static; bottom: auto; left: auto; right: auto; }
}
/* spacing of XX lbs of CO2 line */
.box-outline-help p.how-lbs { margin: .9em auto; line-height: .75em; }
/* vertical line between columns */	
.box-outline-help .hp-2col .pxc-tr .pxc-td:nth-child(2) { border-left: 1px solid #CACACA; }
.box-outline-help .hp-2col .hp-equiv .pxc-tr .pxc-td:nth-child(2) { border-left: 0; }
/* family holding hands image */
.box-outline-help .help-family-img { width: 80%; margin-bottom: 20px; }
/* max width of sub table */
.box-outline-help .hp-2col .hp-equiv { max-width: 400px; }
@media only print {
	.box-outline-help .hp-2col .pxc-tr .pxc-td:nth-child(2) { border-left: 0; }
	.box-outline-help .small-spacer { display: none; }
	.page-prod-travel .vbtn-group,
	.page-prod-home .vbtn-group { display: none !important; }
	.box-outline-help img.shrinkable:not(.help-family-img) { max-height: 35px; }
	.box-outline-help p { margin: 1em 0; }
	.box-outline-help p.how-lbs { margin: 0 auto; }
	#prod-home-cash .pp-t { padding-top: 0; margin-top: 0; }
	#prod-home-go .vbtn-bottom > div { 	padding-bottom: 1em; }
	#prod-home-go .vbtn-bottom .vbtn-group { display: none; }
	#prod-home-more img { max-height: 35px; }
}

/* products for business page -------- */
/* stellar impact boxes */
.impact-box { background: #fff; border: 2px solid #80bd01; margin: 0 auto; padding: 15px; width: 75%; }
.impact-box img { position: relative; top: -67px; margin-bottom: -47px;  }
.impact-box p { margin: 0; }
.impact-box .font-weight-light em { font-weight: 100; }
@media only screen and (min-width: 1681px) { .impact-box { min-height: 225px; } }
@media only screen and (max-width: 1680px) { .impact-box { min-height: 200px; } }
@media only screen and (max-width: 1280px) { .impact-box { min-height: 175px; } }
@media only screen and (max-width: 1024px) { .impact-box { min-height: 155px; } }
@media only screen and (max-width: 767px)  { .impact-box { min-height: 10px; } 
	.impact-box { margin: 0 auto 10px auto; }
	.impact-box img { position: relative; top: -45px; margin-bottom: -35px; width: 60px;  }
	.ib-imagine { margin-top: 0; }
}
@media only screen and (max-width: 540px)  {
	.impact-box { margin: 0 auto 20px auto; }
}
@media only print {
	.impact-box img { height: 50px; position: relative; top: -30px; margin-bottom: -30px;  }
}

/* corporate values boxes */
.pxc-4col.cv-table { border-collapse: separate; border-spacing: 20px; }
.pxc-4col.cv-table .pxc-td { border: 2px solid #ccc; }
.pxc-4col.cv-table p { margin: 20px; }
@media only screen and (max-width: 920px) {
	.pxc-4col.cv-table { border-collapse: collapse; border-spacing: 0; }
	.pxc-4col.cv-table .pxc-td { float: none; display: inline-block; margin: 10px; width: 40% !important; min-height: 80px; }
	.pxc-4col.cv-table .pxc-td div.cv-ctr { display: table; margin: 10px; height: 60px; }
	.pxc-4col.cv-table p { display: table-cell; vertical-align: middle; }
	.pxc-4col.cv-table br { display: none; }
}
@media only screen and (max-width: 767px)  {  
	.pxc-4col.cv-table .pxc-td { min-height: 100px; }
	.pxc-4col.cv-table .pxc-td div.cv-ctr { height: 80px; }
}
@media only screen and (max-width: 640px)  {  
	.pxc-4col.cv-table .pxc-td { display: block; width: auto !important; min-height: 10px; }
	.pxc-4col.cv-table .pxc-td div.cv-ctr { display: block; height: auto; }
	.pxc-4col.cv-table .pxc-td p { display: block; }
}
		
/* products travel page -------- */

/* background images */
.bg-products-travellight { background-image: url(../images/2016/products/bg_products_travel_hero.jpg); }
.bg-products-livelarge { background-image: url(../images/2016/products/bg_products_travel_livelarge.jpg); }
.bg-products-travelreward { background-image: url(../images/2016/products/bg_products_travel_map.jpg); }
.bg-products-travelroom { background-image: url(../images/2016/products/bg_products_travel_roomfornight.jpg); }
/* switch to smaller image files on smaller screens */
@media only screen and (max-width: 767px) {
	.bg-products-travellight { background-image: url(../images/2016/products/bg_products_travel_hero-sm.jpg); }
	.bg-products-livelarge { background-image: url(../images/2016/products/bg_products_travel_livelarge-sm.jpg); }
	.bg-products-travelreward { background-image: url(../images/2016/products/bg_products_travel_map-sm.jpg); }
	.bg-products-travelroom { background-image: url(../images/2016/products/bg_products_travel_roomfornight-sm.jpg); }
}

.bg-products-travellight {
	display: none;
}
#travel-light-prod-hero {
	background-image: url(../images/2016/products/bg_products_travel-swimmers-hero.jpg);
	background-position: center bottom;
	min-height: 600px;
}
#travel-light-prod-hero .travel-light-logo {
	width: 200px;
}
#travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:first-child {
	padding-right: 5px;
}
#travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:last-child {
	padding-left: 5px;
}
@media only screen and (max-width: 1024px) {
	.ie11 #travel-light-prod-hero .travel-light-savings-table .pxc-tr {
		height: auto;
	}
	.ie11 #travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:first-child {
		padding-right: 0;
		padding-top: 20px;
	}
	.ie11 #travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:last-child {
		padding-left: 0;
		padding-top: 20px;
		padding-bottom: 10px;
	}
}
@media only screen and (max-width: 767px) {
	#travel-light-prod-hero .travel-light-savings-table .pxc-tr {
		height: auto;
	}
	#travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:first-child {
		padding-right: 0;
		padding-top: 20px;
	}
	#travel-light-prod-hero .travel-light-savings-table .pxc-tr .pxc-td:last-child {
		padding-left: 0;
		padding-top: 20px;
		padding-bottom: 10px;
	}
}
#travel-light-prod-hero .travel-light-savings {
	background-color: rgba(255,255,255,0.8);
	color: #58595B;
	text-shadow: none;
}
#travel-light-prod-hero .travel-light-savings h3 {
	background-color: rgba(255,255,255,0.6);
	color: #4E9D2D;
	font-weight: 400;
	margin-top: 0;
	padding: 0.4em 0.6em;
	text-transform: uppercase;
}
#travel-light-prod-hero .travel-light-savings ul {
	/*color: #58595B;*/
	padding: 0 0.25em 0 2em;
}
#travel-light-prod-hero .travel-light-savings p {
	background-color: rgba(255,255,255,0.6);
	font-weight: 700;
	padding: 0.25em 0.75em;
}

.bg-products-revolution { 
	background-image: url(../images/2016/products/bg-products-cloud.png); 
	background-repeat: no-repeat;
	background-position: center bottom;
}
.bg-products-revolution .cloud-table { display: table; width: 100%; }
.bg-products-revolution .cloud-cell { 
	display: table-cell; 
	padding-top: 30px;
	padding-bottom: 60px;
	height: 370px; 
	text-align: center; 
	vertical-align: bottom; 
}
@media only screen and (max-width: 1024px) {
	.bg-products-revolution { background-size: 100% auto; }
	.bg-products-revolution .cloud-cell { height: 250px; padding-bottom: 30px; }
}
@media only screen and (max-width: 860px) { .bg-products-revolution .cloud-cell { height: 200px; padding-bottom: 20px; } }
@media only screen and (max-width: 767px) { .bg-products-revolution .cloud-cell { height: 175px; padding-bottom: 5px; } }
@media only screen and (max-width: 660px) { 
	.bg-products-revolution .cloud-cell { height: 145px; } 
	.bg-products-revolution .cloud-cell .vbtn-vspace { margin: 0; } 
	.bg-products-revolution .cloud-cell p { margin-bottom:5px; } 
}
@media only screen and (max-width: 560px) { .bg-products-revolution .cloud-cell { height: 145px; vertical-align: bottom; } .bg-products-revolution { background-size: 120% auto; } }
@media only screen and (max-width: 480px) { .bg-products-revolution .cloud-cell { height: 125px; } }
@media only screen and (max-width: 400px) { .bg-products-revolution { background-size: 150% auto; } .bg-products-revolution .cloud-cell { height: 135px; } }
@media only print {
	.bg-products-revolution { background: #fff; }
	.bg-products-revolution .cloud-cell { display: none; }
	.page-prod-travel .text-center.ppmx-t.pplg-b.pp-lr { padding-top: 0; padding-bottom: 0; }
	.page-prod-travel .box-outline-help p { padding-top: 0; padding-bottom: 0; margin: .5em 0; }
	.page-prod-travel .limit-content p:last-child { margin-bottom: 0; }
	.page-prod-travel .slice.bgc-white .ppmx-b.pplg-t.pp-lr { padding-bottom: 0; }
}

/* products business page -------- */

/* background images */
.bg-products-business { background-image: url(../images/2016/products/bg-products-business-au.jpg);   }
.bg-products-smallbusiness { background-image: url(../images/2016/products/bg-products-smallbusiness.jpg); }
.bg-products-confidence { background-image: url(../images/2016/products/bg-products-confidence.jpg); }
.bg-products-flexibility { background-image: url(../images/2016/products/bg-products-flexibility.jpg); }
.bg-products-easystart { background-image: url(../images/2016/products/bg-products-easystart.jpg); }
.bg-products-hills { background-image: url(../images/2016/products/bg_busprod-hills.jpg); }
.bg-products-greenbusiness { background-image: url(../images/2016/products/bg_busprod_towers.jpg); }
/* switch to smaller image files on smaller screens */
@media only screen and (max-width: 767px) {
	.bg-products-business { background-image: url(../images/2016/products/bg-products-business-au-sm.jpg);   }
	.bg-products-smallbusiness { background-image: url(../images/2016/products/bg-products-smallbusiness-sm.jpg); }
	.bg-products-confidence { background-image: url(../images/2016/products/bg-products-confidence-sm.jpg); }
	.bg-products-easystart { background-image: url(../images/2016/products/bg-products-easystart-sm.jpg); }
	.bg-products-hills { background-image: url(../images/2016/products/bg_busprod-hills-sm.jpg); }
	.bg-products-greenbusiness { background-image: url(../images/2016/products/bg_busprod_towers-sm.jpg); }
}

.green-beacon-logo { max-width: 300px; }
@media only screen and (max-width: 920px) { .green-beacon-logo { max-width: 250px; } }
@media only screen and (max-width: 640px) { .green-beacon-logo { max-width: 200px; } }

.ie11 .ie-height-spacer { height: 113px; }
@media only screen and (max-width: 1024px) {
	.ie11 .ie-height-spacer { height: 13px; }
}


/* ///// social bits ////////////////////////////////////////////////////////////////// */
#social {
	/* nothing yet */
}
@media only screen and (max-width: 1680px) {
	#social .page-width-outer { max-width: 1280px; }
}
#social .pxc-3col {
	border-top: 2px solid #ccc;
	margin-top: 40px;
}
#social h3 {
	border-bottom: 1px solid #ccc;
	color: #80bd01;
	font-size: 0.95em;
	font-weight: 700;
	height: 40px;
	line-height: 50px;
	margin-bottom: 15px;
	padding-left: 60px;
	padding-bottom: 10px;
	position: relative;
	text-align: right;
	text-transform: uppercase;
}
#social h3:before {
	color: #a7a7a7;
	font-size: 0.75em;
	font-weight: 100;
	line-height: 50px;
	position: absolute;
	top: 0;
	left: 60px;
	text-transform: uppercase;
}
#social h3.social-fb {
	background-image: url(../images/2016/social_icon_facebook.png);
	background-position: 20px center;
	background-repeat: no-repeat;
}
#social h3.social-fb:before {
	content: "facebook";
}
#social h3.social-ig {
	background-image: url(../images/2016/social_icon_instagram.png);
	background-position: 10px center;
	background-repeat: no-repeat;
}
#social h3.social-ig:before {
	content: "instagram";
}
#social h3.social-yt {
	background-image: url(../images/2016/social_icon_youtube.png);
	background-position: 5px center;
	background-repeat: no-repeat;
}
#social h3.social-yt:before {
	content: "youtube";
}
@media only screen and (min-width: 768px) and (max-width: 1100px) {
	#social h3 {
		background-position: 0px center !important;
	}
	#social h3:before {
		content: " " !important;
	}
}

#social .recent-content .thumbnail,
#social .recent-content .blurb {
	display: table-cell;
	vertical-align: top;
}
#social .recent-content .thumbnail img {
	height: 130px;
	width: 130px;
}
#social .recent-content .blurb {
	font-size: 0.8em;
	padding-left: 20px;
	width: 90%;
}
#social .recent-content .blurb a {
	font-weight: 700;
	white-space: nowrap;
}
#social .recent-content .blurb p {
	margin: 0 0 10px;
}
#social .recent-content .blurb .timestamp {
	color: #a7a7a7;
	font-size: 0.9em;
	font-weight: 100;
}
@media only screen and (max-width: 1024px) {
	#social .recent-content .thumbnail img {
		height: 100px;
		width: 100px;
	}
}
@media only screen and (max-width: 920px) {
	#social .recent-content .thumbnail img {
		height: 80px;
		width: 80px;
	}
}
@media only screen and (max-width: 767px) {
	#social .recent-content .blurb .timestamp {
		font-size: 1em;
	}
	#social h3:before {
		font-size: 0.9em;
	}
}

/* ///// footer /////////////////////////////////////////////////////////////////////// */
#footer {
	font-size: 14px;
	padding-top: 40px;
	margin-bottom: -50px;
}
.footer-back {
	background-color: #4C9D2E;
}
@media only screen and (max-width: 1680px) {
	#footer .page-width-outer { max-width: 1280px; }
}
#footer a { color: #fff; text-decoration: none; }
#footer a:hover { text-decoration: underline; }
#footer h3 { font-weight: 700; text-transform: uppercase; }
#footer hr {
	border: 0;
	height: 1px;
	background: #fff;
	margin: 0;
}
#footer hr.au {
	display: none;
}
#footer hr.small {
	text-align: left; /* for IE */
	width: 50px;
}
@media only print {
	#footer { padding-top: 0; margin-bottom: 0; }
	#footer.bgc-green-dark { background-color: #fff; color: #999; }
	.footer-back { background-color: #fff; }
	#footer hr { background: #999; }
	#footer img { background: #aaa; padding: 3px; border-radius: 3px; }
	#footer a { color: #999; }
	#footer .pp-trbl, #footer .pp-l { padding-left: 0; padding-right: 0; }
	.footer-back { display: none; }
}

/* contact info */
.footer-contact {
	display: inline-block;
	border-right: 1px solid #fff;
	padding-right: 35px;
	vertical-align: top;
}
.footer-contact.au {
	display: inline-block;
	border-right: 1px solid #fff;
	padding-right: 90px;
	vertical-align: middle;
}
@media only screen and (max-width: 480px) {
	.footer-contact { border-right: none; }
}
@media only print {
	.footer-contact { border: 0; padding-right: 0; }
	.footer-contact p:last-child { margin-bottom: 0; }
}

/* menu */
.footer-sub {
	margin-top: 41px;
}
.footer-menu {
	display: inline-block;
	padding-left: 20px;
	vertical-align: top;
}
.footer-menu.au {
	display: inline-block;
	padding-left: 90px;
	margin-bottom: -50px;
	/*vertical-align: bottom;*/
}
.footer-menu > ul {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}
.footer-menu > ul > li {
	display: block;
	margin-bottom: 10px;
	text-transform: uppercase;
	font-size: 12px;
}
.footer-menu > ul > li:before {
	content: "+";
	display: inline-block;
	padding-right: 2px;
}
.footer-menu ul.sub {
	padding-left: 15px;
	display: block;
	margin-bottom: 7px;
	text-transform:  none;
	font-size: 12px;
}
.footer-menu ul.sub li {
	display: block;
	margin-bottom: 3px;
	text-transform:  none;
	font-size: 12px;
}

.footer-menu ul.sub li:before {
	content: "-";
	display: inline-block;
	padding-right: 2px;
}
.footer-menu .section { display: inline-block; }
.footer-menu .section-menu { display: none; }
.footer-menu .dd-only { display: none; }
@media only print {
	.footer-menu { display: none; }
}

/* social media */
.footer-social {}
.footer-social h3 {
	display: inline-block;
	font-size: 1.4em;
	font-weight: normal;
	margin-right: 20px;
}
.footer-social span {
	display: inline-block;
	white-space: nowrap;
}
.footer-social span a {
	display: inline-block;
	padding: 0 10px;
}
.footer-social span a img {
	max-width: 50px;
	max-height: 40px;
}
@media only print {
	.footer-social h3 { font-size: 1em; }
	.footer-social span a img { max-height: 30px; }
}

/* have questions */
.footer-questions {
	padding-top: 30px;
}
.footer-questions h3 {
	font-size: 1.6em;
	font-weight: normal;
}
.footer-questions p {
	font-size: 1.3em;
}
@media only print {
	.footer-questions h3 { font-size: 1em; }
	.footer-questions p { font-size: .85em; }
}

/* regulatory */
.footer-reg  p {
	font-size: 0.9em;
}
@media only print {
	.footer-reg  hr { display: none; }
	.footer-reg  p { font-size: 0.8em; }
}

/* awards */
.footer-awards {
	padding: 40px 0;
	text-align: justify;
	-ms-text-justify: distribute-all-lines;
	text-justify: distribute-all-lines;
}
.footer-awards a {
	display: inline-block;
	*display: inline;
	zoom: 1;
}
.footer-awards img {
	max-height: 70px;
	max-width: 100px;
	margin: 5px 10px;
}
.footer-awards span:not(.stretch) {
	display: inline;
}
.stretch {
	width: 100%;
	display: inline-block;
	font-size: 0;
	line-height: 0
}
/* copyright bits */
.footer-copyright {
	font-weight: 700;
	overflow: auto;
	padding-top: 20px;
	padding-bottom: 30px;
	text-align: right;
	text-transform: uppercase;
	width: 100%;
	min-height: 95px;
}
.footer-copyright img {
	float: left;
	margin-right: 40px;
	margin-bottom: 10px;
	width: 200px;
}
.footer-copyright div {
	line-height: 22px;
	vertical-align: middle;
}
.footer-copyright div span {
	display: inline-block;
}
@media only screen {
	.footer-copyright div span:after {
		content: "//";
		margin: 0 16px 0 20px;
	}
	.footer-copyright div span:last-child:after {
		content: " ";
		margin: 0;
	}
}
@media only screen and (max-width: 1200px) {
	.footer-copyright div span:last-child { margin-right: 45px; }
}
@media only print {
	.footer-copyright { padding-bottom: 0; }
	.footer-copyright div span { display: none; padding-left: 8px; }
	.footer-copyright div span:nth-child(1),
	.footer-copyright div span:nth-child(2) { display: inline; }
	.footer-copyright img { width: 150px; }
}

/* social media links (-deprecated? JM) */
.footer-socialxx {}
.footer-socialxx a {
	display: inline-block;
	margin: 3px 0;
	padding: 0 0 0 30px;
	height: 27px;
	line-height: 25px;
	text-decoration: none;
}
.footer-socialxx a.facebook:link, .footer-socialxx a.facebook:visited {
	background: url(../images/icons/bg-facebook.png) left top no-repeat;
}
.footer-socialxx a.facebook:active, .footer-socialxx a.facebook:hover {
	background: url(../images/icons/bg-facebook.png) left bottom no-repeat;
}
.footer-socialxx a.twitter:link, .footer-socialxx a.twitter:visited {
	background: url(../images/icons/bg-twitter.png) left top no-repeat;
}
.footer-socialxx a.twitter:active, .footer-socialxx a.twitter:hover {
	background: url(../images/icons/bg-twitter.png) left bottom no-repeat;
}
.footer-socialxx a.youtube:link, .footer-socialxx a.youtube:visited {
	background: url(../images/icons/bg-youtube.png) left top no-repeat;
}
.footer-socialxx a.youtube:active, .footer-socialxx a.youtube:hover {
	background: url(../images/icons/bg-youtube.png) left bottom no-repeat;
}

@media only screen and (max-width: 1300px) {
	.footer-menu { padding-left: 10px; }
}
@media only screen and (max-width: 1279px) {
	.footer-sub { display: none; }
}
@media only screen and (max-width: 1024px) {
	.footer-awards { text-align: center; }
	.footer-awards span:not(.stretch) { display: inline-block; }
	.stretch { display: none; }
	.footer-contact.au {
		display: inline-block;
		border-right: 1px solid #fff;
		vertical-align: top;
			padding-right: 20px;
	}
	.footer-menu.au {
		display: inline-block;
		padding-left: 20px;
			margin-bottom: -50px;
		vertical-align: top;
		
	}
}
@media only screen and (max-width: 767px) {
	.footer-awards {
		text-align: justify;
		-ms-text-justify: distribute-all-lines;
		text-justify: distribute-all-lines;
	}
	.footer-awards span:not(.stretch) { display: inline; }
	.stretch { display: inline-block; }
	.footer-contact.au {
		display: inline-block;
		border-right: 1px solid #fff;
	}
	.footer-menu.au {
		margin-bottom: 0;
	}
	#footer hr.au {
		display: block;
		margin: 20px 0;
	}
}
.terms-map { display: block; }
@media only screen and (max-width: 600px) {
	.footer-awards { text-align: center; }
	.footer-awards span:not(.stretch) { display: inline-block; }
	.stretch { display: none; }
}
@media only screen and (max-width: 640px) {
	.terms-map { display: none; }	
}
.ie11 .rb-info { margin-top: -6px; }
@media only screen and (max-width: 1024px) {
	.ie11 .rb-info { margin-top: -4px; }	
}
@media only print {
	.footer-awards { padding-bottom: 0; }
	.footer-awards img { max-height: 35px; margin: 5px 0; }
	.footer-contact p { font-size: .85em; }
	.footer-contact hr { display: none; }
}

.ie11 .hr.hr-left { margin-left: 0px; }

/* prepaid banner over footer */
#prepaid-banner {
	background: #e3e8e9 url(../images/2016/footer-prepaid-banner-bg.jpg) top center no-repeat;
	background-size: auto 100%;
	color: #4e9d2d;
}
#prepaid-banner .pxc-empty img { height: 375px; }
#prepaid-banner .page-width-outer { max-width: 2200px; }
#prepaid-banner .page-width-inner-half { max-width: 990px; }
#prepaid-banner .page-width-inner-half .pb-blurb { padding-right: 30px !important; }
#prepaid-banner .font-size-36 { line-height: 1.2em !important; margin-left: 5px !important; }
@media only screen and (max-width: 1200px) {
	#prepaid-banner .pxc-empty img { height: 250px; }
	#prepaid-banner p.pp-t { padding-top: 10px; }
}
@media only screen and (max-width: 900px) {
	#prepaid-banner .pxc-empty img { height: 200px; }
	#prepaid-banner p.pp-t { padding-top: 0; }
	#prepaid-banner .pxc-empty { width: 48%; }
	#prepaid-banner .pb-blurb-cell { width: 52%; }
}
@media only print, only screen and (max-width: 767px) {
	#prepaid-banner .pxc-empty img { height: 150px; }
	#prepaid-banner { background-position: -125px top; page-break-before: always; }
	#prepaid-banner p.pp-t { padding-top: 0; }
	#prepaid-banner .font-size-36 { margin-left: 0 !important; font-size: 1.25em; }
	#prepaid-banner .pxc-empty { width: 45%; }
	#prepaid-banner .pb-blurb-cell { width: 55%; }
}
@media only screen and (max-width: 640px) {
	#prepaid-banner .font-size-36.pp-l { padding-left: 0 !important; line-height: 1.1em !important; }
	#prepaid-banner .page-width-inner-half .pb-blurb { padding: 20px !important; }
	#prepaid-banner .vbtn { margin-bottom: 30px; }
	#prepaid-banner .pxc-2col.pxc-sub, #prepaid-banner .pxc-2col.pxc-sub .pxc-tr { display: block !important; }
	#prepaid-banner .pxc-2col.pxc-sub, #prepaid-banner .pxc-td { display: block !important; width: 100% !important; height: auto !important; vertical-align: top; text-align: left; padding-left: 0 !important; padding-right: 0 !important; }
	#prepaid-banner .pxc-td, #prepaid-banner .pxc-tr { height: auto !important; }
	#prepaid-banner img.shrinkable { max-width: 240px; }
	#prepaid-banner .pxc-empty { display: none !important; }
	#prepaid-banner { background-position: left top; }
}
@media only screen and (max-width: 560px) {
	#prepaid-banner .vbtn { margin-bottom: 0; }
	#prepaid-banner img.shrinkable { max-width: 200px; }
	#prepaid-banner { background-position: 35px top; color: #555; }
	#prepaid-banner .page-width-inner-half { padding: 0; }
	#prepaid-banner br { display: none; }
	#prepaid-banner .font-size-36 { padding-top: 10px; }
}
@media only screen and (max-width: 400px) {
	#prepaid-banner { background-image: none; }
	#prepaid-banner .pxc-td { text-align: center !important; }
}

/* ///// no javascript error ////////////////////////////////////////////////////////// */
.no-js .pci-js { display: block !important; }


/* ///// print basics ///////////////////////////////////////////////////////////////// */
.print-only { display: none; }
@media print {
	/* items to show only on print */
	.print-only { display: block; }
	/* items to hide on print */
	.screen-only { display: none !important; }

	/* adjust colors for print */
	html, body {
		background: #fff !important;
		color: #333 !important;
		font-size: 12px !important;/* this shrinks all fonts that use em */
	}

	/* shrink images to fit on the page */
	img { max-width: 100% !important; }

	/* set print margins */
	@page { margin: 0.5in; }

	/* when modals are open */
	.modal-open .breadcrumb,
	.modal-open #header,
	.modal-open #footer,
	.modal-open .slice,
	.modal-open .modal-backdrop { display: none; }
	.modal-open { overflow: visible; }
	.modal-open .modal { position: relative; overflow: visible; }
	.modal-content { border: 1px solid #ddd; border-top: 0; -webkit-box-shadow: none !important; box-shadow: none !important; }
}