
/* --------------------------------------------------------------------------------
 * Globals
 * ----------------------------------------------------------------------------- */

 .col_red
 {
	 color:#c90c0f;
 }
 .col_blue
 {
	 color:#003650!important;
 }
 .col_white
 {
	 color:#fff;
 }
 
 
 .bgr-color-grey
 {
	 background-color:#eff4f8!important;
 }
 
.bgr-color-blue
 {
	 background-color:#003650!important;
 }
 
 .no-padding{
	 padding-left:0px!important;
	 padding-right:0px!important;
 }
 
 .top-bottom-padding-50
 {
	 padding-top:50px;
	 padding-bottom:50px;
 }
 
 .top-margin-24
 {
	 margin-top:24px;
 }
/* --------------------------------------------------------------------------------
 * Layout
 * ----------------------------------------------------------------------------- */
body {
    display: block;
    /*max-width: 1920px;*/
    margin: auto;
	font-family: acumin-pro, sans-serif;
}

#wrapper {
	position: relative;
	background: #ffffff;
}

#header_offset,
#header,
#container,
#section,
#footer,
#footer_main,
#footer_bottom {
    clear: both;
    display: block;
	position: relative;
}

#header_offset {
    
    top: 0;
	left: 0;
	right: 0;
    padding-left: 0px;
    padding-right: 0px;
	height:152px;
    
	z-index: 9000;
	-webkit-transition: transform 0.25s ease-in-out 0.1s;
	-moz-transition: transform 0.25s ease-in-out 0.1s;
	transition: transform 0.25s ease-in-out 0.1s;
	
    display: block;
    max-width: 1760px;
    margin: auto;	
}

#headlogo
{
	position:absolute;
	top:52px;
	left:0px;
	height:64px;
	width:298px;
	display:block;
	background-image: url(../elements/ifb-logo_4c.svg);
	background-repeat:no-repeat;
	background-size:contain;
}

#logo-footer
{
	position:absolute;
	left:0px;
	height:51px;
	width:238px;
	display:block;
	background-image: url(../elements/ifb-logo_1c-white.svg);
	background-repeat:no-repeat;
	background-size:contain;
}

#header_offset,
.mod_article.full-width-1760, .contentpage.type-a .mod_article,
.mod_article.full-width-screen
{
	padding-left:40px!important;
	padding-right:40px!important;
}

body.down #header_offset {
    -webkit-transform: translate3d(0px, -130px, 0px);
	-moz-transform: translate3d(0px, -130px, 0px);
	transform: translate3d(0px, -130px, 0px);
}

#header_offset1 > .inside {
	height: 130px;
    padding-left: 20px;
    padding-right: 20px;
}

#header_offset > .inside,
{
    display: block;
    margin: auto;
    max-width: 1520px;
}

.mod_article .content-container
{
	width:100%;
	margin-left:0px;
	margin-right:0px;
	padding-left:0px;
	padding-right:0px;
}

.mod_article.full-width-1760,
.contentpage.type-a .mod_article
{
    display: block;
    margin: auto;
    max-width: 1760px;	
	padding-left:4%;
	padding-right:4%;
}

.mod_article.full-width-screen
{
    display: block;
	width:100%;
	padding-left:0%;
	padding-right:0%;
}

.mod_article.full-width-screen.contentcolumn
{
    display: block;
	/*width:100%;*/
	padding-left:0%;
	padding-right:0%;	
}

.mod_article.full-width-screen.contentcolumn .content-container
{
	display: block;
    margin: auto;
    max-width: 1540px;	
	padding-left:0%;
	padding-right:0%;
}

.mod_article.full-width-screen.contentcolumn.content-width-1760 .content-container
{
	max-width:1760px;
}

.mod_article.full-width-screen.contentcolumn.content-width-1220 .content-container
{
	max-width:1220px;
}

#header_offset1 .header_logo {
    display: block;
    float: left;
    position: relative;
    top: 50px;
}

#header_offset .header_logo > a {
    display: block;
	width: 100%;
	height: 100%;
}

#header_offset .header_logo > a > img.logo {
	display: block;
	width: 240px;
	height: 60px;
}

#header_offset .header_topbar {
    float: right;
    clear: right;
    position: relative;
    margin-top: 25px;
    margin-bottom: 25px;
}

#header_offset .header_topbar > .contactbar,
#header_offset .header_topbar > .sociallinks,
#header_offset .header_topbar > .mod_changelanguage {
    float: left;
    position: relative;
}

#header_offset .header_topbar > .contactbar > a {
    font-size: 15px;
    font-size: 1.5rem;
    text-transform: uppercase;
    color: #666666;
    padding-left: 12px;
    padding-right: 12px;
}

