@import url('https://fonts.googleapis.com/css2?family=ABeeZee:ital@0;1&display=swap');

@import url('tablet.css');
@import url('screen.css');
@import url('phone.css');

@font-face {
  font-family: Nickainley;
  src: url(../fonts/Nickainley-Normal.otf);
}

* {
    margin: 0;
    padding: 0;
    --background-color: #DAE4D9;
    --background-color-light: #F6FBF2;
    --bs-body-bg: #F6FBF2;
    --primary-color: #943623;
    --bs-heading-color: #943623;
    --secondary-color: #69775A;
    --text-light: #FCFCFC;
    --text-dark: #434b3b;
    --contrast-color: #AD5952;
    --contrast-color-light: #DFA7A144;
    --fontSizeTitle: 24px;
    --fontSizeLittleTitle: 20px;
    --fontSizeText: clamp(14px, 1.2vw, 20px);
    --fontSizeLittleText: clamp(12px, 1vw, 16px);
    --fontSizeCitation: 16px;
    --nav-txt: clamp(16px,2vw,24px);
}

*:focus-visible{
    outline: solid 2px var(--text-dark);
    border-radius: 2px;
}

h1::selection, h2::selection, blockquote::selection{
  color: var(--primary-color);
  background-color: var(--contrast-color-light);
}
*::selection{
  color: var(--background-color-light);
  background-color: var(--primary-color);
}

p::selection, .important::selection{
  color: var(--background-color-light);
  background-color: var(--primary-color);
}
.important::selection{
  background-color: var(--background-color-light);
  color: var(--primary-color);
}
a::selection, img::selection{
    background-color: var(--primary-color);
}

h1{
    color: var(--primary-color);
    padding: 2vw 0!important;
    width: 100%;
    text-align: center;
    font-size: clamp(48px, 3.2vw, 64px)!important;
}
h2 {
    padding: 2vw 0!important;
    font-family: Nickainley;
    color: var(--primary-color)!important;
    font-size: clamp(24px, 2vw, 40px)!important;
    margin: 0;
}

p{
    margin: 4px;
    font-size: clamp(14px, 1.2vw, 24px);
    line-height: clamp(28px, 2.4vw, 48px);
}
.hide{
    display: none !important;
}

.important{
    color: var(--primary-color);
}
a:link, a:visited{
    text-decoration: none!important;
    &:hover{
        text-decoration: none;
    }
}
a{
    text-decoration: none!important;
    &:hover{
        text-decoration: none;
    }
}
.btn_rdv{
    text-align: center;
    border-radius: 24px;
    padding: 2px 8px;
    background-color: var(--background-color-light);
    border: solid 2px var(--secondary-color);
    a{
        color: var(--secondary-color);
    }
    transition-duration: 0.4s;
}
.btn_rdv:hover{
    cursor: pointer;
    background-color: var(--secondary-color);
    border: solid 2px var(--text-light);
    transition-duration: 0.4s;
    a{
        color: var(--text-light)!important;
    }
}
.retour_ligne{
    display: block;
    margin-left: 32px;
}
.container{
    max-width: 100%!important;
}
body {
    background: var(--background-color-light);
    width: 100%;
    min-height: calc(100vh);
}
header {
    &:has(.trigger-visible){
        transition: 0.4s;
    }
    .skip-nav{
        position: absolute;
        top: -50px;
        left: 0;
        animation-duration: 0.4s;
        &:has(a:focus){
            top: 20px;
            left: 15px;
            animation-duration: 0.4s;
            a{
                color: var(--text-dark);
            }
        }
    }
    .logo{
        display: none;
    }
    .rs{
        position: absolute;
        top: 96px;
        left: 0;
        a[target=_blank]::after{
            content: "";
        }
        .reseau {
            border-radius: 0 50px 50px 0;
            background-color: var(--secondary-color);
            color: var(--background-color);
            margin: 4px 0;
            padding: 4px 8px 6px 4px;
            transition-duration: 0.8s;
            width: fit-content;
            &:hover{
                transition-duration: 0.8s;
                border: 1px solid var(--secondary-color);
                background-color: var(--background-color);
                color: var(--secondary-color);
                padding-left: 12px;
            }
        }
    }
    position: sticky;
    z-index: 20;
    top: 0;
    background: var(--background-color-light);
    padding: 0 8vw;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    transition: 0.4s;
    .trigger-visible{
        position: absolute;
        top: 100vh;
    }
    #page{
        display: none;
    }
    nav {
        align-self: center;
        width: calc(100% - 30px);
        padding: 16px;
        details{
            display: flex;
            flex-direction: column;
        }
        .btn-menu {
            font-size: 2.5rem;
            display: none;
            align-self: end;
        }
        ul {
            margin: 0;
            width: 100%;
            align-self: flex-end;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-around;
            li {
                position: relative;
                font-family: ABeeZee;
                font-size: var(--nav-txt);
                display: inline-block;
                list-style: none;
                .marker {
                    display: none;
                    position: absolute;
                    top: -1.5vw;
                    left: -1vw;
                    width: clamp(75px, 6.5vw, 200px);
                    img {
                        width: 100%;
                    }
                }
                &.active::before{
                    content:url('../images/nav_marker.svg');
                    position: absolute;
                    top: -32px;
                    left: -12px;
                    z-index: 5;
                }
                &.active {
                    a{
                    color: var(--contrast-color) !important;
                    }
                    .marker{
                        display: block;
                    }
                }
                a:link, a:visited {
                    color: var(--secondary-color);
                    &:hover{
                        color: var(--contrast-color);
                    }
                }
            }
        }
    }
}

