/*
 Theme Name:   Divi Child
 Description:  Divi Child Theme
 Author:       Tobias Both
 Template:     Divi
 Version:      2.6.1
*/

/****************************************************************
********************** INHALTSVERZEICHNIS ***********************
****************************************************************/

/*
1. Base Rules
2. Layout Rules
3. Modules Rules
*/

/****************************************************************
************************* 1. BASE RULES *************************
****************************************************************/

/* body */
body {
    font-family: Source Sans Pro; 
    font-weight:normal;
}

/* colors */
:root {
    --dark-blue:#192E3F;
    --sky-blue:#14A0DB;
    --light-blue:#BAC8D0;
    --red:#E72337;
    --beige:#C3AE95;
}

/* fonts */
@font-face {
    font-family: Source Sans Pro;
    src: url(https://sibem-capital-partners.com/wp-content/themes/Divi-child/fonts/source-sans-pro/sourcesanspro-regular.woff);
}

@font-face {
    font-family: Source Sans Pro Light;
    src: url(https://sibem-capital-partners.com/wp-content/themes/Divi-child/fonts/source-sans-pro/sourcesanspro-light.woff);
}

@font-face {
    font-family: Source Sans Pro Semibold;
    src: url(https://sibem-capital-partners.com/wp-content/themes/Divi-child/fonts/source-sans-pro/sourcesanspro-semibold.woff);
}

@font-face {
    font-family: Source Sans Pro Bold;
    src: url(https://sibem-capital-partners.com/wp-content/themes/Divi-child/fonts/source-sans-pro/sourcesanspro-bold.woff);
}

@font-face {
    font-family: L-7 Stencil;
    src: url(https://sibem-capital-partners.com/wp-content/themes/Divi-child/fonts/l7-stencil/l-7_stencil.woff);
}

/* headlines */
h1,h2,h3,h4,h5,h6 {
    font-family: L-7 Stencil;
    line-height:1.2em !important;
}

h5 {
    font-family: Source Sans Pro Semibold;
    font-size:16px;
    letter-spacing: 1px;
    position: relative;
    text-transform:uppercase;
}

/* links */
a {transition: all .2s ease-in-out;}
a:hover {
    color:var(--sky-blue);
}

/* has fontawesome icon */  
#footer-widgets .footer-widget li:before,
ul.bf-primary-list li:before,
.bf-link:after, .more-link:after,
.see-all-link:before,
.bf-sidebar-menu li a:before {
    font-family: "Font Awesome 5 Free"; 
    font-weight:900;
    position:absolute;
}
/* has fontawesome icon LEFT */  
ul.bf-primary-list li:before,
.see-all-link:before {
    left:0;
    margin-right:.5em;
}
/* has fontawesome icon RIGHT */  
.bf-link:after, .more-link:after {
    right:0;
    margin-left:.5em;
}

/****************************************************************
************************ 2. LAYOUT RULES ************************
****************************************************************/

/* 
****************************
body border 
****************************
*/
#top, #bottom, #left, #right {
    background: #fff;	
    position: fixed; 
    z-index:9999;
}
#left, #right {
    top: 0; bottom: 0; 
    width: 16px;
}
#left {left: 0;}
#right {right: 0;}
#top, #bottom {
    left: 0; right: 0; 
    height: 16px;
}
#top { top: 0; }
#bottom { bottom: 0;}


/* 
****************************
header & navigation 
****************************
*/
#top-menu a {
    font-family: Source Sans Pro Semibold;
    letter-spacing: 1px;
}
#top-menu li {padding-left:16px; padding-right: 16px;}

/* layout rules for laptops & desktops */
@media (min-width: 981px){ 
    
    /* Adapt Header Padding */
    .et_fullwidth_nav #main-header .container {
        padding-right: 50px;
        padding-left: 0px;
    }
    /* Adapt Navigation Padding */
    .et_header_style_left #et-top-navigation nav>ul>li>a {padding-bottom:16px !important;}
    .et_header_style_left #et-top-navigation {padding:32px 0 32px 0 !important;}
    .et_header_style_left .et-fixed-header #et-top-navigation {padding:20px 0 20px 0 !important;}
    
    /* Styling current navigation menu item */
    #top-menu li.current-menu-item>a, 
    #top-menu li.current-menu-ancestor >a, 
    .et-fixed-header #top-menu li.current-menu-ancestor>a {color:var(--dark-blue) !important;}
    #top-menu li li.current-menu-item a, 
    .et-fixed-header #top-menu .menu-btn.current-menu-item > a,
    #top-menu .menu-btn.current-menu-item > a,
    .et-fixed-header #top-menu li li.current-menu-item>a {color: #fff !important;}
    #top-menu li.current-menu-item>a:after {
        content:"";
        background:var(--dark-blue);
        border-radius: 2px;
        position: absolute;
        left:0; bottom:6px;
        width:100%;
        height:2px;        
    }
}