#header_offset .header_topbar > .contactbar > span {
    display: inline-block;
    font-size: 15px;
    font-size: 1.5rem;
    text-transform: uppercase;
    font-variant-numeric: tabular-nums;
    -moz-font-feature-settings: "tnum";
    -webkit-font-feature-settings: "tnum";
    font-feature-settings: "tnum";
}

#header_offset .header_topbar > .contactbar > span.phone {
    padding-left: 12px;
    color: #666666;
}

#header_offset .header_topbar > .sociallinks {
    margin-left: 60px;
}

#header_offset .header_topbar > .sociallinks ul {
    clear: both;
    overflow: hidden;
    margin: 0;
}

#header_offset .header_topbar > .sociallinks li {
    float: left;
    position: relative;
    margin: 0 0 0 10px;
}

#header_offset .header_topbar > .sociallinks li > a > .fa {
    font-size: 18px;
    font-size: 1.8rem;
    color: #666666;
    vertical-align: text-bottom;
}

#header_offset .header_topbar > .sociallinks span {
    text-indent: -9999em;
    position: absolute;
    overflow: hidden;
    visibility: hidden;
}

#header_offset .header_topbar > .mod_changelanguage {
    margin-left: 10px;
}

#header_offset .header_topbar > .mod_changelanguage ul {
    clear: both;
    overflow: hidden;
    margin: 0;
}

#header_offset .header_topbar > .mod_changelanguage li {
    float: left;
    position: relative;
    margin-left: 10px;
}

#header_offset .header_topbar > .mod_changelanguage li > a > span,
#header_offset .header_topbar > .mod_changelanguage li > strong {
    font-size: 12px;
    font-size: 1.2rem;
    color: #666666;
}

#header_offset .header_topbar > .mod_changelanguage li > strong {
    font-weight: 700;
}

#header {
}

/*.contentpage #header_offset {
	border-bottom: 12px solid #f0f2f1;
}*/

body.categorypage #header > .inside {
    display: block;
    width: 100%;
    max-width: 1520px;
    margin: auto;
    padding-left: 20px;
    padding-right: 20px;
}

.columnpage #container {
    padding-left: 20px;
    padding-right: 20px;
}

body.sidebar #main {
    width: 66.6667%;
	margin-right: 8.3333%;
}

body.sidebar #left,
body.sidebar #right {
    width: 25%;
	padding-left: 20px;
	padding-right: 20px;
}

body.sidebar #left > .inside,
body.sidebar #right > .inside {
	padding-top: 0px; /*75px*/
	padding-bottom: 0px; /*75px*/
}

#footer {
	background-image: url(../elements/background-footer.jpg);
	background-repeat:no-repeat;
	background-position:top right;
	background-color:#013f58;
}

/*#footer .inside
{
    display: block;
    margin: auto;
    max-width: 1520px;
}

#footer .footer_top {
	padding-top:160px;
	text-align: center;
}*/

#footer .footer-top{
	clear:both;
	height:100px;
}

#footer .footer-main{
	clear:both;
	height:200px;
}

#footer .footer-bottom{
	clear:both;
	height:24px;
}

#footer .mod_sitemap 
{
	margin-top:124px;
	width:83.33333%;
	overflow:visible;
	float:left;
}


#footer .mod_sitemap ul
{
	box-sizing:border-box;
	position:relative
}

#footer .mod_sitemap ul li.submenu
{
	width:20%;
	padding-left:5px;
	padding-right:50px;
	float:left;
	
}

#footer .mod_sitemap ul li.submenu > a,
#footer .mod_sitemap_contact li.first
{
	display:block;
	padding-bottom:12px;
	    font-family: "DIN2014-Narrow", sans-serif;
    text-transform: uppercase;
    font-size: 24px;
    line-height: 24px;
    color: #118ba3;
}

