/*
Theme Name: Ballin an Bord
Author: BRENNWERT – Design und Kommunikation mit Zündung
*/

/* Variablen */

html {

	/* Farben */
	--blue: #133761;
	--green: #d4db00;
	--red: #e50046;

	--light-blue: #b8c3d0;
	--medium-blue: #899bb0;
	--dark-blue: #425f81;

	--light-grey: #f2f2f2;
	--medium-grey: #d9d9d9;
	--dark-grey: #9e9e9c;

	/* Abstände und Längen */
	--large-gap: 100px;
	--medium-gap: 75px;
	--small-gap: 50px;

	--header-height-full: 200px;
	--header-height-reduced: 100px;
	--header-height: var(--header-height-full);

	--column-gap: 75px;
	--full-height: 100vh;
	--max-width: 1600px;
	--scrollbar-width: 15px;
	--input-height: var(--small-gap);
	--checkbox-size: 35px;
	--outer-width: calc((100vw - var(--max-width) - var(--scrollbar-width)) / 2);
	--lightbox-inset: 150px;
	--sidebar-inset: var(--small-gap);

	/* Aussehen */
	--line-style: solid 2px var(--blue);
	--popup-background: rgba(19,55,97,0.9);

	/* Schrift */
	--large-text-size: 4rem;
	--large-line-height: 1.1em;

	--medium-text-size: 2.4rem;
	--medium-line-height: 1.1em;

	--medium-small-text-size: 1.8rem;
	--medium-small-line-height: 1.2em;

	--small-text-size: 1.3rem;
	--small-line-height: 1.5em;
}

/* Mehr Kontrast */

.more-contrast {
	--blue: black;
	--green: white;
	--red: black;

	--light-blue: white;
	--medium-blue: white;
	--dark-blue: black;

	--light-grey: white;
	--medium-grey: white;
	--dark-grey: black;

	--popup-background: rgba(0,0,0,0.8);
}

.more-contrast .more-contrast-adjust {
	filter: grayscale(100%) contrast(200%);
}

.more-contrast .more-contrast-white {
	filter: grayscale(100%) brightness(100);
}

/* Fonts */

@font-face {
	font-family: 'HK Grotesk Regular';
	src: url('/wp-content/themes/ballin/fonts/hk-grotesk-regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk Bold';
	src: url('/wp-content/themes/ballin/fonts/hk-grotesk-bold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'HK Grotesk Extrabold';
	src: url('/wp-content/themes/ballin/fonts/hk-grotesk-extrabold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/* Basisstruktur */

*, *::before, *::after {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	max-width: 100vw;
	width: 100%;
}

body {
	padding-top: var(--header-height);
	min-height: calc(var(--full-height) + 1px);
}

.max-width {
	width: 100%;
	max-width: var(--max-width);
	position: relative;
	margin: 0 auto;
}

#header + .max-width {
	min-height: var(--full-height);
}

body > .max-width > .cols {
	grid-template-columns: 61% 1fr;
}

body > .max-width > .cols > .col {
	grid-column: auto / span 1;
}

/* Spalten */

.cols {
	margin: var(--large-gap) 0;
	display: grid;
	grid-gap: var(--column-gap);
	grid-template-columns: repeat(6, 1fr);
}

.col {
	position: relative;
	max-width: 100%;
	grid-row: 1;
}

.col-span-1 {grid-column: auto / span 1;}
.col-span-2 {grid-column: auto / span 2;}
.col-span-3 {grid-column: auto / span 3;}
.col-span-4 {grid-column: auto / span 4;}
.col-span-5 {grid-column: auto / span 5;}
.col-span-6 {grid-column: auto / span 6;}

.col-start-1 {grid-column-start: 1;}
.col-start-2 {grid-column-start: 2;}
.col-start-3 {grid-column-start: 3;}
.col-start-4 {grid-column-start: 4;}
.col-start-5 {grid-column-start: 5;}
.col-start-6 {grid-column-start: 6;}

.shortcode-cols {
	display: flex;
}

.shortcode-cols > :not(.shortcode-col), .shortcode-col > p:empty {
	display: none;
}

.shortcode-col {
	flex-shrink: 1;
	max-width: 100%;
	width: 100%;
}

.shortcode-col:not(:last-of-type) {
	margin-right: var(--column-gap);
}

.shortcode-col > p > img, .shortcode-col > p > a > img {
	width: 100%;
	height: auto;
}

/* Inhaltsblock */

.content-block > *:first-child, 
.content-block > .structurally-transparent:first-child > *:first-child, 
.content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child, 
.content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child  
{margin-top: 0 !important;}

.content-block > *:last-child, 
.content-block > .structurally-transparent:last-child > *:last-child, 
.content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child, 
.content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child 
.content-block.with-init-script > *:nth-last-child(2) 
{margin-bottom: 0 !important;}

@media (min-width: 901px) {

	.weak-content-block > *:first-child, 
	.weak-content-block > .structurally-transparent:first-child > *:first-child, 
	.weak-content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child 
	{margin-top: 0 !important;}

	.weak-content-block > *:last-child, 
	.weak-content-block > .structurally-transparent:last-child > *:last-child, 
	.weak-content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child, 
	.weak-content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child 
	.weak-content-block.with-init-script > *:nth-last-child(2) 
	{margin-bottom: 0 !important;}

}

/* Linienanordnung */

.line {
	display: flex;
	align-items: center;
}

.line.start {
	justify-content: flex-start;
}

.line.end {
	justify-content: flex-end;
}

:is(.line.start, .line.end) > *:not(:last-child) {
	margin-right: var(--small-gap);
}

:is(.line.start.small-gap, .line.end.small-gap) > *:not(:last-child) {
	margin-right: 15px;
}

.line.distribute {
	justify-content: space-between;
	width: 100%;
}

@media (min-width: 901px) {

	.line.distribute > * {
		margin: 0 !important;
	}

	:is(.line.start, .line.end) > * {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		margin-left: 0 !important;
	}

}

.line.align-start {
	align-items: flex-start;
}

.line.align-end {
	align-items: flex-end;
}

/* Headlines */

h1, h2, h3, .h1, .h2, .h3, .job-posttype .col-span-4 .html-content u {
	font-family: 'HK Grotesk Extrabold';
	font-weight: normal;
}

h1, .h1 {
	font-size: var(--large-text-size);
	line-height: var(--large-line-height);
	margin: var(--medium-gap) 0;
}

h2, .h2 {
	font-size: var(--medium-text-size);
	line-height: var(--medium-line-height);
	margin: var(--medium-gap) 0;
}

h3, .h3, .job-posttype .col-span-4 .html-content u {
	font-size: var(--medium-small-text-size);
	line-height: var(--medium-small-line-height);
	margin: var(--small-gap) 0;
}

.headline-with-subhead {
	margin: 35px 0;
}

.headline-with-subhead > *:first-child {
	margin-bottom: 5px;
}

.headline-with-subhead > *:last-child {
	margin-top: 5px;
}

/* Text und Textauszeichnungen */

* {
	color: var(--blue);
}

p, .p {
	font-family: 'HK Grotesk Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: 25px 0;
}

strong, b {
	font-family: 'HK Grotesk Bold';
	font-weight: normal;
}

::selection {
	background-color: var(--green);
	color: var(--blue);
}

.not-selectable {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.no-highlighted-selection::selection {
	background-color: transparent;
	color: inherit;
}

body:not(.job-posttype) .completely-bold-paragraph {
	margin-bottom: 0;
}

body:not(.job-posttype) .completely-bold-paragraph + :is(ul, ol) {
	margin-top: 0;
}

body:not(.job-posttype) .completely-bold-paragraph + table {
	margin-top: 20px;
}

/* Aufzählung */

ul, ol {
	font-family: 'HK Grotesk Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: 25px 0;
}

ul {
	list-style: none;
	padding-left: 15px;
	position: relative;
}

ul li::before {
	content: url('/wp-content/themes/ballin/img/bullet-point.svg');
	display: inline-block;
	width: 5px;
	height: 10px;
	position: absolute;
	left: 0;
}

.more-contrast ul li::before {
	filter: brightness(0);
}

ol {
	padding-left: 25px;
}

/* Links */

a {
	color: inherit !important;
	text-decoration: none;
}

.show-links a, .html-content a, .underline {
	text-decoration: underline;
}

[href^="tel:"] {
	pointer-events: none;
}

:target {
	scroll-margin-top: calc(var(--header-height-reduced) + var(--large-gap) * 1.25);
}

/* Bilder */

figure {
	margin: var(--small-gap) 0;
}

.img {
	position: relative;
	width: 100%;
	background-color: var(--light-grey);
}

.img > img {
	width: 100%;
	display: block;
	object-position: center;
	object-fit: cover;
}

.img.natural-size > img {
	height: auto;
}

.img.fitting-size > img, .img.aspect-ratio > img {
	position: absolute;
	height: 100%;
}

.aspect-ratio::after {
	content: '';
	display: block;
}

.aspect-ratio-2-1::after {padding-bottom: 50%;}
.aspect-ratio-3-2::after {padding-bottom: 66%;}
.aspect-ratio-4-3::after {padding-bottom: 75%;}
.aspect-ratio-1-1::after {padding-bottom: 100%;}
.aspect-ratio-3-4::after {padding-bottom: 133%;}
.aspect-ratio-2-3::after {padding-bottom: 150%;}
.aspect-ratio-1-2::after {padding-bottom: 200%;}

.img.fitting-size {
	height: 100%;
}

.lazy {
	opacity: 0;
}

.loaded {
	opacity: 1;
}

figcaption {
	font-family: 'HK Grotesk Bold';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: 25px 0 0;
}

.more-contrast img {
	filter: grayscale(100%);
}

.shade-img-corners .img::before, :is(.post-posttype, .angebote-posttype, .job-posttype) #header + .max-width > .cols > .col-span-4 > .column-padding > .img::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	box-shadow: inset 0 0 var(--small-gap) rgba(0,0,0,0.1);
	z-index: 5;
}

/* Icons */

.icon {
	width: var(--input-height);
	height: var(--input-height);
	cursor: pointer;
	background-color: var(--blue);
	position: relative;
	flex-grow: 0;
	flex-shrink: 0;
}

.icon:hover, .icon.always-highlighted {
	background-color: var(--green);
}

.icon img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
	filter: grayscale(100%) brightness(100);
}

:is(.icon:hover, .icon.always-highlighted) img {
	filter: none;
}

.more-contrast :is(.icon:hover, .icon.always-highlighted) img {
	filter: grayscale(100%) brightness(0);
}

.inline-text-icon {
	height: 15px !important;
	width: auto !important;
	display: inline !important;
	margin-left: 5px;
	position: relative;
	top: 2px;
}

.blue-background .inline-text-icon {
	filter: grayscale(100%) brightness(100);
}

/* Weitere Strukturelemente */

.blue-background {
	background-color: var(--blue);
}

.blue-background * {
	color: white;
}

.negative-margin {
	margin-top: var(--negative-margin, 0);
}

.auto-grid {
	display: grid;
	grid-template-columns: max-content max-content;
	grid-column-gap: var(--small-gap);
	grid-row-gap: calc(var(--small-gap) / 2);
	margin: var(--medium-gap) 0;
}

@media (min-width: 901px) {

	.auto-grid > * {
		margin: 0 !important;
		width: min-content;
	}

}

/* Gestapelter Inhalt */

.stacked-content {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}

.stacked-content-layer {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	position: relative;
}

.stacked-content-layer > div {
	position: relative;
	height: 100%;
	width: 100%;
	overflow: hidden;
}

.stacked-content-layer.inflating > div {
	position: relative;
}

/* Trenner */

hr {
	border: none;
	border-bottom: var(--line-style);
	margin: var(--medium-gap) 0;
}

.blue-background hr {
	border-color: white;
}

/* Tabellen */

table {
	font-family: 'HK Grotesk Regular';
	margin: var(--small-gap) 0;
	border-collapse: collapse;
	width: 100%;
}

td, th {
	padding: 20px;
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	vertical-align: top;
}

:is(td, th):not(tr:first-child :is(td, th)) {
	border-top: var(--line-style);
}

thead :is(td, th) {
	font-family: 'HK Grotesk Bold';
}

:is(td, th):first-child {
	padding-left: 0;
}

:is(td, th):last-child {
	padding-right: 0;
}

tbody > *:first-child > * {
	padding-top: 0;
}

tbody > *:last-child > * {
	padding-bottom: 0;
}

/* Buttons */

.button {
	margin: var(--medium-gap) 0;
}

.button a {
	text-decoration: none !important;
	height: 100%;
	display: block;
}

button, input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: var(--blue);
	border: none;
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	cursor: pointer;
	color: white;
	border-radius: 0;
	padding: calc((var(--input-height) - var(--small-line-height)) * 0.4) 0.75em calc((var(--input-height) - var(--small-line-height)) * 0.6);
	font-family: 'HK Grotesk Bold';
	text-align: left;
}

button:hover, input[type="submit"]:hover {
	background-color: var(--green);
	color: var(--blue);
}

.more-contrast :is(button, input[type="submit"]) {
	background-color: black !important;
	color: white !important;
}

input[type="submit"].min-width {
	width: min-content;
	white-space: nowrap;
}

button {
	margin: 0;
}

button.full-width {
	width: 100%;
	text-align: center;
}

button.highlighted {
	background-color: var(--red);
}

button.highlighted:hover {
	color: var(--blue);
	background-color: var(--green);
}

.button.small {
	margin: var(--small-gap) 0;
}

.button.small button {
	padding: 0 0.4em 0.1em;
}

.button:not(.small) + .button:not(.small) {
	margin-top: calc(-0.75 * var(--medium-gap));
}

.button.small + .button.small {
	margin-top: calc(-0.65 * var(--small-gap));
}

button span {
	color: inherit !important;
}

button img, .more-contrast button:hover img {
	height: 15px;
	width: auto;
	filter: invert(100%) grayscale(100%) brightness(100);
}

button:hover img {
	filter: none
}

.blue-background button {
	background-color: white;
	color: var(--blue);
}

.blue-background button img {
	filter: none;
}

.more-contrast .blue-background button img {
	filter: brightness(0);
}

.more-contrast .blue-background :is(button, input[type="submit"]) {
	background-color: white !important;
	color: black !important;
}

.green-background button:hover {
	background-color: var(--blue);
	color: white;
}

.green-background button:hover img {
	filter: grayscale(100%) brightness(100);
}

.more {
	font-family: 'HK Grotesk Bold';
	cursor: pointer;
	margin-top: var(--small-gap);
}

.more img {
	height: 15px;
	width: auto;
	margin-left: 10px;
	position: relative;
	top: 2px;
}

.auto-grid button {
	white-space: nowrap;
}

/* Formulare */

.input {
	margin: 15px 0;
	position: relative;
}

input, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	border: var(--line-style);
	width: 100%;
	height: var(--input-height);
	padding: 0 0.5em;
	border-radius: 0;
	background-color: transparent;
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	font-family: 'HK Grotesk Regular';
}

