/* Footer - START */

	#footer { background-color: #222222; }
	
	#footer .container { padding: 0 2rem; }
	
	#footer .container p,
	#footer .container a,
	#footer .container h3,
	#footer .container h3 strong { color: #fff; }
	

.footer-banner{	padding: 1rem; display: inline-block; vertical-align: top; }

.footer-text{ padding: 1rem; }

.footer-text-row{ height: 100%; }

@media screen and ( min-width: 992px ) { .footer-text{ padding-top: 3rem; } }

/* Footer - STOP */

.col-noHeight{
	margin-top: -75px;
}
#grav-login {
	background-color: #e7e6e5 !important; 
    max-width: 30rem;
    margin: 2rem auto;
    background: #fcfcfc;
    border: 4px solid #eee;
    border-radius: 4px;
    padding: 1rem 1rem 1rem 1rem;
    text-align: center;
	font-size: 1.2rem;
}

#grav-login button, #grav-login input, #grav-login label{
	margin-top: .5rem;
}

#grav-login h1{
	padding: 1rem;
}
#login-page{
	padding-top: 3rem;
	background-color: #1a2930;
}
#login-page .container{
	min-height: 100vh;
	width: 100vw;
}
#login-page #footer .container{
	height: 58px;
	width: 100%;
}
#login-page .col-12, #login-page .col-md-6{
	background-color: #e7e6e5;
	border: 10px solid #1a2930;
	border-radius: 14px;
	padding: 1rem;
}
#login-page p{
	font-size: 1.2rem !important;
}
.login-footer{
	margin-top:-58px;
}

.flickity-prev-next-button .arrow {
    fill: #fff;
}
.flickity-prev-next-button:hover {
    background: rgba(26, 41, 48, .9);
}
.flickity-prev-next-button {
    width: 30px;
    height: 50px;
    border-radius: 4px;
    background: rgba(26, 41, 48, .4);
}
.slideme_werbelogo {
	width: 33%;
	max-width: 250px;
	position: absolute;
	bottom: 3rem;
	right: 2rem;
}
@media screen and ( min-width: 768px ) {
	.slideshow-padding {
		padding-left: 13rem;
		padding-right: 13rem;
	}
}

/* Basics - START */
.container {
    padding-top: 5rem;
    padding-bottom: 8rem;
}
.title-container {
    padding-bottom: 0 !important;
}
.vertical-center {
    position: relative;
    top: 50%;
    transform: perspective(1px) translateY(-50%);
    -webkit-transform: perspective(1px) translateY(-50%);
    -ms-transform: perspective(1px) translateY(-50%);
}
.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}
body {
    position: relative;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
    color: #444;
 /*   font-family: 'Roboto Slab', sans-serif;*/
    font-size: 1.1rem;
}
a {
	color: #ea7b3c;
    font-size: 1.1rem;
}
/*
p {
    font-family: 'Roboto Slab', light;
}*/
h1 {
    font-size: 2rem;
    line-height: 0;
}
h2, 
h4 {
    font-size: 1.7rem;
    text-transform: uppercase;
}
h3,
h5 {
    font-size: 1.3rem;
}
h6 {
    font-size: 1.2rem;
}
h2 strong, 
h4 strong {
    font-size: 2rem;
}
h3 strong,
h5 strong {
    padding: 0 .3rem;
    font-size: 1.5rem;
    color: #ea7b3c;
}
svg {
    height: auto;
    display: block;
}
hr {
	padding-bottom: 1rem;
}
ul {
	font-size: 1.1rem;
}
/* Basics - STOP */

/* Navigation - START */
.navbar {
    z-index: 1000;
    background-color: rgba(26, 41, 48, .4);
}
.navbar .active {
    background-color: rgba(26, 41, 48, .9);
	border: 1px solid #fff;
	color: #fff !important;
}
.navbar-brand {
    padding: .5rem 0;
}
.navbar-brand svg {
    height: 3rem;
    fill: #fff;
    stroke: #fff;
    width: auto;
}
.navbar-nav {
    margin-left: auto;	
    text-align: center;
}
.navbar-light .navbar-nav .nav-link {
    color: #fff;
    padding: .5rem 1rem;
}
.navbar-light .navbar-nav .nav-link:hover {
	background-color: rgba(26, 41, 48, .5);
    color: #fff !important;
}
.navbar-light .navbar-nav .active>.nav-link {
    color: #fff;
}
@media (min-width: 768px) { 
	.navbar-brand {
		padding: .2rem 1rem;
	}
	.navbar-brand svg {
		height: 3.5rem;
	}
}
/* Navigation - STOP */

