/* Big tablets to 1200px (width smaller than the 1140px row)*/
@media only screen and (max-width: 1200px) {
    header {
        background-attachment: scroll;
    }
    
    .section-testimonials {
        background-attachment: scroll;
    }
    
    .hero-text-box {
        width: 100%;
        padding: 0 2%;
    }

    .row {
        padding: 0 2%;
    }

    .logo {
        height: 70px;
        margin-left: -10px;
    }

    .main-nav {
        margin-top: 53px;
        font-size: 85%;
        margin-right: 20px;
    }

    .main-nav li {
        margin-left: 15px;
    }
    .works-step:last-of-type {
        margin-bottom: 10px;
    }
    .works-step div {
        margin-bottom: 20px;
    }
}

/* Small tablet to big tablet: from 768 to 1023 pixels*/
@media only screen and (max-width: 1023px) {
    body {
        font-size: 18px;
    }
    section {
        padding: 60px 0;
    }

    .logo {
        height: 60px;
        margin-top: 18px;
    }

    .main-nav {
        margin-top: 45px;
        margin-right: 20px;
    }

    .main-nav li {
        margin-left: 20px;
        font-size: 90%;
    }

    .footer-nav li,
    .social-links li {
        margin-right: 22px;
    }

    .works-step {
        margin-bottom: 35px;
    }

    .works-step:last-of-type {
        margin-bottom: 40px;
    }
    .steps-box:first-child {
        margin-top: 20px;
    }
    .works-step div {
        margin-bottom: 40px;
    }

    .steps-box:last-child {
        margin-top: 20px;
    }
    .steps-box img.app-screen:first-child {
        height: 650px;
        width: auto;
    }

    .long-copy {
        line-height: 145%;
        width: 80%;
        margin-left: 10%;
    }
    .icon-small {
        width: 20px;
        margin-right: 0px;
    }

    .city-feature {
        font-size: 90%;
    }

    h2 {
        margin-bottom: 15px;
    }

    cite {
        margin-bottom: 15px;
    }

    footer p {
        margin-top: 20px;
    }

    .contact-form {
        width: 80%;
    }
}
/* Small phones to small tablets: from 481 to 767 pixels*/
@media only screen and (max-width: 767px) {
    body {
        font-size: 16px;
    }
    section {
        padding: 30px 0;
    }

    .row,
    .hero-text-box {
        padding: 0 4%;
    }

    .col {
        width: 100%;
        margin: 0 0 4% 0;
    }

    .logo {
        height: 50px;
        margin-top: 10px;
    }
    .logo .sticky {
        height: 45px;
        margin-right: 10px;
    }

    .main-nav {
        float: left;
        margin-top: 25px;
        margin-left: 25px;
    }
    .main-nav {
        display: none;
        font-size: 120%;
        margin-left: 70px;
    }

    .sticky .main-nav {
        margin-left: 90px;
    }

    .mobile-nav-icon {
        display: inline-block;
        margin-top: 17px;
    }

    .main-nav li {
        display: block;
    }

    .main-nav li a:link,
    .main-nav li a:visited {
        display: block;
        border: 0;
        padding: 7px 0;
    }
    .long-copy {
        width: 100%;
        margin-left: 0%;
    }

    .sticky .mobile-nav-icon i {
        color: #555;
    }
    .sticky .mobile-nav-icon {
        margin-top: 5px;
    }
    h1 {
        font-size: 180%;
    }

    .icon-small {
        width: 18px;
        margin: none;
    }

    .city-feature div {
        margin-left: none;
        font-size: 65%;
    }

    h2 {
        font-size: 150%;
    }

    blockquote {
        padding: 2%;
        line-height: 115%;
        position: relative;
        margin-top: 40px;
    }
    .steps-box:first-child {
        text-align: center;
    }
    .works-step div {
        height: 40px;
        width: 40px;
        padding: 3px;
        margin-right: 15px;
        margin-bottom: 20px;
        font-size: 120%;
    }
    .steps-box img.app-screen:first-child {
        height: auto;
        width: 60%;
    }

    cite {
        margin-top: 15px;
        margin-bottom: 0px;
    }

    blockquote: {
        margin-top: 15px;
    }

    .social-links {
        text-align: center;
        float: none;
    }

    .footer-nav {
        text-align: center;
        float: none;
    }

    footer p {
        margin-top: 0px;
    }

    .btn:link,
    .btn:visited,
    .section-steps input {
        display: inline-block;
        background-position: center;
        -ms-flex-item-align: center;
        align-self: center;
        float: none;
    }

    .btn-full,
    input[type="submit"] {
        display: inline-block;
        -ms-flex-item-align: center;
        align-self: center;
        float: none;
    }

    .section-form .span-1-of-3 {
        margin: 0;
        font-size: 0;
    }
}

/* Small phones: from 0 to 480 pixels*/
@media only screen and (max-width: 480px) {
    .section {
        padding: 25px 0;
    }
    .contact-form {
        width: 100%;
    }

    .main-nav {
        display: none;
        font-size: 100%;
        margin-left: 30px;
    }

    .sticky .main-nav {
        margin-left: 45px;
    }
}