option {
	color: black !important;
	font-family: 'HK Grotesk Regular' !important;
}

.input-icon {
	position: absolute;
	top: 0;
	right: 0;
	pointer-events: none;
	height: var(--input-height);
	width: var(--input-height);
	background-size: cover;
	border: solid 2px transparent;
	background-color: white;
	background-clip: padding-box;
}

:is(.sidebar, .input-group) .input-icon {
	background-color: var(--light-grey);
}

.blue-background .input-icon {
	background-color: var(--blue);
}

.green-background .input-icon {
	background-color: var(--green);
}

select + .input-icon {
	background-image: url('/wp-content/themes/ballin/img/dropdown.svg');
}

input[type="search"] + .input-icon {
	background-image: url('/wp-content/themes/ballin/img/search.svg');
}

.more-contrast .input-icon {
	filter: brightness(0);
}

textarea {
	padding-top: 5px;
	height: 100px;
	resize: none;
}

.checkbox-input {
	min-height: var(--checkbox-size);
	margin: var(--small-gap) 0;
}

.checkbox-input label span {
	padding-left: calc(var(--checkbox-size) * 1.5);
	display: block;
}

input[type="checkbox"] {
	width: var(--checkbox-size);
	height: var(--checkbox-size);
	cursor: pointer;
	position: absolute;
	border: var(--line-style);
	padding: 0;
}

input[type="checkbox"]:checked {
	background-image: url('/wp-content/themes/ballin/img/checkbox.svg');
}

.more-contrast input[type="checkbox"]:checked {
	filter: brightness(0);
}

::placeholder {
	opacity: 1;
	color: var(--medium-blue);
}

.input.placeholder-shown :is(input, select, textarea) {
	color: var(--medium-blue);
}

.more-contrast ::placeholder, .more-contrast .input :is(input, select, textarea) {
	color: black;
}

:invalid {
	box-shadow: none;
}

:focus {
    outline: none !important;
}

:-webkit-autofill {
	background-color: transparent !important;
	box-shadow: none;
}

.grecaptcha-badge {
	display: none;
}

label {
	font-family: 'HK Grotesk Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
}

.toggle-input {
	cursor: pointer;
}

.toggle-input p {
	margin: 0;
	position: relative;
	top: -3px;
	color: var(--blue);
	padding: 0 10px;
	font-family: 'HK Grotesk Bold';
}

.toggle-input[data-value="false"] p:last-child, .toggle-input[data-value="true"] p:first-child {
	display: none;
}

.toggle-input p:first-child::before, .toggle-input p:last-child::after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: var(--blue);
	border-radius: 50%;
}

.toggle-input p:first-child::before {
	margin-right: 5px;
}

.toggle-input p:last-child::after {
	margin-left: 5px;
}

.input-label {
	font-family: 'HK Grotesk Bold';
	margin-bottom: -10px;
	display: block;
}

/* Input-Gruppe */

.input-group {
	background-color: var(--light-grey);
	width: calc(100% + var(--small-gap));
	position: relative;
	left: calc(var(--small-gap) / -2);
	padding: calc(var(--small-gap) / 2);
	border: none;
	margin: calc(var(--small-gap) / 2) 0;
}

legend {
	font-family: 'HK Grotesk Bold';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	background-color: var(--blue);
	color: white;
	padding: 0 10px 5px;
}

/* Formular-Spalten */

.form-cols {
	display: grid;
	grid-template-columns: var(--form-cols);
	grid-column-gap: var(--small-gap);
	margin: 5px 0;
}

/* Wiederhol-Formularfelder */

.repeater-form-fields > .button {
	margin: 25px 0 var(--small-gap);
}

.repeater-form-fields-child {
	position: relative;
}

.repeater-form-fields-remove-child {
	position: absolute;
	right: 0;
	top: 0;
}

.repeater-form-fields-child:first-child .repeater-form-fields-remove-child {
	display: none;
}

.repeater-form-fields {
	counter-reset: repeater-form-fields-counter;
}

.repeater-form-fields .input-group > legend {
	counter-increment: repeater-form-fields-counter;
}

.repeater-form-fields .input-group > legend::after {
	content: ' ' counter(repeater-form-fields-counter);
}

/* Navigation */

#header {
	height: var(--header-height);
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 50;
}

.minimize-header {
	--header-height: var(--header-height-reduced);
}

#header .max-width {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

#meta-nav * {
	font-size: 1.1rem;
}

.meta-nav-input {
	background-color: var(--medium-blue);
	height: 25px;
	border-radius: 12.5px;
	color: var(--blue) !important;
	position: relative;
	top: 3px;
}

[type="search"].meta-nav-input {
	border: none;
	width: 150px;
	font-family: 'HK Grotesk Bold';
	padding: 0 10px;
	padding-bottom: 3px;
}

[type="search"].meta-nav-input + img {
	width: 25px;
	position: relative;
	top: 3px;
	cursor: pointer;
}

.font-size-adjust {
	cursor: pointer;
}

#main-nav {
	transform: translateY(0);
}

#main-nav p {
	font-family: 'HK Grotesk Bold';
	position: relative;
}

#header .current {
	color: var(--green);
}

#work-label {
	position: absolute;
	width: 125px;
	height: auto;
	left: 50%;
	transform: translateY(-100%);
}

.minimize-header #meta-nav, .minimize-header #work-label {
	opacity: 0;
	pointer-events: none;
}

.minimize-header #main-nav {
	transform: translateY(-100%);
}

#mobile-nav-trigger {
	display: none;
}

#mobile-nav {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 90;
	display: flex;
	align-items: center;
	justify-content: center;
}

#mobile-nav * {
	text-align: center;
}

#mobile-nav .h3 {
	margin: 35px 0;
}

#mobile-nav .current {
	color: var(--green);
}

/* Slider */

.slider {
	overflow: hidden;
	position: relative;
	height: calc(var(--full-height) - var(--header-height-full) - var(--medium-gap));
}

.slider-img-1, .slider-img-2 {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	display: block;
	transition: all 0.5s ease;
	z-index: 5;
	object-fit: cover;
	object-position: center;
}

.slider[data-state="1"] .slider-img-2 {
	opacity: 0;
}

.slider-logo {
	position: absolute;
	left: 0;
	top: 0;
	width: 40%;
	z-index: 10;
}

.slider-nav {
	position: absolute;
	left: var(--outer-width);
	bottom: var(--small-gap);
	z-index: 10;
}

.slider-nav > div {
	width: 25px;
	height: 25px;
	background-color: white;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.slider-nav > div > div {
	width: 10px;
	height: 10px;
	background-color: white;
	border-radius: 50%;
}

.slider-nav > .current div {
	background-color: var(--blue);
}

.slider-title {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: var(--large-gap) var(--large-gap) var(--small-gap) calc(var(--large-gap) * 1.75);
	align-items: flex-end;
	z-index: 10;
}

.slider-title :is(h1, .h1) {
	margin: 0;
}

.slider-title img {
	width: calc(var(--large-gap) * 1.25);
	height: calc(var(--large-gap) * 1.25);
	border-radius: 50%;
	background-color: var(--blue);
}

.slider-title:not(.with-slider-video) :is(h1, .h1) {
	margin-right: 0 !important;
}

.slider-title:not(.with-slider-video) img {
	display: none;
}

.slider-title::before {
	content: '';
	display: block;
	width: 150%;
	height: 150%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: var(--green);
	z-index: -1;
	border-top-left-radius: calc(var(--large-gap) * 3);
	transform-origin: 0 0;
	transform: rotate(-7deg);
}

.with-slider-action {
	cursor: pointer;
}

.slider-text {
	max-width: 600px;
	margin-bottom: 0;
}

.slider-text:empty {
	display: none;
}

.slider-title-top {
	top: 0;
	bottom: auto;
	padding-bottom: calc(var(--large-gap) * 1.5);
	padding-top: var(--medium-gap);
	padding-left: calc(var(--large-gap) * 1.5);
}

.slider-title-top img {
	display: none;
}

.slider-title.slider-title-top :is(h1, .h1) {
	margin-right: 0;
	font-size: var(--medium-text-size);
	line-height: var(--medium-line-height);
}

.slider-title button {
	margin-top: 35px;
}

.slider-title-top .slider-text {
	max-width: 400px;
}

.slider-title:not(.slider-title-top) button, .slider-title button:empty {
	display: none;
}

.slider-title-top::before {
	top: auto;
	bottom: 0;
	border-bottom-left-radius: calc(var(--large-gap) * 3);
	transform-origin: 0 100%;
	height: 100%;
}

.slider button:hover {
	background-color: var(--blue);
	color: white;
}

/* Sidebar */

.sidebar {
	background-color: var(--light-grey);
	position: relative;
}

.sidebar::before {
	content: '';
	display: block;
	background-color: inherit;
	position: fixed;
	z-index: -1;
	height: var(--full-height);
	top: 0;
	width: calc(100% + var(--outer-width));
}

.rounded-bottom::before {
	mask-image: linear-gradient(#000, #000), url('/wp-content/themes/ballin/img/rounded.svg');
	-webkit-mask-image: linear-gradient(#000, #000), url('/wp-content/themes/ballin/img/rounded.svg');
	mask-position: 0 0, bottom -1px left -1px;
	-webkit-mask-position: 0 0, bottom -1px left -1px;
	mask-size: calc(100% + 2px);
	-webkit-mask-size: calc(100% + 2px);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-composite: subtract;
	-webkit-mask-composite: source-out;
}

.sidebar-padding {
	padding: 0 0 0 var(--sidebar-inset);
}

.foundation-template .sidebar::after {
	content: '';
	display: block;
	position: absolute;
	width: 2px;
	height: 100%;
	background-color: var(--light-grey);
	top: 0;
	z-index: 10;
}

.sidebar-smartphone {
	display: none;
}

/* Spalten-Innenabstand */

.column-padding-left {
	padding-left: var(--small-gap);
}

.column-padding-right {
	padding-right: var(--small-gap);
}

/* Ausklapper-Formularfelder */

.expanding-inputs {
	display: contents;
}

.expanding-inputs[disabled] {
	display: none;
}

/* Neuigkeiten */

.news {
	margin: var(--medium-gap) 0;
}

.news-overview {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: var(--column-gap);
}

.news-article {
	display: block;
}

.news-article p {
	margin-bottom: 0;
}

.news-article h3 {
	margin-top: 10px;
}

.news .button {
	margin-bottom: 0;
}

/* Auszeichnungen und Qualitätssicherung */

.awards {
	margin: calc(var(--large-gap) * 1.25) 0;
	display: grid;
	grid-template-columns: 2fr 2px 1fr;
	grid-gap: var(--large-gap);
}

.awards div div {
	display: grid;
	grid-column-gap: var(--large-gap);
	grid-row-gap: var(--small-gap);
}

.awards div:first-child div {
	grid-template-columns: 1fr 1fr;
}

.awards div:last-child div {
	grid-template-columns: 1fr;
}

.awards span {
	background-color: var(--blue);
}

.awards p {
	margin: 0 0 var(--medium-gap);
}

.awards img {
	width: 100%;
	height: auto;
	transform: translateY(var(--vertical-offset));
}

/* Angebots-Auszeichnungen */

.offer-awards {
	margin: var(--large-gap) 0;
}

.offer-award {
	margin: var(--medium-gap) 0;
	display: grid;
	grid-template-columns: 200px 1fr;
	grid-gap: var(--medium-gap);
}

.offer-award img {
	display: block;
	width: 100%;
	height: auto;
}

.offer-award p {
	margin: 0;
}

/* Teaser */

.teaser {
	display: block;
	margin: var(--medium-gap) 0;
	position: relative;
	width: 100%;
}

.teaser :is(p, h2) {
	padding-left: var(--sidebar-inset);
}

.teaser p {
	color: var(--red);
	margin: 25px 0 10px;
}

.teaser h2 {
	margin: 0;
	-webkit-hyphens: manual;
    -ms-hyphens: manual;
    hyphens: manual;
}

.teaser-illustration {
	position: absolute;
	width: 30%;
	height: auto;
	display: block;
	right: 5%;
	top: calc(var(--width, 0) / 2);
	transform: translateY(-66%);
	z-index: 10;
}

.only-illustration-teaser {
	background-color: var(--medium-grey);
	padding: var(--small-gap) 0;
}

.more-contrast .only-illustration-teaser {
	outline: solid 2px black;
}

.only-illustration-teaser p {
	font-family: 'HK Grotesk Bold';
	color: var(--blue);
	margin: 0 0 25px;
	line-height: 1.2em;
}

.only-illustration-teaser h2 {
	color: var(--red);
}

.only-illustration-teaser :is(p, h2) {
	padding-right: calc(var(--sidebar-inset) * 3);
}

.only-illustration-teaser .teaser-illustration {
	width: calc(var(--sidebar-inset) * 3.25);
	right: calc(-0.75 * var(--sidebar-inset));
	top: 50%;
	transform: translateY(-50%);
}

.history-teaser {
	padding-bottom: calc(var(--large-gap) * 1.25);
}

.history-teaser::before {
	content: '';
	display: block;
	background-color: var(--blue);
	width: 100%;
	height: calc(100% - var(--width, 0) * 0.4);
	position: absolute;
	bottom: 0;
}

.history-teaser .img {
	left: var(--sidebar-inset);
	width: calc(100% - var(--sidebar-inset) / 2);
	background-color: transparent;
}

.history-teaser .img::before {
	content: none;
}

.history-teaser :is(.h3, h2) {
	z-index: 5;
	position: relative;
}

.history-teaser p {
	margin-top: var(--small-gap);
}

.history-teaser h2 {
	color: white;
	padding-right: var(--sidebar-inset);
}

.more-contrast .history-teaser * {
	color: white;
}

/* Zitate */

.quotes {
	margin: var(--medium-gap) 0;
	position: relative;
	padding: var(--medium-gap) 0 calc(var(--large-gap) * 1.25);
	overflow: hidden;
	background-color: transparent !important;
}

.single-quote-without-img {
	padding: var(--small-gap) 0 var(--medium-gap);
}

.quotes::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
}

.quotes.blue-background::before {
	background-color: var(--blue);
}

.quotes.green-background::before {
	background-color: var(--green);
}

.quotes blockquote {
	z-index: 5;
	position: relative;
	margin: var(--small-gap) 0;
	padding-right: calc(var(--sidebar-inset) * 0.75);
	display: grid;
	grid-template-columns: 135px 1fr;
	grid-gap: 30px;
}

.quotes .img {
	border-radius: 50%;
	overflow: hidden;
	width: calc(100% + 20px);
	left: -20px;
	background-color: transparent;
}

.quotes .without-img {
	grid-template-columns: 1fr;
	padding-left: var(--sidebar-inset);
}

.quotes .without-img > div:first-child {
	display: none;
}

.quotes:not(.green-background) p {
	color: var(--green);
}

cite {
	font-family: 'HK Grotesk Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	font-style: normal;
	margin: 25px 0;
}

/* Kontakt */

.contact {
	margin: var(--medium-gap) 0;
	position: relative;
	padding: var(--medium-gap) 0 calc(var(--large-gap) * 1.25);
	overflow: hidden;
	display: grid;
	grid-template-columns: 135px 1fr;
	grid-gap: 30px;
	background-color: transparent !important;
}

.contact::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
}

.contact.blue-background::before {
	background-color: var(--blue);
}

.contact.green-background::before {
	background-color: var(--green);
}

.contact > div {
	z-index: 5;
	position: relative;
}

.contact > div:last-child {
	padding-right: var(--sidebar-inset);
}

.contact .img {
	border-radius: 50%;
	overflow: hidden;
	width: calc(100% + 20px);
	left: -20px;
	background-color: transparent;
}

.contact.without-img .img {
	visibility: hidden;
}

#contact-popup-pos {
	margin-top: -25px;
}

