@charset "UTF-8";
/* Hide direct footer ul tags on mobile, show only on desktop/tablet */
@media (max-width: 768px) {
	.links>ul:not(#forie) {
		display: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.footer-acc-panel ul {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}
}

@media (min-width: 769px) {
	.links>ul:not(#forie) {
		display: flex !important;
		flex-direction: column;
	}
}

/* --- FOOTER ACCORDION STYLES (from _footer.scss) --- */
.footer-accordion {
	display: none;
}

.footer-columns {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 2rem;
}

@media (max-width: 768px) {
	.footer-columns {
		display: none !important;
	}

	.footer-accordion {
		display: block !important;
	}
}

@media (min-width: 769px) {
	.footer-accordion {
		display: none !important;
	}

	.footer-columns {
		display: flex !important;
	}
}

@media (max-width: 768px) {
	.footer-acc-item {
		border-bottom: 1px solid #333;
	}

	.footer-acc-btn {
		width: 100%;
		background: none;
		border: none;
		color: #fff;
		text-align: left;
		padding: 1rem 2.2rem 1rem 0;
		/* right padding for icon space */
		font-size: 1rem;
		font-weight: 600;
		cursor: pointer;
		position: relative;
		transition: color 0.3s;
		line-height: 1.4;
		display: flex;
		align-items: center;
		min-height: 2.5rem;
		word-break: break-word;
	}

	.footer-acc-btn[aria-expanded="true"] {
		color: #d4523f;
	}

	.footer-acc-btn::after {
		content: '\25BC';
		position: absolute;
		right: 0.5rem;
		top: 50%;
		transform: translateY(-50%) rotate(0deg);
		transition: transform 0.3s;
		font-size: 1.2rem;
		color: #fff;
		pointer-events: none;
	}

	.footer-acc-btn[aria-expanded="true"]::after {
		transform: translateY(-50%) rotate(-180deg);
	}

	.footer-acc-panel {
		display: none;
		padding-bottom: 1rem;
		background: none;
	}

	.footer-acc-panel.open {
		display: block;
	}

	.footer-acc-panel ul {
		padding-left: 0;
		margin: 0;
	}

	.footer-acc-panel ul li {
		font-size: 1rem;
		color: #ccc;
		line-height: 1.5;
		padding: 0.2rem 0;
	}
}

@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700);

body,
h2,
h3,
input,
li,
option,
p,
td {
	font-family: 'Open Sans', sans-serif
}

nav ul,
nav ul li {
	position: relative
}

.modal,
header {
	top: 0;
	width: 100%
}

.header-image,
header,
nav ul,
section {
	max-width: 1350px
}

.close-search,
.dealer-col-3 div img {
	vertical-align: middle
}

#myBtn,
nav li.search button:focus {
	outline: 0
}

div.clear,
p.toggle,
section.carousel {
	clear: both
}

footer ul,
nav ul,
nav ul ul {
	list-style: none
}

@font-face {
	font-family: dearjoe4;
	src: url(../fonts/dJ4TRIAL.ttf)
}

body {
	background-color: #333132;
	margin: 0 auto;
	font-size: 1rem;
	line-height: 155%
}

a {
	text-decoration: none
}

a:hover {
	text-decoration: underline
}

.XS {
	font-size: .5em
}

.S {
	font-size: .75em
}

.M {
	font-size: 1em
}

.L {
	font-size: 1.25em
}

.XL {
	font-size: 2em;
	font-weight: normal;
}

.XXL {
	font-size: 4vw;
	line-height: 1
}

h2,
h3 {
	font-weight: 400;
	color: #333132
}

h4 {
	line-height: 140%;
	font-weight: 400;
	color: #333132;
	font-size: 1.25rem;
}

.black h2 {
	color: #ffffff;
}

nav ul a,
nav ul a:hover,
nav ul span {
	padding-bottom: 4px;
	line-height: 100%;
	text-decoration: none
}

.general-content-white h2 {
	margin-bottom: 0;
	padding-bottom: 0
}

.highlight {
	color: #62BB46
}

.close,
nav span,
nav ul a,
nav ul a:hover,
nav ul a:visited {
	color: #fff
}

h1.left,
h2.left,
h3.left {
	text-align: left !important;
	margin-left: 40px;
	margin-right: 40px
}

input,
select,
textarea {
	padding: 6px;
	border: 1px solid #b7b7b7;
	border-radius: 4px;
	width: 100%
}

input:focus,
select:focus,
textarea:focus {
	box-shadow: 0 0 10px rgba(0, 0, 0, .3);
	outline: 0;
}

input[type=checkbox],
input[type=radio] {
	width: 16px;
}

select {
	height: 32px;
	padding: 6px 10px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

option:hover {
	background-color: #d5d5d5
}

.floatR {
	float: right;
	margin-left: 15px
}

.floatL {
	float: left;
	margin-right: 15px;
	margin-left: 80px
}

img.twenty-five-percent {
	width: 25%;
	height: auto
}

img.thirty-three-percent {
	width: 33%;
	height: auto
}

img.fifty-percent {
	width: 50%;
	height: auto
}

img.seventy-five-percent {
	width: 75%;
	height: auto
}

img.hundred-percent {
	width: 100%;
	height: auto
}

header {
	background: rgba(0, 0, 0, 0);
	/*height:120px;*/
	height: 90px;
	left: 50%;
	/* overflow: hidden; */
	position: fixed;
	transform: translateX(-50%);
	transition: background .5s;
	z-index: 99999999
}

header.AZ {
	height: 155px
}

nav ul {
	margin: 36px auto 0;
	float: left;
	text-align: center;
	padding: 0;
	left: 6%
}

nav .topnav li.icon {
	display: none
}

nav ul li {
	float: left;
	padding: 0 10px;
	display: inline
}

nav ul a,
nav ul span {
	display: block;
	margin: 5px;
	border-bottom: 2px solid transparent
}

nav ul a:hover {
	border-bottom: 2px solid #fff;
	text-decoration-skip-ink: auto
}

nav ul ul {
	position: absolute;
	left: -9999px;
	text-align: left
}

nav ul ul li {
	float: left;
	line-height: 80%
}

nav ul ul a {
	white-space: nowrap;
	padding: 0
}

nav ul li:hover ul {
	left: 0;
	padding-left: 0;
	margin-top: -3px;
	background: rgba(0, 0, 0, 0.3);
}

nav ul li:hover li a {
	text-decoration: none;
	padding-bottom: 2px;
	border-bottom: 2px solid rgba(0, 0, 0, .01)
}

nav ul li:hover ul a:hover {
	border-bottom: 2px solid #fff;
	text-decoration: none
}

nav .logo img {
	float: right;
	margin-right: 50px;
	margin-top: 38px
}

@media screen and (min-width:801px) and (max-width:1283px) {
	nav li.portal {
		display: none
	}
}

@media screen and (min-width:801px) and (max-width:1150px) {
	nav li.support {
		display: none
	}
}

@media screen and (min-width:801px) and (max-width:975px) {
	nav li.quote {
		display: none
	}
}

@media screen and (max-width:1200px) {
	header {
		padding-bottom: 1.25rem
	}
}

nav li.search button {
	background-color: rgba(0, 0, 0, .01);
	cursor: pointer
}

nav li span {
	cursor: pointer
}

.modal {
	display: none;
	position: fixed;
	z-index: 1;
	padding-top: 100px;
	left: 0;
	height: 100%;
	overflow: auto;
	background-color: #000;
	background-color: rgba(0, 0, 0, .8)
}

.modal-content {
	position: relative;
	background: rgba(0, 0, 0, .5);
	margin: auto;
	padding: 0;
	border: 1px solid #888;
	width: 50%;
	top: 20%;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .2), 0 6px 20px 0 rgba(0, 0, 0, .19);
	-webkit-animation-name: animatetop;
	-webkit-animation-duration: .4s;
	animation-name: animatetop;
	animation-duration: .4s
}

#gcs {
	top: 30px
}

.gsc-input-box,
.gsc-input-box-focus,
.gsc-input-box-hover,
.input.gsc-input {
	border: none !important
}

.close-search {
	position: absolute;
	top: -5px;
	font-weight: 700;
	left: 238px;
	color: #fff;
	background-color: #000;
	border-radius: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 75px;
	height: 33px;
	padding: 0;
	cursor: pointer;
	border: none
}

.gsc-search-button {
	margin-left: 0 !important;
	padding: 6px 12px
}

.gsc-search-button-v2 {
	background-color: #fff !important;
	border: none !important;
	margin-top: 0 !important;
	margin-left: -12px !important;
	border-radius: 0 !important;
	padding: 6px 12px !important;
	cursor: pointer;
}

.gsc-search-button-v2 svg {
	fill: #000 !important
}

.gsib_a {
	padding: 3px 8px !important
}

.modal-body,
.modal-footer,
.modal-header {
	padding: 2px 16px
}

.gsib_a input {
	background: 0 0 !important
}

