/*
	Theme Name: w32023
	Theme URI: https://w3nerds.com
	Description: Theme designed for client
	Version: 1.1
	Author: w3 Global Solutions
	Author URI: https://w3nerds.com
	Tags: HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/
*,
*:after,
*:before {
	box-sizing:border-box;
	text-rendering:optimizeLegibility;
	margin:0;
}
:root {
	--color-1:#122330;
	--color-2:#ee5519;
	--color-3:#35668d;
	--color-4:#d0460f;
	--color-5:#bbdef2;
	--color-6:#eef7fc;
	--greyZero:#f5f5f5;
	--greyOne:#e5e5e5;
	--greyTwo:#bfbfbf;
	--greyThree:#757575;
	--greyFour:#444444;
	--greyFive:#151515;
	--font-title: 'title', 'opensans-extrabold', Times, serif;
	--font-sm-title: 'title', 'opensans-regular', Times, serif;
	--font-light: 'light', 'opensans-regular', Times, serif;
	--font-text-strong: 'bold', 'opensans-bold', "Arial Black", sans-serif;
	--font-text-regular: 'regular', 'opensans-regular', Arial, sans-serif;
	--font-text-italic: 'italic', 'opensans-italic', "Arial Italic", sans-serif;
	--font-nav: 'cta', 'opensans-bold', Arial, serif;
	--font-cta: 'cta', 'opensans-bold', Arial, serif;
}
.screen-reader-text {
	overflow: hidden;
	position:absolute;
	width:1px;
	height:1px;
	clip:rect(1px,1px,1px,1px);
}
.skip-to-content-link {
	background: #fff;
	color:#000;
	height: 30px;
	left: 50%;
	padding: 4px;
	position: absolute;
	transform: translateY(-100%);
	transition: transform 0.3s;
}
.skip-to-content-link:focus {
	transform: translateY(0%);
}
#loader {
	left: 50%;
	top: 50%;
	position: fixed;
	transform: translate(-50%, -50%);
	border: 12px solid #f3f3f3; /* Light grey */
	border-top: 12px solid #3498db; /* Blue */
	border-radius: 50%;
	width: 90px;
	height: 90px;
	animation: spin 2s linear infinite;
	z-index:999;
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
p#noscript {
	background-color:red;
	color:white;
	text-align:center;
	width:100%;
}
a#w3 {
	background-color:transparent;
	background: transparent url(img/w3nerds-logo-web.png) no-repeat;
	background-position: 10% 50%;
	color:var(--greyZero);
	display: inline-block;
	font-family: 'opensans-regular', sans-serif;
	font-size: 13px;
	line-height: 22px;
	margin: 10px;
	padding: 10px;
	text-align: right;
	transition-duration: 0.8s;
	text-decoration: none;
	width: 180px;
	height: 90px;
}
a#w3:hover {
	background-color: #fff;
	box-shadow: 15px 15px 0px -10px #4285f4, -15px -15px 0px -10px #fcc934, 5px -5px #ff5252, -5px 5px #34a853;
	color:#151515;
}
.success {
	padding:12px 20px;
	text-align: left;
	color:#fff;
	font-weight:bold;
	font-size:16px;
	background:green;
	position: relative;
	z-index: 9999;
}
.success a {
	color:#ccc;
}
.error, .form-error-container {
	padding:12px 20px;
	text-align: left;
	font-size: 16px;
	color:#fff;
	background:red;
	position: relative;
	z-index: 9999;
}
.error span,
 .error a {
	vertical-align: middle !important;
}
.inputError {
	background-color:rgb(249,213,212) !important;
}
html {
	font-size:14px;
}
body {
	font-family: var(--font-text-regular), 'opensans-regular', serif;
	font-size:14px;
	line-height:22px;
	color: #555;
	background-color:#fff;
	text-align:center;
}
img {
	vertical-align:bottom;
	width: auto;
	height: auto;
	max-width: 100%;
}
a {
	color:var(--color-2);
	font-family: var(--font-text-strong), 'opensans-bold', serif;
	text-decoration:underline;
	cursor: pointer;
}
a:hover {
	color:#000;
}
a:focus {
	outline:#2f2f2f;
}
a:hover,
a:active {
	outline:0;
}
button {
	cursor: pointer;
}
input:focus {
	outline:0;
	border:1px solid var(--color-4);
}
textarea {
	outline-color:var(--color-4);
}
p {
	text-align: left;
	font-size: 18px;
	line-height: 26px;
	position: relative;
	font-family: var(--font-text-regular), 'opensans-regular', serif;
}
ul,ol {
	font-size:14px;
	line-height: 14px;
	padding: 20px 0 20px 20px;
}
ul li, ol ul li {								/*NEW*/
	text-align: left;
	list-style: none;
	background-image: url('favicon-32x32.png');
	background-repeat: no-repeat;
	background-size: 12px;
	background-position: 5px 12px;
	font-size: 16px;
	line-height: 24px;
	padding: 5px 0 10px 30px;
}
ol li, ul ol li {								/*NEW*/
	list-style: auto;
	background-image: none;
	text-align: left;
	font-size: 16px;
	line-height: 24px;
	padding: 5px 0 15px 5px;
}
ol li::marker, ul ol li::marker {
	font-family: var(--font-text-strong), 'opensans-bold', serif;
}
ul li h4, ol li h4, ul ol li h4 {
	padding-bottom: 4px;
}
h1, h2.xlg-title, h3.xlg-title, h4.xlg-title, h5.xlg-title, .xlg-title {
	color: #fff;
	display: block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:36px;
	font-weight: normal;
	line-height:46px;
	margin: 0;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
h2, h1.lg-title, h3.lg-title, h4.lg-title, h5.lg-title, .lg-title {
	color: #000;
	display: block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:60px;
	font-weight: normal;
	line-height:70px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h3, h1.med-title, h2.med-title, h4.med-title, h5.med-title, .med-title { 
	color: var(--greyFour);
	display: inline-block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:20px;
	font-weight: normal;
	line-height:28px;
	margin-bottom: 14px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h4, h1.sm-title, h2.sm-title, h3.sm-title, h5.sm-title, .sm-title  {
	color: var(--greyFour);
	display: inline-block;
	font-family: var(--font-sm-title), 'opensans-bold', sans-serif;
	font-size: 18px;
	font-variant: small-caps;
	font-weight: normal;
	line-height: 24px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h5, h1.xsm-title, h2.xsm-title, h3.xsm-title, h4.xsm-title, .xsm-title {
	color: var(--greyFour);
	display: inline-block;
	font-family: var(--font-sm-title), 'opensans-bold', sans-serif;
	font-size: 16px;
	font-weight: normal;
	line-height: 22px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
strong, b, table th {
	font-weight: normal;
	font-family: var(--font-text-strong), 'opensans-bold', serif;
}
svg {
	vertical-align: middle;
	width: 25px;
	height: 25px;
	fill:#000;
}
i {
	font-style: normal;
	font-family: var(--font-text-italic), 'opensans-italic', sans-serif;
}
blockquote {
	padding: 10px 20px;
	margin: 15px 0;
	font-size: 17.5px;
	border-left: 5px solid var(--color-4);
}
blockquote.testimonial img {
	height: 70px;
	width: 70px;
	margin: -10px auto -10px 0;
}
blockquote.testimonial strong {
	display: block;
}
section {							/*contains a wrapper and std-padding*/
	background-position: center;
	background-size:cover;
	width:100%;
	padding: 75px 20px;
	position: relative;
}
section.no-padding {
	padding: 0;
}
section.large {
	max-width: 1920px;
	margin: 0 auto;
}
section.landing {				/*styling for landing sections*/
	background-position: center; 
	background-size: cover;
	background-repeat: no-repeat;
}
body.terms-of-service section:first-of-type,
 body.privacy-policy section:first-of-type {
	background-image: none;
 }
.wrapper {
	max-width:1400px;
	width:100%;
	margin:0 auto;
}
.wrapper.large {max-width: 1920px;}
.wrapper.small {max-width: 1000px;}
.wrapper.xsmall {max-width: 750px;}
.std-padding {padding: 75px 20px;}
.less-padding {padding: 40px 15px;}
.grey {background-color: var(--greyZero);}
.object-fit {width: 100%;height: 200px;object-fit: cover;}
.left {text-align: left;}
.center {text-align: center;}
.right{text-align: right;}
.align-left {
	float:left;
	padding:0;
	margin: 0 12px 2px 0;
}
.align-right {
	float:right;
	padding:0;
	margin:0 0 2px 12px;
}
@media only screen and (max-width:900px) {
	.stopFloatOnTablet {
		float: none;
		display: block;
		margin: 12px auto;
	}
}
@media only screen and (max-width:640px) {
	.stopFloatOnMobile {
		float: none;
		display: block;
		margin: 12px auto;
	}
}
@media only screen and (max-width:399px) {
	.align-left,
	 .align-right {
		float:none;
		display: block;
		margin: 12px auto;
	}
}
ul.list {
	overflow: hidden;
	list-style: none;
	text-align: left;
	padding: 15px 10px;
	margin: 0 0 0 40px;
}
ul.list li {
	float: left;
	display: inline;
	width:33%;
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: 5px 50%;
	font-size: 18px;
	line-height: 24px;
	padding: 15px 10px 15px 50px;
}
ul.list.one-col li {
	width: 100%;
}
@media only screen and (max-width:900px) {
	ul.list {
		margin: 0;
		padding: 10px 5px;
	}
	ul.list li {
		width: 50%;
	}
}
@media only screen and (max-width:640px) {
	ul.list {
		padding: 10px 0px;
	}
	ul.list li {
		font-size: 16px;
		background-size: 20px;
		padding: 10px 10px 10px 30px;
	}
}
@media only screen and (max-width:390px) {
	ul.list li {
		width: 100%;
	}
}
iframe {
	display: block;
	width:100%;
	margin: 0 auto;
	border:0;
}
.parallax {
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
}
/*------------------------------------*\
	STRUCTURE
\*------------------------------------*/
table, table tr.even, table tr.alt, table tr:nth-of-type(even) {background: none;border:0;}
div.table,div.table-noresponse{display:table;width:100%}div.table div.tableRow,div.table-noresponse div.tableRow-noresponse{display:table-row;width:100%}div.table div.tableRow div.tableCell,div.table-noresponse div.tableRow-noresponse div.tableCell-noresponse{display:table-cell;vertical-align:middle}
.small-1{width:8.33333%}.small-2{width:16.66667%}.small-3{width:25%}.small-4{width:33.33333%}.small-5{width:41.66667%}.small-6{width:50%}.small-7{width:58.33333%}.small-8{width:66.66667%}.small-9{width:75%}.small-10{width:83.33333%}.small-11{width:91.66667%}.small-12{width:100%}
@media only screen and (min-width: 640px){.medium-1{width:8.33333%}.medium-2{width:16.66667%}.medium-3{width:25%}.medium-4{width:33.33333%}.medium-5{width:41.66667%}.medium-6{width:50%}.medium-7{width:58.33333%}.medium-8{width:66.66667%}.medium-9{width:75%}.medium-10{width:83.33333%}.medium-11{width:91.66667%}.medium-12{width:100%}}
@media only screen and (min-width: 1024px){.large-1{width:8.33333%}.large-2{width:16.66667%}.large-3{width:25%}.large-4{width:33.33333%}.large-5{width:41.66667%}.large-6{width:50%}.large-7{width:58.33333%}.large-8{width:66.66667%}.large-9{width:75%}.large-10{width:83.33333%}.large-11{width:91.66667%}.large-12{width:100%}}
.flex-container{/*https://www.w3schools.com/css/css3_flexbox.asp*/display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center}.flex-container.centerItems{align-items:center}.flex-container.col{flex-direction:column}.flex-container .flex-block{display:block;width:25%;transition-duration:0.8s}.flex-container .flex-block.one-eighth{width:12.5%}.flex-container .flex-block.one-third{width:33.33%}.flex-container .flex-block.one-half{width:50%}.flex-container .flex-block.two-thirds{width:66.66%}.flex-container .flex-block.three-quarters{width:75%}.flex-container .flex-block.full{width:100%}.flex-container .flex-block.noResponse{width:25%!important}.flex-container .flex-block.one-eighth.noResponse{width:12.5%!important}.flex-container .flex-block.one-third.noResponse{width:33.33%!important}.flex-container .flex-block.one-half.noResponse{width:50%!important}.flex-container .flex-block.two-thirds.noResponse{width:66.66%!important}.flex-container .flex-block.three-quarters.noResponse{width:75%!important}.flex-container .flex-block.full.noResponse{width:100%!important}@media only screen and (max-width:900px){.flex-container.reverseOnTablet{flex-direction:column-reverse}.flex-container .flex-block.one-half,.flex-container .flex-block.two-thirds,.flex-container .flex-block.three-quarters,.flex-container .flex-block.fullOnTablet,.flex-container .flex-block.one-third.fullOnTablet{width:100%}.flex-container .flex-block,.flex-container .flex-block.one-third,.flex-container .flex-block.one-half.lateResponse{width:50%}.flex-container .flex-block.one-eighth{width:25%}}@media screen and (max-width:640px){.flex-container.reverseOnMobile{flex-direction:column-reverse}.flex-container .flex-block,.flex-container .flex-block.one-third,.flex-container .flex-block.two-thirds,.flex-container .flex-block.one-half.lateResponse{width:100%}.flex-container .flex-block.one-eighth,.flex-container .flex-block.lateResponse,.flex-container .flex-block.one-third.lateResponse{width:50%}.flex-container .flex-block.one-eighth.lateResponse{width:25%}}@media screen and (max-width:390px){.flex-container .flex-block.one-eighth,.flex-container .flex-block.lateResponse,.flex-container .flex-block.one-eighth.lateResponse,.flex-container .flex-block.one-third.lateResponse{width:100%}}
.announcement-bar {
	background-color: var(--color-4);
}
.announcement-bar p {
	padding: 10px;
	text-align: center;
	color: #fff;
}
.announcement-bar a {
	font-family: var(--font-text-strong), 'opensans-bold', serif;
	text-decoration: underline;
	transition-duration: 0.3s;
	color: var(--color-1);
}
.announcement-bar a:hover {
	color: var(--color-4);
}
header {
	text-align:center;
	background-color: hsla(207, 45%, 13%, 100%);;
	position: relative;
	z-index: 100;
}
header div#mobileGrippy {
	display:none;
}
header .mid {
	width:100%;
	max-width: 1400px;
	margin: 0 auto;
}
header .mid .flex-container.wrapper {
	border-bottom: 1px solid var(--greyOne);
}
/*header .mid */.flex-block.logo-container {
	width: 20%;
	padding: 10px 0 10px 10px;
	background-color: var(--color-1);
	background-color: #fff;
}
/*header .mid .flex-block.logo-container */a.logo {
	display: block;
	text-decoration: none;
}
/*header .mid .flex-block.logo-container */a.logo img {
	max-width: 100px;
	vertical-align: middle;
}
/*header .mid .flex-block.logo-container*/ a.logo span.name {
	font-size: 30px;
	line-height: 30px;
	display: inline-block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	text-align: left;
	color: #fff;
	vertical-align: middle;
	padding-left: 10px;
	letter-spacing: 1.5px;
}
/*header .mid .flex-block.logo-container */a.logo span.name span {
	display: block;
}
header .mid .biz-link {
	display: block;
	padding: 14px;
	text-decoration-color: transparent;
	max-width: fit-content;
}
header .mid .biz-link span {
	color: #fff;
	font-size: 20px;
	line-height: 20px;
	padding-left: 10px;
	text-decoration: underline;
	text-decoration-color: transparent;
}
header .mid:hover span {
	text-decoration-color: var(--color-2);
}
header .bot {
	padding: 20px 10px;
	width: 100%;
}
header a.logo {
  margin-left: 8px;
}
header nav {
	display:inline-block;
	vertical-align: middle;
}
header nav ul {
	list-style:none;
	position:relative;
	text-align:right;
	margin:0;
	padding:0
}
header nav ul li {
	position:relative;
	display:inline-block;
	vertical-align: middle;
	background-image: none;
	margin:0;
	padding:0;
}
header nav ul li a {
	font-family: var(--font-nav), 'opensans-regular', serif;
	display:block;
	text-decoration:none;
	font-size:21px;
	line-height: 18px;
	margin:0 4px;
	padding: 15px 10px;
	text-align:center;
	color: #fff;
	border: 2px solid transparent;
	transition-duration: 0.6s;
}
header nav ul li a:hover {
	color: var(--color-2);
	border-bottom: 2px solid #fff;
}
header nav ul li a span {
	display: inline-block;
	padding: 18px 6px;
	transition-duration: 0.8s;
}
header nav ul li a.current-page {
	color: var(--color-2);
	border-bottom: 2px solid #fff;
}
header nav ul li a img {
	display: inline-block;
	vertical-align: middle;
	height: 15px;
	width: 15px;
}
header nav ul li.withChild a:hover {
	box-shadow: 12px 0 15px -4px rgba(31, 73, 125, 0.8), -12px 0 8px -4px rgba(31, 73, 125, 0.8);
	box-shadow: 0 4px 10px 0 rgba(170,170,170,0.5);
	box-shadow: 6px 0 12px -8px rgba(31, 73, 125, 0.8), -6px 0 12px -8px rgba(31, 73, 125, 0.8);
	box-shadow: 0 -1px 11px 2px rgba(170,170,170,0.5);
} 
header nav ul li ul.children {
	display:none;
	position:absolute;
	top:53px;
	left:3px;
	width: 213px;
	height: auto;
	text-align: center;
	text-align: left;
	background-color: #fff;
	z-index:100;
	padding: 0;
	margin: 0;
	border: 1px solid #dcdcdc;
	border-top: 1px solid transparent;
	box-shadow: 0 14px 15px 2px rgba(170,170,170,0.5);
}
header nav ul li ul.children:hover {}
header nav ul li ul.children li {
	display:block;
	text-align: center;
	padding: 0;
	margin: 0;
}
header nav ul li ul.children li a {
	display: block;
	width: 100%;
	padding:12px 6px;
	color: var(--color-2);
	margin: 0;
}
header nav ul li ul.children li a:hover {
	color: #fff;
	border-color: #fff;
	background-color: var(--color-2);
}
div.content {
	background-color: #fff;
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
}
.relative {
	position: relative;
}
.cta {
	background-color: var(--color-2);
	display: inline-block;
	border: 1px solid transparent;
	color: #fff;
	font-family: var(--font-cta), 'opensans-bold', serif;
	font-size: 20px;
	text-decoration: none;
	margin:12px 8px;
	overflow: hidden;
	padding: 25px 50px 25px 28px;
	position: relative;
	transition: color 0.8s ease, border-color 0.8s ease, box-shadow 0.8s ease;
	vertical-align: middle;
	z-index: 1;
}
.cta::before {
	content: "";
	position: absolute;
	top: -1px;
	right: -1px;
	bottom: -1px;
	left: -1px;
	background: var(--color-4);
	clip-path: polygon(108% 0, 100% 0, 100% 101%, 90% 100%);
	transition: clip-path 0.4s cubic-bezier(0.21, 0.6, 0.35, 1);
	z-index: -1;
}
.cta:hover::before {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.cta:hover {
	color: #fff;
	border-color: var(--color-1);
	box-shadow: 0px 0px 5px var(--color-4);
}
.cta span {
	font-size: 30px;
}
.cta.large {
	background-position: 95% 50%;
}
.cta.large:hover {
	background-position: 130% 50%;
}
.cta.v2 {
	background-color: hsla(207, 45%, 13%, 100%);
	color: #fff;
	border: 2px solid #fff;
}
.cta.v2:hover {
	box-shadow: 0px 0px 5px var(--color-4);
}
.cta.transparent {
	background-image: url('uploads/icon-arrow-right-color-1.svg');
	background-color: transparent;
	color: var(--color-2);
	border-color: var(--color-2);
}
.cta.transparent:hover {
	background-color: var(--color-2);
	border-color: var(--color-2);
	color: #fff;
	box-shadow: 0px 0px 5px var(--color-2);
}
.cta.white {
	background-image: url('uploads/icon-arrow-right-white.svg');
	background-color: transparent;
	color: #ffffff;
	border-color: #ffffff;
}
.cta.white:hover {
	background-color: var(--color-2);
	box-shadow: 0px 0px 5px var(--color-2);
}
.cta.appt {
	background-image: url('uploads/icon-calendar.svg');
	background-position: 95% 50%;
}
.cta img {
	display:inline-block;
	vertical-align: middle;
	width:30px;
}
.cta span {
	display:inline-block;
	vertical-align: middle;
	padding:0 0 0 8px;
}
.frame {
	border-radius: 4px;
	border-top: 4px solid var(--color-2);
	border-right: 1px solid var(--color-2);
	border-bottom: 4px solid var(--color-4);
	border-left: 1px solid var(--color-2);
	transition-duration: 0.8s;
}
.frame:hover {
	box-shadow: 0px 0px 10px var(--color-4);
}
.biz-link img {
	max-width: 30px;
}
.texture-bg {
	background: url(uploads/roof-rejuvenate-lancaster-texture-1.svg);
	background-size: cover;
	background-repeat: no-repeat;
}
.texture-bg-blue {
	background: url(uploads/roof-rejuvenate-lancaster-texture-bg-blue.svg);
	background-size: cover;
	background-repeat: no-repeat;
}
.dark-blue {
	background-color: hsla(207, 45%, 13%, 100%);
}
.dark-blue h2,
 .dark-blue h3,
 .dark-blue p {
 	color: #fff;
}
.dark-blue blockquote {
	color: #fff;
}
.lines-bg {
	background-image: repeating-linear-gradient(
		to right,
		transparent,
		transparent 299px,
		rgba(100, 174, 212, 0.2) 299px,
		rgba(100, 174, 212, 0.2) 300px,
		transparent 300px,
		transparent 600px
	);
}
.light-blue {
	background-color: var(--color-6);
}
.top-bot {
	border-top: 1px solid rgba(100, 174, 212, 0.2);
	border-bottom: 1px solid rgba(100, 174, 212, 0.2);
}
.light-text {
	color: #000;
	font-family: var(--font-light), 'opensans-bold', Arial;
	font-size: 50px;
	line-height: 60px;
	padding-bottom: 10px;
}
.content-container {
	padding: 20px 30px;
}
.sm-orange {
	color: var(--color-4);
	display: block;
	font-size: 18px;
	line-height: 24px;
	padding-bottom: 30px;
}
.sm-blue {
	color: var(--color-5);
	display: block;
	font-size: 18px;
	line-height: 24px;
	padding-bottom: 30px;
}
.accordion {
  margin-top: 30px;
  border-top: 1px solid #ccc;
}
details {
  border-bottom: 1px solid #ccc;
  padding: 15px 0;
}
summary {
	font-size: 22px;
	color: #fff;
	cursor: pointer;
	list-style: none;
	position: relative;
	padding-left: 25px;
}
summary::before {
	content: "+";
	color: #fff;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 18px;
	line-height: 1;
}
details[open] summary::before {
  content: "–";
  color: #fff;
}
.before-after-container {
	position: relative;
	padding: 10px;
}
.before-after-container div {
	width: 60%;
	height: 60%;
}
.before-after-container div.before-block {
	position: relative;
	z-index: 10;
}
.before-after-container div.before-block:hover {
	z-index: 12;
}
.before-after-container div.after-block {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 11;
}
.before-after-container div span {
	display: block;
	padding: 12px;
	text-align: center;
	color: #fff;
	background-color: var(--color-4);
}
body.home section.landing {
	background: url(uploads/roof-rejuvenate-lancaster-texture-1.svg);
	background-size: cover;
	background-color: hsla(207, 45%, 13%, 100%);
}
body.home section.landing .content-container {
	padding: 80px 0 100px;
}
body.home section.landing h1 {
	text-align: left;
	font-size: 77px;
	line-height: 80px;
	padding-bottom: 60px;
	width: 85%;
}
body.home section.landing p {
	color: #fff;
}
body.home section.landing .img-block img.lg {
	position: absolute;
	top: 15%;
	left: 71%;
}
body.home section.landing .cycle-slide {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-landing-1500x500-3.webp);
	background-position: center; 
	background-size: cover;
	height: 500px;
	width:100%;
	overflow:hidden;
	text-align:center;
	z-index: 100;
}
body.home section.landing .cycle-slide.two {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-landing-1500x500-4.webp);
}
body.home .banner .card-block {
	padding: 20px;
}
body.home .banner .card {
	text-align: left;
	border-bottom: 8px solid var(--color-3);
}
body.home .banner .card h3,
 body.home .banner .card .lg-text {
	display: block;
	text-align: left;
	padding-bottom: 20px;
}
body.home .banner .card .lg-text {
	color: var(--color-4);
	font-size: 40px;
	line-height: 45px;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	letter-spacing: 4px;
}
body.home .banner .card h3 {
	font-family: var(--font-light), 'opensans-bold', Arial;
	font-size: 25px;
	line-height: 30px;
}
body.home .banner .card p {
	padding-bottom: 20px;
	margin-bottom: 14px;
}
body.home .c-section .content-container.sm {
	width: 72%;
}
body.home .c-section .top-pad {
	padding-top: 50px;
}
body.home .c-section .bot-pad {
	padding-bottom: 50px;
}
body.home .c-section .line-accent {
	border-bottom: 8px solid var(--color-5);
	height: 8px;
	display: block;
	width: 220px;
	margin-bottom: 50px;
}
body.home .c-section .med-text {
	font-family: var(--font-cta), 'opensans-bold', Arial;
	font-size: 33px;
	line-height: 43px;
}
body.home .c-section .lg-num {
	font-family: var(--font-title), 'opensans-bold', Arial;
	color: var(--color-2);
	display: block;
	font-size: 100px;
	line-height: 110px;
	padding: 50px 0 20px;
}
body.home .c-section .img-block img {
	padding: 0 10px;
}
body.home section.gallery {
	padding: 75px 20px 250px;
}
body.home section.gallery .img-block.top-row {
	padding: 10px 10px 100px;
}
body.home section.gallery .img-block.bot-row {
	padding: 100px 10px 10px;
}
body.home .d-spot .card-block {
	padding: 0 20px;
	margin-top: 35px;
}
body.home .d-spot .card {
  background-image: url(uploads/roof-rejuvenate-lancaster-home-d-spot-352x508-5.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 667px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  padding: 183px 20px 20px 20px;
  position: relative;
  transition: box-shadow 0.3s ease;
}
body.home .d-spot .card.v2 {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-d-spot-352x508-6.webp);
}
body.home .d-spot .card.v3 {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-d-spot-352x508-7.webp);
}
body.home .d-spot .card.v4 {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-d-spot-352x508-8.webp);
}
body.home .d-spot .card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent 80%);
  z-index: 1;
}
body.home .d-spot .card:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}
body.home .d-spot .card .content-container {
	padding: 190px 20px 20px; 
	z-index: 2;
	position: relative;
}
body.home .d-spot .content-container h3 {
  font-size: 26px;
  margin-bottom: 4px;
  text-align: left;
}
body.home .d-spot .content-container h3,
 body.home .d-spot .content-container p {
 	color: #fff;
 	transition-duration: 0.3s;
 }
