/*
 * Global newsletter and footer treatment based on the supplied component
 * references. Typography continues to inherit the theme's Proxima Nova stack.
 */

/* Newsletter */
.newsletter-section {
    padding: 72px 0;
    background: #0d1637;
}

.newsletter-section > .container {
    max-width: 1200px;
}

.newsletter-section .row {
    display: block;
}

.newsletter-section .newsletter-content {
    color: #f8f8fa;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px;
    text-align: center;
}

.newsletter-section .newsletter-content > :first-child {
    margin-top: 0;
}

.newsletter-section .newsletter-content > :last-child {
    margin-bottom: 0;
}

.newsletter-section .newsletter-form {
    text-align: center;
}

.newsletter-section .newsletter-form .gform_wrapper,
.newsletter-section .newsletter-form .hsfc-Form {
    width: 100%;
    margin: 32px auto !important;
}

.newsletter-section .newsletter-form .gform_wrapper form,
.newsletter-section .newsletter-form .hsfc-Form .hsfc-Step__Content {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 !important;
}

.newsletter-section .newsletter-form .gform_wrapper .gform-body,
.newsletter-section .newsletter-form .hsfc-Form .hsfc-Row {
    flex: 0 1 431px;
    width: 100%;
    max-width: 431px;
    margin: 0 !important;
}

.newsletter-section .newsletter-form .gform_wrapper .gform-footer,
.newsletter-section .newsletter-form .hsfc-Form .hsfc-NavigationRow {
    flex: 0 0 130px;
    width: 130px;
    margin: 0 !important;
    padding: 0 !important;
}

.newsletter-section .newsletter-form .ginput_container_email input,
.newsletter-section .newsletter-form .hsfc-EmailField .hsfc-TextInput {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 12px 24px !important;
    border: 0 !important;
    border-radius: 999px !important;
    outline: 0;
    color: #74767d !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 16px !important;
    line-height: 24px !important;
}

.newsletter-section .newsletter-form .ginput_container_email input::placeholder,
.newsletter-section .newsletter-form .hsfc-EmailField .hsfc-TextInput::placeholder {
    color: #b6b9c4 !important;
    opacity: 1;
}

.newsletter-section .newsletter-form .hsfc-EmailField .hsfc-FieldLabel,
.newsletter-section .newsletter-form .hsfc-NavigationRow__Alerts {
    display: none !important;
}

.newsletter-section .newsletter-form .gform_button,
.newsletter-section .newsletter-form .hsfc-NavigationRow__Buttons .hsfc-Button {
    width: 130px !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 12px 32px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    color: #0d1637 !important;
    background: #83e1f6 !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 22px !important;
    text-align: center;
    transform: none !important;
}

.newsletter-section .newsletter-form .gform_button:hover,
.newsletter-section .newsletter-form .gform_button:focus-visible,
.newsletter-section .newsletter-form .hsfc-NavigationRow__Buttons .hsfc-Button:hover,
.newsletter-section .newsletter-form .hsfc-NavigationRow__Buttons .hsfc-Button:focus-visible {
    color: #0d1637 !important;
    background: #fff !important;
    text-decoration: none !important;
}

.newsletter-section .newsletter-form .form-consent,
.newsletter-section .newsletter-form .form-consent p {
    margin: 0;
    color: #f8f8fa;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    text-align: center;
}

.newsletter-section .newsletter-form .form-consent a {
    color: #528d9a;
}

.newsletter-section .newsletter-form .gform_confirmation_message {
    color: #f8f8fa;
    text-align: center;
}

/* Footer */
.site-footer {
    border-top: 0;
    background: #fff;
}

.site-footer .container {
    max-width: 1200px;
    padding-top: 80px;
    padding-bottom: 80px;
}

.site-footer .container .footer-widgets-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-bottom: 36px;
}

.site-footer .footer-widgets-container .footer-column-1 {
    flex: 0 1 auto;
}