@media screen and (max-width:920px) {
	nav ul {
		left: auto
	}
}

@-webkit-keyframes animatetop {
	from {
		top: -300px;
		opacity: 0
	}

	to {
		top: 0;
		opacity: 1
	}
}

@keyframes animatetop {
	from {
		top: -300px;
		opacity: 0
	}

	to {
		top: 0;
		opacity: 1
	}
}

.nbs-flexisel-nav-left.disabled,
.nbs-flexisel-nav-right.disabled {
	opacity: .4
}

.close {
	float: right;
	font-size: 28px;
	font-weight: 700
}

.close:focus,
.close:hover {
	color: #000;
	text-decoration: none;
	cursor: pointer
}

.modal-header {
	color: #fff
}

.modal-footer {
	color: #fff
}

.search-results {
	margin: 0 40px
}

.gsc-control-cse .gs-result .gs-title * {
	line-height: normal !important
}

.header-image {
	background-color: #000;
	background-size: cover;
	color: #fff;
	text-align: center;
	z-index: 300;
	margin-top: -70px;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	background-blend-mode: overlay;
}

.faux-banner p,
.header-image h1 {
	font-family: dearjoe4, 'Open Sans', sans-serif;
	padding: 19% 0;
	margin-bottom: 0;
	font-weight: 300;
	text-shadow: 1px 1px #9d9fa2;
	font-size: 50px;
	line-height: 50px
}

section.careers {
	background-image: url(../images/banners/careers.jpg)
}

section.AZ-6000-windows,
section.cascade-windows {
	/* background-image: url(../images/banners/cascade-windows.jpg) */
}

section.AZ-7000-windows,
section.winpro-windows {
	background-image: url(../images/banners/winpro-windows.jpg)
}

section.AZ-4250-windows {
	background-image: url(../images/banners/cascade-windows-AZ.jpg)
}

section.about {
	background-image: url(../images/banners/about.jpg)
}

section.service {
	background-image: url(../images/banners/service.jpg)
}

section.dealer-portal {
	background-image: url(../images/banners/dealer-portal.jpg)
}

section.care-maintenance {
	background-image: url(../images/banners/care-maintenance.jpg)
}

section.budget {
	background-image: url(../images/banners/budget.jpg)
}

section.contact {
	background-image: url(../images/banners/contact.jpg)
}

section.warranty {
	background-image: url(../images/banners/warranty.jpg)
}

section.quote {
	background-image: url(../images/banners/quote.jpg)
}

section.sustainability2 {
	background-image: url(../images/banners/sustainability.jpg)
}

section.brochures {
	background-image: url(../images/banners/brochures.jpg);
	background-blend-mode: lighten
}

section.folding-doors {
	background-image: url(../images/banners/folding-doors.jpg)
}

section.folding-windows {
	background-image: url(../images/banners/folding-windows.jpg)
}

section.ideas {
	background-image: url(../images/banners/ideas-planning.jpg)
}

section.patio-doors {
	background-image: url(../images/banners/patio-doors.jpg)
}

section.corner-doors {
	background-image: url(../images/banners/corner-door.jpg)
}

section.swing-doors {
	background-image: url(../images/banners/swing-door.jpg)
}

section.media {
	background-image: url(../images/banners/media.jpg)
}

section.find-dealer {
	background-image: url(../images/banners/find-dealer.jpg)
}

section.visualization {
	background-image: url(../images/banners/visualization-center.jpg)
}

section.gallery {
	background-image: url(../images/banners/gallery.jpg)
}

section.multi-slide-doors {
	background-image: url(../images/banners/multi-slide-door.jpg)
}

section.cap-stock {
	background-image: url(../images/banners/cap-stock-2019.jpg)
}

section.how-to-instructions {
	background-image: url("../images/banners/how-to-instructions.jpg")
}

.faux-banner {
	background-image: url(../images/banners/blank.png);
	text-align: center
}

.faux-banner p {
	padding: 17% 0
}

.fixed-header-image .header-image {
	position: fixed;
	left: 0;
	margin-left: 0;
	z-index: 1001
}

@media (min-width:1350px) {
	.fixed-header-image .header-image {
		left: 50%;
		margin-left: -675px
	}
}

.fixed-header-image .scrollable-content {
	position: relative;
	z-index: 1002
}

@media (max-width:800px) {
	section.careers {
		background-image: url(../images/banners/careers-mobile.jpg)
	}

	section.AZ-6000-windows,
	section.cascade-windows {
		/* background-image: url(../images/banners/cascade-windows-mobile.jpg) */
	}

	section.AZ-7000-windows,
	section.winpro-windows {
		background-image: url(../images/banners/winpro-windows-mobile.jpg)
	}

	section.AZ-4250-windows {
		background-image: url(../images/banners/cascade-windows-AZ-mobile.jpg)
	}

	section.about {
		background-image: url(../images/banners/about-mobile.jpg)
	}

	section.service {
		background-image: url(../images/banners/service-mobile.jpg)
	}

	section.dealer-portal {
		background-image: url(../images/banners/dealer-portal-mobile.jpg)
	}

	section.care-maintenance {
		background-image: url(../images/banners/care-maintenance-mobile.jpg)
	}

	section.budget {
		background-image: url(../images/banners/budget-mobile.jpg)
	}

	section.contact {
		background-image: url(../images/banners/contact-mobile.jpg)
	}

	section.warranty {
		background-image: url(../images/banners/warranty-mobile.jpg) !important
	}

	section.quote {
		background-image: url(../images/banners/quote-mobile.jpg)
	}

	section.sustainability2 {
		background-image: url(../images/banners/sustainability-mobile.jpg)
	}

	section.brochures {
		background-image: url(../images/banners/brochures-mobile.jpg)
	}

	section.folding-doors {
		background-image: url(../images/banners/folding-doors-mobile.jpg)
	}

	section.ideas {
		background-image: url(../images/banners/ideas-planning-mobile.jpg)
	}

	section.patio-doors {
		background-image: url(../images/banners/patio-doors-mobile.jpg)
	}

	section.swing-doors {
		background-image: url(../images/banners/swing-doors-mobile.jpg)
	}

	section.corner-doors {
		background-image: url(../images/banners/corner-doors-mobile.jpg)
	}

	section.multi-slide-doors {
		background-image: url("../images/banners/multi-slide-door-mobile.jpg")
	}

	section.folding-doors {
		background-image: url("../images/banners/folding-doors-mobile.jpg")
	}

	section.folding-windows {
		background-image: url("../images/banners/folding-windows-mobile.jpg")
	}

	section.media {
		background-image: url(../images/banners/media-mobile.jpg)
	}

	section.find-dealer {
		background-image: url(../images/banners/find-dealer-mobile.jpg)
	}

	section.visualization {
		background-image: url(../images/banners/visualization-center-mobile.jpg)
	}

	section.gallery {
		background-image: url(../images/banners/gallery-mobile.jpg)
	}

	section.multi-slide-doors {
		background-image: url(../images/banners/multi-slide-door-mobile.jpg)
	}

	section.how-to-instructions {
		background-image: url("../images/banners/how-to-instructions-mobile.jpg")
	}
}

a.button,
button,
button.green {
	background-color: #62BB46;
	border: none;
	color: #fff !important;
	padding: 6px 10px;
	text-transform: uppercase;
	height: 30px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	font-size: 16px
}

#ot-sdk-btn.ot-sdk-show-settings,
#ot-sdk-btn.optanon-show-settings {
	font-family: 'Open Sans', sans-serif;
	text-transform: none !important;
	font-size: 1em !important;
	background-color: transparent;
}

nav ul ul button.footer-cookies {}

a.button:hover {
	background-color: #a7a9ac;
	text-decoration: none
}

section.black,
section.black2 {
	background-color: #000;
	text-align: center;
	color: #fff
}

section.black {
	padding: 30px 0
}

section.black2 {
	padding: 5px 0 20px
}

.home-color-dropdown {
	display: none
}

section.green {
	background-color: #62BB46;
	width: 100%
}

section.home-image-1,
section.home-image-2,
section.home-image-3 {
	background-color: #000;
	text-align: center
}

section {
	margin: 0 auto;
	width: 100%;
	display: block
}

section.home-image-1 {
	background-color: #000;
	background-size: 100% 100%;
	color: #fff;
	z-index: 300;
	margin-top: 0;
	position: relative;
	text-align: center
}

img.window-overlay {
	width: 35%;
	height: auto;
	padding-top: 5%;
	border: none !important;
	box-shadow: none !important;
	-webkit-border-after: none !important;
	-webkit-border-before: none !important;
	border-image: none !important;
	-webkit-border-image: none !important;
}

.home-image-1 img.state-icon {
	height: 2%;
	width: auto;
	margin-bottom: 2% !important;
	margin-top: 1%
}

.home-image-1 p {
	line-height: 10px;
	margin: 0;
	padding: 0
}

section.home-image-2 {
	color: #fff
}

