#vaw-contact-hero,
#vaw-contact-hero *{
    box-sizing:border-box;
}

#vaw-contact-hero{
    --vine:#5b1e2d;
    --olive:#6b6f4e;
    --olive-dark:#545a3d;
    --terracotta:#c37a5a;
    --stone:#d8cec2;
    --stone-soft:#e8e0d7;
    --cream:#f6f2ea;
    --paper:#fffdf8;
    --gold:#b89a5a;
    --ink:#302b28;

    --heading:"Cormorant Garamond",Georgia,serif;
    --body:"DM Sans",Arial,sans-serif;

    position:relative;
    left:50%;

    width:100vw;
    max-width:100vw;

    margin-left:-50vw;

    padding:
        clamp(34px,4vw,58px)
        0
        clamp(76px,7vw,104px);

    overflow:hidden;

    background:var(--cream);
    color:var(--ink);

    font-family:var(--body);
}

#vaw-contact-hero a{
    text-decoration:none;
}

#vaw-contact-hero img{
    display:block;
}




#vaw-contact-hero .vaw-ch-wrap{
    width:min(calc(100% - 48px),1460px);

    margin:0 auto;
}




#vaw-contact-hero .vaw-ch-topline{
    display:flex;

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

    gap:30px;

    margin-bottom:18px;
}

#vaw-contact-hero .vaw-ch-eyebrow{
    display:flex;
    align-items:center;

    gap:14px;

    margin:0;

    color:var(--olive);

    font:700 10px/1.2 var(--body);

    letter-spacing:.19em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-eyebrow:before{
    width:44px;
    height:1px;

    flex:0 0 44px;

    background:var(--olive);

    content:"";
}

#vaw-contact-hero .vaw-ch-top-note{
    color:rgba(48,43,40,.52);

    font:600 10px/1.3 var(--body);

    letter-spacing:.10em;
    text-transform:uppercase;
}




#vaw-contact-hero .vaw-ch-main{
    display:grid;

    grid-template-columns:
        minmax(510px,.87fr)
        minmax(620px,1.13fr);

    min-height:650px;

    background:var(--paper);
}




#vaw-contact-hero .vaw-ch-content{
    position:relative;

    display:flex;
    align-items:center;

    padding:
        clamp(45px,5.5vw,72px);

    overflow:hidden;

    background:var(--paper);
}

#vaw-contact-hero .vaw-ch-content:before{
    position:absolute;

    top:0;
    left:0;

    width:3px;
    height:100%;

    background:var(--gold);

    content:"";
}

#vaw-contact-hero .vaw-ch-content:after{
    position:absolute;

    right:-180px;
    bottom:-190px;

    width:390px;
    height:390px;

    border:
        1px solid rgba(107,111,78,.10);

    border-radius:50%;

    content:"";
}

#vaw-contact-hero .vaw-ch-inner{
    position:relative;

    z-index:2;

    width:100%;

    max-width:650px;
}




#vaw-contact-hero .vaw-ch-title{
    max-width:640px;

    margin:0;

    color:var(--vine);

    font:500
        clamp(52px,5vw,74px)
        /.93
        var(--heading);

    letter-spacing:-.043em;

    text-wrap:balance;
}




#vaw-contact-hero .vaw-ch-subtitle{
    max-width:590px;

    margin:20px 0 0;

    color:var(--olive-dark);

    font:500
        clamp(24px,2vw,30px)
        /1.1
        var(--heading);
}




#vaw-contact-hero .vaw-ch-copy{
    max-width:580px;

    margin:16px 0 0;

    color:rgba(48,43,40,.69);

    font:400 16px/1.78 var(--body);
}




#vaw-contact-hero .vaw-ch-details{
    margin-top:30px;

    border-top:
        1px solid rgba(107,111,78,.18);

    border-bottom:
        1px solid rgba(107,111,78,.18);
}

#vaw-contact-hero .vaw-ch-detail{
    display:grid;

    grid-template-columns:
        110px
        minmax(0,1fr);

    gap:18px;

    align-items:start;

    padding:16px 0;
}

#vaw-contact-hero .vaw-ch-detail + .vaw-ch-detail{
    border-top:
        1px solid rgba(107,111,78,.15);
}

#vaw-contact-hero .vaw-ch-detail span{
    color:rgba(107,111,78,.60);

    font:700 9px/1.5 var(--body);

    letter-spacing:.10em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-detail strong,
