:root{
        --orange:#E76F51;
        --white: #fff;
        --grey: #D2D2D2;
        --black: #3B3735;
        --bgc: #FAF4F2;
        --dark-pink: #F8E1D8;
        --primary-font: "Roboto", Arial, Helvetica;
        --primary-font-md: "Roboto Medium", Arial, Helvetica;
        --secondary-font: "Archivo Black", Arial, Helvetica
}
html{
        box-sizing: border-box;
        font-size: 10px;
        scroll-behavior: smooth;
}

*,*:after,*:before{
       box-sizing: inherit; 
}
body{
        line-height: 1.6;
        font-size: 1.6rem;
        font-family: var(--primary-font);
        background-color: var(--bgc);
        overflow-x: hidden;
}

a{
        text-decoration: none;
}
.btn{
        border-radius: 10rem;
        color: var(--white);
        background-color: var(--black);
        width: 18rem;
        height: 4.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
        font-family: var(--primary-font-md);
}

.header{
        background: linear-gradient(rgba(59,55,53,0.5), rgba(59,55,53,0.5)), url(images/header-bg.jpg);
        background-position: center;
        background-size: cover;
        min-height: 70vh;
        border-bottom-left-radius: 10rem;
        border-bottom-right-radius: 10rem;
        padding: 0 4rem;
}
.nav{
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 2.5rem 0;
}
.nav-wrapper{
        display: flex;
        align-items: center;
}
.app-logo{
        display: block;
        width: 5.5rem;
        height: 5.5rem;
        margin-right: 4rem;
}
.app-logo-img{
        width: 100%;
        height: 100%;
}
.menu{
      display: none;
}
.menu-item{
        margin-right: 1.5rem;
}
.menu-link{
        color: var(--grey);
        transition: color 100ms ease-in;
}
.menu-link:hover{
        color: var(--white);
}
.menu-link:active{
        color: var(--white);
        position: relative;
        z-index: 1;
}
.menu-link:active::before{
        content: ' ';
        position: absolute;
        right: 0;
        left: 0;
        top: 7px;
        width: 4rem;
        height: 0.3rem;
        border-radius: 10rem;
        background-color: var(--orange);
        transform: rotate(45deg);
        z-index: -1;
        margin: 0 auto;
}
.nav-menu{
        position: fixed;
        top: 0;
        bottom: 0;
        left: -25rem;
        width: 25rem;
        background-color: var(--black);
        padding: 2.5rem;
        transition: all 250ms ease-in-out;
        z-index: 100;
}
.nav-menu--open{
        left: 0;
}
.nav-menu-title{
        color: var(--white);
        font-size: 2rem;
        font-family: var(--secondary-font);
        border-bottom: 1px solid var(--white);
        padding-bottom: 1rem;
        margin-bottom: 2rem;
        text-align: center;
}
.mobile-menu{
        margin-bottom: 3rem;
}
.mobile-menu-item{
        margin-bottom: 1rem;
}
.mobile-menu-link{
        color: var(--white);
        position: relative;
        transition: all 250ms ease-in-out;
}
.mobile-menu-link::before{
        content: ' ';
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        width: 0;
        height: 0.3rem;
        background-color: var(--orange);
        border-radius: 5rem;
        transition: all 250ms ease-in-out;
}
.mobile-menu-link:hover{
        padding-left: 2.2rem;
}
.mobile-menu-link:hover::before{
        width: 1.6rem;
}
.nav-menu-links{
        display: flex;
}
.nav-menu-link{
        color: var(--white);
        border: 1px solid var(--white);
        display: block;
        padding: 1rem;
        flex-grow: 1;
        text-align: center;
        transition: all 100ms ease-in;
}
.nav-menu-link:hover{
        background-color: #fff;
        color: var(--black);
}
.nav-links{
     display: none;
}
.nav-link{
        color: var(--white);
        font-family: var(--primary-font-md);
        margin-left: 1.5rem;
}
.nav-link--border{
        border: 1px solid var(--white);
        padding: 1rem 2.5rem;
        border-radius: 10rem;
        transition: all 100ms ease-in;
}
.nav-link--border:hover{
        background-color: var(--white);
        color: var(--black);
}
.nav-btn{
        background-color: var(--white);
        width: 5.5rem;
        height: 5.5rem;
        border-radius: 2rem;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
}
.nav-btn-line{
        display: block;
        width: 3rem;
        height: 0.3rem;
        border-radius: 5rem;
        background-color: var(--orange);
        position: relative;
        transition: all 150ms ease-in-out; 
}
.nav-btn-line::before,
.nav-btn-line::after{
        content: ' ';
        position: absolute;
        width: 3rem;
        height: 0.3rem;
        border-radius: 5rem;
        background-color: var(--orange);
        transition: all 200ms ease-in-out; 
}
.nav-btn-line::before{
        top: -0.8rem;
}
.nav-btn-line::after{
        top: 0.8rem;
}
.nav-btn--open .nav-btn-line{
        background-color: transparent;
}
.nav-btn--open .nav-btn-line::before{
        transform: translateY(8px) rotate(45deg);
}
.nav-btn--open .nav-btn-line::after{
        transform: translateY(-8px) rotate(-45deg);
}
.header-content{
        text-align: center;
        color: var(--white);
        margin-top: 2rem;
}
.header-content-title{
        font-family: var(--secondary-font);
        font-size: 5rem;
        line-height: 1.2;
        max-width: 35rem;
        margin: 0 auto 3rem auto;
}
.header-content-text{
        font-size: 1.8rem;
        max-width: 34rem;
        margin: 0 auto 2rem auto;
}
.header-content-link{
        background-color: var(--orange);
}
.main{
        padding: 4rem 4rem;
}
.services{
        margin-top: -10rem;
        display: flex;
        flex-wrap: wrap;
        margin-left: -1rem;
        margin-right: -1rem;
}
.service{
        background-color: var(--white);
        width: 30rem;
        height: 26rem;
        border-radius: 2rem;
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 0 2rem;
        color: var(--black);
        margin-bottom: 2rem;
        flex-grow: 1;
        margin-left: 1rem;
        margin-right: 1rem;
}
.service-img{
        display: block;
}
.service-title{
        font-family: var(--secondary-font);
        font-size: 1.8rem;
        margin: 1.5rem 0 0.6rem 0;
}
.service-text{

}
.destinations{
        text-align: center;
        padding: 6rem 0;
        color: var(--black);
        position: relative;
}
.destinations::before,
.destinations::after{
        content: ' ';
        position: absolute;
        width: 60rem;
        height: 60rem;
        background-size: contain;
        background-repeat: no-repeat;
}
.destinations::after{
        background-image: url(svgs/shape1.svg);
        right: -45rem;
        top: -10rem;
}
.destinations::before{
        background-image: url(svgs/shape2.svg);
        left: -45rem;
        bottom: 40rem;
}
.destination-logo{
        width: 8rem;
        height: 8rem;
}
.destination-title{
        font-family: var(--secondary-font);
        font-size: 3rem;
        max-width: 36rem;
        margin: 3rem auto;

}
.destination-places{
        display: flex;
        flex-wrap: wrap;
        margin-left: -1rem;
        margin-right: -1rem;
}
.place{
        background-color: var(--white);
        border-radius: 2rem;
        padding: 2rem;
        color: var(--black);
        margin-bottom: 2rem;
        margin-right: 1rem;
        margin-left: 1rem;
        width: 30rem;
        flex-grow: 1;
        overflow: hidden;
}
.place-banner{
        position: relative;
        border-radius: 2rem;
        overflow: hidden;
        height: 18rem;
}
.place-img{
        width: 100%;
        height: 100%;
        object-fit: cover;
}
.place-like{
        background-color: var(--white);
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 1.5rem;
        right: 1.5rem;
        width: 4rem;
        height: 4rem;
        border-radius: 1.5rem;
        cursor: pointer;
}
.place-like-icon{

}
.place-price{
        background-color: var(--white);
        position: absolute;
        bottom: -0.8rem;
        left: 0;
        right: 0;
        width: 12rem;
        margin: 0 auto;
        padding: 0.5rem 2rem;
        border-radius: 1rem;
}
.place-price-text{
        font-family: var(--primary-font-md);
        color: var(--orange);
        text-align: center;
}
.place-title{
        font-family: var(--secondary-font);
        margin-top: 3rem;
        margin-bottom: 0.5rem;
        font-size: 1.8rem;
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
}
.place-text{
        margin-bottom: 3rem;
}
.place-link{
        color: #8D8D8D;
        background-color: rgba(141,141,141,0.1);
}
.destinations-btn{
        color: var(--orange);
        background-color: transparent;
        transition: all 100ms ease-in;
        margin-top: 3rem;
        border: 1px solid var(--orange);
}
.destinations-btn:hover{
        color: var(--bgc);
        background-color: var(--orange);

}
.newsletter{
        background-color: var(--dark-pink);
        border-radius: 2rem;
        color: var(--black);
        text-align: center;
        padding: 3rem 2rem;
        display: flex;
        flex-direction: column-reverse;
        margin: 6rem 0;
        position: relative;
        overflow: hidden;
}
.newsletter::before{
        content: ' ';
        position: absolute;
        top: 15rem;
        bottom: 0;
        left: -15rem;
        right: 0;
        background: url(svgs/shape3.svg) no-repeat;
        width: 50rem;
        height: 50rem;
        background-size: contain;
}
.newsletter-content ,
.newsletter-banner{
        z-index: 2;
}
.newletter-title{
        font-family: var(--secondary-font);
        font-size: 3rem;
        max-width: 16rem;
        margin: 1.5rem auto;
}
.newsletter-text{
        font-family: var(--primary-font-md);
}
.newsletter-EmailBox{
        position: relative;
        background-color: var(--white);
        height: 8rem;
        padding: 0 1.5rem;
        border-radius: 2rem;
        margin-top: 2rem;
}
.newsletter-form{
        height: 100%;
        display: flex;
        align-items: center;
}
.newsletter-email-icon{
        flex-shrink: 0;
}
.newsletter-input{
        outline: none;
        border: none;
        height: 100%;
        color: #8D8D8D;
        background-color: var(--white);
        width: 100%;
        padding: 0 1rem;
        font-size: 1.6rem;
}
.newsletter-submit{
        outline: none;
        border: none;
        background-color: var(--orange);
        width: 5rem;
        height: 5rem;
        border-radius: 2rem;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
}
.newsletter-banner{

}
.newsletter-img{
        width: 100%;
}
.footer{
        background-color: var(--dark-pink);
        border-top-left-radius: 10rem;
        border-top-right-radius: 10rem;
        color: var(--black);
        padding: 0 6rem;
        padding-bottom: 4rem;
}
.footer > .container{
        padding-top: 10rem;
}
.footer-title{
        font-family: var(--secondary-font);
        font-size: 1.8rem;
        margin-bottom: 1rem;
}
.footer-wrapper{

}
.footer-left{
        max-width: 60rem;
}
.footer-content{
        margin-bottom: 2rem;

}
.footer-content-description{

}
.footer-app{
        display: none;
}
.footer-title{

}
.footer-app-link{

}
.footer-app-img{

}
.footer-right{
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 2rem;
}
.footer-list{
        width: 16rem;
        margin-left: 1rem;
        margin-bottom: 1rem;

}
.footer-title{

}
.footer-pages{

}
.footer-pages-item{

}
.footer-pages-link{
        color: var(--black);

}
.footer-pages-link:hover{
        text-decoration: underline;
}