.home-image-2 img {
	height: auto;
	width: 100%;
	margin: 0
}

section.home-image-3 {
	background-size: 100% 100%;
	height: 100%
}

.door-overlay {
	height: auto;
	margin-bottom: 6%;
	margin-top: 6%;
	width: 69%;
}

.colors {
	margin: 0 auto;
	text-align: center;
	width: 80%;
	overflow: hidden
}

/*.colors img{border-bottom:2px solid transparent;float:left;width:7%;height:auto;padding-bottom:5px}*/
.colors img {
	border-bottom: 2px solid transparent;
	float: left;
	width: 33%;
	height: 27px;
	padding-bottom: 5px
}

.colors img:hover,
.iconbar p a:hover {
	border-bottom: 2px solid #fff
}

.iconbar {
	background-color: #62BB46;
	color: #fff;
	text-align: center;
	padding: 4px 0
}

.iconbar-wrapper {
	flex-wrap: wrap;
	display: flex;
	width: 70%;
	margin: 20px auto 0
}

.iconbar-wrapper div {
	width: 16.6%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
}

.iconbar p {
	margin-top: 0
}

.iconbar a,
.iconbar a:hover,
.iconbar a:visited {
	color: #fff;
	text-decoration: none
}

.iconbar p a:hover {
	padding-top: 5px
}

section.sustainability {
	background-color: #000;
	color: #fff;
	background-image: url(../images/sustainability-bg.jpg);
	background-size: 100% 100%;
	overflow: hidden
}

section.sustainability p {
	font-size: 4vw;
	text-align: center;
	padding: 23% 0;
	width: 100%;
	font-weight: 400
}

section.sustainability a {
	color: #fff;
	text-decoration: none;
	display: inline-block;
	line-height: 100%;
	border-bottom: 3px solid rgba(0, 0, 0, .01);
	padding-bottom: 3px
}

section.sustainability a:hover {
	color: #fff;
	border-bottom: 3px solid #fff
}

@media (max-width:800px) {
	section.sustainability {
		background-image: url(../images/sustainability-bg-mobile.jpg) !important
	}

	.general-content-gray ul,
	.general-content-gray li {
		/* width: 100%; */
	}
}

@media (min-width:1320px) {
	section.sustainability p {
		font-size: 3.75rem
	}
}

section.general-content-white {
	background-color: #fff;
	color: #808285;
	line-height: 35px;
	width: 100%;
	padding: 40px 0;
}

section.general-content-black {
	background-color: #000;
	color: #fff;
	width: 100%;
	padding: 30px 0
}

section.general-content-gray {
	background-color: #F3F4F4;
	color: #808285;
	line-height: 35px;
	width: 100%;
	padding: 40px 0
}

section.general-content-gray2 {
	background-color: #58595b;
	color: #fff;
	line-height: 35px;
	padding: 40px 0
}

section.general-content-gray3 {
	background-color: #4d4d4f;
	color: #fff;
	line-height: 35px;
	padding: 40px 0
}

section.general-content-green {
	background-color: #62BB46;
	color: #fff;
	line-height: 35px;
	padding: 40px 0
}

.general-content-white>h1,
.general-content-white>h2,
.general-content-white>h3,
.general-content-white>h4 {
	font-weight: 400;
	color: #333132;
	margin-left: 10%
}

.general-content-green h1,
.general-content-green h2,
.general-content-green h3,
.general-content-green h4 {
	font-weight: 400;
	color: #fff
}

.general-content-gray h1,
.general-content-gray>h2,
.general-content-gray>h3,
.general-content-gray>h4 {
	font-weight: 400;
	color: #333132;
	margin-left: 10%
}

.general-content-gray2 h1,
.general-content-gray2 h2,
.general-content-gray2 h3,
.general-content-gray2 h4 {
	font-weight: 400;
	margin-left: 10%;
	color: #fff
}

.general-content-black h1,
.general-content-black h2,
.general-content-black h3,
.general-content-black h4,
.general-content-gray3 h1,
.general-content-gray3 h2,
.general-content-gray3 h3,
.general-content-gray3 h4 {
	text-align: center;
	font-weight: 400;
	color: #fff
}

.general-content-gray2>p,
.general-content-gray3>p,
.general-content-gray>p,
.general-content-green>p,
.general-content-white>p {
	margin-left: 10%;
	margin-right: 10%
}

p.centered {
	text-align: center
}

h2.centered,
h3.centered {
	text-align: center;
	margin-left: 0
}

.general-content-white img.full-screen {
	width: 100%
}

.general-content-gray a,
.general-content-white a {
	color: #000
}

.general-content-gray3 a {
	color: #FFF
}

.general-content-gray3>ul,
.general-content-gray>ul,
.general-content-white>ul {
	line-height: 22px;
	margin: 20px 10% 10px;
	list-style: none;
	/* width: 100%; */
}

.general-content-gray li,
.general-content-white li {
	list-style-image: url(../images/bullet.png);
	margin-bottom: 10px;
	width: 100%;
}

.general-content-gray2 ol {
	margin-left: 10%;
	margin-right: 10%
}

li.nbs-flexisel-item {
	list-style-image: none !important
}

.bullets-red,
ul.red li {
	list-style-image: url(../images/bullet-red.png)
}

.general-content-gray li {
	margin-bottom: 13px
}

h2.left {
	text-align: left
}

a,
a:hover.green,
a:visited.green,
h2.green,
p.green,
span.green {
	color: #62BB46
}

h2.red {
	color: #d2232a
}

table.stain-guide {
	margin: 20px auto
}

.stain-guide td {
	padding: 5px 10px
}

.stain-guide tr.header {
	background-color: #838282;
	color: #fff;
	font-weight: 700
}

.stain-guide tr.highlight {
	background-color: #a1c07d;
	color: #fff
}

div.three-col,
div.four-col {
	display: flex;
	flex-flow: row;
	justify-content: space-evenly;
	margin-left: 10%;
	margin-right: 10%
}

div.three-col div {
	width: 33%;
}

div.four-col div {
	width: 25%
}

div.five-col {
	display: flex;
	flex-flow: row;
	justify-content: space-evenly
}

.floatR img.centered,
.water-management img {
	display: block
}

div.five-col div {
	width: 20%
}

div.two-col-a {
	float: left;
	width: 35%;
	margin: 0 5% 0 10%
}

div.two-col-b {
	float: left;
	width: 35%;
	margin: 0 10% 0 5%
}

div.two-col-a p,
div.two-col-a ul {
	padding-right: 40px
}

div.col-one-percent {
	float: left;
	width: 1%;
}

div.col-ten-percent {
	float: left;
	width: 10%;
}

div.col-fifteen-percent {
	float: left;
	width: 15%;
}

div.col-twenty-percent {
	float: left;
	width: 20%
}

div.col-twenty-five-percent {
	float: left;
	width: 25%
}

div.col-thirty-percent {
	float: left;
	width: 30%
}

div.col-thirty-three-percent {
	float: left;
	width: 33.3%
}

div.col-fourty-percent {
	float: left;
	width: 40%
}

div.col-fourtyfive-percent {
	float: left;
	width: 45%
}

div.col-fourty-seven-percent {
	float: left;
	width: 47%
}

div.col-fourty-nine-percent {
	float: left;
	width: 49%
}

div.col-fifty-percent {
	float: left;
	width: 50%
}

div.col-sixty-percent {
	float: left;
	width: 60%
}

div.col-seventy-percent {
	float: left;
	width: 70%
}

div.col-eighty-percent {
	float: left;
	width: 80%
}

div.col-ninty-percent {
	float: left;
	width: 90%
}

div.col-one-hundred-percent {
	float: left;
	width: 100%
}

.ten-percent {
	width: 10%
}

.twenty-five-percent {
	width: 25%
}

.thirty-percent {
	width: 30%
}

.fourty-percent {
	width: 40%
}

.fourtyfive-percent {
	width: 45%
}

.fifty-percent {
	width: 50%
}

.sixty-percent {
	width: 60%
}

.seventy-percent {
	width: 70%
}

.eighty-percent {
	width: 80%
}

.eighty-five-percent {
	width: 85%
}

.ninety-percent {
	width: 90%
}

.float-none {
	float: none;
}

div.centered,
img.centered {
	margin-left: auto;
	margin-right: auto
}

.sliding-patio-door-roller-adjustment {
	background-size: cover;
	background-image: url(../images/support/Sliding-Patio-Door-Roller-Adjustment.jpg);
	margin-top: -40px
}

.frame-care {
	background-size: cover;
	background-image: url(../images/support/frame-care.jpg);
	overflow: auto;
	margin-bottom: -40px
}

.patio-door-adjustment {
	width: 80%;
	margin: 0 auto
}

.patio-door-adjustment div:nth-child(2) {
	margin-left: 10%
}

.patio-door-adjustment h2 {
	padding-top: 0;
	margin-top: 0
}

