
* {
    box-sizing: border-box;
}

h1{
    font-size: 35px;
}

h2{
    font-size: 16px;
}


body{
    font-family: 'Raleway', serif;
    color: #000;  
}

#bloc_page{
    display: flex;
    flex-direction: column;
    padding-top: 24.91px;
    padding-left: 55.18px;
    padding-right: 56.96px;
    font-size: 14px;

}

@media screen and (min-width: 768px) and (max-width: 992px){
    h1{
        font-size: 35px;
        margin: 0px;
        margin-bottom: 33px;
    }

    p{
        margin: 0px;
    }

    #bloc_page{
        padding: 0px;
        font-size: 23px;
    }
}

@media screen and (max-width: 768px){
    h1{
        font-size: 22px;
        font-weight: bold;
        margin: 0px;
    }

    /*p{
        margin: 0px;
    }*/

    #bloc_page{
        display: flex;
        flex-direction: column;
        width: 100%;
        padding: 0px;
        font-size: 12px;
    }
}

/**/
/* HEADER */
/**/

header{
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

#logo{
    padding-left: 21.82px;
    
}

/* Navigation */
nav ul{
    list-style-type: none;
    display: flex;
}

nav li{
    margin-right: 15px;
}

nav a{
    font-size: 14px;
    color: #000;
    padding-top: 60px;
    padding-right: 25.05px;
    padding-bottom: 25.92px;
    padding-left: 33.42px;
    text-decoration: none;
}

nav a:hover{
    color: #0065FC;
    font-weight: bold;
    border-top: 3px solid #0065FC;
}

@media screen and (min-width: 768px) and (max-width: 992px){

    nav
    {
        width:auto;
        text-align: left;
    }

    nav ul
    {
        flex-direction: column;
    }

    nav li
    {
        padding-left: 4px;
    }

    nav a 
    {
        font-size: 17px;
        padding-top: 0px;
        padding-bottom: 0px;
    }

    nav a:hover
    {
        color: #0065FC;
        border-top: none;
        font-weight: bold;
        border-left: 3px solid #0065FC;
        
    }
}

@media screen and (max-width: 768px){
    
    header{
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding-top: 0px;
        padding-bottom: 16px;
    }
    
    #logo{
        padding: 29px 0px 0px 0px;
        height: 100%;
        align-items: center;
    }

   
   nav {
        width: 100%;
        padding: 0px 0px 5px 0px; 
    }

    nav ul{
        width: 100%;
        padding-left: 0px;
        flex-direction: row;        
    }

    nav li{
        display: flex;
        width: 50%;
        margin-right: 0px;
        align-items: center;
        
    }

    nav a {
        font-size: 16px;
        padding: 0px 0px 13px 0px;
        width: 100%;
        border-bottom: 3px solid #f2f2f2;
        text-align: center;
    }

    nav a:hover{
        color: #0065FC;
        border-top: none;
        border-bottom: 3px solid #0065FC;
        
    }
}


/**/
/*  MAIN  */
/**/

main{
    display: flex;
    flex-direction: column;
    width: auto;
}

/* Search */
#search{
    
    width: 100%;
    display: flex;
    flex-direction: column;
}

#search_title{
   
    padding-top: 35.08px;
    padding-bottom: 11.51px;
    padding-left: 5.82px;
    height: auto;
    width: 100%;
}

#search_form{
    height: 100.05px; 
    width: auto;
}

form{
    
    padding-top: 9.49px;
    padding-bottom: 34.57px;
    padding-left: 7.82px;
}

.form_icon{
    font-size: 21px;
    padding: 17px 20.51px 16px 20.88px;
    color: #000;
    border: 1px solid #f2f2f2;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    background-color: #f2f2f2;
}

.form_in_txt{
    border: 1px solid #f2f2f2;
    color: #000;
    font-weight: bold;
    margin-left: -4px;
    padding-top: 24px;
    padding-bottom: 18px;
    padding-left: 20.49px;
}

.form_in_sub{
    border:  1px solid #0065FC;
    background-color: #0065FC;
    color: #fff;
    font-weight: bold;
    margin-left: -4px;
    padding: 24px 18.67px 18px 18.67px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    text-align: center;
}