#vaw-contact-hero .vaw-ch-detail a{
    color:var(--vine);

    font:500
        clamp(20px,1.8vw,25px)
        /1.15
        var(--heading);
}

#vaw-contact-hero .vaw-ch-detail a{
    transition:color .2s ease;
}

#vaw-contact-hero .vaw-ch-detail a:hover{
    color:var(--olive);
}




#vaw-contact-hero .vaw-ch-actions{
    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-top:29px;
}

#vaw-contact-hero .vaw-ch-primary,
#vaw-contact-hero .vaw-ch-secondary{
    display:inline-flex;

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

    min-height:53px;

    padding:15px 21px;

    font:700 10px/1 var(--body);

    letter-spacing:.10em;
    text-transform:uppercase;

    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

#vaw-contact-hero .vaw-ch-primary{
    gap:13px;

    border:1px solid var(--olive);

    background:var(--olive);

    color:var(--cream);
}

#vaw-contact-hero .vaw-ch-primary:after{
    content:"→";

    font-size:17px;
}

#vaw-contact-hero .vaw-ch-primary:hover{
    background:transparent;

    color:var(--olive);

    transform:translateY(-2px);
}

#vaw-contact-hero .vaw-ch-secondary{
    border:
        1px solid rgba(107,111,78,.34);

    color:var(--olive-dark);
}

#vaw-contact-hero .vaw-ch-secondary:hover{
    border-color:var(--olive);

    background:
        rgba(107,111,78,.06);

    transform:translateY(-2px);
}




#vaw-contact-hero .vaw-ch-visual{
    position:relative;

    min-height:650px;

    overflow:hidden;

    background:var(--stone);
}

#vaw-contact-hero .vaw-ch-image{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;

    transition:transform .9s ease;
}

#vaw-contact-hero .vaw-ch-main:hover .vaw-ch-image{
    transform:scale(1.025);
}

#vaw-contact-hero .vaw-ch-visual:after{
    position:absolute;

    inset:0;

    z-index:2;

    background:
        linear-gradient(
            180deg,
            rgba(48,43,40,.02) 25%,
            rgba(48,43,40,.18) 58%,
            rgba(48,43,40,.77) 100%
        );

    content:"";
}

#vaw-contact-hero .vaw-ch-frame{
    position:absolute;

    inset:22px;

    z-index:3;

    border:
        1px solid rgba(246,242,234,.64);

    pointer-events:none;
}




#vaw-contact-hero .vaw-ch-location-badge{
    position:absolute;

    top:36px;
    right:36px;

    z-index:4;

    max-width:200px;

    padding:16px;

    background:rgba(246,242,234,.96);

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}

#vaw-contact-hero .vaw-ch-location-badge span{
    display:block;

    margin-bottom:6px;

    color:var(--olive);

    font:700 9px/1.3 var(--body);

    letter-spacing:.11em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-location-badge strong{
    display:block;

    color:var(--vine);

    font:500 25px/1.04 var(--heading);
}

#vaw-contact-hero .vaw-ch-location-badge small{
    display:block;

    margin-top:6px;

    color:rgba(48,43,40,.59);

    font:500 11px/1.5 var(--body);
}




#vaw-contact-hero .vaw-ch-image-copy{
    position:absolute;

    right:42px;
    bottom:38px;
    left:42px;

    z-index:4;

    max-width:700px;
}

#vaw-contact-hero .vaw-ch-image-copy span{
    display:block;

    margin-bottom:8px;

    color:rgba(246,242,234,.65);

    font:700 10px/1.2 var(--body);

    letter-spacing:.14em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-image-copy strong{
    display:block;

    color:var(--cream);

    font:400
        clamp(39px,3.8vw,55px)
        /.97
        var(--heading);

    letter-spacing:-.027em;
}




#vaw-contact-hero .vaw-ch-hours{
    display:grid;

    grid-template-columns:
        minmax(250px,.68fr)
        minmax(0,1.32fr);

    margin-top:14px;

    background:var(--stone-soft);
}




#vaw-contact-hero .vaw-ch-hours-head{
    padding:30px;

    border-right:
        1px solid rgba(107,111,78,.16);
}