.frame-care p,
.sliding-patio-door-roller-adjustment p {
	padding: 25% 2% 1% 0;
	margin-right: 0;
	float: right;
	color: #000
}

.sliding-patio-door-roller-adjustment p {
	width: 30%
}

.main-animation {
	width: 80%;
}

.frame-care p {
	width: 15%
}

.water-management {
	margin-right: 80px;
	float: right;
	width: 30%;
	margin-left: 20px
}

.nbs-flexisel-item,
.nbs-flexisel-ul {
	margin: 0;
	padding: 0;
	position: relative
}

.caption-center,
.caption-left,
.caption-right {
	color: #000;
	line-height: 20px;
	font-size: .75em
}

.caption-right {
	text-align: right
}

.caption-left {
	margin-left: 0;
	margin-right: 0;
	text-align: left
}

.caption-center,
.nbs-flexisel-ul {
	text-align: center
}

div.carousel {
	overflow: auto;
	clear: both
}

#flexiselDemo1,
#flexiselDemo2,
#flexiselDemo3 {
	display: none
}

.nbs-flexisel-container {
	position: relative;
	max-width: 100%
}

.nbs-flexisel-ul {
	width: 99999px;
	list-style-type: none;
	overflow: hidden
}

.nbs-flexisel-inner {
	position: relative;
	overflow: hidden;
	/* float: left; */
	width: 100%
}

.nbs-flexisel-item {
	float: left;
	cursor: pointer;
	line-height: 0
}

.nbs-flexisel-item img {
	max-width: 100%;
	cursor: pointer;
	position: relative
}

.nbs-flexisel-nav-left,
.nbs-flexisel-nav-right {
	padding: 5px 10px;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	position: absolute;
	cursor: pointer;
	z-index: 4;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(0, 0, 0, .5);
	color: #fff;
	line-height: 19px;
}

.nbs-flexisel-nav-left {
	left: 10px
}

.nbs-flexisel-nav-left:before {
	content: "<"
}

.nbs-flexisel-nav-right {
	right: 5px
}

.nbs-flexisel-nav-right:before {
	content: ">"
}

/*section.{background-color:#000; margin:0 auto; border-top:1px solid #000; padding:40px 0; overflow:hidden;}*/
.search-criterea {
	margin: 20px auto;
	width: 80%;
	overflow: hidden
}

.search-criterea h2 {
	color: #fff;
	float: left;
	margin-right: 20px;
	text-align: left;
	width: 38%;
	margin-top: 0;
	font-weight: 400
}

#my-location {
	cursor: pointer;
}

.search-criterea .search-form {
	float: right;
	width: 55%
}

.search-criterea .search-form input {
	width: 52%;
	float: left;
	padding: 4.5px
}

.search-criterea .search-form img {
	float: left;
	margin-left: -29px;
	background-color: #62BB46;
	border-radius: 4px;
	padding: 6.5px;
	height: 16px;
	cursor: pointer;
}

.search-criterea button.location {
	float: right;
	width: 40%;
	height: auto;
	padding: 4px 20px
}

.search-criterea button span.location-words {
	visibility: visible
}

.search-criterea button span.location-arrow {
	visibility: hidden
}

.dealer-list::-webkit-scrollbar {
	-webkit-appearance: none;
	width: 10px
}

.dealer-list::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background-color: rgba(0, 0, 0, .5);
	-webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5)
}

div.dealer-search-results {
	background-color: #fff;
	border-radius: 10px;
	-moz-border-radius: 10px;
	margin: 0 auto 20px;
	overflow: hidden;
	width: 80%
}

.dealer-list {
	float: left;
	width: 50%;
	margin: 5px 1% 0;
	overflow-y: scroll;
	height: 400px
}

.dealer-list-long {
	float: left;
	width: 43%;
	margin: 5px 1% 0;
	overflow: visible
}

.dealer-info {
	border-bottom: 4px solid #BCBEC0;
	overflow: auto;
	margin-left: 31px
}

.dealer-col-1 {
	width: 8%;
	margin-top: 10px;
	float: left;
	padding-bottom: 5px;
	margin-bottom: 5px
}

.dealer-col-1 p {
	background-color: #41AD49;
	line-height: 24px;
	height: 24px;
	width: 24px;
	text-align: center;
	border-radius: 12px;
	font-weight: 700;
	margin: 5px 0 0
}

.dealer-col-2 {
	float: left;
	width: 60%;
	margin-bottom: 5px
}

.dealer-col-2 p {
	line-height: 100%
}

.dealer-name {
	color: #41AD49;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 1.25em;
	margin-left: 8%;
	margin-bottom: 0
}

.dealer-search-results a,
.dealer-search-results a:hover,
.dealer-search-results a:visited {
	color: #000
}

.dealer-col-2 span.green {
	color: #41AD49;
	font-weight: 700
}

.dealer-phone a {
	color: #41AD49
}

p.dealer-quote-profile-website {
	font-weight: 700
}

.dealer-col-3 {
	float: left;
	width: 36%;
	margin-top: 6px
}

.dealer-map {
	float: right;
	width: 47%
}

.dealer-map img {
	height: auto;
	width: 100%
}

#dealer_list .dealer {
	display: block;
	margin-bottom: 10px
}

#dealer_list .dealer .dealer_name {
	color: #000;
	display: block;
	font-weight: 700
}

#dealer_list .dealer .dealer_addr1,
#dealer_list .dealer .dealer_addr2 {
	color: #999;
	display: block
}

#dealer_list .dealer .dealer_phone {
	color: #999;
	display: block;
	font-weight: 700
}

#dealer_list .dealer .dealer_phone:before {
	color: #000;
	content: "Phone: ";
	font-weight: 700
}

#dealer_list .dealer .dealer_email {
	color: #999;
	display: block;
	font-weight: 700
}

#dealer_list .dealer .dealer_email:before {
	color: #000;
	content: "Email: ";
	font-weight: 700
}

#dealer_list .dealer .dealer_fax {
	color: #999;
	display: block;
	font-weight: 700
}

#dealer_list .dealer .dealer_fax:before {
	color: #000;
	content: "Fax: ";
	font-weight: 700
}

#dealer_list .dealer .dealer_website {
	color: #999;
	display: block
}

#myBtn {
	background-color: #a9a9a9;
	border: none;
	border-radius: 35px;
	bottom: 20px;
	color: #fff;
	cursor: pointer;
	display: none;
	font-size: 100%;
	padding: 0;
	position: fixed;
	right: 30px;
	z-index: 99;
	height: auto;
	line-height: 11px
}

#myBtn:hover {
	background-color: #555
}

.field.required .label:after {
	content: "*";
	font-weight: 700
}

.field>.data {
	display: block;
	padding-right: 2rem;
	margin-bottom: 1.5rem
}

.one-column>.field {
	float: left;
	width: 100%
}

.two-columns>.field {
	float: left;
	width: 50%
}

.two-columns>.field.large {
	width: 100%
}

.two-columns>.field.small:not(:only-child) {
	width: 25%
}

.two-columns>.field.large:not(:only-child) {
	width: 75%
}

.three-columns>.field {
	float: left;
	width: 33.3%
}

.three-columns>.field.large {
	width: 100%
}

.three-columns>.field.large:not(:only-child) {
	width: 66.6%
}

@media (max-width:640px) {
	.field {
		width: 100% !important
	}
}

@media (max-width:960px) {
	.two-columns>.field.small:not(:only-child) {
		width: 33.3%
	}

	.two-columns>.field.large:not(:only-child) {
		width: 66.6%
	}

	.three-columns>.field {
		float: left;
		width: 50%
	}

	.three-columns>.field.large:not(:only-child),
	.three-columns>.field.small:not(:only-child) {
		width: 100%
	}
}

.general-content-white form {
	margin-left: 40px;
	margin-right: 40px;
	color: #808285
}

.general-content-white option {
	color: #808285
}

form.brochures,
form.service-request,
form.subscribed {
	width: 50%;
	margin: 0 auto
}

.brochures label {
	width: 100%;
	display: block
}

.brochures input[type=text],
.brochures select {
	width: 100%
}

.brochures label.checkbox {
	display: inline
}

form.request-quote-form {
	width: 50%;
	margin: 0 auto
}

.general-content-white form h3 {
	text-align: left
}

.vinyl-colors h2,
.window-locks,
div.vinyl-colors h3 {
	text-align: center
}

label.error {
	color: red;
	font-size: .75em
}

fieldset {
	display: flex;
	justify-content: space-evenly
}

fieldset.dual-field div {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start
}

fieldset.quad-field div {
	width: 25%
}

form#contactform {
	width: 50%;
	margin: 0 auto
}

input.contact-checkbox {
	margin-left: 20px
}

input.input-checkbox,
input.input-radio {
	display: inline;
	width: auto;
	margin-top: 10px;
	margin-right: 10px
}

input.second-input {
	margin-left: 50px
}

.general-content-white form p {
	margin-left: 0
}