/* Kontakte */

.contacts {
	margin: var(--small-gap) 0;
}

.contacts-entry {
	background-color: var(--light-grey);
	padding: var(--small-gap) var(--small-gap) var(--small-gap) 0;
	display: grid;
	grid-template-columns: 150px 1fr 2px 250px;
	grid-gap: var(--small-gap);
	margin: 25px 0;
	position: relative;
}

.contacts-entry.blue-background {
	background-color: var(--blue);
}

.more-contrast .contacts-entry {
	border: var(--line-style);
	padding-left: var(--small-gap);
}

.contacts-entry::after {
	content: '';
	display: block;
	height: 100%;
	width: var(--outer-width);
	left: calc(-1 * var(--outer-width));
	top: 0;
	background-color: inherit;
	position: absolute;
}

.more-contrast .contacts-entry::after {
	display: none;
}

.contacts-entry .img {
	border-radius: 50%;
	overflow: hidden;
	align-self: center;
}

.contacts-entry.without-img .img {
	visibility: hidden;
}

.contacts-entry h2 {
	margin-bottom: 0;
}

.contacts-entry:not(.blue-background) h2 {
	color: var(--red);
}

.contacts-entry-pos {
	margin: 0;
	font-family: 'HK Grotesk Bold';
}

.contacts-entry-divider {
	background-color: var(--blue);
}

.contacts-entry.blue-background .contacts-entry-divider {
	background-color: white;
}

.contacts-entry .button {
	margin: 25px 0;
}

.contacts-entry a img {
	height: 15px;
	width: auto;
	margin-left: 10px;
}

.contacts-entry.blue-background a img {
	filter: grayscale(100%) brightness(100);
}

/* Kontakte-Filter */

.contacts-filter-terms {
	margin: var(--small-gap) 0;
}

.contacts-filter-terms p {
	cursor: pointer;
	margin: 15px 0;
	padding-left: 30px;
	position: relative;
}

.contacts-filter-top-term img {
	position: absolute;
	display: block;
	width: 16px;
	height: 15px;
	left: 0;
	top: 0.5em;
}

.contacts-filter-top-term strong, .contacts-filter-sub-terms span {
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	position: relative;
	padding: 0 7px 2px;
	left: -7px;
}

.contacts-filter-sub-terms {
	margin-bottom: 35px;
}

.contacts-filter-sub-terms .selected span, .contacts-filter-top-term > p.selected strong {
	background-color: var(--red);
	color: white;
}

/* Erstkontakt */

.offer-first-contact, .extra-offer {
	padding: var(--small-gap) var(--small-gap) var(--small-gap) 0;
	position: relative;
	margin: var(--large-gap) 0;
}

.offer-first-contact::after, .extra-offer::after {
	content: '';
	display: block;
	height: 100%;
	width: calc(var(--outer-width) + 10px);
	transform: translateX(-100%);
	position: absolute;
	top: 0;
	background-color: inherit;
	z-index: -1;
	left: 5px;
}

.offer-first-contact > .html-content {
	margin-bottom: var(--small-gap);
}

.offer-first-contact > .html-content strong, .extra-offer .html-content strong {
	color: var(--green);
}

.offer-first-contact-cols {
	display: flex;
}

.offer-first-contact-cols > * {
	margin: 0 !important;
}

.offer-first-contact-cols > *:not(:last-child) {
	margin-right: var(--medium-gap) !important;
}

.offer-first-contact h2 {
	font-family: 'HK Grotesk Bold';
	color: var(--green);
	margin-bottom: var(--small-gap);
}

/* Adresse und Kontakt */

.address-and-contact {
	margin: var(--medium-gap) 0;
}

.address-and-contact h2 {
	font-family: 'HK Grotesk Bold';
	color: var(--red);
}

.address-and-contact .line {
	margin-top: var(--small-gap);
}

.further-contact {
	margin: -30px 0 0;
}

.further-contact-headline, .further-contact-headline > strong {
	color: var(--red);
}

/* Telefon / Fax */

.tel {
	margin: 25px 0;
}

.tel > p {
	font-family: 'HK Grotesk Bold';
	margin: 0;
}

.tel > a > p {
	font-size: var(--medium-small-text-size);
	line-height: var(--medium-small-line-height);
	margin: 0;
}

/* Termine */

.dates h2 {
	margin-bottom: var(--small-gap);
}

.dates [onclick] {
	cursor: pointer;
}

.dates > p.past {
	display: none !important;
}

/* Downloads */

.downloads h2 {
	margin-bottom: var(--small-gap);
}

.downloads .button:first-of-type {
	margin-top: var(--small-gap);
}

/* Zurück-Link */

.back-link {
	cursor: pointer;
	font-family: 'HK Grotesk Bold';
	margin-bottom: calc(-1 * var(--small-gap));
}

.back-link img {
	height: 15px;
	width: auto;
	margin-right: 5px;
	position: relative;
	top: 2px;
}

/* Formattierter Text */

.html-content {
	margin: var(--medium-gap) 0;
}

.initial {
	font-size: 525%;
	float: left;
	margin: 0 0.2ch 0 0;
	height: 1.2ch;
	transform: translateY(42%);
	font-family: 'HK Grotesk Extrabold';
}

.initial.less-indent {
	margin-left: -0.1ch;
}

.html-content > p > img, .html-content .wp-caption, .html-content .wp-caption > img {
	width: 100%;
	height: auto;
	display: block;
}

.wp-caption-text {
	margin-top: calc(var(--small-gap) / 1.5);
}

.html-content h2 {
	margin: 55px 0 35px;
}

.html-content h3 {
	margin: 40px 0 -15px;
}

.html-content :is(p, ul, ol) {
	-webkit-hyphens: manual;
    -ms-hyphens: manual;
    hyphens: manual;
}

.gap-shortcode {
	width: 100%;
	height: 25px;
}

.shortcode-width {
	max-width: 100%;
}

.shortcode-width > img, .shortcode-width > p > img, .shortcode-width > p > a > img {
	width: 100%;
	height: auto;
}

.job-posttype .col-span-4 .html-content > img, .job-posttype .col-span-4 .html-content > p > img {
	margin: var(--small-gap) 0;
	width: 100% !important;
}

.job-posttype .col-span-4 .html-content u {
	text-decoration: none;
}

.html-content .wp-video {
	margin: var(--small-gap) 0;
}

.html-content :is(.wp-video, .wp-video video) {
	width: 100% !important;
	height: auto !important;
}

/* Weiterlesen-Text (mit Button) */

.read-on-text, .read-on-text-with-button {
	margin: var(--medium-gap) 0;
	cursor: pointer;
}

.read-on-text > div, .read-on-text-with-button > div {
	margin: 0;
}

.read-on-text.shortened > div:last-of-type, .read-on-text:not(.shortened) > div:first-of-type, .read-on-text-with-button.shortened > div:last-of-type, .read-on-text-with-button:not(.shortened) > div:first-of-type {
	display: none;
}

.read-on-text-shortcode {
	margin: 25px 0;
}

.read-on-text-shortcode .read-on-text {
	margin: 0;
}

.read-on-text-with-button > button {
	margin-top: var(--small-gap);
}

/* Angebote */

.offers {
	margin: var(--medium-gap) 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: var(--column-gap);
}

.offer-img-wrapper {
	position: relative;
}

.offer-img-label {
	position: absolute;
	margin: 0 !important;
	top: calc(var(--small-gap) / 4);
	background-color: var(--red);
	color: white;
	font-family: 'HK Grotesk Bold';
	padding: 0.2em 0.5em 0.25em;
	left: -0.5em;
	z-index: 10;
	line-height: calc(var(--small-line-height) * 0.75);
}

.offer p {
	margin-bottom: 0;
}

.offer h2 {
	margin-top: 10px;
}

/* Wrapper Angebots-Headerbild (mit Label) */

.img-wrapper-with-label {
	position: relative;
}

/* Angebote am Meer */

.sea-offers {
	margin: var(--large-gap) 0;
}

.sea-offer {
	margin: var(--medium-gap) 0;
	display: block;
}

.sea-offer p:first-child {
	margin: 0;
}

.sea-offer h2 {
	margin: 10px 0 var(--small-gap);
}

.sea-offer p:last-child img {
	height: 15px;
	width: auto;
	margin-left: 5px;
	position: relative;
	top: 2px;
}

/* Hintergrund-Abschnitt */

.background-section {
	margin-top: var(--large-gap);
	background-color: var(--medium-grey);
	padding: var(--large-gap) var(--small-gap) var(--large-gap) var(--outer-width);
	width: calc(100% + var(--outer-width) + var(--small-gap));
	position: relative;
	left: calc(-1 * var(--outer-width));
}

.background-section > *, .background-section > .max-width > .sea-offers {
	margin-top: 0;
	margin-bottom: 0;
}

/* Hauptspalte mit blauem Hintergrund */

.blue-background-main-col {
	height: 100%;
}

.blue-background-main-col::before {
	content: '';
	display: block;
	background-color: inherit;
	position: absolute;
	z-index: -1;
	height: calc(100% + 3 * var(--large-gap));
	top: calc(-1 * var(--large-gap));
	width: calc(100% + var(--column-gap) + var(--outer-width));
	left: calc(-1 * var(--outer-width));
}

/* Bild-Text-Kombinationen */

.img-text-combinations {
	margin: var(--large-gap) 0;
}

.img-text-combination {
	margin: var(--medium-gap) 0;
}

.img-text-combination figure {
	position: relative;
	top: 10px;
}

@media (min-width: 901px) {

	.img-text-combinations.growing-imgs figure {
		height: calc(100% - 10px);
		display: flex;
		flex-direction: column;
	}

	.img-text-combinations.growing-imgs figure .img {
		flex-grow: 1;
	}

}

