/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */
/*

 * 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.

 */

/* ==========================================================================

   Base styles: opinionated defaults

   ========================================================================== */

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

/*

 * Remove text-shadow in selection highlight:

 * https://twitter.com/miketaylr/status/12228805301

 * These selection rule sets have to be separate.

 * Customize the background color to match your design.

 */

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

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

 * A better looking default horizontal rule

 */

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

 * Remove the gap between audio, canvas, iframes,

 * images, videos and the bottom of their containers:

 * https://github.com/h5bp/html5-boilerplate/issues/440

 */

audio,  canvas,  iframe,  img,  svg,  video {
	vertical-align: middle;
}
/*

 * Remove default fieldset styles.

 */

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

 * Allow only vertical resizing of textareas.

 */

textarea {
	resize: vertical;
}
/* ==========================================================================

   Browser Upgrade Prompt

   ========================================================================== */

.browserupgrade {
	margin: 0.2em 0;
	background: #ccc;
	color: #000;
	padding: 0.2em 0;
}
/* ==========================================================================

   Author's custom styles

   ========================================================================== */

body.home, body.inside {
	background-image: url("../img/fixed-bg-3.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
	height: 100%;
	font-family: 'Open Sans', sans-serif;
}
.section-heading {
	color: #c48617;
	font-size: 40px;
	font-weight: 300;
	line-height: 35px;
	margin: 25px 0;
	font-family: 'Marck Script', cursive;
	text-shadow: 0px 0px 2px rgba(150, 150, 150, 0.96);
}
.alignleft {
	float: left;
}
img.alignleft {
	margin: 0em 1em 1em 0px;
}
/*================================================= */

/*================================================= */

/*================================================= */

/*======New Styles========== */

/*======ENd New Styles========== */

/*================================================= */

/*================================================= */

/*================================================= */

.header-call ul li {
	display:inline-block;
	margin-right: 5px;
}
.header-call ul li a {
	color: #710016;
	text-decoration:none;
	font-weight: 300;
}
.header-call ul li span {
	color: #710016;
	text-decoration:none;
	font-weight: 300;
}
.header-call ul li a:hover {
	color:#710016;
}
/**

/*	Header

/* ==========================================*/

/* ===================header-connect=======================*/

.header-connect {
	padding-top: 10px;
	background-color: #f7f7f7;
}
.header-call p {
	color: #710016;
}
.header-call p span {
	margin-right: 15px;
	font-weight: 300;
	font-size: 25px;
	padding-bottom:0;
}
.header-call p span i {
	margin-right: 3px;
	font-size: 30px
}
.header-social ul, .header-call ul {
	padding-top: 5px
}
.header-social ul li a, .header-call ul li a {
	color: #710016;
	font-size: 14px
}
.header-social ul li a:hover, .header-call ul li a:hover {
	color: #c27171
}
/* ===================navigation=======================*/

#navigation {
	-webkit-transition: all 0.8s ease 0s;
	-moz-transition: all 0.8s ease 0s;
	-ms-transition: all 0.8s ease 0s;
	-o-transition: all 0.8s ease 0s;
	transition: all 0.8s ease 0s;
	background-color: #710016;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
	padding: 5px 0;
}
#navigation.animated-header {
	padding: 20px 0;
}
h1.navbar-brand {
	font-size: 33px;
	font-weight: 700;
	margin: 0;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	text-decoration: none;
}
h1.navbar-brand a {
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	text-decoration: none;
}
.navbar-header .call-n {
	font-size: 25px;
	font-weight: 400;
	font-family: 'Open Sans', sans-serif;
	margin: 0;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	text-decoration: none;
	text-align: center;
	color: #ffffff;
}
.navbar-inverse .navbar-nav {
	margin-top: 13px;
}
.navbar-inverse .navbar-nav > li > a {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	color: #ffffff;
}
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
	color: #fff;
	background-color: #710016;
}
.navbar-nav > li > .dropdown-menu {
	margin-top: 18px;
}
.dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1000;
	display: none;
	float: left;
	min-width: 160px;
	padding: 5px 0;
	margin: 2px 0 0;
	font-size: 14px;
	text-align: left;
	list-style: none;
	background-color: #710016;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	border: 1px solid #ccc;
	border: 1px solid rgba(0, 0, 0, .15);
	border-radius: 4px;
	-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
	box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-menu > li > a {
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: normal;
	line-height: 1.42857143;
	color: #fff;
	white-space: nowrap;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
	color: #f7f7f7;
	text-decoration: none;
	background-color: #c27171;
}
.dropdown-header {
	display: block;
	padding: 3px 20px;
	font-size: 12px;
	line-height: 1.42857143;
	color: #c27171;
	white-space: nowrap;
}
.dropdown-menu .divider {
	height: 1px;
	margin: 9px 0;
	overflow: hidden;
	background-color: #c27171;
}
/* ===================slider=======================*/

