/*  color : orange : #e67e22    */

/*------------------------------------*/
/* Basic Setup */
/*------------------------------------*/

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    background-color: #fff;
    color: #555;
    font-family: 'Lato', 'Arial', 'sans-serif';
    font-weight: 300;
    font-size: 20px;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

/*----- Pseudo(clearfix) class for clearing classes used for floating */

.clearfix{zoom: 1}
.clearfix:after{
    content: '.';
    clear: both;
    display: block;
    height: 0;
    visibility: hidden;
}

/*------------------------------------*/
/* Reusable Componenets */
/*------------------------------------*/

.row{      /*----Row can be used as to create any container in the web page(every container is defined as row for refactoring)----*/
    max-width: 1140px;
    margin: 0 auto;
}

section{   /*-----For every section of content we use section ------*/
    padding: 80px 0;
}

.box{
    padding: 1%;
    
}

/*----Headings -----*/

h1,
h2,
h3{    
    font-weight: 300;
    text-transform: uppercase;
        
}

h1{   /* We use h1 only once in the web page   */
    margin-top: 0;
    margin-bottom: 20px;
    color: #fff;
    font-size: 240%;
    word-spacing: 4px;
    letter-spacing: 1px;
}

h2{ /* all the rest of the important titles are named as h2*/
    font-size: 180%;
    word-spacing: 2px;
    text-align: center;
    margin-bottom: 30px;
    letter-spacing: 1px;
}

h3{
    font-size: 110%;
    margin-bottom: 15px;
}

h2:after{
    display: block;
    height: 2px;
    background-color: #e67e22;
    content: " ";
    width: 100px;
    margin: 0 auto;
    margin-top: 30px;
}

/*---Paragrahps---*/

.long-copy{
    line-height: 145%;
    width: 70%;
    margin-left: 15%;
    margin-right: 15%;
}

.box p{
    font-size: 95%;
    line-height: 145%;
}

/*------Icons --------*/

.icon-big{    /*----For icons like facebook we use icons-big-----*/
    font-size: 350%;
    display: block;
    color: #e67e22;
    margin-bottom: 10px;
}

.icon-small{    /* ----For the rest of the icons like g+ we use icons-small*/
    display: inline-block;
    width: 30px;
    text-align: center;
    color: #e67e22;
    font-size: 120%;
    margin-right: 10px;
    
    /* ---secrets to align text and icons */    
    line-height: 120%;
    vertical-align: middle;
    margin-top: -5px;
}

/*----Generic Links -----*/

a:link,
a:visited{
    color: #e67e22;
    text-decoration: none;
    padding: 1px;
    border-bottom: 1px solid #e67e22;
    transition: border-bottom 0.2s, color: 0.2s;
}

a:hover,
a:active{
    color: #555;
    border-bottom: 1px solid transparent;
}

/*----Buttons -----*/ /*--- link and visited state is looking at the button while active and hover is when cursor is on the button.---*/

.btn:link,
.btn:visited,
input[type=submit] {
    display: inline-block;
    padding: 10px; 30px;
    font-weight: 300;
    text-decoration: none;
    border-radius: 200px;
    color: #fff;
    transition: background-color 0.2s, border 0.2s, color 0.2s;
}

.btn-full:link,
btn-full:visited,
input[type=submit] {
    background-color: #e67e22;
    border: 1px solid #e67e22;
    color: #fff;
    margin-right: 15px;
}

.btn-ghost:link,
.btn-ghost:visited{
    border: 1px solid #e67e22;
    color: #e67e22;
}

.btn:hover,
.btn:active,
input[type=submit]:hover,
input[type=submit]:active {
    background-color: #cf6d17;
}

.btn-full:hover,
btn-full:active {
    border: 1px solid #cf6d17;
}

.btn-ghost:hover,
.btn-ghost:active{
    border: 1px solid #cf6d17;
    color: #fff;
} 

/*------------------------------------*/
/* Header */
/*------------------------------------*/

