﻿.newsletter-wrapper
{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    padding: var(--stacked-component-lg,48px) var(--container-padding--sm,16px);
}
@media(min-width: 820px)
{
    .newsletter-wrapper
    {
        padding: var(--stacked-component-sm) var(--container-padding-lg);
        flex-direction: row;
        justify-content: center;
        gap: 6.8rem;
    }
}
@media(min-width: 1050px)
{
    .newsletter-wrapper
    {
        padding: var(--container-padding-sm) var(--container-padding-lg);
        justify-content: space-around;
    }
}
@media(min-width: 1280px)
{
    .newsletter-wrapper
    {
        justify-content: center;
    }
}
.newsletter-wrapper:before
{
    content: "";
    position: absolute;
    z-index: -1;
    width: 150%;
    max-width: 80%;
    height: 80%;
    max-height: 450px;
    background: url("../image/footer-newsletter.png") bottom center/contain no-repeat;
    opacity: 20%;
    transform: translateX(50%);
    bottom: 0;
    left: -40%;
}
@media(min-width: 820px)
{
    .newsletter-wrapper:before
    {
        left: -48%;
        width: 180%;
        max-width: 125%;
        height: 100%;
        max-height: 125%;
        transform: translateX(0%);
    }
}
.newsletter-column
{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}
.newsletter-column .paragraph-md
{
    font-size: 1.125rem;
}
.newsletter-column.copy
{
    gap: var(--text-spacing-md);
}
.newsletter-column.email-form
{
    width: 100%;
    gap: calc(var(--text-spacing-xl) + 1rem);
}
@media(min-width: 820px)
{
    .newsletter-column.copy
    {
        max-width: 28.75rem;
        gap: var(--text-spacing-md,16px);
    }
    .newsletter-column.email-form
    {
        width: 32.175rem;
        gap: var(--text-spacing-xl,32px);
    }
}
.newsletter-form-field-wrapper
{
    margin-left: auto;
    margin-right: auto;
}
.newsletter-form-field-wrapper .field
{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 1.25rem;
}
.newsletter-form-field-wrapper .field label
{
    flex-grow: 1;
}
.newsletter-form-field-wrapper .field input
{
    width: 100%;
    min-width: 15rem;
}
@media(min-width: 1050px)
{
    .newsletter-form-field-wrapper .field
    {
        flex-direction: row;
    }
}
.newsletter-heading
{
    margin-bottom: 0;
    font-size: 3rem;
}
@media(min-width: 820px)
{
    .newsletter-heading
    {
        font-size: 3.5rem;
    }
}