/**
 * theme-styles.css
*/


html {
    font-size: var(--root-font-size);
}

body {
    background: var(--background-white);
    color: var(--body-text-color);
    font-family: var(--primary-font);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.7;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--secondary-font);
    color: var(--heading-text-color);
    font-weight: 400;
    line-height: 1.3;
}

h1 {
    font-size: 3.4rem;
    padding-bottom: 1rem;
}

h2 {
    font-size: 1.7rem;
    padding-bottom: 1rem;
}

h3 {
    font-size: 1.4rem;
    padding-bottom: .5rem;
}

h4 {
    font-size: 1.4rem;
    padding-bottom: .5rem;
}

h5 {
    font-size: 1.25rem;
    padding-bottom: .5rem;
    line-height: 1.15;
}

h6 {
    font-size: 1.2rem;
    padding-bottom: .5rem;
}


a,
a:active,
a:visited,
a:focus,
a:focus-visible {
    color: var(--color-asp);
    text-decoration: none;
}

main {
    min-height: 50vh;
}

.row {
    width: 86%;
    max-width: 1400px;
    margin: 0 auto;
}

.button {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    color: var(--color-white) !important;
    background: var(--background-asp);
    padding: .85rem 1.5rem .85rem 1.5rem;
    font-size: .8rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    border-radius: 50px;
    border: none;
    min-height: 0;
    transition: all 400ms ease;
    cursor: pointer;
    z-index: 1;
}

.button span {
    position: relative;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.cta-button-wrapper {
    margin-top: 2rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1.5rem 1.5rem;
}

.section-padding-top {
    padding: var(--section-padding-top) !important;
}

.section-padding-bottom {
    padding: var(--section-padding-bottom) !important;
}

.section-padding-none {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.section-padding-bottom-small {
    padding: var(--section-padding-bottom-small) !important;
}




/* Erfahrungen Slider */

.testimonials-wrapper {
    position: relative;
}

.testimonials-slider {
    margin: 0 -0.75rem;
}

.testimonials-slide {
    padding: 0 0.75rem;
    height: auto;
}

.testimonials-card {
    background: var(--background-grey);
    border-radius: var(--border-radius-quarter);
    padding: 2.5rem 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 16rem;
    height: 100%;
}

.testimonials-text {
    color: var(--body-text-color);
    font-size: 0.85em;
    line-height: 1.6;
    margin: 0 0 1.5rem;
}

.testimonials-name {
    color: var(--body-text-color);
    font-size: 0.75em;
    display: block;
}

/* Arrows */
.testimonials-nav {
    position: absolute;
    top: -3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 1px solid var(--color-dark);
    background: transparent;
    cursor: pointer;
    transition: background 200ms ease, color 200ms ease;
    color: var(--color-dark);
    padding: 0;
    line-height: 0;
}

.testimonials-nav:hover {
    background: var(--color-dark);
    color: var(--color-white);
}

.testimonials-nav--prev {
    right: 3rem;
}

.testimonials-nav--next {
    right: 0;
}

/* Slick equal-height slides */
.testimonials-slider .slick-track {
    display: flex;
}

.testimonials-slider .slick-slide {
    height: auto;
}

.testimonials-slider .slick-slide > div {
    height: 100%;
}

.testimonials-slide {
    height: 100%;
}
