.ausblenden {
    display: none;
    opacity: 0;
    cursor: none;
}

:root {
    --h1: clamp(34px, 0.37vw + 32.89px, 40px);
	--h2: clamp(24px, 0.25vw + 23.26px, 28px);
    --h3: clamp(20px, 0.28vw + 19.26px, 24px);
	--h4: 16px;
    --p: 16px;

    --white: #fff;
    --green: #75a20b;
	--darkblue: #0a2030;
	
	--text: 'OpenSans-Regular';
	--head: 'OpenSans-Bold';
}

/* ----------- TYPOGRAPHY ----------- */
@font-face {
    font-family: 'OpenSans-Regular';
    src: url('/wp-content/bandf-files/font/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
    font-style: normal;
    font-weight: 300;
}

@font-face {
    font-family: 'OpenSans-Bold';
    src: url('/wp-content/bandf-files/font/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
    font-style: normal;
    font-weight: 600;
}

h1 {
    font-family: var(--head);
    font-size: var(--h1);
    color: var(--darkblue);
    display: block;
    position: relative;
    line-height: 1.2em;
	text-transform: uppercase;
}

h2 {
    font-family: var(--head);
    font-size: var(--h2);
    color: var(--darkblue);
    display: block;
    position: relative;
    line-height: 1.8em;
	text-transform: uppercase;
}

.h2--white {
    color: var(--white);
}

.subhead-h2 {
    font-family: var(--text);
    font-size: var(--h2);
    color: var(--darkblue);
    display: block;
    position: relative;
    line-height: 1.2em;
	margin-top: 0;
}

.subhead-h2--white {
    color: var(--white);
}

h3 {
    font-family: var(--text);
    font-size: var(--h3);
    color: var(--darkblue);
    display: block;
    position: relative;
    line-height: 1.2em;
}

.h3--white {
    color: var(--white);
}

h4 {
    font-family: var(--head);
    font-size: var(--h4);
    color: var(--white);
    display: block;
    position: relative;
    line-height: 1.2em;
}

p {
    font-family: var(--text);
    font-size: var(--p);
    color: var(--darkblue);
    display: block;
    position: relative;
    line-height: 1.8em;
}

.p--white {
    color: var(--white);
}

a {
	font-family: var(--text) !important;
	color: inherit;
	text-decoration: none;
}

strong, .link__arrow a {
	font-family: var(--head) !important;
}

/* ----------- UTILITY ----------- */
.plus__before::before {
	content: "";
	display: inline-block;
	background-image: url(/wp-content/uploads/2026/03/favicon.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 16px;
	height: 16px;
	margin-right: 7px;
	vertical-align: middle;
}

.plus__before--dark::before {
	filter: brightness(0);
}

.plus__before--white::before {
	filter: brightness(10);
}

.btn--white {
	border: 1px solid var(--white);
}

.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: var(--white);
	border: 3px solid var(--darkblue);
    border-radius: 50%;
    position: fixed;
}

.back-to-top::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-left: 3px solid var(--darkblue);
    border-top: 3px solid var(--darkblue);
    transform: translate(-50%, -70%) rotate(45deg);
}

.back-to-top::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    height: 20px;
    background: var(--darkblue);
    transform: translate(-50%, -50%);
}

.back-to-top:hover {
    box-shadow: 0 0 7px 3px rgba(0,0,0,0.3);
}

.fixed-size {
    width: 1200px;
    margin: 0 auto;
    padding: 3em 0;
}

/* ----------- GENERAL ----------- */
html {
    scroll-behavior: smooth;
}

.wp-block-button__link.wp-element-button {
	background-color: transparent;
	border: 2px solid var(--white);
	padding: 7px 25px;
	border-radius: 25px;
}

.btn-dark {
	border: 2px solid var(--darkblue);
	color: var(--darkblue);
	border-radius: 25px;
}

.btn-dark .wp-block-button__link.wp-element-button {
	color: var(--darkblue);
}

