/*

	SITE : BuildOneFor.Us
	AUTHOR : Ryan Zindorf - Hollowl Inc.
	
 */
 
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/*
 * Clean form inputs
 */
 
input, button {
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	border-radius: 0px;
	border: none;
}

/* ==========================================================================
   Animation
   ========================================================================== */

.animate {
	-webkit-transition: all 500ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
		-moz-transition: all 500ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
		  -o-transition: all 500ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
			  transition: all 500ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
	
	-webkit-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
		-moz-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
		  -o-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
			  transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750); 
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
	background-image: url(../img/grid.png);
	background-position: center
}
#app {
	position: absolute;
	margin: auto;
	padding: 0;
	top: 0; right: 0; bottom: 0; left: 0;
	background-color: #FFFFFF;
	overflow: hidden;
}
#appContainer {
	position: relative;
	margin: 0;
	height: 768px;
	padding: 0;
}
.appPage {
	position: relative;
	margin: 0;
	width: 768px;
	height: 768px;
	padding: 0;
	float: left;
}
.popUpLink {
	position: absolute;
	margin: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	top: 0; right: 0; bottom: 0; left: 0;
	cursor: pointer;
	background-color: #000000;
	opacity: 0.45;
}
.popUpContainer {
	position: absolute;
	margin: auto;
	width: 70%;
	height: 70%;
	padding: 0;
	top: 0; right: 0; bottom: 0; left: 0;
	border: 1px solid rgba(255,255,255,0.5);
	box-shadow: 0 0 25px #000000;
}
#pageWelcome {
	background-color: #29323F;
	background-image: url(../img/welcomeBG.png);
}
#welcomeText {
	margin: 39% 15% 0 15%;
	width: 70%;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	color: #FFFFFF;
}
#welcomeText span {
	color: #298DE1;
}
#welcomeContinue {
	margin: 18px 284px 0 284px;
	width: 200px;
	height: 50px;
	padding: 0;
	display: block;
	line-height: 50px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 36px;
	background: #FF7F66;
	cursor: pointer;
}
#welcomeContinue:hover {
	background: #FFFFFF;
	color: #FF7F66;
}
#welcomeSpaceShip {
	position: absolute;
	width: 200px;
	height: 200px;
	bottom: 25px; left: 284px;
	background-image: url(../img/welcomeSpaceShip.png);
	background-position: 0 0;
	background-size: 200px;
}
.rockets {
	-webkit-animation: spaceShipPlay 0.25s steps(2) infinite;
	   -moz-animation: spaceShipPlay 0.25s steps(2) infinite;
	    -ms-animation: spaceShipPlay 0.25s steps(2) infinite;
	     -o-animation: spaceShipPlay 0.25s steps(2) infinite;
	        animation: spaceShipPlay 0.25s steps(2) infinite;
	-webkit-transition: all 800ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
		-moz-transition: all 800ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
		  -o-transition: all 800ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
			  transition: all 800ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
	-webkit-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
		-moz-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
		  -o-transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750);
			  transition-timing-function: cubic-bezier(0.250, 0.250, 0.750, 0.750); 
}
@-webkit-keyframes spaceShipPlay {from {background-position: 0 -200px;}to {background-position: 0 -600px;}}
   @-moz-keyframes spaceShipPlay {from {background-position: 0 -200px;}to {background-position: 0 -600px;}}
    @-ms-keyframes spaceShipPlay {from {background-position: 0 -200px;}to {background-position: 0 -600px;}}
     @-o-keyframes spaceShipPlay {from {background-position: 0 -200px;}to {background-position: 0 -600px;}}
        @keyframes spaceShipPlay {from {background-position: 0 -200px;}to {background-position: 0 -600px;}}