header {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.7)), to(rgba(0, 0, 0, 0.7))), url(Images/hero-min.jpg);
    background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url(Images/hero-min.jpg);  /*---- for background images we use linear gradient */
    background-size: cover;
    height: 100vh;
    background-attachment: fixed; /* In order for the image to stay fixed while scrolling we use this effect(Fixed)*/
}

.hero-text-box{
    position: absolute;
    width: 1140px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.logo{
    height: 150px;
    width: auto;
    float: left;
    margin-top: 20px;
    border-radius: 100px;
}

/*Main Nav*/

.main-nav{
    float: right;
    list-style: none;
    margin-top: 55px;
}

.main-nav li{  /*----This is how we call class or element inside the class----*/
    display: inline-block;
    margin-left: 40px;
    
}

.main-nav li a:link,
.main-nav li a:visited{
    padding: 8px 0;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 90%;
    border-bottom: 2px solid transparent; 
    transition: border-bottom 0.2s;
}

.main-nav li a:hover,
.main-nav li a:active{
    border-bottom: 2px solid #e67e22; 
}


/*Mobile Navigation*/

.mobile-nav-icon {
    float: right;
    margin-top: 30px;
    cursor: pointer;
    display: none;
}

.mobile-nav-icon i{
    font-size: 200%;
    color: #fff;
}



/*Sticky Navigation*/
.sticky{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.98);
    box-shadow: 0 2px 2px #efefef;
    z-index: 9999;
}

.sticky .logo{
    display: block;
    height: 50px;
    width: auto;
    float: left;
    margin: 5px 0; 
}

.sticky .main-nav li a:link,
.sticky .main-nav li a:visited{
    padding: 16px 0;
    color: #555;
}

.sticky .main-nav{
    margin-top: 18px;
}
/*-------Features-----*/

.section-features .long-copy{
    margin-bottom: 30px;
}


/*-------Meals-----*/

.section-meals{
    padding: 0;
}

.meals-showcase{
    list-style: none;
    width: 100%;
}

.meals-showcase li{
    display: block;
    float: left;
    width: 25%;
}

.meal-photo{
    width: 100%;
    margin: 0;
    overflow: hidden;
    background-color: #000;
}

.meal-photo img{
    opacity: 0.7;
    width: 100%;
    height: auto;
    transform: scale(1.15);
    transition: transform 0.5s, opacity 0.5s;
}

.meal-photo img:hover{
    opacity: 1;
    transform: scale(1.03);
}

/*------------------------------------*/
/* How it works */
/*------------------------------------*/

.section-steps{
    background-color: #f4f4f4;
}

.steps-box:first-child{   /*----First element or class in the steps-box div will have these properties-----*/
    text-align: right;
    padding-right: 3%;
    margin-top: 30px;
}

.steps-box:last-child{ /*---Last element or class in the steps-box will have these properties---*/
    padding-left: 3%;
    margin-top: 70px;
}

.app-screen{
    width: 40%;
}

.works-step{
    margin-bottom: 50px;
}

.works-step:last-of-type{
    margin-bottom: 80px;
}

.btn-app:link,
btn-app:visited{
    border: 0;
}

.works-step div{
    color: #e67e22;
    border: 2px solid #e67e22;
    display: inline-block;
    border-radius: 50%;
    height: 55px;
    width: 55px;
    text-align: center;
    padding: 5px;
    float: left;
    font-size: 150%;
    margin-right: 25px;
}

.btn-app img{
    height: 50px;
    width: auto;
    margin-right: 10px;
    
}


/*------------------------------------*/
/* Cities */
/*------------------------------------*/


.box img{
    width: 100%;
    height: 200px;
    margin-bottom: 15px;
}

.city-feature{
    margin-bottom: 5px;
}


/*------------------------------------*/
/* Testimonials */
/*------------------------------------*/

.section-testimonials{
    background-image:  linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)), url(Images/back-customers-min.jpg);
    background-size: cover;
    color: #fff;
    background-attachment: fixed;
}