/* ----------- LISTS ----------- */
ul.wp-block-list {
    font-family: var(--text);
    padding-left: 20px;
}

ul.wp-block-list.list-plus {
	list-style: none;
	padding-left: 0;
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.list-plus li {
	background-color: var(--darkblue);
	line-height: 3em;
	color: var(--white);
	font-size: var(--h3);
	padding-left: 70px;
	position: relative;
}

.list-plus li::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 50%;
	transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url("/wp-content/uploads/2026/03/list_plus.png") no-repeat center / contain;
}

/* ----------- ELEMENTS ----------- */
.container-navigation {
	background-color: var(--darkblue);
	padding: 1em 0;
}

a.wp-block-navigation-item__content {
	font-family: var(--text);
	color: var(--white) !important;
}

.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg {
    stroke: var(--white);
}

.wp-block-navigation-item.link__arrow.wp-block-navigation-link .wp-block-navigation-item__label {
	color: var(--darkblue);
}

.header {
    height: 90vh;
	margin-top: -24px !important;
	box-sizing: content-box;
}

.cover-aufbau {
	margin-top: 0;
	min-height: 70px;
	box-shadow: 0 5px 10px 1px rgba(0,0,0,0.3);
}

.drei-bilder {
	padding-top: 0;
    gap: 0;
}

.drei-bilder .wp-block-column {
    padding: 0;
}

.drei-bilder .wp-block-column img {
    width: 100%;
    height: 100%;
    display: block;
}

.text--double-column {
    column-count: 2;
    column-gap: 50px;
}

.table_oz {
	font-family: var(--text);
}

.table_oz td {
	border: none !important;
	padding: .2em;
}

.table_oz td:first-child {
	width: 130px;
}

.has-logo {
	position: relative;
}

.has-logo::before {
	content: "";
	background-image: url(/wp-content/uploads/2026/03/logo_white.png);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 400px;
	height: 400px;
	position: absolute;
	bottom: -100px;
	right: -5px;
	z-index: 3;
	opacity: 0.2;
}

.has-line {
	border-bottom: 1px solid var(--white);
	width: 350px;
}

.has-line img {
    height: 400px;
    width: auto;
    margin: 0 auto;
}

.wp-block-getwid-post-carousel__slide {
	background: var(--darkblue);
}

#container-footer {
	background-color: var(--darkblue);
}

#container-footer p, #container-footer a, #container-footer ul {
	color: var(--white);
}

#container-footer ul {
	list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 50px; 
}

/* AKKORDEON */
.accordion__spektrum .wp-block-getwid-accordion__header-title, 
.accordion__spektrum--two .wp-block-getwid-accordion__header-title {
    margin-left: 20px;
}

.accordion__spektrum .wp-block-getwid-accordion__header-title::before, 
.accordion__spektrum--two .wp-block-getwid-accordion__header-title::before {
    content: "";
    position: absolute;
    left: 20px;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
}

.accordion__spektrum .wp-block-getwid-accordion__header-wrapper:first-child,
.accordion__spektrum .wp-block-getwid-accordion__header-wrapper,
.accordion__spektrum--two .wp-block-getwid-accordion__header-wrapper:first-child, 
.accordion__spektrum--two .wp-block-getwid-accordion__header-wrapper {
    margin: 15px 0;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 3px solid #cfcfcf;
}

.accordion__spektrum .wp-block-getwid-accordion__header, 
.accordion__spektrum--two .wp-block-getwid-accordion__header {
    padding: .5em 0 1em .75em;
}

.accordion__spektrum .wp-block-getwid-accordion__icon i, 
.accordion__spektrum--two .wp-block-getwid-accordion__icon i {
    padding-right: 20px;
    font-size: 20px;
}

.accordion__spektrum .wp-block-getwid-accordion__content,
.accordion__spektrum--two .wp-block-getwid-accordion__content {
    border: none;
}

/* ----------- ANIMATION ----------- */
#scrollen {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 2%;
    transform: translate(-50%);
}