/* Ausklapper-Element */

.expanding-element {
	margin: var(--medium-gap) 0;
}

.expanding-element-content {
	overflow: hidden;
}

.expanding-element.collapsed .expanding-element-content {
	height: 0;
}

.expanding-element.collapsed .button {
	margin: 0;
}

.expanding-element:not(.collapsed) button img {
	transform: scaleY(-1);
}

/* Timeline */

.timeline {
	margin: var(--medium-gap) 0;
}

.timeline-entries {
	position: relative;
}

.timeline-entries::before {
	content: '';
	display: block;
	width: 2px;
	height: 100%;
	background-color: white;
	position: absolute;
	left: calc(50% - 1px);
	top: 0;
	-webkit-clip-path: inset(calc(var(--medium-text-size) * 0.75) 0 0 0);
	clip-path: inset(calc(var(--medium-text-size) * 0.75) 0 0 0);
}

.timeline-entries::after {
	content: url('/wp-content/themes/ballin/img/timeline-arrow.svg');
	display: block;
	width: 30px;
	height: 18px;
	position: absolute;
	bottom: -1px;
	left: calc(50% - 15px);
}

.timeline-entry {
	margin: calc(-1 * var(--medium-gap)) 0;
	grid-gap: calc(2 * var(--column-gap));
}

.timeline-entry:nth-child(odd) .col {
	grid-column-start: 4;
}

.timeline-entry:nth-child(even) * {
	text-align: right;
}

time {
	font-family: 'HK Grotesk Regular';
	font-size: var(--medium-text-size);
	line-height: var(--medium-line-height);
	color: var(--green) !important;
	position: relative;
}

time::before {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: var(--green);
	top: 50%;
	position: absolute;
}

.timeline-entry:nth-child(odd) time::before {
	left: calc(-1 * var(--column-gap) - 8px);
}

.timeline-entry:nth-child(even) time::before {
	right: calc(-1 * var(--column-gap) - 8px);
}

.timeline-entry h3 {
	margin: 25px 0;
}

.timeline-entry .html-content {
	margin: 0;
}

/* Ausklapper-Texte */

.expanding-texts {
	margin: var(--large-gap) 0;
}

.expanding-texts-entry {
	margin: 25px 0;
}

.expanding-texts-head {
	padding: 15px var(--small-gap);
	cursor: pointer;
	background-color: var(--blue);
	position: relative;
}

.more-contrast .expanding-texts-head {
	border: var(--line-style);
}

.expanding-texts-head::before {
	content: url('/wp-content/themes/ballin/img/circle-plus.svg');
	display: block;
	width: 35px;
	height: 35px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(-50%, -50%);
}

.more-contrast .expanding-texts-head::before {
	filter: grayscale(100%) contrast(200%);
}

.expanding-texts-head::after {
	content: url('/wp-content/themes/ballin/img/arrow-down.svg');
	display: block;
	width: 16px;
	height: 15px;
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translateY(-50%);
}

.more-contrast .expanding-texts-head::after {
	filter: brightness(0);
}

.expanding-texts-entry:not(.open) .expanding-texts-head::after {
	filter: grayscale(100%) brightness(100);
}

.expanding-texts-entry.open .expanding-texts-head::after {
	transform: translateY(-50%) scaleY(-1);
}

.expanding-texts-head * {
	color: white;
}

.expanding-texts-head p {
	position: relative;
	top: -0.2ch;
}

.blue-background .expanding-texts-head {
	background-color: var(--dark-blue);
}

.expanding-texts-entry.open .expanding-texts-head {
	background-color: var(--green);
}

.expanding-texts-entry.open .expanding-texts-head * {
	color: var(--blue);
}

.expanding-texts-body {
	overflow: hidden;
	padding-left: var(--small-gap);
}

.expanding-texts-entry:not(.open) .expanding-texts-body {
	height: 0;
}

.expanding-texts-body .cols {
	margin: var(--small-gap) 0 calc(var(--small-gap) - 15px);
}

.expanding-texts-body .img {
	background-color: transparent;
}

.hide-expanding-texts-entry {
	display: none;
}

/* Galerie */

.gallery {
	margin: var(--medium-gap) 0;
}

.gallery-imgs {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 25px;
}

.gallery-img {
	cursor: pointer;
	position: relative;
}

.gallery-img .icon {
	position: absolute;
	left: calc(var(--input-height) / 2);
	bottom: calc(var(--input-height) / 2);
}

/* Suche */

.search-template .search-input {
	width: 400px;
}

.search-results {
	margin: var(--large-gap) 0;
}

.search-result {
	display: block;
	background-color: var(--light-grey);
	padding: var(--small-gap);
	margin: var(--small-gap) 0;
	position: relative;
}

.more-contrast .search-result {
	border: var(--line-style);
}

.search-result .icon {
	margin-left: var(--small-gap) !important;
}

.search-result-type {
	position: absolute;
	margin: 0;
	padding: 2px 10px 5px;
	background-color: var(--blue);
	color: white;
	top: 0;
	transform: translateY(-50%);
}

.search-result h2 {
	margin: 0;
}

.search-result-matches {
	margin: 10px 0 0;
}

/* Stellenangebote */

.jobs-list {
	margin-top: var(--medium-gap);
}

.jobs {
	margin: var(--medium-gap) 0;
}

.job {
	margin: var(--medium-gap) 0;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: var(--small-gap);
}

.job > div:first-child {
	grid-column: 1 / 2;
}

.job > div:last-child {
	grid-column: 2 / 4;
}

.job > div:first-child img {
	display: block;
}

.job h3 {
	margin: 0 0 35px;
	position: relative;
	top: -0.25ch;
}

.job-info {
	display: flex;
	align-items: flex-start;
}

.job-info:not(:last-child) {
	margin-bottom: 15px;
}

.job-info img {
	display: block;
	width: 45px;
	height: 45px;
	margin-right: 25px;
	position: relative;
	top: 10px;
}

.job-info:first-child img {
	transform: scale(1.15);
}

.job-info p {
	margin: 0;
}

.job-info p span br:not(.dont-hide) {
	display: none;
}

.job-posttype .job-info {
	margin: 35px 0;
}

.paging {
	display: flex;
	align-items: center;
	gap: var(--small-gap);
	width: fit-content;
}

.paging p {
	cursor: pointer;
}

.no-paging, .paging-first .paging-prev, .paging-last .paging-next {
	display: none;
}

.jobs-template .map-wrapper .icon {
	display: none;
}

/* Sticky-Element */

.sticky-content {
	position: sticky;
	top: calc(var(--header-height) + var(--medium-gap));
}

/* Karte */

.map {
	margin: var(--medium-gap) 0;
}

.map-wrapper {
	position: relative;
	background-color: var(--medium-grey);
}

.map-wrapper::after {
	content: '';
	display: block;
	padding-bottom: 100%;
}

.interactive-map {
	height: 100%;
	width: 100%;
	position: absolute;
	border-left: solid 2px var(--light-grey);
}

.map-wrapper .icon {
	position: absolute;
	left: var(--sidebar-inset);
	bottom: calc(var(--input-height) / 2);
}

.map-compass {
	position: absolute;
	right: calc(var(--input-height) / 2);
	top: calc(var(--input-height) / 2);
	width: calc(var(--input-height) * 1.5);
	height: auto;
}

.map-wrapper .button {
	width: min-content;
	margin: 0;
	position: absolute;
	right: calc(var(--input-height) / 2);
	bottom: calc(var(--input-height) / 2);
}

.map-wrapper button {
	white-space: nowrap !important;
}

.interactive-map * {
	z-index: 5 !important;
}

.map-wrapper > *:not(.interactive-map) {
	z-index: 10;
}

.map-wrapper.fullscreen {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 75;	
}

.map > :is(p, h2) {
	padding-left: var(--sidebar-inset);
}

.map > p {
	color: var(--red);
	margin: 25px 0 10px;
}

.map > h2 {
	margin: 0;
	-webkit-hyphens: manual;
    -ms-hyphens: manual;
    hyphens: manual;
}

#hvv-search-popup .submit-input {
	margin-top: var(--small-gap);
}

.more-contrast .leaflet-marker-icon {
	filter: grayscale(100%) contrast(200%);
}

.interactive-map-consent {
	position: absolute;
	left: var(--sidebar-inset);
	top: calc(var(--input-height) / 4 * 3);
	width: min-content;
	display: flex;
	flex-direction: column;
}

.interactive-map-consent .button {
	position: static !important;
}

.interactive-map-consent > p {
	margin: 5px 0 0;
}

.interactive-map-preview {
	position: absolute;
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
	border-left: solid 2px var(--light-grey);
}

:is(.jobs-template, .job-posttype) .leaflet-marker-icon {
	filter: drop-shadow(0 0 2px rgba(0,0,0,0.5));
}

/* Nachrichten */

#msg, #no-js-msg, #loading-spinner {
	position: fixed;
	background-color: var(--popup-background);
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 95;
	top: 0;
}

#msg p {
	padding: 25px;
	max-width: 500px;
	width: fit-content;
	background-color: white;
}

#no-js-msg p {
	max-width: 80%;
}

@keyframes spin { 
	from { 
		transform: rotate(0deg); 
	} 
	to { 
		transform: rotate(360deg); 
	}
}

#loading-spinner img {
	animation-name: spin;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
	width: calc(var(--small-gap) * 3);
	height: calc(var(--small-gap) * 3);
}

/* Datenschutz-Popup */

#privacy-popup {
	position: fixed;
	background-color: var(--popup-background);
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 90;
	top: 0;
	overflow: scroll;
	overscroll-behavior: none;
	padding: var(--medium-gap) 0;
}

#privacy-popup > div {
	margin: auto;
	background-color: white;
	padding: var(--small-gap);
	width: 1000px;
}

#privacy-popup :is(.html-content, .cols) {
	margin: var(--small-gap) 0;
}

/* Lightbox */

#lightbox {
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: var(--popup-background);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 90;
	top: 0;
}

#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
	width: calc(100% - var(--lightbox-inset) * 2);
	display: none;
	max-height: calc(100% - 2 * var(--lightbox-inset));
}

#lightbox[data-type="img"] #lightbox-img, #lightbox[data-type="frame"] #lightbox-frame, #lightbox[data-type="video"] #lightbox-video, #lightbox[data-type="audio"] #lightbox-audio {
	display: block;
}

#lightbox-img {
	height: calc(100% - var(--lightbox-inset) * 2);
	object-position: center;
	object-fit: contain;
}

#lightbox-frame, #lightbox-video {
	position: relative;
}

#lightbox-frame::after, #lightbox-video::after {
	content: '';
	display: block;
	padding-bottom: 56.25%;
}

#lightbox-frame iframe, #lightbox-video video {
	object-position: center;
	object-fit: contain;
	border: none;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #222222;
}

#lightbox-prev, #lightbox-next, #lightbox-close {
	position: absolute;
	background-color: var(--green);
}

#lightbox-prev, #lightbox-next {
	top: calc(50% - var(--input-height) / 2);
}

.only-one :is(#lightbox-prev, #lightbox-next) {
	display: none;
}

#lightbox-prev {
	left: calc(var(--lightbox-inset) / 2 - var(--input-height) / 2);
	transform: scaleX(-1);
}

#lightbox-next {
	right: calc(var(--lightbox-inset) / 2 - var(--input-height) / 2);
}

#lightbox-close {
	right: calc(var(--lightbox-inset) / 2 - var(--input-height) / 2);
	top: calc(var(--lightbox-inset) / 2 - var(--input-height) / 2);
}

#lightbox-caption {
	position: absolute;
	color: white;
	width: calc(100% - var(--lightbox-inset) * 2);
	bottom: calc(var(--lightbox-inset) / 2);
	transform: translateY(30%);
	margin: 0;
	text-align: center;
}

#lightbox-caption br {
	display: none;
}

/* Layer */

#layer {
	position: fixed;
	background-color: var(--popup-background);
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 90;
	top: 0;
	overflow: scroll;
	overscroll-behavior: none;
	padding: var(--medium-gap) 0;
}

#layer > div {
	margin: auto;
	background-color: white;
	padding: var(--small-gap);
	width: 1000px;
	position: relative;
}

#layer > div.narrow-popup {
	width: 500px;
}

#layer > div.min-content {
	width: min-content;
}

#layer-close {
	position: absolute;
	right: 0;
	top: 0;
}

/* Logo-Redesign-Layer */

#logo-redesign-layer h2 {
	margin: var(--small-gap) 0;
}

#logo-redesign-video {
	width: 100%;
	height: auto;
	position: relative;
	border: var(--line-style);
	margin: calc(-1 * var(--small-gap) / 2) 0;
	top: 10px;
}

#logo-redesign-video::after {
	content: '';
	display: block;
	padding-bottom: 63%;
}

#logo-redesign-video video {
	position: absolute;
	width: 100%;
	height: 100%;
}

/* Leitbild */

.mission-statement-template h1 {
	margin-top: 0;
}

.mission-statement-template .html-content h2 {
	background-color: var(--green);
	padding: calc(var(--small-gap) / 2);
	margin: var(--medium-gap) 0 var(--small-gap);
}

.mission-statement-template .sticky-content > .h2 {
	margin-top: 0;
}