.carousel {
	background: #f9f3e9;
}
.carousel-control.left, .carousel-control.right {
	background: none !important;
 filter: progid: none !important;
	outline: 0;
}
.carousel .carousel-control {
	visibility: hidden;
}
.carousel:hover .carousel-control {
	visibility: visible;
}
.carousel-caption {
	font-size: 50px;
	color: #cd9b49;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	line-height: 50px;
	right: 61%;
	max-width: 500px;
	left: auto;
	top: 18%;
	text-shadow: none;
}
.carousel-caption span {
	text-transform: uppercase;
	color: #720017;
	font-size: 70px;
	line-height: 75px;
	margin: 5px -5px 5px 0;
}
.carousel-indicators {
	text-align: left;
}
.carousel-indicators li {
	display: inline-block;
	width: 25px;
	height: 8px;
	margin: 1px;
	text-indent: -999px;
	cursor: pointer;
	background-color: #000 \9;
	background-color: rgba(0, 0, 0, 0);
	border: 1px solid #720017;
	border-radius: 10px;
}
.carousel-indicators .active {
	width: 27px;
	height: 10px;
	margin: 0;
	background-color: #720017;
}
.carousel-fade .carousel-inner .item {
	opacity: 0;
	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-o-transition-property: opacity;
	transition-property: opacity;
}
.carousel-fade .carousel-inner .active {
	opacity: 1;
}
.carousel-fade .carousel-inner .active.left,  .carousel-fade .carousel-inner .active.right {
	left: 0;
	opacity: 0;
	z-index: 1;
}
.carousel-fade .carousel-inner .next.left,  .carousel-fade .carousel-inner .prev.right {
	opacity: 1;
}
.carousel-fade .carousel-control {
	z-index: 2;
}
.carousel .carousel-inner .item {
	-webkit-transition-duration: 1s; /* Safari */
	transition-duration: 1s;
}
#practice, #features {
	width: 100%;
	padding-top: 45px;
	padding-bottom:0px;
	background: url(../img/practice-bg.png) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.list-service ul {
	list-style-type: none;
	padding-left: 20px;
	color: #666;
}
.list-service li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}
.list-service li a {
	color: #000;
}
.list-service li a:hover {
	text-decoration: none;
}
.list-service li:before {
	position: absolute;
	top: 0;
	left: 0;
	font-family: FontAwesome;
	content: "\f058";
	color: green;
}
.img-center {
	margin: 1px auto;
}
.opaque-header-wrapper {
	width: 100%;
}
.opaque-header-sm {
	color: #c48617;
	font-size: 36px;
	line-height: 36px;
	font-weight: 300;
}
.opaque-header-lg {
	color: #c48617;
	font-size: 50px;
	line-height: 50px;
	font-weight: 300;
	clear: right;
}
.full-service {
	color: #422d0f;
	font-size: 14px;
	width: 100%;
	float: left;
	padding: 30px 0px 36px 0px;
}
/* Testimonials */

