
/* --------------------------------------------------
  xx. Variablen
-------------------------------------------------- */
:root {
	--template-color-1: #E20816;
	/*--template-color-2: #A82E2E;*/
}

body {
	font-size: 20px;
}

p {
	padding: 0px;
	margin: 0px;
}


/* --------------------------------------------------
  xx. Global
-------------------------------------------------- */
/*-- Links --*/
a {
    color: #000;
    text-decoration: none;

}
a:hover, a:focus {
    color: var(--template-color-1);
}

main h1, main h2, main h3, main h4, main h5, main h6 {
    color: var(--template-color-1);
}

figure {
	margin: 0px;
}

/* --------------------------------------------------
  xx. Farben
-------------------------------------------------- */
.bg-template {
	background-color: var(--template-color-1);
}
.bg-white {
    background-color: #F7F8F8;
}

.bg-gray {
	background-color: #E4E6E6;
}

.bgbg-gray-light {
	background-color: #F7F8F8;
}

.bg-black {
    background-color: #000000;
}

.bg-red {
    background-color: #ff0000;
}

.bg-fima-blue {
    background-color: #007DBE;
	color: #ffffff;
}

/* --------------------------------------------------
  xx. Navigation
-------------------------------------------------- */

.navbar-light .navbar-brand {
	color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
	color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
	color: rgba(0, 0, 0, 0.55);
	font-size: 24px;
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
	/*color: rgba(0, 0, 0, 0.7);*/
	color: var(--template-color-1);
}
.navbar-light .navbar-nav .nav-link.disabled {
	color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link.active {
	/*color: rgba(0, 0, 0, 0.9);*/
	color: var(--template-color-1);
}
.navbar-light .navbar-toggler {
	color: rgba(0, 0, 0, 0.55);
	border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
	color: rgba(0, 0, 0, 0.55);
}
.navbar-light .navbar-text a,
.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
	color: rgba(0, 0, 0, 0.9);
}

/* --------------------------------------------------
  xx. Header
-------------------------------------------------- */
header {
    transition: 0.4s;
	color: #E8E9EA;
}

header .logo {
    padding: 10px 0px;
	transition: 0.4s;
}

header .logo img {
    /*max-height: 100px;*/
	/*width: 100%;*/
}

/*-- TopHeader --*/
.top-header {
    height: 20px;
    background-color: var(--template-color-1);
}

/* Static Headers
-------------------------------------------------- */
.header-static {
    position: relative;
}

.header-static img {
    max-width: 100%;
    height: auto;
}

.header-bg {
    background-color: #E8E9EA !important;
}

.header-bg img {
	width: 100%;
	height: 300px;
}

.header-static .header-caption {
    position: absolute;
    top: 40%;
    width: 100%;
	text-shadow: black 2px 3px;
}

.header-static .header-caption h1 {
	color: #ffffff;
}


/* Google Map
-------------------------------------------------- */
.map {
    height: 500px;
}

/* --------------------------------------------------
  xx. Footer
-------------------------------------------------- */
footer {
	background-color: #303030;
    color: #ffffff;
}

footer .footer-widget h5 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 25px;
    text-transform: uppercase;
}

.footer-widget p {
    color: #a3a3a3;
    font-size: 16px;
    line-height: 23px;
}

.footer-widget p a {
    color: #a3a3a3;
	text-decoration: none;
}

.footer-widget p a:hover {
    /*color: var(--template-color-1);*/
    color: #fff;
}

.footer-widget p:last-child {
    margin-bottom: 0;
}


/* Footer :: Menüs / Listen
-------------------------------------------------- */
.footer-widget ul {
    margin: 0px;
    padding: 0px;
}

.footer-widget li {
    list-style: none;
}

.footer-widget ul li a {
    color: #a3a3a3;
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.75em;
    text-transform: uppercase;
	text-decoration: none;
}

.footer-widget ul li a:hover {
    color: #fff;
}

/* Footer :: Social-Media-Links
-------------------------------------------------- */
footer .social-media-links {
    margin-top: 20px;
}

footer .social-media-links a {
    color: #9c9c9c;
    display: block;
    float: left;
    margin-right: 20px;
    min-width: 12px;
    text-align: center;
	text-decoration: none;;
}

footer .social-media-links a i {
    display: block;
    font-size: 30px;
}

footer .social-media-links a:hover {
    color: #3f3f3f;
}

footer .social-media-links a:hover {
    /*color: var(--template-color-1);*/
    color: #fff;
}