.form_in_sub_mob{
    border:  1px solid #0065FC;
    background-color: #0065FC;
    color: #fff;
    font-weight: bold;
    margin-left: -4px;
    padding: 24px 18.67px 18px 18.67px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    text-align: center;
}

.fa-input {
    font-family: FontAwesome, 'Raleway', serif;
}

#search_filter{
    height: auto;
    padding-top: 20.43px;
    padding-bottom: 43.94px;
    padding-left: 17.82px;
    display: flex;
    flex-direction: row;
    width: auto;
}

#filter{
    flex-wrap: wrap;
}

#search_info{
    height: 80.26px;
    padding-top: 15.06px;
    padding-bottom: 38.20px;
    padding-left: 13.82px;
    width: auto;
}

.i-search-label {
    position: relative;
	left: -6px;
	display: inline-block;
	padding: 8px 8px;
    border: 2px solid #f2f2f2;
	border-radius: 45px;
    color: #0065FC;
}

@media screen and (min-width: 992px){
    .form_in_sub_mob{
        display: none;
    }
}

@media screen and (min-width: 768px) and (max-width: 992px){
    #search{
        height: auto;
    }

    #search_title{
        height: auto;
        padding: 40px 130px 30.27px 40px;
    }

    .form_in_sub_mob{
        display: none;
    }

    #search_filter{
        height: auto;
    }

    #filter{
        flex-wrap: wrap-reverse;
    }

}

@media screen and (max-width: 768px){
    
    #search{
        height: auto;
    }

    #search_title{
        height: 100%;
        padding: 10px 32px 7px 10px;
    }

    form{
        padding: 21px 21px 17px 21px;
    }

    #search_filter{
        height: 40px;
        padding-top: 10px;
        padding-bottom: 0px;
        padding-left:9px;
        height: auto;
        flex-direction: column;
   }

    #search_form{
        height: 88px;
    }

    .form_icon{
        font-size: 19px;
    }

    .form_in_txt{
        margin: -4px;
        font-weight: bold;
    }

    .form_in_sub{
        display: none;
    }

    .form_in_sub_mob{
        margin-left: -7px;
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
        border-top-left-radius: 10px;
        border-bottom-left-radius: 10px;
    }

   #search_info{
        height: auto;
        padding-top: 0px;
        padding-bottom: 0px;
    }

    .i-search-label {
        border-radius: 16px;
    }
}

/* Filtre */
#filter_title{
    padding-right: 36px;
}

/* 
Button Filter
How-to : <button class="btn btn-labeled"><span class="btn-label">{icone Fontawesome <i>}</span>{text boutton}</button> 
*/

button{
    border: 2px solid #f2f2f2;
    border-radius: 45px;
    padding-right: 25px;
    padding-left: 15px;
    margin-right:  27px;
    margin-bottom: 25px;
    border-left-style: none;
    color: #000;
    font-size: 20px;
    font-weight: bold;
    cursor: pointer;
}

.btn {
    background-color: #fff;
}

.btn-label {
	position: relative;
	left: -15px;
	display: inline-block;
	padding: 8px 8px;
	background: #DEEBFF;
    border: 2px solid #DEEBFF;
	border-radius: 45px;
    color: #0065FC;
    width: 45px;
}

.btn-labeled {
	padding-top: 0;
	padding-bottom: 0;
}

.btn:hover{
    background: #0065FC;
    color: #fff;
    transition: .3s;
 }
 
 @media screen and (max-width: 768px){
     #filter{
         flex-wrap: wrap;
     }

     button{
        border-radius: 23px;
        padding-right: 13px;
        padding-left: 15px;
        margin-right:  14px;
        margin-bottom: 13px;
       font-size: 12px;
    }

    .btn-label {
        left: -16px;
        padding: 8px 8px;
        background: #DEEBFF;
        border: 2px solid #DEEBFF;
        border-radius: 40px;
        color: #0065FC;
        width: 38px;
    }
 }

 /* Host */

#host{
    display: flex;
}

#host_marseille{
    display: flex;
    flex-direction: column;
    width: 75%;
    margin-right: 23.25px;
    background-color: #f2f2f2;
    border-radius: 25px;
    padding: 50.52px 45.14px 117px 43.41px;
}

#host_cards{
    display: flex;
    flex-wrap: wrap;
    row-gap: 32px;
    column-gap: 20px;
    margin-top: 24.70px;    
}

