@import url('https://fonts.googleapis.com/css2?family=Paytone+One&display=swap');
@font-face {
  font-family: "Albert Sans";
  src: url("fonts/AlbertSans-Regular.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}


* {
    box-sizing : border-box;
    /*border: 1px solid red; /* Bordure rouge pour tout afin d'inspecter les éléments */
}


/*** LOADER ***/

#loader {
    position: fixed;
    width: 100%;
    height: 100%;
    background: #FFF8EE;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 0.5s ease;
}
#calque_1 {
    width:20vw;
    height: 20vh;
    animation: bounce-loader 2s infinite ease-in-out, colorchange 3s infinite;
}


/*** GENERAL ***/

body {
    background-color: #FFF8EE;
    font-family: "Paytone One", sans-serif;
    font-size: 15px;
    color: #171614;
    padding: 0;
    margin:0;
    cursor:none;
    overflow:auto;
}

.body-hidden {
    overflow:hidden !important;
}

#cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 1rem;
  height: 1rem;
  background-image: url('images/pictos/cursor-red.svg');
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: transform 0.2s ease;
  z-index: 9999;
}


/** TEXTES **/
h1 {
    font-size: 2rem;
    color: #171614;
}
h2 , .contact span , .reseaux span {
    font-size: 1.9rem;
}
h3 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 1rem;
    font-weight: 500;   
}
p {
    font-family: 'Albert Sans', sans-serif;
    font-weight: 500;
    line-height: 150%;
}

.promo-ete {
    font-size: 1.2rem;
    color: #FFF8EE;
}

.promo-20 {
    font-family: "Paytone One", sans-serif;
    font-size : 5rem;
    line-height: 1rem;
    margin-top: 4rem;;
    color: #D43861;
    text-align: center;
}

.promo-txt {
    font-family: "Paytone One", sans-serif;
    font-size: 1.2rem;
    color: #D43861;
    text-align: center;
}

.txt-marketing {
    color: #D43861;
    font-size: 1.2rem;
}

.contact span {
    color: #FFF8EE;
    width: 100%; 
}

.formulaire h2 {
    text-align: center;
}

