/*
 * 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
   ========================================================================== */

/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 *    http://clagnut.com/blog/348/#c790
 * 2. Force vertical scrollbar in non-IE
 * 3. Remove Android and iOS tap highlight color to prevent entire container being highlighted
 *    www.yuiblog.com/blog/2010/10/01/quick-tip-customizing-the-mobile-safari-tap-highlight-color/
 * 4. Prevent iOS text size adjust on device orientation change, without disabling user zoom
 *    www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
 */

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: 13px; line-height: 1.231; }

body, button, input, select, textarea { font-family: sans-serif; color: #222; }

/* 
 * These selection declarations have to be separate
 * No text-shadow: twitter.com/miketaylr/status/12228805301
 * Also: hot pink!
 */

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


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

a { color:#c91f1f; text-decoration:none; border-bottom:1px solid #c91f1f; }
a:focus { outline: thin dotted; }

/* Improve readability when focused and hovered in all browsers: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active { outline: 0; border-bottom:none; color:#800606; }


/* =============================================================================
   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; }

/* Redeclare monospace font family: en.wikipedia.org/wiki/User:Davidgothberg/Test59 */
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }

/* Improve readability of pre-formatted text in all browsers */
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%; }

/* Position subscript and superscript content without affecting line-height: gist.github.com/413930 */
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
   ========================================================================== */

/*
 * Improve image quality when scaled in IE7
 * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */

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

/*
 * Correct overflow displayed oddly in IE9 
 */

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


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

figure { margin: 0; }


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

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

/* 
 * 1. Correct color not inheriting in IE6/7/8/9 
 * 2. Correct alignment displayed oddly in IE6/7 
 */

legend { border: 0; *margin-left: -7px; padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */

button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 * 2. Correct inner spacing displayed oddly in IE6/7
 */

button, input { line-height: normal; *overflow: visible; }

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 */

button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }

/*
 * Consistent box sizing and appearance
 */

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

/* 
 * Remove inner padding and border in FF3/4
 * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ 
 */

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/* Remove default vertical scrollbar in IE6/7/8/9 */
textarea { overflow: auto; vertical-align: top; }

/* Colors for form validity */
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }


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

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


/* =============================================================================
   Primary styles
   Author: Andy Smart
   ========================================================================== */

