/* ==========================================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
   ========================================================================== */

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

body {
	font-family: sans-serif;
	background: #f6f6f6;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.4;
    color: #333;
}

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

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

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

img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}

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

textarea {
    resize: vertical;
}

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


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

/* Text Styles ---- */

p:first-child{
	margin-top:0 !important;
}

h1, h2, h4, h5{
	font-weight: 100;
}

h3{
	font-weight: 400;
}

/* Link Styles ---- */

a:link{
	color: #438bc5;
	text-decoration: none;
}

a:visited{
	color: #438bc5;
	text-decoration: none;
}

a:hover{
	color: #252525;
	text-decoration: underline;
}

a:active{
	color: #252525;
	text-decoration: underline;
}

/* Header Styles ---- */

#top_header{
	width: 100%;
	background: #000000;
	padding: 0;
	overflow: hidden;
	padding-top: 0px;
	padding-bottom: 15px;
	font-size: 1.1em;
}

#header_inner{
	overflow: hidden;
}

#header_logo{
	width: 100%;
	text-align: right;
	border-bottom: 1px solid #565656;
	padding-bottom: 10px;
    float:none;
    clear:both;
    display: none;
}

#header_logo img{
	width: 150px;
	height: auto;
}

/* OLD Header Navigation Styles

ul#top_menu {
	list-style: none;
	padding: 0;
	margin:0;
	background: url(../images/flaming_logo.jpg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 18%;
	overflow: hidden;
	height: 90px;
	line-height: 90px;
}

ul#top_menu li{
	margin: 0;
	padding: 0;
	float: left;
	margin-right: 2%;
}

ul#top_menu li:last-child{
	margin: 0 !important;
}

*/

/* NEW Header Navigation Styles ---- */

ul#top_menu {
	list-style: none;
	padding: 0;
	margin:0;
	background: url(http://matadorpictures.com/assets/templates/matador/images/flaming_logo.jpg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 18%;
	padding-top: 45px;
	padding-bottom: 60px;
	overflow: visible;
}

ul#top_menu li{
	margin: 0;
	padding: 0;
	float: left;
	margin-right: 2%;
	position: relative;
	display: block;
	overflow: visible;
}

ul#top_menu li:last-child{
	margin: 0 !important;
}

ul#top_menu li ul{
	padding: 0 !important;
	position: absolute;
	width: 900px;
	left: 0;
	top: 0;
	z-index: 9999999;
	display: none;
}

ul#top_menu li ul li{
	padding: 15px 0;
}

ul#top_menu li:hover ul{
	display: block;
}

/* Header Link Styles ---- */

header a:link{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

header a:visited{
	color: #839a9e;
	text-decoration: none;
	padding-bottom: 3px;
}

header a:hover{
	color: #f6f6f6;
	border: none;
	border-bottom: 3px solid #f6f6f6;
	text-decoration: none;
	padding-bottom: 3px;
}

header a:active{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

/* Header Active Class Link Styles ---- */

header li.active > a:link, header li.active > a:visited, header li.active > a:hover{
    color:#f6f6f6;
    border-bottom:3px solid #f6f6f6;
    padding-bottom: 3px;
}

/* Small Device Navigation Styles ---- */

nav#phone_nav {  
    width: 100%;     
    overflow: hidden;  
    text-align: center;
} 
 
nav#phone_nav ul {  
    padding: 0;  
    margin: 0 auto;
    width: 100%;
    text-align: center;
    display: none;   
    border-bottom: 1px solid #565656; 
}  

nav#phone_nav li {  
    margin: 0;
    padding: 0;
    margin-bottom: 5px;
    display: block;
    width: 100%; 
    text-align: center;
} 

#pull{
	cursor: pointer;
	display: inline-block;
	width: 90px;
	line-height: 30px;
	background-size: 15px 15px;
	background-repeat: no-repeat;
	background-position: right center;
	color: #839a9e;
}

.pull_down{
	background-image: url(../images/pull_down_arrow.png);
}

.pull_up{
	background-image: url(../images/pull_up_arrow.png);
}

/* Homepage Styles ---- */

#home_slideshow_container{
	background: #000;
	border-bottom: 1px solid #839a9e;
}

#home_slideshow{
	width: 100%;
	overflow: hidden;
	position: relative;
	
	text-align: center;
	background: #000000;
}