/* header & navigation - hover styles */
#top-menu-nav>ul>li>a:hover {opacity:1;}
#top-menu-nav>ul>li>a:before {
    content:"";
    background:var(--dark-blue);
    border-radius: 2px;
    position: absolute;
    left:0; bottom:6px;
    width:0%;
    height:2px;
    transition: width .3s ease-in-out;
}
#top-menu-nav>ul>li>a:hover:before {width:100%;}
#top-menu-nav>ul>li.menu-item-has-children>a:hover:before {width:0;}

/* header & navigation - submenu */
#main-header .nav li ul {padding:16px 0;}
#main-header .nav li ul:before {
    content:"";
    width:18px;
    height:18px;
    position: absolute;
    top:-9px;
    left:36px;;
    background:var(--dark-blue);
    transform: rotate(45deg);
}
.nav li ul {width:260px; position:absolute !important;}
#top-menu li li {padding:0 8px;}
#top-menu li li a {padding:4px 8px; width:240px; border-bottom:1px solid rgba(255,255,255,0.2);}

@media (min-width: 981px){
    .et_primary_nav_dropdown_animation_slide #et-top-navigation ul li:hover>ul {animation: fadeBottom .3s ease-in-out;}
    .et-fixed-header#main-header .nav li ul {background-color: var(--dark-blue) !important;}
    .et-fixed-header #top-menu li li a {color:#fff !important;}
}

/* header & navigation - mobile menu */
.mobile_menu_bar:before {color:var(--dark-blue) !important;}
@media (max-width:980px) {
    #main-header .container {
        background-color:#fff; 
        padding-right:16px;
        position: fixed;
        width: 100%;
        border-bottom:1px solid #eee;
    }
    #logo {max-height:100%;}
    .et_header_style_left #logo {max-width:60%;}
    .et_pb_svg_logo #logo {height:100%;}
    
    #main-header .et_mobile_menu {background-color: var(--dark-blue) !important; padding:9px 0;}
    #main-header .et_mobile_menu li {border-bottom:1px solid rgba(255,255,255,0.1);}
    #main-header .et_mobile_menu li li {border-bottom:1px solid var(--dark-blue);}
    #main-header .et_mobile_menu li:last-child {border-bottom: 0;}
    #main-header .et_mobile_menu li a {
        color:#fff; 
        font-size:16px;
        font-weight:normal;
        padding:9px 23px; 
    }
    #main-header .et_mobile_menu li ul, .et_mobile_menu li li {padding-left:0;}
    #main-header .et_mobile_menu li ul {background: #0C171E;}
}

/* header & navigation - nested mobile menu items */
#main-header .et_mobile_menu .menu-item-has-children > a { 
    background-color: transparent; 
    position: relative; 
}
#main-header .et_mobile_menu .menu-item-has-children > a:after { 
    font-family: 'ETmodules'; 
    text-align: center; 
    speak: none; 
    font-weight: normal; 
    font-variant: normal; 
    text-transform: none; 
    -webkit-font-smoothing: antialiased; 
    position: absolute; 
}
#main-header .et_mobile_menu .menu-item-has-children > a:after { 
    font-size: 16px; 
    content: '\4c'; 
    top: 10px; right: 16px; 
}
#main-header .et_mobile_menu .menu-item-has-children.visible > a:after { content: '\4d'; }
#main-header .et_mobile_menu ul.sub-menu { 
    display: none !important; 
    visibility: hidden !important;  
    transition: all 1.5s ease-in-out;
}
#main-header .et_mobile_menu .visible > ul.sub-menu { 
    display: block !important; 
    visibility: visible !important; 
}