#vaw-contact-hero .vaw-ch-hours-head span{
    display:block;

    margin-bottom:6px;

    color:var(--olive);

    font:700 10px/1.2 var(--body);

    letter-spacing:.11em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-hours-head strong{
    display:block;

    color:var(--vine);

    font:500 31px/1.04 var(--heading);
}




#vaw-contact-hero .vaw-ch-hours-grid{
    display:grid;

    grid-template-columns:
        repeat(4,1fr);
}

#vaw-contact-hero .vaw-ch-hours-item{
    padding:27px 22px;

    border-right:
        1px solid rgba(107,111,78,.16);
}

#vaw-contact-hero .vaw-ch-hours-item:last-child{
    border-right:0;
}

#vaw-contact-hero .vaw-ch-hours-item span{
    display:block;

    margin-bottom:7px;

    color:rgba(107,111,78,.62);

    font:700 9px/1.3 var(--body);

    letter-spacing:.09em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-hours-item strong{
    display:block;

    color:var(--vine);

    font:500 23px/1.05 var(--heading);
}




#vaw-contact-hero .vaw-ch-events{
    display:grid;

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

    align-items:center;

    gap:35px;

    margin-top:14px;

    padding:27px 30px;

    background:var(--olive);
}

#vaw-contact-hero .vaw-ch-events-copy span{
    display:block;

    margin-bottom:5px;

    color:rgba(246,242,234,.56);

    font:700 9px/1.2 var(--body);

    letter-spacing:.10em;
    text-transform:uppercase;
}

#vaw-contact-hero .vaw-ch-events-copy strong{
    display:block;

    color:var(--cream);

    font:500 27px/1.06 var(--heading);
}

#vaw-contact-hero .vaw-ch-events-link{
    display:inline-flex;

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

    min-height:51px;

    padding:15px 20px;

    border:1px solid var(--cream);

    color:var(--cream);

    font:700 10px/1 var(--body);

    letter-spacing:.10em;
    text-transform:uppercase;

    white-space:nowrap;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}

#vaw-contact-hero .vaw-ch-events-link:hover{
    background:var(--cream);

    color:var(--olive);

    transform:translateY(-2px);
}




@media(max-width:1050px){

    #vaw-contact-hero .vaw-ch-main{
        grid-template-columns:1fr;
    }

    #vaw-contact-hero .vaw-ch-visual{
        min-height:560px;
    }

}




@media(max-width:850px){

    #vaw-contact-hero .vaw-ch-hours{
        grid-template-columns:1fr;
    }

    #vaw-contact-hero .vaw-ch-hours-head{
        border-right:0;

        border-bottom:
            1px solid rgba(107,111,78,.16);
    }

    #vaw-contact-hero .vaw-ch-hours-grid{
        grid-template-columns:1fr 1fr;
    }

    #vaw-contact-hero .vaw-ch-hours-item:nth-child(2){
        border-right:0;
    }

    #vaw-contact-hero .vaw-ch-hours-item:nth-child(-n+2){
        border-bottom:
            1px solid rgba(107,111,78,.16);
    }

}




@media(max-width:640px){

    #vaw-contact-hero{
        padding:
            24px
            0
            65px;
    }

    #vaw-contact-hero .vaw-ch-wrap{
        width:calc(100% - 28px);
    }


    

    #vaw-contact-hero .vaw-ch-top-note{
        display:none;
    }


    

    #vaw-contact-hero .vaw-ch-content{
        padding:38px 22px 43px;
    }

    #vaw-contact-hero .vaw-ch-title{
        font-size:
            clamp(44px,12.2vw,57px);
    }

    #vaw-contact-hero .vaw-ch-subtitle{
        font-size:24px;
    }

    #vaw-contact-hero .vaw-ch-copy{
        font-size:15px;

        line-height:1.75;
    }


    

    #vaw-contact-hero .vaw-ch-detail{
        grid-template-columns:1fr;

        gap:4px;
    }


    

    #vaw-contact-hero .vaw-ch-actions{
        display:grid;

        grid-template-columns:1fr;
    }

    #vaw-contact-hero .vaw-ch-primary,
    #vaw-contact-hero .vaw-ch-secondary{
        width:100%;
    }


    

    #vaw-contact-hero .vaw-ch-visual{
        min-height:440px;
    }

    #vaw-contact-hero .vaw-ch-frame{
        inset:13px;
    }

    #vaw-contact-hero .vaw-ch-location-badge{
        top:22px;
        right:22px;

        max-width:170px;
    }

    #vaw-contact-hero .vaw-ch-image-copy{
        right:24px;
        bottom:23px;
        left:24px;
    }

    #vaw-contact-hero .vaw-ch-image-copy strong{
        font-size:32px;
    }


    

    #vaw-contact-hero .vaw-ch-hours-head{
        padding:24px 21px;
    }

    #vaw-contact-hero .vaw-ch-hours-grid{
        grid-template-columns:1fr;
    }

    #vaw-contact-hero .vaw-ch-hours-item{
        padding:18px 21px;

        border-right:0;

        border-bottom:
            1px solid rgba(107,111,78,.16);
    }

    #vaw-contact-hero .vaw-ch-hours-item:last-child{
        border-bottom:0;
    }


    

    #vaw-contact-hero .vaw-ch-events{
        grid-template-columns:1fr;

        gap:20px;

        padding:24px 21px;
    }

    #vaw-contact-hero .vaw-ch-events-link{
        width:100%;
    }

}




