html{
    scroll-behavior: smooth;
}
.cannes-page .top-banner .flex {
    display: flex;
    justify-content: space-between;
}
.cannes-page .top-banner .content-heading {
    width: 50.6%;
    display: flex;
    flex-direction: column;
    max-width: 725px;
    padding-right: 15px;
}
.top-banner .title .sub-title {
    display: block;
    line-height: 1.8;
}
.top-banner .title{
    letter-spacing: 0.02em;
    font-size: 70px;
    line-height: 80px;    
    font-weight: 500;
    margin-top: 10px;
    margin-bottom: 30px
}
.top-banner .content-heading .description p {
    margin-bottom: 23px;
}
.cannes-page .top-banner .image {
    width: 49.42%;
}
.cannes-page .top-banner {
/*    min-height: 944px;*/
    padding-top: 129px;
}
.cannes-page section.contents {
    padding-top: 50px;
/*    padding-bottom: 122px;*/
}
.cannes-page .listing-cards{
    margin: 0;
}
.cannes-page .heart-item, .cannes-page .social-item {
    width: 32px;
    height: 32px;
}
.cannes-page .wishlist-social{
    top: 15px;
}
.cannes-page .sub-menu-social{
    margin-top: 14px;
}
.cannes-page .sub-menu-social::before{
    left: 13.5px;
}   
.cannes-page .wishlist-social svg {
    width: 20px;
    height: 20px;
}
.cannes-page .social-item li > a{
    height: 32px;
    vertical-align: top;
}
.cannes-page .card-tags{
    bottom: 25px;
    left: 10px;
}
.cannes-page .top-card-item{
    align-items: flex-start;
/*    margin-bottom: 0;*/
}
.cannes-page .card-price{
    margin-top: 0;
}
.cannes-page h3.card-title{
    font-weight: 500;
}
.cannes-page .tag-item{
    letter-spacing: -0.04em;
}
.cannes-page .infor-items{
    margin-bottom: 17px;
    flex-wrap: nowrap;
}
.contents .listing-cards .card-item {
    width: calc(50% - 10px);
    /* display: none; */
    margin: 0 10px 60px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    background-color: #FFF;
}
.contents .listing-cards .card-item:nth-child(odd) {
    margin-left: 0;
}
.contents .listing-cards .card-item:nth-child(even) {
    margin-right: 0;
}
.contents .listing-cards .card-item.active {
    display: block;
}
.cannes-page .contents .load-more {
    display: flex;
    justify-content: center;
    margin: 102px auto 0 auto;
}
.contents .btn-loadmore {
    display: block;
    margin: auto;
    width: fit-content;
    cursor: pointer;
    text-decoration: none;
}
.tourism-and-fun{
    padding-top: 10px;
    padding-bottom: 137px;
}
.tourism-and-fun a, .content-heading .description p a {
  color: #A69987;
  text-decoration: underline;
}
.tourism-and-fun h3 {
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 500;
    line-height: 54px;
    letter-spacing: 0.02em;
    text-transform: none;
    margin: 0 0 20px;
}
.tourism-and-fun h2 {
  font-family: var(--font-heading);
    font-style: normal;
    font-weight: normal;
    font-size: 25px;
    line-height: 100%;
  }
.tourism-and-fun ul li {
  list-style-type: circle;
    margin: 0;
    padding-left: 10px;}
