
/* open-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v44-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/open-sans-v44-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v44-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/open-sans-v44-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/open-sans-v44-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/open-sans-v44-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-500italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v44-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../fonts/open-sans-v44-latin-600italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-600italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v44-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/open-sans-v44-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-700italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/open-sans-v44-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-800.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* open-sans-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../fonts/open-sans-v44-latin-800italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/open-sans-v44-latin-800italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

:root {
    /* justieren */
  --color-text: #3c3c3c;
  --color-red: #a21435;
  --color-primary-green: #5fbf46;
  --color-primary-green-hover: #5aba42;
  --bs-btn-disabled-bg: var(--color-primary-green-hover);
  --color-primary-green-active: #5aba42;
  /* OK */
  --color-dark-gray: #483F41;
  --color-dark-gray-rgb: 72, 63, 65;
  /* Justieren */
  --color-light-gray: #f3f3f3;
  /* noch offen */
  --color-border-gray: #a3a3a3;
  --color-accordion-border: #503239;
  --color-bg-green: #ebf7e4;
  --color-white: #ffffff;
  --color-modal-green: #5fbf46;
}

html,
body {
    height: 100%;
    font-family: 'Open Sans', sans-serif;
    font-size: 1rem;
    line-height: 150%;
    font-weight: 300;
    color: var(--color-text);
}

html,
body {
    hyphens: auto;
}

@media only screen and (min-width: 992px) {
    html,
    body {
        hyphens: none;
    }
}

body {
    padding-top: 60px;
    height: 100vh;
    overflow-y: scroll;
}

:target {
    scroll-margin-top: 60px;
}

@media only screen and (min-width: 992px) {
    body {
        padding-top: 120px;
    }

    :target {
        scroll-margin-top: 120px;
    }
}

h1 {
    font-size: 35px;
    font-weight: normal;
    line-height: 45px;
}

h1 span {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
}

h2 {
    position: relative;
    font-size: 28px;
    font-weight: normal;
    line-height: 38px;
    text-align: center;
}

h2::before {
    position: absolute;
    margin-left: -50px;
    top: -10px;
    left: 50%;
    width: 100px;
    height: 4px;
    background-color: var(--color-red);
    content: "";
}

h3 {
    font-weight: normal;
}

h5 {
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
}

@media only screen and (min-width: 992px) {
    h1 {
        font-size: 45px;
        font-weight: normal;
        line-height: 55px;
    }

    h2 {
        font-size: 35px;
        line-height: 50px;
    }
}

/* neu */
a.arrow {
    color: #323c3c;
    font-size: 15px;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-decoration: none;
}

/* alt 
a.link-arrow {
    color: #323c3c;
    font-size: 15px;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-decoration: none;
}

a.link-arrow span {
    display: inline-block;
    transition: transform .2s ease;
}

a.link-arrow:hover span,
a.link-arrow:focus-visible span {
    transform: translateX(20px);
}
*/

em {
    font-weight: 600;
    font-style: normal;
}

strong {
    font-weight: 700;
    font-style: normal;
}

.table {
    border-color: var(--color-border-gray);
}

.border-top {
    border-color: var(--color-border-gray) !important;
}

.link-underline {
    color: var(--color-text);
    text-decoration-color: rgba(var(--color-primary-green), 0) !important;
}

.link-underline:hover {
    text-decoration-color: rgba(var(--color-primary-green), 1) !important;
}

