/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

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

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }

body { 
	margin: 0; 
	font-size: 100%; /* 16 / 16 - THIS IS NOW THE CONTEXT */
	font-family: "Helvetica Neue", helvetica, arial, sans-serif;
	line-height: 1.4; 
	background: url(../img/main-background.jpg) repeat;
}

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

a { 
	color: #fff; 
	text-decoration: underline;
}
a:visited { color: #fff; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

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, serif; _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; }
.red { color: #b53c3c; }
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; }

ul, ol { margin: 0 0 1em 0; padding: 0 0 0 20px; }
li { color: #fff; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }



/* ===== Primary Styles ========================================================
   Author:
   ========================================================================== */
   
/* ------ typography ------ */

h1, h2, h3, h4 {
	text-shadow: 0 -2px 2px #000;
	color: #fff;
	font-weight: normal;
}

h1 {
	font-size: 1.5em; /* 24 / 16 */
}

.content h1 {
	font-size: 1.8em; /* 24 / 16 */
	margin-top: 0;
}


h2 {
	font-size: 1.5em; /* 19 / 16 */
}

h3 {
	font-size: 1em; /* 16 / 16 */
}

h4 {
	font-size: 1em; /* 16 / 16 */
	font-weight: bold;
}

p {
	color: #fff;
}

a {
	color: #fff;
	text-decoration: underline;
	-webkit-transition: color .3s ease-out;
	   -moz-transition: color .3s ease-out;
	     -o-transition: color .3s ease-out;
	        transition: color .3s ease-out;   
}

a:hover {
	color: #69c3fc;
}

/* ------ global elements ------ */

.wrapper {
	margin: 0 auto;
	max-width: 960px;
	width: 90%;
}

.main-header {
	background: url(../img/border.png) repeat-x bottom;
	padding: 0 0 5px 0; 
	position: relative;
}

.home .main-header {
	background: url(../img/home-nav-border.png) repeat-x bottom;
	padding: 0 0 5px 0; 
	position: relative;
}

.main-header a.logo {
	width: 38%;
	margin: 15px 0 10px 0;
	display: inline-block;
	-webkit-transition: opacity .3s ease-out;
	   -moz-transition: opacity .3s ease-out;
	     -o-transition: opacity .3s ease-out;
	        transition: opacity .3s ease-out;
}

.main-header a.logo:hover {
	opacity: .6;
}

.main-header a.logo img {
	max-width: 100%;
}

.main-header .phone-number {
	position: absolute;
	right: 0;
	top: 26px;
	font-size: 1.5em; /* 24 / 16 */
	color: #b53c3c;
	text-shadow: 0 -1px 1px #000;
}

.main-header nav {
	position: absolute;
	bottom: 17px;
	right: -12px;
}

.button.navigate {
	display: none;
}

nav ul li {
	display: inline-block;
}

nav ul li a {
	text-decoration: none;
	text-shadow: 0 -1px 1px #000;
	font-size: 1.0625em; /* 17/16 */
	width: 100%;
	height: 100%;
	padding: 3px 15px;
	-webkit-transition: color .3s ease-out;
	   -moz-transition: color .3s ease-out;
	     -o-transition: color .3s ease-out;
	        transition: color .3s ease-out;
}

nav ul li a:hover {
	color: #69c3fc;
}

.content {
	float: left;
	width: 63.541667%;
	box-sizing: border-box;
	padding-right: 6%;
	margin: 25px 0;
	background: url(../img/vertical-border.png) repeat-y right;
}

.ua-firefox .content {
	width: 57.54%;
}

.listcol {
	width: 48%;
	float: left;
}

.colwrap {
	overflow: auto;
}

aside.sidebar {
	width: 31.25%; /* 300/960 */
	float: right;
	margin: 25px 0 15px 25px;
}

aside.sidebar img {
	max-width: 100%;
}

.imagewrap {
	background: url(../img/image-border.jpg);
	padding: 6px;
	border-top: 1px solid #fefefe;
	box-shadow: 0 3px 3px #080505;
	margin-bottom: 20px;
}

aside.sidebar .button {
	display: block;
	text-align: center;
}

.map {
	background: url(../img/image-border.jpg);
	padding: 6px;
	border-top: 1px solid #fefefe;
	box-shadow: 0 3px 3px #080505;
	margin-top: 20px;
	clear: both;
}

/* ------ home page ----- */

.main-wrapper.home {
	background: url(../img/background-home.jpg) no-repeat center 14%;
	background-size: 100%;
}

.ua-firefox .main-wrapper.home {
	background-size: 99.9%;
}

.home-tagline {
	padding: 19% 0;
	background: url(../img/border.png) repeat-x bottom;
}

.home-tagline span {
	color: #fff;
	font-family: "century gothic", arial, sans-serif;
	font-size: 2.5em; /* 40/16 */
	text-shadow: 0 -1px 1px #000;
}

.home-tagline span span.red {
	color: #b53c3c;
	font-size: 1em;
}

.main-headline {
	background: url(../img/border.png) repeat-x bottom;
	padding-bottom: 6px;
}

.main-headline h1 {
	text-align: center;
}

.home-columns {
	overflow: auto;
}

.column {
	/* display: inline-block; */
	float: left;
	box-sizing: border-box;
	margin-top: 25px;
}

.column p {
	margin-top: 6px;
	margin-bottom: 20px;
}

.column p.address {
	margin-bottom: 0;
}

.column.left-column {
	width: 44.895833333333%; /* 435 - 4 / 960 */
	margin-left: 4.6875%; /* 45 / 960 */
	padding-right: 3.744779582367%; /* 42 / 431 */
	background: url(../img/vertical-border.png) repeat-y right;
}

.ua-firefox .column.left-column {
	width: 42%;
}

.column.left-column h2 {
	margin-bottom: 0;
}

.column.right-column {
	width: 44.895833333333%; /* 435 - 4 / 960 */
	margin-right: 4.6875%; /* 45 / 960 */
	padding-left: 3.744779582367%; /* 42 / 431 */
}

.ua-firefox .column.right-column {
	width: 40.895833333333%; /* 435 - 4 / 960 */
}

.right-column h2.callout {
	color: #b53c3c;
	margin-top: 0;
	background: url(../img/border.png) repeat-x bottom;
	padding-bottom: 25px;
}

.right-column .left {
	width: 48.331786542923%;
	float: left;
	padding-right: 10.156862745098%;
}

.button {
	color: #fff;
	text-decoration: none;
	text-align: center;
	background: url(../img/button.jpg), url(../img/button-hover.jpg);
	padding: 8px 18px;
	display: inline-block;
	border-radius: 4px;
	text-shadow: 0 -1px -1px #000;
	box-shadow: 0 2px 2px #170f0f;
	border-top: 1px solid #5e87bf;
	border-left: 1px solid #293a52;
	border-right: 1px solid #293a52;
	border-bottom: 1px solid #111821;
	-webkit-transition: background .3s ease-out;
	   -moz-transition: background .3s ease-out;
	     -o-transition: background .3s ease-out;
	        transition: background .3s ease-out;
}

.button:hover {
	background: url(../img/button-hover.jpg);
	color: #fff;
}

.payment {
	margin-top: 12px;
	color: #fff;
	background: url(../img/price.png) no-repeat 0 2px;
	padding-left: 21px;
	font-size: 1em; /* 16/16 */
	display: block;
	text-shadow: 0 -1px 1px #000;
	text-align: center;
}

.right-column .right {
	width: 36.426914153132%;
	float: left;
}

.right-column .right ul {
	padding-left: 0;
	margin: -5px 0 0 0;
}

.right-column .right ul li {
	list-style: none;
	font-size: 1.25em; /* 19/16 */
	background: url(../img/check.png) no-repeat 0 5px;
	padding-left: 23px;
	text-shadow: 0 -1px 1px #000;
}

footer.main-footer {
	clear: both;
	background: url(../img/border.png) repeat-x top;
	margin-top: 20px;
	display: inline-block;
	width: 100%;
	padding-bottom: 30px;
}

nav.footer-nav {
	text-align: center;
	background: url(../img/border.png) repeat-x 0 50%;
	margin: 0 10%;
}

nav.footer-nav ul {
	background: url(../img/main-background.jpg) repeat-x top;
	padding: 0 15px;
	display: block;
	margin: 50px 13% 40px 13%;
}

nav.footer-nav ul li {
	width: auto;
	-webkit-transition: background .3s ease-out;
	   -moz-transition: background .3s ease-out;
	     -o-transition: background .3s ease-out;
	        transition: background .3s ease-out;
}

nav.footer-nav ul li:hover {
	border-radius: 4px;
	background: #170f0f;
}

nav.footer-nav ul li a {
	color: #443333;
	text-shadow: 0 -1px -1px #000;
	font-size: 0.875em; /* 14/16 */
	width: auto;
}

.other-info p {
	color: #443333;
	text-shadow: 0 -1px -1px #000;
	font-size: 0.875em; /* 14/16 */
	display: block;
	text-align: center;
}

.other-info p a {
	color: #443333;
	padding-left: 23px;
	margin-left: 3px;
	background: url(../img/small-white.png) no-repeat;
	background-size: 12%;
}

.other-info p a:hover {
	text-decoration: none;
}

/* ------ forms ------ */

input, textarea {
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #dbdbdb 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#dbdbdb)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#dbdbdb 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  #ffffff 0%,#dbdbdb 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  #ffffff 0%,#dbdbdb 100%); /* IE10+ */
	background: linear-gradient(top,  #ffffff 0%,#dbdbdb 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#dbdbdb',GradientType=0 ); /* IE6-9 */
}

input {
	border-radius: 4px;
	border: 1px solid #000;
	padding: 6px 5px;
	width: 70%;
}

textarea {
	border-radius: 4px;
	border: 1px solid #000;
	padding: 6px 5px;
	width: 70%;
}

label {
	color: #fff;
	min-width: 10%;
	display: inline-block;
}

input[type="submit"],
input[type="reset"] {
	min-width: 31%;
	width: auto;
	color: #fff;
	margin-top: 20px;
	margin-right: 20px;
	float: left;
	text-decoration: none;
	padding: 8px 18px;
	display: inline-block;
	border-radius: 4px;
	text-shadow: 0 -1px -1px #000;
	box-shadow: 0 2px 2px #170f0f;
	border-top: 1px solid #da5c5c;
	border-left: 1px solid #320f0f;
	border-right: 1px solid #320f0f2;
	border-bottom: 1px solid #320f0f;
	-webkit-transition: background .3s ease-out;
	   -moz-transition: background .3s ease-out;
	     -o-transition: background .3s ease-out;
	        transition: background .3s ease-out;
	filter: none;	        
}

input[type="reset"] {
	background: url(../img/gray-button.jpg), url(../img/gray-button-hover.jpg);
	border-top: 1px solid #d7d8d9;
}
 
input[type="reset"]:hover {
	background: url(../img/gray-button-hover.jpg);
	color: #fff;
}

input[type="submit"] {
	background: url(../img/red-button.jpg), url(../img/red-button.jpg);
}

input[type="submit"]:hover {
	background: url(../img/red-button-hover.jpg);	
}

input[type="checkbox"] {
	width: 15px;
	border: none;
	filter: none;
}

/* ------ fancybox ------ */

.fancybox-tmp iframe, .fancybox-tmp object {
	vertical-align: top;
	padding: 0;
	margin: 0;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	padding: 0;
	margin: 0;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	padding: 0;
	margin: 0;
	position: relative;
	outline: none;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 10px;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	padding: 0;
	margin: 0;
	vertical-align: top;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('../img/fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8020;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('../img/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	background: transparent url('../img/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 20px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 20px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -9999px;
	left: -9999px;
	padding: 0;
	overflow: visible;
	visibility: hidden;
}

/* Overlay helper */

#fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: #000;
}

#fancybox-overlay.overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8030;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	margin-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/* ------ ie styles ------ */

.ie input[type="submit"] {
	filter: none;
	background: url(../img/red-button.jpg);
}

.ie input[type="reset"] {
	filter: none;
	background: url(../img/gray-button.jpg);
}

.lt-ie9 nav ul li {
	float: left;
}

.lt-ie9 .button {
	background: url(../img/button.jpg);
}

.lt-ie9 .footer-nav {
	width: 100%;
	clear: both;
	display: block;
	margin-top: 25px;
	margin-bottom: 25px;
	margin-left: auto;
	margin-right: auto;
}

.lt-ie9 .footer-nav ul {
	display: block;
	clear: both;
	text-align: center;
}

.lt-ie9 .footer-nav ul li {
	display: inline-block;
	float: none;
}

.lt-ie9 .other-info {
	width: 100%;
	display: block;
	clear: both;
	padding: 25px 0;
}

/* =============================================================================
   Media Queries
   ========================================================================== */
   
@media only screen and (max-width: 1066px) {
	.right-column .left {
		padding-right: 7%;
		width: 52%;	
	}
}   
   
@media only screen and (max-width: 980px) {
	
	.main-wrapper.home {
		background-position: center 25%;
	}

	.main-header a.logo {
		margin: 15px auto 15px auto;
		width: 45%;
		text-align: center;
		display: block;
	}
	
	.main-header a.logo img {
		
	}
	
	.main-header .phone-number {
		top: auto;
		position: relative;
		text-align: center;
		display: block;
		margin-bottom: 25px;
	}
	
	.main-header nav {
		left: 0;
		right: auto;
		position: relative;
		text-align: center;
		clear: both;
		width: 100%;
	}
	
	.lt-ie9 .main-header nav ul {
		width: 100%;
		text-align: center;
		display: block;
	}
	
	.lt-ie9 .main-header nav ul li {
		float: none;
	}
	
	.lt-ie9 .content { 
		clear: both;
	}
	
	.right-column .left,
	.right-column .right {
		float: none;
		width: 100%;
		padding-right: 0;
		padding-top: 10px;
	}
	
	.payment {
		display: inline-block;
	}
	
	.right-column .right ul li {
		display: inline-block;
		padding-right: 4px;
		
	}
	.home .main-header {
		text-align: center;
	}
	
}

@media only screen and (max-width: 978px) {
	.right-column .left .button {
		width: 72%;
	}
}

@media only screen and (max-width: 768px) {

	.main-wrapper.home {
		background-position: center 19%;
	}
	
	.column.left-column {
		width: 100%;
		float: none;
		background: none;
		margin-left: 0;
		padding-right: 0;
		text-align: center;
	}
	.right-column h2.callout {
		float: none;
		text-align: center;
	}
	.column.right-column {
		width: 100%;
		float: none;
		margin-right: 0;
		padding-left: 0;
	}
	.right-column .left, .right-column .right {
		text-align: center;
	}
	.right-column .left .button {
		width: 63%;
		display: block;
		margin: 0 auto;
	}
	.content {
		width: 55%;
	}
	.ua-firefox .content {
		width: 54%;
	}
	.map iframe {
		max-width: 400px!important;
	}
}

@media only screen and (max-width: 600px) {
	.main-wrapper.home {
		background-position: center 21%;
	}
	.main-header a.logo {
		width: 100%;
	}
	nav ul li {
		width: 40%;
		padding: 8px 15px;
		margin-bottom: 5px;
		background: #111;
		border-radius: 4px;
	}
	nav ul li a {
		display: block;
		padding: 0;
	}
	.home-tagline {
		padding: 5% 0;
		text-align: center;
	}
	.content {
		float: none;
		width: 100%;
		background: none;
	}
	.ua-firefox .content {
		width: 100%;
	}
	aside.sidebar {
		display: none;
	}
	input, textarea {
		width: 95%;
	}
	input[type="submit"], input[type="reset"] {
		min-width: 44%;
	}
	.map {
		width: 100%;
	}
	nav.footer-nav ul li {
		display: block;
	}
}

@media only screen and (max-width: 400px) {
	.main-header .button.navigate {
		display: block;
		margin-bottom: 25px;
		background: url(../img/gray-button.jpg);
		border-top: 1px solid #eee;
	}
	.main-wrapper.home {
		background: none;
		margin: 0;
		padding: 0;
	}
	.main-header nav {
		display: none;
	}
	.map {
		display: none;
	}
	input, textarea {
		width: 96%;
	}
	input[type="submit"], input[type="reset"] {
		min-width: 100%;
	}
	select {
		width: 100%;
	}

}

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

/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; 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; }

/* =============================================================================
   Print Styles
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  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: ""; }  /* 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; } /* 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; }
}