/* 
****************************
footer
****************************
*/
footer {margin-top: 16px;}
#footer-widgets {padding:70px 0 20px 0;}

@media (min-width: 981px){
    .et_pb_gutters3 .footer-widget {margin-bottom: 40px;}
    #footer-widgets {padding:120px 0 80px 0;}
}

/* footer - footer-area 1 */
.footer-widget .widget_media_image {margin-bottom:40px !important;} /* footer logo*/

/* footer - footer-area 2 */
.footer-widget .menu a {
    font-size:16px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.footer-widget .menu a:hover {
    margin-left:3px;
}
.footer-widget .menu li {font-size:16px;}
.et_pb_widget ul li {margin-bottom:0;}
#footer-widgets .footer-widget li {padding-left:18px;}
#footer-widgets .footer-widget li:before {
    content: "\f054";
    font-size:14px;
    border:0;
    color:var(--sky-blue);
    top:0 !important;
}

/* footer - footer-area 3 */
.custom-html-widget {position: relative;}
.custom-html-widget::after {
    content: url(https://sibem-capital-partners.com/wp-content/uploads/2019/05/Sibem-Capital-Partners_Luxembourg-Map.png);
    width:254px;
    height:366px;
    position: absolute;
    top:0; margin-top:-60px;
    left:0;
    opacity:0.2;
    z-index:0 !important;
    pointer-events: none;
}
.custom-html-widget .fa-envelope, 
.custom-html-widget .fa-phone {margin-right:9px;}
@media (min-width:980px) and (max-width:1440px) {
    .custom-html-widget a, 
    .custom-html-widget .fa-envelope,
    .custom-html-widget .fa-phone
    {font-size:1.15rem !important;}
}

/* infoline */
#footer-bottom .container {border-top:1px solid #fff; padding:16px 0 120px 0;}
#footer-info {font-size: 16px !important;}

.legal-menu-class {width:auto; float:right;}
#footer-bottom .menu li {float: left; padding:0 16px;}
#footer-bottom .menu li a {text-transform:uppercase; color:#fff;}
#footer-bottom .menu li:last-child {padding:0 0 0 16px;}

/* footer & infoline - smartphones styling */
@media (max-width:425px) {
    footer p {font-size:20px !important;}
    .footer-widget .widget_media_image {width:70%;}
    footer #text-3 a, footer #text-3 i {font-size:19px !important;}
    .legal-menu-class {float:none; width:229px; margin:20px auto !important;}
    #footer-bottom .container {padding:16px 0 180px 0;}
}


/****************************************************************
************************ 3. MODULES RULES ***********************
****************************************************************/

/* buttons */
.bf-button, .wpcf7-submit  {
    border-radius:28px;
    display: inline-block;
    font-family: Source Sans Pro Semibold !important;
    font-weight: normal !important;
    padding:14px 28px !important;
    text-transform: uppercase;
    transition: all .2s ease-in-out;
}
.bf-btn-filled, .wpcf7-submit {
    background:var(--sky-blue);
    color:#fff !important;
}
.bf-btn-filled:hover, .wpcf7-submit:hover, #top-menu .menu-btn a:hover, .et-fixed-header #top-menu .menu-btn a:hover {
    background:var(--sky-blue);
    opacity:0.8;
}
.bf-btn-outlined {
    border:2px solid var(--dark-blue);
    color:var(--dark-blue);
    padding:10px 24px !important;
}
.bf-btn-outlined:hover {
    border:2px solid var(--sky-blue);
}

/* menu button */
@media (min-width:981px) {
    .menu-btn a, .et-fixed-header #top-menu .menu-btn a {
        background:var(--sky-blue);
        border-radius:32px;
        color:#fff !important;
        font-family: Source Sans Pro Semibold !important;
        font-weight: normal !important;
        padding:16px 32px !important;
    }
    .menu-btn a:before, .menu-btn.current-menu-item > a:after {display:none !important;} /* remove the :hover underline state */
}