#scrollen p {
	font-family: var(--text);
    color: var(--white);
    margin-top: 0;
}

#scrollen img {
    display: block;
    margin: 0 auto;
    animation: bounce 1.2s ease-in-out 2;
}

@keyframes bounce {
    0% {
        transform: translateY(0);
    }

    20% {
        transform: translateY(-15px);
    }

    40% {
        transform: translateY(0);
    }

    60% {
        transform: translateY(-10px);
    }

    80% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(0);
    }
}

/* ----------- RESPONSIVE ----------- */
@media only screen and (min-width: 1200px) {
	.accordion__spektrum .ui-accordion,
	.accordion__spektrum--two .ui-accordion {
        position: relative;
    }

    .accordion__spektrum .ui-accordion-header,
	.accordion__spektrum--two .ui-accordion-header {
        width: 35%;
    }

    .accordion__spektrum .ui-accordion-content {
        width: 60%;
        position: absolute;
        top: 150px;
        right: 0;
    }
	
	.accordion__spektrum--two .ui-accordion-content {
        width: 60%;
        position: absolute;
        top: 500px;
        right: 0;
    }

    .accordion__spektrum .fa-angle-up:before,
	.accordion__spektrum--two .fa-angle-up:before {
        content: ">";
    }

    .accordion__spektrum .fa-angle-down:before,
	.accordion__spektrum--two .fa-angle-down:before {
        content: "<";
    }
}

@media only screen and (max-width: 1200px) {
	.fixed-size {
    	width: 960px;
	}
	
	.nav-item--right {
		display: none;
	}
	
	.nav-item--middle {
    	display: flex;
    	justify-content: center;
	}
	
	.header--partner .partner-right img {
	bottom: -305px;
	}
}

@media only screen and (max-width: 960px) {
	.fixed-size {
    	width: 600px;
	}
	
	.header--partner {
		height: 70vh;
	}
	
	.header--partner .wp-block-cover__inner-container .wp-block-columns {
		flex-direction: column;
		margin-bottom: -100px;
	}
	
	.header--partner .partner-right img {
		position: relative;
		width: 500px;
		height: auto;
		bottom: unset;
		display: block;
		margin: 0 auto;
	}
	
	.header--partner + #scrollen {
    	bottom: 15%;
	}
	
	.has-line {
    	width: 250px;
	}
	
	.has-line img {
    	height: 300px;
	}
	
	#container-footer .footer__social {
		display: flex;
		justify-content: center;
	}
	
	.container-footer__inner, .footer__links {
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}
	
	#container-footer ul {
    	display: block;
		text-align: center;
	}
}

@media only screen and (max-width: 781px) {
	.fixed-size {
    	width: 90%;
	}
	
	.header {
		height: 50vh;
	}
	
	.header--partner + #scrollen {
    	bottom: 5%;
	}
	
	#scrollen {
		display: none;
	}
	
	.einstiegspunkte img {
		display: block;
		margin: 0 auto;
	}
	
	.text--double-column {
    	column-count: 1;
	}
}

@media only screen and (max-width: 600px) {
	nav.is-responsive,
    .wp-block-navigation__responsive-container-close {
        position: absolute;
        top: 20px;
        right: 20px;
    }

    .wp-block-navigation__responsive-container-content {
        padding: 100px 50px;
    }

    .inner-navigation {
        padding-bottom: 0;
    }
	
	.wp-block-navigation__responsive-container-open svg {
    	fill: var(--white);
	}
	
	.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg {
    	stroke: var(--darkblue);
	}
	
	a.wp-block-navigation-item__content {
    	color: var(--darkblue) !important;
	}
	
	.accordion__spektrum .wp-block-getwid-accordion__header-title,
	.accordion__spektrum--two .wp-block-getwid-accordion__header-title{
        margin-left: 40px;
    }
}

@media only screen and (max-width: 480px) {
	html {
		hyphens: auto;
	}
	
	.header--partner {
		height: 50vh;
	}
}