:root {
	--gray: #e5e5e5;
	--red: #d2030d;
	--rose: #ffe1e1;
	--black: #1E1D1D;
}


/* Fonts */

@font-face {
    font-family: 'Frutiger';
    src: url('../fonts/Frutiger.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Premiera';
    src: url('../fonts/Premiera-Book.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}



/* General */

body {
	background: #fff;
	font-family: 'Frutiger', "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color: var(--black);
	font-size: 19px;
	letter-spacing: 0.1px;
}

p, a {
	color: var(--black);
}

a {
	text-decoration: underline;
}

h1 {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	font-size: 50px;
	color: var(--black);
	opacity: 40%;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

h2, h3, h4 {
	font-family: 'Premiera';
	font-style: normal;
	font-weight: 700;
	color: var(--black);
	margin-bottom: 20px;
}


/* Navigation */

nav {
	padding: 0px;
}

.navbar {
	min-height: 70px;
}

.navbar a {
	text-decoration: none;
}

.navbar-nav .nav-item {
	margin: 0 20px;
}

.navbar-nav .nav-link {
	letter-spacing: 1px;
	font-size: 15px;
}

.nav-font {
	text-transform: uppercase;
	letter-spacing: 1px;
}


/* Buttons */

.red-box {
	background-color: var(--red);
	color: #fff !important;
	border: none;
	padding: 9px 25px;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 15px;
	letter-spacing: 1px;
}

.red-box:hover {
	color: #fff !important;
	opacity: 0.85;
}


/* Spacing */

.py-6 {
	padding: 100px 0px;
}

.pb-6 {
	padding-bottom: 100px;
}

.kk-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.kk {
    display: inline-block;
    border: 1px solid #000;
    padding: 10px 25px;
    white-space: nowrap;
}


/* Hero */

#home {
	margin-top: 56px;
}

.hero-video {
    display: flex;
    justify-content: center;
    align-items: center;

    width: 100%;
    height: 50vh;

    background-color: #E9E9E9;
    overflow: hidden;
}

.hero-logo {
    display: flex;
    flex-direction: column;
    align-items: center;

    width: 67%; /* ca. 2/3 der bisherigen Größe */
    max-width: 500px;
}

.hero-video-logo {
    display: block;

    width: 100%;
    height: auto;
}

.hero-subtitle {
    margin-top: 8px;
	font-family: 'Premiera';
    font-size: 1.5rem;
    font-weight: 400;
    text-align: center;
}


.icon-animation {
    width: 150px;
    height: 150px;

    display: grid;
    place-items: center;

    margin: 0 auto;
}

.icon-animation img {
    grid-area: 1 / 1;

    width: 150px;
    height: 150px;

    object-fit: contain;

    animation: switch 2s infinite;
}

.icon-animation img:nth-child(2) {
    animation-delay: 1s;
}

@keyframes switch {
    0%, 45% {
        opacity: 1;
    }

    50%, 95% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

/* Backgrounds */

.t-gray {
	background-color: var(--gray);
}

.t-lightgray {
	background-color: #F7F7F7;
}

.t-rose {
	background-color: var(--rose);
}

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

.t-red p, .t-red a, .t-red h3, .t-red h2 {
	color: #fff !important;
}


/* Content */

.box {
	background-color: var(--beige);
	opacity: 100%;
	text-align: center;
	padding: 50px 40px;
}

.py-6 {
	padding: 100px 0px;
}

.blockquote-footer {
	color: black;
	font-size: 19px;
}

#quoteCarousel {
    height: 400px;
}




/* Forms */

.behandlung-select {
	height: 50px;
	padding: 10px 15px;
}

.form-control {
	border: none;
	border-bottom: 1px solid #999;
	border-radius: 0;
	padding: 12px 0;
	background-color: transparent;
}

.form-control:focus {
	border-color: var(--red);
	box-shadow: none;
	background-color: transparent;
}

form label {
	font-weight: 500;
}

form h3 {
	margin-bottom: 1.5rem;
}

textarea.form-control {
	border: 1px solid #999;
	padding: 12px;
}

textarea.form-control:focus {
	border-color: var(--red);
}


/* Footer */

footer a:hover {
	color: white;
}

footer p, footer a, footer h3 {
	color: var(--black);
}


/* Mobile */

@media (max-width: 768px) {

	.text-spacer {
		padding: 0 10px;
	}

	.box {
		margin: 25px;
	}
}

@media (max-width: 768px) {
	#home .carousel-inner .carousel-item img {
		object-position: 43% center;
	}
}

@media (max-width: 767.98px) {

    #navContent {
        background: #fff;
        max-height: calc(100vh - 70px);
        overflow-y: auto;
        padding: 15px 20px 25px;
    }

    #navContent .navbar-nav {
        align-items: flex-start;
        width: 100%;
    }

    #navContent .nav-item {
        margin: 0;
    }

    #navContent .nav-link {
        display: inline-block;
        padding: 9px 0;
    }

    #navContent .nav-item:last-child {
        margin-top: 12px;
    }

    #navContent .nav-link.red-box {
        display: inline-block;
        width: auto;
        padding: 9px 25px;
    }
	
	#quoteCarousel {
    height: 500px;
}

}