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

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

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

textarea { 
	resize: vertical; 
}

.relative {
	position: relative;
}

.vcenter {
	position: absolute;
	top: 50%;

	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.responsive-img {
	width: 100%;
}

.clearfix:before,
.clearfix:after { 
	content: " "; 
	display: table; 
} 

.clearfix:after { 
	clear: both; 
}

@media print {

    *,
    *:before,
    *:after,
    *:first-letter,
    *:first-line {
        background: transparent !important;
        color: #000 !important;
        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;
    }

}