/* Slideshow - START */
#start .gallery-cell {
    width: 100%;
    height: 100vh;
    color: #fff;
    background-color: inherit;
}
.gallery-cell h1 {
    color: transparent;
}
.gallery-cell h2 {
    font-size: 2.8rem;
}
.gallery-cell h2,
.gallery-cell h3,
.gallery-cell p {
    color: #fff;
}
.gallery-cell h3 strong {
    line-height: 2.5rem;
    color: #444;
    background-color: rgba(255, 255, 255, .6);
}
.slideme_logo {
    max-width: 45%;
}
/* Fade */
#x-showcase .flickity-slider {
    transform: none !important;
}
#start .gallery-cell {
    left: 0 !important;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    z-index: -1;
}
#start .gallery-cell.is-selected {
    opacity: 1;
    z-index: 0
}
/* Zoom */
.zoom {
  /*-webkit-animation: 80s linear 1s normal none infinite zoominout;
       -moz-animation: 80s linear 1s normal none infinite zoominout;
        -ms-animation: 80s linear 1s normal none infinite zoominout;
         -o-animation: 80s linear 1s normal none infinite zoominout;
            animation: 80s linear 1s normal none infinite zoominout;*/
	z-index: -10;
    height: 100%;
    width: 100%;
    position: absolute;
    background-position-x: center;
    background-position-y: center;
    background-size: cover;
    background-repeat-x: no-repeat;
    background-repeat-y: no-repeat;
}/*
@keyframes zoominout {
    0%   { transform: scale(1);  }
    25%  { transform: scale(1.1);}
    50%  { transform: scale(1.2);}
    75%  { transform: scale(1.1);}
    100% { transform: scale(1);  }
}*/
/* Color overlay */
.overlay {
    z-index: 0;
    left: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    background-color: rgba(255, 255, 255, 0);
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
}
/* Slideshow - STOP */

/* Index Navigation - START */
.nextNav {
	display: none;
}
@media (min-width: 768px) { 
	.nextNav {
		display: block;
		margin-top: -30px;
		margin-bottom: 0;
	}
	.nextNav svg {
		height: 45.7px;
		min-width: 65px;
		max-width: 65px;
		margin-left: auto;
		margin-right: auto;
		margin-top: -65px;
		fill: #fff;
		stroke: #fff;
		overflow: hidden;
		transition-duration: 1s;
		transition-property: transform;
	}
	.nextNav svg:hover {
	/*	fill: #abea3c !important;
		stroke: #abea3c !important; */
		transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
	}	
	.bl-to-tr {
		height: 0;
		border-style: solid;
		border-width: 0 0 30px 50px;
		border-color: transparent #fff #fff transparent;
	}
	.br-to-tl {
		height: 0;
		border-style: solid;
		border-width: 0 50px 30px 0;
		border-color: transparent transparent #ffffff #ffffff;
	}
}
/* Index Navigation - STOP */