body { background: url('../images/main_bg_tile.png') repeat top left; font-family:'Georgia', serif; font-size: 1em; color: #444; line-height:1.65em; text-shadow:#fff 0px 1px 0px;  }

p { line-height:1.65em; }

h1, h2, h3, h4 { color: #222; font-weight:normal !important; }

h1 { line-height:1.4em; }
h2 { font-size:1.5em; margin-top:0px; line-height:1.4em;  }
h3 { border-bottom:1px solid #ddd; }
h4 { font-size:1.2em; line-height:1.4em; margin-top:0px; margin-bottom:20px; }

h1 a, h2 a, h3 a, h4 a { color:#222 !important; border:none !important; }
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover { color: #777 !important; }

ul { padding-left:20px; }

div#container { margin: 0 auto; width: 90%; background: url('../images/content_bg_tile.png') repeat top left; padding-top:132px; padding-bottom:50px;}
div#main { width:100%; position:relative; float:left; clear:both; }

img#logo { display:block; position:absolute; width: 350px; top: 30px; left:50%; margin-left:-175px; height: 72px; }

p { margin:0px; margin-bottom:1em; }

nav {
	display:block; 
	margin: 0 auto; 
	position:relative; 
	width:460px; 
	height:43px;
}

nav ul {
	
	display:block; 
	width:100%;
	height:43px;
	
	-moz-box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #000;
	-webkit-box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #000;
	box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #000;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	
	background:#333;
	
	background-image: linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -o-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -moz-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -webkit-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -ms-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	
	border:1px solid #000;
}

nav ul li { display:block; float:left; position:relative; height:100%; background:url('../images/noise_tile.png'); }
nav ul li.home { width:19%; }
nav ul li.about { width:20%; }
nav ul li.work { width:19%; }
nav ul li.blog { width:18%; }
nav ul li.contact { width:24.0%; }

nav ul li a { 
	font-family:'lucida grande', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif !important; 
	border-right: 1px solid #000; 
	border-left:1px solid #666;
	display:block; 
	font-size:0.9em;  
	padding-top: .625em; 
	padding-bottom:.625em; 
	text-shadow: #000 0px -1px 0px; 
	color:#ddd; 
	font-weight: bold; 
	text-transform:uppercase;
	border-bottom:none !important;
	text-align:center;
}

nav ul li a:hover {
	color:#fff;
	text-shadow: #000 0px -1px 0px, #aaa 0px 0px 10px;
}

nav ul li a.selected, nav ul li a:active {
	
	color:#fff;
	text-shadow: #000 0px -1px 0px, #aaa 0px 0px 10px;
	
	-moz-box-shadow: inset 0px 5px 10px #000;
	-webkit-box-shadow: inset 0px 5px 10px #000;
	box-shadow: inset 0px 5px 10px #000;
	
	border-left:1px solid #000;
}

nav ul li:first-child a { border-left:none !important; }
nav ul li:last-child a { border-right:none !important; }

header { margin: 0 auto; width:87%; margin-top:40px; margin-bottom:40px; }
header h1 { text-align:center; font-weight:normal; margin-left:6%; margin-right:6%; display:block; margin-top:20px; margin-bottom:20px; }

footer { width:87%; position:relative; clear:both; margin:40px auto;}
footer ul { width:100%; padding:0px; margin:40px 0px 40px 0px; list-style:none; height:250px; }
footer ul li { width:30%; float:left;}
footer ul li:first-child { margin-right:5%; }
footer ul li:last-child { margin-left:5%; }

footer ul li img.app_icon { position:relative; float:left; margin-right:10px; margin-bottom:10px; background:transparent; -moz-border-radius: 10px; border-radius: 10px; -webkit-border-radius: 10px; }

p.copyright { color:#888; margin-top:20px; position:relative; float:left;}
div.social_links { position:relative; float:right; margin-top:5px;}

/* Home page slider */

div.slider { width:100%; max-height:640px; overflow:hidden; margin-bottom:40px; }
div.slider a { 
	opacity:0;
	z-index:99;
	
	transition:opacity .2s linear;
	-moz-transition:opacity .2s linear;
	-o-transition:opacity .2s linear;
	-webkit-transition:opacity .2s linear;
}

div.slider:hover a { opacity:.8; }
div.slider a:hover { opacity:1; }

span.divider, hr { border-top:1px solid #ccc; border-bottom:1px solid #ccc; display:block; width:100%; height:2px; }

div.medium_column { width:42%; position:relative; }
div.medium_column.left { float:left; margin-left:6%; }
div.medium_column.right { float:right; margin-right:6%; }

ul.articles, div.full_article { width:87%; margin:0px; padding:0px; list-style:none; margin: 0 auto; }

.article { margin-bottom:40px; }
.article img { float:left; position:relative; width:35%; }
.article div.post_content { float:right; position:relative; width:61%; }

ul.sharing { list-style:none; padding-left:0px; }
ul.sharing li { float:left; position:relative; margin-right:10px; }
ul.sharing li.fb { margin-top:-4px; }

p.meta { font-size:0.9em; color:#999; }

ul.work { width:87%; margin: 0 auto; padding:0px; list-style:none; }
ul.work li { width:48%; float:left; }
ul.work li:nth-child(even) { margin-left:4%; }

p.work_disclaimer { width:87%; text-align:center; margin:0px auto 40px auto;}

div.testimonials { width: 87%; margin: 0 auto; clear:both; }
div.testimonials span.divider { margin-bottom:40px;}
div.testimonials ul { list-style:none; margin:0px; padding:0px;}
div.testimonials blockquote { color:#666; margin:20px 0px; }
div.testimonials ul li { padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #ccc; }
div.testimonials ul li:last-child { border:none; padding-bottom:0px; margin-bottom:0px;}

img#profile_pic { width:100%; margin-bottom:20px; }

.rounded {
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

.shadow {
	-moz-box-shadow: 0px 1px 6px #bbb;
	-webkit-box-shadow: 0px 1px 6px #bbb;
	box-shadow: 0px 1px 6px #bbb;
}

.map_image {
	width:87%;
	margin:0 auto;
	height:250px;
	background: url('../images/map_slither.png') no-repeat center;
	margin-bottom:40px;
}

a.app_store_button {
	
	background: #333;
	text-shadow:#000 0px -1px 0px;
	color:#eee;
	padding:5px 10px 10px 60px;
	display:inline-block;
	text-transform:uppercase;
	font-family: 'lucida grande', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif !important; 
	text-align:center;
	font-size:1.1em;
	line-height:1em;
	border:1px solid #000;
	font-weight:bold;
	
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	
	background:#333;
	
	background-image: linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -o-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -moz-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -webkit-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	background-image: -ms-linear-gradient(bottom, rgb(46,46,46) 0%, rgb(103,103,103) 100%);
	
	-moz-box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #555;
	-webkit-box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #555;
	box-shadow: inset 0px 2px #8e8e8e, 0px 1px 6px #555;
	
	position:relative;
}

a.app_store_button:hover {
	text-shadow: #000 0px -1px 0px, #aaa 0px 0px 10px;
}

a.app_store_button:active {
	
	color:#fff;
	text-shadow: #000 0px -1px 0px, #aaa 0px 0px 10px;
	
	-moz-box-shadow: inset 0px 5px 10px #000;
	-webkit-box-shadow: inset 0px 5px 10px #000;
	box-shadow: inset 0px 5px 10px #000;
}

a.app_store_button span {
	height:100%;
	width:48px;
	border-right:1px solid #000;
	display:block;
	position:absolute;
	left:0px;
	top:0px;
	background: url('../images/app_store_btn_icon_white.png') no-repeat center;
}

a.app_store_button small {
	
	font-size:0.6em;
	color:#ddd;
}

a.folio {  
	display:block;
	margin-bottom:40px;
	padding:0px !important;
	
	border:none !important;
	
	position:relative;
	overflow:hidden;
}

a.folio:hover span {
	top:50%;
	opacity:.95;
}

a.folio:hover img {
	opacity:.7;
}

a.folio span
{	
	position:absolute;
	width:70%;
	text-indent:.7em;
	text-align:center;
	
	top:70%;
	margin-top:-15%;
	margin-left:13%;
	
	background:#333;
	
	background-image: linear-gradient(bottom, rgb(23,23,23) 0%, rgb(70,70,70) 100%);
	background-image: -o-linear-gradient(bottom, rgb(23,23,23) 0%, rgb(70,70,70) 100%);
	background-image: -moz-linear-gradient(bottom, rgb(23,23,23) 0%, rgb(70,70,70) 100%);
	background-image: -webkit-linear-gradient(bottom, rgb(23,23,23) 0%, rgb(70,70,70) 100%);
	background-image: -ms-linear-gradient(bottom, rgb(23,23,23) 0%, rgb(70,70,70) 100%);
	
	border:1px solid #000;
	
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	
	padding:5% 2% 5% 2%;
	
	color:#fff;
	text-shadow:#000 0px 1px 2px;
	font-size:1em;
	
	-moz-box-shadow:inset 0px 2px #666, 0px 1px 10px #000;
	-webkit-box-shadow:inset 0px 2px #666, 0px 1px 10px #000;
	box-shadow:inset 0px 2px #666, 0px 1px 10px #000;
	
	transition:top .2s linear, opacity .2s linear;
	-moz-transition:top .2s linear, opacity .2s linear;
	-o-transition:top .2s linear, opacity .2s linear;
	-webkit-transition:top .2s linear, opacity .2s linear;
	
	opacity:0;
	
	z-index:99;
}

a.folio img {
	
	width:100%;
	
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	
	-moz-box-shadow: 0px 1px 3px #bbb;
	-webkit-box-shadow: 0px 1px 3px #bbb;
	box-shadow: 0px 1px 3px #bbb;
	
	opacity:1;
	
	transition:opacity .2s linear;
	-moz-transition:opacity .2s linear;
	-o-transition:opacity .2s linear;
	-webkit-transition:opacity .2s linear;
}

a.folio.home img {
	opacity:1;
}

a.social_icon_btn {
	
	width:40px;
	height:40px;
	background:url('../images/icon_sprite.png');
	overflow:hidden;
	
	display:inline-block;
	font-size:1px;
	text-indent:-9000px;
	border:none;
}

a.social_icon_btn.twitter { background-position: -40px 0px; }
a.social_icon_btn.twitter:hover { background-position: -40px -40px; }

a.social_icon_btn.rss { background-position: 0px 0px; }
a.social_icon_btn.rss:hover { background-position: 0px -40px; }

/* Slideshow Styles */

/* Browser Resets */
.flex-container a:active,
.flexslider a:active {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;} 

/* FlexSlider Necessary Styles
*********************************/ 
.flexslider {width: 100%; margin: 0; padding: 0;}
.flexslider .slides > li {display: none;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {max-width: 100%; display: block;}
.flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}


/* FlexSlider Default Theme
*********************************/
.flexslider { position: relative; zoom: 1;}
.flexslider .slides {zoom: 1;}
.flexslider .slides > li {position: relative;}
/* Suggested container for "Slide" animation setups. Can replace this with your own, if you wish */
.flex-container {zoom: 1; position: relative;}

/* Caption style */
/* IE rgba() hack */
.flex-caption {background:none; -ms-filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4C000000,endColorstr=#4C000000);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4C000000,endColorstr=#4C000000); zoom: 1;}
.flex-caption {width: 96%; padding: 2%; position: absolute; left: 0; bottom: 0; background: rgba(0,0,0,.3); color: #fff; text-shadow: 0 -1px 0 rgba(0,0,0,.3); font-size: 14px; line-height: 18px;}

/* Direction Nav */
.flex-direction-nav li a { position:absolute; top:50%; margin-top:-60px; width:60px; height:60px; display:block; border:none; text-indent:-9000px; font-size:1px; }
.flex-direction-nav li a.next { right:-10px; background:url('../images/slider_left_arrow.png'); } 
.flex-direction-nav li a.prev { left:-10px; background:url('../images/slider_right_arrow.png'); }
.flex-direction-nav li a.disabled {opacity: .3; filter:alpha(opacity=30); cursor: default;}

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

/* For image replacement */
.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }

/* Hide for both screenreaders and browsers:
   css-discuss.incutio.com/wiki/Screenreader_Visibility */
.hidden { display: none; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: by Jon Neal.
  www.webaim.org/techniques/css/invisiblecontent/  &  j.mp/visuallyhidden */
.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: drupal.org/node/897638 */
.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; }

/* Contain floats: nicolasgallagher.com/micro-clearfix-hack/ */ 
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

/* Media Queries */

@media screen and (-webkit-min-device-pixel-ratio:0) {
	nav ul li.contact { width:24.5%; }
}

/* Generic "small screen" query */

@media only screen and (max-width:480px) {
	
	div#container { width: 100%; }
	
	h1 { font-size:1.4em; }
	
	nav ul li.home { display:none; }
	nav ul li:nth-child(2) a { border-left:none !important; }
	
	nav ul li.about { width:25%; }
	nav ul li.work { width:24%; }
	nav ul li.blog { width:22%; }
	nav ul li.contact { width:29%; }

	.map_image { height:160px; }
	
	div.medium_column { width: 87%; float:left !important; }
	div.medium_column.right { margin-left:6%; margin-right:none !important; }
	
	.article img { display:none; } /* Only show post content on mobile devices */
	.article div.post_content { width:100%; }
	
	a.folio.home:nth-child(2) { display:none;}
	
	ul.work li { width:100%; margin-left:0px !important;}
	
	footer ul li { width: 100%; clear:both; border-bottom:1px solid #ccc; margin-bottom:20px; padding-bottom:20px; float:none; margin-left:0px !important; margin-right:0px !important; }
	footer ul li:last-child { border:none; margin-bottom:0px; padding-bottom:0px; }
	footer ul { height:auto; }
	
	p.copyright { width:70%; }
	div.social_links { margin-top:20px; }
	
	div.slider { height:300px; }
}

/* Size the logo on smaller screens */

@media only screen and (max-width:350px) {
	img#logo { width:87%; margin-left:-43%; height:auto; }
}

@media only screen and (max-width: 600px) {
	
	nav { width: 87%; }
}

@media only screen and (max-width: 768px) {
	
	body { font-size:0.9em !important; }
	nav ul { height: 39px; }
}

@media only screen and (min-width: 768px) {
  /* Style adjustments for viewports 768px and over go here */
	body { font-size:1em !important; }
}

@media only screen and (min-width: 940px) {
	
	div#container { width: 940px !important; }
}


/* =============================================================================
   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; }
}