#pUC1 {
	background-color: #29323F;
}
#pUC1 h3 {
	margin: 35px 0 0 0;
	width: 96%;
	padding: 2%;
	line-height: 50px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-weight: normal;
	font-size: 45px;
	color: #FFFFFF;
}
#pUC1 h3 span:first-of-type {
	font-size: 54px;
}
#pUC1 h3 span:last-of-type {
	font-size: 52px;
}
#pUC1 input {
	margin: 5px 70px 0 70px;
	width: 400px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
}
#pUC1 input[type=button] {
	margin: 5px 220px 0 220px;
	width: 120px;
	height: 120px;
	background-color: rgba(000,000,000,0.0);
	background-image: url(../img/pUCButtonGo.png);
	background-size: 120px;
}
#pUC1 p {
	margin: 0;
	padding: 10px 72px 0 72px;
	text-align: center;
	font-size: 12px;
	color: rgba(000,000,000,0.4);
}
#pagePresentation {
	background-color: #AECFEB;
}
#pUC2 {
	background-color: #AECFEB;
}
#pUC2 h3 {
	margin: 35px 35px 0 35px;
	width: 465px;
	padding: 0;
	line-height: 50px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-weight: normal;
	font-size: 45px;
	color: #FFFFFF;
}
#pUC2 a {
	position: relative;
	margin: 18px 180px 0 180px;
	width: 200px;
	height: 50px;
	padding: 0;
	display: block;
	line-height: 50px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 36px;
	background: #29323F;
	color: #FFFFFF;
	cursor: pointer;
	z-index: 1;
}
#presRequest {
	margin: 18px 100px 0 100px !important;
	width: 360px !important;
}
#pUC2 a:hover {
	background: #FFFFFF;
	color: #FF7F66;
}
#pUC2 img {
	position: absolute;
	bottom: 0; left: 0px;
	position: 0;
}
#pageQuote {
	position: relative;
	background-color: #EEEEEE;
	overflow: hidden;
}
#pageSlide2 {
	position: absolute;
	margin: 0;
	width: 18432px;
	height: 768px;
	padding: 0;
	list-style: none;
}
#pageSlide2 li {
	margin: 0;
	width: 768px;
	height: 768px;
	padding: 0;
	float: left;
}
#pageSlide2 li header {
	margin: 0;
	width: 768px;
	height: 700px;
	padding: 0;
}
#pageSlide2 li header img {
	width: 768px;
	height: 300px;
	background: white;
}
#pageSlide2 li header h2 {
	margin: 0 50px;
	width: 668px;
	height: 100px;
	padding: 0;
	line-height: 96px;
	color: #29323F;
	text-align: center;
	text-transform: uppercase;
	font-family: 'Amatic SC', cursive;
	font-size: 80px;
	font-weight: normal;
	border-bottom: 2px solid #FF7F66;
}
#pageSlide2 li header p {
	margin: 15px 75px 0 75px;
	width: 618px;
	height: 200px;
	padding: 0;
}
#pageSlide2 li header a {
	margin: 15px 75px 0 75px;
	width: 618px;
	height: 55px;
	padding: 0;
	background: #298DE1;
	display: block;
	cursor: pointer;
	line-height: 55px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 45px;
	color: #F1F4F9;
}
#pageSlide2 li header a:hover {
	background: #29323F;
}
#pageSlide2 li menu {
	margin: 0;
	width: 768px;
	height: 68px;
	padding: 0;
}
#pageSlide2 li menu a {
	margin: 0;
	width: 384px;
	height: 68px;
	padding: 0;
	display: block;
	line-height: 68px;
	float: left;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 50px;
	background: rgba(255,255,255,0.85);
	cursor: pointer;
}
#pageSlide2 li menu a:hover {
	background: #FF7F66;
	color: #FFFFFF;
}
#pageCustomer {
	background-color: #F1F4F9;
}
#customerData {
	margin: 34px;
	width: 700px;
	height: 700px;
}
#customerData p {
	margin: 0;
	width: 700px;
	padding: 0;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 30px;
}
#firstCD {
	margin: 0 0 30px 0 !important;
}
#customerData p span {
	color: #298DE1;
}
#activeDomain {
	display: block;
}
#inputWebAddress, #inputEmail {
	margin: 5px 100px 5px 100px;
	width: 500px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
}
#inputPhoneCountry {
	margin: 5px 5px 30px 100px;
	width: 75px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	float: left;
}
#inputPhoneArea {
	margin: 5px 5px 30px 0;
	width: 75px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	float: left;
}
#inputPhonePre {
	margin: 5px 5px 30px 0;
	width: 75px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	float: left;
}
#inputPhoneFour {
	margin: 5px 5px 30px 0;
	width: 125px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	float: left;
}
#inputPhoneExt {
	margin: 5px 100px 30px 0;
	width: 130px;
	height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 40px;
	float: left;
}
#gatherContacts {
	margin: 20px 250px 0 250px;
	width: 200px;
	height: 50px;
	padding: 0;
	line-height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-size: 36px;
	background: #CCCCCC;
	color: #FFFFFF;
}
#gatherContacts:hover {
	background: #666666;
}
#pUC4 {
	background-color: #F1F4F9;
}
#pUC4 h3 {
	margin: 0;
	width: 96%;
	padding: 2%;
	line-height: 50px;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	font-weight: normal;
	font-size: 45px;
	color: #29323F;
}
#pUC4 h3:first-of-type {
	margin: 25px 0 0 0;
}
#pUC4 div {
	margin: 0 69px;
	width: 400px;
	height: 60px;
	padding: 0;
	background: #FFFFFF;
}
#pUC4 a {
	margin: 0;
	width: 180px;
	height: 60px;
	padding: 0 10px;
	float: left;
	line-height: 70px;
	font-weight: bold;
	font-size: 40px;
	display: block;
	color: #F1F4F9;
	cursor: pointer;
}
#pUC4 a:hover {
	opacity: 0.8;
}
#domainY, #hostY, #psdY {
	background: #298DE1;
}
#domainN, #hostN, #psdN {
	background: #FF7F66;
	text-align: right;
}
#pUC4 a.okay {
	margin: 20px 169px 0 169px;
	width: 200px;
	height: 50px;
	padding: 0;
	line-height: 50px;
	display: block;
	text-align: center;
	font-family: 'Amatic SC', cursive;
	background: #CCCCCC;
	color: #FFFFFF;
}
#pUC4 a.okay:hover {
	background: #666666;
	opacity: 1.0;
}
#pageFinish {
	background-color: #FF7F66;
}
#pageFinish form {
	margin: 0;
	width: 700px;
	height: 700px;
	padding: 34px;
}
#pageFinish form div {
	margin: 0;
	width: 700px;
	height: auto;
	padding: 0;
	float: left;
}
#pageFinish form div h4 {
	margin: 0 0 15px 0;
	width: 700px;
	height: 30px;
	padding: 0 0 15px 0;
	font-family: 'Amatic SC', cursive;
	font-weight: normal;
	font-size: 30px;
	color: #FFFFFF;
	border-bottom: 2px solid #29323F;
}
#webContact {
}
#contactText {
	margin: 0;
	padding: 0;
	font-family: 'Amatic SC', cursive;
	font-size: 23px;
	color: #FFFFFF;
}
#contactTextPerson, #cAddress, #cEmail, #cPhone {
	color: #000000;
	font-weight: bold;
}
#webAdditions {
	width: 696px;
	margin: 0 2px;
}
#webAdditions label {
	margin: 0 0 0 5px;
	width: 170px;
	height: 30px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	line-height: 32px;
	text-align: right;
	border-bottom: 1px solid #CCCCCC;
}
#webAdditions input {
	margin: 0 5px 0 0;
	width: 52px;
	height: 29px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	border-top: 1px solid #F1F4F9;
	border-bottom: 1px solid #CCCCCC;
}
#quoteAdditions {
}
#quoteAdditions label {
	margin: 0 0 0 5px;
	width: 170px;
	height: 30px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	line-height: 32px;
	text-align: right;
	border-bottom: 1px solid #CCCCCC;
}
#quoteAdditions input {
	margin: 0 5px 0 0;
	width: 52px;
	height: 29px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	border-top: 1px solid #F1F4F9;
	border-bottom: 1px solid #CCCCCC;
}
#miscAdditions {
}
#miscAdditions label {
	margin: 0 0 0 5px;
	width: 170px;
	height: 30px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	line-height: 32px;
	text-align: right;
	border-bottom: 1px solid #CCCCCC;
}
#miscAdditions input {
	margin: 0 5px 0 0;
	width: 52px;
	height: 29px;
	padding: 0;
	display: block;
	float: left;
	background: #F1F4F9;
	border-top: 1px solid #F1F4F9;
	border-bottom: 1px solid #CCCCCC;
}