img.product-window {
	margin: 30px auto;
	display: block;
	width: 40%;
	height: auto
}

#interior-window-colors div.vinyl-colors {
	display: flex;
	flex-flow: row;
	justify-content: space-evenly;
	width: 50%;
	margin: 30px auto 60px
}

#interior-window-colors div.vinyl-colors div {
	width: 40%;
	height: auto;
	text-align: center;
	margin: 0 12px
}

#interior-window-colors div.vinyl-colors div img {
	width: 100%;
	height: 80%;
	cursor: pointer;
	margin: 0;
	padding: 0
}

.paint-colors img,
.vinyl-colors img {
	border: 2px solid transparent;
	padding: 2px
}

.paint-colors img:hover,
.vinyl-colors img:hover {
	border: 2px solid #DCDDDE !important
}

.paint-colors img.selected,
.vinyl-colors img.selected {
	border: 2px solid #DCDDDE
}

.vinyl-colors-2 {
	width: 30%;
	margin: 0 auto
}

.vinyl-colors-2 img {
	width: 90%
}

#door-colors,
#exterior-window-colors {
	width: 60%;
	margin: auto;
	height: auto
}

#exterior-window-colors ul,
#folding-door-config ul {
	margin-top: 30px
}

#exterior-window-colors .nbs-flexisel-item img {
	width: 90%;
	height: 150%
}

#exterior-window-colors .nbs-flexisel-item p {
	line-height: 18px;
	margin-top: 5px
}

#door-colors .nbs-flexisel-nav-left,
#door-colors .nbs-flexisel-nav-right,
#exterior-window-colors .nbs-flexisel-nav-left,
#exterior-window-colors .nbs-flexisel-nav-right {
	background: rgba(255, 255, 255, .25);
	line-height: 19px
}

#exterior-window-colors .nbs-flexisel-nav-left {
	left: 20px;
	top: 52%
}

#exterior-window-colors .nbs-flexisel-nav-right {
	right: 20px;
	top: 52%
}


#door-colors ul {
	margin-left: 0;
	margin-top: 10px
}

#door-colors li {
	height: auto
}

#door-colors .nbs-flexisel-item img {
	width: 90%;
	height: 60px
}

#door-colors .nbs-flexisel-item p {
	line-height: 18px;
	margin-top: 10px
}

#door-colors .nbs-flexisel-nav-left {
	left: 20px;
	top: 40px
}

#door-colors .nbs-flexisel-nav-right {
	right: 20px;
	top: 40px
}

.window-locks img.nesting-lock {
	width: 60%;
	height: auto
}

.window-locks img.auto-lock {
	width: 50%;
	height: auto;
	margin-top: 5px
}

.window-locks img.winpro-vent-lock {
	width: 35%;
	height: auto;
	margin-top: 25px
}

.window-locks img.cascade-vent-lock {
	width: 35%;
	height: auto;
	margin-top: 10px
}

.window-locks img.cam-lock {
	width: 40%;
	height: auto;
	margin-top: 0
}

div.vinyl-colors div p {
	line-height: 0;
	margin: 0;
	padding: 0
}

p.toggle {
	margin-top: -10px;
	line-height: 15px
}

div.dual-pane-glass {
	width: 50%;
	overflow: auto;
	margin-left: 10%
}

.dual-pane-glass h4 {
	text-align: right
}

img.heat-flow {
	float: right;
	margin-left: 20px
}

#grids a,
#grids a:hover,
#style a,
#style a:hover {
	color: #fff
}

div.grids2 {
	display: flex;
	flex-flow: row;
	justify-content: space-evenly;
	margin: 0 5%
}

div.grids2 img {
	width: 93%
}

@media (max-width:768px) {


	div.grids2 div {
		max-width: 51px;
		max-height: 106px;
	}

	.grids2 p {
		font-size: 10px;
	}
}

@media (max-width:900px) {

	div.grids2 div {
		max-width: 56.5px;
		max-height: 124.09px;
	}
}

div.grids,
div.hardware {
	width: 75%;
	display: flex
}

div.grids {
	flex-flow: row;
	justify-content: space-evenly;
	margin: 30px auto 0
}

div.grids2>div:not(:has(img[src])) {
	display: none !important;
}

div.hardware {
	flex-flow: row;
	justify-content: space-evenly;
	margin: 30px auto 40px
}

.grids div,
div.grids2 div {
	text-align: center;
	width: 20%
}

.grids2 p {
	line-height: 100%;
	padding-top: 0;
	margin-top: 8px;
	max-width: 100%;
	word-break: break-word;
	overflow-wrap: break-word;
	white-space: normal;
	text-overflow: ellipsis;
	overflow: hidden;
}

.hardware div {
	text-align: center;
	width: 25%
}

.hardware div img {
	width: 60%;
	height: auto
}

.grids p {
	padding: 0;
	margin: 0;
	word-wrap: break-word
}

.grids hr {
	width: 50%;
	border: 0;
	height: 1px;
	background: #333;
	background-image: linear-gradient(to right, #333, #fff, #333)
}

.booklets img {
	width: 93%;
	box-shadow: 2px 2px 4px #ccc;
}

.glass-options {
	width: 80%;
	margin-top: 40px
}

.glass-options .glass-reed {
	background: url(../images/glass-options/narrow-reed-plant.jpg) no-repeat
}

.glass-options .glass-rain {
	background: url(../images/glass-options/rain-plant.jpg) no-repeat
}

.glass-options .glass-glue {
	background: url(../images/glass-options/glue-chip-plant.jpg) no-repeat
}

.glass-options .glass-flem {
	background: url(../images/glass-options/flemish-plant.jpg) no-repeat
}

.glass-options .glass-mon {
	background: url(../images/glass-options/monumental-plant.jpg) no-repeat
}

.glass-options .glass-obs {
	background: url(../images/glass-options/obscure-plant.jpg) no-repeat
}

.glass-options .glass-satin {
	background: url(../images/glass-options/satin-etched-plant.jpg) no-repeat
}

.glass-options .glass-delta {
	background: url(../images/glass-options/delta-frost-plant.jpg) no-repeat
}

.glass-options .glass-grey {
	background: url(../images/glass-options/grey-plant.jpg) no-repeat
}

.glass-options .glass-bronze {
	background: url(../images/glass-options/bronze-plant.jpg) no-repeat
}

.glass-options .glass-solar {
	background: url(../images/glass-options/solar-cool-grey-plant.jpg) no-repeat
}

.glass-options .nbs-flexisel-inner {
	margin: -2.5%;
	width: 104%
}

.glass-options .nbs-flexisel-nav-left {
	left: 3%;
	margin-top: -3%
}

.glass-options .nbs-flexisel-nav-right {
	right: 3%;
	margin-top: -3%
}

#cssfade {
	width: 25%;
	height: auto
}

#cssfade div {
	margin: 0 10%;
	background-size: 100% auto
}

#cssfade img {
	width: 100%;
	height: auto;
	-webkit-transition: all ease 1s;
	-moz-transition: all ease 1s;
	-o-transition: all ease 1s;
	-ms-transition: all ease 1s;
	transition: all ease 1s
}

#cssfade img:hover {
	opacity: 0
}

.glass-options p {
	text-align: center;
	line-height: 100%
}

.example-cascade-window,
.example-folding-door,
.example-winpro-window {
	width: 95%;
	height: auto;
	margin: 0 10px
}

.example-patio-door {
	width: 78%;
	height: auto;
	margin: 0 10px
}

.example-4250-window {
	width: 65%;
	height: auto;
	margin: 0 auto
}

.patio-handle {
	padding-top: 15%
}

.patio-handle img {
	float: right;
	margin-left: 15px;
	width: 22%
}

.patio-handle p {
	color: #000;
	line-height: 140%
}

.folding-door-hardware p {
	margin-bottom: 0
}

.folding-door-hardware h2 {
	margin-left: 0
}

.folding-door-config div,
.patio-door-config div {
	margin: 10px auto;
	text-align: center
}

@media (max-width: 768px) {
	.folding-door-config>div>strong>img {
		width: 100%;
	}

	.patio-door-config>div>strong>img {
		width: 100%;
	}
}

.folding-door-config,
.patio-door-config {
	display: flex;
	justify-content: space-evenly;
	text-align: center;
}

.folding-door-config p,
.patio-door-config p {
	line-height: 15px;
	margin: -10px 0 0 0;
}

.patio-door-hardware,
.patio-interior {
	display: flex;
	justify-content: space-evenly;
	text-align: center;
}

.patio-door-hardware p {
	margin: 0
}

table.door-sizes {
	margin: 15px auto;
	width: 60%;
	border-collapse: collapse
}

.door-sizes td {
	margin: 0;
	padding: 2px
}

.door-sizes td:nth-child(odd) {
	width: 32.5%;
	font-weight: 700
}

.door-sizes td:nth-child(2) {
	width: 20%
}

.door-sizes td:nth-child(4) {
	width: 15%
}

