* {
    margin: 0;
    padding: 0;
}

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

html {
    box-sizing: border-box;
}

body {
    font-weight: 400;
    line-height: 1.6;
    min-height: 100vh;
    font-family: 'Lato', sans-serif;
    background: linear-gradient(171deg, #efefef, #efefef 13%, #FFF 10%);
    background-size: 111%;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

a,
a:hover,
a:visited {
    text-decoration: none;
    cursor: pointer;
    display: block;
}

section:after,
header:after {
    content: '';
    position: absolute;
    width: calc(100% - 170px);
    bottom: 0;
    left: 85px;
    margin: 0 auto;
    height: 1px;
    border: 0.5px solid gray;
}

.container {
    max-width: 1280px;
    margin: 0 auto;
}

.header {
    background: #efefef;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 131px 20px;
    flex-wrap: wrap;
    color: #42b248;
}

.header__logo {
    flex: 0 0 14%;
    cursor: pointer;
}

.logo {
    width: 100%;
}

.logo img {
    vertical-align: bottom;
}

.main-nav {
    display: flex;
    flex-flow: row;
    justify-content: flex-end;
    align-self: flex-end;
    z-index: 10;
}

.main-nav__link {
    cursor: pointer;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 800;
    color: #42b248;
    transition: all .5s;
}

.main-nav__link:hover {
    color: #062483;
}

.main-nav a:nth-child(2) {
    margin: 0 35px;
}

.content {
    display: flex;
    flex-flow: column;
}

.section-1 {
    position: relative;
    display: flex;
    flex-flow: column;
}

.section-1-info {
    display: flex;
    flex-flow: row;
}

.section-1-message {
    min-width: 655px;
    display: flex;
    position: relative;
    flex-flow: column;
    padding: 100px 00px 00px 120px;
}

.contractor-section-1-message {
    padding: 100px 00px 00px 100px;
    flex: 0 0 56%;
}

.larger-section-1-message {
    min-width: 727px;
}

.section-1-message h1 {
    text-transform: uppercase;
    font-size: 42px;
    line-height: 51px;
    letter-spacing: 0px;
    color: black;
    font-weight: 900;
}

.section-1-message span {
    color: #42b248;
    position: relative;
}

.section-1-message svg {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: visible;
    top: 0;
    left: 0;
}

.section-1-message path {
    stroke: #062483;
    stroke-width: 5px;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
    stroke-dasharray: 1500;
    opacity: 0;
    animation: draw-line 2s linear 1s 1 forwards;
}

.section-1-message p {
    font-size: 20px;
    letter-spacing: 0px;
    color: black;
}

.section-1-message__btn a {
    cursor: pointer;
    text-transform: uppercase;
    display: inline-block;
    padding: 15px 37px;
    font-size: 13px;
    font-weight: 600;
    color: white;
    background: #42b248;
    border-radius: 4%;
    letter-spacing: 2px;
    margin-top: 27px;
    margin-right: 10px;
    box-shadow: 2px 2px 10px #88888884;
    transition: all .5s;
}

.section-1-message__btn a:hover {
    background: #2f7c33;
}

.section-1-message__btn a:nth-child(2) {
    background: white;
    color: #42b248;
}

.section-1-message__btn a:nth-child(2):hover {
    background: #42b248;
    color: white;
}

.section-1-image {
    flex: 0 0 48%;
    position: relative;
    padding: 0px 0px 20px 10px;
    margin-top: 40px;
}

.section-1-description h1 {
    text-align: center;
    color: black;
    font-weight: 900;
    margin-top: 75px;
    letter-spacing: 1px;
}

.section-1-description span {
    color: #42b248;
}

.sub-header {
    text-align: center;
    font-weight: 900;
    margin: 0 auto;
    width: 500px;
}

.description {
    margin: 50px auto 90px;
    padding-left: 30px;
}

.description>p {
    width: 720px;
    margin: 0 auto;
    line-height: 1.5em;
    letter-spacing: 0px;
    display: flex;
    flex-flow: column;
}

.description>ul {
    width: 720px;
    margin: 0 auto;
    line-height: 1.5em;
    letter-spacing: 0px;
    display: flex;
    flex-flow: column;
}

.description>ul>li {
    margin-left: 20px;
}

.description span {
    font-weight: 900;
}

.description a {
    text-decoration: none;
    color: gray;
}

.signature {
    width: 100px;
}

.description a:hover {
    color: #42b248;
}

.description-footer {
    display: flex;
    flex-flow: row;
    width: 720px;
    margin: 60px auto 0;
    align-items: flex-end;
}

.description-footer p {
    flex: 0 0 40%;
    line-height: 31px;
    letter-spacing: 0px;
    display: flex;
    flex-flow: column;
}

.description-footer span {
    letter-spacing: 0px;
}

.logo-container {
    display: flex;
    flex-flow: row;
    align-items: flex-end;
}

.logo-container div {
    margin: 0px 10px;
    max-width: 200px;
}

.logo-container div:nth-child(3) {
    margin: 0px 10px;
    max-width: 80px;
}

.logos-1,
.logos-2,
.logos-3 {
    display: flex;
    justify-content: space-evenly;
}

.logos-2 {
    margin: 50px 0px;
}

.logos-1 div,
.logos-2 div,
.logos-3 div {
    width: 100px;
    height: 50px;
    border: 1px solid red;
}

.section-2 {
    height: 300px;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.hospitality-section-2 {
    justify-content: flex-start;
    height: 233px;
}

.section-2 h1 {
    text-align: center;
    font-weight: 900;
    font-size: 24px;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.hospitality-section-2 h1 {
    margin-top: 50px;
    margin-bottom: 40px;
}

.section-2-logos {
    flex: 0 0 100%;
    display: flex;
    padding: 100px;
}

.section-2-logos {
    padding: 0px;
    flex: unset;
    width: 720px;
    flex-flow: column;
}

.constructor-section-2-logos {
    width: 520px;
}

.section-3 {
    position: relative;
    text-align: center;
}

.section-3>h1 {
    text-transform: uppercase;
    margin-top: 70px;
    font-size: 25px;
    margin: 0 auto;
    width: 45%;
    letter-spacing: 1px;
    font-weight: 900;
    padding-top: 70px;
}

.contractor-section-3>h1 {
    width: 51%;
}

.section-3 span {
    color: #42b248;
}

.section-3-cards {
    padding: 40px 120px 70px;
    display: flex;
    justify-content: center;
    flex-flow: row;
    flex-wrap: wrap;
}

.contractor-section-3-cards {
    padding: 40px 121px 70px;
}

.card {
    margin: 20px;
    width: 220px;
    box-shadow: 2px 2px 10px #88888884;
    overflow: hidden;
}

.card__text h1 {
    padding-top: 5px;
    line-height: 20px;
    font-weight: 900;
    width: 100%;
    font-size: 15px;
    text-transform: uppercase;
}

.card__text p {
    padding: 10px 20px 20px;
    font-size: 12px;
}

.section-4 {
    position: relative;
    display: flex;
    flex-flow: column;
    padding: 100px 0px 20px 0px;
}

.benefit {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    width: 720px;
    margin: 0 auto;
}

.benefit__info {
    flex: 0 0 50%;
    margin-bottom: 54px;
}

.benefit__info h1 {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 15px;
}

.benefit__info p {
    letter-spacing: 0px;
    font-size: 16px;
    line-height: 1.5em;
    width: 90%;
}

.benefit__vid {
    flex: 0 0 50%;
    text-align: center;
}

.section-4 .benefit:nth-child(even) .benefit__info h1 {
    margin-left: 35px;
}

.section-4 .benefit:nth-child(even) .benefit__info p {
    margin-left: auto;
}

.section-4 .benefit:nth-child(4) .benefit__vid {
    flex: 0 0 40%;
}

.benefit__vid video {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    width: 80%;
    padding-bottom: 60px;
}

.section-4 .benefit:nth-child(1) .benefit__vid video {
    padding-bottom: 30px;
}

.section-4 .benefit:nth-child(2) .benefit__vid video {
    margin-top: -10px;
}

.section-4 .benefit:nth-child(3) .benefit__vid video {
    margin-top: -36px;
    padding-bottom: 27px;
}

.benefit__vid--margin-right {
    margin-right: 110px;
}

.benefit__vid--margin-left {
    margin-left: -180px;
}

.benefit__vid--translate {
    transform: translate(-11%, -11%);
}

.section-5 {
    padding: 100px 120px 100px;
    text-align: center;
    position: relative;
}

.section-5 h1 {
    color: #6aab45;
    text-transform: uppercase;
    font-size: 25px;
    letter-spacing: 1px;
}

.section-5 p {
    font-size: 16px;
    letter-spacing: 0px;
}

.section-5-icons {
    display: flex;
    flex-flow: row;
    margin-top: 60px;
    align-content: center;
    justify-content: center;
}

.icon-container {
    flex: 0 0 30%;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
}

.icon-image {
    width: 80px;
}

.icon-truck {
    width: 110px;
}

.icon-text p:first-child {
    font-weight: 900;
}

.icon-text p {
    font-size: 16px;
}

.section-5-buttons {
    display: flex;
    flex-flow: row;
    align-items: center;
    justify-content: center;
    margin-top: 60px;
}

.section-5-btn {
    border: 1px solid #42b248;
    background-color: #42b248;
    border-radius: 4%;
    font-weight: 600;
    padding: 15px 20px;
    cursor: pointer;
    font-size: 14px;
    letter-spacing: 1px;
    text-decoration: none;
    color: white;
    transition: background-color .5s, border-color .5s;
    box-shadow: 2px 2px 10px #88888884;
}

.section-5-btn:hover {
    background-color: #2f7c33;
    border-color: #2f7c33;
}

.project-form-container {
    margin-top: 50px;
    transition: all 1s ease-in;
    height: 0;
    overflow: hidden;
}

.show-form {
    /* height: 700px; */
    height: auto;
}

.project-form {
    display: flex;
    flex-flow: column;
    align-self: flex-start;
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
}

.project-form h3 {
    color: #41b648;
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 25px;
    letter-spacing: 1px;
}

.project-form h4 {
    font-size: 16px;
    letter-spacing: 0px;
    margin-bottom: 10px;
    font-weight: 400;
}

.project-form input {
    height: 40px;
    font-size: 12px;
    margin-right: 1%;
    padding: 6px 12px;
    line-height: 1.42857143;
    color: #555;
    margin-bottom: 10px;
    border: 1px solid #e1e1e1;
    box-shadow: inset 0 1px 1px rgba(0,0,0,0);
}

.company-info {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.company-info input:nth-child(1), .company-info input:nth-child(2){
    flex: 1 0 50%;
}

.company-info input:nth-child(3), .company-info input:nth-child(4){
    flex: 1 0 23%;
}

.project-type {
    display: flex;
    flex-flow: row;
    margin-bottom: 10px;
}

.active {
    background-color: #41b648;
    color: #fff;
}

.project-type div {
    flex: 1 0 18.8%;
    margin-right: 8px;
    padding: 10px 0;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
}

.project-form .submit-form {
    width: 125px;
    padding: 10px;
    margin-bottom: 50px;
    background-color: #41b648;
    color: #fff;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
}

.project-form .submit-form:hover {
    background-color:#2f7c33;
}

.national-accounts {
    display: flex; 
    flex-flow: row;
    flex-wrap: wrap;
}

.national-accounts input {
    flex: 1 0 39%;
}

.file-upload {
    display: flex;
    flex-flow: row;
    flex: 1 0 50%;
    margin-right: 1%;
}

.file-upload input:first-child {
    background: #ccc;
    opacity: 0.5;
    flex: 1 0 66%
}

.file-upload label {
    background-color: #e3e3e3;
    color: #888;
    text-transform: capitalize;
    font-size: 12px;
    text-align: center;
    line-height: 40px;
    flex: 1 0 33%;
    align-self: flex-start;
    cursor: pointer;
}

.replacement {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.replacement input {
    flex: 1 0 30%;
}

.replacement input:nth-child(3) {
    flex: 1 0 99%;
}

.replacement h4 {
    flex: 1 0 99%;
}

.replacement-type {
    display: flex;
    flex-flow: column;
    width: 100%;
    margin-right: 1%;
    margin-bottom: 20px;
}

.lamps, .containers {
    display: flex;
    flex-flow: row;
}

.lamps {
    margin-bottom: 20px;
}

.lamps p {
    margin-left: 88px;
    margin-right: 1%;
}

.containers p {
    margin-right: 1%;
}

.replacement-options {
    width: 170px;
    margin-right: 5px;
    padding: 10px 0;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
    max-width: 158px;
}

.turnkey {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.turnkey input {
    flex: 1 0 99%;
}

.financing {
    display: flex;
    flex-flow: row;
    margin: 10px 0 20px;
}

.financing p {
    margin-right: 30px;
}

.financing-options {
    width: 170px;
    margin-right: 5px;
    padding: 10px 0;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
    max-width: 158px;
}

.energy-efficiency {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.efficiency-options {
    flex: 1 0 99%;
    display: flex;
    flex-flow: row;
    margin-bottom: 20px;
}

.efficiency-options p {
    margin-right: 1%;
}

.efficiency-options:nth-child(2) p {
    margin-right: 1.5%;
}

.efficiency-options div {
    width: 170px;
    margin-right: 5px;
    padding: 10px 0;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
}

.efficiency-options input {
    flex: 1 0 40%;
    height: unset;
    margin-bottom: 0;
}

.disable {
    background: #ccc;
    opacity: 0.5;
    pointer-events: none;
}

.project-info-container {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.project-info-container input {
    flex: 0 0 24%;
}

.project-info-container input:last-child {
    flex: 1 0 99%;
}

.project-info-container p {
    margin-top: 6px;
    margin-right: 20px;
    margin-left: 21px;
    margin-bottom: 1%;
}

.info-options {
    flex: 0 0 18%;
    margin-right: 8px;
    padding: 10px 0;
    border: 1px solid #ddd;
    text-align: center;
    font-size: 12px;
    cursor: pointer;
    margin-bottom: 1%;
}

.client-info-container {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
}

.client-info-container input:first-child {
    flex: 0 0 45%;
}

.client-info-container input:nth-child(2), .client-info-container input:nth-child(3), .client-info-container input:nth-child(5), .client-info-container input:nth-child(6) {
    flex: 0 0 26%;
}

.client-info-container input:nth-child(4) {
    flex: 1 0 99%;
}

.project-form textarea {
    height: 40px;
    font-size: 12px;
    margin-right: 1%;
    padding: 6px 12px;
    line-height: 1.42857143;
    color: #555;
    margin-bottom: 10px;
    border: 1px solid #e1e1e1;
    box-shadow: inset 0 1px 1px rgba(0,0,0,0);
}

.ui-widget.ui-widget-content {
    border: none;
}

.ui-widget-header {
    border: none;
    background: white;
    color: #58595b;
    font-weight: bold;
}

.ui-widget-content {
    border: none;
    background: #fff;
    color: #58595b;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: none;
    background: white;
    font-weight: normal;
    color: #58595b;
    text-align: center;
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    border: none;
    background: #42b248;
    color: white;

}

.ui-icon:hover, .ui-widget-content .ui-icon:hover {
    cursor: pointer;
}

.section-6 {
    position: relative;
}

.section-6-logos {
    width: 88%;
    margin: 0 auto;
    padding: 100px 60px;
}

.footer {
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 80px 120px;
}

.footer__info {
    flex: 0 0 29%;
    letter-spacing: 0px;
}

.footer .footer__info:nth-child(2) {
    flex: 0 0 25%;
}

.footer .footer__info:nth-child(3) {
    flex: 0 0 19%;
}

.footer__info h1 {
    text-transform: uppercase;
    color: #808080;
    font-weight: 900;
    font-size: 14px;
    margin-bottom: 10px;
}

.footer__info p {
    color: #808080;
    font-size: 12px;
    line-height: 1.5em;
    display: block;
}

.footer .footer__info:nth-child(2) p:nth-child(2) {
    line-height: initial;
}

.footer .footer__info:nth-child(2) p:nth-child(3) {
    line-height: 1.5em;
}

.footer .footer__info:nth-child(3) p {
    line-height: 1.5em;
}

.line-height-15 {
    line-height: 17.5px !important;
}

.copyright {
    width: 100%;
    margin-top: 40px;
    letter-spacing: 0px;
    font-size: 10px;
    color: #808080;
}

.hide {
    display: none;
}

.missing-input {
    border-color: red !important;
}

/***********  MEDIA QUERIES ***********/

@media only screen and (max-width: 1560px) {
    body {
        overflow-x: hidden;
    }
}

@media only screen and (max-width: 1280px) {
    body {
        background: none;
    }
    main {
        overflow: hidden;
    }
    .section-1 {
        background: linear-gradient(172deg, #efefef, #efefef 33%, #FFF 20%);
    }
}

@media only screen and (max-width: 1246px) {
    .section-1-message h1 {
        font-size: 43px;
        line-height: 59px;
    }
    .contractor-section-1-message h1 {
        font-size: 42px;
    }
    .section-1-message__btn a {
        margin-top: 35px;
    }
}

@media only screen and (max-width: 1200px) {
    .section-1-message {
        padding: 100px 0px 0px 100px;
    }
    .card__text p {
        font-size: 13px;
    }
}

@media only screen and (max-width: 1100px) {
    .type div:first-child {
        margin-right: 20px;
    }
}

@media only screen and (max-width: 1032px) {
    .project-info-container input {
        flex: 1 0 49%;
    }
    .project-info-container p {
        margin-left: 0px;
    }
}

@media only screen and (max-width: 1024px) {
    .section-1 {
        background: linear-gradient(171deg, #efefef, #efefef 30%, #FFF 20%);
    }
    .section-1-message {
        min-width: 519px;
    }
    .larger-section-1-message {
        min-width: 575px;
    }
    .section-1-message h1 {
        font-size: 32px;
        line-height: 45px;
    }
    .section-1-message__btn a {
        margin-top: 27px;
    }
    .icon-text p {
        letter-spacing: 0px;
    }
    .contact__btn {
        width: 180px;
        margin-top: 6px;
    }
    .contact-container .contact:nth-child(2) .contact__btn {
        width: 210px;
    }
    .contact-container .contact:nth-child(3) .contact__btn {
        margin-top: 13px
    }
    .benefit__info p {
        font-size: 15px;
    }
}

@media only screen and (max-width: 927px) {
    .header {
        padding: 20px 108px 20px;
    }
    .section-1-message {
        min-width: 467px;
        padding: 60px 00px 00px 100px;
    }
    .larger-section-1-message {
        min-width: 467px;
    }
    .section-1-message h1 {
        font-size: 29px;
        line-height: 33px;
        letter-spacing: 1px;
    }
    .contractor-section-1-message h1 {
        font-size: 25px;
    }
    .section-1-message p {
        font-size: 15px;
        letter-spacing: 2px;
    }
    .section-1-message__btn a {
        padding: 9px 16px;
    }
    .section-3>h1 {
        width: 77%;
    }
    .benefit__info h1 {
        font-size: 17px;
    }
    .benefit__info p {
        font-size: 12px;
    }
    .section-5 {
        padding: 100px 60px 100px;
    }
    .contact-container .contact:nth-child(3) .contact__btn {
        margin-top: 16px;
    }
    .contact-container {
        flex-flow: column;
    }
    .calendar {
        width: 100%;
        margin: 0px auto;
        max-width: 380px;
    }
    .contact-type {
        width: 100%;
        margin: 75px auto 30px;
        max-width: 480px;
    }
    .footer {
        padding: 80px 76px;
    }
    .footer__info {
        letter-spacing: 0px;
    }
}

@media only screen and (max-width: 768px) {
    section:after,
    header:after {
        width: calc(100% - 30px);
        left: 15px;
    }
    .container {
        overflow: hidden;
    }
    .header {
        padding: 24px 24px;
    }
    .main-nav__link {
        font-size: 11px;
    }
    .main-nav a:nth-child(2) {
        margin: 0 18px;
    }
    .section-1 {
        background: linear-gradient(170deg, #efefef, #efefef 26%, #FFF 25%);
    }
    .section-1-message {
        min-width: 336px;
        padding: 52px 0px 0px 50px;
        transform: translate(6%, 1%);
    }
    .section-1-message h1 {
        font-size: 21px;
        letter-spacing: 0px;
        line-height: 27px;
    }
    .section-1-message p {
        font-size: 16px;
    }
    .section-1-message__btn a {
        font-size: 11px;
        padding: 9px 17px;
        margin-top: 20px;
        margin-right: 9px;
        font-weight: 900;
    }
    .section-1-logos {
        flex: 0 0 100%;
        display: flex;
        flex-flow: column;
        padding: 100px 50px;
    }
    .section-1-description h1 {
        text-align: center;
        color: black;
        font-weight: 900;
        margin-top: 24px;
        font-size: 21px;
        letter-spacing: 0;
    }
    .logo-container div {
        margin: 0px 10px;
        max-width: 100px;
    }
    .logo-container div:nth-child(3) {
        margin: 0px 10px;
        max-width: 60px;
    }
    .section-2 {
        height: 220px;
    }
    .hospitality-section-2 {
        height: 160px;
    }
    .section-2 h1 {
        font-size: 21px;
        margin-bottom: 20px;
    }
    .hospitality-section-2 h1 {
        margin-top: 30px;
    }
    .section-2-logos {
        padding: 0;
        width: 85%;
        margin: 0 auto;
    }
    .constructor-section-2-logos {
        width: 57%;
    }
    .sub-header {
        width: 400px;
    }
    .description {
        padding-left: 0;
        width: 80%;
        padding: 50px auto 30px;
    }
    .description p,
    .description>ul,
    .description>ul>li {
        width: 100%;
        font-size: 14px;
        line-height: 21px;
        letter-spacing: 1px;
    }
    .section-3>h1 {
        width: 87%;
        font-size: 21px;
    }
    .section-3-cards {
        padding: 40px 25px 70px;
    }
    .card {
        width: 200px;
        margin: 12px;
    }
    .card__text h1 {
        line-height: 17px;
        font-size: 13px;
    }
    .card__text p {
        font-size: 11px;
        line-height: 17px;
        padding: 10px 20px 12px;
    }
    .section-4 {
        padding: 60px 00px 20px 00px;
        width: 100%;
    }
    .benefit {
        flex-flow: column;
        width: auto;
    }
    .section-4 .benefit:nth-child(odd) {
        flex-flow: column-reverse;
        justify-content: flex-end;
    }
    .benefit {
        margin-bottom: 50px;
    }
    .benefit__info {
        width: 84%;
        margin: 0 auto;
    }
    .benefit__info h1 {
        font-size: 22px;
        text-align: center;
    }
    .benefit__info p {
        font-size: 15px;
        width: 100%;
    }
    .section-4 .benefit:nth-child(even) .benefit__info h1 {
        margin-left: 0
    }
    .section-4 .benefit:nth-child(even) .benefit__info p {
        margin-left: 0;
    }
    .benefit__vid {
        width: 50%;
        align-self: center;
    }
    .section-4 .benefit:nth-child(4) .benefit__vid {
        width: 40%;
    }
    .benefit__vid video {
        width: 100%;
        position: relative;
        top: 0%;
        transform: translateY(0%);
        padding-bottom: 0px;
    }
    .benefit__vid--margin-right {
        margin-right: 00px;
    }
    .benefit__vid--margin-left {
        margin-left: 00px;
    }
    .benefit__vid--translate {
        transform: translate(0%, 0%);
        margin-top: 00px;
    }
    .section-5 {
        padding: 60px 20px 70px;
    }
    .section-5-btn {
        font-weight: 900;
    }
    .contact {
        width: 50%;
        margin: 20px auto;
        flex: unset;
    }
    .contact__btn {
        font-size: 10px;
        width: 125px;
    }
    .contact-container .contact:nth-child(2) .contact__btn {
        width: 153px;
    }
    .contact-container .contact:nth-child(3) .contact__btn {
        margin-top: 19px;
    }
    .contact-container .contact:first-child .contact__img {
        width: 30%;
    }
    .contact-container .contact:nth-child(2) .contact__img {
        width: 30%;
        margin: 5px auto 7px;
    }
    .contact-container .contact:nth-child(3) .contact__img {
        width: 30%;
        margin-top: 14px;
    }
    .show-form {
        /* height: 950px; */
    }
    .company-info, .project-type, .national-accounts, .replacement, .lamps, .containers, .turnkey, .financing, .energy-efficiency, .project-info-container, .client-info-container, .efficiency-options {
        flex-flow: column;
    }
    .project-type div, .file-upload, .info-options, .project-form input {
        margin-right: 0;
    }
    .info-options {
        margin-bottom: 10px;
    }
    .lamps, .containers, .financing, .efficiency-options {
        text-align: center;
    }
    .lamps p, .containers p, .financing p, .efficiency-options p, .project-info-container p {
        text-align: center;
        margin: 0;
        margin-bottom: 10px;
    }
    .replacement-options, .financing-options, .efficiency-options div  {
        max-width: unset;
        width: 100%;
    }
    .section-6-logos {
        padding: 50px 0px;
        max-height: 220px;
    }
    .section-6::after {
        width: calc(100% - 30px);
        left: 15px;
    }
    .footer {
        padding: 23px 33px;
    }
    .footer__info {
        padding: 10px 0px;
    }
    .footer__info h1 {
        font-size: 13px;
    }
    .footer__info p {
        line-height: 17px;
        font-size: 9px;
    }
    .footer .footer__info:nth-child(3) p {
        line-height: 17px;
    }
    .copyright {
        font-size: 8px
    }
}

@media only screen and (max-width:650px) {
    .description-footer {
        display: flex;
        flex-flow: column;
        align-items: flex-start;
    }
    .section-1-description h1 {
        font-size: 18px;
        line-height: 25px;
    }
    .section-1-description .sub-header {
        font-size: 12px;
    }
    .logo-container {
        margin-top: 20px;
    }
    .icon-image {
        width: 60px;
    }
    .icon-truck {
        width: 68px;
    }
    .icon-text p {
        font-size: 12px;
    }
    .section-5-icons .icon-container:nth-child(2) {
        margin: 40px 0px;
    }
}

@media only screen and (max-width: 587px) {
    .section-1 {
        background: linear-gradient(170deg, #efefef, #efefef 22%, #FFF 20%);
    }
    .section-1-message {
        padding: 45px 0px 0px 45px;
    }
    .section-1-message p {
        font-size: 11px;
    }
    .section-5-btn {
        font-size: 12px;
    }
    .section-5-icons {
        margin-top: 0px;
    }
    .section-5-buttons {
        margin-top: 0px;
    }
}

@media only screen and (max-width: 480px) {
    .header {
        padding: 10px 16px 10px;
    }
    .header__logo {
        flex: 0 0 17%;
    }
    .main-nav__link {
        font-size: 8px;
    }
    .main-nav a:nth-child(2) {
        margin: 0 10px;
    }
    .main-nav div:nth-child(2) {
        margin: 0 10px;
    }
    .section-1 {
        background: linear-gradient(169deg, #efefef, #efefef 20%, #FFF 17%);
    }
    .section-1-message {
        min-width: 233px;
        padding: 26px 0px 0px 40px;
        transform: translate(0%, 0%);
    }
    .contractor-section-1-message {
        min-width: 247px;
    }
    .section-1-message h1 {
        font-size: 19px;
        letter-spacing: 0px;
        line-height: 21px;
    }
    .hospitality-section-1-message h1 {
        font-size: 17px;
    }
    .contractor-section-1-message h1 {
        font-size: 16px;
    }
    .section-1-message p {
        font-size: 12px;
        letter-spacing: 0px;
    }
    .section-1-message__btn a {
        margin-top: 7px;
        min-width: 122px;
        text-align: center;
        padding: 7px 17px;
    }
    .section-1-message__btn a.contact-cassandra {
        min-width: 177px;
        padding: 7px 0px;
    }
    .section-1-image {
        margin-top: 20px;
    }
    .section-1-logos {
        padding: 50px 20px;
    }
    .section-1-description {
        padding: 0 15px;
    }
    .section-1-description h1 {
        font-size: 16px;
    }
    .description {
        margin: 50px auto 30px;
    }
    .description,
    .description p,
    .description>ul,
    .description>ul>li {
        width: auto;
    }
    .sub-header {
        width: 92%;
    }
    .description p,
    .description>ul,
    .description>ul>li {
        letter-spacing: 0px;
    }
    .section-2 {
        height: 148px;
    }
    .hospitality-section-2 {
        height: 117px;
    }
    .section-2-logos {
        padding: 0px;
        width: 92%;
    }
    .constructor-section-2-logos {
        width: 57%;
        width: 59%;
    }
    .section-2 h1 {
        font-size: 16px;
        letter-spacing: 0;
    }
    .hospitality-section-2 h1 {
        margin-top: 20px;
    }
    .section-3>h1 {
        padding-top: 30px;
        width: 90%;
        font-size: 16px;
        letter-spacing: 0;
    }
    .section-3-cards {
        padding: 40px 00px;
    }
    .card {
        margin: 7px;
        width: unset;
        flex: 0 0 45%;
    }
    .card__text h1 {
        padding: 10px 20px 00px;
        line-height: 15px;
        font-size: 11px;
    }
    .card__text p {
        padding: 10px 10px 20px;
        font-size: 10px;
    }
    .section-4 {
        width: 100%;
    }
    .benefit__info {
        width: 87%;
    }
    .benefit__info h1 {
        font-size: 16px;
        letter-spacing: 0;
    }
    .benefit__info p {
        font-size: 12px;
    }
    .benefit__vid {
        width: 40%;
    }
    .section-4 .benefit:nth-child(1) .benefit__vid video {
        padding-bottom: 0px;
    }
    .section-4 .benefit:nth-child(3) .benefit__vid video {
        margin-top: -36px;
        padding-bottom: 0px;
    }
    .section-5 {
        padding: 30px 20px;
    }
    .section-5-buttons {
        margin-top: 0px;
    }
    .section-5-btn {
        /* min-width: 231px; */
        padding: 7px 0px;
        margin-top: 7px;
        min-width: 174px;
    }
    .section-5-buttons .section-5-btn:first-child {
        margin-right: 0px;
        margin-bottom: 20px;
    }
    .section-5 h1 {
        font-size: 16px;
        letter-spacing: 0;
    }
    .section-5 p {
        font-size: 12px;
        letter-spacing: 0px;
    }
    .icon-image {
        width: 60px;
    }
    .icon-truck {
        width: 68px;
    }
    .icon-text p {
        font-size: 8px;
    }
    .contact-container {
        flex-flow: column;
        margin-top: 30px;
    }
    .contact-type h1 {
        text-align: center;
    }
    .type {
        display: flex;
        flex-flow: column;
        flex-wrap: wrap;
        align-items: center;
    }
    .time {
        flex-flow: row;
        justify-content: center;
    }
    .time-row {
        display: flex;
        margin-bottom: 20px;
        min-width: unset;
        width: auto;
        flex-flow: column;
    }
    .time-row div {
        margin: 10px;
    }
    .section-6-logos {
        padding: 30px 0;
    }
    .footer {
        padding: 20px 31px 20px;
    }
    .footer .footer__info:nth-child(2) {
        flex: 0 0 30%;
    }
    .footer__info a {
        min-height: 17px;
    }
    .copyright {
        margin-top: 0px;
        letter-spacing: 0;
    }
}

@media only screen and (max-width: 389px) {
    .section-1-description h1 {
        font-size: 23px;
        margin-bottom: 10px;
        margin-top: 68px;
    }
    .footer {
        flex-flow: column;
    }
}


@media only screen and (max-width: 343px) {
    /* .show-form {
        height: 1010px
    } */
}

@media only screen and (max-width: 320px) {
    .header {
        padding: 10px 18px 10px;
    }
    .header__logo {
        flex: 0 0 18%;
    }
    .section-1 {
        background: linear-gradient(169deg, #efefef, #efefef 14%, #FFF 13%);
    }
    .section-1-message {
        min-width: 200px;
    }
    .section-1-message h1 {
        font-size: 10px;
        line-height: 13px;
    }
    .section-1-message p {
        letter-spacing: 1px;
        font-size: 9px;
    }
    .section-1-message__btn a {
        font-size: 4px;
        padding: 5px 5px;
        letter-spacing: 1px;
        margin-right: 4px;
    }
    .section-1-message__btn a.contact-cassandra {
        min-width: 122px;
        padding: 5px 5px;
    }
    .section-1-description h1 {
        font-size: 12px;
        margin-top: 24px;
        margin-bottom: 0;
    }
    .section-1-description .sub-header {
        font-size: 11px;
    }
    .description p,
    .description>ul,
    .description>ul>li {
        font-size: 12px;
    }
    .logo-container div {
        margin: 0px 10px;
        max-width: 85px;
    }
    .section-2 {
        height: 166px;
    }
    .hospitality-section-2 {
        height: 125px;
    }
    .section-2 h1 {
        font-size: 12px;
    }
    .hospitality-section-2 h1 {
        margin-top: 35px;
    }
    .section-3>h1 {
        font-size: 12px;
    }
    .contact {
        width: 70%;
    }
    .footer {
        padding: 30px 50px;
    }
}

/******** KEYFRAMES *********/

@keyframes draw-line {
    0% {
        stroke-dasharray: 0 1500;
        opacity: 1;
    }
    20% {
        stroke-dasharray: 800 1500;
        opacity: 1;
    }
    40% {
        stroke-dasharray: 1200 1500;
    }
    60% {
        stroke-dasharray: 1400 1500;
    }
    100% {
        stroke-dasharray: 1500 1500;
        opacity: 1;
    }
}