@media(prefers-reduced-motion:reduce){

    #vaw-contact-hero *,
    #vaw-contact-hero *:before,
    #vaw-contact-hero *:after{
        transition:none;
    }

}

#vaw-contact-form,
#vaw-contact-form *{
    box-sizing:border-box;
}

#vaw-contact-form{
    --vine:#5b1e2d;
    --olive:#6b6f4e;
    --olive-dark:#545a3d;
    --terracotta:#c37a5a;
    --stone:#d8cec2;
    --stone-soft:#e8e0d7;
    --cream:#f6f2ea;
    --paper:#fffdf8;
    --gold:#b89a5a;
    --ink:#302b28;

    --heading:"Cormorant Garamond",Georgia,serif;
    --body:"DM Sans",Arial,sans-serif;

    position:relative;
    left:50%;

    width:100vw;
    max-width:100vw;

    margin-left:-50vw;

    padding:clamp(82px,8vw,122px) 0;

    overflow:hidden;

    background:var(--paper);
    color:var(--ink);

    font-family:var(--body);
}

#vaw-contact-form a{
    text-decoration:none;
}

#vaw-contact-form input,
#vaw-contact-form select,
#vaw-contact-form textarea,
#vaw-contact-form button{
    font-family:var(--body);
}




#vaw-contact-form .vaw-cf-wrap{
    width:min(calc(100% - 48px),1380px);

    margin:0 auto;
}




#vaw-contact-form .vaw-cf-header{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        minmax(370px,.56fr);

    align-items:end;

    gap:clamp(50px,8vw,115px);

    margin-bottom:48px;
}

#vaw-contact-form .vaw-cf-eyebrow{
    display:flex;
    align-items:center;

    gap:14px;

    margin:0 0 16px;

    color:var(--olive);

    font:700 10px/1.2 var(--body);

    letter-spacing:.20em;
    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-eyebrow:before{
    width:44px;
    height:1px;

    flex:0 0 44px;

    background:var(--olive);

    content:"";
}

#vaw-contact-form .vaw-cf-title{
    max-width:800px;

    margin:0;

    color:var(--vine);

    font:500
        clamp(48px,4.8vw,69px)
        /.95
        var(--heading);

    letter-spacing:-.038em;

    text-wrap:balance;
}

#vaw-contact-form .vaw-cf-intro{
    max-width:590px;

    margin:0;

    color:rgba(48,43,40,.69);

    font:400 16px/1.8 var(--body);
}




#vaw-contact-form .vaw-cf-main{
    display:grid;

    grid-template-columns:
        minmax(650px,1.28fr)
        minmax(330px,.72fr);

    align-items:stretch;

    background:var(--cream);
}




#vaw-contact-form .vaw-cf-form-side{
    padding:
        clamp(38px,5vw,64px);

    border-right:
        1px solid rgba(107,111,78,.17);
}




#vaw-contact-form .vaw-cf-form-head{
    display:grid;

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

    align-items:start;

    gap:30px;

    margin-bottom:32px;

    padding-bottom:28px;

    border-bottom:
        1px solid rgba(107,111,78,.18);
}