@media print {

	.mission-statement-template {
		padding-top: 0;
	}

	.mission-statement-template :is(#header, footer, .sidebar, .col-span-2.col-start-5) {
		display: none;
	}

	.mission-statement-template .html-content p {
		font-size: calc(var(--small-text-size) * 0.85);
		line-height: calc(var(--small-line-height) * 0.9);
		margin: 10px 0;
	}

	.mission-statement-template .html-content h2 {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		-webkit-column-break-inside: avoid;
		-moz-column-break-inside: avoid;
		break-inside: avoid;
	}

	.mission-statement-template .col-span-4 {
		grid-column: auto / span 6 !important;

	}

	.mission-statement-template .col-span-4 .column-padding {
		padding-right: 0;
	}

	.mission-statement-template.safari {
		padding: 25px;
	}

}

/* Nur im Ausdruck */

.only-print {
	display: none;
}

@media print {

	.only-print {
		display: contents;
	}

}

.ballin-an-bord-logo-print, .ballin-logo-print {
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	break-inside: avoid;
}

.ballin-an-bord-logo-print {
	width: 275px;
	height: auto;
	margin-bottom: 50px;
	position: relative;
	left: calc(100% - 275px);
}

.ballin-logo-print {
	width: 250px;
	height: auto;
	margin-top: 50px;
}

/* Sprunglinks */

.jump-links {
	margin-top: 35px;
}

.jump-links p {
	margin: 15px 0;
	padding: 1px 9px 3px;
	background-color: var(--green);
	width: fit-content;
}

/* Logbuch */

.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype {
	--logbook-header-height: 75px;
	--logbook-footer-height: calc(var(--large-gap) * 2);
	--max-width: 1200px;
	--outer-width: calc((100vw - var(--max-width) - var(--scrollbar-width)) / 2);
	padding-top: var(--logbook-header-height);
}

:is(.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype) :target {
	scroll-margin-top: var(--logbook-header-height);
}

.logbook-header {
	background-color: var(--green);
	height: var(--logbook-header-height);
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 50;
}

.logbook-header .max-width {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.logbook-header-title, .logbook-footer-title {
	font-family: 'HK Grotesk Extrabold';
	text-transform: uppercase;
	font-size: var(--medium-text-size);
	margin: 0;
	letter-spacing: 0.025em;
}

.logbook-footer-title {
	font-size: var(--medium-text-size);
	color: white;
	line-height: 1em;
	translate: 0 5%;
}

.logbook-footer-title span:last-child {
	font-family: 'HK Grotesk Regular';
	font-size: 0.75em;
	text-transform: none;
}

.logbuch-posttype .logbook-header-title:not(.show) {
	opacity: 0;
}

body:not(.logbuch-posttype) .logbook-footer-title {
	visibility: hidden;
}

.logbook-nav-trigger {
	display: flex;
	align-items: center;
	gap: 1.5ch;
	cursor: pointer;
	margin: 0;
}

:is(.logbuch-login-template, .logbuch-overview-template) .logbook-nav-trigger {
	display: none;
}

.logbook-nav-trigger img {
	display: block;
	width: 25px;
	height: auto;
}

.logbook-content {
	padding-top: var(--large-gap);
	min-height: calc(var(--full-height) - var(--logbook-header-height) - var(--logbook-footer-height));
}

.logbook-content .max-width > *:first-child {
	margin-top: 0;
}

.logbuch-login-template .html-content {
	width: 66%;
}

.logbuch-login-template form {
	width: 33%;
}

.logbuch-login-template .submit-input {
	margin-bottom: 0;
}

.logbook-footer {
	padding: 0;
	height: var(--logbook-footer-height);
	margin-top: 0;
	overflow: hidden;
}

.logbook-footer .max-width {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100%;
}

.logbook-article.blue + .logbook-footer::before {
	content: '';
	display: block;
	width: calc(100% - var(--outer-width) * 2);
	height: 2px;
	background-color: white;
	left: var(--outer-width);
	position: relative;
}

.logbook-footer img {
	filter: invert(100%) brightness(2);
}

.logbook-overview {
	margin: var(--large-gap) 0 var(--small-gap);
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 6%;
}

.logbook-overview a {
	display: block;
	aspect-ratio: 235 / 320;
	background-image: url('/wp-content/themes/ballin/img/book.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
	container: logbook-overview-item / inline-size;
	transition: all 0.15s ease;
}

.logbook-overview a:first-child {
	background-image: url('/wp-content/themes/ballin/img/book-with-wheel.svg');
}

.logbook-overview a:nth-child(3n+1) {rotate: 2deg;}
.logbook-overview a:nth-child(3n+2) {rotate: -2deg;}
.logbook-overview a:nth-child(3n+3) {rotate: 0deg;}

.logbook-overview a:hover {
	scale: 1.05;
}

.logbook-overview a:nth-child(3n+1):hover {rotate: 0deg;}
.logbook-overview a:nth-child(3n+2):hover {rotate: 2deg;}
.logbook-overview a:nth-child(3n+3):hover {rotate: -2deg;}

.logbook-overview p {
	margin: 0;
	position: absolute;
	font-family: 'HK Grotesk Extrabold';
	text-align: center;
	line-height: 1.1em;
	top: 45cqi;
	left: 47%;
	translate: -50% -50%;
	font-size: 12cqi;
}

.logbook-overview.cqi-not-supported p {
	top: calc(0.45 * var(--container-width));
	font-size: calc(0.12 * var(--container-width));
}

.logbook-issue-header {
	--logbook-issue-header-factor: calc(1px * var(--logbook-issue-header-size));
	background-color: var(--blue);
	padding: calc(var(--logbook-issue-header-factor) * 8) calc(var(--logbook-issue-header-factor) * 12) calc(var(--logbook-issue-header-factor) * 12);
	height: calc(var(--full-height) - var(--logbook-header-height));
	margin-bottom: var(--large-gap);
	overflow: hidden;
	transform: translateZ(0);
}

.safari .logbook-issue-header {
	padding-top: calc(var(--logbook-issue-header-factor) * 6);
}

.logbook-issue-header-content {
	column-count: 2;
	column-gap: 15vw;
}

.logbook-issue-header h1 {
	color: white;
	line-height: 0;
	margin: 0;
	translate: 0 -80%;
	display: flex;
	flex-direction: column;
	gap: calc(var(--logbook-issue-header-factor) * 1.4);
}

.safari .logbook-issue-header h1 {
	pointer-events: none;
	translate: 0;
	gap: calc(var(--logbook-issue-header-factor) * 0.1);
	margin-bottom: calc(var(--logbook-issue-header-factor) * 2.5);
}

.logbook-issue-header h1 span {
	color: inherit;
}

.safari .logbook-issue-header h1 span {
	line-height: 1em;
}

.logbook-issue-header h1 span:first-child {
	text-transform: uppercase;
	font-size: calc(var(--logbook-issue-header-factor) * 3);;
	letter-spacing: 0.025em;
}

.logbook-issue-header h1 span:last-child {
	font-size: calc(var(--logbook-issue-header-factor) * 2);;
	font-family: 'HK Grotesk Regular';
}

.logbook-issue-header-link {
	margin: 1vw 0;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	break-inside: avoid;
	display: block;
	width: 100%;
}

.logbook-issue-header-link * {
	margin: 0;
}

.logbook-issue-header-head {
	color: white;
	line-height: 1.2em;
	font-size: 1.25vw;
	font-size: calc(var(--logbook-issue-header-factor) * 1);
}

.logbook-issue-header-head span {
	color: inherit;
	white-space: nowrap;
}

.logbook-issue-header-head img {
	display: inline-block;
	width: 0.6em;
	height: auto;
	translate: 0 5%;
}

.logbook-issue-header-prehead {
	color: var(--red);
	text-transform: uppercase;
	font-family: 'HK Grotesk Bold';
	font-size: calc(var(--logbook-issue-header-factor) * 0.75);
	letter-spacing: 0.05em;
}

.logbook-issue-header-link:last-of-type::after {
	content: '';
	display: block;
	width: 100%;
	aspect-ratio: 8 / 1;
}

.logbook-issue-header-top {
	position: absolute;
	top: -1px;
	left: -1%;
	width: 102%;
	height: auto;
}

.logbook-issue-header-ribbon {
	position: absolute;
	top: 0.8vw;
	left: 42vw;
	width: 5vw;
	height: auto;
	pointer-events: none;
}

.logbook-issue-header-bottom {
	position: absolute;
	width: 102%;
	bottom: -1px;
	left: -1%;
	pointer-events: none;
	height: auto;
}

.logbook-issue-header-logo {
	position: absolute;
	width: 25%;
	bottom: 5%;
	right: 17%;
	pointer-events: none;
}

.logbook-issue-header + .max-width .html-content {
	margin-bottom: var(--large-gap);
}

.logbook-article {
	padding: var(--large-gap) 0;
	position: relative;
}

.logbook-article.grey {
	background-color: var(--light-grey);
}

.logbook-article.blue {
	background-color: var(--blue);
}

.logbook-article.green {
	background-color: var(--green);
}

.logbook-article.white + .logbook-article.white::before, .logbook-article.grey + .logbook-article.grey::before, .logbook-article.blue + .logbook-article.blue::before, .logbook-article.green + .logbook-article.green::before {
	content: '';
	display: block;
	height: 2px;
	background-color: var(--blue);
	width: calc(100% - 2 * var(--outer-width));
	left: var(--outer-width);
	top: 10px;
	position: absolute;
}

.logbook-article.blue + .logbook-article.blue::before {
	background-color: white;
}

.logbook-article.blue *:not(.logbook-article-prehead, button, button span) {
	color: white;
}

.logbook-article .button {
	margin: calc(var(--small-gap) * 0.75) 0;
}

.logbook-article.blue button {
	background-color: white;
	color: var(--blue);
}

.logbook-article.blue ul li::before {
	filter: invert(100%) brightness(2);
}

.logbook-article hgroup {
	margin: var(--small-gap) 0;
}

.logbook-article hgroup * {
	margin: 0;
}

.logbook-article-prehead {
	color: var(--red);
	font-family: 'HK Grotesk Extrabold';
	font-size: 2.5rem;
}

.logbook-article .html-content {
	margin: var(--small-gap) 0;
}

.logbook-article .cols {
	margin: var(--medium-gap) 0;
	grid-template-columns: 1fr 2fr;
}

.logbook-article .col {
	grid-column-start: auto;
	grid-column: auto / span 1;
}

.logbook-article .sticky-content {
	translate: 0 5px;
}

.logbook-article h2 {
	font-size: var(--large-text-size);
}

.logbook-article-portraits {
	display: grid;
	grid-template-columns: repeat(auto-fill, 180px);
	gap: var(--column-gap);
}

.logbook-article-portrait img {
	border-radius: 50%;
	border: solid 2px var(--medium-grey);
}

.logbook-article-portrait p {
	text-align: center;
	margin-top: calc(var(--small-gap) * 0.5);
}

.logbook-article .sticky-content .lightbox-video {
	margin: var(--small-gap) 0;
}

.logbook-article .sticky-content .lightbox-video .img::after {
	padding-bottom: 66%;
}

.logbook-article .sticky-content .lightbox-video > img {
	scale: 0.75;
}

.logbook-article .sticky-content > *:first-child {
	margin-top: 0;
}

.logbook-article .sticky-content > *:last-child {
	margin-bottom: 0;
}

.awarded-shortcode {
	display: flex;
	gap: calc(var(--small-gap) / 2);
	align-items: center;
}

.awarded-shortcode p {
	margin: 15px 0;
}

.awarded-shortcode::before {
	content: url('/wp-content/themes/ballin/img/star.svg');
	display: block;
	width: calc(var(--small-gap) * 1.5);
	flex-shrink: 0;
}

.awarded-shortcode:nth-of-type(even)::before {
	rotate: 15deg;
}

.awarded-shortcode strong {
	color: var(--red);
}

.speech-bubbles-shortcode {
	margin: 25px 0;
}

.speech-bubble {
	display: inline-block;
	position: relative;
	margin: 25px 25px 25px 0;
	filter: url('#blue-border');
}

.safari .speech-bubble {
	filter: none;
}

.speech-bubble img:first-of-type {
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
}

.speech-bubble img:last-of-type {
	position: absolute;
	z-index: -1;
	width: 35px;
	height: auto;
	left: 50%;
	bottom: 0;
	translate: -50% 75%;
}

.speech-bubble:nth-child(even) img:last-of-type {
	scale: -1 1;
}

.speech-bubble p {
	margin: 0;
	line-height: 1.3em;
	text-align: center;
	width: fit-content;
	white-space: nowrap;
	padding: 35px;
}

.speech-bubbles-shortcode::after {
	content: '';
	display: block;
	clear: both;
}

.logbook-gallery {
	margin: var(--medium-gap) 0 0;
}

.logbook-gallery .carousel-cols {
	margin: 0;
}

.logbook-gallery .with-video {
	position: relative;
}

.logbook-gallery .with-video::after {
	content: url('/wp-content/themes/ballin/img/play.svg');
	display: block;
	width: var(--input-height);
	height: var(--input-height);
	background-color: var(--green);
	position: absolute;
	bottom: calc(var(--input-height) / 2);
	left: calc(var(--input-height) / 2);
	pointer-events: none;
}

.logbook-gallery .img {
	cursor: pointer;
}

.logbook-article table {
	border: var(--line-style);
}

.logbook-article table td {
	padding: 10px 15px;
}

.logbook-article table td:last-child {
	width: 15% !important;
	border-left: var(--line-style);
}

.svg-filter-defs {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

#logbook-nav {
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: var(--green);
	top: 0;
	z-index: 75;
	padding: var(--large-gap);
	overflow-y: scroll;
}

#logbook-nav-main-heading {
	color: var(--red);
}

#logbook-nav-close {
	width: var(--small-gap);
	height: auto;
	cursor: pointer;
}