.btn {
    height: 45px;
    font-size: 16px;
    font-weight: 500;
    line-height: 29px;
    padding: 8px 20px;
    width: max-content !important;
    border-radius: 25px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.btn-primary {
    --bs-btn-color: var(--color-white);
    --bs-btn-bg: var(--color-primary-green);
    --bs-btn-border-color: var(--color-primary-green);
    --bs-btn-focus-shadow-rgb: 95, 191, 70;
    --bs-btn-hover-color: var(--color-white);
    --bs-btn-hover-bg: var(--color-primary-green-hover);
    --bs-btn-hover-border-color: var(--color-primary-green-hover);
    --bs-btn-active-color: var(--color-white);
    --bs-btn-active-bg: var(--color-primary-green-active);
    --bs-btn-active-border-color: var(--color-primary-green-active);
    --bs-btn-disabled-color: var(--color-white);
    --bs-btn-disabled-bg: var(--color-primary-green-hover);
    --bs-btn-disabled-border-color: var(--color-primary-green-hover);
}

.btn-outline-secondary:hover {
    background-color: var(--color-text);
}

.btn-sm {
    height: 35px;
    font-size: 14px;
    font-weight: 600;
    line-height: 25px;
    padding: 5px 15px;
}

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

.bg-dark-gray {
    background-color: var(--color-dark-gray);
    color: var(--color-white);
}

.bg-logo {
    background-image: url("../images/brandt_physio_plus_logomark_grau.svg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain
}
@media (min-width: 992px) {
  .w-lg-75 {
    width: 75% !important;
  }
    .bg-logo {
        background-image: none;
    }
}
@media (min-width: 1200px) {
  .w-lg-75 {
    width: 85% !important;
  }
}

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

.list-colored {
    padding-left: 1rem;
}

.list-colored li::marker {
    color: #5fbf46;
}

nav .icon-wrapper {
    position: relative;
    width: 16px;
    height: 16px;
}

nav .icon-wrapper img {
    position: absolute;
    inset: 0;
}

nav .icon-hover {
    opacity: 0;
}

nav .icon-swap.active .icon-hover,
nav .icon-swap:hover .icon-hover {
    opacity: 1;
}

nav .icon-swap:hover .icon-default {
    opacity: 0;
}

nav .icon-wrapper .material-symbols-outlined.wellness-icon,
nav .icon-wrapper .material-symbols-outlined.kurse-icon,
nav .icon-wrapper .material-symbols-outlined.physiotherapie-icon,
nav .icon-wrapper .material-symbols-outlined.osteopathie-icon {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
    display: block;
    font-size: 24px;
    line-height: 1;
    color: currentColor;
    transition: color .2s ease;
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0, "opsz" 20;
}

nav .icon-swap.active .wellness-icon,
nav .icon-swap:hover .wellness-icon,
nav .icon-swap.active .kurse-icon,
nav .icon-swap:hover .kurse-icon,
nav .icon-swap.active .physiotherapie-icon,
nav .icon-swap:hover .physiotherapie-icon,
nav .icon-swap.active .osteopathie-icon,
nav .icon-swap:hover .osteopathie-icon {
    color: var(--color-primary-green);
}

@media (min-width: 992px) {
    nav .icon-wrapper {
        position: relative;
        width: 16px;
        height: 16px;
    }
}

@media (min-width: 992px) {
    .right-aligned {
        padding-right: calc((100vw - 960px)/2 + 0.75rem);
    }

    .left-aligned {
        padding-left: calc((100vw - 960px)/2 + 0.75rem);
    }
}

@media (min-width: 1200px) {
    .right-aligned {
        padding-right: calc((100vw - 1140px)/2 + 0.75rem);
    }

    .left-aligned {
        padding-left: calc((100vw - 1140px)/2 + 0.75rem);
    }

    nav .icon-wrapper {
        width: 20px;
        height: 20px;
    }

    nav .icon-wrapper img {
        width: 20px;
        height: 20px;
    }

    nav .icon-wrapper .material-symbols-outlined.wellness-icon,
    nav .icon-wrapper .material-symbols-outlined.kurse-icon,
    nav .icon-wrapper .material-symbols-outlined.physiotherapie-icon,
    nav .icon-wrapper .material-symbols-outlined.osteopathie-icon {
        font-size: 30px;
    }
}

@media (min-width: 1400px) {
    .right-aligned {
        padding-right: calc((100vw - 1320px)/2 + 0.75rem);
    }

    .left-aligned {
        padding-left: calc((100vw - 1320px)/2 + 0.75rem);
    }
}

.carousel-control-prev {
    position: absolute;
    width: 30px;
    height: 30px;
    left: -15px;
    top: 50%;
    margin-top: -15px;
    opacity: 1;
}

.carousel-control-next {
    position: absolute;
    width: 30px;
    height: 30px;
    right: -15px;
    top: 50%;
    margin-top: -15px;
    opacity: 1;
}

.carousel-indicators {
    margin-bottom: -50px;
}

.carousel:hover .carousel-control-prev {
    transition: all 3s ease;
}

.carousel:hover .carousel-control-next {
    transition: all 3s ease;
}

.carousel:hover .carousel-control-next-icon {
    margin-left: -1.25rem;
}

.carousel-indicators [data-bs-target] {
    width: 8px;
    height: 8px;
    border-radius: 100%;
    border: 1px solid rgba(var(--color-dark-gray-rgb), 0.6);
    background-color: rgba(var(--color-dark-gray-rgb), 0.6);
    opacity: 1;
}

.carousel-indicators [data-bs-target].active {
    border: 1px solid var(--color-primary-green);
    background-color: var(--color-primary-green);
}

@media (min-width: 992px) {
    .carousel-control-next img,
    .carousel-control-prev img {
        width: 60px;
        height: 60px;
    }

    .carousel-control-prev {
        width: 60px;
        height: 60px;
        top: 50%;
        margin-top: -30px;
        left: -30px;
    }

    .carousel-control-next {
        width: 60px;
        height: 60px;
        top: 50%;
        margin-top: -30px;
        right: -30px;
    }
}

/* Accordion */
.accordion-item {
    border-color: var(--color-accordion-border);
}

.accordion-item h2:before {
    display: none;
}

.accordion-button:not(.collapsed) {
    color: inherit;
    background-color: inherit;
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-button::after {
    width: 20px;
    height: 20px;
    background-image: url('../images/icon_stat1.svg');
    background-size: 20px 20px;
    background-position-x: 0;
    background-position-y: 0;
    transition: none;
}

.accordion-button.collapsed::after {
    background-image: url('../images/icon_stat1.svg') !important;
    transform: none;
}

.accordion-button.collapsed:hover::after {
    background-image: url('../images/icon_stat1_active.svg') !important;
}

.accordion-button:not(.collapsed)::after {
    background-image: url('../images/icon_statminus1_active.svg') !important;
    transform: none;
}

.accordion-flush>.accordion-item:first-child {
    border-top: 1px solid var(--color-accordion-border);
}

.accordion-flush>.accordion-item:last-child {
    border-bottom: 1px solid var(--color-accordion-border);
}

.accordion-button {
    font-size: 18px;
    font-weight: normal;
    line-height: 26px;
    padding: 10px 0 !important;
}

.accordion-body {
    font-size: 18px;
    line-height: 26px;
}

.accordion-body ul {
    padding-left: 1rem;
}

.accordion-light .accordion-item {
    border-color: var(--color-border-gray);
}

.accordion-light .accordion-body {
    border-top: 1px solid var(--color-border-gray);
}

.accordion-flush.accordion-light>.accordion-item:first-child {
    border-top: none;
}

.accordion-flush.accordion-light>.accordion-item:last-child {
    border-bottom: none;
}

.accordion-body .fs-6 {
    font-size: 15px !important;
    line-height: 25px;
}

@media (min-width: 992px) {
    .accordion-button {
        font-size: 25px;
        line-height: 35px;
    }
}

/* Navigation */
.navbar-toggler {
    padding-right: 0;
    border: 0;
    border-color: transparent;
}

nav .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

nav .navbar-toggler:focus {
    box-shadow: none;
}

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

nav .offcanvas-title {
    font-size: 18px;
    font-weight: normal;
    color: var(--color-white);
}

nav .offcanvas-header .btn-close {
    opacity: 1;
}

nav .offcanvas-header .btn-close:focus {
    box-shadow: none;
}

nav .offcanvas .nav-link {
    margin-left: 36px;
    font-size: 18px;
    line-height: 19px;
    font-weight: 400;
    color: var(--color-white);
}

nav .offcanvas .nav-link.icon-swap {
    margin-left: 0;
    font-size: 24px;
    line-height: 29px;
    font-weight: 400;
}

nav .offcanvas .btn {
    width: 100% !important;
}

nav .brand-title {
    font-size: 16px;
    font-weight: normal;
}

nav .header-logo-white {
    width: auto;
    height: 36px;
}

@media only screen and (min-width: 992px) {
    nav .navbar-brand img {
        width: auto;
        height: 50px;
    }

    nav .header-logo-white {
        width: auto;
        height: 50px;
    }

    nav .nav-link {
        font-size: 16px;
        font-weight: normal;
    }

    nav .offcanvas .nav-link {
        position: relative;
        display: inline-block;
        font-size: 16px;
        font-weight: normal;
        text-decoration: none;
    }

    .navbar-expand-lg .offcanvas .nav-link {
        margin-left: 1.5rem;
        padding: 0.25rem 0 0.25rem 0;
    }

    nav .offcanvas .nav-link:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 2px;
        background-color: white;
        transform: scaleX(0);
        transform-origin: left;
        transition: transform .2s ease;
    }

    nav .offcanvas .nav-link:hover::after,
    nav .offcanvas .nav-link:active::after,
    nav .offcanvas .nav-link.active::after,
    nav .offcanvas .nav-link:focus-visible::after {
        transform: scaleX(1);
    }
}

@media only screen and (min-width: 1200px) {
    nav .nav-link {
        font-size: 20px;
        font-weight: normal;
    }

    nav .brand-title {
        font-size: 20px;
    }
}

/* Header */
#header {
    background-color: var(--color-light-gray);
}

@media only screen and (min-width: 992px) {
    #header .page-image {
        -webkit-mask-image: linear-gradient(to right, transparent 0, #000 350px);
        mask-image: linear-gradient(to right, transparent 0, #000 350px);
        -webkit-mask-mode: alpha;
        mask-mode: alpha;
    }
}

@media only screen and (min-width: 992px) {
    h1 {
        max-width: 350px;
    }
}

@media only screen and (min-width: 1200px) {
    h1 {
        max-width: 80%;
    }
}

@media only screen and (min-width: 992px) {
    #header .logo {
        position: absolute;
        width: 140px;
        height: 162px;
        top: 50%;
        left: 0;
        margin-top: -81px !important;
        margin-left: -150px !important;
    }
}

@media only screen and (min-width: 1200px) {
    #header .logo {
        position: absolute;
        width: 250px;
        height: 260px;
        top: 50%;
        left: 0;
        margin-top: -144px !important;
        margin-left: -175px !important;
    }
}