.site-footer .footer-widgets-container .footer-column-1 .widget_media_image {
    max-width: 152px;
    margin-bottom: 24px;
}

.site-footer .footer-widgets-container .footer-column-1 .widget_media_image img {
    display: block;
    width: auto;
    max-width: 152px;
    height: auto;
}

.site-footer .footer-widgets-container .footer-column-1 .widget_custom_html .footer-details {
    row-gap: 16px;
    color: #212121;
    font-size: 14px;
    line-height: 21px;
}

.site-footer .footer-widgets-container .footer-column-1 .widget_custom_html .footer-details .contact-info {
    row-gap: 8px;
}

.site-footer .footer-widgets-container .footer-column-1 .widget_custom_html .footer-details .contact-info a {
    color: #528d9a;
}

.site-footer .footer-widgets-container .footer-column-2 {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 72px;
    width: 62.5%;
}

.site-footer .footer-widgets-container .footer-column-2 > .footer-widget {
    min-width: 0;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul {
    row-gap: 12px;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item a,
.site-footer .footer-widgets-container .footer-column-2 .footer-widget-title,
.site-footer .footer-widgets-container .footer-column-2 .footer-widget-title a {
    color: #528d9a;
    font-size: 16px;
    font-style: normal;
    line-height: 24px;
    text-transform: none;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget-title {
    margin: 0 0 12px;
    font-weight: 600;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item.menu-heading a {
    font-weight: 600;
    text-transform: none;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item a {
    font-weight: 400;
}


.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item.menu-heading a:hover {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: 1.5px !important;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item a:hover {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: 1px !important;
    text-underline-offset: auto;
    text-underline-position: from-font;
}


.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item a:hover,
.site-footer .footer-widgets-container .footer-column-2 .footer-widget ul .menu-item a:focus-visible,
.site-footer .site-info .bottom-footer-menu a:hover,
.site-footer .site-info .bottom-footer-menu a:focus-visible {
    color: #528d9a;
    text-decoration: underline;
}

.site-footer .social-icons-container {
    margin-top: 32px;
}

.site-footer .site-info {
    padding-top: 32px;
    border-top: 1px solid #B6B9C4 !important;
    color: #212121;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
}

.site-footer .site-info .bottom-menu .bottom-footer-menu {
    column-gap: 24px;
}

.site-footer .site-info .bottom-menu .bottom-footer-menu a {
    color: #528d9a;
}

@media (max-width: 980px) {
    .site-footer .container .footer-widgets-container {
        flex-direction: column;
        gap: 48px;
    }

    .site-footer .footer-widgets-container .footer-column-2 {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 36px 48px;
        width: 100%;
    }
}

@media (max-width: 640px) {
    .newsletter-section {
        padding: 56px 0;
    }

    .newsletter-section .newsletter-form .gform_wrapper form,
    .newsletter-section .newsletter-form .hsfc-Form .hsfc-Step__Content {
        flex-direction: column;
    }

    .newsletter-section .newsletter-form .gform_wrapper .gform-body,
    .newsletter-section .newsletter-form .hsfc-Form .hsfc-Row,
    .newsletter-section .newsletter-form .gform_wrapper .gform-footer,
    .newsletter-section .newsletter-form .hsfc-Form .hsfc-NavigationRow {
        flex: 0 1 auto;
        width: 100%;
        max-width: 431px;
    }

    .newsletter-section .newsletter-form .gform_button,
    .newsletter-section .newsletter-form .hsfc-NavigationRow__Buttons,
    .newsletter-section .newsletter-form .hsfc-NavigationRow__Buttons .hsfc-Button {
        width: 100% !important;
    }

    .site-footer .container {
        padding-top: 64px;
        padding-bottom: 64px;
    }

    .site-footer .footer-widgets-container .footer-column-2 {
        grid-template-columns: 1fr;
    }
}
