/*=========================================================
HOME - CONTACT / MAILING LIST
=========================================================*/

.home_contact
{
    position:relative;

    width:100%;

    padding:var(--space_3xl) 0;

    background:var(--aob-ivory);

    border-bottom:1px solid var(--aob-gold);
}


/*=========================================================
CONTAINER
=========================================================*/

.home_contact_container
{
    width:min(100% - 2rem,82rem);
}


/*=========================================================
LAYOUT
=========================================================*/

.home_contact_layout
{
    display:grid;

    grid-template-columns:1fr;

    gap:var(--space_2xl);
}


/*=========================================================
MAILING LIST
=========================================================*/

.home_contact_signup
{
    width:100%;

    text-align:center;
}

.home_contact_header
{
    width:100%;
}

.home_contact_header .section_eyebrow
{
    color:var(--aob-champagne-gold);
}

.home_contact_header .section_divider_line
{
    background:rgba(184,138,79,0.72);
}

.home_contact_header .section_divider_heart
{
    color:var(--aob-champagne-gold);
}


/*=========================================================
TITLE
=========================================================*/

.home_contact_signup h2
{
    margin:0;

    color:var(--aob-black);

    font-weight:400;
    text-align:center;
}

.home_contact_title_main
{
    display:block;

    font-family:var(--font_display);
    font-size:clamp(2.9rem,12vw,4.75rem);
    font-weight:500;
    letter-spacing:-0.025em;
    line-height:0.9;
    text-transform:uppercase;
}

.home_contact_title_script
{
    display:block;

    margin-top:0.05em;

    color:var(--aob-champagne-gold);

    font-family:var(--font_script);
    font-size:clamp(3.8rem,16vw,6rem);
    font-weight:400;
    line-height:0.82;
}


/*=========================================================
INTRO
=========================================================*/

.home_contact_intro
{
    max-width:36rem;

    margin:1.75rem auto 0;

    color:var(--aob-text);

    font-size: 14px;
    line-height: 1.6;
}


/*=========================================================
FORM
=========================================================*/

.home_contact_form
{
    display:grid;

    width:100%;
    max-width:36rem;

    margin:2rem auto 0;

    gap:0.9rem;
}


/*=========================================================
FORM FIELDS
=========================================================*/

.home_contact_field
{
    position:relative;

    width:100%;
}

.home_contact_field label
{
    position:absolute;

    width:1px;
    height:1px;

    padding:0;
    margin:-1px;

    overflow:hidden;

    clip:rect(0,0,0,0);

    white-space:nowrap;

    border:0;
}

.home_contact_field input
{
    display:block;

    width:100%;
    min-height:3.75rem;

    padding:0.9rem 1rem;

    background:rgba(255,255,255,0.24);

    border:1px solid var(--aob-gold);

    border-radius:0;

    color:var(--aob-black);

    font-family:var(--font_body);
    font-size:0.95rem;
    line-height:1.4;

    outline:none;

    transition:
        border-color 180ms ease,
        background-color 180ms ease,
        box-shadow 180ms ease;
}

.home_contact_field input::placeholder
{
    color:rgba(23,20,17,0.62);
}

.home_contact_field input:focus
{
    background:rgba(255,255,255,0.48);

    border-color:var(--aob-champagne-gold);

    box-shadow:0 0 0 2px rgba(184,138,79,0.12);
}


/*=========================================================
SUBMIT BUTTON
=========================================================*/

.home_contact_submit
{
    width:100%;

    min-height:3.75rem;

    margin-top:0.1rem;
}


/*=========================================================
PRIVACY
=========================================================*/

.home_contact_privacy
{
    margin:0.8rem auto 0;

    color:var(--aob-text-soft);

    font-size:0.78rem;
    line-height:1.5;
}


/*=========================================================
COLUMN DIVIDER - MOBILE
=========================================================*/

.home_contact_column_divider
{
    display:flex;

    width:min(100%,16rem);

    margin:0 auto;

    align-items:center;
    justify-content:center;

    gap:0.75rem;
}

.home_contact_column_divider span:first-child,
.home_contact_column_divider span:last-child
{
    display:block;

    height:1px;

    flex:1 1 auto;

    background:var(--aob-gold);
}

.home_contact_column_divider span:nth-child(2)
{
    color:var(--aob-champagne-gold);

    font-family:var(--font_display);
    font-size:1rem;
    line-height:1;
}


/*=========================================================
MESSAGE SIDE
=========================================================*/

.home_contact_message
{
    display:flex;

    width:100%;

    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;
}

.home_contact_message_eyebrow
{
    margin:0 0 1rem;

    color:var(--aob-champagne-gold);

    font-size:0.72rem;
    font-weight:700;
    letter-spacing:0.26em;
    line-height:1.4;
    text-transform:uppercase;
}

.home_contact_message h3
{
    margin:0;

    color:var(--aob-black);

    font-weight:400;
}

.home_contact_message_main
{
    display:block;

    font-family:var(--font_display);
    font-size:clamp(3rem,13vw,5rem);
    font-weight:500;
    letter-spacing:-0.025em;
    line-height:0.9;
}

