/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

/* Smooth Scroll */
html {
    scroll-behavior: smooth;
    /* scroll-padding-top: 100px; ABstand nach oben, falls Sticky Header */
    hyphens: auto; /* Automatische Silbentrennung */
}

body {
    min-height: 100vh;
}

body.home main section .kf-headline-h1__container h1
{
    margin: 0 auto;
    text-align: center;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.2;
}
*{
    word-break: normal !important;    /* Standardverhalten, bricht nicht mitten im Wort */
    overflow-wrap: break-word !important;  /* Nur bei Bedarf, bricht bei Leerzeichen */
    hyphens: manual !important;        /* Keine automatische Silbentrennung */
}

/* Formularversand */

.message.success {
    margin-bottom: 30px;
}


.brxe-text-basic,
.brxe-text {
    line-height: 1.4;
}

.nowrap {
    white-space: nowrap;
}

/* mobile Navigation */
.bricks-mobile-menu {
    padding-top: 20px;
}

/* Klassen und deren Auswirkungen beim Umschalten der Reienfolgen Text-Bild */

.text-image .kf-bild-text-kombination__text,
.image-text .kf-bild-text-kombination__image-box img,
.kf-bilder-text-kombination__text
{
 padding-right: 0;
}
.image-text .kf-bilder-text-kombination__image-block__bg-white,
.image-text .kf-bilder-text-kombination__image-block__bg-blue
{
    width: 100%;
}

.bg-blue
{
    background-color:#0d1b38;
}


.kf-text.bg-blue{
    padding-top:40px;
    padding-bottom:30px;
}

/* Vorkommen von weißem Text mit gelben Links */
.bg-blue h2, .white-font h2,
.bg-blue h3, .white-font h3,
.bg-blue h4, .white-font h4,
.bg-blue p, .white-font p, .kf-2x-bild__headline.text-white
{
    color:#ffffff;
}


.yes_activ_nav_point.brxe-dcohcy.brxe-text-link.brxe-dcohcy.brxe-text-link,
.bg-blue a, .white-font a,
.bg-blue a:hover, .white-font a:hover,
.text-yellow a,
a.text-yellow
{
    color:#ffb73c;
    text-decoration: none;
}

/* Vorkommen von dunkelblauem Text mit roten Links */

.bg-white h3, .blue-font h3,
.bg-white h4, .blue-font h4,
.bg-white p, .blue-font p, .kf-2x-bild__headline.text-blue,
.text-blue a
{
    color:#0d1b38;
    text-decoration: none;
}

.bg-white a, .blue-font a, a.pdf-download,
.bg-white a:hover, .blue-font a:hover,
.kf-text-boxen-container__red-arrow-link
{
    color:#531f1a;
    text-decoration: none;
    text-transform: uppercase;
}
a.pdf-download
{
    font-size:17px;
}
/*************************************************************************************/
/*********************** Abdunkeln der Hintergrundmotive *****************************/
/*************************************************************************************/

/* START Abdunkeln der Hintergrundbilder */
.bricks-background-video-wrapper,
.kf-2x-bild__image{
    filter: brightness(85%);
}
/* before auf dem Div mit dem Hintergrundbild */
.kf-grosses-hintergrundmotiv-mit-text__bg-image::before,
.kf-grosses-hintergrundmotiv-mit-text__bg-video::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}
.kf-grosses-hintergrundmotiv-mit-text__bg-image::before{
    background: rgba(0, 0, 0, 0.3);
}

/* Div mit dem Hintergrundbild */
.kf-grosses-hintergrundmotiv-mit-text__bg-image {
    position: relative;
    overflow: hidden;
}

/* Div, das innerhalb des Hintergrundbild-Divs vorkommt, aber nicht abgedunkelt sein darf */
.kf-grosses-hintergrundmotiv-mit-text__bg-image > *,
.kf-grosses-hintergrundmotiv-mit-text__bg-video.has-bg-video .kf-grosses-hintergrundmotiv-mit-text__text
{
    position: relative;
    z-index: 2;
    color:#ffffff;
}

.kf-grosses-hintergrundmotiv-mit-text__bg-image a {
    color:#ffffff;
    text-decoration: underline;
}

.kf-grosses-hintergrundmotiv-mit-text__bg-image a.arrow-link,
.kf-grosses-hintergrundmotiv-mit-text__bg-video.has-bg-video .kf-grosses-hintergrundmotiv-mit-text__text a.arrow-link
{
    color:#ffffff;
    text-decoration: none;
}

