/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/*

-- Font face --

*/


@font-face {
    font-family: Roboto;
    src: url(../fonts/Roboto/Roboto-Regular.ttf) format(truetype);
}

@font-face {
    font-family: Roboto-Medium ;
    src: url(../fonts/Roboto/Roboto-Medium.ttf) format(truetype);
}

@font-face {
    font-family: Archivo-Black;
    src: url(../fonts/Archivo/Archivo-Black.ttf) format(truetype);
}


/*

-- Reset css --

*/

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}


a {
    text-decoration: none;
}



:root{
    --primary-color: #E76F51;
    --secondary-color: #f8e1db;
    --white: #fff;
    --lightgrey: #d2d2d2;
    --dark: #3b3735;
    --primary-font: "Roboto", Arial, Helvetica, sans-serif;
    --primary-font-md: "Roboto-Medium", Arial, Helvetica, sans-serif;
    --secondary-font: "Archivo-Black", Arial, Helvetica, sans-serif;
    --app-bg: #faf4f2;
}


html{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    /* font-size: 10px; برای ریست کردن واحد پیکسل و دادن عدد دلخواه, حالا اعداد ضربدر ۱۰ میشوند */
    font-size: 62.5%; /* it is 10px and allow u to increase the font size in ur browser setting */
    scroll-behavior: smooth;
}

*,*:after, *:before{
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
}

body{
    font-family: var(--primary-font);
    line-height: 1.6;
    font-size: 1.6rem;
    background-color: var(--app-bg);
    overflow-x: hidden;
}



/*

-- Helper Class --

*/



/*

-- Component --

*/

.btn{
    border-radius: 10rem;
    color: var(--white);
    background-color: var(--dark);
    width: 18rem;
    height: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-right: auto;
    margin-left: auto;
    font-family: var(--primary-font-md);
}


/*

-- App style --

*/

.container {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    margin-right: auto;
    margin-left: auto;
    position: relative;
}


/*

-- header --

*/


.header {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(59, 55, 53, 0.5)), to(rgba(59, 55, 53, 0.5))), url("../images/header-bg.jpg");
    background: -o-linear-gradient(rgba(59, 55, 53, 0.5), rgba(59, 55, 53, 0.5)), url("../images/header-bg.jpg");
    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: 70rem;
    border-bottom-left-radius: 10rem;
    border-bottom-right-radius: 10rem;

    
}

/*

-- nav --

*/

.nav{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
padding: 2.5rem 0;
}

.nav__wrapper{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
   -webkit-box-align: center;
       -ms-flex-align: center;
           align-items: center;
}


/*

-- logo --

*/

.app-logo {
display: block;
width: 5.5rem;
height: 5.5rem;
margin-right: 4rem;
}

.app-logo__img {
width: 100%;
height: 100%;
}


/*

-- Main menu (desktop) --

*/


.menu {
display: none;

}


.menu__item{
margin-right: 1.5rem;
}



.menu__link{
color: var(--lightgrey);
-webkit-transition: color 100ms ease-in;
-o-transition: color 100ms ease-in;
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: ' ';
    background-color: var(--primary-color);
    position: absolute;
    top: 7px;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 4rem;
    height: 0.3rem;
    border-radius: 10rem;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    z-index: -1;
    }


/*

-- Navigation Menu --

*/