/*Aside Information (Right/Bottom Container)*/
aside {
	position: absolute;
	margin: 0;
	padding: 0;
	background-color: #FFFFFF;
	z-index: 99999;
}
aside.horizontal {
	width: 256px;
	height: 768px;
	top: 0; right: 0;
}
aside.vertical {
	width: 768px;
	height: 256px;
	bottom: 0; right: 0;
}
.asideBlock {
	margin: 0;
	width: 256px;
	height: 256px;
	padding: 0;
	float: left;
}
h1 {
	margin: 0;
	width: 256px;
	height: 80px;
	background-color: #298DE1;
	background-image: url(../img/eHeadLogo.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center bottom;
	font-family: 'Amatic SC', cursive;
	font-weight: normal;
	text-align: center;
	line-height: 135px;
	color: #666666;
}
nav {
	position: relative;
	margin: 0;
	width: 256px;
	height: 50px;
	padding: 0;
	background: #F1F4F9;
}
#posNav {
	position: absolute;
	width: 40px;
	height: 50px;
	padding: 0 10px;
	top: 0; left: 0;
	background-color: #298DE1;
	background-image: url(../img/pagePisitionLine.png);
	-webkit-animation: posNavPlay 1s steps(10) infinite;
	   -moz-animation: posNavPlay 1s steps(10) infinite;
		 -ms-animation: posNavPlay 1s steps(10) infinite;
	     -o-animation: posNavPlay 1s steps(10) infinite;
	        animation: posNavPlay 1s steps(10) infinite;
}
@-webkit-keyframes posNavPlay {from {background-position: 0px;} to {background-position: 10px;}}
   @-moz-keyframes posNavPlay {from {background-position: 0px;} to {background-position: 10px;}}
    @-ms-keyframes posNavPlay {from {background-position: 0px;} to {background-position: 10px;}}
     @-o-keyframes posNavPlay {from {background-position: 0px;} to {background-position: 10px;}}
        @keyframes posNavPlay {from {background-position: 0px;} to {background-position: 10px;}}