#testimonials {
	width: 100%;
	padding-top: 45px;
	padding-bottom:45px;
	background: url(../img/fixed-bg-1.jpg) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.testimonials blockquote {
	background: #f7f7f7 none repeat scroll 0 0;
	border: medium none;
	color: #666;
	display: block;
	font-size: 14px;
	line-height: 20px;
	padding: 15px;
	position: relative;
	border-radius: 5px 5px 20px 5px;
	-webkit-border-radius: 5px 5px 20px 5px;
	-moz-border-radius: 5px 5px 20px 5px;
}
 .testimonials blockquote::before {
 width: 0;
 height: 0;
 right: 0;
 bottom: 0;
 content: " ";
 display: block;
 position: absolute;
}
 .testimonials blockquote::after {
 width: 0;
 height: 0;
 right: 0;
 bottom: 0;
 content: " ";
}
.testimonials .carousel-info img {
	border: 1px solid #f5f5f5;
	border-radius: 150px !important;
	height: 75px;
	padding: 3px;
	width: 75px;
}
.testimonials .carousel-info {
	overflow: hidden;
}
.testimonials .carousel-info img {
	margin-right: 15px;
}
.testimonials .carousel-info span {
	display: block;
}
.testimonials span.testimonials-name {
	color: #ffffff;
	font-size: 16px;
	font-weight: 300;
	margin: 23px 0 7px;
}
.testimonials span.testimonials-post {
	color:beige;
	font-size: 12px;
}
.testimonials-header-sm {
	color: #ffffff;
	padding-top: 100px;
	font-size: 36px;
	font-family: 'Marck Script', cursive;
	line-height: 40px;
	font-weight: 300;
	text-align: center
}
.btn.outline {
	background: none;
	padding: 8px 22px;
	margin-top: 20px;
	border-radius: 20px;
	margin-bottom: 20px;
}
.btn-white.outline {
	border: 2px solid #ffffff;
	color: #ffffff;
}
.btn-primary.outline {
	border: 2px solid #2e6da4;
	color: #2e6da4;
}
.btn-white.outline:hover, .btn-white.outline:focus, .btn-white.outline:active, .btn-white.outline.active, .open > .dropdown-toggle.btn-white {
	color: #bbbbbb;
	border-color: #ffffff;
	background: #ffffff;
}
.btn-primary.outline:hover, .btn-primary.outline:focus, .btn-primary.outline:active, .btn-primary.outline.active, .open > .dropdown-toggle.btn-primary {
	color: #ffffff;
	border-color: #2e6da4;
	background: #2e6da4;
}
.btn-white.outline:active, .btn-white.outline.active {
	border-color: #007299;
	color: #007299;
	box-shadow: none;
}
/* features */

#features {
	width: 100%;
	padding-top:0px;
	padding-bottom:0px;
	background: url(../img/fixed-bg-9.jpg) repeat;
}
.features ul {
	list-style-type: none;
	padding-left: 20px;
	color: #666;
}
.features li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}
.features li a:hover {
	text-decoration: none;
}
.features li:before {
	position: absolute;
	top: 0;
	left: 0;
	font-family: FontAwesome;
	content: "\f058";
	color: green;
}
#features .opaque-header-wrapper {
	padding-top:45px;
}
/* smile */

#smile {
	width: 100%;
	padding-top: 45px;
	padding-bottom:0px;
	background: url(../img/fixed-bg-2.jpg) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
/* call-out-section */

.call-out-section {
	background: #fff;
	min-height: 135px;
}
.call-out-section-title {
	color: #720017;
	font-size: 28px;
	font-weight: 300;
	margin-top: 40px;
	float: left;
	line-height: 32px;
}
.callout-wrap {
	margin-top: 40px;
	margin-left: 20px;
	text-align: center;
}
.callout-text {
	color: #c48617;
	font-size: 18px;
}
.callout-wrap-divider {
	border-right: 1px solid #ccc;
}
.callout-number, .callout-app {
	color: #720017;
	font-size: 20px;
	text-align: center;
}