#logbook-nav-links {
	margin-top: var(--medium-gap);
}

#logbook-nav-links a {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

#logbook-nav-links a:not(:last-child)::after {
	content: '';
	border-top: var(--line-style);
	width: var(--large-gap);
	margin: 25px 0;
}

#logbook-nav-links .h2 {
	margin: 0;
}

.logbook-nav-arrow {
	width: 0.75ch;
}

.logbook-nav-prehead {
	color: var(--red);
	text-transform: uppercase;
	margin: 0;
	letter-spacing: 0.05em;
}

#logbook-nav-footer p {
	font-family: 'HK Grotesk Bold';
	margin: 10px 0;
}

#logbook-nav-footer p img {
	translate: 0 10%;
}

.logbook-issue-header-link, #logbook-nav-links a {
	cursor: pointer;
}

#logbook-nav-divider {
	margin: var(--small-gap) 0 calc(var(--small-gap) * -0.5);
}

#logbook-nav-divider-2 {
	margin: var(--small-gap) 0;
}

#logbook-nav-divider-2 ~ p {
	font-family: 'HK Grotesk Bold';
}

/* Logbuch-Ausdruck */

@media print {

	@page {
		margin-top: 1.5cm !important;
	}

	.logbook-nav-trigger, .logbook-issue-header-link, .logbook-article .lightbox-video, .logbook-article .carousel-cols .icon, .logbook-issue-header-more {
		display: none !important;
	}

	.logbook-article.blue :not(.logbook-article-prehead, button, button span) {
		color: var(--blue) !important;
	}

	.logbuch-posttype {
		--logbook-header-height: 30px !important;
		--outer-width: calc((100vw - var(--max-width)) / 2) !important;
		--small-text-size: 12pt !important;
		padding-top: 0 !important;
	}

	.logbook-issue-header-ribbon {
		width: 25px !important;
		left: 55% !important;
		top: 8px !important;
	}

	.logbook-issue-header-bottom {
		translate: 0 25% !important;
	}

	.logbook-header, .logbook-issue-header, .logbook-article, .logbook-article.blue button, .logbook-article::before, .logbook-footer img, .logbook-article.blue + .logbook-footer::before, .logbook-article table, .logbook-article td, .speech-bubble, .speech-bubble *, .speech-bubbles-shortcode, .logbook-footer-title {
		-webkit-print-color-adjust: exact !important;
		-moz-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	.logbook-header {
		position: relative !important;
	}

	.logbook-issue-header {
		height: auto !important;
		padding: 75px var(--outer-width) 0 !important;
		aspect-ratio: 12 / 5 !important;
	}

	.logbook-issue-header-logo {
		width: 35% !important;
		left: 65% !important;
	}

	.logbook-issue-header h1 {
		translate: 0 !important;
		display: block !important;
		line-height: 20px !important;
	}

	.logbook-issue-header h1 span {
		display: block !important;
	}

	.logbook-issue-header h1 span:first-child {
		font-size: 40px !important;
	}

	.logbook-issue-header h1 span:last-child {
		font-size: 30px !important;
	}

	.logbook-issue-header-content {
		column-count: 1 !important;
		padding: 0 !important;
	}

	.logbook-issue-header + .max-width > p {
		margin-top: 0 !important;
	}

	.logbook-article-portraits {
		grid-template-columns: repeat(auto-fill, 135px) !important;
	}

	.logbook-article-portrait .img {
		width: 100% !important;
		left: 0 !important;
	}

	.logbook-article-portrait p {
		margin-top: calc(var(--small-gap) * 0.25) !important;
		font-size: calc(var(--small-text-size) * 0.7) !important;
	}

	.logbook-article-prehead {
		font-size: 1.5rem !important;
	}

	.logbook-article h2 {
		font-size: 24pt !important;
	}

	.logbook-article::before {
		content: '' !important;
		display: block !important;
		width: calc(100% - 2 * var(--outer-width)) !important;
		left: var(--outer-width) !important;
		position: absolute !important;
		top: 40px !important;
		height: 1px !important;
		background-color: var(--blue) !important;
	}

	.logbook-article {
		background-color: transparent !important;
	}

	.logbook-article button {
		background-color: var(--blue) !important;
		color: white !important;
	}

	.logbook-article .img {
		background-color: transparent !important;
	}

	.logbook-article .col-span-3.col-start-1 {
		width: 35% !important;
		float: left !important;
		margin-right: var(--column-gap) !important;
		translate: 0 5px !important;
		margin-bottom: 10px !important;
		height: min-content !important;
	}

	.logbook-article .sticky-element {
		margin-bottom: 0 !important;
	}

	.logbook-article .sticky-content {
		position: static !important;
	}

	.logbook-article .all-carousel-cols {
		display: grid !important;
		grid-template-columns: 1fr 1fr 1fr !important;
		gap: calc(var(--column-gap) / 2) !important;
	}

	.logbook-gallery .carousel-col {
		width: 100% !important;
	}

	.logbook-footer {
		background-color: transparent !important;
	}

	.logbook-footer img {
		filter: none !important;
	}

	.logbook-article.blue + .logbook-footer::before {
		background-color: var(--blue) !important;
		height: 1px !important;
	}

	.logbook-article :is(table, td) {
		border-width: 1px !important;
	}

	.logbook-article hgroup, .awarded-shortcode, .logbook-article .sticky-content :is(.img, .lightbox-video) {
		-webkit-column-break-inside: avoid-page !important;
		-moz-column-break-inside: avoid-page !important;
		break-inside: avoid-page !important;
	}

	.logbook-issue-header + .max-width .html-content {
		display: contents !important;
	}

	.speech-bubble {
		filter: none !important;
	}

	.logbook-article .cols {
		display: block !important;
	}

	.logbook-article .cols::after {
		display: block !important;
		content: "" !important;
		clear: both !important;
	}

	.logbook-footer .max-width {
		display: flex !important;
	}

	.logbook-footer-title {
		font-size: calc(var(--small-text-size) * 1.3) !important;
		translate: 0 30% !important;
	}

	.logbook-footer-title, .logbook-footer-title span {
		color: var(--blue) !important;
	}

	.logbook-article hgroup, .logbook-article h2 {
		-webkit-page-break-after: avoid !important;
		-moz-page-break-after: avoid !important;
		page-break-after: avoid !important;
		-webkit-break-after: avoid-page !important;
		-moz-break-after: avoid-page !important;
		break-after: avoid-page !important;
	}

	.logbook-article {
		padding: 75px 0 0 !important;
	}

	.awarded-shortcode::before {
		width: var(--small-gap) !important;
	}

	.awarded-shortcode {
		gap: 15px !important;
	}

	.logbuch-posttype {
		orphans: 3 !important;
		widows: 3 !important;
	}

	.logbook-footer {
		margin-top: 50px !important;
	}

	.img-3-2-without-caption {
		margin-bottom: 20px !important;
	}

	.logbook-article.logbook-article-starts-on-new-page, .logbook-article.hide-prev-divider {
		padding-top: 0 !important;
	}

	.logbook-article.logbook-article-starts-on-new-page::before, .logbook-article.hide-prev-divider::before {
		content: none !important;
	}

}

/* Karussell-Spalten */

.carousel-cols {
	--carousel-columns-full-width: 100%;
	position: relative;
	margin: var(--large-gap) 0;
}

.carousel-cols-cut {
	overflow: hidden;
}

.all-carousel-cols {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--column-gap);
}

.carousel-col {
	flex-shrink: 0;
	width: calc(100% / var(--carousel-column-count) - var(--column-gap) * ((var(--carousel-column-count) - 1) / var(--carousel-column-count)));
}

.carousel-cols .icon {
	position: absolute;
	top: 50%;
	left: calc(-2 * var(--small-gap));
	translate: 0 -50%;
	scale: -1 1;
}

.carousel-cols .icon + .icon {
	left: auto;
	right: calc(-2 * var(--small-gap));
	scale: none;
}

/* Sharing-Buttons */

.sharing-buttons-wrapper {
	margin: var(--medium-gap) 0;
}

.sharing-buttons {
	display: flex;
	gap: calc(var(--small-gap) / 2);
}

/* Lightbox-Video */

.lightbox-video {
	margin: var(--medium-gap) 0;
	cursor: pointer;
	position: relative;
}

.lightbox-video .img::before {
	content: '';
	background-color: rgba(0,0,0,0.5);
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 5;
}

.lightbox-video > img {
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	width: calc(var(--large-gap) * 1.25);
	z-index: 10;
}

/* Sonstiges */

.trans {
	transition: all 0.3s ease;
}

#scrollbar-measure {
	position: fixed;
	width: 100%;
	height: 0;
	overflow: hidden;
}

#scrollbar-measure div {
	width: 100vw;
}

.hide-scrollbars {
	scrollbar-width: none;
}

.hide-scrollbars::-webkit-scrollbar {
	display: none;
}

.hide {
	opacity: 0 !important;
	pointer-events: none !important;
}

.hide *, .no-pointer-events, .no-pointer-events * {
	pointer-events: none !important;
}

.hidden {
	display: none !important;
}

.msg-from-server, .only-smartphone {
	display: none;
}

#website-title {
	position: absolute;
	left: -10000px;
}

#deportation-children-reports {
	display: contents;
}

#deportation-children-reports .img {
	width: 50%;
}

#deportation-children-reports a:has(.img) + .button {
	margin-top: calc(var(--small-gap) / 2);
}

/* Footer */

footer {
	margin-top: calc(var(--large-gap) * 1.5);
	padding: var(--medium-gap) 0;
}

footer .current {
	color: var(--green);
}

#footer-logo {
	width: 300px;
	height: auto;
	display: block;
}

/* –––– Media Queries –––– */

/* Maximalbreite */
@media (max-width: 1700px) {

	html {
		--max-width: calc(100vw - 100px - var(--scrollbar-width));
	}

}

/* Notebook */
@media (max-width: 1500px) {

	html {
		--large-gap: 85px;
		--medium-gap: 65px;
		--column-gap: 65px;
		--large-text-size: 3.6rem;
		--medium-text-size: 1.9rem;
		--medium-small-text-size: 1.6rem;
		--small-text-size: 1.2rem;
	}

	.negative-margin {
		margin-top: var(--negative-margin-1500, var(--negative-margin));
	}

	.slider-title {
		padding: var(--medium-gap) var(--outer-width) var(--small-gap) calc(var(--large-gap) * 1.5);
	}

	.slider-title-top {
		padding: var(--small-gap) var(--outer-width) calc(var(--large-gap) * 1.25) var(--large-gap);
	}

	.quotes blockquote, .contact {
		grid-template-columns: 110px 1fr;
	}

	.quotes .img, .contact .img {
		width: calc(100% + 10px);
		left: -10px;
	}

	.only-illustration-teaser .teaser-illustration {
		width: calc(var(--sidebar-inset) * 3);
	}

	.address-and-contact .line, .further-contact .line {
		display: block;
	}

	.address-and-contact .line .button, .further-contact .line .button {
		margin: 15px 0 !important;
	}

	.sea-offer h2 {
		margin-bottom: 30px;
	}

	.slider-logo {
		width: 45%;
	}

	.expanding-texts-head {
		padding: 15px 35px;
	}

	.expanding-texts-head::after {
		right: 15px;
	}

	.expanding-texts-body {
		padding-left: 35px;	
	}

	.contacts-entry {
		grid-template-columns: 125px 1fr 2px 225px;
	}

	button img, .more img, .contacts-entry a img, .back-link img, .sea-offer p:last-child img, .inline-text-icon {
		height: 13px !important;
	}

	.slider {
		height: calc(var(--full-height) - var(--header-height-full) - var(--small-gap));
	}

	.job h3 {
		margin: 0 0 25px;
	}

	.job-info:not(:last-child) {
		margin-bottom: 13px;
	}

	.job-info img {
		width: 42px;
		height: 42px;
	}

	.job .img {
		height: auto;
	}

	.job .img::after {
		content: '';
		display: block;
		padding-bottom: 100%;
	}

	.slider-title :is(h1, .h1) {
		font-size: calc((var(--large-text-size) + var(--medium-text-size)) / 2);
		line-height: calc((var(--large-line-height) + var(--medium-line-height)) / 2);
	}

	.logbook-issue-header {
		padding: calc(var(--logbook-issue-header-factor) * 8) calc(var(--logbook-issue-header-factor) * 6) calc(var(--logbook-issue-header-factor) * 10);
	}

	.logbook-issue-header-prehead {
		font-size: calc(var(--logbook-issue-header-factor) * 0.9);
	}

	.logbook-issue-header-head {
		font-size: calc(var(--logbook-issue-header-factor) * 1.25);
	}

	.logbook-issue-header-link {
		margin: 0.85vw 0;
	}

	.logbook-issue-header-bottom {
		translate: 0 10%;
	}

	.logbook-issue-header-logo {
		right: 10%;
		bottom: 4%;
	}

	.logbook-issue-header-ribbon {
		top: 0.75vw;
	}

	.logbook-article-portraits {
		grid-template-columns: repeat(auto-fill, 185px);
	}

	.logbook-footer-title {
		font-size: calc(var(--medium-text-size) * 1.1);
	}

	#logbook-nav-divider {
		margin: calc(var(--small-gap) * 0.5) 0 calc(var(--small-gap) * -0.5);
	}

	#logbook-nav-divider-2 {
		margin: calc(var(--small-gap) / 3 * 2) 0;
	}

}

