/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */


/* =============================================================================
   HTML5 element display
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio[controls], canvas, video { display: inline-block; *display: inline; *zoom: 1; }


/* =============================================================================
   Base
   ========================================================================== */

html { font-size: 100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 100%; line-height: 1.5; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }

::-moz-selection { background: #666; color: #fff; text-shadow: none; }
::selection { background: #666; color: #fff; text-shadow: none; }


/* =============================================================================
   Links
   ========================================================================== */

a:focus { outline: 0; }
/* Improve readability when focused and  ed in all browsers: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: 0; }


/* =============================================================================
   Typography
   ========================================================================== */

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }


/* =============================================================================
   Lists
   ========================================================================== */

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; margin: 0; padding: 0; }


/* =============================================================================
   Embedded content
   ========================================================================== */

img { border: 0; -ms-interpolation-mode: bicubic; }
svg:not(:root) {
    overflow: hidden;
}


/* =============================================================================
   Figures
   ========================================================================== */

figure { margin: 0; }


/* =============================================================================
   Forms
   ========================================================================== */

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
legend { border: 0; *margin-left: -7px; padding: 0; }
label { cursor: pointer; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
div, ul, li, p, h1, h2, h3, h4, h5, h6, a {
	margin:0px;
	padding:0px;
	font-weight:normal;
}

/* =============================================================================
   Tables
   ========================================================================== */

table { border-collapse: collapse; border-spacing: 0; }

/* =============================================================================
   Generic styles
   ========================================================================== */

body {
	background-color:#000;
	color:#fff;
	font-family:'Neo Sans W01', sans-serif;
}
.oldie body {
	font-size:16px;
}
html, body {
	overflow-x:hidden;
}

#site-wrapper {
	height:auto;
	position:relative;
	clear:both;
	width:100%;
	min-width:20em;
	top:0px;
	left:0px;
	background-color:#000;
}
#js #site-wrapper {
	overflow:hidden;
}
a, a:hover, a:active, a:visited {
	text-decoration:none;
	color:#fff;
}

/* =============================================================================
   Navigation
   ========================================================================== */
   
#site-nav, #site-nav ul {
	width:100%;
	min-width:20em;
	display:block;
	clear:both;
	top:0px;
	left:0px;
	position:relative;
}
#site-nav {
	background-color:#1a1a1a;
}
#js #site-nav {
	overflow:hidden;
	height:0px;
	position:relative;
	z-index:20;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
  	#js #site-nav  {
		position:absolute;
		top:0px;
		right:5em;
		width:20em;
		left:auto;
	}
}
#js.oldie #site-nav {
	position:absolute;
	top:0px;
	right:5em;
	width:20em;
	left:auto;
}
#js #site-nav ul {
	position:absolute;
	left:0px;
	bottom:0px;
	width:100%;
	min-width:auto;
	display:block;
	top:auto;
}
#site-nav li {
	display:block;
	overflow:hidden;
	border-top:#333 1px solid;
	border-bottom:#000 1px solid;
}
#site-nav .nav-header {
    background-color: #333333;
    border-bottom: 1px solid #1A1A1A;
    border-top: 1px solid #4A4A4A;
    font-size: 0.6875em;
    height: 1rem;
    letter-spacing: 0.05em;
    overflow: hidden;
    padding: 0.3125rem 1rem;
    text-transform: uppercase;
}
.oldie #site-nav .nav-header {
    height: 1.45em;
    padding: 0.45em 1.45em;
}
#site-nav a {
	display:block;
	height:100%;
	padding:0.375rem 1rem;
	font-size:1em;
	color:#777;
}


.oldie #site-nav a {
	padding:0.375em 1em;
}
#site-nav a:visited, #site-nav a:active {
	color:#777;
}
#site-nav a.current, #site-nav a.current:visited, #site-nav a.current:active {
	color:#fff;
}
#site-nav a:hover {
	color:#fff;
}

/* =============================================================================
   Site header
   ========================================================================== */
   