#footer .mod_sitemap ul li.submenu.first:before
{
	content:url(../elements/footer_icon_1_c.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap ul li.submenu.menu2:before
{
	content:url(../elements/footer_icon_2_f.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap ul li.submenu.menu3:before
{
	content:url(../elements/footer_icon_3_p2.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap ul li.submenu.menu4:before
{
	content:url(../elements/footer_icon_4_n.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap ul li.submenu.menu5:before
{
	content:url(../elements/footer_icon_5_p3.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap ul li.submenu li
{
	padding-top: 3px;
    padding-bottom: 3px;
    display: block;
    border-bottom: 2px dotted;
}

#footer .mod_sitemap ul li.submenu li a
{
	color:#000;
}
#footer .mod_sitemap ul li.submenu li.last
{
	border-bottom:0px!important;
}


#footer .mod_sitemap_contact
{
	margin-top:124px;
	width:16.666666%;
	float:left;
	overflow: visible;
    display: block;
    position: relative;
}

#footer .mod_sitemap_contact ul li.first:before
{
	content:url(../elements/footer_icon_6_i.png);
	position:absolute;
	top:-64px;
}

#footer .mod_sitemap_contact li.contact_tel,
#footer .mod_sitemap_contact li.contact_mail
{
	padding-top:6px;
}

#footer .mod_sitemap_contact li.contact_tel:before
{
	content:url(../elements/contact_tel.png);
	position:relative;
	top:4px;
	padding-right:6px;
}

#footer .mod_sitemap_contact li.contact_mail:before
{
	content:url(../elements/contact_mail.png);
	position:relative;
	top:4px;
	padding-right:6px;
}

#footer .footer_bottom
{
	text-align:right;
	clear:both;
	position: relative;
    height: 40px;
}
#footer .footer_bottom ul
{
	position:absolute;
	right:0px;
}
#footer .footer_bottom ul li
{
	float:left;
	padding-right:35px;
}
#footer .footer_bottom ul li.item_impressum, 
#footer .footer_bottom ul li.item_datenschutz 
{
	padding-top:34px;
}

#footer .footer_bottom ul li.item_partner_2
{
	padding-top:6px;
}
#footer .footer_bottom ul li.item_partner_3
{
	padding-top:7px;
}


#footer_main {
	
	background-color: rgb(240,242,242);
}

#footer_bottom {
	background-color: rgb(255,255,255);
}

#footer_bottom,
#footer_bottom a {
    color: #000000;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 400;
}

#footer .ce_toplink {
    background-color: rgb(0,150,54);
    bottom: 20px;
    height: 40px;
    position: fixed;
    right: 20px;
    -webkit-transition: transform 0.25s ease-in-out 0.1s;
	-moz-transition: transform 0.25s ease-in-out 0.1s;
	transition: transform 0.25s ease-in-out 0.1s;
    width: 40px;
    z-index: 9999;
}

#footer .ce_toplink > a {
    color: #fff;
    position: absolute;
    text-indent: -9999em;
}

#footer .ce_toplink > a::after {
    content: "?";
    font-size: 3.2rem;
	font-weight: normal;
    height: 40px;
    left: -1px;
    line-height: 40px;
    position: absolute;
    text-align: center;
    text-indent: 0;
    top: 0;
    -webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
    width: 40px;
}

#footer .ce_image.footer-logo {
    margin-top: 45px;
    margin-bottom: 60px;
}

.contentpage.content #container .row
{ display: block;
    margin: auto;
    max-width: 1520px;
}

.contentpage.content #container #main
{ 
	box-sizing:border-box;
	width:66%;
	padding-right:60px;
}
.contentpage.content #container #right
{ 
	width:33%;
}

.contentpage.content #right .mod_navigation
{
	background-image:url(../elements/sidebar-box-grau-background.png);
	background-repeat:no-repeat;
	box-sizing:border-box;
	margin-bottom:58px;
	margin-top:40px;
}

.contentpage.content #right .mod_navigation ul
{
	margin-left:80px;
	margin-right:80px;
	box-sizing:border-box;
}

.contentpage.content #right .mod_navigation ul li
{
	padding-top:15px;
	padding-bottom:15px;
	padding-left:12px;
	padding-right:12px;
	border-bottom:2px dotted;
	font-weight: unset;
    color: #118ba3;
    text-transform: uppercase;
	font-size: 22px;
	font-weight:300;
	font-family:"DIN2014-Narrow", sans-serif;
	
}

.contentpage.content #right .mod_navigation ul li a
{
	color:#000;
}

.contentpage.content #right .mod_navigation ul li a:hover
{
	color:#118ba3;
	text-decoration: none !important
}
.contentpage.content #right .mod_navigation ul li.active
{
	background-image:url(../elements/navigation-menu.png);
	background-repeat:no-repeat;
	background-position:right;
}

.contentpage.content #right .mod_navigation ul li.last
{
	border-bottom:0px;
}

.contentpage.content #right .mod_navigation:before
{
	content:url(../elements/sidebar-box-icon-menu.png);
	position:absolute;
    top: 29px;
    left: -24px;
}

.contentpage.content #right .mod_navigation h2:after
{
	
	content:url(../elements/navigation-line.png);
	position:relative;
    top: 4px;
    left: -37px;
}


h2
{
	color:#00374e;	
	font-size: 41px;
    line-height: 41px;
    margin-bottom: 20px;
    font-family: acumin-pro-condensed, sans-serif;
	font-weight:700;	
	margin-bottom:20px;
}

.contentpage h2
{
	font-size:34px;
}
.invert h2
{
	color:#fff;	
}

h3
{
	color:#00374e;
	font-size: 29px;
    line-height: 20px;
    margin-bottom: 12px;
    font-family: acumin-pro-condensed, sans-serif;
	font-weight:700;
	margin-bottom:40px;
}

.lm-60 {
	margin-left:60px;
	margin-bottom:6px!important;
}

h5
{
    font-size: 18px;
    font-family: acumin-pro, sans-serif;
    font-weight: 300;
    color: #00374e;
    margin-bottom: 0;
    padding-bottom: 0;
    text-transform: uppercase;
    margin-bottom: 12px;
	
/*
	font-size:16px;
	font-family: acumin-pro, sans-serif;
	font-weight:700;
	color:#00374e;		
	margin-bottom:0;
	padding-bottom:0;
*/
}

h5 + h2
{
	margin-top:0px;
}


h6
{
	font-family:"DIN2014-Narrow", sans-serif;
	font-size:25px;
	/*margin-top: 44px;*/
	margin-bottom:44px;
	position:relative;
	z-index:6666;
}

h6 .grey
{
	background-image:url(../elements/balken-grey.png);
    padding: 8px;
    padding-left: 16px;
    padding-right: 16px;
}

/*a:hover
{
	color:#118ba3!important;
  text-decoration: none !important;	
}*/
/* --- Article
 * ---------------------------------------- */

#rocksolid_carousel .bg_layer .line1
{
	font-family: acumin-pro-condensed, sans-serif;
	font-size:26px;
	margin-bottom:6px;
}

.mod_mmenu a,
.mod_mmenu a:hover
{
	color::#00374e!important;
}
a.button-text, .submit, p.back a
 {
	background-color:#00374e;
    padding-left: 16px;
    padding-top: 7px;
    padding-right: 16px;
    padding-bottom: 8px;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 14px;
    color:#fff!important;
	margin-top:24px;
	border:0px;

}
 
 
.article-wrapper:not(.article-fullwidth) {
    padding-left: 20px;
    padding-right: 20px;
}

.contentpage .article-wrapper:not(.article-fullwidth) {
    padding-left: 0px;
    padding-right: 0px;
}

#header .article-wrapper {
    padding: 0;
}

.article-wrapper.article-background-v1,
.article-wrapper.article-background-v2 {
	background-color: rgb(242, 242, 242);
}

.article-wrapper.article-background-image {
    background-image: url("/files/theme/default/images/source.jpg");
    background-size: cover;
    background-position: center center;
    position: relative;
}

.article-wrapper.article-background-image:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.3);
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
}

