.footer {
    --navy: #2d6680;
    width: 100vw
}

.footer__waves {
    position: relative;
    margin-bottom: -1px
}

.footer__waves .wave__container {
    display: block
}

.footer__waves .wave__container--1 {
    position: relative;
    z-index: 2
}

.footer__waves .wave__container--1 #wave__mask .wave {
    fill: #fff
}

.footer__waves .wave__container--2 {
    position: absolute;
    left: 0;
    bottom: 10%
}



.footer__waves .wave__container--2 .wave {
    -webkit-animation-duration: 14s;
    animation-duration: 14s;
    animation-direction: reverse;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    fill: #00A7CC
}

.footer__waves .wave {
    -webkit-animation: wave 9s linear;
    animation: wave 9s linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    fill: black
}

.footer__body {
    padding: 2rem;
    color: #fff;
    background: linear-gradient(90deg, #002c66 0%, #2d6680 100%)
}

@media (min-width: 992px) {
    .footer__body {
        padding: clamp(3.5rem, 5vw, 7rem) 3.5rem
    }
}

.footer__body .footer__container {
    margin-left: auto;
    margin-right: auto
}

@media (min-width: 768px) {
    .footer__body .footer__container {
        max-width: 720px
    }
}

@media (min-width: 992px) {
    .footer__body .footer__container {
        max-width: 960px
    }
}

@media (min-width: 1200px) {
    .footer__body .footer__container {
        max-width: 1140px
    }
}

@media (min-width: 1600px) {
    .footer__body .footer__container {
        max-width: 1320px
    }
}

.footer__body .footer__container .footer__grid {
    display: grid;
    grid-template-columns:1fr;
    grid-gap: 3rem
}

@media (min-width: 992px) {
    .footer__body .footer__container .footer__grid {
        grid-template-columns:repeat(12, minmax(0, 1fr));
        grid-gap: 1.75rem
    }
}

.footer__body .footer__container .footer__grid .grid__column:empty {
    display: none
}

.footer__body .footer__container .footer__grid .grid__column--logo {
    display: flex;
    flex-direction: column
}

@media (min-width: 768px) {
    .footer__body .footer__container .footer__grid .grid__column--logo {
        grid-column: span 4
    }
}

@media (min-width: 1200px) {
    .footer__body .footer__container .footer__grid .grid__column--logo {
        grid-column: span 3
    }
}

.footer__body .footer__container .footer__grid .grid__column--logo img {
    width: 75%;
    max-width: 150px;
    height: auto;
    margin-bottom: 1rem
}

.footer__body .footer__container .footer__grid .grid__column--logo a {
    display: inline-flex;
    color: #fff;
    text-decoration: none;
    margin-right: 1rem;
    margin-bottom: 0
}

.footer__body .footer__container .footer__grid .grid__column--logo a:last-child {
    margin-right: 0
}

@media (min-width: 768px) {
    .footer__body .footer__container .footer__grid .grid__column--links {
        grid-column: span 4
    }
}

@media (min-width: 1200px) {
    .footer__body .footer__container .footer__grid .grid__column--links {
        grid-column: span 4;
        grid-column-start: 4;
        grid-column-end: 8
    }
}

.footer__body .footer__container .footer__grid .grid__column--links .menu-footer-container .menu {
    list-style: none;
    padding-left: 0;
    margin: 0;
    display: grid;
    grid-template-columns:1fr 1fr;
    grid-gap: 1rem
}

@media (min-width: 992px) {
    .footer__body .footer__container .footer__grid .grid__column--links .menu-footer-container .menu {
        margin-top: 3rem;
        grid-gap: 1.75rem
    }
}

.footer__body .footer__container .footer__grid .grid__column--links .menu-footer-container .menu a {
    color: #fff;
    text-decoration: none;
    font-weight: 700
}

.footer__body .footer__container .footer__grid .grid__column--form {
    width: 100%
}

@media (min-width: 768px) {
    .footer__body .footer__container .footer__grid .grid__column--form {
        grid-column: span 4
    }
}

@media (min-width: 1200px) {
    .footer__body .footer__container .footer__grid .grid__column--form {
        grid-column: span 3;
        grid-column-start: 10;
        grid-column-end: 13
    }
}

.footer__body .footer__container .footer__grid .grid__column--form .form__select {
    position: relative;
    width: 100%;
    height: 40px;
    margin-bottom: 1rem
}

.footer__body .footer__container .footer__grid .grid__column--form .form__select select {
    width: 100%;
    height: 100%;
    padding: .5rem .5rem .5rem 40px;
    color: #fff;
    background: #002c66;
    border: none;
    border-radius: .25rem;
    -webkit-appearance: none;
    -moz-appearance: none
}

.footer__body .footer__container .footer__grid .grid__column--form .form__select select:focus-visible {
    outline: unset;
    box-shadow: 0 0 0 3px #00A7CC
}

.footer__body .footer__container .footer__grid .grid__column--form .form__select:before {
    content: '\f0ac';
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 300;
    pointer-events: none
}

.footer__body .footer__container .footer__grid .grid__column--form .form__select:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    background-color: #00A7CC;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-size: 35%;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: .25rem;
    pointer-events: none
}

@media (min-width: 992px) {
    .footer__body .footer__container .footer__grid .grid__column--form .form__select {
        margin-top: 3rem
    }
}

.footer__body .footer__container .footer__grid .grid__column--form .footer__subscribe {
    display: block;
    width: 100%;
    padding: 1.3125rem;
    color: #fff;
    text-decoration: none;
    background: #2d6680;
    border: none;
    border-radius: .25rem
}

.footer__body .footer__container .footer__grid .grid__column--form .footer__subscribe:focus-visible {
    outline: unset;
    box-shadow: 0 0 0 3px #00A7CC
}

.footer__body .footer__container .footer__grid .grid__column--form .footer__subscribe p {
    display: flex;
    align-items: center
}

.footer__body .footer__container .footer__grid .grid__column--form .footer__subscribe p:first-child {
    margin-bottom: .5rem
}

@media (min-width: 768px) {
    .footer__body .footer__container .footer__grid .grid__column--statement {
        grid-column: span 12
    }
}

@media (min-width: 992px) {
    .footer__body .footer__container .footer__grid .grid__column--statement {
        padding-top: 1.75rem
    }
}

.footer__body .footer__container .footer__grid .grid__column--statement a {
    color: #fff
}

@-webkit-keyframes wave {
    from {
        transform: translateX(0%)
    }
    to {
        transform: translateX(-100%)
    }
}

@keyframes wave {
    from {
        transform: translateX(0%)
    }
    to {
        transform: translateX(-100%)
    }
}

[data-src], [data-bg] {
    opacity: 0;
    transition: opacity 1s
}

[data-src].loaded, [data-bg].loaded {
    opacity: 1
}