#home_slideshow div{
	display: none;
	


	/*top:0;
	
	z-index: 8;
	max-height: 400px;
	width: 100%;
	
	margin:auto;*/
}

.slide_caption{
	display: block !important;
	position: absolute;
	top: 70%;
	right:0;
	color: #ccc;
	font-size: 1.2em;
	padding: 10px 20px 10px 10px;
	background: url(../images/black_trans_background.png);
	font-weight: 100;
	text-align: left;
}

#home_twitter{
	overflow: hidden;
	color: #333;
	padding-bottom: 25px; 
	padding-top: 25px;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #fff;
}

#home_twitter h2{
	color: #333;
	font-weight: 100;
	padding-top: 0;
	margin-top: 0;
}

#tweet ul{
	margin: auto;
	width: 100%;
	padding: 0;
}

#tweet ul li{
	overflow: hidden;
	list-style: none;
	margin: 0;
	padding: 0;
	float: left;
	width: 22.75%;
	margin-right: 3%;
	opacity: 0.8;
}

#tweet ul li:last-child{
	margin-right: 0;
}

#tweet ul li:hover{
	opacity: 1;
}

#tweet a:link{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

#tweet a:visited{
	color: #839a9e;
	text-decoration: none;
	padding-bottom: 3px;
}

#tweet a:hover{
	color: #252525;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

#tweet a:active{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

.twitter_time{
	font-style: italic;
	font-size: 0.9em;
	margin-top: 5px;
}

/* Film page Styles ---- */

#film_parent_page_menu ul{
	list-style: none;
	margin: 20px 0 0 0;
	padding: 0;
}

/* On Release Page Styles ---- */

.film_item{
	overflow: hidden;
	color: #839a9e;
	position: relative;
}

.film_item a:link, .film_item a:visited, .film_item a:active{
	color: #839a9e;
}

.film_item a:hover{
	color: #f4f4f4;
	text-decoration: none;
}

.film_item_top{
	background: black;
	overflow: hidden;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	padding: 6px;
	float:none;
	clear: both;
}

.film_item_image{
	display: block;
}

.film_item_image img{
	height:auto;
	max-height: 192px;
	width: 100%;
}

.film_item_trailer{
	padding: 6px 6px 6px 25px;
	background: url(../images/play_icon_pale.png);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: left center;
	position: relative;
	left:7px;
	width: 50%;
	float: left;
}

.film_item_trailer:hover{
	cursor: pointer;
	color: #f4f4f4;
	background:url(../images/play_icon.png);
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-position: left center;
}

.film_item_status{
	width: 50%;
	float: left;
	padding: 6px 6px 10px 6px;
}

a.film_item_more{
 	padding: 6px 6px 10px 6px;
	width: 30%;
	float: right;
	text-align: right;
	color:#839a9e;
	text-decoration: none;
}

a.film_item_text{
    padding:10px;
	background: #252525;
	color:#f6f6f6;
	position: absolute;
	z-index: 100;
	top:55px;
	width: 80%;
	font-size: 0.9em;
	background: url(../images/black_trans_background.png);
	border-top-right-radius: 6px;
	border-bottom-right-radius: 6px;
	display: none;
}

.film_item_bottom{
	background: black;
	overflow: hidden;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
	float: none;
	clear: both;
}

h3.film_item_title{
	margin: 0 0 10px 0;
	padding-bottom: 0;
	font-size: 1em;
	float:none;
	clear: both;
	overflow: hidden;
	height: 27px;
	line-height: 25px;
}

.film_item_gplogo{
	height: 25px;
}

h3.film_item_title a:link, h3.film_item_title a:visited, h3.film_item_title a:hover, h3.film_item_title a:active{
	color: #666;
	text-decoration: none;
}

/* Film Page Styles ---- */

#film_page{
	overflow: hidden;
}

#film_page_top{
	overflow: hidden;
	margin: 0 0 20px 0;
}

#film_page_title{
	margin-top: 0;
}

#film_page_content{
	float:left;
	width: 55%;
	margin-right: 3%;
}

#film_page_content h2{
	margin:0 0 20px 0;
}

#film_page_images{
	float: left;
	width: 42%;
}

#film_page_slideshow img{
	width: 100%;
	height: auto;
}

#film_page_slideshow_buttons{
	text-align: right;
}

#film_page_slideshow_buttons li{
	list-style: none;
	margin: 10px 0 0 0;
	padding: 0;
	float: left;
	opacity: 0.6;
	margin-right: 5px;
}