.tourism-and-fun .content-inner {
    max-width: 1540px;
    margin: 0 auto;
}
.tourism-and-fun .description {
    /*font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    text-align: left;*/
    color: #4A505666;
/*    padding-right: 1px;*/
}
/*.tourism-and-fun .description p {
    margin-bottom: 30px;
}*/
.cannes-page .home-services .services-box .service-info .title i {
    font-style: normal;
}
@media (min-width: 768px){
    .top-banner .title.mobile{
        display: none;
    }    
}
@media (min-width: 1441px){
    .cannes-page .home-services .services-box .service-info{
        top: 55.3%;
    }
    .cannes-page .home-services .services-box .service-info .btn-read-more{
        padding: 12px 43px;
        margin: 0 11px;
    }
    .cannes-page .home-services .service-right .service-info .btn-read-more{
        font-size: 26px;
        line-height: 30px;
        text-transform: uppercase;
    }
    .cannes-page .home-services .services-box .service-info .btn-read-more:before, 
    .cannes-page .home-services .services-box .service-info .btn-read-more:after {
        background-image: url(../svg/arr-right-white.svg);
        width: 21px;
        height: 42px;
        margin-top: -21px;
    }
}
@media (max-width: 1440px) and (min-width: 768px) {
    .cannes-page .top-banner .image {
        padding-right: 0;
        padding-bottom: 29px;
    }
    .cannes-page .top-banner .content-heading {
        max-width: 478px;
    }
    .cannes-page .home-services .services-box .service-info .title{
        font-size: 58px;
    }
}
@media (max-width: 1440px) {
    .cannes-page .top-banner .image {
        width: 49.39%;
    }
    .cannes-page .top-banner{
        padding-top: 127px;
    }
    .top-banner .title{
        margin-top: 14px;
    }
    .cannes-page .infor-items .info-item{
        width: auto;
    }
    .tourism-and-fun .content-inner {
        max-width: 986px;
    }
}
@media (max-width: 1199px){
    .top-banner .title{
        margin-top: 0;
    }
    .cannes-page .top-banner{
        min-height: 0;
    }
    .top-banner .title .sub-title{
        line-height: normal;
    }
}
@media (max-width: 767px){
    .cannes-page .top-banner {
        padding-top: 40px;
    }
    .cannes-page .top-banner .content-heading{
        width: 100%;
        max-width: 100%;
        padding-right: 0;
        order: 2;
    }
    .cannes-page .top-banner .image {
        width: 100%;
        margin-bottom: 48px;
    }
    .cannes-page .top-banner .flex{
        flex-wrap: wrap;
    }
    .top-banner .content-heading .title{
        display: none;
    }
    .cannes-page .top-banner .image img{
        width: 100%;
        vertical-align: top;
    }
    .top-banner .title{
        font-size: 42px;
        line-height: 60px;
        letter-spacing: 0.02em;
        margin-bottom: 32px;
    }
    .top-banner .title .sub-title{
        font-size: 22px;
        line-height: 32px;
        letter-spacing: 0.02em;
        margin-bottom: 8px;
    }
    .top-banner .content-heading .description p {
        margin-bottom: 25px;
    }
    .top-banner .banner-link {
        margin-top: 33px;
    }
    .top-banner .btn-read-more{
        padding: 12px 23px;
    }
    .contents .listing-cards .card-item{
        width: 100%;
        margin: 0 0 60px;
    }
    /*.cannes-page section.contents{
        padding-top: 185px;
        padding-bottom: 167px;
    }*/
    .tourism-and-fun h3{
        text-align: center;
    }
    .cannes-page .contents .container{
        padding-left: 30px;
        padding-right: 30px;
    }
    .cannes-page .heart-item, .cannes-page .social-item {
        width: 24px;
        height: 24px;
    }
    .cannes-page .wishlist-social svg {
        width: 16px;
        height: 16px;
    }
    .cannes-page .social-item li > a {
        height: 24px;
    }
    .cannes-page .wishlist-social {
        top: 10px;
        right: 6px;
    }
    .cannes-page .sub-menu-social {
        margin-top: 5px;
        width: 27px;
        padding: 8px 0px 10px;
    }
    .cannes-page .sub-menu-social::before {
        left: 8.5px;
    }
    .cannes-page  .sub-menu-social li:not(:last-child) {
        margin-bottom: 8px;
    }
    .cannes-page ul.sub-menu-social svg {
        width: auto;
        height: auto;
    }
    .cannes-page .card-tags {
        bottom: 15px;
        left: 2px;
    }
    .cannes-page .infor-items{
        column-count: 2;
        display: block;
        padding-right: 70px;
        column-gap: 0;
        margin-bottom: 12.5px;
    }
    .cannes-page .infor-items .info-item {
        width: 100%;
        white-space: nowrap;
        margin-bottom: 4px;
    }
    .cannes-page .contents .load-more{
        margin-top: 58px;
    }
}