#header-block {
	height:auto;
	position:relative;
	clear:both;
	width:100%;
	display:block;
	z-index:15;
}
/* site logo */
#header-block header {
	padding:1em;
	display:block;
	clear:both;
	position:relative;
	height:2em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
  	#header-block header {
		height:2.5em;
		padding:1.75em;
	}
}
.oldie #header-block header {
	height:2.5em;
	padding:1.75em;
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#header-block header {
		padding:2.5em;
	}
}
#js #header-block {
	position:absolute;
	top:0px;
	left:0px;
	z-index:10;
}
#header-block header h2 {
	font-size:1em;
	display:inline-block;
	font-family:'Neo Sans W01 Bold', sans-serif;
	line-height:2.125em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#header-block header h2 {
		line-height:2em;
	}
}
.oldie #header-block header h2 {
	line-height:2em;
}
#header-block header h2 a {
	font-size:1.75em;
	color:#fff;
	text-transform:lowercase;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
  	#header-block header h2 a {
		font-size:2.375em;
		color:#fff;
		text-transform:lowercase;
	}
}
.oldie #header-block header h2 a {
	font-size:2.375em;
	color:#fff;
	text-transform:lowercase;
}
/* menu toggle */
#menu-toggle {
	display:none;
}
#js #menu-toggle {
	position:absolute;
	bottom:1em;
	right:1em;
	height:2em;
	margin:0;
	padding:0;
	display:block;
	width:4em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #menu-toggle {
	    bottom: 1.75em;
	    height: 2.75em;
	    right: 1.75em;
	    width: 5.5em;
	}
}
#js.oldie #menu-toggle {
	bottom: 1.75em;
	height: 2.75em;
	right: 1.75em;
	width: 5.5em;
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #menu-toggle {
		bottom:2.5em;
		right:2.5em;
	}
}
#js #menu-toggle p {
	font-size: 0.6875em;
    left: 0;
    line-height: 1em;
    position: absolute;
    top: 0.5625rem;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #menu-toggle p {
    	font-size: 0.9375em;
    	left: 0;
    	line-height: 1em;
    	position: absolute;
   		top: 0.6875rem;
	}
}
#js.oldie #menu-toggle p {
    font-size: 0.9375em;
    left: 0;
    line-height: 1em;
    position: absolute;
   	top: 0.75em;
}
#js #menu-toggle #cross {
    height: 2em;
    position: absolute;
    width:2em;
    top:0px;
    right:0px;
}
#js.no-touch #menu-toggle:hover #cross {
	opacity:0.75;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #menu-toggle #cross {
	    height: 2.5em;
	    width:2.5em;
	}
}
#js.oldie #menu-toggle #cross {
	height: 2.5em;
	width:2.5em;
}
#js #menu-toggle #cross div {
    -moz-border-radius: 0.0625em;
    -webkit-border-radius: 0.0625em;
    border-radius: 0.0625em;
    background-color:#fff;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #menu-toggle #cross div {
	    -moz-border-radius: 0.125em;
	    -webkit-border-radius: 0.125em;
	    border-radius: 0.125em;
	}
}
#js #menu-toggle #cross #cross-vertical {
	height:100%;
	width:25%;
	position:absolute;
	top:0;
	left:37.5%;
}
#js #menu-toggle #cross #cross-horizontal {
	height:25%;
	width:100%;
	position:absolute;
	top:37.5%;
	left:0;
}
/* =============================================================================
   Site content
   ========================================================================== */
   
#js #slide-wrapper, #js #popups, #js #popups .popup {
	width:100%;
	height:100%;
	position:absolute;
	top:0px;
	left:0px;
	overflow:hidden;
}
#js #popups {
	display:block;
	background-color:#000;
	left:-100%;
	top:0px;
	z-index:20;
}
#js #inner-slide-wrapper {
	position:absolute;
	height:100%;
}
/* individual slides and popup styles */
.slide, .popup {
	padding:1em;
	display:block;
	position:relative;
	max-width:68.75em;
	line-height:0;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	.slide, .popup {
		padding:1.75em;
	}
}
.oldie .slide, .oldie .popup {
	padding:1.75em;
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	.slide, .popup {
		padding:2.5em;
	}
}
#js .slide, #js .popup {
	padding:0em;
	max-width:9999px;
	position:absolute;
	top:0px;
	left:0px;
}
#js .content-wrapper {
	position:absolute;
}
/* hero slide (gradient background) */
#js .hero-background {
	background-color:#004e79;
	height:100%;
	width:100%;
	position:absolute;
	top:0px;
	left:0px;
}
#js.cssgradients .hero-background {
	background-image: linear-gradient(left top, rgb(0,53,93) 31%, rgb(0,146,187) 100%);
	background-image: -o-linear-gradient(left top, rgb(0,53,93) 31%, rgb(0,146,187) 100%);
	background-image: -moz-linear-gradient(left top, rgb(0,53,93) 31%, rgb(0,146,187) 100%);
	background-image: -webkit-linear-gradient(left top, rgb(0,53,93) 31%, rgb(0,146,187) 100%);
	background-image: -ms-linear-gradient(left top, rgb(0,53,93) 31%, rgb(0,146,187) 100%);

	background-image: -webkit-gradient(
		linear,
		left top,
		right bottom,
		color-stop(0.31, rgb(0,53,93)),
		color-stop(1, rgb(0,146,187))
	);
	
}
/* image slides */
.slide img {
	max-width:100%;
	display:block;
	clear:both;
}
#js .img-content {
	background-image:url('../ui/img-loader.gif');
	background-repeat:no-repeat;
	background-position:center;
}
#js .img-content img {
	height:100%;
	position:absolute;
	top:0px;
	left:50%;
	width:auto;
}