#vaw-contact-form .vaw-cf-form-head span{
    display:block;

    margin-bottom:6px;

    color:var(--olive);

    font:700 10px/1.2 var(--body);

    letter-spacing:.11em;
    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-form-head strong{
    display:block;

    max-width:590px;

    color:var(--vine);

    font:500
        clamp(31px,2.8vw,40px)
        /1.04
        var(--heading);
}

#vaw-contact-form .vaw-cf-required{
    padding-top:4px;

    color:rgba(48,43,40,.48);

    font:500 11px/1.4 var(--body);

    white-space:nowrap;
}




#vaw-contact-form .vaw-cf-form{
    margin:0;
}

#vaw-contact-form .vaw-cf-grid{
    display:grid;

    grid-template-columns:1fr 1fr;

    gap:25px 22px;
}

#vaw-contact-form .vaw-cf-field{
    min-width:0;
}

#vaw-contact-form .vaw-cf-field.is-full{
    grid-column:1 / -1;
}




#vaw-contact-form .vaw-cf-field label{
    display:flex;

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

    gap:15px;

    margin:0 0 8px;

    color:var(--vine);

    font:700 10px/1.3 var(--body);

    letter-spacing:.08em;
    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-field label small{
    color:rgba(48,43,40,.42);

    font:500 9px/1.2 var(--body);

    letter-spacing:0;

    text-transform:none;
}




#vaw-contact-form .vaw-cf-field input,
#vaw-contact-form .vaw-cf-field select,
#vaw-contact-form .vaw-cf-field textarea{
    display:block;

    width:100%;

    margin:0;

    border:0;
    border-bottom:
        1px solid rgba(107,111,78,.34);

    border-radius:0;

    outline:none;

    background:transparent;

    color:var(--ink);

    box-shadow:none;

    font:400 15px/1.5 var(--body);

    transition:
        border-color .2s ease,
        background .2s ease;
}

#vaw-contact-form .vaw-cf-field input,
#vaw-contact-form .vaw-cf-field select{
    min-height:53px;

    padding:10px 3px;
}

#vaw-contact-form .vaw-cf-field textarea{
    min-height:150px;

    padding:14px 3px;

    resize:vertical;
}

#vaw-contact-form .vaw-cf-field input::placeholder,
#vaw-contact-form .vaw-cf-field textarea::placeholder{
    color:rgba(48,43,40,.38);

    opacity:1;
}

#vaw-contact-form .vaw-cf-field input:focus,
#vaw-contact-form .vaw-cf-field select:focus,
#vaw-contact-form .vaw-cf-field textarea:focus{
    border-bottom-color:var(--olive);

    background:
        rgba(255,253,248,.42);
}




#vaw-contact-form .vaw-cf-field select{
    appearance:none;
    -webkit-appearance:none;

    cursor:pointer;

    background-image:
        linear-gradient(45deg,transparent 50%,var(--olive) 50%),
        linear-gradient(135deg,var(--olive) 50%,transparent 50%);

    background-position:
        calc(100% - 16px) 23px,
        calc(100% - 11px) 23px;

    background-size:
        5px 5px,
        5px 5px;

    background-repeat:no-repeat;

    padding-right:35px;
}




#vaw-contact-form .vaw-cf-reference{
    margin-top:31px;

    padding:
        24px
        0
        2px;

    border-top:
        1px solid rgba(107,111,78,.18);
}

#vaw-contact-form .vaw-cf-reference-title{
    display:block;

    margin-bottom:13px;

    color:var(--vine);

    font:500 24px/1.05 var(--heading);
}

#vaw-contact-form .vaw-cf-reference-copy{
    display:block;

    margin-bottom:17px;

    color:rgba(48,43,40,.57);

    font:400 12px/1.55 var(--body);
}




#vaw-contact-form .vaw-cf-chips{
    display:flex;

    flex-wrap:wrap;

    gap:7px;
}

#vaw-contact-form .vaw-cf-chip{
    position:relative;
}

#vaw-contact-form .vaw-cf-chip input{
    position:absolute;

    width:1px;
    height:1px;

    opacity:0;

    pointer-events:none;
}

#vaw-contact-form .vaw-cf-chip label{
    display:inline-flex;

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

    min-height:36px;

    margin:0;

    padding:8px 11px;

    border:
        1px solid rgba(107,111,78,.24);

    background:transparent;

    color:var(--olive-dark);

    cursor:pointer;

    font:600 10px/1.2 var(--body);

    letter-spacing:0;

    text-transform:none;

    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease;
}