.titre-cache {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/** BOUTONS **/
.btn-principal {
    display: block;
    width: fit-content;
    margin: 2rem 0;
    font-family: "Paytone One", sans-serif;
    text-transform: uppercase;
    font-size: 16px;
    color: black;
    background-color: transparent;
    padding: 0.7rem 1.5rem 0.8rem;
    border: 3px solid black;
    border-radius: 50px;
    background-size: 600%;
    animation: glowing 20s linear infinite;
    transition: opacity 0.3s ease-in-out;
    transition: transform 0.5s ease, background-color 0.3s ease;
    transform-origin: center;
    cursor:none;
    text-decoration:none;
}
/* effet hover */
.btn-principal:hover {
    transform: scale(1.1);
    font-size: 17px;
    background: linear-gradient( 90deg, #ffffff 0%, #d8d8d8 25%, #ffffff 50%, #d8d8d8 75%, #ffffff 100% ); 
    background-size: 600%;
    color:#D43861;
    border:none;
    animation: glowing 20s linear infinite;
    transition: opacity 0.3s ease-in-out;
}



/** HEADER **/
header {
    background-image: 
        linear-gradient(to top, rgba(255, 247, 236, 1), rgba(255, 247, 236, 0.7), rgba(255, 247, 236, 1)),
        url('images/photos/piscince-linaria-landing-page-promo-sites-vitrines.jpg');
    background-size: cover;
    background-position: center; /* angle de vu de la photo*/
    padding: 1.2rem;
    margin: 0;
    text-align: center;
}


header span {
    display: block;
    line-height: 3rem;
}

.bandeau-promo {
    overflow: hidden;
    right:0;
    width:100%;
    color: #FFF8EE;
    position: absolute;
    background-color: #D43861;
    margin-top: 1.3rem;
}

.bandeau-promo-contenu {
    display: inline-block;
    white-space: nowrap;
    will-change: transform;
    width: max-content;
    display: flex;
    animation: defilement-offre 13s linear infinite;
    overflow: hidden ;
}

.promo-20 {
    transition: 0.3s ease;
    animation: bounce 4s ease-in-out infinite;
}

.logo-header {
    margin-top:20vh;
       width:15rem;
}

/** SECTION 1 - AVANTAGES **/

/* paramètres généraux de la section*/
.avantages {
    background-color:#F6F6F6;
    text-align: center;
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding:5vh 0;
}
/*paramètres pour les 6 boîtes */
.boites-avantages {
    background-color: #FFF8EE;
    border:3px solid #F7A226;
    border-radius: 20px;
    margin:1.5rem;
    padding:1.5rem;
}
/* paramètres pour tous les articles */
.avantages article {
    width:80%;
    margin-top:1.5rem;
    transition: 0.5s ease;
}
/* effet hover - encore à la recherche d'un effet qui ne donne pas l'impression que l'on peut cliquer */
.avantages article:hover {
    transform: scale(1.1);
}
/* icônes */
.icones-avantages {
    display: block; /* Nécessaire pour margin auto */
    margin: 0 auto;           
    width: 3.3rem;              
    height: auto;  /* permet de garder les proportions */
}
/* h3 sous les icônes */
.avantages article h3 {
    margin-top: 0.6rem;
}
/* bouton */
header .btn-principal {
    display:inline-block;
}



/** SECTION 2 - TÉMOIGNAGES **/

/* paramètres généraux de la section */
section.temoignages {
    background-color: #171614;
    padding: 5rem 2rem;
}


/* titre de la section*/
.temoignages h2 {
    text-align: center;
    color: #FFF8EE;
    margin:0 auto 1rem;
}

/* Avis qui défilent */

.bandeau-temoignages {
  position: relative;
  margin-top: 1.1rem;
  overflow: hidden;
  height: auto;
}

.bandeau-temoignages-contenu {
    display: flex;
    gap : 2rem;
    will-change: transform;
    transition: transform 0.5s ease;
}

/* boîtes de témoignages*/
.temoignage {
    background-color: #FFF8EE;
    border: none;
    border-radius: 10px;
    padding: 1.3rem 1.3rem 0.7rem;
    max-width: 25rem;
    margin: 1.3rem auto;
    flex: 0 0 100%; /* Un seul témoignage visible à la fois*/
    transition: opacity 1s ease-in-out;
    opacity: 0;
    display: none;
}
.temoignage.actif {
    display: block;
    opacity: 1;
}
/* avatar des clients */
.temoignage-avatar img {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    margin-top: 0.2rem;
    margin-right: 1.3rem;
}
/* mettre côte à côte l'avatar et la div nom + date */
.temoignage-info {
    flex: 1;
    display: flex;
    }
/* nom du client */
.temoignage-nom {
    color:#171614;
    font-weight: bold;
    margin:0;
}
/* date de l'avis*/
.temoignage-date {
    color:#171614;
    font-size: 12px;
    margin-top: 0.2rem;
}
/* étoiles côte à côte avec espacement de 5px*/
.temoignage-note {
    display: flex;
    gap:3px;
}
/* paramètres des étoiles */
.etoile {
    font-size: 20px;
    color:rgb(170, 155, 68);
}
/* avis client */
.temoignage-txt {
    line-height: 1.5;
    margin-top: 0.6rem;
    color: #171614;
    margin: auto 0px;
    font-size: 14px;
}



/** SECTION 3 - PROMO CTA **/

/* paramètres généraux de la section */
.cta {
    text-align: center;
    margin:5rem 1rem;
}
.cta h2 {
    margin-bottom:1.5rem;
}
.cta p {
    margin:1.5rem;
}
/* mise en place de la structure responsive */
.flex1 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin:30px 20px 0 20px;
}
.flex1 img {
    width: 25rem;
    max-width: 90vw;
    height: 20rem;
    border-radius: 40px;
    box-shadow: -10px 10px 0 0 #D43861;
    object-fit: cover;
}
/* encart promotionnel */
.promo-20-vitrines {
    width: 25rem;
    max-width: 90vw;
    height: 20rem;
    border: 3px solid #F7A226;
    border-radius: 20px;
    background-image: url(images/deco/promo-site-internet-linaria-agence-com-2.webp) ;
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
/* -20% de l'encart */
.promo-20-vitrines span {
    font-size:4rem;
    color: #ff666f;
    font-weight: bold;
    transition: 0.3s ease;
}
.promo-20-vitrines span:hover {
    transform: scale(1.5)
}
/* texte de l'encart */
.promo-20-vitrines p {
    font-family: "Paytone One", sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    font-size:1.2rem;
}
/* texte avec bouton - boîte de droite*/

.promo-cta .btn-principal {
        display:block;
        margin: 1.3rem auto;
    }




/** SECTION 4 - FORMULAIRE DE CONTACT - POP-UP **/

.formulaire {
    margin: 2vh 8vw 12vh;
    padding:4vw;
    background-color: #F6F6F6;
    border-radius: 40px;
    border:3px solid #F7A226;
    box-shadow: 10px 10px 0 0 #D43861;
    display:flex;
    flex-direction:column;
    align-items: center;
}

.btn-fermer-popup{
    position: absolute;
    top: 0.5rem;
    right: 2rem;
    background: none;
    border: none;
    font-size: 1.5rem;
    color:white;
    cursor: pointer;
    z-index: 5500; /* Placer le bouton au-dessus */
}
.popup-cachee {
    display: none !important; /* !important pour passer au dessu du Display flex */
}
#popup-formulaire {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    padding: 3rem 1rem;
    background: rgba(0, 0, 0, 0.5); /* fond assombri */
    display: flex;
    justify-content: center;
    align-items: flex-start;
    z-index: 5000;
    overflow: auto;
}
.contenu-popup {
    width:100%;
}
form {
  display: flex;
  width : 100%;
  flex-direction: column;
  margin: 0 auto;
  gap:1rem;
  background-color: #FFF8EE;
  padding: 2vw 5vw;
  border-radius: 30px;
}
label {
    margin-top: 1.5rem;
}
.nom-prenom .champ {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#nom, #prenom, #mail {
    background-color: #d4386233;
    border-radius: 30px;
    border: none;
    height: 2.5rem;
    font-family: 'Argentum Sans', sans-serif;
    font-size: 0.9rem;
    font-weight: 200;
    line-height: 1rem;
    padding-left: 1rem;
}
textarea {
    background-color: #d4386233;
    border-radius: 15px;
    border: none;
    height: 10rem;
    font-family: 'Argentum Sans', sans-serif;
    font-size: 0.9rem;
    font-weight: 200;
    line-height: 3rem;
    padding-left: 1rem;
}
.champ label {
    line-height: 3.1rem;
}
label {
    line-height: 1rem;
}




/** FOOTER **/

/* SECTION Contact */
/* paramètres généraux de la section */
.contact {
    display: flex;
    flex-direction: row;
    flex-wrap:wrap;
    justify-content: center;
    text-align: center;
    background-color: #171614;
    padding: 5rem 1rem;
}

/* icônes de contact */
.icones-contact img {
    width: 5rem;
    height: auto;
    transform-origin: center;
    transition: 0.3s ease;
}
.icones-contact img:hover {
  transform: scale(1.3) rotate(-10deg);
}

/* SECTION Réseaux sociaux */
/* paramètres généraux de la section */

.reseaux {
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 3rem;
}
/* titre de la section */
.reseaux span {
    width: 100%;
    margin:3rem auto 1.6rem;
}
/* icônes des réseaux */
.icones-reseaux img {
    width: 3.4rem;
    height: auto;
    padding:5px;
    margin: 10px;
    transition: 0.3s ease;
}
.icones-reseaux img:hover {
  transform: scale(1.1);
  border:3px solid #FF6666;
  border-radius:50px;
}

.feuilles {
    position: relative;       /* reste dans le flux normal */
    width: 100%;
    opacity: 0.5;
    z-index: -10;
    /* Animation */
    animation: remonteFeuilles 5s ease-in-out infinite alternate;
}
.logo-footer {
    margin: 0 10vw 12vh;
    padding:5vh;
    background-color: #F6F6F6;
    border-radius: 40px;
    border:3px solid #F7A226;
    position:relative;
    z-index:1;
}

.logo-footer img {
    width:50vw;
        max-width: 80vw;
    height: auto;
    display: block;
    margin:2rem auto 2.6rem;
    animation: bounce 4s ease-in-out infinite;
}

/* SECTION Mentions */
.mentions {
    background-color: #D43861;
    /*background-image: url(images/deco/fond-montagne.webp); /* petit problème à régler demain sur ce background */
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    padding: 1.3rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;

}
.liens-mentions {
    display: block;
    font-family: 'Argentum Sans', sans-serif;
    padding: 0.3rem 0.7rem 0.3rem;
    text-decoration: none;
    color: #FFF8EE;
    font-weight: 300;
    transition: color 0.3s ease;
}
.liens-mentions:hover {
    transform: scale(1.1);
}
.mentions nav span {
    color: #FFF8EE;
    font-size: 1.2rem;
}






/************* RESPONSIVLE ************/




/***** TABLETTE 768px *****/

@media screen and (min-width:768px) {

    /*** GENERAL ***/
    body {
        font-size:16px;
    }

    /** TEXTES **/
    h1 {
    font-size: 3.125rem;
    margin-top: 3vh;
    }
    h2 , .contact span , .reseaux span {
    font-size: 2.6rem;
    }
    h3 {
    font-size: 1rem; 
    }

    .promo-ete {
    font-size: 1.5rem;
    color: #FFF7EC;
    }
    .promo-20 {
    font-size : 5rem;
    margin:3.5rem;
    }
    .promo-txt {
    font-size: 1.4rem;
    margin-top: 0;
    }

    .txt-marketing {
        font-size: 1.5rem;
    }

    /** BOUTONS **/
    .btn-principal {
        padding: 14px 28px 16px;
        font-size: 1.1rem;
    }
    .btn-principal:hover {
        font-size: 1.2rem;
    }


    /** HEADER **/
    header {
        padding: 3rem;
    }
    header span {
    line-height: 3rem;
    }

    .bandeau-promo {
        margin-top: 0;
    }

    .logo-header {
    margin-top:15vh;
       width:20rem;
}

    /** SECTION 1 - LES AVANTAGES **/
    /* paramètres généraux de la section*/
    .avantages {
         flex-wrap: wrap;
         flex-direction: row;
         max-width: fit-content;
    }

    .avantages h2 {
        width: 100%;
        margin-top: 4rem;
    }
    /* paramètres pour tous les articles */
    .avantages article {
        width:40%;
        padding: 3rem;
    }
    /* icônes */
    .icones-avantages {
        width: 4rem;              
    }

    /** SECTION 2 - TÉMOIGNAGES **/
    /* boîtes de témoignages*/
    .temoignages {
        padding-bottom: 2rem;
    }

    .bandeau-temoignages {
        display: flex;
        flex-direction: row;
        overflow-x: scroll;
        gap: 20px;
        padding-bottom:1.3rem;
        justify-content: center;
    }
    .temoignage {
        flex : 0 0 auto; /* largeur fixe en prévision du carrousel */
        margin: 0;
        width:80vw;
    }
    .temoignages h2 {
        margin-bottom:3rem;
    }


    /** SECTION 3 - PROMO CTA **/
    .cta {
        padding:0 0.5rem;
    }
    .cta h2 {
        margin:0;
    }
    /* -20% de l'encart */
    .promo-20-vitrines span {
        font-size:80px;
        transform: rotate(-5deg);
    }
    .promo-20-vitrines span:hover {
        transform: scale(1.5)
    }
    /* texte de l'encart */
    .promo-20-vitrines p {
        font-size:20px;
    }
    .promo-cta {
        background-color: #FFF7EC;
        border-radius: 40px;
        padding: 2rem;
    }
.promo-cta .btn-principal {
        margin: 2rem auto;
    }

    /** SECTION 4 - FORMULAIRE **/  
    .contenu-popup {
    width:80%;

    }
    .nom-prenom {
    display: flex;
    gap: 1rem;
    }


    /** FOOTER **/
    /* SECTION Contact */
        .contact {    
            flex-direction: row;
            flex-wrap: wrap;
            justify-content: center;
        }
        .contact span {
            margin-bottom:3rem;
        }
        .icones-contact {
            margin: 0 2rem;
        }
        .icones-contact img {
            transform: scale(1.1);
        }

    /* SECTION Réseaux sociaux */
    /* titre de la section */
    .reseaux span {
        margin:2.5rem auto 0;
    }
    /* icônes des réseaux */
    .icones-reseaux img {
        width: 60px;
    }

    /* Logo */
    .logo-footer img {
        width:35vw;
    }

    /* SECTION Mentions */
    .mentions nav span {
        font-size: 1.5rem;
        line-height:3rem;
    }
}




/***** DESKTOP 1024px *****/

@media screen and (min-width:1024px) {

    #Calque_1 {
    width:15vw;
    height: 15vh;
    animation: bounce-loader 2s infinite ease-in-out, colorchange 3s infinite;
}

    /** TEXTES **/
    h1 {
    font-size: 4rem;
    margin-top: 5vh;
    }
    h2 , .contact span , .reseaux span {
    font-size: 3.5rem;
    }
    h3 {
    font-size: 1rem; 
    }

    .promo-txt {
    font-size: 1.6rem;
    margin: 4rem 0;
    }
    .promo-20 {
    font-size : 8rem;
    margin: 5rem auto;
}
    .h4-reseaux {
    font-size: 2.5rem;
    }

    /** BOUTONS **/
    header .btn-principal {
        margin-top:-2rem;;
    }

    /** HEADER **/
    .logo-header {
    margin-top:20vh;
       width:25rem;
}

    /** SECTION 1 - LES AVANTAGES **/
    /* paramètres généraux de la section*/
    .avantages {
         flex-wrap: wrap;
         flex-direction: row;
         max-width: fit-content;
    }
    .avantages h2 {
        width: 100%;
        margin:0 auto 1.5rem;
    }
    /* paramètres pour tous les articles */
    .avantages article {
        width: calc(90% / 2);
        padding: 2rem;
    }
    /* icônes */
    .icones-avantages {
        width: 4rem;              
    }
    .promo-cta {
        display:flex;
        flex-direction:column;
    }
    .cta .btn-principal {
        display:inline-block;
        margin: auto 0;
    }

    /** SECTION 3 - PROMO CTA **/
    .promo-cta .btn-principal {
            display:inline-block;
            margin: 1.3rem auto;
        }

    /** FOOTER **/

    /* SECTION Contact */
    /* paramètres généraux de la section */
    .contact {
        padding:0;
     }

    .icones-contact {
        margin-bottom:5rem;
    } 

    .contact span {
        margin-top:5rem;
    }
        
    /* SECTION Mentions */
    .mentions {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .liens-mentions {
        display: inline-block;
        margin-left: 1rem;
        margin-right: 1rem;
        font-size: 15px;
    }
    .mentions nav span {
        font-size: 1.2rem;
    }
}






/***** DESKTOP 1520px *****/

@media screen and (min-width:1520px) {

    .saut-ligne {
    display:inline;
    }
    
    /* SECTION 1 - AVANTAGES */

        .avantages article {
        width: calc(90% / 3);
        padding: 2rem;
    }
    
    /* SECTION 3 - PROMO CTA */
    .cta h2 {
        margin-top:0;
    }
    .flex1 {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 80vw;
        margin: 3rem auto auto;
    }
    .flex1 img {
        width: 30%;
        margin-right: 1.25rem;
    }
    .promo-20-vitrines {
        width:30%;
        border-radius: 40px;
    }
    .promo-20-vitrines p {
        font-size:22px;
    }
    .promo-cta {
        width: 30%;
        text-align: start;
        padding: 1.2rem;
    }
    .promo-cta .btn-principal {
            display:block;
            
            margin: 1.3rem 0;
        }



    /** SECTION 4 - FORMULAIRE **/  
    .contenu-popup {
    width:60%;
    }

    /** FOOTER **/
    .logo-footer img {
        width:25vw;
    }
    .reseaux {
        padding-bottom:0 !important;
    }

    /* SECTION Mentions */
    /* Section Réseaux sociaux */
    .h4-reseaux {
        margin-top:-1rem;
    }
}







/********** ANIMATIONS **********/


@keyframes bounce-loader {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
}

@keyframes colorchange {
  0%   { fill: #ff6666; }
  20%  { fill: #F7A226; }
  40%  { fill: #D43861; }
  60%  { fill: #ff6666; }
  80%  { fill: #F7A226; }
  100% { fill: #D43861; }
}

@keyframes defilement-offre {
    from { transform: translateX(0); }
    to { transform: translateX(-25%); } /* Ajuste en fonction de la longueur du texte */
}

@keyframes bounce {
 0% {
    transform: scale(1) rotate(0deg);
  }
  25% {
    transform: scale(1.1) rotate(-8deg);
  }
  50% {
    transform: scale(1) rotate(0deg);
  }
  75% {
    transform: scale(1.1) rotate(8deg);
  }
  100% {
    transform: scale(1) rotate(0deg);
  }
}

@keyframes glowing{
  0% {background-position: 0 0 ;}
  50% {background-position: 400% 0 ;}
  100% {background-position: 0 0 ;}
}
