body {
    margin: 0;
    font-family: Helvetica, sans-serif;
    background-color: var(--color-offWhite);
    display: flex;
    flex-direction: column;
}
  
a {
    color: var(--color-black);
}

h1{
    color: var(--color-black);
    font-family: var(--font-default);
    font-size: 60px;
    font-weight: 300;
    letter-spacing: -3px;
}

h2 {
    color: var(--color-black);
    font-family: var(--font-deko);
    font-weight: 300;
    font-size: 40px;
}

@media only screen and (max-width: 500px) {
    h2 {
        font-size: 28px;
        font-weight: 500;
    }
}

h3 {
    color: var(--color-black);
    font-family: var(--font-deko);
    font-size: 24px;
    text-transform: uppercase;
}

main {
    margin-top: 60px;
    padding: 0 20px;
    gap: 100px;
    display: flex;
    flex-direction: column;
}

@media only screen and (max-width: 600px) {
    main{
        gap: 50px;
    }
}


p {
    color: var(--color-black);
    font-family: var(--font-default);
    font-size: 20px;
    line-height: 29px;
    font-weight: 200;
    hyphens: auto;
}

li {
    font-family: var(--font-default);
}

.sprung {visibility: hidden; height: 0px !important; position: absolute; margin: -61px;}
.sprung-2 {visibility: hidden; height: 0px !important; position: absolute; margin: -130px;}
button{
    background-color: unset;
    border: unset;
    padding: unset;
}

button.primary .inner a{
    display: flex;
    flex-direction: row;
    gap: 10px;
}
button.primary .inner div.icon{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
    width: 48px;
    background-color: var(--color-brand);
}

button.primary .inner div.icon img{
    height: 24px;
    width: 24px;
}

button.primary a {
    text-decoration: none;
}

button.primary .text {
    display: flex;
    align-items: center;
}
button.primary .text p {
    margin: 0;
}

.button {
    background-color: var(--color-brand);
    border-radius: 2px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    border: none;
    align-items: center;
    color: #ffffff;
    font-family: 'pintono_01', sans-serif;
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 1px;
    gap: 10px;
    box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.10);
    text-decoration: none;
    padding: 14px 50px;
    max-width: 450px;
    
}

footer {
    margin-top: 80px;
    background-color: var(--color-offWhite);
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}

footer ul {
    list-style-type: none;
    padding-left: 20px;
    color: var(--color-black);
    text-align: center;
    line-height: 200%;
}

footer a {
    text-decoration: none;
}

.sub-site h1{
    color: var(--color-black);
}

.sub-site{
    text-align: center;
    margin-top: 100px;
}

@media only screen and (max-width: 600px) {
    .sub-site h1{
        color: var(--color-black);
        font-size: 50px;
        font-weight: 300;
    }
    
    .sub-site{
        text-align: left;
        margin-top: 40px;
    }
}


/* Hero */
section.hero{
    padding: 40px;
    background-image: 
        linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), 
        url(../assets/Images/hero-image-1.jpg);
    aspect-ratio: 2 / 1;
    width: calc(100% - 80px);
    background-size: cover;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-end;
    gap: 30px;
}
section.hero *{
    color: var(--color-offWhite);
    margin: 0;
}

section.hero h1 {
    font-size: 63px;
}

section.hero div p.subheadline {
    font-size: 40px;
    font-weight: 300;
    line-height: 120%;
    margin-bottom: 20px;
}
@media only screen and (max-width: 900px) {
    section.hero h1 {
        font-size: 50px;
    }
    section.hero{
        padding: 40px;
        aspect-ratio: 2 / 3;
        width: calc(100% - 80px);
        gap: 30px;
        background-position: center;  
    }
    section.hero div p.subheadline {
    font-size: 28px;
    }
}
@media only screen and (max-width: 500px) {
    section.hero h1 {
        font-size: 36px;
    }
    section.hero{
        padding: 20px;
        aspect-ratio: 2 / 3;
        width: calc(100% - 40px);
        gap: 30px;
        background-position: center;  
    }
}


/*Text-Bild*/
section.text-bild{
    display: flex;
    flex-direction: row;
}
section.text-bild > *{
    width: 50%;
}
section.text-bild div {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 40px;
}

section.text-bild div *{
    width: 100%;
}
section.text-bild.ich div.image{
    aspect-ratio: 1 / 1;
    background-image: url(/assets/rahel-sqaure.jpg);
    background-size: cover;
    background-position: 40% 50%;
    border-radius: 999px;
    margin: 50px;
    width: calc(50% - 100px);
}
section.text-bild h2 {
    margin-bottom: 0;
}