blockquote{
    padding: 2%;
    font-style: italic;
    line-height: 145%;
    position: relative;
    margin-top: 40px;
}

blockquote:before{
    content: "\201C";
    /*-------css-tricks.com-------*/
    font-size: 500%;
    display: block;
    position: absolute;
    /*----When position is absolute parent(blockqoute) should be relative------*/
    top: -5px;
    left: -3px;
}

cite{
    font-size: 90%;
    margin-top: 25px;
    display: block;
}

cite img{
    height: 45px;
    border-radius: 50%;
    margin-right: 10px;
    vertical-align: middle;
}

/*------------------------------------*/
/* Sign-up pricing plans */
/*------------------------------------*/


.section-plans{
    background-color: #f4f4f4;
}

.plan-box{
    background-color: #fff;
    border-radius: 5px;
    width: 90%;
    margin-left: 5%;
    box-shadow: 0 2px 2px #efefef; /*------- box shadow (x-axis y-axis blur color)------*/
}

.plan-box div{
    padding: 15%;
    border-bottom: 1px solid #e8e8e8;   
}

.plan-box div:first-child{
    background-color: #fcfcfc;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    
}

.plan-box div:last-child{
    text-align: center;
    border: 0;
}

.plan-price{
    font-size: 300%;
    margin-bottom: 10px;
    font-weight: 100;
    color: #e67e22;
}

.plan-price span{
    font-size: 30%;
    font-weight: 300;
}
.plan-price-meal{
    font-size: 80%;
}

.plan-box ul{
    list-style: none;
    
}

.plan-box ul li{
    padding: 5px 0;
}

/*------------------------------------*/
/* Contact-Form */
/*------------------------------------*/

.contact-form{
    width: 60%;
    margin: 0 auto; /*-------top right bottom left -------*/
 }

input[type=text],
input[type=email],/*--- for email and name we are using css new selector ----*/
select,
textarea{
    width: 100%;
    padding: 7px;
    border-radius: 3px;
    border: 1px solid #ccc;
}

text-area{
    height: 100px;
}

input[type=checkbox]{
    margin: 10px 5px 10px 0; 
}

*:focus{outline: none;}/* Removing blue layout out of boxes from browser (Psuedo class) */

/*------------------------------------*/
/* Footer */
/*------------------------------------*/

footer{
    background-color: #333;
    padding: 50px;
    font-size: 80%;
}

.footer-nav{
    list-style: none;
    float: left;
}

.social-icons{
    list-style: none;
    float: right;
}

.footer-nav li,
.social-icons li{
    display: inline-block;
    margin-right: 20px;
}

.footer-nav li,
.social-icons li:last-child{
    margin-right: 0;
}

.footer-nav li a:link,
.footer-nav li a:visited,
.social-icons li a:link,
.social-icons li a:visited{
    text-decoration: none;
    border: 0;
    color: #888;
    transition: color 0.2s;
}

.footer-nav li a:hover,
.footer-nav li a:active{
    
    color: #ddd;
}

.social-icons li a:link,
.social-icons li a:visited{
    font-size: 160%;
}

.ion-social-facebook,
.ion-social-twitter,
.ion-social-googleplus,
.ion-social-instagram{
    transition: color 0.2s;
}


.ion-social-facebook:hover{
   color:  #3b5998
}

    
.ion-social-twitter:hover{
    color: #55acee
}

.ion-social-googleplus:hover{
    color: #dd4b39
}

.ion-social-instagram:hover{
    color: #e95950
}

footer p{
    color: #888;
    text-align: center;
    margin-top: 20px;
}

/*------------------------------------*/
/* Animations */
/*------------------------------------*/

.js-wp-1,
.js-wp-2,
.js-wp-3 {
    opacity: 0;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
}

.js-wp-4 {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
}

.js-wp-1.animated,
.js-wp-2.animated,
.js-wp-3.animated {
    opacity: 1;
}