/* Intro */
#intro p {
    font-size: 25px;
    line-height: 40px;
}

@media only screen and (min-width: 992px) {
    #intro p {
        font-size: 25px;
        line-height: 40px;
    }
}

/* Leistungen */
#leistungen .card-title {
    font-size: 25px;
    line-height: 30px;
    font-weight: normal;
}

#leistungen a {
    color: #ffffff;
    text-decoration: none;
}

#leistungen a.arrow-hover .arrow-stack {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
}

#leistungen a.arrow-hover .arrow-stack img {
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity .2s ease;
}

#leistungen a.arrow-hover .arrow-stack .arrow-default {
    opacity: 1;
}

#leistungen a.arrow-hover .arrow-stack .arrow-active {
    opacity: 0;
}

#leistungen a.arrow-hover:hover .arrow-stack .arrow-default,
#leistungen a.arrow-hover:focus-visible .arrow-stack .arrow-default {
    opacity: 0;
}

#leistungen a.arrow-hover:hover .arrow-stack .arrow-active,
#leistungen a.arrow-hover:focus-visible .arrow-stack .arrow-active {
    opacity: 1;
}

/* Wellness table links */
a.wellness-link {
    text-decoration: none !important;
    color: inherit;
}

a.wellness-link .wellness-icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 6px;
    position: relative;
    width: 16px;
    height: 16px;
}