.door-sizes td.highlight {
	font-weight: 700;
	color: #000
}

div.door-specs-wrapper {
	width: 70%;
	margin: 0 auto
}

div.door-specs {
	float: left;
	margin-right: 100px
}

div.door-specs-2 {
	margin-right: 10%
}

div.thermal-tables {
	width: 70%;
	margin: 10px auto
}

.thermal-tables table td {
	padding: 5px 0 5px 5px;
	vertical-align: top;
	line-height: 110%
}

table.door-thermal,
table.door-thermal-2 {
	background-color: #F3F4F4;
	float: left;
	width: 47.5%;
	border-collapse: collapse
}

table.door-thermal-2 {
	margin-left: 5%
}

table.door-thermal tr.header,
table.door-thermal-2 tr.header {
	background-color: #b5b5b5;
	color: #000;
	font-weight: 700
}

div#interior .vinyl-colors img,
div#exterior .vinyl-colors img {
	cursor: pointer;
	width: 70%;
	height: auto
}

#exterior #doorimage,
#interior #doorimage {
	margin: 0 auto
}

div.door-video {
	position: relative;
	padding-bottom: 37%;
	padding-top: 30px;
	height: 0;
	width: 70%;
	overflow: hidden;
	margin-left: 15%
}

div.door-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	border: 0;
	width: 100%;
	height: 100%
}

div#exterior h3 {
	text-align: center;
	margin-left: 0
}

table.paint-colors {
	border-collapse: collapse;
	width: 92%;
	margin: 0 auto !important
}

table.paint-colors td {
	text-align: center;
	vertical-align: top;
	color: #000;
	padding-bottom: 10px
}


footer,
footer a,
footer a:hover,
footer a:visited {
	color: #fff
}

.bulletins-archive,
.resources {
	padding: 0 10%
}

table.paint-colors img {
	width: 71%;
	height: auto;
	margin-bottom: -8px
}

.multi-slide-config {
	width: 80%;
	margin: 15px auto
}

.gallery-thumbs {
	margin: 0 5%
}

.gallery-thumbs .row {
	display: flex;
	flex-wrap: wrap
}

.gallery-thumbs .column {
	flex: 1.66%;
	max-width: 31.66%
}

.gallery-thumbs .column img {
	vertical-align: middle;
	width: 100%;
	margin-top: 4%;
	margin-bottom: 4%
}

.gallery-thumbs .column img:hover,
.gallery-thumbs img.full-width:hover {
	cursor: pointer
}

.gallery-thumbs img.full-width {
	width: 100%;
	margin-top: 1%
}

.gallery-thumbs .column:nth-child(2) {
	margin: 0 2.5%
}


#GalleryViewer img {
	height: auto;
	width: 100%;
	max-width: 1215px;
	margin: inherit auto
}

#GalleryViewer p {
	width: 80%;
	margin: 0 10%
}

.general-content-gray2 ol p,
.resources h2,
.resources p {
	margin-left: 0
}

#GalleryViewer span.previous {
	left: 12%
}

#GalleryViewer span.next {
	right: 12%
}

#GalleryViewer span.next,
#GalleryViewer span.previous {
	position: absolute;
	font-size: 32px !important;
	top: 50%;
	cursor: pointer;
	width: 45px;
	height: 45px;
	background-color: #fff;
	border-radius: 50%;
	opacity: .65;
	transition: opacity 1s ease-in-out;
	-moz-transition: opacity 1s ease-in-out;
	-webkit-transition: opacity 1s ease-in-out
}

#GalleryViewer span.next:hover,
#GalleryViewer span.previous:hover {
	opacity: 1;
	transition: opacity .55s ease-in-out;
	-moz-transition: opacity .55s ease-in-out;
	-webkit-transition: opacity .55s ease-in-out
}

#GalleryViewer span.close {
	position: absolute;
	font-size: 1.25em;
	top: 18%;
	right: 12%;
	font-weight: 400;
	cursor: pointer
}


@media screen and (max-width:800px) {
	#GalleryViewer span.close {
		position: absolute;
		font-size: 1.25em;
		top: 6% !important;
		right: 12%;
		font-weight: 400;
		cursor: pointer
	}

	.gallery-thumbs .column {
		flex: 100%;
		max-width: 100%
	}

	#GalleryViewer span.next,
	#GalleryViewer span.previous {
		position: absolute;
		top: 29% !important;
		cursor: pointer;
		width: 25px;
		height: 25px;
		background-color: #fff;
		border-radius: 50%;
		font-size: 0
	}

	#GalleryViewer {
		top: 39% !important
	}
}

.resources {
	display: flex;
	flex-direction: row
}

.resources div {
	width: 50%
}

.resources h2 {
	text-align: left
}

.topnav li,
footer,
footer li {
	text-align: center
}

.bulletins-archive>div {
	float: left;
	width: 30%;
	margin-right: 3%
}

#archives {
	width: 80%;
	margin: 0 auto
}

.past-bulletins {
	float: left;
	width: 29%
}

footer {
	background-color: #000;
	border-bottom: 10px solid #41AD49;
	border-top: 1px solid #545354;
	margin: 0 auto 20px;
	width: 100%;
	max-width: 1350px;
	z-index: 9999;
	position: relative;
}

.topnav,
.topnav li:hover {
	background-color: transparent
}

footer .links {
	display: flex;
	display: -ms-flexbox;
	flex-flow: row;
	justify-content: space-evenly;
	margin-top: 20px
}

footer ul {
	display: inline-block;
	vertical-align: top;
	padding: 0;
	margin: 0
}

footer img.state-icon {
	transform: scale(.75);
	height: auto
}

footer a.red {
	color: red
}

@media (max-width:640px) {

	.patio-door-config,
	span.break {
		display: block
	}

	span.break {
		line-height: 100%
	}

	.iconbar-wrapper div {
		width: 33.3%
	}

	.patio-door-hardware div {
		width: 30%
	}

	footer .links {
		flex-wrap: wrap;
		justify-content: space-around
	}

	footer ul {
		width: 50%;
		margin-bottom: 10px
	}
}

@media only screen and (max-width:800px) and (min-width:641px) {
	.iconbar-wrapper div {
		width: 15%;
		display: inline-block
	}

	.patio-door-config div {
		display: inline;
		width: auto
	}

	.patio-door-hardware div {
		display: inline
	}

	.fifty-percent {
		width: 80%
	}

	.product-colors,
	.hardware-handles {
		float: none;
		width: 100%;
	}

	footer ul {
		width: 20% !important
	}
}

@media (max-width:800px) {

	body,
	header {
		width: 100%
	}

	.S {
		line-height: 20px
	}

	.XL {
		line-height: 100%;
		margin: 0
	}

	.resources {
		flex-direction: column
	}

	ul.dealer-bulletins-3-col {
		column-count: 1
	}

	.photo-gallery .column {
		flex: 100%;
		max-width: 100%
	}

	header {
		height: 100px
	}

	.header-image h1 {
		/*font-size:calc(3vw + 3vh);*/
		font-size: 30px;
		margin-top: 40px
	}

	nav ul {
		margin-top: 15px
	}
	nav .close-search{
		display: block;
        left: 228px;
        height: 23px;
        top: -6px;
        padding-top: 10px;
	}
	nav .close-search,
	nav li.search {
		display: block
	}

	.patio-interior,
	div.grids {
		display: block
	}

	nav ul a:hover,
	nav ul ul a:hover {
		border-bottom: none;
		text-decoration: underline
	}

	div.logo img {
		margin-top: 24px;
		margin-right: 7px;
		width: 90px;
		height: auto
	}

	.home-image-1 img.state-icon {
		width: 40px;
		height: auto
	}

	.iconbar-wrapper {
		width: 95%;
		flex-wrap: wrap
	}

	.iconbar img {
		width: 60%;
		height: auto
	}

	.fourty-percent {
		width: 80%
	}

	div.col-fourtyfive-percent {
		float: none !important;
		width: 100% !important;
	}

	div.col-ten-percent {
		display: none !important;
		float: none;
	}

	.main-animation {
		width: 100%;
	}

	.vinyl-colors-2 {
		width: 70%
	}

	div.grids div {
		width: 100%
	}

	form#contactform {
		width: 80%
	}

	.search-criterea {
		width: 100%
	}

	.search-criterea h2 {
		width: 100%;
		clear: both;
		text-align: center
	}

	.search-criterea .search-form {
		float: none;
		width: 95%;
		margin: 38px auto 10px
	}

	.search-criterea .search-form input {
		width: 80%
	}

	.search-criterea .search-form img {
		/* new update */
		/* margin-top: 2px; */
		margin-left: -28px
	}

	.search-criterea button.location {
		width: 10%;
		/* new update */
		/* height: 26px; */
		padding: 4px
	}

	.search-criterea button span.location-words {
		display: none
	}

	.search-criterea button span.location-arrow {
		visibility: visible;
		transform: rotate(-135deg);
		display: inline-block
	}

	div.dealer-search-results {
		width: 95%
	}

	.dealer-list,
	.dealer-map {
		float: none;
		width: 100%
	}

	.dealer-col-1 {
		width: 10%
	}

	.dealer-col-2 {
		width: 90%
	}

	.dealer-col-3 {
		clear: both;
		margin-top: -8px;
		margin-bottom: 10px;
		width: 100%
	}

	div.three-col,
	div.four-col {
		display: block
	}

	div.three-col,
	div.four-col div {
		width: 100%
	}

	.floatR img {
		width: 100%;
		height: auto
	}

	.patio-door-adjustment div {
		display: block;
		width: 100%
	}

	div.two-col-a,
	div.two-col-b {
		display: block;
		width: 90%;
		margin-left: 5%;
		margin-right: 10%
	}

	.patio-door-adjustment div:nth-child(2) {
		margin-left: 0
	}

	section.black2 {
		padding: 30px 0
	}

	.sustainability .L {
		font-size: 40px;
		padding: 14% 0
	}

	.mobile-hide,
	section.black2 div.colors {
		display: none
	}

	.home-color-dropdown {
		display: block;
		width: 50%;
		margin: 20px auto 0 auto;
		font-size: 16px
	}

	div.dual-pane-glass {
		width: 80%
	}

	.dual-pane-glass img {
		margin: 0 auto;
		float: left;
	}

	div.dual-pane-glass div {
		clear: both;
		width: 100%;
	}

	div.dual-pane-glass h4 {
		text-align: left;
	}

	div.dual-pane-glass h4 img {
		margin-right: 5%;
	}

	.frame-care p {
		width: 50%
	}

	.resources div {
		width: 90%
	}

	footer img.state-icon {
		transform: scale(.5);
		height: auto
	}

	footer .social-links {
		display: none !important
	}
}

