footer {
    font-size: 16px;
    font-family: Lato, sans-serif;
}

footer p {
    font-size: 1.125em;
    line-height: 34px;
    font-weight: 300;
    margin-bottom: 16px;
    padding: 0;
}
.c-footer {
    position: relative;
    transition: all .3s ease-in-out;
}
.bg-blue-gray {
    background-color: #23283C;
}

.bg-dark {
    background-color: #16182C !important;
}

.pb-25, .py-25 {
    padding-bottom: 2.5em !important;
}
.pt-25, .py-25 {
    padding-top: 2.5em !important;
}

.mt-25, .my-25 {
    margin-top: 2.5em !important;
}

.c-footer__title {
    text-transform: uppercase;
    font: 700 1.125em/3em Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #fff;
    margin-bottom: 7.5px;
}

.c-footer-menu {
    padding: 0;
    margin: 0;
}

.c-footer-menu li {
    list-style-type: none;
}

.c-footer-menu a {
    display: block;
    font-size: 0.9375em;
    line-height: 2.4em;
    color: #fff;
    transition: all .3s ease-in-out;
}

.c-footer-menu a:hover {
    color: #FF7629;
    text-decoration: none;
}

.pr-10, .px-10 {
    padding-right: 1em !important;
    font-size: inherit;
}

.c-footer-social-media .c-footer-social-media-icon svg {
    height: 34px;
    width: 34px;
}

.c-footer-social-media .c-footer-social-media-icon:hover {
    -webkit-filter: invert(32%) sepia(49%) saturate(5239%) hue-rotate(340deg) brightness(99%) contrast(104%);
    filter: invert(32%) sepia(49%) saturate(5239%) hue-rotate(340deg) brightness(99%) contrast(104%);
}

.c-footer-legal__copyright {
    opacity: .8;
    color: white;
    font-size: 1em;
    line-height: 1.625em;
}

.c-footer-legal__menu ul {
    margin-bottom: 0;
}

.c-footer-legal__menu ul li {
    list-style-type: none;
}

.c-footer-legal__menu a {
    text-decoration: underline;
    font-size: 1em;
    line-height: 1.625em;
    font-weight: 400;
    color: #fff;
    transition: all .3s ease-in-out;
}

.c-footer-legal__menu a:hover {
    color: #FF7629;
}

footer .subscribe-form {
    position: relative;
    display: flex;
    flex-flow: wrap;
}
footer .subscribe-form div:first-child {
    flex: 1 100%;
    display: flex;
}

footer .subscribe-form .subscribe-error-container {
    height: 30px;
    display: block;
    flex: 1 100%;
}

footer .subscribe-form .subscribe-error {
    position: absolute;
    color: rgba(220, 53, 69, 0.7);
    font: 14px/30px Lato;
}

footer .subscribe-success {
    box-sizing: border-box;
    height: 50px;
    width: 100%;
    padding: 0.75em 1.25rem;
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
    border-radius: 0.25em;
    font: 400 1em/1.5em Lato;
    margin-bottom: 30px;
}

footer .subscribe-input {
    box-sizing: border-box;;
    height: 50px;
    border: 1px solid rgba(255,255,255,0.28);
    background-color: rgba(255,255,255,0.09);
    padding: 13px 0 15px 18px;
    color: #fff;
    font: 16px Lato;
    min-width: 0;
    width: 100%;
    margin-right: 1em;
}

footer .subscribe-button {
    border-radius: 27px;
    border: 0;
    margin: 0;
    padding: .725em 1.5em .825em;
    background-color: #FF7629;
    color: #fff;
    font: bold 1em Lato;
    cursor: pointer;
    transition: background-color 0.15s ease-in-out;
}

footer .subscribe-input::placeholder {
    height: 26px;
    opacity: 0.5;
    color: #FFFFFF;
    font: italic 16px Lato;
}

.mt-30, .my-30 {
    margin-top: 3em !important;
}

@media (min-width: 768px) {
    .pb-md-50, .py-md-50 {
        padding-bottom: 5em !important;
    }

    .pt-md-50, .py-md-50 {
        padding-top: 5em !important;
    }

    .mt-md-0, .my-md-0 {
        margin-top: 0 !important;
    }
}

@media (min-width: 991.98px) {
    .mt-lg-0, .my-lg-0 {
        margin-top: 0 !important;
    }
}