#main{
    padding: 0 0 24px 0;
    position: relative;
    background: var(--background-color);
    font-family: ABeeZee;
    min-height: 100%;
    #accueil{
        .carousel-item>img{
            width: 100%;
        }
        position: sticky;
        top: 68px;
        display: flex;
        align-items: center;
        overflow: hidden;
        height: clamp(560px, 30vw, 720px);
        color: var(--text-dark);
        padding: 0 0 5vw 0;
        text-align: center;
        font-size: clamp(32px, 3.5vw, 72px);
        #identity{
            color: white;
            text-shadow: 0 0 2px rgb(44, 44, 44);
            position: absolute;
            top: 3vw;
            width:100%;
            z-index: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            .name{
                font-weight: bold;
                font-size: 56px;
            }
            .logo{
                width: 100%;
                align-content: center;
                img{
                    width: 192px;
                }
            }
            .job{
                font-size: 56px;
            }
            .citation{
                margin-top: 16px;
                font-family: Nickainley;
                font-size: clamp(1.5rem, 2vw,  4rem);
                blockquote{
                    cite{
                        font-size: clamp(0.8rem, 1.2vw,  2.5rem);
                        font-family: ABeeZee;
                        a{
                            color: var(--primary-color);
                            &:visited{
                                color: var(--primary-color);
                            }
                        }
                    }
                }
            }
        }
    }
    #acc_kinesio{
        margin: 0;
        background-color: var(--background-color);
        z-index: 10;
        position: relative;
        .resume{
            position: relative;
            display: flex;
            width: 100%;
            padding: 0 0.5em;
            color: var(--text-dark);
            height: fit-content;
            img{
                width: clamp(200px, 35%, 800px);
                filter:drop-shadow(0px 5px 8px #999999b5);
                padding: 5%;
                float: left;
            }
            .txt{
                h2{
                    padding: 0;
                }
                position: relative;
                z-index: 10;
                width: 100%;
                margin: 0 15px 30px 0;
                font-size: clamp(11px, 1.11vw, 1.8rem);
            }
        }
        .img_large {
            position: sticky;
            z-index: 0;
            top: 140px;
            margin: 8px auto;
            width: 60%;
            height: 18vw;
            background-image: url(../images/caroussel_4.jpg);
            background-size: cover;
            background-position: center;
            border-radius: 30px;
        }
    }
}