/* footer */

footer {
	background-color: #720017;
	font-weight: 300;
	color: #eaeaea;
}
.footer-logo {
	margin-top: 0px;
	font-size: 25px;
	line-height: 36px;
	font-weight: 300;
}
footer a {
	color: #fff;
}
footer a:hover, footer a:focus {
	color: #fff;
	text-decoration: none;
}
footer .container {
	padding-top: 30px;
	padding-bottom: 30px;
}
footer .logo {
	width: 100px;
	margin-bottom: 15px;
}
footer .social-icons.light-icons a {
	background-color: #3c3c3e;
}
footer .social-icons.light-icons a:hover {
	background-color: #353536 !important;
}
 @media screen and (max-width: 768px) {
 footer .container {
 padding: 30px 15px;
}
}
.footer-heading {
	margin: 0 0 13px 0;
	font-size: 16px;
	line-height: 2;
	color: #fff;
}
.footer-nav > li {
	margin-bottom: 10px;
}
.copyright {
	padding: 15px 0;
	background-color: #500010;
	font-size: 12px;
}
.footer-minimal .copyright {
	border: none !important;
	font-size: 11px;
	padding-bottom: 0;
	background-color: transparent;
}
/*  secound page */

/* page header */

.separate_post_background {
	background-color: #e3dcd2;
	border-bottom: 1px solid #c4b8a7;
}
.separate_post_background {
	padding: 0;
	overflow: hidden;
	position: relative;
}
.separate_post_background img {
	width: 100%;
}
.separate_post_caption {
	color: #fff;
}
.separate_post_caption {
	left: 0;
	right: 35%;
	bottom: 30%;
	text-align: center;
	position: absolute;
	color: #cd9b49;
	text-shadow: 0px 0px 2px rgba(150, 150, 150, 0.96);
}
.separate_post_caption h1, .carousel-caption h1 {
	text-transform: uppercase;
	color: #720017;
	font-size: 40px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	line-height: 40px;
}
.separate_post_caption h2, .carousel-caption h2 {
	color: #720017;
	font-size: 40px;
	font-family: 'Marck Script', cursive;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	line-height: 35px;
}
.page-header {
	padding: 5px 0;
	margin: 0;
	border-bottom: 1px solid #eaeaea;
	min-height: 250px;
}
.page-header .container {
	position: relative;
}
.header-1 {
	background-image: url(../img/inside_header_2.jpg);
	background-position: center;
	height: 250px;
}
.content-bg {
	width: 100%;
	padding-top: 20px;
	padding-bottom:45px;
	background: url(../img/practice-bg.png) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.page-header .breadcrumb {
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -18px;
}
.page-header .page-title {
	margin: 20px 0;
	font-size: 24px;
}
 @media screen and (max-width: 768px) {
 .page-header .breadcrumb,  .page-header .page-title {
 float: none !important;
 text-align: center;
}
 .page-header .breadcrumb {
 position: inherit;
 top: inherit;
 right: inherit;
}
}
.page-header.one-column {
	padding: 20px 0;
}
.page-header.one-column .breadcrumb {
	position: relative;
	padding: 15px 0 0 0;
	right: 0;
}
.page-header.has-intro {
	padding: 40px 0;
}
.page-header.has-intro .left {
	width: 50%;
}
.page-header.has-intro .page-title {
	margin: 10px 0 15px 0;
}
.page-header.has-background-image {
	padding: 40px 0;
	background-image: url('../img/page-header-bg.png?1445263834');
	background-repeat: no-repeat;
	background-position: center;
}
.page-header.has-background-pattern {
	padding: 40px 0;
	background-image: url('../img/pattern-geometry.png?1375820517');
	background-repeat: repeat;
}
 @media screen and (max-width: 768px) {
 .page-header.has-intro {
 text-align: center;
}
 .page-header.has-intro .left {
 width: 100%;
 margin-bottom: 15px;
}
 .page-header.has-intro .breadcrumb {
 margin-bottom: 0;
}
}
.right-nav-box {
	background: #b88231;
	margin-bottom: 15px;
	box-shadow: 0px 0px 8px #808080;
}
.right-nav-box ul {
	margin-top: 15px;
	list-style-type: none;
	padding-left: 10px;
	color: #666;
}
.right-nav-box li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 5px;
	padding-bottom: 10px;
	border-bottom: 1px solid transparent;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.right-nav-box li:hover {
	padding-left: 3px;
}
.right-nav-box li a {
	color: #ffffff;
	text-decoration: none;
	padding: 3px 0;
}
.right-nav-box li a:hover {
	text-decoration: none;
}
.right-nav-box .list-title-wrap h3 {
	margin: 0;
	padding-top: 15px;
	margin-left: 22px;
	color: #fff;
	font-size: 22px;
}
.white-box {
	background: #ffffff;
	color:#500010;
}
.white-box h3 {
	margin: 0;
	padding-top: 10px;
	padding-bottom: 15px;
	color: #500010;
	font-size: 22px;
}
.red-box {
	background: #500010;
	color:#ffffff;
}
.red-box h3 {
	margin: 0;
	padding-top: 10px;
	padding-bottom: 15px;
	color: #ffffff;
	font-size: 22px;
}
.red-box ul li {
	color: #ffffff;
	list-style: none;
	margin: 0;
	padding: 0;
}
.red-box ul li:hover {
	margin: 0;
	padding: 0;
}
.red-box .contact-right-nav-number {
	color: #ffffff;
	margin: 0;
	padding: 0;
	padding-left: 10px;
	display: block;
	font-size: 20px;
}
#services-section img {
	/* max-width: 96px;*/

    border: 1px solid #ffffff;
	box-shadow: 0px 0px 2px #dfdfdf;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
#services-section .col-md-4, #services-section .col-sm-4 {
	margin-bottom: 40px;
}
.icon-item {
	border-bottom: 1px solid #e7e9ea;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.icon-item img {
	border: 1px solid #dfdfdf;
	box-shadow: 0px 0px 2px #dfdfdf;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.icon-item h4 {
	margin-bottom: 5px;
}
.icon-item h4 a {
	text-decoration: none;
	color: #500010;
	font-size: 16px;
	font-weight: 400px;
}
.icon-item p {
	color: #666;
	font-size: 13px;
	font-weight: 300px;
}
.icon-item:last-child {
	border-bottom: none;
}
/*--------gallery------*/