.show_more{
    margin-top: 48px;
}
.show_more a{
    color: black;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
}

.show_more a:hover{
    color: #0065FC;
}

.card{
    width: 276.68px;
    margin: 0px auto;
    padding: 5px;
    border-radius: 25px;
    background-color: white;
    box-shadow: 0px 5px 20px #999;
}

.card-title{
    margin-left: 13px;
}

.card-excerpt{
    margin-left: 13px;
}

.card-note{
    margin-left: 13px;
}

.card a{
    color: #333;
    text-decoration: none;
}

.card:hover .card-image img{
    width: 160%;
    filter:grayscale(0);
}

.card-image{
    height: 127px;
    width: 263px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    position: relative;
    overflow: hidden;
}

.card-image img{
    width: 150%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: grayscale(1);
    transition-property: filter, width;
    transition-duration: .3s;
    transition-timing-function: ease;
}

.star_blue{
    color: #0065FC;
}

.star_gray{
    color: #d9d9d9;
}

/* Populary Hosting*/

#host_pop{
    display: flex;
    flex-direction: column;
    width: 463.75px;
    background-color: #f2f2f2;
    margin-left: 23.25px;
    padding-top: 50px;
    padding-right: 42.19px;
    padding-left: 42px;
    border-radius: 25px;
}

#host_pop_cards{
    margin-top: 27.56px;
    display: flex;
    flex-direction: column;
    row-gap: 27.56px;
}

#host_pop_title{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

#host_pop_title i{
    font-size: 26px;
}

.card-pop{
    width: 381.26px;
    margin: 0px auto;
    padding: 5.13px;
    border-radius: 25px;
    background-color: white;
    box-shadow: 0px 5px 20px #999;
}

.card_horizon{
    display: flex;
    color: #333;
    text-decoration: none;
}

.card-image-pop{
    height: 149px;
    width: 142px;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    position: relative;
    overflow: hidden;
}

.card-pop:hover .card-image-pop img{
    width: 160%;
    filter:grayscale(0);
}

.card-image-pop img{
    width: 150%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: grayscale(1);
    transition-property: filter, width;
    transition-duration: .3s;
    transition-timing-function: ease;
}

.card-body-pop{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.card-title-pop{
    margin-left: 18px;
    margin-right: 58.14px;
}

.card-excerpt-pop{
    margin-left: 18px;
    margin-right: 58.14px;
}

.card-note-pop{
    margin-left: 18px;
    margin-right: 58.14px;
}

@media screen and (min-width: 768px) and (max-width: 992px){
    #host{
        width: 100%;
    }

    #host_marseille{
        width: 50%;
        margin: 0px 5px 0px 0px;
    }

    #host_pop{
        width: 50%;
        margin: 0px 0px 0px 5px;
    }
}

@media screen and (max-width: 768px){
    #host{
        width: 100%;
        flex-direction: column;
    }

    #host_pop{
        width: 100%;
        order: 1;
        padding-top: 43px;
        padding-right: 21px;
        padding-bottom: 33px;
        padding-left: 21px;
        margin: 0px;
        border-radius: 0px;
        
    }

    #host_pop_title h1{
        margin: 0px;
    }

    .card-image-pop .miniature{
        width: 140px;
        height: 211px;
    }

    #host_marseille{
        width: 100%;
        order: 2;
        padding-bottom: 31px;
        background: none;
    }

    .card-pop{
        width: 100%;
        margin: auto;
    }

    .card{
        width: 100%;
        margin: auto;
    }

    .card-image{
        width: 100%;
    }
}


/*Activity*/

#activity{
    padding-top: 72.09px;
    display: flex;
    flex-direction: column;
}

#activity_marseille{
    padding-bottom: 30.55px;
}

#activity_cards{
    display: flex;
    justify-content: space-between;
}

/* Big Card */

.big_card{
    height: 493.50px;
    width: 335.59px;
    margin: 0px auto;
    border-radius: 25px;
    box-shadow: 0px 5px 20px #999;
}

.big_card a{
    color: #333;
    text-decoration: none;
}

.big_card:hover .big_card_img img{
    height: 160%;
    filter:grayscale(0);
}