@media (max-width:920px) {
	ul.warranties {
		columns: 1;
		-webkit-columns: 1;
		-moz-columns: 1;
		width: 100%
	}

	.photo-gallery .column {
		flex: 50%;
		max-width: 50%
	}
}

@media (max-width:320px) {
	section#scrollable-content {
		width: 100% !important
	}
}

.gcsc-branding,
.gsc-adBlock {
	display: none !important
}

.gsc-input {
	background-image: none !important
}

.cse table.gsc-search-box td.gsc-input,
table.gsc-search-box td.gsc-input {
	padding-right: 0 !important
}

.topnav li {
	float: left;
	display: block;
	color: #f2f2f2;
	padding: 0 10px;
	text-decoration: none;
	font-size: 17px
}

.topnav li:hover {
	color: #000
}

.active {
	background-color: #4CAF50;
	color: #fff
}

.topnav .hamburger {
	display: none
}

@media screen and (max-width:800px) {
	.topnav li:not(:first-child) {
		display: none
	}

	.topnav li.hamburger {
		float: right;
		display: block
	}

	nav ul li:hover ul {
		left: 0;
		padding-left: 0;
		margin-top: -3px;
		z-index: 9999;
		position: relative !important;
		display: contents
	}

	nav ul li,
	nav ul li:hover {
		left: 0;
		margin-top: -4px;
		z-index: 9999;
		padding: 0 10px
	}

	.topnav {
		overflow: hidden !important
	}

	.topnav.responsive {
		position: relative
	}

	.topnav.responsive .hamburger {
		position: absolute;
		right: 0;
		top: 0;
		z-index: 999;
		/* min-width: 168px */
	}

	.topnav.responsive li {
		float: none;
		display: block;
		text-align: left;
		padding: 2px 10px;
		z-index: 9999999;
		width: fit-content;

	}

	.topnav.responsive li.search {
		display: none
	}

	.topnav.responsive li ul li {
		float: none;
		display: block;
		text-align: left;
		padding: 0;
		margin-left: 10%
	}

	header {
		height: auto !important;
		overflow: auto
	}
}

@media screen and (max-width:414px) {
	.fixed-header-image .scrollable-content {
		z-index: 1002;
		padding-top: 65px !important
	}

	.fixed-header-image .header-image {
		position: relative !important
	}

	.faux-banner {
		margin-top: -293px !important
	}

	div.vinyl-colors h2,
	div.window-locks h2 {
		font-size: 16px !important;
		font-weight: 600 !important;
		margin: 0 6px !important
	}

	div.multipoint h3 {
		font-size: 15px !important;
		font-weight: 600 !important;
		margin: 0 6px !important
	}

	.folding-door-config div img {
		width: 100%
	}

	table.door-sizes {
		width: 80%
	}

	.door-sizes td {
		font-size: 10px !important
	}

	.door-thermal,
	.door-thermal-2 {
		width: 100% !important;
		margin-bottom: 16px !important;
		margin-left: 0 !important
	}

	.folding-door-hardware h2 {
		font-size: 13px !important;
		margin: 0 !important;
		font-weight: 600 !important
	}

	.folding-door-hardware {
		width: 80% !important
	}
}

.gsc-result .gs-title {
	height: auto !important
}

.brochures h1,
.ideas h1 {
	text-shadow: 2px 3px #000 !important
}

button[type=submit] {
	cursor: pointer
}

.err_msg {
	background: #F44336;
	color: #fff;
	padding: 4px;
	border-radius: 4px
}

footer .links ul {
	width: 18%;
}

footer .links {
	display: flex !important;
	flex-flow: row !important;
	justify-content: space-evenly !important;
}

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

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

/* Tab link styles for image-tab-view */
.tab-link {
	color: #fff !important;
	text-decoration: none;
}

.tab-link:hover {
	color: #fff !important;
	text-decoration: underline;
}



#wpsl-search-btn {
	background-color: #62BB46;
	width: 30px;
	position: absolute;
	margin-left: -30px;
	background-image: url('../images/search.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
	border: none;
	color: transparent;
	cursor: pointer;
	height: 32px;
	/* float: none; */
}

@media (max-width: 768px) {
	#wpsl-search-btn {
		background-color: #62BB46;
		margin-left: -30px;
		background-image: url('../images/search.png');
		background-repeat: no-repeat;
		background-position: center;
		background-size: 20px 20px;
		height: 30px;
		position: relative;
	}

	#wpsl-search-input {
		width: 85% !important;
	}

	#wpsl-wrap #wpsl-result-list li {
		padding: 10px;
	}

	#wpsl-gmap {
		margin-bottom: 0px !important;
	}

	#wpsl-search-input {
		height: 20px !important;
	}
}

.gcs-modal {
	position: fixed;
	left: -100%;
	width: 275px;
	z-index: 999;
	transition: left 1s;
	display: block;
}

/* Remove default button padding for search button in header */
.search-btn-no-padding {
	padding: 0;
}

.searchbox-table-style {
	width: 100%;
	padding: 0px;
}

.searchbox-input-style {
	width: 100% !important;
	padding: 0px !important;
	border: none !important;
	margin: 0px;
	height: auto;
	background: url("https://www.google.com/cse/static/images/1x/en/branding.png") left center no-repeat rgb(255, 255, 255);
	outline: none;
}

.clear-search-btn-style {
	justify-content: center;
	height: 20px;
	padding-bottom: 0px;

}

.clear-search-btn-style:hover {
	padding-bottom: 0px;
}

.clear-search-x-style {
	font-size: 20px;
	display: inline-block;
	color: #a1b9ed;
	cursor: pointer;
}

@media (max-width: 570px) {
	/* #wpsl-search-btn {
		width: 75% !important;
	} */

	.wpsl-search-btn-wrap {
		clear: none;
		margin-top: 0;
	}

	#wpsl-result-list {
		width: 100%;
	}

	#wpsl-wrap {
		display: grid;
	}

	#wpsl-gmap {
		order: 2;
		width: 100%;
	}
}

@media (max-width:940px) {
	.search-criterea button span.location-words {
		display: none
	}

	.search-criterea button span.location-arrow {
		visibility: visible;
		transform: rotate(-135deg);
		display: inline-block
	}

	.search-criterea button.location {
		width: 10%;
		/* new update */
		/* height: 26px; */
		padding: 4px
	}
}

@media (max-width:920px) {
	#wpsl-result-list {
		width: 100%;
	}

	#wpsl-wrap {
		display: grid;
	}

	#wpsl-gmap {
		order: 2;
		width: 100%;
	}
}

.mobile-search {
	display: none !important;
}

@media (max-width:800px) {
	.mobile-search {
		display: block !important;
		float: right !important;
		text-align: left;
		padding: 2px 10px;
		z-index: 998;

		.search-btn {
			background: none;
			text-transform: none;
			margin: 1px;
			padding: 0;
		}
	}

	.gsc-search-box {
		max-width: 275px;
	}

	div.three-col div {
		width: 100%;
	}

	.gallery-thumbs .column:nth-child(2) {
		margin: 0 0%
	}

}

@media (max-width:920px) {
	.gsc-search-box {
		max-width: 275px;
	}

}