.gallery ul {
	padding:0 0 0 0;
	margin:0 0 0 0;
}
.gallery ul li {
	list-style:none;
	margin-bottom:25px;
}
.gallery ul li img {
	cursor: pointer;
}
.gallery .modal-body {
	padding:5px !important;
}
.gallery .modal-content {
	border-radius:0;
}
.gallery .modal-dialog img {
	text-align:center;
	margin:0 auto;
}
.gallery .controls {
	width:50px;
	display:block;
	font-size:11px;
	padding-top:8px;
	font-weight:bold;
}
.gallery a {
	color: #500010;
	padding: 5px;
}
.gallery a:hover, .gallery a:focus {
	color: #500011;
	text-decoration: none;
}
.next {
	float:right;
	text-align:right;
}
/*override modal for demo only*/

      .gallery .modal-dialog {
	max-width:500px;
	padding-top: 90px;
}
.gallery .modal-body {
	padding: 0 0 20px 0;
}
 @media screen and (min-width: 768px) {
 .gallery .modal-dialog {
 width:500px;
 padding-top: 90px;
}
}
 @media screen and (max-width:1500px) {
 .gallery #ads {
 display:none;
}
}
.the-team .team-item {
	background-color: transparent;
	padding: 3px;
}
.the-team .team-item:hover {
	background-color: #ffffff;
	padding: 3px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(161, 161, 161, 1);
	-moz-box-shadow: 0px 0px 5px 0px rgba(161, 161, 161, 1);
	box-shadow: 0px 0px 5px 0px rgba(161, 161, 161, 1);
}
.the-team h3 {
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	line-height: 20px;
	margin-top: 10px;
	text-align: center;
}
.the-team h3 a {
	color: #720017;
	text-decoration: none;
}
.the-team h3 a:hover {
	text-decoration: none;
}
/*-------faq-------*/