#construction {
    display: flex;
    flex-direction: column;
    position: relative;
    background: var(--background-color-light);
    justify-content: center;
    div{
        margin: 4vw 0;
        background-image: url("../images/rdv1.jpg");
        background-size: cover;
    }
    .photo_portrait{
        margin: 0 auto 1rem auto;
        position: relative;
        width: clamp(10rem, 19vw, 30rem);
        height: clamp(10rem, 19vw, 30rem);
        border-radius: 50%;
        overflow: hidden;
        img{
            width: 100%;
        }
    }
    h1{
        color: var(--text-dark);
        text-align: center;
    }
}

#kinesio{
    margin: 0;
    background-color: var(--background-color);
    z-index: 10;
    position: relative;
    .line{
        img{
            width:clamp(190px, 40%, 600px);
            padding: clamp(8px, 4%, 16px);
            border-radius: 24px;
        }
        &:nth-of-type(odd){
            img{
                float: right;
            }
        }        &:nth-of-type(even){
            img{
                float: left;
            }
        }
        display:flex;
        width:100%;
        margin: 0;
        .txt{
            width: 100%;
            padding: 1em;
        }
    }
    .line:nth-of-type(1) .img{
    }
    .line:nth-of-type(2) .img{
    }
    .line:nth-of-type(3) .img{
    }

}

#pour_qui{
    display:flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 100%;
    .motif {
        display:flex;
        flex-direction: column;
        position:relative;
        color: var(--text-dark);
        border-radius: 24px;
        min-width:400px;
        width: 40%;
        margin: 1.5rem auto;
        padding: 1rem;
        background-color: var(--background-color-light);
        div{
            padding: 0.5rem 0;
        }
        .title{
            display: flex;
            align-items: end;
            color: var(--primary-color);
            font-size: clamp(18px, 1.6vw, 40px);
            img{
                width: 40px;
                margin-right: 1rem;
            }
        }
        .illustration{
            img{
                width: clamp(60px, 20%, 150px);
                margin-right: clamp(16px, 4vw, 32px);
                float: left;
            }
        }
        transition-duration: 0.4s;
    }
    .motif:hover{
        box-shadow: -2px 2px 4px grey;
        transition-duration: 0.4s;
        transform: scale(1.03) translate(2px, -2px);
    }
    .btn_rdv{
        align-self: flex-end;
        width:fit-content;
        padding: 0.5rem!important;
        margin: 0 auto 8px auto;
    }
}

#deroule{
    .line{
        display:flex;
        flex-direction: row;
        width:80vw;
        margin: 0 auto;
        .bloc-in-line{
            position: relative;
            width: 50%;
            svg{
                position: relative;
                z-index: 10;
            }
            img{
                position:absolute;
                z-index: 0;
                left: 55%;
                top: 3vw;
                transform: rotate(40deg);
                width: 20vw;
            }
        }
        p{
            font-size: var(--fontSizeText);
        }
        .txt{
            padding: 2vw;
        }
    }
    .line:nth-of-type(odd){
        flex-direction: row-reverse;
    }
    .line:last-of-type{
        padding-bottom: 1rem;
    }
}

#qsj {
    display: flex;
    flex-wrap: wrap;
    div.undertitle{
        margin: 0 0 4rem 0;
        span.h2{
            color: var(--primary-color);
            font-size: clamp(24px, 2.5vw, 50px);
            font-family: Nickainley;
            display: block;
            margin: 0 24px;
        }
    }
    blockquote{
        color: var(--primary-color);
        font-family: Nickainley;
        font-size: clamp(24px, 2vw, 32px);
        margin: 0.5em 0;
        cite{
            font-size: clamp(12px, 1.2vw, 16px);
        }
    }
    >div{
        width: 48%;
        position: relative;
    }
    .illustration{
        position: relative;
        display: flex;
        justify-content: center;
        img{
            position: absolute;
            width: 45%;
            left: 62%;
            top: 57px;
            transform: rotate(24deg);
        }
        svg{
            filter:drop-shadow(0px 5px 8px #999999b5);
        }
    }
}