/* text slides */
.slide .text-content, .popup .text-content {
	width:18em;
	line-height:1.5em;
}
.text-content p, .text-content h3 {
	font-size:0.75em;
	line-height:1.5em;	
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js .text-content p, #js .text-content h3 {
		font-family:'Neo Sans W01 Light';	
	}
}
#js.oldie .text-content p, #js .text-content h3 {
	font-family:'Neo Sans W01 Light';	
}
.text-content h1, .text-content h2 {
	font-size:1.125em;
	line-height:1.5em;
	font-family:'Neo Sans W01 Medium', sans-serif;
	margin-bottom:0.125em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js .text-content h1, #js .text-content h2 {
		font-family:'Neo Sans W01', sans-serif;
	}
}
.popup {
	margin-bottom:1em;
}
#js .popup {
	margin-bottom:0em;
}
#js.oldie .text-content h1, #js .text-content h2 {
	font-family:'Neo Sans W01', sans-serif;
}
#signup-popup h2 {
	margin-bottom:0.25em;
}
#contact-popup .text-content .credit {
	font-size:0.5em;
	line-height:1.5em;
	color:#666;
}
.text-content .first-credit {
	margin-top:1em;
}
.text-content .credit a, .text-content .credit a:hover, .text-content .credit a:visited, .text-content .credit a:active {
	color:#666;
}

/* forms */
.popup input {
    background-color: transparent;
    border: 1px solid #FFFFFF;
    border-radius: 0 0 0 0;
    color: #FFFFFF;
    display: inline-block;
    float: left;
    font-size: 0.75em;
    height: 1.25em;
    overflow: hidden;
    padding: 0.4375em;
    width: 17em;
    font-family:'Neo Sans W01', sans-serif;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	.popup input {
		font-family:'Neo Sans W01 Light';
	}
}
.popup .text-content input.submit {
    background-color: #FFFFFF;
    border: 1px solid #FFFFFF;
    color: #000000;
    display: inline-block;
    float: left;
    height: 2.1875em;
    padding: 0;
    text-indent: -9999px;
    text-transform: capitalize;
    width: 2.1875em;
    -moz-background-size:100% auto;
    -ms-background-size:100% auto;
    -o-background-size:100% auto;
    -webkit-background-size:100% auto;
    background-size:100% auto;
    background-image:url('../ui/ico-submit.png');
    background-position:top;
}
.oldie .popup .text-content input.submit {
	background-image:none;
	width: auto;
	text-indent:0px;
	padding:0 0.4375em;
	color:#ccc;
	border: 1px solid #FFFFFF;
}
body .popup .text-content input.valid {
	background-position:bottom;
	border: 1px solid #FFFFFF;
}
.oldie body .popup .text-content input.valid {
	background-position:bottom;
	color:#000;
}


body .popup .text-content input.loading {
	background-image:url('../ui/submit-loader.gif');
	-moz-background-size:60% auto;
    -ms-background-size:60% auto;
    -o-background-size:60% auto;
    -webkit-background-size:60% auto;
    background-size:60% auto;
     background-position: 50% 50%;
    background-repeat: no-repeat;
}
.oldie. body .popup .text-content input.loading {
	background-image:none;
}

#thankyou-text {
	display:none;
}
/* =============================================================================
   footer controls
   ========================================================================== */
   
#function-controls {
	display:none;
}
#js #function-controls {
	display:block;
	position:absolute;
	bottom:0px;
	left:0px;
	height:4.25em;
	overflow:visible;
	width:100%;
	z-index:5;
}

@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls {
		padding:1.75em 0;
		height:2.7em;
	}
}
#js.olide #function-controls {
	padding:1.75em 0;
	height:2.7em;
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls {
		padding:2.5em 0;
	}
}
#js #function-controls > a, #js .close {
	height:2.375em;
	width:2.375em;
	-moz-background-size:100% 100%;
	-ms-background-size:100% 100%;
	-o-background-size:100% 100%;
	-webkit-background-size:100% 100%;
	background-size:100% 100%;
	display:block;
	margin-bottom:-0.0625em;
	position:absolute;
	bottom:1em;
	
}
#js.no-touch #function-controls > a:hover {
	opacity:0.75;
}
#js.no-touch #function-controls > a.inactive:hover {
	opacity:1;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > a, #js .close {
		height:2.875em;
		width:2.875em;
		bottom:1.75em;
	}
}
#js.oldie #function-controls > a, #js .close {
	height:2.875em;
	width:2.875em;
	bottom:1.75em;
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > a, #js .close {
		bottom:2.75em;
	}
}
/* close button */