.home_contact_message_script
{
    display:block;

    margin-top:0.05em;

    color:var(--aob-champagne-gold);

    font-family:var(--font_script);
    font-size:clamp(3.8rem,16vw,5.75rem);
    font-weight:400;
    line-height:0.75;
}


/*=========================================================
MESSAGE DIVIDER
=========================================================*/

.home_contact_message_divider
{
    display:flex;

    width:min(100%,15rem);

    margin:1.3rem auto 1.4rem;

    align-items:center;
    justify-content:center;

    gap:0.75rem;
}

.home_contact_message_divider span:first-child,
.home_contact_message_divider span:last-child
{
    display:block;

    height:1px;

    flex:1 1 auto;

    background:var(--aob-gold);
}

.home_contact_message_divider span:nth-child(2)
{
    color:var(--aob-champagne-gold);

    font-size:1.05rem;
    line-height:1;
}


/*=========================================================
MESSAGE COPY
=========================================================*/

.home_contact_message_copy
{
    max-width:34rem;

    margin:0 auto;

    color:var(--aob-text);

    font-size: 14px;
    line-height: 1.6;
}


/*=========================================================
MESSAGE BUTTON
=========================================================*/

.home_contact_message_button
{
    min-width:16rem;

    margin-top:1.75rem;

    color:var(--aob-champagne-gold);

    border-color:var(--aob-champagne-gold);
}

.home_contact_message_button:hover,
.home_contact_message_button:focus-visible
{
    background:var(--aob-gold);
    border-color:var(--aob-champagne-gold);

    color:var(--aob-black);
}


/*=========================================================
TABLET
=========================================================*/

@media (min-width:48rem)
{
    .home_contact
    {
        padding:var(--space_4xl) 0;
    }

    .home_contact_container
    {
        width:min(100% - 4rem,82rem);
    }

    .home_contact_layout
    {
        gap:var(--space_3xl);
    }

    .home_contact_intro,
    .home_contact_message_copy
    {
        font-size:1.05rem;
    }
}


/*=========================================================
DESKTOP
=========================================================*/

@media (min-width:68rem)
{
    .home_contact_container
    {
        width:min(100% - 6rem,88rem);
    }

    .home_contact_layout
    {
        grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);

        gap:clamp(3rem,5vw,5rem);

        align-items:stretch;
    }


    /*=====================================================
    LEFT
    =====================================================*/

    .home_contact_signup
    {
        display:flex;

        flex-direction:column;
        justify-content:center;
    }

    .home_contact_title_main
    {
        font-size:4.7rem;
    }

    .home_contact_title_script
    {
        font-size:6rem;
    }


    /*=====================================================
    VERTICAL DIVIDER
    =====================================================*/

    .home_contact_column_divider
    {
        display:flex;

        width:1px;
        min-height:31rem;

        margin:auto 0;

        flex-direction:column;

        gap:0.8rem;
    }

    .home_contact_column_divider span:first-child,
    .home_contact_column_divider span:last-child
    {
        width:1px;
        height:auto;

        flex:1 1 auto;

        background:var(--aob-gold);
    }

    .home_contact_column_divider span:nth-child(2)
    {
        flex:0 0 auto;
    }


    /*=====================================================
    RIGHT
    =====================================================*/

    .home_contact_message
    {
        padding:1rem 0;
    }

    .home_contact_message_main
    {
        font-size:5rem;
    }

    .home_contact_message_script
    {
        font-size:5.75rem;
    }
}


/*=========================================================
LARGE DESKTOP
=========================================================*/

@media (min-width:90rem)
{
    .home_contact_container
    {
        width:min(100% - 8rem,94rem);
    }

    .home_contact_title_main
    {
        font-size:5rem;
    }

    .home_contact_title_script
    {
        font-size:6.4rem;
    }

    .home_contact_message_main
    {
        font-size:5.25rem;
    }

    .home_contact_message_script
    {
        font-size:6.1rem;
    }
}


/*=========================================================
SMALL MOBILE
=========================================================*/

@media (max-width:29.99rem)
{
    .home_contact
    {
        padding:var(--space_2xl) 0;
    }

    .home_contact_container
    {
        width:min(100% - 1.25rem,82rem);
    }

    .home_contact_layout
    {
        gap:var(--space_xl);
    }

    .home_contact_title_main
    {
        font-size:clamp(2.6rem,13vw,3.4rem);
    }

    .home_contact_title_script
    {
        font-size:clamp(3.3rem,17vw,4.2rem);
    }

    .home_contact_message_main
    {
        font-size:clamp(2.75rem,14vw,3.6rem);
    }

    .home_contact_message_script
    {
        font-size:clamp(3.4rem,17vw,4.3rem);
    }

    .home_contact_submit,
    .home_contact_message_button
    {
        width:100%;
        min-width:0;
    }
}


/*=========================================================
REDUCED MOTION
=========================================================*/

@media (prefers-reduced-motion:reduce)
{
    .home_contact_field input,
    .home_contact_submit,
    .home_contact_message_button
    {
        transition:none;
    }
}