.nav-menu{
position: fixed;
top: 0;
bottom: 0;
left: -25rem;
background-color: var(--dark);
width: 25rem;
padding: 2rem;
-webkit-transition: all 250ms ease-in-out;
-o-transition: all 250ms ease-in-out;
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 --

*/

.mobile-menu{
margin-bottom: 3rem;
}

.mobile-menu__item{

margin-bottom: 1rem;
}

.mobile-menu__link{
    color: var(--white);
    position: relative;
    -webkit-transition: all 250ms ease-in-out;
    -o-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;
}

.mobile-menu__link::before{
    content: " ";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0.3rem;
    border-radius: 5rem;
    background-color: var(--primary-color);
    -webkit-transition: all 250ms ease-in-out;
    -o-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out;
}

.mobile-menu__link:hover{
    padding-left: 2.2rem;
}

.mobile-menu__link:hover::before{
    width: 1.6rem;
}



/*

-- nav links --

*/


.nav-menu__links{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.nav-menu__link{
    color: var(--white);
    border: solid 1px var(--white);
    padding: 1rem;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: center;
    -webkit-transition: all 100ms ease-in;
    -o-transition: all 100ms ease-in;
    transition: all 100ms ease-in;
}

.nav-menu__link:hover{
    background-color: var(--white);
    color: var(--dark);
    -webkit-transition: all 100ms ease-in;
    -o-transition: all 100ms ease-in;
    transition: all 100ms ease-in;
}

.nav-menu__link--border{

}

/*

-- nav links --

*/

.nav__links{
    display: none;
}

.nav__link {
color: var(--white);
font-family: var(--primary-font-md);
margin-left: 1.5rem;
}

.nav__link--border {
border: solid 1px var(--white);
padding: 1rem 2.5rem;
border-radius: 10rem;
-webkit-transition: all 250ms ease-in;
-o-transition: all 250ms ease-in;
transition: all 250ms ease-in;
}

.nav__link--border:hover{
background-color: var(--white);
color: var(--dark);
}

/*

-- nav btn --

*/

.nav__btn{
background-color: var(--white);
width: 5.5rem;
height: 5.5rem;
border-radius: 2rem;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
cursor: pointer;
}

.nav__btn-line {
display: block;
width: 3rem;
height: 0.3rem;
border-radius: 5rem;
background-color: var(--primary-color);
position: relative;
-webkit-transition: all 200ms ease-in-out;
-o-transition: all 200ms ease-in-out;
transition: all 200ms 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(--primary-color);
    -webkit-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    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 {
    -webkit-transform: translateY(8px) rotate(45deg);
        -ms-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg);
}

.nav__btn--open .nav__btn-line::after {
    -webkit-transform: translateY(-8px) rotate(-45deg);
        -ms-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg);
}


/*

-- Header Content --

*/

.header-content{
    color: var(--white);
    text-align: center;
    margin-top: 6rem;
}

.header-content__title{
    font-family: var(--secondary-font);
    font-size: 5rem;
    line-height: 1.2;
    margin: 0 auto 3rem auto ;
    max-width: 35rem;
}

.header-content__caption{
    font-size: 1.8rem;
    margin: 0 auto 2rem auto ;
    max-width: 34rem;
}

.header-content__link{
    background-color: var(--primary-color)
}


/*

-- main --

*/


.main{
padding: 4rem 0;
}


/*

-- Services --

*/


.services{
    margin-top: -20rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: -1rem;
    margin-left: -1rem;
}

.service{
    text-align: center;
    background-color: var(--white);
    color: var(--dark);
    width: 30rem;
    height: 26rem;
    border-radius: 2rem;
    margin-bottom: 2rem;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 2rem;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-right: 1rem;
    margin-left: 1rem;
}

.service__img{
    width: 6.5rem;
    height: 6.5rem;
}

.service__title{
font-family: var(--secondary-font);
font-size: 1.8rem;
margin: 1.5rem 0 0.6rem 0;
}

.service__caption{

}



/*

-- Destinations --

*/

.destinations{
text-align: center;
padding: 6rem 0;
position: relative;
}

.destinations::after,
.destinations::before{
    content: " ";
    position: absolute;
    width: 60rem;
    height: 60rem;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

.destinations::after{
background-image: url(../images/svgs/shape1.svg);
right: -25rem;
top:-15rem;
}

.destinations::before{
    background-image: url(../images/svgs/shape2.svg);
    left: -25rem;
    bottom: 40rem;
}


.destinations__logo{
width: 7rem;
height: 7rem;
}

.destinations__title{
font-family: var(--secondary-font);
font-size: 3rem;
color: var(--dark);
max-width: 36rem;
margin: 3rem auto;
}

.destinations__btn{
    color: var(--primary-color);
    border: solid 1px var(--primary-color);
    background-color: transparent;
    -webkit-transition: all 100ms ease-in;
    -o-transition: all 100ms ease-in;
    transition: all 100ms ease-in;
    margin-top: 3rem;
}

.destinations__btn:hover{
    color: var(--app-bg);
    background-color: var(--primary-color);
}

.destinations__places{
margin-right: -1rem;
margin-left: -1rem;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
}


.place{
    background-color: var(--white);
    margin-bottom: 2rem;
    padding: 2rem;
    color: var(--dark);
    border-radius: 2rem;
    width: 30rem;
    margin-right: 1rem;
    margin-left: 1rem;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    overflow: hidden; /* برای اینکه متن تزنه بیرون و اسکرول افقی نداشته باشیم */
} 

.place__banner{
    position: relative;
    border-radius: 2rem;
    overflow: hidden;
    height: 18rem;
    margin: 0 0 3rem 0;
}

.place__img{
    width: 100%;
    height: 100%;
}

.place__like{
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    background-color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 1.5rem;
    width: 4rem;
    height: 4rem;
}

.place__like-icon{

}

.place__like-icon--fill{
fill: var(--primary-color);
}

.place__price{
    position: absolute;
    bottom: -0.8rem;
    background-color: var(--white);
    padding: 0.5rem 2rem;
    margin: 0 auto;
    right: 0;
    left: 0;
    width: 12rem;
    border-radius: 1rem;
}

.place__price-text{
font-family: var(--primary-font-md);
color: var(--primary-color);
text-align: center;
}

.place__title{
font-family: var(--secondary-font);
font-size: 1.8rem;
/**  زمانی که شکست داری و همتراز نمیشه محتواهات یا کارتات, از این سه پروپرتی استفاده کن **/
white-space: nowrap;
-o-text-overflow: ellipsis;
   text-overflow: ellipsis;
overflow: hidden;
}

.place__caption{
margin: 0.5rem 0 3rem 0;
}

.place__link{
    color: #8d8d8d ;
background-color: rgb(141, 141, 141, 0.1);
}


/*

-- Newsletter --

*/


.newsletter{
    background-color: var(--secondary-color);
    border-radius: 2rem;
    text-align: center;
    padding: 3rem 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            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(../images/svgs/shape3.svg) no-repeat  ;
width: 50rem;
height: 50rem;
background-size: contain;
}

.newsletter__content, .newsletter__banner{
    z-index: 2;
}


.newsletter__content{

}

.newsletter__title{
    font-family: var(--secondary-font);
    font-size: 3rem;
    color: var(--dark);
    margin: 1.5rem auto;
    line-height: 1.2;
}

.newsletter__caption{
font-family: var(--primary-font-md);
}

.newsletter__email-box{
background-color: var(--white);
position: relative;
height: 8rem;
padding: 0 1.5rem;
border-radius: 2rem;
margin-top: 2rem;
}

.newsletter__form{
height: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
}

.newsletter__email-icon{
-ms-flex-negative: 0;
    flex-shrink: 0;
}

.newletter__input{
    outline: none;
    border: none;
    height: 100%;
    color: #8d8d8d;
    width: 100%;
    padding: 0 1rem;
    font-size: 1.6rem;
}

.newletter__submit{
outline: none;
border: none;
background: var(--primary-color);
width: 5rem;
height: 5rem;
border-radius: 2rem;
-ms-flex-negative: 0;
    flex-shrink: 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
cursor: pointer;
-webkit-box-shadow: 0 0 1.5rem rgba(231, 111, 81, 0.2);
        box-shadow: 0 0 1.5rem rgba(231, 111, 81, 0.2);
}

.newsletter__banner{

}

.newsletter__img{
  width: 100%;
}


/*

-- Footer --

*/

.footer{
background-color: var(--secondary-color);
border-top-left-radius: 10rem;
border-top-right-radius: 10rem;
color: var(--dark);
padding-bottom: 4rem;
}

.footer > .container {
    padding-top: 10rem;
}

.footer__title{
font-family: var(--secondary-font);
font-size: 1.8rem;
margin-bottom: 1rem;
}

.footer__scroll{
width: 5rem;
height: 5rem;
border-radius: 2rem;
background-color: var(--white);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
position: absolute;
top: -2.5rem;
right: 0rem;
left: 0;
margin: 0 auto;
-webkit-box-shadow: 0 0 1.5rem rgba(59, 55, 53, 0.5);
        box-shadow: 0 0 1.5rem rgba(59, 55, 53, 0.5);
}

.footer__wrapper{
/*display: flex;
justify-content: space-between; */
}

/*

-- Footer Left --

*/

.footer__left{
    max-width: 60rem;
}

.footer-content{
margin-bottom: 2rem;
}


.footer-content__description{

}

.footer-app{
display: none;
}

.footer-app__link{

}

.footer-app__img{

}

/*

-- Footer Right --

*/

.footer__right{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 2rem;
}

.footer-list{
width: 18rem;
margin-left: 1rem;
margin-bottom: 1rem;
}

.footer-pages{

}

.footer-pages__item{

}

.footer-pages__link{
 color: var(--dark);
    
}

.footer-pages__link:hover{
    text-decoration: underline;
   }


.footer-app--mobile{
    display: block;
}

.footer__copy-right{
    text-align: center;
    font-size: 1.4rem;
    margin-top: 2rem;
}


/*

-- Responsive --

*/


@media (max-width: 380px) {
    .header-content__title{
      font-size: 4rem;
    }
  
    .destinations__title{
      font-size: 2.4rem;
    }
  
    .newsletter__title{
      max-width: 16rem;
  }
  
  .footer{
    text-align: center;
  }
  
  .footer__right{
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  
  .footer-list{
    margin-left: 0;
    width: 100%;
  }
  
  
  }
  
  
  @media (min-width: 576px) {
    .container {
      width: 54rem;
  }
  
  }
  
  @media (min-width: 768px) {
    .container {
      width: 72rem;
  }
    .nav__btn, .nav-menu{
      display: none;
    }
  
    .menu {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
    }
  
    .newsletter{
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      text-align: left;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
  }
  
  .newsletter__content{
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-right: 2rem;
  }
  
  .newsletter__banner{
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
  }
  
  .newsletter::before{
    width: auto;
    height: auto;
    top: -10rem;
    left: -40rem;
    background-size: auto;
    position: center left;
  }
  
  }
  
  @media (min-width: 992px) {
  
    .container {
      width: 96rem;
  }
  
  
      .nav__links{
          display: block;
        }
  
        .header-content__caption{
        max-width: 50rem;
        }
  
        .newsletter__content{
          padding-right: 4rem;
        }
  
        .newsletter__title{
          margin-bottom: 0.5rem;
        }
  
  .footer-app{
    display: block;
  }
  
  .footer-app--mobile{
    display: none;
  }
  
  .footer__wrapper{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    }
  
    .footer__scroll{
    left: auto;
      }
  
      .footer__right{
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    }
  
    .footer-list{
      margin-bottom: 0;
      margin-left: 0;
      }
  
      .footer__right{
        max-width: 50rem;
    }
  
    .newsletter::before{
      top: -10rem;
      left: -30rem;
    }
    
  
      
  }
  
  
  @media (min-width: 1200px) {
  
    .container {
      width: 114rem;
  }
  
    .header{
      min-height: 80rem;
    }
  
    .newsletter{
     -webkit-box-pack: justify;
         -ms-flex-pack: justify;
             justify-content: space-between;
     padding: 3rem 6rem;
    }
  
    .newsletter__content{
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
      width: 60rem;
    }
    
    .newsletter__banner{
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
      width: 42rem;
      width: 40rem;
    }
  }
  
  .footer__wrapper{
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    }
  
    .newsletter::before{
      top: -30rem;
      left: -15rem;
    }
  
  @media (min-width: 1400px) {
    .container {
      width: 137rem;
  }
  }