/* Gallery - START */
.fluidbox-wrap {
    margin: 1rem auto;
}
.fluidbox-wrap img {
	width: 100%;
}
/* Gallery-Images */
.galleryImage {
    min-height: 200px;
    max-width: 100%;
    margin-bottom: 15px;
    margin-top: 15px;
}
.baguetteBox-button:focus {
    background-color: rgba(50,50,50,.5);
    outline: none;	
} 
.baguetteBox-button:hover {
    background-color: rgba(0,0,0,.5);
}
.gallerySection {
    background-color: #fff;
}
/* Gallery-Title */
.galleryTitle {
    background-color: transparent;
}
/* Gallery-Text */
.galleryCategories {
    background-color: transparent;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    margin-top: 15px;
	margin-bottom: 15px;
    padding: 0;	
}
.galleryCategories  .main-button-group {
    padding: 0;
    bottom: 5px;
    position: absolute;
}
.smallTextContainer {
    padding: 1rem;
    padding-bottom: 1rem;
}
.smallTextContainer h4 {
    font-size: 1.7rem;
    text-transform: none;
    text-decoration: underline;
}
.rightBtn{
	right: 5px;
    position: absolute;	
    margin-top: -110px;	
}
.leftBtn{
	right: 5px;	
    position: absolute;
    margin-top: -110px;	
}
@media (min-width: 768px) {
	.leftBtn{
		right: -10px;
	}
	.noPaddingRight{
		padding-right: 0;
	}
	.noPaddingLeft{
		padding-left: 0;
	}	
}
.categoryImage {
    min-height: 350px;
}
.categoryImage, 
.categoryLogo {
    height: 100%;
    background-position-x: center;
    background-position-y: center;
    background-size: cover;
    background-repeat-x: no-repeat;
    background-repeat-y: no-repeat;
}
/* Gallery-Menu */
#galleryButtons {
    background-color: transparent;
}
.main-button-group {
    text-align: center;
    padding: 2rem 15px;
}
.btn-default {
    color: #444;
    font-size: 1.3rem;
    background-color: #fff;
    border: none;
	float: right;
}
.btn-gallery {
    margin: .5rem;
    padding-bottom: .7rem;
    color: #fff;
    font-size: 1.3rem;
/*    background-color: #444;*/
    border: none;
}
.btn:active,
.btn:focus,
.btn:hover {
    background-color: #ea7b3c !important;
    border-color: #ea7b3c !important;
    outline: 0;
    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.no-bg {
    background-color: transparent !important;
	color: #fff !important;
}
/* Gallery - STOP */

/* Contact - START */
.contact span {
    font-size: 1.2rem;
}
.contact strong span {
    font-size: 1.4rem;
}
.contact .address {
    padding-left: 5rem;
    line-height: 1.6rem;
}
.contact .address p {
    padding-bottom: 1rem;
    font-size: 1.2rem;
}
/* Font Awesome */
.contact .fa-stack {
    font-size: 1.8rem;
}
.contact .fa-envelope {
    margin-top: -.15rem;
}
.contact .fa-phone,
.contact .fa-map-marker,
.contact .fa-mobile {
    margin-top: -.1rem;
}
/* Forms */
textarea.form-control {
    min-height: 180px;
}
.form-control {
    font-size: 1.2rem;
	margin-top: 1rem;
    margin-bottom: 1.5rem;
}
/* Contact - STOP */

/* Stand-Alone - START */
#datenschutz .container,
#impressum .container,
#stellenangebote .container {
    text-align: left !important;
	padding-top: 10rem;
}
.standAloneContainer {
    text-align: left !important;
    padding-top: 12rem;
    padding-bottom: 12rem;
}
/* Stand-Alone - STOP */


/* Parallax - START */
.parallax {
  perspective: 1px;
  height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
}
.parallax__layer {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.parallax__layer--base {
  transform: translateZ(0);
}
.parallax__layer--back {
  transform: translateZ(-1px);
}
/* Parallax - STOP */

/* User final individual styles per ID - START */

/* module-x-slideshow - START */
/* modulex-slideshow - STOP */

/* google maps - START */
#map {
  position: relative;
  width: 100%;
  height: 400px;
  background-color: inherit;
}
.map-navigationBg{
	background-color: #1a2930;
}
.map-navigationBg p,
.map-navigationBg a{
	color: #fff !important;
}
.map-navigationBg svg{
	fill: #fff;
	stroke: #fff;
}
/* google maps - STOP */

/* module-x-text ---> individual site id's! - START */
.ueber-uns-navigationBg{
	background-color: #fff;	
}

.ueber-uns-navigationBg p,
.ueber-uns-navigationBg a {
	color: #444 !important;
}

.ueber-uns-navigationBg svg {
	fill: #444;
	stroke: #444;
}	
#nextNav-ueber-uns .br-to-tl {
	border-bottom-color: #fff;
	border-left-color: #fff;
} 	
#nextNav-ueber-uns .bl-to-tr {
	border-right-color: #fff;
	border-bottom-color: #fff;		
}
#nextNav-ueber-uns svg {
	fill: #fff;
	stroke: #fff;
}	
#nextNav-ueber-uns .nextNavLogo,
#nextNav-ueber-uns .col{
	background-color: #fff;
}
.philosophie-navigationBg{
	background-color: #e7e6e5;	
}
.philosophie-navigationBg p, 
.philosophie-navigationBg a {
	color: #444 !important;
} 
.philosophie-navigationBg svg {
	fill: #444;
	stroke: #444;
}