/* Paragraphs */
.introtext {
    line-height:1.3em;
    color:var(--dark-blue);
}
.first-paragraph::first-letter {
    color:var(--dark-blue);
    float: left;
    font-size: 3.3em;
    line-height: .9em;
    padding-top: 0px;
    padding-right: 6px;
    padding-left: 0px;
}

/* headline decoration left */
.has-line-left:before {
    content:"";
    width: 60px;
    height:3px;
    border-radius:4px;
    position: absolute;
    top:0; margin-top:24px;
    left:0; margin-left:-90px;
}
.has-line-left--dark:before {background: var(--dark-blue);}
.has-line-left--light:before {background: #fff;}

/* cards */
.bf-card h5 {margin-bottom:1.7em;}
.bf-card h5:after {
    background:#fff;
    border-radius:2px;
    bottom:0; left:0; 
    content:"";
    width:30px; height:2px;
    margin-bottom:-9px;
    position:absolute;    
}
.bf-card .small-text {
    font-size:20px;
    font-family: Source Sans Pro;
}
@media (min-width:768px) {
    .bf-card .small-text {font-size:23px;}
}
/* horizontal scrolling on cards */
@media (max-width:425px) {
    .bf-cards__container {display: flex; flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch;}
    .bf-cards__container .et_pb_column {flex: 0 0 auto; max-width:260px; margin-right:18px !important;}
}

/* lists */
ul.bf-primary-list {list-style-type: none; padding:0; margin-bottom:32px;}
ul.bf-primary-list li {padding:8px 0px 8px 16px; line-height:1.3em; border-bottom:2px solid #eee;}
ul.bf-primary-list li:before {
    content: "\f054";
    color:var(--dark-blue);
    font-size:12px;
    margin-top:1px;
}
/* person card */
.bf-person-card .et_pb_main_blurb_image {margin-bottom:0;}
.bf-person-card .et_pb_blurb_container {padding:23px;}
.bf-person-card .et_pb_module_header {
    font-family: Source Sans Pro Semibold;
    font-size:23px;
    letter-spacing: 1px;
    line-height: 1.3em;
    padding-bottom:9px;
    position: relative;
    text-transform:uppercase;
}
.bf-person-card .et_pb_blurb_description {position: relative;}
.bf-person-card .bf-icon-panel {position:absolute !important; right:0; bottom:0; display: block;}
.bf-person-card .bf-icon-panel ul {padding:0; list-style-type: none;}
.bf-person-card .bf-icon-panel ul li {display: inline-block;}
.bf-person-card .bf-icon-panel a {
    color:var(--dark-blue);
    font-size:18px;
    display: inline-block;
    padding-left:14px;
}
.bf-person-card .bf-icon-panel a:hover {
    color:var(--sky-blue);
}
@media (max-width:425px) {
    .bf-person-card .et_pb_blurb_container {padding:16px;}
}

/* image-tiles */
.bf-image-tile__link {
    background:#fff;
    padding:23px;
    width:auto;
}
.bf-image-tile__link:before {display: none;}
.bf-image-tile .et_pb_main_blurb_image {margin-bottom:0; overflow: hidden;}
.bf-image-tile img {transition: all 1s ease-in-out;}

.bf-image-tile:hover img{transform: scale(1.05) !important;}
.bf-image-tile:hover .tile-more-link:before {width:100%;}
.bf-image-tile:hover .tile-more-link:after {margin-left:18px;}

@media (max-width:425px){
    .bf-image-tile__link {position: absolute; bottom:6px; width:100%;}   
}
@media (min-width:426px){
    .bf-image-tile .et_pb_blurb_container {position: absolute; bottom:6px;}   
}

/* image-blurbs */
.bf-image-blurb h3 {
    font-family: Source Sans Pro Semibold;
    font-size:23px;
    letter-spacing: 1px;
    padding-bottom:16px;
    position: relative;
    text-transform:uppercase;
}
@media (max-width:425px){
    .bf-image-blurb h3 {font-size:18px;}
}

/* modals */
.modal {z-index:999999 !important;}
.modal-dialog {margin-top:10%;}
.close {
    font-size: 30px;
    line-height: 1;
    color: #fff !important;
    width: 30px;
    height: 30px;
    border-radius: 20px;
    padding: 0;
    position: absolute;
    top: 16px;
    right: 32px;
    z-index: 10;
    filter: alpha(opacity=20);
    opacity: 1;
    border-radius:0;
}
.close .lnr-cross {
    padding:16px;
    margin-right:0;
    color:#000 !important;
}
.modal-header {padding:0 0 0 18px;}
.modal-content {border-radius:0;}
.modal-body {padding:40px;}
.modal-body ul {list-style: circle; padding-left:18px; margin-top:0; margin-bottom:1rem;}
.modal-body p {padding-bottom:0 !important; padding-top:1rem;}
@media (max-width:425px) {
    .modal-dialog {max-width:300px; margin:10% auto;}
}


/* contact info */
.bf-contact-info h5 {margin-bottom:9px;}
.bf-contact-info .bf-link {
    font-size:23px;
    text-transform:none;
}
@media (max-width:425px) {
    .bf-contact-info .bf-link {font-size:16px !important;}
}

/* links */
.bf-link, .more-link {
    color:var(--dark-blue);
    display: inline-block !important;
    font-family: Source Sans Pro Semibold;
    letter-spacing: 1px;
    position:relative;
    font-size:16px;
    text-transform: uppercase;
}
.bf-link:after, .more-link:after {
    content: "\f054";
    color:var(--dark-blue);
    font-size:14px;
    position: relative;
    transition: margin-left .3s ease-in-out;
}
.bf-link:before, .more-link:before {
    content:"";
    background:var(--dark-blue);
    border-radius: 2px;
    left:0; bottom:0;
    margin-bottom:-8px;
    position: absolute;
    width:100%;
    height:2px;
    transition: width .3s ease-in-out;
}
.bf-link:hover, .more-link:hover {color:var(--dark-blue);}
.bf-link:hover:before, .more-link:hover:before {
    width:100%;
}
.bf-link:hover:after, .more-link:hover:after {
    margin-left:18px;
}
.see-all-link {
    color:var(--dark-blue);
    font-size:16px;
    font-family:Source Sans Pro Semibold;
    letter-spacing: 1px;
    position: relative;
    text-transform: uppercase;
}
.see-all-link:before {
    content: "\f00a";
    color:var(--dark-blue);
    font-size:14px;
    position: relative;
    transition: margin-left .3s ease-in-out;
}

/* news & posts */
.et_pb_post {border:0 !important; padding:0 !important;}
.et_pb_post .et_pb_image_container {margin:0;}
.et_pb_post .entry-title {
    font-family: Source Sans Pro !important;
    font-size: 23px;
    line-height:1.3em;
}
.et_pb_post .post-meta {font-family: Source Sans Pro Bold; font-size:14px !important;}
.et_pb_post .post-content p {display: none;}
.et_pb_post .more-link {margin-top:23px;}
@media (max-width:425px) {
    .et_pb_column .et_pb_blog_grid .column.size-1of1 .et_pb_post {margin-bottom: 80px;}
}
.et_post_meta_wrapper {display: none;} /* Kommentarfunktion ausblenden */
.et_pb_post .entry-content h2,
.et_pb_post .entry-content h3,
.et_pb_post .entry-content h4,
.et_pb_post .entry-content h5,
.et_pb_post .entry-content h6 {
    font-family: Source Sans Pro;
    font-weight: normal;
}
.et_pb_sidebar_0 .widgettitle {
    font-family: Source Sans Pro Semibold;
    font-size:23px;
    letter-spacing: 1px;
    padding-bottom:16px;
    position: relative;
    text-transform:uppercase;
}
.et_pb_sidebar_0 ul li {
    padding:8px 0px 8px 16px;
    border-bottom:1px solid var(--dark-blue);
    position:relative;
}
.et_pb_sidebar_0 .et_pb_widget {
    margin-bottom:52px !important;
}

.quote-slider h2 {font-family: Source Sans Pro Light;}
.quote-slider .credits {
    letter-spacing: 1px;
    margin-top:5%;
    text-transform: uppercase;
}

/* headers */
.bf-header .bf-headline-block {
    background:var(--dark-blue);
    display: block;
    padding:16px;
    float:left;
    margin-bottom:16px;
}
.bf-header h1 {max-width:800px;}
@media (max-width:425px) {
    .bf-header .bf-headline-block {padding:7px; margin-bottom:4px;}
}

/* sidebar menus */
.bf-sidebar-menu li {
    border-bottom:1px solid var(--dark-blue);
    padding:8px 0;
}
.bf-sidebar-menu li a {color:var(--dark-blue) !important;}
.bf-sidebar-menu li a:before {
    content:"\f105";
    font-size:14px;
    color:var(--sky-blue);
    position: relative;
    left:0;
    margin-right:8px;
}

/* contact form */
.form-row {width: 100%; padding:10px 0;}
.form-row p {
    margin-bottom:12px;
    padding-bottom:0px;
    text-transform: uppercase;
    color:#1A222F;
    font-weight:600;
}
.column-half, .column-quarter {
    float: left;
	position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.column-half {width:100%;}
.column-quarter {width:50%;}

.form-col-left {padding:0 10px 20px 0;}
.form-col-right {padding:0 0 20px 10px;}

span.wpcf7-list-item {margin-left:0 !important;}
.clearfix:after {content: "";display: table;clear: both;}

.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 textarea, .wpcf7 input[type="tel"], .wpcf7 select {
	width: 100%;
    font-size:21px;
	padding: 14px;
	background:#f2f6fa;
    border-bottom:2px solid var(--dark-blue);
    border-left:0; border-right:0;
    border-top:0;
    border-radius:0 !important;
	-webkit-box-sizing: border-box;
	 -moz-box-sizing: border-box;
	      box-sizing: border-box;
}

label .wpcf7-list-item-label {font-size: 16px; color:#666 !important;}

/*
.wpcf7 input:focus, .wpcf7 textarea:focus{
    -webkit-box-shadow:inset 0px 0px 0px 2px var(--sky-blue);
    -moz-box-shadow:inset 0px 0px 0px 2px var(--sky-blue);
    box-shadow:inset 0px 0px 0px 2px var(--sky-blue);
}*/

.wpcf7 textarea {height:256px;}

.wpcf7-submit{
	border:0;
    font-size:16px !important;
    cursor: pointer;
}

span.wpcf7-not-valid-tip{
	text-shadow: none;
	font-size: 14px;
	color: #D24335;
	background: transparent;
	padding: 5px;
}

div.wpcf7-validation-errors { 
	text-shadow: none;
	border: transparent;
	background: #FFE29E;
	padding: 20px;
	color: #9C6533;
	text-align: center;
	margin-top: 50px !important;
	font-size: 16px;
}

div.wpcf7-mail-sent-ok{
	text-align: center;
	text-shadow: none;
	padding: 20px;
	font-size: 16px;
	background: #8EDA89;
	border-color: #8EDA89;
	color: #fff;
	margin-top: 50px !important;
}

.ssl-info {font-size:16px;}
.ssl-info .lnr {color:#0D8A74;}

/* Responsive Styles - Local Kontaktformular */

@media (max-width:1500px) { 
    .form-column-half {width:100% !important;}
}

@media (max-width:660px) {
    .et_pb_text .form-row column-quarter.form-col-right.senden-button {width:100% !important;}
}

@media (max-width:425px) {
    .wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 textarea, .wpcf7 input[type="tel"], .wpcf7 select {font-size:20px;}
}

/* Cookie Notice */
#cookie-notice {font-size:0.9rem; font-weight: normal; line-height:1.3rem;}
.cn-button.wp-default {font-size:1rem; border-radius:25px;}
.cookie-notice-container {max-width:1400px; margin:auto; padding:1em 1.5em;}

@media (min-width:980px){
    #cookie-notice {font-size:1rem; font-weight: normal; line-height:1.7rem;}
    .cookie-notice-container {max-width:1200px; margin:auto; padding:1em;}
    .cn-button.wp-default {font-size:1rem;}
}