/* Propriétés CSS communes à toute la page web */

@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;700&display=swap');

*
{
    font-family: Raleway, Courier, monospace, Arial;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body
{
    width: 100%;
    min-height: 100vh;
}

main
{
    width: 100%;
    min-height: 100%;
}

a:link
{ 
    text-decoration: none;
    color: inherit;
}

a:visited
{ 
    text-decoration: none;
    color:#551A8B
}
/* HEADER  */


/* Le header va dispatcher le logo Reservia à gauche et le bouton s'inscrire sur la droite sur la même ligne
sur la ligne en dessous viendront hébergement/Activités */

header
{
    display: flex;                          /* FLEXBOX */
    flex-wrap: wrap;
    width: 100%;
}

header > div
{
    min-width: 50%;
}

.element:nth-child(1)                       /* LE LOGO RESERVIA est prioritaire 1 sur la gauche */
{
    order: 1;
    display: flex;                          /* FLEXBOX */
    justify-content: flex-start;
    padding: 1em;
}

#reserviaLogo
{
    height: 3em;                            /* LARGEUR */
}

.element:nth-child(2)                       /* la rubrique Hebergements en prioritaire 3 en bas/gauche */
{
    order: 3;
    margin-top: 1em;
    display: flex;                          /* FLEXBOX */
    justify-content: center; 
}


.element:nth-child(3)                       /* la rubrique Activites en prioritaire 4 en bas/droite */
{
    order: 4;
    margin-top: 1em;
    display: flex;                           /* FLEXBOX */
    justify-content: center;
}

.element:nth-child(4)                       /* la rubrique S'inscrire en prioritaire 2 en haut/droite */
{
    order: 2;
    display: flex;                          /* FLEXBOX */
    justify-content: flex-end;
    padding: 1.5em;
}

.lienMenu                                   /* propriétés des liens Hébergements et Activités */
{
    border-color: #f2f2f2;
    border-bottom-style: solid;
    padding-bottom: 4%;
}

.lienMenu:hover                             /* propriétés des liens Hébergements et Activités en survol souris */
{
    color: #3081fd;
    border-bottom-style: solid;
    border-color: #3081fd;
    padding-bottom: 4%;
}

a[href="#titreHebergementMarseille"], a[href="#titreMilieu"]
{
    text-decoration: none;
    color: black;
} 

a[href="#titreHebergementMarseille"]:hover, a[href="#titreMilieu"]:hover
{
    color: #3081fd;
}

#boutonSinscrire
{
    color: #3081fd;
}

header button:hover
{
    font-weight: bold;
}

button 
{
	background: none;
	border: none;
	font: inherit;	
}

/* FIN DU HEADER */

/* CSS et flexbox de la zone section Filtre de Trouver votre h....  à  Plus de 500 logements dispo...*/

#sectionFiltre
{
    padding: 1em;
}

#titreFiltre
{
    font-size: 1.2em;
    margin-bottom: 1em;
}

#slogan
{
    font-size: 1em;
    margin-bottom: 1.5em;
}

/* CSS de la zone de texte: recherche ville et bouton submit associé  */
input[type="submit"], input[type="search"] 
{
	background: none;
	color: inherit;
	border: none;
	padding: 0;
	font: inherit;
	cursor: pointer;
	outline: inherit;
}

form[id="formVille"]:hover 
{
    font-style: italic;
}

/* CSS de la grosse bulle icone/zone de texte/bouton submit */

#slogan
{
    font-size: 1em;
    font-weight: normal;
}

#rechercheVille
{
    display: flex;
    align-items: center;
    margin-bottom: 1.5em;
    margin-top: 1em;
    width: 90%;                        /* LARGEUR */
    height: 2.5em;                      /* HAUTEUR */
    border-radius: 10px;                /* BORDER RADIUS */
}

/* CSS de la zone icone */    

#pointe
{
    background-color: #f2f2f2;
    width: 12%;                         /* LARGEUR */
    height: 100%;                       /* HAUTEUR */
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    display: flex;                      /* FLEXBOX */
    justify-content: center;
    align-items: center;
}

#pointePix
{
    width: 1em;                         /* LARGEUR */
}

/* CSS de la zone de texte */


#formVille
{
    display: flex;
    width: 85%;
    height: 100%;
}

#laVille
{
    width: 75%;                         /* LARGEUR */ 
    height: 100%;                       /* HAUTEUR */
    padding-left: 1em;
    font-weight: bold;
    display: flex;                      /* FLEXBOX */
    justify-content: center; 
    align-items: center;
 }

/* CSS de la zone du bouton submit */

#labelLoupeValid
{
    background-color: #0065fc;
    color: #ffffff;
    font-weight: bold;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    width: 25%;                         /* LARGEUR */
    height: 100%;                       /* HAUTEUR */   
    display: flex;
    justify-content: center;
    align-items: center;
}

#iconLoupe
{
    width: 1em;
}

#textValid
{
    display: none;
}

/* FIN DU BOUTON RECHERCHE PAR VILLE */

/* CSS de la ligne de filtes : Eco, Famil., Romantiq., Animaux */

#filtreRecherche
{ 
    width: 100%;
}

article#filtreRecherche h2
{
    margin-bottom: 5%;
    font-size: 1em;
}

ul.mesFiltres
{
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 1em;
}

.iconPix
{
    color: #0065fc;
    background-color: #deebff;
    border-radius: 50px;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
    margin-right: 5px;
    z-index: 2;
}


ul.mesFiltres li
{
    float: left;
}


.amande
{
    border: 1px solid #d9d9d9;
    border-radius: 50px;
    display: flex;
    align-items: center;
    vertical-align: middle;
    margin-right: 2%;
    margin-bottom: 3%;
    font-weight: bold;
    z-index: 1;
}

.amande:hover
{
    color: white;
    background-color: #0065fc;
}

#eco
{
    width: 155px;
}

#famille
{
    width: 120px;
}

#roman
{
    width: 160px;
}    

#ani
{
    width: 210px;
}

#pourInfo
{
    margin-top: 5%;
    font-size: 0.8em;
    display: flex;
}


.pourInfoPix
{
    border: 2px solid #dedede;
    border-radius: 50px;
    padding: 6px;
    width: 30px;
    text-align: center;
    color: #0065fc;
    font-size: 10px;
}

.phraseInfo
{
    position: relative;
    top: 5px;
    margin-left: 2%;
}

/* CSS et flexbox de la zone section Filtre de Trouver votre h....  à  Plus de 500 logements dispo...*/
/* FIN FIN FIN FIN FIN FIN FIN FIN FIN FIN FIN FIN FIN FIN */
/* CSS de la section des photos des hébergements - SECTION SUPERIEURE */

#sectionSuperieure
{
    display: flex;
    flex-direction: column-reverse; 
    padding-top: 1em;  
    padding-bottom: 1em;
}

.transparent
{
    display: none;
}

#blocGauche
{
    width: 100%;   
    padding-top: 1.5em; 
}

#titreHebergementMarseille
{
    margin-left: 1em;
    margin-top: 1em;
    margin-bottom: 1em;
}

.titreHdeux
{
    font-size: 1em;
}

#blocGaucheTop
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#blocGaucheBas
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.bullePhoto
{
    border-style: none;
    border-radius: 10px;
    background-color:#ffffff;
    box-shadow: 0px 3px 0px #f3f3f3;
    margin-bottom: 10%;
    width: 85%;
}

.descripPhoto
{
    height: 4em;
    font-size: 0.8em;
}

.starPix
{
    color:#0065fc;
    width: 3%;
    margin-right: 0.2em;
}

.starPixGrey
{
    color: #d9d9d9;
    width: 3%;
    margin-right: 0.2em;
}

.roundedPixTop
{
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    width: 100%;                        /* LARGEUR */
    height: 113px;                     /* HAUTEUR */
    object-fit: cover;
}

.roundedPixBottom
{
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    width: 100%;                        /* LARGEUR */
    height: 113px;                     /* HAUTEUR */
    object-fit: cover;
}


.bulleTitreText
{
    font-weight: bold;
    margin-left: 5%;
    margin-bottom: 1%; 
}

.bulleText
{
    margin-left: 5%;
    margin-bottom: 1%;
}

.ratings
{
    margin-left: 5%;
    margin-bottom: 1%;
}

/* CSS de la zone au top de la sectionSuperieure sur la version mobile */

#blocDroit
{
    width: 100%;    
    background-color: #f2f2f2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 1.5em;
}

#titrePlusIcon
{
    display: flex;
    width: 80%; 
    justify-content: space-between;
    align-items: center;
    padding-bottom: 1.5em;
}

#iconGraph
{
    width: 1em;
}

.bullePicture
{
    display: flex;
    border-style: none;
    border-radius: 10px;
    margin-bottom: 9%;
    background-color: #ffffff;
    width: 85%;
    height: 134px;
}

.leftRoundPix
{
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    height: auto;
    width: 48%;
    height: 100%;
    object-fit: cover;
}

.descriptionPhoto
{
    padding-left: 2%;
    width: 52%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 0.8em;
    height: 95%;
}

.titreTextPhoto
{
    font-weight: bold;
}

.textPhoto
{
    position: relative;
    bottom: 15%;
}

.starPixDroit
{
    width: 8%;
    color: #0065fc;
}

.starPixDroitGrey
{
    width: 8%;
    color: #d9d9d9;
}

/* FIN DU #blocDroit qui est au top de la version Mobile */

#afficherPlus
{
    margin-left: 8%;
}

/* FIN FIN FIN FIN CSS de la section des photos des hébergements - SECTION SUPERIEURE FIN FIN FIN FIN FIN FIN */

#titreMilieu
{
    margin-left: 8%;
}

/* CSS de la section inferieure */

#sectionInferieure
{
    display: flex;
    flex-direction: column;
    font-weight: bold;
    padding-top: 1em;
}

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

#bullePix1, #bullePix2, #bullePix3, #bullePix4, #bullePix5, #bullePix6
{
    display: flex;
    flex-direction: column;
    border-radius: 15px;
    box-shadow: 0px 3px 0px #f3f3f3;
    width: 85%;
    margin-bottom: 5%; 
}

.pixInferieures
{
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    width: 100%;                                       
    height: 135px;
    object-fit: cover;
}

.pixDescrip
{
    display: flex;
    align-items: center;
    padding-left: 5%;
    padding-top: 2.5%;
    padding-bottom: 2.5%;
}

/* FIN FIN FIN FIN de la section inférieure   FIN FIN FIN FIN */

/* CSS du footer */

footer
{
    background-color: #f2f2f2;
    display: flex;
    flex-direction: column;
    padding-left: 8%;
    padding-top: 1em;
}

footer a:hover
{
    font-style: italic;
}

footer ul 
{
    list-style-type: none;
    margin: 0;
    padding-top: 1em;
}

footer li
{
    margin-bottom: 1em;
}

.articleFooter
{
    padding-top: 2em;
}