#philosophie{
	background-color: #e7e6e5;
}
#nextNav-philosophie .br-to-tl {
	border-bottom-color: #e7e6e5;
	border-left-color: #e7e6e5;
} 	
#nextNav-philosophie .bl-to-tr {
	border-right-color: #e7e6e5;
	border-bottom-color: #e7e6e5;		
}
#nextNav-philosophie svg {
	fill: #e7e6e5;
	stroke: #e7e6e5;
}
#nextNav-philosophie .nextNavLogo,
#nextNav-philosophie .col {
	background-color: #e7e6e5;
}
/* module-x-text - STOP */

/* module-x-gallery - START */
#leistungen{
	background-color: #1a2930;
}
#leistungen p,
#leistungen h4 {
	color: #444;
	text-decoration: none;
}
#leistungen h2,
#leistungen h3{
	color: #f3f1ee;
	text-decoration: none;
}
#nextNav-partner .br-to-tl,
#nextNav-leistungen .br-to-tl {
	border-bottom-color: #1a2930;
	border-left-color: #1a2930;
}
#nextNav-partner .bl-to-tr,
#nextNav-leistungen .bl-to-tr {
	border-right-color: #1a2930;
	border-bottom-color: #1a2930;		
}
#nextNav-partner svg,
#nextNav-leistungen svg {
	fill: #1a2930;
	stroke: #1a2930;
}	
#nextNav-partner .nextNavLogo,
#nextNav-leistungen .nextNavLogo,
#nextNav-partner .col,
#nextNav-leistungen .col {
	background-color: #1a2930;
}
.leistungen-navigationBg,
.partner-navigationBg {
	background-color: #1a2930;
}
.leistungen-navigationBg p,
.leistungen-navigationBg a,
.partner-navigationBg p,
.partner-navigationBg a{
	color: #fff !important;
}
.leistungen-navigationBg svg,
.partner-navigationBg svg{
	fill: #fff;
	stroke: #fff;
}		
.galleryCategories, 
.smallTextContainer p, 
.smallTextContainer h2, 
.smallTextContainer h3, 
.smallTextContainer h4 {
	border-color: #1a2930;	
	background-color: #fff;
	color: #444;
}	
#leistungen .btn-gallery{
	color: #444;
}
/* module-x-gallery - STOP */

/* module-x-contact - START */
#kontakt{
	background-color: #1a2930;
	color: #fff;
}
#kontakt strong span{
	color: #fff;
}	
#kontakt a,
#kontakt p,
#kontakt h2,
#kontakt h3,
#kontakt h4{
	color: #fff;
	text-decoration: none;
} 
#nextNav-kontakt .br-to-tl {
	border-bottom-color: #1a2930;
	border-left-color: #1a2930;
} 	
#nextNav-kontakt .bl-to-tr  {
	border-right-color: #1a2930;
	border-bottom-color: #1a2930;		
}
#nextNav-kontakt svg {
	fill: #1a2930;
	stroke: #1a2930;
}	
#nextNav-kontakt .nextNavLogo,
#nextNav-kontakt .col {
	background-color: #1a2930;
}
.kontakt-navigationBg{
	background-color: #1a2930;
}
.kontakt-navigationBg p,
.kontakt-navigationBg a{
	color: #fff !important;
}
.kontakt-navigationBg svg{
	fill: #fff;
	stroke: #fff;
}
/* module-x-contact - STOP */

/* module-x-corp - START */
#partner {
	background-color: #ddd;
	/*margin-top: -4rem;*/
}
#partner h2{
	padding-bottom: 3rem;
	margin-top: -1rem;
}
.carousel-cell{
	width: 100%;
}
@media screen and ( min-width: 768px ) {
  /* half-width cells for larger devices */
  .carousel-cell { 
	width: 33%; 
  }
}
.carousel-cell img{
	max-width: 85%;
	max-height: 120px;
}
#partner .flickity-slider {
  display: flex;
  align-items: center;
}
@media all and (-ms-high-contrast:none) {
	#partner .flickity-slider {height: auto;} /* IE10 */
    *::-ms-backdrop, #partner .flickity-slider {height: auto;} /* IE11 */
}
/* module-x-corp - STOP */

/* cookie consent - START */
.cc-message {
	padding-right: 2.5rem;
	font-size: .9rem;
}
.cc-link {
	font-size: .9rem;
	color: #ea7b3c !important;
	padding-top: 0 !important;
}
.cc-btn {
	font-size: 1.1rem !important;
	font-weight: 400 !important;
	border-radius: .25rem;
}
/* cookie consent - STOP */