#film_page_slideshow_buttons li:hover{
	cursor: pointer;
	opacity: 1;
}

#film_page_slideshow_buttons{
	margin: 0;
	padding: 0;
}

#film_page_slideshow_buttons li.activeSlide { 
	opacity:1; 
}

.slideshow_dot{
	width: 15px;
}

#film_page_bottom{
	border-top:1px solid #e3e3e3;
}

#film_page_credits{
	float: none;
	clear: both;
	margin: 0;
	overflow: hidden;
	font-size: 0.9em;
	padding-top:20px;
}

#film_page_credits{
	display: inline-table;
}

.film_page_credits_column{
	display: table-cell;
	padding-right: 30px;
	max-width: 300px;
}

#film_page_credits p:last-child{
	padding-right: 0;
}

/* About Page Styles ----*/

#about_page_content div{
	float:left;
	width: 29.2%;
	margin-right: 3%;
}

#about_page_content div:last-child{
	margin-right: 0;
}

#staff{
	border-left:1px solid #e3e3e3;
	border-right: 1px solid #e3e3e3;
	padding: 0 3% 0 3%;
}

#staff h3{
	color: #f6f6f6;
}

/* Financing Page Styles ----*/

#financing_page_content>div{
	float:left;
	width: 29.2%;
	margin-right: 3%;
}

#financing_page_content>div:last-child{
	margin-right: 0;
}

#finance_two{
	border-left:1px solid #e3e3e3;
	border-right: 1px solid #e3e3e3;
	padding: 0 3% 0 3%;
}

/* Awards Page Styles ----*/

#awards_headings{
	float: none;
	clear: both;
	overflow: hidden;
	font-size: 1.2em;
	font-weight: 200;
	margin: 30px 0 20px 0;
}

.award_row{
	margin: 5px 0;
	padding: 15px 0 0 0;
	border-top: 1px solid #999;
}

.award_row:last-child{
	border-bottom: 1px solid #999;
}

.award_row, .award_row_item{
	float: none;
	clear: both;
	overflow: hidden;
}

.award_row_title{
	float: left;
	width: 31.33%;
	margin-right: 3%;
}

.award_row_content{
	float: left;
	width: 65.66%;
}

.award_row_film{
	float: left;
	width: 48.5%;
	margin-right: 3%;
}

.award_row_awards{
	float: left;
	width: 48.5%;
}

/*OLD AWARD STYLES ==========*/

		.award_item{
			overflow: hidden;
			border: 1px solid #e3e3e3;
			padding: 10px;
			margin-bottom: 20px;
			border-radius: 6px;
		}
		
		.award_item:hover{
			border:1px solid #ccc;
		}
		
		.award_item_bottom{
			display: none;
		}
		
		.award_item h3, .award_item h4, .award_item p{
			padding: 0;
			margin:0;
		}
		
		.award_item h3{
			margin-bottom: 10px;
		}
		
		.award_item h4{
			font-weight: 400;
			font-size: 1.1em;
		}
		
		.award_item table tr{
			border-top:10px solid #f6f6f6;
		}
		
		.award_item table tr td{
			vertical-align: top;
		}
		
		.award_film_title{
			font-weight: 400;
			padding-right: 10px;
			border-right: 1px solid #e3e3e3;
		}
		
		.award_content{
			padding-left: 10px;
		}

/* Press Page Styles ---- */

#press_year h2{
	margin:0;
}

.press_item{
    float:none;
    clear:both;
    margin-bottom: 10px;
}

.date_published{
    display:inline-block;
    width:130px;
    border-right: 1px solid #e3e3e3;
    margin: 0 5px 0 0;
}

/* Filter Page Styles ---- */

.filter_page ul{
	margin: 20px 0 20px 0;
	padding: 0;
	overflow: hidden;
}

.filter_page ul li{
	margin: 0 3% 0 0;
	padding: 3px;
	list-style: none;
	float: left;
	font-size: 1.1em;
	border-bottom: 3px solid #e3e3e3;
}

.filter_page ul li:hover{
	border-bottom: 3px solid #252525;
}

.filter_page ul li.active{
	border-bottom: 3px solid #252525;
}

.filter_page ul li a:link, .filter_page ul li a:visited, .filter_page ul li a:active{
	color: #839a9e;
}