a.wellness-link .wellness-icon img {
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.15s ease;
}

a.wellness-link .wellness-icon .icon-default {
    opacity: 1;
}

a.wellness-link .wellness-icon .icon-active {
    opacity: 0;
}

a.wellness-link:hover .wellness-icon .icon-default,
a.wellness-link:focus-visible .wellness-icon .icon-default {
    opacity: 0;
}

a.wellness-link:hover .wellness-icon .icon-active,
a.wellness-link:focus-visible .wellness-icon .icon-active {
    opacity: 1;
}

/* Über uns */
#ueberuns .fs-4 {
    font-size: 25px !important;
    line-height: 35px !important;
}

@media only screen and (min-width: 992px) {
    #ueberuns .fs-4 {
        font-size: 16px !important;
        line-height: 22px !important;
    }
}

@media only screen and (min-width: 1200px) {
    #ueberuns .fs-4 {
        font-size: 22px !important;
        line-height: 30px !important;
    }
}

@media only screen and (min-width: 1400px) {
    #ueberuns .fs-4 {
        font-size: 25px !important;
        line-height: 35px !important;
    }
}

/* Kontakt */
#kontakt .nav-link {
    font-size: 28px;
    font-weight: normal;
    line-height: 38px;
    color: inherit;
}

#kontakt .nav {
    border: none;
}