ul.faq {
	list-style: none;
	margin: 0;
}
ul.faq li {
	margin-top: 30px;
}
ul.faq li:first-child {
	margin-top: 0;
}
ul.faq li span.number {
	display: block;
	float: left;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: #720017;
	color: #fff;
	font-size: 24px;
	border-radius: 25px;
}
ul.faq li > div {
	margin-left: 70px;
}
ul.faq li > div h3 {
	margin-top: 0;
}
.p-m>div {
	margin-bottom: 30px;
}
.breadcrumb {
	padding: 8px 15px 0px 15px;
	list-style: none;
	background-color:transparent;
	border-radius: 4px;
	text-shadow: none;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
}
.breadcrumb li a {
	text-decoration: none;
	color: #720017;
	font-weight: 400;
}
.breadcrumb > li + li:before {
	padding: 0 5px;
	color: #a4888e;
	content: "/\00a0";
}
.breadcrumb > .active {
	color: #a4888e;
}
.review-box{
	 max-height:1600px;
	 overflow:scroll;
	 overflow-x:hidden;
}
blockquote {
	padding: 5px 10px;
	margin: 0 0 8px;
	font-size: 12px;
	border-left: 5px solid #720017;
	background-color: #ffffff;
	border-radius: 3px;
	box-shadow: 0px 0px 2px #ccc;
}
.price-text-color {
	color: orange;
	text-shadow: 0px 0px 2px rgba(150, 150, 150, 0.96);
}
/* ==========================================================================

   Helper classes

   ========================================================================== */
/*

 * Hide visually and from screen readers:

 */

.hidden {
	display: none !important;
}
/*

 * Hide only visually, but have it available for screen readers:

 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility

 */

.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:

 * https://www.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 screen readers, but maintain layout

 */

.invisible {
	visibility: hidden;
}
/*

 * Clearfix: contain floats

 *

 * For modern browsers

 * 1. The space content is one way to avoid an Opera bug when the

 *    `contenteditable` attribute is included anywhere else in the document.

 *    Otherwise it causes space to appear at the top and bottom of elements

 *    that receive the `clearfix` class.

 * 2. The use of `table` rather than `block` is only necessary if using

 *    `:before` to contain the top-margins of child elements.

 */

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

/* ==========================================================================

   EXAMPLE Media Queries for Responsive Design.

   These examples override the primary ('mobile first') styles.

   Modify as content requires.

   ========================================================================== */

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

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

}

/* ==========================================================================

   Print styles.

   Inlined to avoid the additional HTTP request:

   http://www.phpied.com/delay-loading-your-print-css/

   ========================================================================== */

@media print {
*,  *:before,  *:after {
	background: transparent !important;
	color: #000 !important; /* Black prints faster:

                                   http://www.sanbeiji.com/archives/953 */
	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) ")";
}

a[href^="#"]:after,  a[href^="javascript:"]:after {
 content: "";
}
pre,  blockquote {
	border: 1px solid #999;
	page-break-inside: avoid;
}

thead {
	display: table-header-group;
}
tr,  img {
	page-break-inside: avoid;
}
img {
	max-width: 100% !important;
}
p,  h2,  h3 {
	orphans: 3;
	widows: 3;
}
h2,  h3 {
	page-break-after: avoid;
}
}