.filter_page ul li a:hover{
	text-decoration: none;
	color: #252525;
}

.filter_page ul li.active a{
	color: #252525;
}

/* Filter List Styles */

 ul#filter{
 	margin:0 0 30px 0;
 	padding:0;
 	float:none;
 	clear: both;
 	display: block;
 	overflow: hidden;
 }

 ul#filter li{
 	list-style: none;
 	margin: 0 20px 0 0;
 	padding: 3px;
 	float:left;
 	font-size: 1em;
 	color: #839a9e;
 	border-bottom: 3px solid #e3e3e3;
 }

 ul#filter li:hover{
 	color: #252525;
 	border-bottom: 3px solid #252525;
 	cursor: pointer;
 }

 ul#filter li.active{
 	color: #252525;
 	border-bottom: 3px solid #252525;
 }

/* Re-size Embeded Videos Rsponsively */

.containing_block {
  width:100%;
}

.video_wrapper {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}
.video_wrapper object,
.video_wrapper embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Footer Styles ---- */

footer{
	padding-top: 25px;
	padding-bottom: 25px;
	border-top: 1px solid #839a9e;
	overflow: hidden;
	float: none;
	clear: both;
}

.footer_list{
	margin: 0;
	padding: 0;
}

.footer_list li{
	list-style: none;
	margin: 0;
	padding: 0;
	float: left;
	width: 22.75%;
	margin-right: 3%; 
}

.footer_list li:last-child{
	margin-right: 0 !important;
}

li.list_heading{
	margin-bottom: 10px !important;
	font-weight: 400;
}

footer a:link{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

footer a:visited{
	color: #839a9e;
	text-decoration: none;
	padding-bottom: 3px;
}

footer a:hover{
	color: #252525;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

footer a:active{
	color: #839a9e;
	border: none;
	text-decoration: none;
	padding-bottom: 3px;
}

.social{
	position:relative;
		top:-3px;
}

.icon_link img{
	opacity: 0.6;
}

.icon_link:hover img{
	opacity: 1;
}

/* Re-useable Classes ---- */

/* Modal Windows ---- */

iframe{
	padding: 0;
	margin: 0;
}

#modal_background{
	display:none;
	position:fixed;
	_position:absolute; /* hack for internet explorer 6*/
	height:100%;
	width:100%;
	top:0;
	left:0;
	background:#000000;
	border:1px solid #cecece;
	z-index:200;
	opacity: 0.8;
}

.modal_window{
	display:none;
	position:fixed;
	_position:absolute; /* hack for internet explorer 6*/
	overflow: hidden;
	background: #000;
	padding: 5px;
	border: 8px solid #000;
	border-radius: 6px; 
}

/* The Grid ---- */

.five_columns .column{
	float:left;
	width: 17.6%;
	margin-right: 3%;
	margin-bottom: 20px;
}

.five_columns .column:nth-child(5n){
	margin-right: 0;
}

.four_columns > li, .four_columns > div{
	float: left;
	width: 22.75%;
	margin-right: 3%;
	margin-bottom: 20px;
}

.four_columns > li:nth-child(4n), .four_columns > div:nth-child(4n){
	margin-right: 0;
}

.three_columns .column{
	float:left;
	width: 31.33%;
	margin-right:3%;
	margin-bottom: 20px;
}

.three_columns .column:nth-child(3n){
	margin-right: 0;
}

.two_columns .column{
	float: left;
	width: 48.5%;
	margin-right: 3%;
	margin-bottom: 20px; 
}

.two_columns .column:nth-child(2n){
	margin-right: 0;
}

@media only screen and (max-width:900px){
	.four_columns .column{
		width: 48.5%
	}

	.four_columns .column:nth-child(4n){
		margin-right: 3%;
	}

	.four_columns .column:nth-child(2n){
		margin-right: 0;
	}
	
	.three_columns .column{
		width: 48.5%;
	}

	.three_columns .column:nth-child(3n){
		margin-right: 3%;
	}

	.three_columns .column:nth-child(2n){
		margin-right: 0;
	}

}

@media only screen and (max-width:600px) {
	
	.two_columns .column, .three_columns .column, .four_columns .column{
		width: 100%;
		margin-right: 0;
		float: none;
		clear: both;
	}
	
}

/* Reusable Page Styles ---- */

.page_body{
	padding: 30px 0 30px 0;
	overflow: hidden;
	min-height: 400px;
}

.inner{
	width: 80%;
	max-width: 1022px;
	margin: auto;
	overflow: hidden;
}

.inner h2:first-child{
	margin: 0 0 20px 0;
}

/* Custom Helper Classes ---- */

.rotate{
	transform: rotate(180deg);
   -moz-transform: rotate(180deg);
   -webkit-transform: rotate(180deg);
}

.small_print{
	font-size: 0.85em;
}

.show_small{
	display: none;
}

.fake_link{
	color: #438bc5;
}

.fake_link:hover{
	cursor: pointer;
	color: #252525;
	text-decoration: underline;
}

.on_top{
	z-index: 12000;
}

.on_bottom{
	z-index: 1;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

   

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

    ul#top_menu{
        padding-top:0;
        background-image: none;
        height: 35px;
        line-height: 1em;
    }	

	ul#top_menu li{
		padding-top: 10px;
		padding-bottom: 10px;
	}

	ul#top_menu li ul li{
		padding-top: 30px;
		padding-bottom: 10px;
	}

	#header_logo{
		display: block;
	}
	
	#tweet ul li{
		margin-bottom: 20px;
		width: 48.5%;
		margin-right: 3%;
	}
	
	#tweet ul li:nth-child(2){
		margin-right: 0;
	}
	
	#tweet ul li:nth-child(3){
		clear: left;
	}
	
	.release_item{
		float:none;
		width: 100%;
	}

	#film_page_content, #film_page_images, #film_page_credits{
		width: 100%;
		display: block;
		margin-bottom: 20px;
	}

	#film_page_credits p{
		display: block;
	}

	#film_page_credits p strong{
		padding: 0;
		font-size: 1em;
	}

	#about_page_content div{
		float:left;
		width: 46.5%;
		margin-right: 3%;
	}

	#about_page_content div:last-child{
		margin-right: 0;
		width: 100%;
		float:none;
		clear: both;
		border-top: 1px solid #e3e3e3;
	}

	#staff{
		border-left:1px solid #e3e3e3;
		border-right: none;
		padding: 0 0 0 3%;
		margin-right: 0 !important;
	}
	
}