.posNavButton {
	position: absolute;
	margin: 0;
	width: 18px;
	height: 18px;
	padding: 0;
	top: 15px;
	border-radius: 10px;
	border: 1px solid rgba(000,000,000,0.5);
	background-color: #F1F4F9;
	box-shadow: inset 1px 1px 1px rgba(255,255,255,0.6), inset -1px -1px 1px rgba(000,000,000,0.6);
}
.activeNavButton {
	background-color: #FF7F66 !important;
}
#pNB1 {left: 28px;}
#pNB2 {left: 73px;}
#pNB3 {left: 118px;}
#pNB4 {left: 163px;}
#pNB5 {left: 208px;}
nav img {
	position: absolute;
	top: 0;
	right: 0;
}
#websiteCost {
	margin: 0 0 0 10px;
	width: 136px;
	height: 40px;
	padding: 0 0 0 5px;
	font-family: 'Amatic SC', cursive;
	font-size: 25px;
	line-height: 40px;
	float: left;
	color: #29323F;
	border-top: 1px solid #29323F;
	border-bottom: 1px solid #29323F;
}
#siteCostVisable {
	margin: 0;
	width: 90px;
	height: 40px;
	padding: 0 0 0 5px;
	font-family: 'Amatic SC', cursive;
	font-size: 25px;
	float: left;
	color: #29323F;
	border-top: 1px solid #29323F;
	border-bottom: 1px solid #29323F;
}
#marketingSource {
	margin: 0 0 0 10px;
	width: 231px;
	height: 40px;
	padding: 0 0 0 5px;
	font-family: 'Amatic SC', cursive;
	font-size: 25px;
	line-height: 40px;
	float: left;
	color: #666666;
	border-bottom: 1px solid #29323F;
}
#siteMarketing {
	margin: 0 0 0 10px;
	width: 231px;
	height: 40px;
	padding: 0 0 0 5px;
	font-family: 'Amatic SC', cursive;
	font-size: 25px;
	float: left;
	color: #AECFEB;
}
#aB2 {
	background: #F1F4F9;
}
#aB2 canvas {
	margin: 15px;
}
#aB3 {
}
#aB3 a {
	margin: 5px 10px 0 10px;
	width: 226px;
	height: 36px;
	padding: 0 0 0 10px;
	line-height: 36px;
	color: #999999;
	display: block;
	border-bottom: 2px solid rgba(000,000,000,0.6);
	font-family: 'Amatic SC', cursive;
	font-size: 18px;
}
#aB3 a:hover {
	color: #FFFFFF;
	background: #29323F;
	border-bottom: 2px solid rgba(255,255,255,0.6);
}
#aB3 p {
	margin: 5px 10px 0 10px;
	width: 246px;
	height: 30px;
	text-align: center;
	line-height: 28px;
	font-family: 'Amatic SC', cursive;
	font-size: 15px;
	color: #29323F;
}
div.nav {
	position: absolute;
	margin: 0;
	width: 250px;
	height: 36px;
	padding: 3px;
	top: 0; left: 0;
}
div.nav p {
	margin: 3px;
	width: 119px;
	height: 31px;
	padding: 0;
	display: block;
	background-color: #CCCCCC;
	float: left;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        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) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .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; /* h5bp.com/t */
    }

    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;
    }
}