body.home .d-spot .content-container p {
  margin-bottom: 24px;
}
body.home .d-spot .line-accent {
  display: block;
  width: 60px;
  height: 4px;
  background-color: var(--color-5);
  border-radius: 2px;
  margin-top: auto;
  margin-left: 0;
  position: relative;
  transition-duration: 0.3s;
  z-index: 3;
}
body.home .d-spot .card:hover h3,
body.home .d-spot .card:hover p,
body.home .d-spot .card:hover .line-accent {
  transform: translateY(-120px);
  transition: transform 0.3s ease;
}
body.home .d-spot .card .cta,
 body.home .f-spot .card .cta {
  position: absolute;
  left: 20px;
  bottom: 20px;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none;
}
body.home .d-spot .card:hover .cta,
 body.home .f-spot .card:hover .cta {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
body.home .e-spot .flex-container {
	align-items: stretch;
}
body.home .e-spot .img-block {
	background-image: url(uploads/roof-rejuvenate-lancaster-home-e-spot-600x684-1.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
body.home .e-spot .content-container {
	padding: 40px 30px;
}
body.home section.f-spot .card-block {
	padding: 35px;
}
body.home section.f-spot .card {
	background: #fff;
	position: relative;
}
body.home section.f-spot .img-container img,
 body.home section.g-section .img-container img {
	width: 100%;
	object-fit: cover;
}
body.home section.f-spot .card .content-container {
	padding: 40px 30px 30px 60px;
}
body.home section.f-spot .card h3 {
	color: var(--color-3);
	font-size: 32px;
	line-height: 40px;
	border-bottom: 1px dotted var(--color-3);
	padding-bottom: 0;
}
body.home section.f-spot .card p {
	padding: 25px 0;
}
body.home section.g-section p {
	padding: 20px 0 0;
}
body.home section.g-section .img-container {
	margin-top: 40px;
}
body.home section.contact input,
 body.home section.contact textarea {
 	background-color: var(--greyZero);
 }
/*forms styling*/section.contact p{max-width:900px;margin:0 auto}.form-container{max-width:1000px;margin:0 auto;padding-top: 20px}div.form-input{display:inline-block;padding:0 10px 10px 0;margin:0;width:33%}div.form-input:has(div.g-recaptcha),div.form-input:has(textarea[name=w3form_name]),div.form-input:has(textarea[name=w3form_websitesFormID]){width:100%}div.form-input:has(textarea[name=w3form_message]){width:100%;}label{display:block;text-align:left;color:#444;font-family:var(--font-text-strong),opensans-bold,serif}div.form-input div.g-recaptcha,input,textarea{display:inline-block;vertical-align:top}input,textarea{font-family:var(--font-text-regular),opensans-regular,serif;width:100%;margin:0;padding:12px 16px;font-size:16px;line-height:18px;cursor:pointer;color:#1f1f1f;border:1px solid #ccc;box-shadow:none;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;border-radius:4px;background-color:#fff;background-image:none}textarea{height:144px}button{font-family:var(--font-text-strong),opensans-bold,serif;padding:6px 12px;color:#fff;font-size:18px;margin:10px auto;background-color:#346fd4;border-radius:3px;border:0;cursor:pointer;transition:.25s}@media only screen and (max-width:640px){div.form-input{width:100%}}
/*testimonial styling*/ #testimonials #google-reviews{display:flex;flex-wrap:wrap;margin:0}#testimonials .review-item{margin:8px;padding:1.8em;color:#000;flex:1 1 20%;background-color:#fff;border:1px #bfbfbf solid;box-shadow:0 0 15px 2px rgba(170,170,170,.2);transition-duration:.8s}#testimonials .review-item:hover{border:1px solid var(--color-2)}.review-meta,.review-stars{text-align:center;font-size:115%}.review-author{text-transform:capitalize;font-size:28px;line-height:40px}.review-author img{max-width:100px;vertical-align:middle}.review-date{opacity:.6;display:block;font-size:22px;line-height:22px}.review-text{line-height:1.55;text-align:left;max-width:32em;margin:auto}.review-stars ul{display:inline-block;list-style:none;margin:0;padding:0}.review-stars ul li{background-image: none;padding: 0; float:left;margin-right:1px;line-height:1}.review-stars ul li i{color:#fed03d;font-size:48px;font-style:normal}.review-stars ul li i.inactive{color:#c6c6c6}.star:after{content:"\2605"}#map-plug{display:none}@media only screen and (max-width:900px){#testimonials .review-item{flex:1 1 48%}}@media only screen and (max-width:640px){#testimonials .review-item{flex:1 1 100%}}
/*PP and TOU styling*/section#privacy-policy,section#terms-of-use{padding:50px 15px;background-color:#fff;max-width:1000px;margin:auto}section#privacy-policy h1,section#terms-of-use h1{padding:10px;text-transform:uppercase}section#privacy-policy h3,section#terms-of-use h3{padding:30px 10px 10px 10px}section#privacy-policy p,section#terms-of-use p{padding:10px}
footer {
	text-align:left;
	background: url(uploads/roof-rejuvenate-lancaster-texture-1.svg);
	background-size: cover;
	background-color: var(--greyFive);
}
footer,
 footer .flex-container .flex-block a,
 footer .med-title {
	color: var(--greyZero);
}
footer a {
	text-decoration: none;
}
footer ul li {
	list-style: disc;
	background-image: none;
	padding: 0;
}
footer span.site-tagline {
	padding-left: 0;
}
footer .flex-container {
	text-align:left;
	padding: 60px 0 20px;
}
footer .flex-container .flex-block {
	padding: 30px 20px 0px;
}
footer .flex-container .flex-block .footer-block-container {
	padding: 0 0 30px;
}
footer .flex-container .flex-block a {
	display: inline-block;
	padding: 12px 0;
	color: var(--greyZero);
	transition-duration: 0.8s;
}
footer .flex-container .flex-block a.biz-link {
	display: block;
}
footer .flex-container .flex-block a:hover {
	color: var(--color-2);
}
footer .flex-container .flex-block a svg path {
	fill: var(--greyThree);
}
footer .biz-link img {
	max-width: 25px;
}
footer span.words {
	padding-left: 5px;
}
footer .flex-container .flex-block.site-name-block a {
	display: block;
}
footer .flex-container .flex-block.site-name-block a svg path {
	fill:#475993;
}
footer .flex-container .flex-block.info-block a svg {
	height: 20px;
	width: 20px;
}
footer .flex-container .flex-block ul {
	padding: 0 0 0 20px;
	list-style: none;
}
footer .flex-container .flex-block ul li {
	display: block;
}
.hours-container table {
	text-align: left;
	margin:10px auto 10px 0;
	border-collapse:collapse;
}
footer .hours-container table {
	margin: 0 auto 0 0;
}
.hours-container td {
	padding: 4px;
}
.hours-container table tbody tr.selected {
	background-color: #fff;
	color: var(--color-4);
	font-family: var(--font-text-regular), 'opensans-regular', serif;
	border: 1px solid var(--color-3);
}
.hours-container  table tbody tr td:nth-of-type(3n-2) {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	padding: 4px 8px;
}
.hours-container  table tbody tr td:nth-of-type(3n-1) {
	padding: 0 8px 0 0;
}
.hours-container  table tbody tr td:nth-of-type(3n) {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	padding: 0 8px 0 0;
}
footer div.footer-sub {
	padding: 0 20px 30px;
	text-align:left;
	color:var(--greyZero);
}
footer div.footer-sub .disclaimer {
	font-size: 14px;
	line-height: 16px;
}
footer div.footer-sub img {
	width:70px;
	margin:0 25px 0 0;
}
footer div.footer-sub a {
	color:var(--greyZero);
}
footer div.footer-sub p.copyright {
	color:var(--greyZero);
	font-size:14px;
	text-align:left;
	margin:0 0 8px 0;
}
div.footer-brand-container {
	padding:10px 10px 10px 0;
	text-align: right;
}/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/
@font-face {
	font-family: 'title';
	src: url('fonts/coolvetica_rg-webfont.woff2') format('woff2'),
		 url('fonts/coolvetica_rg-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'cta';
	src: url('fonts/poppins-medium-webfont.woff2') format('woff2'),
		 url('fonts/poppins-medium-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'regular';
	src: url('fonts/poppins-regular-webfont.woff2') format('woff2'),
		 url('fonts/poppins-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'light';
	src: url('fonts/poppins-light-webfont.woff2') format('woff2'),
		 url('fonts/poppins-light-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'bold';
	src: url('fonts/poppins-bold-webfont.woff2') format('woff2'),
		 url('fonts/poppins-bold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'italic';
	src: url('fonts/poppins-italic-webfont.woff2') format('woff2'),
		 url('fonts/poppins-italic-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-italic';
	src: url('fonts/opensans-italic-webfont.woff2') format('woff2'),
		 url('fonts/opensans-italic-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-regular';
	src: url('fonts/opensans-regular-webfont.woff2') format('woff2'),
		 url('fonts/opensans-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-bold';
	src: url('fonts/opensans-bold-webfont.woff2') format('woff2'),
		 url('fonts/opensans-bold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-extrabold';
	src: url('fonts/opensans-extrabold-webfont.woff2') format('woff2'),
		 url('fonts/opensans-extrabold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}/*------------------------------------*\
	RESPONSIVE
\*------------------------------------*/
@media only screen and (max-width:1445px) {
	body.home .c-section .img-block img {
		padding: 10px;
	}
	body.home .d-spot .card-block {
		padding: 0 10px;
	}
}
@media only screen and (max-width:1443px) {
	body.home section.landing .content-container {
		padding: 80px 15px 100px;
	}
	body.home section.landing .cycle-slide {
		width: 97%;
		margin: 0 20px;
	}
	body.home .c-section .content-container.sm {
		width: 80%;
	}
}
@media only screen and (max-width:1200px) {
	body.home .d-spot .card {
		min-height: 730px;
	}
}
@media only screen and (max-width:1138px) {
	header a.logo img {
		margin-left: 8px;
	}
	body.home section.landing h1 {
		width: 100%;
	}
	body.home section.landing .img-block img.lg {
		position: relative;
		top: 0;
		left: 0;
	}
	body.home .d-spot .card:hover h3,
	body.home .d-spot .card:hover p,
	body.home .d-spot .card:hover .line-accent {
		transform: translateY(-140px);
	}
}
@media only screen and (max-width:1024px) {			/*foundation medium breakpoint*/
	h1 {font-size: 30px;line-height: 40px;}
	h2 {font-size: 26px;line-height: 30px;}
	section,
	 .std-padding {
		padding: 60px 20px;
	}
	.less-padding {
		padding: 30px 10px;
	}
	.light-text {
		font-size: 25px;
		line-height: 30px;
	}
	summary {
		font-size: 20px;
	}
	header div.logo {
		text-align: center;
	}
	header nav ul {
		text-align: center;
	}
	body.home section.landing .cycle-slide {
		width: 93%;
	}
	body.home .d-spot .card {
		min-height: 750px;
	}
	body.home section.f-spot .card-block {
		padding: 20px;
	}
}
@media only screen and (max-width:900px) {
	ul, ol {padding: 15px 0 15px 5px;}
	header .flex-container .logo-block {
		text-align: center;
	}
	header .flex-block {
		padding: 10px 0;
	}
	 header .biz-link img {
		max-width: 25px;
	}
	header .mid .biz-link span {
		font-size: 15px;
	}
	body.home section.landing .content-container {
		padding: 50px 15px;
	}
	body.home section.landing h1 {
		font-size: 50px;
		line-height: 60px;
		padding-bottom: 20px;
	}
	body.home section.landing h1,
	 body.home section.landing .cta-block {
		text-align: center;
	}
	body.home section.landing .img-block {
      padding: 20px 0 0;
      text-align: center
	}
	body.home section.landing .cycle-slide {
		height: 300px;
		margin: 0 20px 0 50px;
		width: 85%;
	}
	body.home .c-section .content-container.sm {
		width: 100%;
	}
	body.home .c-section .extra-pad {
		padding: 30px 0;
	}
	body.home .c-section .med-text,
	 body.home section.f-spot .card h3 {
		font-size: 25px;
		line-height: 30px;
	}
	body.home .c-section .lg-num {
		font-size: 60px;
		line-height: 70px;
		padding: 20px 0 20px;
	}
	body.home .c-section .img-block img {
		max-width: 42%;
	}
	body.home section.gallery {
		padding: 60px 20px;
	}

	body.home section.gallery .img-block.top-row,
	 body.home section.gallery .img-block.bot-row {
		padding: 10px;
	}
	.before-after-container {
		padding: 0;
	}
	.before-after-container div.after-block {
		position: relative;
	}
	body.home .d-spot .card {
		min-height: 0;
	}
	body.home .d-spot .cta-block {
		text-align: left;
		padding: 0 30px;
	}
	body.home .d-spot .card:hover h3,
	body.home .d-spot .card:hover p,
	body.home .d-spot .card:hover .line-accent {
		transform: translateY(-120px);
	}
	body.home .e-spot .img-block {
		padding: 180px;
		order: 2;
	}
	body.home section.f-spot .card .content-container {
		padding: 40px 30px 30px 30px;
	}
}
@media only screen and (max-width:640px) { 			/*foundation small breakpoint*/
	p {font-size: 16px;line-height: 24px;}
	h1 {font-size: 26px;line-height: 32px;}
	h2 {font-size: 22px;line-height: 26px;}
	h3 {font-size: 18px;line-height: 24px;}
	ul {padding: 15px 0 15px 0;}
	ol {padding: 15px 0 15px 20px;}
	section,
	 .std-padding {
		padding: 30px 10px;
	}
	.less-padding {
		padding: 10px 2.5px;
	}
	div.table,
	 div.table div.tableRow,
	 div.table div.tableRow div.tableHeader,
	 div.table div.tableRow div.tableCell {
		display:block;
		width:100%;
	}
	summary {
		font-size: 18px;
	}
	.accordion {
		margin-top: 0;
	}
	header {
		position: relative;
		text-align: center;
	}
	header .nav-block {
		padding: 0;
	}
	header div#mobileGrippy {
		text-align:center;
		font-size:30px;
		cursor:pointer;
		display:inline-block;
		vertical-align: middle;
		padding:12px 6px;
		color:#fff;
		position: absolute;
		top: 22px;
		right: 22px
	}
	header nav {
		display: none;
		text-align: center;
	}
	header div.logo {
		display:inline-block;
		vertical-align: top;
		width:87%;
		padding:10px 6px 0 6px;
		text-align:center;
	}
	header div.logo a {
		display:block;
		text-align:center;
	}
	header nav ul {
		text-align:center;
	}
	header nav ul li {
		display: inline-block;
	}
	header nav ul li a img {
		display: none;
	}
	header .cta-block {
		text-align: center;
	}
	.cta {
		margin:6px 0;
	}
	body.home section.landing h1 {
		font-size: 28px;
		line-height: 38px;
	}
	body.home section.landing .biz-link span {
		font-size: 18px;
	}
	body.home section.landing .cycle-slide {
		height: 200px;
		margin: 0 20px 0 30px;
	}
	body.home .banner .card .lg-text {
		font-size: 30px;
		line-height: 40px;
	}
	body.home .banner .card h3,
 	 body.home .banner .card .lg-text {
		padding-bottom: 15px;
	}
	body.home .banner .card h3 {
		font-size: 20px;
	}
	body.home .banner .card h3, body.home .banner .card .lg-text {
		padding-bottom: 10px;
	}
	body.home .c-section .line-accent {
		margin-bottom: 0;
	}
	body.home .c-section .lg-num {
		font-size: 40px;
		line-height: 50px;
	}
	body.home .c-section .med-text,
	 body.home .d-spot .content-container h3 {
		font-size: 20px;
	}
	body.home .d-spot .card {
		padding: 130px 20px 20px;
	}
	body.home .d-spot .card::before {
		background: linear-gradient(to top, rgba(0, 0, 0, 0.9), transparent 100%);
	}
	body.home .d-spot .card:hover h3,
	body.home .d-spot .card:hover p,
	body.home .d-spot .card:hover .line-accent {
		transform: translateY(-100px);
	}
	body.home .d-spot .card .content-container {
		padding: 20px;
	}
	body.home section.f-spot .card h3 {
		font-size: 20px;
	}
	body.home section.g-section p {
		padding: 0;
	}
	body.home section.g-section .content-container.cta-container {
		padding: 0;
	}
	footer,
	 footer .flex-container .flex-block,
	 footer .flex-container .flex-block ul li {
		text-align:center;
	}
	footer .flex-container {
		padding: 20px 0;
	}
	footer table,
	 footer .hours-container table {
		margin:0 auto;
		text-align:center;
	}
	footer div.footer-sub {
		text-align: center;
		padding: 30px 20px;
	}
	footer div.footer-sub p.copyright {
		text-align:center;
	}
	footer .footer-brand-container {
		text-align:center;
	}
}
@media only screen and (max-width:420px) {
	body.home section.f-spot .card .content-container {
		padding: 20px 30px;
	}
}
@media only screen and (max-width:420px) {
	body.home .e-spot .img-block {
		max-width: 335px;
		padding: 150px;
	}
	body.home section.g-section .img-container {
		display: none;
	}
}
@media only screen and (max-width:350px) {

	body.home .d-spot .card {
		padding: 150px 20px 20px;
	}
	body.home .d-spot .card:hover h3,
	body.home .d-spot .card:hover p,
	body.home .d-spot .card:hover .line-accent {
		transform: translateY(-130px);
	}
	body.home .e-spot .img-block {
		padding: 100px;
	}
	body.home .f-spot .card .cta {
		left: 0;
		bottom: 0%;
	}
}/*------------------------------------*\
	MISC
\*------------------------------------*/
::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}/*------------------------------------*\
	PRINT
\*------------------------------------*/
@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}