.kf-grosses-hintergrundmotiv-mit-text__bg-image a.arrow-link::after,
.kf-grosses-hintergrundmotiv-mit-text__bg-video.has-bg-video .kf-grosses-hintergrundmotiv-mit-text__text  a.arrow-link::after
{
    content: '';
    display: inline-block;
    width: 22px;
    height: 10px;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 5px;
    vertical-align: middle;
    margin-top: -4px;
    background-image: url('/app/themes/bricks-child/assets/svg/white-arrow.svg');
}

/* Klasse auf dem Div mit dem Hintergrundvideo */
.kf-grosses-hintergrundmotiv-mit-text__bg-video.has-bg-video{
    position: relative;
    z-index: 1;
}


.center{
    text-align:center;
}

.large-text{
    font-size: 22px;
    line-height: 30px;
    font-weight: 400;
    font-family: "Open Sans";
}

.fifty-percent-width-desktop .kf-grosses-hintergrundmotiv-mit-text__text{
    width: 100%;
}

.arrow-link,
.text-yellow a,
a.text-yellow,
.kf-bild-text-boxen-container__blue-arrow-link{
    text-decoration: none;
    text-transform: uppercase;
}

.arrow-link::after,
.kf-bild-text-boxen-container__blue-arrow-link::after,
.kf-2x-bild__link a::after,
.text-yellow a::after,
a.text-yellow::after,
a.kf-text-boxen-container__red-arrow-link::after
{
    content: '';
    display: inline-block;
    width: 22px;
    height: 10px;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 5px;
    vertical-align: middle;
    margin-top: -4px;
}

.bg-blue .arrow-link::after,
.white-font a::after,
.kf-2x-bild__link::after,
.text-yellow a::after,
a.text-yellow::after
{
    background-image: url('/app/themes/bricks-child/assets/svg/yellow-arrow.svg');
}

a.text-yellow::after,
a.kf-text-boxen-container__red-arrow-link::after
{
    margin-top: 0;
}

.text-blue a::after,
.kf-bild-text-boxen-container__blue-arrow-link::after
{
    background-image: url('/app/themes/bricks-child/assets/svg/blue-arrow.svg');
}

.kf-bild-text-boxen-container__blue-arrow-link::after{
    margin-top: 0;
}

.bg-white a::after,
a.kf-text-boxen-container__red-arrow-link::after
{
    background-image: url('/app/themes/bricks-child/assets/svg/red-arrow.svg');
}

#menu-hauptnavigation .sub-menu > .menu-item .sub-menu > .menu-item > a {
    padding-left: 152px;
}
/* 3. Ebene Navigationspunkte */
.bricks-mobile-menu ul.sub-menu ul.sub-menu li.menu-item a {
    padding-left: 125px;
}


/* Abstände der Blöcke nach unten */

.normal-distance {
    margin-bottom:100px;
}
.small-distance {
    margin-bottom:30px;
}
.no-distance {
    margin-bottom:0;
}
/* Achtung, je nachdem ob Text links oder rechts steht muss einmal der Abstand zum Bild
oben oder unten rein*/
.text-image .kf-bilder-text-kombination__text{
    margin-bottom: 50px;
}
.image-text .kf-bilder-text-kombination__text{
    margin-top: 50px;
}
/* Sehr kleine Geräte */
@media only screen and (max-width: 478px) {

}

/* Kleine bis mittelgroße Smartphones */
@media only screen and (min-width: 479px) and (max-width: 767px) {

}

/* Tablets */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .text-image .kf-bilder-text-kombination__text{
        margin-bottom: initial;
    }
    .image-text .kf-bilder-text-kombination__text{
        margin-top: initial;
    }
}

/* Kleinere Desktops und Laptops */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .fifty-percent-width-desktop .kf-grosses-hintergrundmotiv-mit-text__text{
        width: 75%;
    }
}

/* Große Desktops */
@media only screen and (min-width: 1200px) {
    .fifty-percent-width-desktop .kf-grosses-hintergrundmotiv-mit-text__text{
        width: 50%;
    }
}

/* Tabellendarstellung */
/* Responsive Tabellendarstellung*/

table {
    border-collapse: collapse;
    width: 100%;
    overflow-x: auto; /* Aktiviert horizontalen Scroll, falls nötig */
    display: block; /* Damit overflow-x funktioniert */
}

th, tr, caption {
    text-align: left;
}

td:first-child {
    white-space: normal;
}
td {
    padding: 7px 15px 7px 7px;
}


@media only screen and (max-width: 768px) {
    /* Zebra-Striping für Tabellenzeilen */
    tr:nth-child(odd) {
        background-color: #ffffff;
    }

    tr:nth-child(even) {
        background-color: #f4f4f4;
    }
    body.home .kf-headline-h1__container.normal-distance {
        margin-bottom: 0;
    }

}