.tarification_main{
    display:flex;
    flex-wrap: wrap;
    flex-direction: row;
    .cabinet{
        img{
            border-radius: 24px;
            width:90%;
        }
    }
}

#tarification {
    .tarif {
        position:relative;
        color: var(--text-dark);
        border-radius: 24px;
        width: 500px;
        margin: 1.5rem auto;
        padding: 1rem;
        background-color: var(--background-color-light);
        div{
            padding: 0.5rem 0;
        }
        .title, .prix{
            display: flex;
            align-items: end;
            color: var(--primary-color);
            font-size: clamp(18px, 1.6vw, 40px);
            img{
                width: 40px;
                margin-right: 1rem;
            }
        }
        .prix{
            position: absolute;
            left: calc(100% - 102px);
            top: 2px;
            border-radius: 0 24px 0 12px;
            background-color: var(--background-color);
            color: var(--text-dark);
            width: 100px;
            height: 90px;
            justify-content: center;
            align-items: center;
        }
        transition-duration: 0.4s;
    }
    .tarif:hover{
        box-shadow: -2px 2px 4px grey;
        transition-duration: 0.4s;
        transform: scale(1.03) translate(2px, -2px);
    }
}

#rdv {
    display: flex;
    flex-wrap: wrap;
    justify-items: space-around;
    position: relative;
    .zone_text_rdv {
        position: relative;
        width: 70%;
        height: fit-content;
        background-size: contain;
        color: var(--text-light);
        font-size: clamp(11px, 100%, 1.8rem);
        .text_rdv{
            color: var(--text-dark);
            position: relative;
            margin: 3vw;
            height: fit-content;
            p:has(svg){
                text-indent: -31px;
            }
        }
    }
    .photo_portrait{
        margin: 8vw 0 0 0;
        position: relative;
        width: 20vw;
        height: 20vw;
        border-radius: 50%;
        overflow: hidden;
        background-image: url("../images/rdv1.jpg");
        background-size: cover;
        
    }
}

#faq{
    details{
        border: solid 1px var(--background-color-light);
        border-radius: 24px;
        margin-top: 1rem;
        padding: 8px 16px 8px 32px;
        summary{
            font-size: var(--fontSizeTitle);
            color: var(--bs-heading-color);
            list-style: none;
            margin:0 0 0 -16px;
            &:after{
                content:'◢';
                display: inline;
                margin-left: 1rem;
                font-size: var(--fontSizeText);
            }
            [open] &:after{
                content:'◥';
            }
        }
    }
}

#mention-legales{
    h1{
        margin: 1rem 0 2rem 0;
        text-align: center;
    }
    padding: 2rem;
}

#cgv{
    h1{
        margin: 1rem 0 2rem 0;
        text-align: center;
    }
    h2{
        font-family: ABeeZee!important;
        padding: 2vw  0 0 0!important;
    }
    ul>li{
        font-size: clamp(14px, 1.2vw, 24px);
        line-height: clamp(28px, 2.4vw, 48px);
        margin-left: 2vw;
    }
    padding: 2rem;
}

footer{
    margin:0!important;
    position: sticky;
    top: calc(100vh - 90px);
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    background-color: var(--secondary-color);
    font-family: ABeeZee;
    font-size: var(--fontSizeLittleText);
    color: var(--text-light);
    p{
        font-size: clamp(12px, 1vw, 24px);
        line-height: clamp(16px, 1.6vw, 48px);
    }
    a{
        color: var(--text-light);
        &:hover{
            color: var(--text-dark);
        }
    }
    div.row{
        padding: 1rem 3rem;
    }
    .row>div:nth-of-type(1){
        text-align: end;
    }
    .row>div:nth-of-type(2){
        div.btn_rdv{
            font-size: 1.7rem;
            height: fit-content;
        }
        img:last-of-type{
            transform: scaleX(-1);
        }
    }
}