#kontakt .nav-item {
    border: none;
}

#kontakt .nav-link,
#kontakt .nav-link.active {
    position: relative;
    padding: 0 0 14px 0;
    border: none;
}

#kontakt .nav-link:hover::after,
#kontakt .nav-link:active::after,
#kontakt .nav-link.active::after,
#kontakt .nav-link:focus-visible::after {
    transform: scaleX(1);
}

#kontakt .nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 4px;
    background-color: var(--color-primary-green);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.2s;
}

#kontakt a {
    color: #ffffff;
    text-decoration: none;
}

a.icon-decoration .arrow-stack {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
}

a.icon-decoration .arrow-stack img {
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.2s ease;
}

a.icon-decoration .arrow-stack .arrow-default {
    opacity: 1;
}

a.icon-decoration .arrow-stack .arrow-active {
    opacity: 0;
}

a.icon-decoration:hover .arrow-stack .arrow-default {
    opacity: 0;
}

a.icon-decoration:hover .arrow-stack .arrow-active {
    opacity: 1;
}

#kontakt .fs-5 {
    font-size: 1.125rem !important;
}

#kontakt .lh-30 {
    display: inline-block;
    line-height: 30px !important;
}

#kontakt .lh-35 {
    display: inline-block;
    line-height: 35px !important;
}

#kontakt .outro {
    font-size: 25px;
    line-height: 40px;
}

@media only screen and (min-width: 992px) {
    #kontakt .nav-link {
        font-size: 35px;
        line-height: 40px;
    }

    #kontakt .outro {
        font-size: 25px;
        line-height: 40px;
    }
}

/* Popup */
#karriere-modal .modal-dialog {
   margin-top: 3rem;
}

#karriere-modal button.btn-close {
    position: absolute;
    width: 30px;
    height: 30px;
    top: 10px;
    right: 10px;
    padding: 0;
    border: none;
    background-image: url('../images/icon_close.svg');
    background-size: 30px 30px;
    z-index: 1;
    opacity: 1;
}
#karriere-modal .modal-content .overlay-1 {
    position: absolute;
    top: 170px;
    padding: 10px 15px;
    font-size: 30px;
    line-height: 36px;
    background-color: var(--color-modal-green);
    border-radius: 0 20px 20px 0;
    color: var(--color-white);
    z-index: 1;
}

#karriere-modal .modal-content .overlay-2 {
    position: absolute;
    top: 262px;
    padding: 10px 15px;
    font-size: 16px;
    line-height: 24px;
    background-color: var(--color-dark-gray);
    border-radius: 0 0 20px 0;
    color: var(--color-white);
    z-index: 1;
}


/* Footer */
footer {
    height: 150px;
    font-size: 14px;
    font-weight: 500;
    background-color: var(--color-red);
    color: var(--color-white);
}

footer p {
    font-size: 16px;
    color: var(--color-white);
}

footer a,
footer a:hover,
footer a:focus {
    color: var(--color-white);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 2px;
}

@media only screen and (min-width: 992px) {
    footer {
        height: 90px;
    }
}