/* Footer :: Copyright
-------------------------------------------------- */
footer .footer-copyright {
    background-color: #292929;
}

footer .footer-copyright p {
	padding: 0px;
	margin: 0px;
}



/* --------------------------------------------------
  xx. Default PageContent
-------------------------------------------------- */
.document-title {
	padding: 100px 0px;
}


.services-4-items {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
}

.services-4-items .service-item {
	background-color: var(--template-color-1);
	font-size: 30px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.figure {
    position: relative;
}

.figure img {
	width: 100%;
}

.figure-caption {
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%;

    background: rgba(50, 50, 50, 0.5);
    transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
}

a:hover .figure-caption {
    background: none;
    transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out, border-color 0.25s ease-in-out;
}

.figure-caption p {
    position: absolute;
    width: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);

    text-align: center;

    color: #fff;
}


/* -----------------------------------
  xx. ScrollUp
--------------------------------------*/
#scrollUp {
	bottom: 20px;
	right: 20px;
	padding: 8px 10px;
    background-color: transparent;
    border: 2px solid var(--template-color-1);
	color: var(--template-color-1);
}

#scrollUp i {
    display: block;
}
#scrollUp:hover {
    background-color: var(--template-color-1);
    color: #fff;
}


/* --------------------------------------------------
  xx. Abstände
-------------------------------------------------- */
/*-- Margin Top --*/
.mt-5 {
    margin-top: 5px;
}
.mt-10 {
    margin-top: 10px;
}
.mt-15 {
    margin-top: 15px;
}
.mt-20 {
    margin-top: 20px;
}
.mt-25 {
    margin-top: 25px;
}
.mt-30 {
    margin-top: 30px;
}
.mt-35 {
    margin-top: 35px;
}
.mt-40 {
    margin-top: 40px;
}
.mt-45 {
    margin-top: 45px;
}
.mt-50 {
    margin-top: 50px;
}
.mt-55 {
    margin-top: 55px;
}
.mt-60 {
    margin-top: 60px;
}
.mt-65 {
    margin-top: 65px;
}
.mt-70 {
    margin-top: 70px;
}
.mt-75 {
    margin-top: 75px;
}
.mt-80 {
    margin-top: 80px;
}
.mt-85 {
    margin-top: 85px;
}
.mt-90 {
    margin-top: 90px;
}
.mt-95 {
    margin-top: 95px;
}
.mt-100 {
    margin-top: 100px;
}
.mt-105 {
    margin-top: 105px;
}
.mt-110 {
    margin-top: 110px;
}
.mt-115 {
    margin-top: 115px;
}
.mt-120 {
    margin-top: 120px;
}
.mt-125 {
    margin-top: 125px;
}
.mt-130 {
    margin-top: 130px;
}
.mt-135 {
    margin-top: 135px;
}
.mt-140 {
    margin-top: 140px;
}
.mt-145 {
    margin-top: 145px;
}
.mt-150 {
    margin-top: 150px;
}

/*-- Margin Bottom --*/
.mb-5 {
    margin-bottom: 5px;
}
.mb-10 {
    margin-bottom: 10px;
}
.mb-15 {
    margin-bottom: 15px;
}
.mb-20 {
    margin-bottom: 20px;
}
.mb-25 {
    margin-bottom: 25px;
}
.mb-30 {
    margin-bottom: 30px;
}
.mb-35 {
    margin-bottom: 35px;
}
.mb-40 {
    margin-bottom: 40px;
}
.mb-45 {
    margin-bottom: 45px;
}
.mb-50 {
    margin-bottom: 50px;
}
.mb-55 {
    margin-bottom: 55px;
}
.mb-60 {
    margin-bottom: 60px;
}
.mb-65 {
    margin-bottom: 65px;
}
.mb-70 {
    margin-bottom: 70px;
}
.mb-75 {
    margin-bottom: 75px;
}
.mb-80 {
    margin-bottom: 80px;
}
.mb-85 {
    margin-bottom: 85px;
}
.mb-90 {
    margin-bottom: 90px;
}
.mb-95 {
    margin-bottom: 95px;
}
.mb-100 {
    margin-bottom: 100px;
}
.mb-105 {
    margin-bottom: 105px;
}
.mb-110 {
    margin-bottom: 110px;
}
.mb-115 {
    margin-bottom: 115px;
}
.mb-120 {
    margin-bottom: 120px;
}
.mb-125 {
    margin-bottom: 125px;
}
.mb-130 {
    margin-bottom: 130px;
}
.mb-135 {
    margin-bottom: 135px;
}
.mb-140 {
    margin-bottom: 140px;
}
.mb-145 {
    margin-bottom: 145px;
}
.mb-150 {
    margin-bottom: 150px;
}