/* Maximalbreite Logbuch */
@media (max-width: 1300px) {

	.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype {
		--max-width: calc(100vw - 100px - var(--scrollbar-width));
	}

}

/* Navigation */
@media (max-width: 1400px) {

	#main-nav p {
		font-size: 1.1rem;
	}

	.carousel-cols .icon {
		left: calc(-0.5 * var(--small-gap));
	}

	.carousel-cols .icon + .icon {
		right: calc(-0.5 * var(--small-gap));
	}

}

/* Größeres Tablet */
@media (max-width: 1300px) {

	html {
		--header-height-full: var(--header-height-reduced);
		--header-height-reduced: 75px;
		--header-height: var(--header-height-reduced);
		--large-gap: 75px;
		--medium-gap: 50px;
		--column-gap: 50px;
		--sidebar-inset: 35px;
		--large-text-size: 3rem;
		--medium-text-size: 1.8rem;
		--medium-small-text-size: 1.4rem;
		--small-text-size: 1.1rem;
		--max-width: calc(100vw - 70px - var(--scrollbar-width));
	}

	#main-nav, #meta-nav > .line:first-child {
		display: none;
	}

	#mobile-nav-trigger {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		cursor: pointer;
		position: absolute;
		right: 0;
	}

	.minimize-header #meta-nav {
		opacity: 1;
		pointer-events: all;
	}

	#mobile-nav-trigger p {
		margin: 0 25px 0 0;
	}

	#mobile-nav-trigger img {
		width: 25px;
		height: auto;
		display: block;
	}

	.negative-margin {
		margin-top: var(--negative-margin-1300, var(--negative-margin-1500, var(--negative-margin)));
	}

	.button.small button {
		padding: 0 0.4em 0.2em;
	}

	.only-illustration-teaser .teaser-illustration {
		width: calc(var(--sidebar-inset) * 3.25);
	}

	.job-info img {
		width: 40px;
		height: 40px;
	}

	.contacts-entry {
		grid-template-columns: 125px 1fr 2px 200px;
	}

	.contacts-entry {
		grid-gap: 35px;
		padding: 35px 35px 35px 0;
	}

	.map-compass {
		width: calc(var(--input-height) * 1.25);
	}

	.slider-title .line > *:not(:last-child) {
		margin-right: 35px;
	}

	.teaser-illustration {
		width: 35%;
	}

	#footer-logo {
		width: 250px;
	}

	.checkbox-input {
		margin: 35px 0;
	}

	.contacts-filter-sub-terms {
		margin-bottom: 30px;
	}

	.back-link {
		margin-bottom: -25px;
	}

	.tel + .tel {
		margin-top: -10px;
	}

	.meta-nav-input {
		top: 1px;
	}

	#mobile-nav .h3 br {
		display: none;
	}

	.more {
		margin-top: 35px;
	}

	.further-contact {
		margin: -15px 0 0;
	}

	.mission-statement-template .html-content h2 {
		margin: var(--medium-gap) 0 calc(var(--small-gap) * 0.65);
	}

	.logbook-issue-header {
		padding: calc(var(--logbook-issue-header-factor) * 8) calc(var(--logbook-issue-header-factor) * 5) calc(var(--logbook-issue-header-factor) * 12);
	}

	#logbook-nav-links a:not(:last-child)::after {
		margin: 20px 0;
	}

	.logbook-footer-title {
		font-size: calc(var(--medium-text-size) * 1.1);
	}

	.logbook-article-portraits {
		grid-template-columns: repeat(auto-fill, 195px);
	}

	.logbook-article-prehead {
		font-size: 2.1rem;
	}

	.awarded-shortcode::before {
		width: calc(var(--small-gap) * 1.25);
	}

	.single-quote-without-img {
		padding: calc(var(--small-gap) * 0.75) 0 var(--medium-gap);
	}

	#logbook-nav-divider {
		margin: calc(var(--small-gap) * 0.5) 0 calc(var(--small-gap) * -0.25);
	}

}

/* Tablet */
@media (max-width: 1100px) {

	html {
		--input-height: 40px;
		--large-text-size: 2.8rem;
		--medium-text-size: 1.6rem;
		--medium-small-text-size: 1.3rem;
	}

	.slider-logo {
		width: 55%;
	}

	.negative-margin {
		margin-top: var(--negative-margin-1100, var(--negative-margin-1300, var(--negative-margin-1500, var(--negative-margin))));
	}

	.column-padding-left {
		padding-left: 25px;
	}

	.column-padding-right {
		padding-right: 25px;
	}

	.map-compass {
		width: var(--input-height);
	}

	#footer-logo {
		width: 225px;
	}

	.only-illustration-teaser .teaser-illustration {
		width: calc(var(--sidebar-inset) * 3);
	}

	.quotes .img, .contact .img {
		width: 100px;
		margin-bottom: 25px;
	}

	.quotes blockquote, .contact > div {
		padding-left: var(--sidebar-inset);
		display: block;
	}

	.contact {
		grid-template-columns: 1fr;
	}

	.sea-offer p:last-child {
		display: -webkit-box;
		-webkit-line-clamp: 8;
		line-clamp: 8;
		-webkit-box-orient: vertical;  
		overflow: hidden;
	}

	.img-text-combinations.growing-imgs figure .img {
		flex-grow: 0;
	}

	.contacts-entry {
		grid-template-columns: 90px 1fr 2px 200px;
	}

	.contacts-filter-terms p {
		margin: 13px 0;
	}

	.search-result {
		padding: 35px;
	}

	.quotes .img, .contact .img {
		left: -5px;
	}

	.contact .h3 {
		margin: 0;
	}

	.contact .img {
		margin: 0;
	}

	.html-content h2 {
		margin: 45px 0 30px;
	}

	.html-content h3 {
		margin: 35px 0 -15px;
	}

	.contacts-filter-terms :is(span, strong) br {
		display: none;
	}

	.background-section {
		padding: var(--large-gap) 25px var(--large-gap) var(--outer-width);
		width: calc(100% + var(--outer-width) + 25px);
	}

	.interactive-map-consent {
		top: calc(var(--input-height) / 2);
	}

	.offer-img-label {
		font-size: calc(var(--small-text-size) * 0.75);
	}

	.logbook-issue-header-link {
		margin: 1vw 0;
	}

	.logbook-issue-header-prehead {
		font-size: calc(var(--logbook-issue-header-factor) * 1);
	}

	.logbook-issue-header-head {
		font-size: calc(var(--logbook-issue-header-factor) * 1.3);
	}

	.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype {
		--logbook-header-height: 65px;
	}

	.logbook-issue-header h1 {
		translate: 0 -90%;
	}

	.awarded-shortcode p {
		margin: 10px 0;
	}

	.awarded-shortcode::before {
		width: var(--small-gap);
	}

	.speech-bubble p {
		padding: 30px;
	}

	.logbook-issue-header-ribbon {
		top: 0.7vw;
	}

	.logbook-content {
		padding-top: var(--medium-gap);
	}

	.logbook-article-portraits {
		grid-template-columns: repeat(auto-fill, 190px);
	}

	#privacy-popup :is(.h3, .html-content, .cols) {
		margin: calc(var(--small-gap) * 0.75) 0;
	}

}