.article-wrapper.article-background-image .ce_headline.section {
    color: #ffffff;
}

.article-wrapper:not(.article-fullwidth) > .mod_article {
    display: block;
    margin: auto;
    max-width: 1420px;
    padding-top: 40px;
    padding-bottom: 60px;
    position: relative;
    z-index: 1;
}

.article-wrapper.article-background-v1 > .mod_article,
.article-wrapper.article-background-v2 > .mod_article {
    padding-bottom: 15px;
}

.article-wrapper.article-background-image > .mod_article {
    padding-top: 90px;
    padding-bottom: 45px;
}

#header .article-wrapper > .mod_article {
    padding-bottom: 0;
    padding-top: 0;
    max-width: none;
}

#header_offset + #container .mod_article {
    padding-top: 0;
}

#footer_main.article-wrapper > .mod_article {
    padding-top: 45px;
    padding-bottom: 60px;
}

#footer_bottom.article-wrapper > .mod_article {
    padding-top: 20px;
    padding-bottom: 20px;
}

.desk33
{
	box-sizing:border-box;	
	width:33.33%;
	float:left;
	padding-left:20px;
	padding-right:20px;
}

.desk66
{
	box-sizing:border-box;	
	width:66.66%;
	float:left;
	padding-left:20px;
	padding-right:20px;
}

#welcome 
{
	padding-right:240px;
	padding-bottom:42px;
}

.with-bottom-border{
	border-bottom:2px dotted;
	border-color:#118ba3;
}

#article-7
{
	background-image:url(../elements/background-motiv.jpg);
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
}

#article-7 h2
{
	margin-top:0px;
}

.left_nm
{
	/*padding-left:0!important;*/
}

.right_nm
{
	/*padding-right:0!important;*/
}

.invert li{
	/*padding: 8px;
    background-color: #fff;
    color: #00374e;
    margin-top: 10px;
    margin-bottom: 22px;
    padding-left: 16px;
	font-weight:300;
    text-transform: uppercase;
	*/
	
	padding: 8px;
    color: #fff;
    margin-top: 5px;
    margin-bottom: 5px;
    padding-left: 16px;
    font-weight: 300;
    font-size: 21px;
	list-style: square;
    list-style-position: inherit;
    padding-left: 5px;	
	margin-left:24px;
    /* text-transform: uppercase; */
	
}