@media only screen and (max-width: 785px) {
	
	.social{
		float:left;
	}
	
	.hide_medium{
		display: none;
	}
}


@media only screen and (max-width: 660px) {
		
	.social{
		margin-bottom: 10px;
	}
	
	header a:link{
		color: #839a9e;
		text-decoration: none;
		border:none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a:visited{
		color: #839a9e;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a:hover{
		color: #f6f6f6;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a:active{
		color: #839a9e;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}
	
	header a.active:link{
		color: #f6f6f6 !important;
		text-decoration: none;
		border:none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a.active:visited{
		color: #f6f6f6 !important;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a.active:hover{
		color: #f6f6f6 !important;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}

	header a.active:active{
		color: #f6f6f6 !important;
		text-decoration: none;
		border: none;
		margin-bottom: 10px !important;
		display: inline-block;
	}
	
	.hide_small{
		display: none;
	}
	
	.show_small{
		display: block;
	}

	#header_logo{
		margin-bottom: 15px;
		padding: 0;
	}

	#tweet ul li{
		overflow: hidden;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		float: none;
		opacity: 1;
		margin-bottom: 20px;
		border-top:1px dotted #e3e3e3;
		padding-top: 10px;
	}
	
	.footer_list li{
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		float: none;
		clear: both; 
		margin-bottom: 10px;
	}

	#about_page_content div{
		float:left;
		width: 100%;
		margin-right: 0;
	}

	#staff{
		border-left:none;
		border-top: 1px solid #e3e3e3;
		padding: 0;
	}

	#financing_page_content div{
		float:none;
		border:none;
		width:100%;
		margin-left: 0;
		margin-right: 0;
		padding: 0;
	}

	.press_item{
		margin-bottom: 20px;
	}

	.date_published{
		display: block;
		width: 100%;
		border-right: none;

	}

	.film_item_image img{
		max-height: none;
	}
        
    .slide_caption{
        font-size:0.8em;
    }

    #pull{
        line-height:19px;
    }

    #header_logo{
        margin-bottom: 5px;
    }

    .film_page_credits_column{
    	display: block;
    }

}


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



@media only screen and (min-width: 35em) {

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

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

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

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

.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: #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;
    }
}