/*-----------------------------------------------------------------------------------------------------------------------------------------------------*/


/* Preloader START*/

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

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

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
}
.preLoadLogo{
	display: block;
    position: relative;
	float: left;
    left: 50%;
    top: 50%;
    width: 200px;
    margin: -30px 0 0 -100px;
	z-index: 1002;	
}
.logoOff{
	transition: opacity 1s;
	opacity:0;
}
#loader {
    display: block;
    position: relative;
    left: 50%;
    top: 50%;
    width: 350px;
    height: 350px;
    margin: -140px 0 0 -175px;
    border-radius: 50%;
    border: 5px solid transparent;
    border-top-color: #071d3d;/*#3498db;*/

    -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */

    z-index: 1001;
}

    #loader:before {
        content: "";
        position: absolute;
        top: 5px;
        left: 5px;
        right: 5px;
        bottom: 5px;
        border-radius: 50%;
        border: 5px solid transparent;
        border-top-color: #193930;/*#e74c3c;*/

        -webkit-animation: spin 3s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
        animation: spin 3s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

    #loader:after {
        content: "";
        position: absolute;
        top: 25px;
        left: 25px;
        right: 25px;
        bottom: 25px;
        border-radius: 50%;
        border: 5px solid transparent;
        border-top-color: #2a2935;/*#f9c922;*/

        -webkit-animation: spin 1.5s linear infinite; /* Chrome, Opera 15+, Safari 5+ */
          animation: spin 1.5s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */
    }

    @-webkit-keyframes spin {
        0%   { 
            -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(0deg);  /* IE 9 */
            transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
        }
        100% {
            -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(360deg);  /* IE 9 */
            transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
        }
    }
    @keyframes spin {
        0%   { 
            -webkit-transform: rotate(0deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(0deg);  /* IE 9 */
            transform: rotate(0deg);  /* Firefox 16+, IE 10+, Opera */
        }
        100% {
            -webkit-transform: rotate(360deg);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: rotate(360deg);  /* IE 9 */
            transform: rotate(360deg);  /* Firefox 16+, IE 10+, Opera */
        }
    }

    #loader-wrapper .loader-section {
        position: fixed;
        top: 0;
        width: 51%;
        height: 100%;
        background: #1a2930;
        z-index: 1000;
        -webkit-transform: translateX(0);  /* Chrome, Opera 15+, Safari 3.1+ */
        -ms-transform: translateX(0);  /* IE 9 */
        transform: translateX(0);  /* Firefox 16+, IE 10+, Opera */
    }

    #loader-wrapper .loader-section.section-left {
        left: 0;
    }

    #loader-wrapper .loader-section.section-right {
        right: 0;
    }

    /* Loaded */
    .loaded #loader-wrapper .loader-section.section-left {
        -webkit-transform: translateX(-100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateX(-100%);  /* IE 9 */
                transform: translateX(-100%);  /* Firefox 16+, IE 10+, Opera */

        -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);  
                transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    }

    .loaded #loader-wrapper .loader-section.section-right {
        -webkit-transform: translateX(100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateX(100%);  /* IE 9 */
                transform: translateX(100%);  /* Firefox 16+, IE 10+, Opera */

-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);  
        transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
    }
    
    .loaded #loader {
        opacity: 0;
        -webkit-transition: all 0.3s ease-out;  
                transition: all 0.3s ease-out;
    }
    .loaded #loader-wrapper {
        visibility: hidden;

        -webkit-transform: translateY(-100%);  /* Chrome, Opera 15+, Safari 3.1+ */
            -ms-transform: translateY(-100%);  /* IE 9 */
                transform: translateY(-100%);  /* Firefox 16+, IE 10+, Opera */

        -webkit-transition: all 0.3s 1s ease-out;  
                transition: all 0.3s 1s ease-out;
    }
    
    /* JavaScript Turned Off */
    .no-js #loader-wrapper {
        display: none;
    }

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

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

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

/* Hide from both screenreaders and browsers: h5bp.com/u */

.hidden {
    display: none !important;
    visibility: hidden;
}

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */

.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: h5bp.com/p */

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

/* Clearfix: contain floats - For modern Browsers*/

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

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only - Include this rule to trigger hasLayout and contain floats. */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   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,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

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

/* Preloader END */