/* Smartphone */
@media (max-width: 900px) and (max-device-aspect-ratio: 1/1) {

	html {
		--header-height-reduced: 60px;
		--max-width: calc(100vw - 50px - var(--scrollbar-width));
		--lightbox-inset: 100px;
		--large-text-size: 1.8rem;
		--medium-text-size: var(--large-text-size);
		--medium-line-height: var(--large-line-height);
		--medium-small-text-size: 1.4rem;
	}

	.cols, .line.vertically-on-smartphone, .html-content, .sidebar, .sidebar-smartphone {
		display: contents;
	}

	.line.distribute:not(.vertically-on-smartphone) > * {
		margin: 0 !important;
	}

	:is(.line.start, .line.end):not(.vertically-on-smartphone) > * {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		margin-left: 0 !important;
	}

	.img.fitting-size {
		height: auto;
	}

	.img.fitting-size::after {
		content: '';
		display: block;
		padding-bottom: 66%;
	}

	#msg p {
		max-width: var(--max-width);
	}

	[href^="tel:"] {
		pointer-events: all;
	}

	.column-padding-left {
		padding-left: 0;
	}

	.column-padding-right {
		padding-right: 0;
	}

	.negative-margin {
		margin-top: var(--negative-margin-900, var(--negative-margin-1100, var(--negative-margin-1300, var(--negative-margin-1500, var(--negative-margin)))));
	}

	.auto-grid {
		display: contents;
	}

	.gallery-imgs {
		grid-template-columns: 1fr 1fr;
	}

	.sidebar {
		background-color: transparent;
	}

	.sidebar::before {
		display: none;
	}

	#meta-nav > div {
		display: none;
	}

	.slider-logo {
		width: 90%;
		transform: translate(-2.5%, -5%);
	}

	.initial {
		font-size: 320%;
		transform: translateY(34%);
	}

	.slider {
		height: 125vw;
		margin-bottom: var(--medium-gap);
	}

	h1, .h1 {
		margin: 35px 0;
	}

	h2, .h2 {
		margin: 25px 0;
	}

	.slider-title img {
		width: var(--small-gap);
		height: var(--small-gap);
	}

	.slider-title :is(h1, .h1) {
		font-size: var(--medium-small-text-size);
		line-height: var(--medium-small-line-height);
	}

	.slider-title .line > :not(:last-child) {
		margin-right: 25px;
	}

	.slider-title {
		padding: 25px var(--outer-width) 25px calc(var(--large-gap) * 1.25);
	}

	.hide-mobile {
		display: none !important;
	}

	.news-overview {
		grid-template-columns: 1fr;
	}

	.news-article p, .offer p, .sea-offer p:first-child {
		margin-top: 15px;
	}

	.awards {
		margin: var(--medium-gap) 0;
		grid-template-columns: 1fr;
		grid-gap: 35px;
	}

	.awards > span {
		display: none;
	}

	.awards div div {
		grid-row-gap: 25px;
	}

	.awards div:last-child div {
		grid-template-columns: 1fr 1fr;
	}

	.awards p {
		margin: 0 0 35px;
	}

	.map > :is(p, h2), .teaser :is(p, h2) {
		padding-left: 0;
	}

	#mobile-nav-trigger p {
		position: relative;
		top: -2px;
	}

	.map-wrapper, .history-teaser {
		width: calc(100% + 2 * var(--outer-width));
		left: calc(-1 * var(--outer-width));
	}

	.map-wrapper .icon {
		left: var(--outer-width);
	}

	footer {
		margin-top: var(--large-gap);
	}

	.history-teaser {
		margin-top: -20px;
		padding-bottom: calc(var(--large-gap) * 1.25);
	}

	.history-teaser .img {
		width: calc(100% - 2 * var(--outer-width));
		left: var(--outer-width);
		margin-bottom: 25px;
	}

	.history-teaser :is(p, h2) {
		padding-left: var(--outer-width);
		padding-right: var(--outer-width);
	}

	footer .max-width {
		display: block !important;
	}

	footer .line {
		justify-content: space-between !important;
	}

	footer p {
		margin: 0 !important;
	}

	.logbuch-posttype .logbook-footer {
		height: auto;
	}

	.logbuch-posttype .logbook-footer .max-width {
		padding: 25px 0;
	}

	.logbuch-posttype #footer-logo {
		margin-top: 25px;
	}

	.map > p, .teaser p {
		margin: 15px 0 5px;
	}

	#mobile-nav .h3 br {
		display: block;
	}

	#mobile-nav p {
		margin: 15px 0;
	}

	#mobile-nav .h3 {
		margin: 25px 0;
	}

	#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
		width: calc(100% - 2 * var(--outer-width));
	}

	#footer-logo {
		width: 200px;
	}

	.back-link {
		margin-bottom: -15px;
	}

	.slider-nav {
		display: none;
	}

	#layer > div {
		width: calc(100% - 2 * var(--outer-width)) !important;
		padding: 25px;
	}

	.offers {
		grid-template-columns: 1fr;
	}

	.quotes, .only-illustration-teaser, .contact {
		width: calc(100% + 2 * var(--outer-width));
		left: calc(-1 * var(--outer-width));
	}

	.sidebar-padding {
		padding-left: 0;
	}

	.news-overview, .offers {
		grid-gap: 40px;
	}

	.only-illustration-teaser :is(p, h2) {
		padding-left: var(--outer-width);
	}

	.only-illustration-teaser .teaser-illustration {
		right: 10px;
		top: -25px;
		transform: none;
		width: 22%;
	}

	.only-illustration-teaser p {
		margin-top: 0;
	}

	.gallery {
		margin: var(--medium-gap) 0;
	}

	#lightbox-close {
		top: var(--large-gap);
	}

	#lightbox-prev, #lightbox-next {
		bottom: var(--large-gap);
		top: auto;
	}

	#lightbox-prev {
		left: var(--outer-width);
	}

	#lightbox-next, #lightbox-close {
		right: var(--outer-width);
	}

	.offer-awards {
		margin: var(--medium-gap) 0;
	}

	.offer-award {
		grid-template-columns: 1fr;
		grid-gap: 35px;
	}

	.offer-award img {
		width: 50%;
	}

	.gallery-img .icon {
		left: 10px;
		bottom: 10px;
	}

	.contact {
		padding-left: 0;
	}

	.contact > div {
		padding: 0 var(--outer-width);
	}

	.more {
		margin-top: 25px;
	}

	.sea-offer p:last-child {
		-webkit-line-clamp: 5;
		line-clamp: 5;
		margin-bottom: 0;
	}

	.sea-offer h2 {
		margin-bottom: -5px;
	}

	.sea-offers {
		margin: var(--medium-gap) 0;
	}

	.background-section {
		padding: var(--medium-gap) var(--outer-width);
		margin-top: var(--medium-gap);
		width: calc(100% + 2 * var(--outer-width));
	}

	.expanding-texts-body .cols {
		display: block;
		margin: 30px 0 15px;
	}

	.expanding-texts {
		margin: var(--medium-gap) 0;
	}

	.expanding-texts-body {
		padding-left: 0;
	}

	.expanding-texts-body .img {
		width: 50%;
		left: 25%;
	}

	.expanding-texts-body .col-span-4 + .col-span-2 {
		padding-top: 25px;
	}

	.jobs-filter .form-cols {
		--form-cols: 1fr !important;
	}

	.jobs {
		margin: 35px 0;
	}

	.job {
		grid-template-columns: 1fr;
		grid-gap: 25px;
	}

	.job > div:first-child, .job > div:last-child {
		grid-column: initial;
	}

	.job h3 {
		top: 0;
	}

	.job-info img {
		width: 35px;
		margin-right: 20px;
	}

	.job-info p {
		position: relative;
		top: -3px;
	}

	.only-smartphone {
		display: contents;
	}

	.img-text-combinations, .img-text-combination {
		margin: 35px 0;
	}

	.img-text-combination figure {
		top: 0;
	}

	figure {
		margin: 35px 0;
	}

	.timeline-entries {
		margin: 35px 0;
	}

	.timeline-entries::before {
		left: 5px;
	}

	.timeline-entry:nth-child(even) * {
		text-align: left;
	}

	.timeline-entry h3 {
		margin: 5px 0 15px;
	}

	.timeline-entry {
		display: block;
		padding-left: 35px;
		margin: 35px 0;
	}

	.timeline-entries::after {
		content: url('/wp-content/themes/ballin/img/timeline-arrow-smartphone.svg');
		left: 0;
		width: 12px;
		height: 8px;
		bottom: 5px;
	}

	.timeline-entry time::before {
		width: 12px;
		height: 12px;
		left: -35px !important;
		top: 45%;
	}

	.expanding-element .button {
		margin-top: 25px;
	}

	.foundation-template .sidebar::after {
		display: none;
	}

	.blue-background-main-col {
		margin-bottom: calc(var(--large-gap) * 1.25);
	}

	.blue-background-main-col::before {
		height: calc(100% + 1.75 * var(--large-gap));
		width: calc(100% + 2 * var(--outer-width));
		left: calc(-1 * var(--outer-width));
	}

	:target {
		scroll-margin-top: calc(var(--header-height-reduced) + 25px);
	}

	.contacts-entry {
		display: block;
		padding: 35px;
	}

	.contacts-entry::after {
		display: none;
	}

	.contacts-entry .img {
		width: 100px;
		margin-bottom: 25px;
		left: -5px;
	}

	.contacts-entry .h3 {
		margin-top: 0;
	}

	.contacts-entry > div:last-child p {
		margin-bottom: 0;
	}

	.contacts-entry.without-img .img {
		display: none;
	}

	.contacts-filter-terms {
		margin: 35px 0;
	}

	.contact-template .sidebar h2 {
		display: none;
	}

	.search-template .search-input {
		width: 100%;
	}

	.search-template form .input-and-label {
		margin-right: 0 !important;
	}

	.search-result {
		padding: 35px 25px 25px;
	}

	.slider-title-top {
		padding: 35px var(--outer-width) calc(var(--large-gap) * 1.25) var(--large-gap);
		transform-origin: 100% 100%;
		transform: scale(0.6);
		top: auto;
		bottom: -25px;
	}

	.slider-title button {
		margin-top: 25px;
	}

	.slider-text {
		margin-top: 15px;
	}

	:is(.post-posttype, .angebote-posttype, .job-posttype) #header + .max-width > .cols > .col-span-4 > .column-padding > .img-wrapper-with-label:first-child {
		margin-top: 25px;
	}

	.job-info p span br {
		display: block;
	}

	.html-content h2 {
		margin: 40px 0 25px;
	}

	.job-info img {
		top: 5px;
	}

	.job-posttype .job-info {
		margin: 25px 0;
	}

	.sidebar .input-icon {
		background-color: transparent;
	}

	.contact.without-img > div:first-child {
		display: none;
	}

	.quotes .without-img .img {
		display: none;
	}

	.offer-first-contact-cols {
		display: block;
		margin-top: 25px;
	}

	.offer-first-contact-cols > *:not(:last-child) {
		margin-right: 0 !important;
		margin-bottom: 25px !important;
	}

	.offer-first-contact h2 {
		margin-bottom: 25px;
	}

	.offer-first-contact::after, .extra-offer::after {
		content: none;
	}

	.offer-first-contact, .extra-offer {
		padding-left: var(--small-gap);
		margin: var(--small-gap) 0;
	}

	.hide-on-smartphone {
		display: none !important;
	}

	.interactive-map {
		border-left: none;
	}

	.offer-first-contact, .extra-offer {
		padding: 25px;
	}

	#logo-redesign-video {
		margin: -25px 0 35px;
	}

	.auto-grid button {
		white-space: normal;
	}

	.shortcode-cols {
		display: contents;
	}

	.shortcode-col:not(:last-child) {
		margin-right: 0;
	}

	.interactive-map-consent {
		left: var(--outer-width);
	}

	.img-wrapper-with-label .offer-img-label {
		top: calc(var(--small-gap) / -4);
	}

	.offer-img-label {
		font-size: calc(var(--small-text-size));
	}

	.mission-statement-template .html-content h2 {
		padding: calc(var(--small-gap) / 4);
		font-size: var(--medium-small-text-size);
		line-height: var(--medium-small-line-height);
		margin: calc(var(--small-gap) * 0.75) 0 calc(var(--small-gap) * 0.5);
	}

	.mission-statement-template .sticky-content > :is(p, .negative-margin, .jump-links) {
		display: none;
	}

	.mission-statement-template h1 {
		margin: 25px 0;
	}

	.logbook-issue-header {
		padding: 100px var(--outer-width) 125px;
		margin-bottom: var(--medium-gap);
	}

	.safari .logbook-issue-header {
		padding-top: 35px;
	}

	.safari .logbook-issue-header h1 {
		margin-bottom: 30px;
	}

	.logbook-issue-header-content {
		column-count: 1;
	}

	.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype {
		--max-width: calc(100vw - 50px - var(--scrollbar-width));
	}

	.logbook-issue-header h1 {
		gap: 20px;
	}

	.logbook-issue-header h1 span:first-child {
		font-size: 40px;
	}

	.logbook-issue-header h1 span:last-child {
		font-size: 30px;
	}

	#logbook-nav-trigger {
		white-space: nowrap;
	}

	.logbook-issue-header-ribbon {
		left: 75vw;
		width: 8vw;
		top: -1vw;
	}

	.logbook-issue-header-prehead {
		font-size: 12px;
		translate: 0 15%;
	}

	.logbook-issue-header-head {
		font-size: var(--small-text-size);
	}

	.logbook-issue-header-link {
		margin: 10px 0;
	}

	.logbook-issue-header-link.hide-link {
		display: none;
	}

	.logbook-issue-header-bottom {
		translate: 0 0;
		transform-origin: 100% 100%;
		scale: 1.5;
	}

	.logbook-issue-header-logo {
		right: var(--outer-width);
		width: 55%;
		bottom: 0.5%;
	}

	.logbook-issue-header {
		height: calc(var(--full-height) - var(--logbook-header-height) - 20px);
	}

	.logbook-issue-header-more {
		margin-top: 15px;
	}

	.logbook-issue-header-more p {
		color: white;
		cursor: pointer;
		margin: 10px 0 0;
	}

	.logbook-issue-header-more strong {
		color: inherit;
	}

	.logbook-issue-header-more strong img {
		width: 1ch;
		margin-left: 0.5ch;
		rotate: 90deg;
	}

	.logbook-issue-header.show-all {
		height: auto;
	}

	.logbook-issue-header-link:last-of-type::after {
		content: none;
	}

	.logbook-issue-header + .max-width .html-content {
		display: block;
		margin: 0 0 var(--medium-gap);
	}

	.logbook-article {
		padding: var(--medium-gap) 0;
	}

	.logbook-article h2 {
		font-size: calc(var(--large-text-size) * 0.9);
	}

	.logbuch-login-template, .logbuch-overview-template, .logbuch-posttype {
		--logbook-header-height: 50px;
		--logbook-footer-height: calc(var(--large-gap) * 1.5);
	}

	.logbook-article-portraits {
		grid-template-columns: 1fr;
		gap: calc(var(--column-gap) * 0.66);
	}

	.logbook-article-portrait .img {
		position: relative;
		width: 50%;
		left: 25%;
	}

	.logbook-article-portrait p {
		margin-top: 15px;
	}

	.logbook-article-prehead {
		font-size: 1.2rem;
	}

	.logbook-article hgroup {
		margin: 35px 0;
	}

	.lightbox-video {
		margin: var(--medium-gap) 0;
	}

	.logbook-article .lightbox-video {
		margin: 35px 0;
	}

	.lightbox-video > img, .logbook-article .sticky-content .lightbox-video > img {
		width: var(--medium-gap);
		scale: 1;
	}

	.logbook-article.white + .logbook-article.white::before, .logbook-article.grey + .logbook-article.grey::before, .logbook-article.blue + .logbook-article.blue::before, .logbook-article.green + .logbook-article.green::before {
		top: 5px;
	}

	.logbook-article .sticky-element {
		margin-bottom: 30px;
	}

	.logbook-article .button {
		margin: 35px 0;
	}

	.logbook-article figcaption {
		margin-top: 15px;
	}

	.logbook-nav-trigger img {
		width: 20px;
	}

	#lightbox-frame::after, #lightbox-video::after {
		padding-bottom: 125%;
	}

	.awarded-shortcode {
		align-items: start;
	}

	.awarded-shortcode::before {
		width: var(--small-gap);
		translate: 0 25%;
	}

	.speech-bubble {
		margin: 15px 15px 15px 0;
	}

	.speech-bubble p {
		padding: 15px;
		font-size: 1rem;
	}

	.speech-bubble img:last-of-type {
		width: 20px;
	}

	.logbook-gallery .carousel-cols {
		--carousel-column-count: 2 !important;
	}

	.logbook-gallery .all-carousel-cols {
		gap: calc(var(--column-gap) / 2);
	}

	.logbook-gallery .carousel-col {
		width: calc(100% / var(--carousel-column-count) - var(--column-gap) / 2 * ((var(--carousel-column-count) - 1) / var(--carousel-column-count)));
	}

	.logbook-article table td {
		padding: 5px 10px;
		font-size: 1rem;
	}

	#logbook-nav {
		padding: var(--outer-width);
	}

	#logbook-nav .h2 {
		font-size: var(--small-text-size);
		line-height: var(--small-line-height);
	}

	.logbook-nav-prehead {
		font-size: 0.8rem;
	}

	#logbook-nav-close {
		width: calc(var(--small-gap) * 0.66);
	}

	#logbook-nav-links a:not(:last-child)::after {
		margin: 10px 0;
		border-top-width: 1px;
		translate: 0 -5px;
	}

	.logbook-overview {
		margin: var(--medium-gap) 0;
		grid-template-columns: 1fr 1fr;
		gap: 10%;
	}

	.logbook-content {
		padding: var(--medium-gap) 0;
	}

	.logbuch-login-template form {
		width: 100%;
		margin: var(--medium-gap) 0;
	}

	.logbook-issue-header-top {
		transform-origin: 50% 0;
		scale: 1 1.25;
	}

	#logbook-nav hr {
		border-bottom-width: 1px;
		margin: 15px 0;
	}

	#logbook-nav-links .h2 {
		line-height: 1.2em;
		font-family: 'HK Grotesk Bold';
	}

	body:not(.logbuch-posttype) .logbook-footer-title {
		display: none;
	}

	body:not(.logbuch-posttype) .logbook-footer .max-width {
		display: flex !important;
	}

	.safari :is(.logbook-issue-header-top, .logbook-issue-header-ribbon) {
		display: none;
	}

	.logbook-footer-title {
		font-size: var(--small-text-size);
		translate: 0;
	}

	.logbook-nav-trigger span span {
		display: none;
	}

	.logbook-header-title {
		font-size: calc(var(--medium-text-size) * 0.8);
	}

	.logbook-article .sticky-content {
		translate: 0;
	}

	.single-quote-without-img {
		padding: calc(var(--small-gap) * 0.25) 0 var(--medium-gap);
	}

	#privacy-popup > div {
		padding: calc(var(--small-gap) / 2);
		width: 90%;
	}

	#privacy-popup :is(.h3, .html-content, .cols) {
		margin: calc(var(--small-gap) * 0.5) 0;
	}

	#privacy-popup .button {
		margin: 15px 0;
	}

	#privacy-popup .checkbox-input {
		margin: 25px 0;
	}

	#logbook-nav-links {
		margin-top: 0;
	}

	#logbook-nav, .logbook-header {
		max-width: 100vw;
	}

	#logbook-nav-footer p {
		max-width: 75%;
	}

	#logbook-nav-footer .line {
		align-items: start;
	}

	#logbook-nav-close {
		translate: 0 25%;
	}

	#logbook-nav-divider-2 {
		margin: calc(var(--small-gap) / 2) 0 !important;
	}

}