#vaw-contact-form .vaw-cf-chip input:checked + label{
    border-color:var(--olive);

    background:var(--olive);

    color:var(--cream);
}




#vaw-contact-form .vaw-cf-form-foot{
    display:flex;

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

    gap:30px;

    margin-top:31px;

    padding-top:28px;

    border-top:
        1px solid rgba(107,111,78,.18);
}

#vaw-contact-form .vaw-cf-privacy{
    max-width:500px;

    margin:0;

    color:rgba(48,43,40,.50);

    font:400 11px/1.55 var(--body);
}




#vaw-contact-form .vaw-cf-submit{
    display:inline-flex;

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

    gap:13px;

    min-width:180px;
    min-height:54px;

    padding:16px 23px;

    border:1px solid var(--olive);

    border-radius:0;

    background:var(--olive);

    color:var(--cream);

    cursor:pointer;

    font:700 10px/1 var(--body);

    letter-spacing:.11em;
    text-transform:uppercase;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}

#vaw-contact-form .vaw-cf-submit:after{
    content:"→";

    font-size:18px;
}

#vaw-contact-form .vaw-cf-submit:hover{
    background:transparent;

    color:var(--olive);

    transform:translateY(-2px);
}




#vaw-contact-form .vaw-cf-route{
    position:relative;

    padding:
        clamp(38px,4.5vw,58px)
        clamp(28px,3.5vw,42px);

    overflow:hidden;

    background:var(--stone-soft);
}

#vaw-contact-form .vaw-cf-route:after{
    position:absolute;

    right:-130px;
    bottom:-140px;

    width:310px;
    height:310px;

    border:
        1px solid rgba(107,111,78,.13);

    border-radius:50%;

    content:"";
}

#vaw-contact-form .vaw-cf-route-inner{
    position:relative;

    z-index:2;
}




#vaw-contact-form .vaw-cf-route-label{
    display:block;

    margin-bottom:7px;

    color:var(--olive);

    font:700 10px/1.2 var(--body);

    letter-spacing:.11em;
    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-route h3{
    margin:0;

    max-width:400px;

    color:var(--vine);

    font:500
        clamp(34px,3.1vw,43px)
        /1
        var(--heading);

    letter-spacing:-.025em;
}

#vaw-contact-form .vaw-cf-route-intro{
    max-width:390px;

    margin:15px 0 0;

    color:rgba(48,43,40,.64);

    font:400 14px/1.7 var(--body);
}




#vaw-contact-form .vaw-cf-route-list{
    margin-top:29px;

    border-top:
        1px solid rgba(107,111,78,.19);
}

#vaw-contact-form .vaw-cf-route-item{
    display:block;

    padding:18px 0;

    border-bottom:
        1px solid rgba(107,111,78,.17);

    transition:
        padding-left .2s ease;
}

#vaw-contact-form .vaw-cf-route-item:hover{
    padding-left:5px;
}

#vaw-contact-form .vaw-cf-route-item span{
    display:block;

    margin-bottom:5px;

    color:rgba(107,111,78,.61);

    font:700 9px/1.2 var(--body);

    letter-spacing:.09em;

    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-route-item strong{
    display:flex;

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

    gap:15px;

    color:var(--vine);

    font:500 23px/1.07 var(--heading);
}

#vaw-contact-form .vaw-cf-route-item strong:after{
    content:"→";

    color:var(--olive);

    font:400 17px/1 var(--body);
}




#vaw-contact-form .vaw-cf-direct{
    margin-top:31px;

    padding:24px;

    background:var(--olive);
}

#vaw-contact-form .vaw-cf-direct span{
    display:block;

    margin-bottom:7px;

    color:rgba(246,242,234,.57);

    font:700 9px/1.2 var(--body);

    letter-spacing:.10em;

    text-transform:uppercase;
}

#vaw-contact-form .vaw-cf-direct strong{
    display:block;

    margin-bottom:14px;

    color:var(--cream);

    font:500 27px/1.05 var(--heading);
}

#vaw-contact-form .vaw-cf-direct a{
    display:block;

    width:max-content;
    max-width:100%;

    margin-top:6px;

    color:rgba(246,242,234,.78);

    font:500 13px/1.5 var(--body);

    overflow-wrap:anywhere;
}