#js .close {
	background-image:url('../ui/ico-close.png');
	left:1em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js .close {
		left:1.75em;
	}
}
#js.oldie .close {
	left:1.75em;
	background-image:url('../ui/oldie-ico-close.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js .close {
		left:2.25em;
	}
}
/* slideshow buttons */
#js #function-controls > #slideshow-on {
	background-image:url('../ui/ico-play.png');
	left:1em;
	
}
#js #function-controls > #slideshow-off {
	background-image:url('../ui/ico-stop.png');
	left:1em;
	display:none;
	
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > #slideshow-on, #js #function-controls > #slideshow-off {
		left:1.75em;
	}
}
#js.oldie #function-controls > #slideshow-on {
	left:1.75em;
	background-image:url('../ui/oldie-ico-play.png');
}
#js.oldie #function-controls > #slideshow-off {
	left:1.75em;
	background-image:url('../ui/oldie-ico-stop.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > #slideshow-on, #js #function-controls > #slideshow-off {
		left:2.25em;
	}
}
/* newsletter */ 
#js #function-controls > #signup-popup-button {
	background-image:url('../ui/ico-newsletter.png');
	left:3.75em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > #signup-popup-button {
		left:5.25em;
	}
}
#js.oldie #function-controls > #signup-popup-button {
	left:5.25em;
	background-image:url('../ui/oldie-ico-newsletter.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > #signup-popup-button {
		left:5.75em;
	}
}
/* contact popup */
#js #function-controls > #info-popup-button {
	background-image:url('../ui/ico-info.png');
	left:6.5em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > #info-popup-button {
		left:8.75em;
	}
}
#js.oldie #function-controls > #info-popup-button {
	left:8.75em;
	background-image:url('../ui/oldie-ico-info.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > #info-popup-button {
		left:9.25em;
	}
}
/* left and right controls */
#js #function-controls > #right-control {
	background-image:url('../ui/ico-right.png');
	right:0.5625em;
	margin-bottom:0px;
	width:2.1825em;
	height:2.1825em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > #right-control {
	    height: 2.625em;
	    right: 1.1825em;
	    width: 2.625em;
	}
}
#js.oldie #function-controls > #right-control {
	height: 2.625em;
	right: 1.1825em;
	width: 2.625em;
	background-image:url('../ui/oldie-ico-right.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > #right-control {
		right: 1.6825em;
	}
}
#js #function-controls > #left-control {
	background-image:url('../ui/ico-left.png');
	right:2.625em;
	margin-bottom:0px;
	width:2.1825em;
	height:2.1825em;
}
@media only screen and (min-width: 32em) and (min-height: 32em) {
	#js #function-controls > #left-control {
	    height: 2.625em;
	    right: 4.5em;
	    width: 2.625em;
	}
}
#js.oldie #function-controls > #left-control {
	height: 2.625em;
	right: 4.5em;
	width: 2.625em;
	background-image:url('../ui/oldie-ico-left.png');
}
@media only screen and (min-width: 88em) and (min-height: 54em) {
	#js #function-controls > #left-control {
		right: 5em;
	}
}
#page-loader {
	display:none;
}
/* =============================================================================
   loaders and masks
   ========================================================================== */

#js #menu-mask {
	z-index:10;
	position:absolute;
	top:0px;
	left:0px;
	height:100%;
	width:100%;
	display:none;
	background-color:#000;
}
#page-loader, #temp-loader {
	background-color:#000;
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background-image:url('../ui/page-loader.gif');
	background-repeat:no-repeat;
	background-position:center;
	display:none;
	z-index:1000;
}
#temp-loader {
	background-image:none;
	z-index:0;
}
#js #page-loader, #js #temp-loader {
	display:block;
}

#contact-popup form {
	float: left;
	clear: both;
}
#contact-popup form input {
	margin: 4px 4px 4px 0px;
}



/* =============================================================================
   helpers
   ========================================================================== */

#js #screen-size {
	position:absolute;
	height:100%;
	width:100%;
	top:0px;
	left:0px;
	min-height:20em;
}

/*

********************************************************************************

*/


/* =============================================================================
   Non-semantic helper classes
   Please define your styles before this section.
   ========================================================================== */

.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }



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

@media only screen and (min-width: 480px) {
  /* Style adjustments for viewports 480px and over go here */

}

@media only screen and (min-width: 768px) {
  /* Style adjustments for viewports 768px and over go here */

}


/* =============================================================================
   Print styles.
   Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */
  a, a:visited { color: #444 !important; 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: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */
  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; }
}