/* ===== COMPREHENSIVE SEARCH FEATURE STYLING ===== */
/* Moved from Google Custom Search plugin to styles.css */
/* These rules override _default_v6 injected CSS from Google CSE */

/* Search control styles */
.gsc-control-searchbox-only {
	direction: ltr !important;
	text-align: left !important;
	font-family: 'Open Sans', sans-serif !important;
}

.gsc-control-searchbox-only.gsc-control-searchbox-only-en {
	padding: 0 !important;
}

.gsc-control-cse {
	font-family: 'Open Sans', sans-serif !important;
	padding: 0 !important;
	border: none !important;
}

/* Search box container */
.gsc-search-box {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gsc-search-box-tools {
	padding: 0 !important;
	margin: 0 !important;
}

/* Search input wrapper */
.gsc-input-box {
	background-color: #fff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 2px !important;
	display: inline-block !important;
	font-size: 13px !important;
	height: 30px !important;
	line-height: 14px !important;
	position: relative !important;
	vertical-align: middle !important;
	white-space: nowrap !important;
	width: 210px !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.gsc-input-box-focus {
	border-color: #4d90fe !important;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.1) !important;
}

.gsc-input-box-hover {
	border-color: #ccc !important;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.1) !important;
}

/* Search input field */
.gsc-input {
	background-color: #fff !important;
	color: #333 !important;
	font-family: 'Open Sans', sans-serif !important;
	font-size: 13px !important;
	outline: none !important;
}

.gsib_a {
	display: table-cell !important;
	padding: 0 !important;
	vertical-align: middle !important;
	white-space: nowrap !important;
	height: 30px !important;
}

.gsib_b {
	display: table-cell !important;
	text-align: right !important;
	vertical-align: middle !important;
	padding: 0 !important;
}

.gsib_a input {
	background: transparent !important;
	border: none !important;
	font-size: 12px !important;
	outline: none !important;
	padding: 8px !important;
	vertical-align: middle !important;
	width: 160px !important;
	height: 14px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	line-height: 14px !important;
}

.gstl_50,
.gsc-input-box table {
	width: 100% !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gstl_50 tr,
.gstl_50 td,
.gsc-input-box table tr,
.gsc-input-box table td {
	margin: 0 !important;
	padding: 0 !important;
}

/* Search button */
.gsc-search-button {
	background-color: #f8f8f8 !important;
	background-image: none !important;
	background-repeat: repeat-x !important;
	background-attachment: scroll !important;
	border: 1px solid #ddd !important;
	color: #333 !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(255,255,255,0.8) !important;
	padding: 6px 12px !important;
	font-size: 13px !important;
	line-height: 1.428571429 !important;
	border-radius: 0 !important;
	cursor: pointer !important;
	display: inline-block !important;
	margin: 0 !important;
	vertical-align: baseline !important;
	white-space: nowrap !important;
	user-select: none !important;
}

/* Remove padding from gsc-search-button table cell */
td.gsc-search-button {
	padding: 0 !important;
}

.gsc-search-button:hover {
	background-color: #f0f0f0 !important;
	border-color: #ccc !important;
}

.gsc-search-button-v2 {
	background-color: #fff !important;
	border: 1px solid #d9d9d9 !important;
	border-left: none !important;
	height: 30px !important;
	margin: 0 !important;
	outline: none !important;
	padding: 0 !important;
	vertical-align: middle !important;
	width: auto !important;
	overflow: visible !important;
	cursor: pointer !important;
	display: inline-block !important;
}

.gsc-search-button-v2:hover {
	background-color: #f8f8f8 !important;
	border-color: #c6c6c6 !important;
	box-shadow: 0 1px 1px rgba(0,0,0,0.1) !important;
}

.gsc-search-button-v2 svg {
	fill: #333 !important;
	height: 13px !important;
	width: 13px !important;
	margin: 8.5px !important;
}

/* Clear button */
.gsst_b {
	display: table-cell !important;
	padding: 0 !important;
	text-align: center !important;
	vertical-align: middle !important;
	white-space: nowrap !important;
}

.gsst_a {
	background: transparent !important;
	border: none !important;
	color: #999 !important;
	cursor: pointer !important;
	outline: none !important;
	padding: 0 6px !important;
	text-decoration: none !important;
	font-size: 13px !important;
}

.gsst_a:hover {
	color: #333 !important;
}

.gscb_a {
	font-size: 20px !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Search results container */
.gsc-control-cse {
	font-family: 'Open Sans', sans-serif !important;
	border: 1px solid #ccc !important;
	background-color: #fff !important;
	padding: 0 !important;
}

.gsc-control-cse .gsc-table-result {
	font-family: 'Open Sans', sans-serif !important;
}

.gsc-result {
	margin-bottom: 10px !important;
	padding-bottom: 10px !important;
	border-bottom: 1px solid #eee !important;
	background-color: #fff !important;
}

.gsc-result:last-child {
	border-bottom: none !important;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.gs-result {
	padding: 8px !important;
	background-color: #fff !important;
}

.gs-title {
	color: #1a0dab !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-decoration: none !important;
	height: auto !important;
}

.gs-title a {
	color: #1a0dab !important;
	text-decoration: none !important;
}

.gs-title a:visited {
	color: #681da8 !important;
}

.gs-title a:hover {
	text-decoration: underline !important;
}

.gs-snippet {
	color: #545454 !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
	margin: 5px 0 0 !important;
	padding: 0 !important;
}

.gs-visibleUrl {
	color: #006621 !important;
	font-size: 12px !important;
	line-height: 1.3 !important;
	margin: 3px 0 0 !important;
	padding: 0 !important;
}

/* Mobile adjustments for search */
.gsc-modal {
	position: fixed !important;
	left: -100% !important;
	width: 275px !important;
	z-index: 999 !important;
	transition: left 1s !important;
	display: block !important;
	top: auto !important;
	height: auto !important;
}

@media (max-width: 768px) {
	.gsc-input-box {
		width: 200px !important;
		height: 30px !important;
	}

	.gsc-search-box {
		max-width: 275px !important;
	}

	.gsib_a input {
		width: 140px !important;
	}
}

@media (max-width: 480px) {
	.gsc-input-box {
		width: 180px !important;
		height: 30px !important;
	}

	.gsib_a input {
		width: 120px !important;
		font-size: 11px !important;
	}
	    nav .close-search, nav li.search {
			left:209px;
		}
}

/* Additional Google CSE overrides */
.gsc-adBlock {
	display: none !important;
}

.gcsc-branding {
	display: none !important;
}

.gsc-clear-button {
	display: none !important;
}

.gsc-tooltip {
	background-color: #fff !important;
	border: 1px solid #d9d9d9 !important;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
	color: #333 !important;
}

.gallery-modal {
	display: none;
	position: fixed;
	z-index: 99999999;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.85);
	align-items: center;
	justify-content: center;
	text-align: center;
}

.gallery-modal-close {
	position: absolute;
	top: 30px;
	right: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
	font-weight: bold;
}

.gallery-modal-left {
	position: absolute;
	top: 50%;
	left: 40px;
	transform: translateY(-50%);
	font-size: 60px;
	color: #fff;
	cursor: pointer;
	user-select: none;
	z-index: 10001;
	opacity: 0.8;
}

.gallery-modal-right {
	position: absolute;
	top: 50%;
	right: 40px;
	transform: translateY(-50%);
	font-size: 60px;
	color: #fff;
	cursor: pointer;
	user-select: none;
	z-index: 10001;
	opacity: 0.8;
}

.gallery-modal-img {
	max-width: 98vw;
	max-height: 95vh;
	margin-top: 30px;
	box-shadow: 0 0 20px #000;
	border-radius: 8px;
	display: inline-block;
	vertical-align: middle;
}

.gallery-modal-caption {
	color: #fff;
	margin-top: 20px;
	font-size: 1.2em;
}

/* Adjust padding between adjacent .general-content-white elements inside .scrollable-content */
.scrollable-content .general-content-white+.general-content-white {
	padding-top: 5px;
}

.scrollable-content .general-content-white:not(:last-child) {
	/* If followed by another .general-content-white, set padding-bottom */
	padding-bottom: 10px;
}

@media (max-width: 800px) {

	.bulletins-archive {
		padding: 0 12%
	}

	.bulletins-archive>div,
	.general-content-gray3>div {
		width: 100%;
		float: none;
		display: block;
		margin-bottom: 30px;
	}

	.bulletins-archive>div>div,
	.general-content-gray3>div>div {
		width: 100%;
		display: block;
		clear: both;
	}

	.bulletins-archive>div>h3,
	.general-content-gray3>h3 {
		margin-bottom: 8px;
	}

	.bulletins-archive>div>div[style*="display: block"],
	.general-content-gray3>div[style*="display: block"] {
		margin-bottom: 16px;
		position: relative;
		z-index: 1;
	}

	.past-bulletins {
		width: 100%;
		display: block;
		margin-bottom: 8px;
	}
}