#vaw-contact-form .vaw-cf-direct a:hover{
    color:var(--cream);
}




#vaw-contact-form .vaw-cf-tech-note{
    margin-top:14px;

    padding:17px 20px;

    background:var(--stone-soft);

    color:rgba(48,43,40,.54);

    font:400 11px/1.6 var(--body);
}




@media(max-width:980px){

    #vaw-contact-form .vaw-cf-main{
        grid-template-columns:1fr;
    }

    #vaw-contact-form .vaw-cf-form-side{
        border-right:0;

        border-bottom:
            1px solid rgba(107,111,78,.17);
    }

}




@media(max-width:820px){

    #vaw-contact-form .vaw-cf-header{
        grid-template-columns:1fr;

        gap:22px;
    }

}




@media(max-width:640px){

    #vaw-contact-form{
        padding:65px 0;
    }

    #vaw-contact-form .vaw-cf-wrap{
        width:calc(100% - 28px);
    }


    

    #vaw-contact-form .vaw-cf-title{
        font-size:
            clamp(42px,12vw,55px);
    }

    #vaw-contact-form .vaw-cf-intro{
        font-size:15px;

        line-height:1.75;
    }


    

    #vaw-contact-form .vaw-cf-form-side{
        padding:32px 20px 37px;
    }

    #vaw-contact-form .vaw-cf-form-head{
        grid-template-columns:1fr;

        gap:9px;
    }

    #vaw-contact-form .vaw-cf-required{
        padding:0;
    }

    #vaw-contact-form .vaw-cf-grid{
        grid-template-columns:1fr;

        gap:22px;
    }

    #vaw-contact-form .vaw-cf-field.is-full{
        grid-column:auto;
    }


    

    #vaw-contact-form .vaw-cf-form-foot{
        display:block;
    }

    #vaw-contact-form .vaw-cf-submit{
        width:100%;

        margin-top:20px;
    }


    

    #vaw-contact-form .vaw-cf-route{
        padding:33px 21px 38px;
    }

}




@media(prefers-reduced-motion:reduce){

    #vaw-contact-form *,
    #vaw-contact-form *:before,
    #vaw-contact-form *:after{
        transition:none;
    }

}

@media(max-width:700px){
  #vaw-brewery-hero .vaw-bh-grid,
  #vaw-contact-hero .vaw-ch-main,
  #vaw-beer-menu .vaw-menu-hero-grid{min-width:0}
  #vaw-brewery-hero .vaw-bh-content,
  #vaw-contact-hero .vaw-ch-content,
  #vaw-beer-menu .vaw-menu-hero-copy{min-width:0}
  #vaw-contact-form .vaw-cf-grid{grid-template-columns:1fr}
  #vaw-contact-form .vaw-cf-field.is-full{grid-column:auto}
}
@media(max-width:520px){
  #vaw-brewery-hero .vaw-bh-facts,
  #vaw-brewery-hero .vaw-bh-bottom,
  #vaw-contact-hero .vaw-ch-hours-grid{grid-template-columns:1fr}
  #vaw-brewery-hero .vaw-bh-fact + .vaw-bh-fact,
  #vaw-contact-hero .vaw-ch-hours-item{border-left:0;border-right:0;border-top:1px solid rgba(107,111,78,.16)}
  #vaw-brewery-hero .vaw-bh-actions,
  #vaw-contact-hero .vaw-ch-actions,
  #vaw-beer-menu .vaw-menu-hero-actions{display:grid;grid-template-columns:1fr}
  #vaw-brewery-hero .vaw-bh-primary,
  #vaw-brewery-hero .vaw-bh-secondary,
  #vaw-contact-hero .vaw-ch-primary,
  #vaw-contact-hero .vaw-ch-secondary,
  #vaw-beer-menu .vaw-menu-btn{width:100%}
  #vaw-contact-form .vaw-cf-chips{grid-template-columns:1fr}
}
.va3p-form-status{margin-top:16px;font:600 13px/1.5 "DM Sans",Arial,sans-serif}
.va3p-form-status.is-success{color:#545a3d}
.va3p-form-status.is-error{color:#8b2d2d}

/* Gravity Forms integration */
#vaw-contact-form .va3p-contact-gravity{width:100%!important}
#vaw-contact-form .va3p-contact-gravity .vaw-gf-shell{width:100%!important}