.big_card_img{
    height: 431.40px;
    width: 335.59px;
    padding: 0px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    position: relative;
    overflow: hidden;
}

.big_card_img img{
    height: 431.40px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: grayscale(1);
    transition-property: filter, height;
    transition-duration: .3s;
    transition-timing-function: ease;
}

.big_card_title h2{
    padding-left: 21.69px;
    font-weight: bold;
}

/* Medium Cards */

.med_card{
    height: 262.81px;
    width: 338.46px;
    margin: 0px auto;
    border-radius: 25px;
    box-shadow: 0px 5px 20px #999;
}

.med_card a{
    color: #333;
    text-decoration: none;
}

.med_card:hover .med_card_img img{
    width: 160%;
    filter:grayscale(0);
}

.med_card_img{
    height: 199.05px;
    width: 338.46px;
    padding: 0px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    position: relative;
    overflow: hidden;
}

.med_card_img img{
    width: 338.46px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: grayscale(1);
    transition-property: filter, width;
    transition-duration: .3s;
    transition-timing-function: ease;
}

.med_card_title h2{
    padding-left: 22.38px;
    font-weight: bold;
}

/* Mini Cards */

.min_card{
    height: 184.48px;
    width: 338.46px;
    margin: 0px auto;
    border-radius: 25px;
    box-shadow: 0px 5px 20px #999;
}

.min_card a{
    color: #333;
    text-decoration: none;
}

.min_card:hover .min_card_img img{
    width: 160%;
    filter:grayscale(0);
}

.min_card_img{
    height: 122.38px;
    width: 338.46px;
    padding: 0px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    position: relative;
    overflow: hidden;
}

.min_card_img img{
    width: 338.46px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: grayscale(1);
    transition-property: filter, width;
    transition-duration: .3s;
    transition-timing-function: ease;
}

.min_card_title h2{
    padding-left: 22.38px;
    font-weight: bold;
}

#col1{
    display: flex;
    flex-direction: column;
}

#col2{
    display: flex;
    flex-direction: column;
    row-gap: 46px;
}

#col3{
    display: flex;
    flex-direction: column;
}

#col4{
    display: flex;
    flex-direction: column;
    row-gap: 46px;
}

@media screen and (min-width: 768px) and (max-width: 992px){   
    
    #activity{
        margin-bottom: 102px;
    }
    #activity_marseille{
        padding-left: 43.79px;
    }

    #activity_cards{
        flex-wrap: wrap;
        justify-content: space-around;
    }

    #col1{
        padding-bottom: 39px;
    }
}

@media screen and (max-width: 768px){
    #activity{
        padding-top: 30px;
    }

    #activity_cards{
        flex-direction: column;
    }

    #activity_marseille{
        padding-left: 43.79px;
    }

    .big_card{
        width: 333px;
        height: 190px;
    }

    .big_card_img{
        width: 333px;
        height: 134px;
    }

    .big_card_img img{
        width: 333px;
    }

    .med_card{
        width: 333px;
        height: 190px;
    }

    .med_card_img{
        width: 333px;
        height: 134px;
    }

    .med_card_img img{
        width: 333px;
    }

    .min_card{
        width: 333px;
        height: 190px;
    }

    .min_card_img{
        width: 333px;
        height: 134px;
    }

    .min_card_img img{
        width: 333px;
    }

    #col1{
        margin-bottom: 39px;
    }

    #col3{
        margin-bottom: 39px;
        margin-top: 39px;

    }
}

/**/
/* FOOTER */
/**/

footer{
    background-color: #f2f2f2;
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-top: 67px;
}

footer a{
    color: #000;
    text-decoration: none;
}

footer a:hover{

    font-weight: bold;
    color: #0065FC;
}

#about_us ul{
    list-style-type: none;
    padding-left: 0px;
}

#about_us li{
    font-size: 15px;
}

#our_host ul{
    list-style-type: none;
    padding-left: 0px;
}

#our_host li{
    font-size: 15px;
}

#help ul{
    list-style-type: none;
    padding-left: 0px;
}

#help li{
    font-size: 15px;
}

@media screen and (min-width: 768px) and (max-width: 992px){
    footer{
        margin: 0px;
    }
}

@media screen and (max-width: 768px){
    footer{
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding-left: 57.48px;
        margin: 67px 0px 0px 0px;
    }


}