/*-- Padding Top --*/
.pt-5 {
    padding-top: 5px;
}
.pt-10 {
    padding-top: 10px;
}
.pt-15 {
    padding-top: 15px;
}
.pt-20 {
    padding-top: 20px;
}
.pt-25 {
    padding-top: 25px;
}
.pt-30 {
    padding-top: 30px;
}
.pt-35 {
    padding-top: 35px;
}
.pt-40 {
    padding-top: 40px;
}
.pt-45 {
    padding-top: 45px;
}
.pt-50 {
    padding-top: 50px;
}
.pt-55 {
    padding-top: 55px;
}
.pt-60 {
    padding-top: 60px;
}
.pt-65 {
    padding-top: 65px;
}
.pt-70 {
    padding-top: 70px;
}
.pt-75 {
    padding-top: 75px;
}
.pt-80 {
    padding-top: 80px;
}
.pt-85 {
    padding-top: 85px;
}
.pt-90 {
    padding-top: 90px;
}
.pt-95 {
    padding-top: 95px;
}
.pt-100 {
    padding-top: 100px;
}
.pt-105 {
    padding-top: 105px;
}
.pt-110 {
    padding-top: 110px;
}
.pt-115 {
    padding-top: 115px;
}
.pt-120 {
    padding-top: 120px;
}
.pt-125 {
    padding-top: 125px;
}
.pt-130 {
    padding-top: 130px;
}
.pt-135 {
    padding-top: 135px;
}
.pt-140 {
    padding-top: 140px;
}
.pt-145 {
    padding-top: 145px;
}
.pt-150 {
    padding-top: 150px;
}

/*-- Padding Bottom --*/
.pb-5 {
    padding-bottom: 5px;
}
.pb-10 {
    padding-bottom: 10px;
}
.pb-15 {
    padding-bottom: 15px;
}
.pb-20 {
    padding-bottom: 20px;
}
.pb-25 {
    padding-bottom: 25px;
}
.pb-30 {
    padding-bottom: 30px;
}
.pb-35 {
    padding-bottom: 35px;
}
.pb-40 {
    padding-bottom: 40px;
}
.pb-45 {
    padding-bottom: 45px;
}
.pb-50 {
    padding-bottom: 50px;
}
.pb-55 {
    padding-bottom: 55px;
}
.pb-60 {
    padding-bottom: 60px;
}
.pb-65 {
    padding-bottom: 65px;
}
.pb-70 {
    padding-bottom: 70px;
}
.pb-75 {
    padding-bottom: 75px;
}
.pb-80 {
    padding-bottom: 80px;
}
.pb-85 {
    padding-bottom: 85px;
}
.pb-90 {
    padding-bottom: 90px;
}
.pb-95 {
    padding-bottom: 95px;
}
.pb-100 {
    padding-bottom: 100px;
}
.pb-105 {
    padding-bottom: 105px;
}
.pb-110 {
    padding-bottom: 110px;
}
.pb-115 {
    padding-bottom: 115px;
}
.pb-120 {
    padding-bottom: 120px;
}
.pb-125 {
    padding-bottom: 125px;
}
.pb-130 {
    padding-bottom: 130px;
}
.pb-135 {
    padding-bottom: 135px;
}
.pb-140 {
    padding-bottom: 140px;
}
.pb-145 {
    padding-bottom: 145px;
}
.pb-150 {
    padding-bottom: 150px;
}


/*Padding All*/
.p-0 {
	padding: 0px;
}
.p-5 {
	padding: 5px;
}
.p-10 {
	padding: 10px;
}
.p-15 {
	padding: 15px;
}
.p-20 {
	padding: 20px;
}
.p-25 {
	padding: 25px;
}
.p-30 {
	padding: 30px;
}
.p-35 {
	padding: 35px;
}
.p-40 {
	padding: 40px;
}
.p-45 {
	padding: 45px;
}
.p-50 {
	padding: 50px;
}
.p-55 {
	padding: 55px;
}
.p-60 {
	padding: 60px;
}
.p-65 {
	padding: 65px;
}
.p-70 {
	padding: 70px;
}
.p-75 {
	padding: 75px;
}
.p-80 {
	padding: 80px;
}
.p-85 {
	padding: 85px;
}
.p-90 {
	padding: 90px;
}
.p-95 {
	padding: 95px;
}
.p-100 {
	padding: 100px;
}