@media only screen and (max-width: 900px) {
    section.text-bild{
        display: flex;
        flex-direction: column-reverse;
    }
    section.text-bild > *{
        width: calc(100% - 80px);
    }
    section.text-bild.ich div.image{
        margin: 40px;
        width: calc(100% - 160px);
    }
}


@media only screen and (max-width: 500px) {
    section.text-bild div {
        padding: 20px;
    }
    section.text-bild > *{
        width: calc(100% - 40px);
    }
    section.text-bild h2 {
        margin: 0;
        font-size: 28px;
        font-weight: 500;
    }
}

/* Quote*/

section.quote{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}

section.quote .quote-text{
    font-size: 33px;
    font-weight: 400;
    text-align: center;
    margin: 0;
    line-height: 120%;
}

@media only screen and (max-width: 500px) {
    section.quote .quote-text{
        font-size: 24px;
    }
}

/* Card Slider*/
section .slider-card-collection{
    display: flex;
    flex-direction: row;
    gap: 20px;
    max-width: 100%;
    overflow-x: scroll;
}

section .slider-card-collection .slider-card{
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    width: 400px;
}
section .slider-card-collection .slider-card p{
    font-weight: 600;
}

@media only screen and (max-width: 450px) {
    section .slider-card-collection .slider-card{
        width: 280px;
    }
}

/* Leistungen */


.text-bild-collection section:nth-child(even){
    flex-direction: row-reverse;
}

section.text-bild.kg div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/kg.jpg);
    background-size: cover;
    background-position: 40% 50%;
}
section.text-bild.cmd div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/cmd.jpg);
    background-size: cover;
    background-position: 40% 50%;
}
section.text-bild.mt div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/mt.jpg);
    background-size: cover;
    background-position: 40% 50%;
}
section.text-bild.trainingstherapie div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/trainingstherapie.jpg);
    background-size: cover;
    background-position: 40% 50%;
}
section.text-bild.taping div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/taping.jpg);
    background-size: cover;
    background-position: 40% 50%;
}

@media only screen and (max-width: 900px) {
    .text-bild-collection section:nth-child(even){
        flex-direction: column-reverse;
    }
}

/* Über Mich*/
section.ueber-mich {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 800px;
}
section.ueber-mich div {
    aspect-ratio: 1 / 1;
    background-image: url(/assets/rahel-sqaure.jpg);
    background-size: cover;
    border-radius: 9999px;
    width: 300px;
}

/*Behandlung*/

section.text-bild.behandlung div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/behandlung.jpg);
    background-size: cover;
    background-position: 40% 50%;
}



/* Termin Buchen */

section.text-bild.umkreis div.image{
    aspect-ratio: 1 / 1;
    background-image: url(../assets/Images/map-radius.jpg);
    background-size: cover;
    background-position: center;
}
section.kontakt .inner > *{
    width: 50%;
}

button.sekundary a{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    width: 100%;
    background-color: var(--color-brand);
    color: var(--color-black);
    font-size: 16px;
    text-decoration: none;
    font-weight: 300;
    font-family: var(--font-default)
}

button.sekundary a:hover{
    background-color: var(--color-black);
    color: var(--color-offWhite);
    font-size: 18px;
    font-weight: 500;
}

button.sekundary {
    width: 100%;
}

section.kontakt .inner{
    display: flex;
    flex-direction: row;
    gap: 40px;
}
@media only screen and (max-width: 800px) {
    section.kontakt .inner{
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
    section.kontakt .inner > *{
        width: 100%;
    }
}

.oeffnungszeiten {
    display: flex;
    background-color: var(--test);
    flex-direction: column;
}

.oeffnungszeiten .oeffnungszeiten-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid var(--color-brand);
}

.oeffnungszeiten .oeffnungszeiten-row:last-child {
    border-bottom: none;
}

.oeffnungszeiten-row .left {
    display: flex;
    flex-direction: row;
    font-family: var(--font-deko);
    font-size: var(--text-size-medium);
    color: var(--color-black);
    align-items: center;

}

.oeffnungszeiten-row .right {
    font-family: var(--font-default);
    letter-spacing: 1px;
}

.oeffnungszeiten .oeffnungszeiten-row .left .devider {
    height: 20px;
    width: 2px;
    background-color: var(--color-brand);
    display: block;
    margin: 0 4px;
}

@media only screen and (min-width: 600px) {
    main {
      margin: 97px auto 0 auto;
      max-width: 1200px;
    }

    footer {
        flex-direction: row;
        padding: 16px;
        align-items: center;
        justify-content: space-between;
        width: calc(100vw - 32px);
        height: 40px;

    }
    footer div ul{
        flex-direction: row;
        display: flex;
        gap: 16px;

    }

    footer img {
        height: 60px;
    }

    

    .button {
        max-width: calc((100% / 2) - 100px);
    }
  }
