/* ============================================================
   AVYENTRA CONTACT & DROP RESUME — V1.1
   Navy + Gold corporate style
   ============================================================ */

.avx-contact-page{
    --navy:#061F35;
    --navy2:#082B43;
    --gold:#C79A3B;
    --gold2:#D8B15A;
    --off:#F8F6F1;
    --white:#FFFFFF;
    --text:#162432;
    --muted:#5C6871;
    --line:#DDD8CE;

    width:100vw!important;
    max-width:100vw!important;
    position:relative!important;
    left:50%!important;
    margin-left:-50vw!important;
    margin-top:0!important;
    margin-right:0!important;
    margin-bottom:0!important;
    padding:0!important;
    overflow:hidden!important;

    background:var(--off)!important;
    color:var(--text)!important;
    font-family:inherit!important;
}

.avx-contact-page *,
.avx-contact-page *::before,
.avx-contact-page *::after{
    box-sizing:border-box!important;
}

/* ============================================================
   TOP BRAND BAND
   ============================================================ */

.avx-contact-page::before{
    content:"";
    display:block;
    width:100%;
    height:6px;
    background:var(--gold);
}

/* ============================================================
   MAIN WRAPPER
   ============================================================ */

.avx-contact-wrap{
    width:min(1320px,calc(100% - 100px))!important;
    max-width:1320px!important;
    margin:0 auto!important;
    padding:70px 0 76px!important;

    display:grid!important;
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
    gap:80px!important;
    align-items:start!important;
}

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

.avx-contact-intro{
    padding:14px 0 0!important;
}

.avx-eyebrow{
    display:block!important;
    margin:0 0 14px!important;

    color:var(--gold)!important;
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:800!important;
    letter-spacing:2px!important;
    text-transform:uppercase!important;
}

.avx-contact-intro h1{
    margin:0!important;
    padding:0!important;

    color:var(--navy)!important;

    font-family:Georgia,"Times New Roman",serif!important;
    font-size:clamp(50px,5vw,72px)!important;
    line-height:.94!important;
    font-weight:500!important;
    letter-spacing:-2.8px!important;
}

.avx-contact-intro h1 span{
    display:block!important;
    color:var(--navy)!important;
}

.avx-lead{
    max-width:520px!important;
    margin:26px 0 35px!important;
    padding:0!important;

    color:#53616B!important;
    font-size:15px!important;
    line-height:1.72!important;
}

/* ============================================================
   DETAILS
   ============================================================ */

.avx-contact-details{
    display:flex!important;
    flex-direction:column!important;
    gap:15px!important;
    margin:0!important;
    padding:0!important;
}

.avx-detail{
    display:flex!important;
    align-items:center!important;
    gap:14px!important;

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

    color:inherit!important;
    text-decoration:none!important;
}

.avx-detail-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    flex:0 0 43px!important;
    width:43px!important;
    height:43px!important;

    border:1px solid rgba(199,154,59,.65)!important;
    border-radius:50%!important;

    background:rgba(199,154,59,.07)!important;
    color:var(--gold)!important;
}

.avx-detail-icon svg{
    display:block!important;
    width:19px!important;
    height:19px!important;

    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}

.avx-detail > span:last-child{
    display:flex!important;
    flex-direction:column!important;
    gap:3px!important;
}

.avx-detail small{
    color:#7A8389!important;
    font-size:10px!important;
    line-height:1.2!important;
    font-weight:700!important;
    letter-spacing:1px!important;
    text-transform:uppercase!important;
}

.avx-detail strong{
    color:var(--navy)!important;
    font-size:14px!important;
    line-height:1.35!important;
    font-weight:600!important;
}

.avx-detail:hover strong{
    color:var(--gold)!important;
}

.avx-detail-static{
    cursor:default!important;
}

.avx-detail-static:hover strong{
    color:var(--navy)!important;
}

/* ============================================================
   NOTE
   ============================================================ */

.avx-contact-note{
    max-width:520px!important;
    margin-top:34px!important;
    padding:17px 19px!important;

    border-left:3px solid var(--gold)!important;
    background:rgba(199,154,59,.07)!important;
}

.avx-contact-note strong{
    display:block!important;
    margin:0 0 5px!important;
    color:var(--navy)!important;
    font-size:13px!important;
    line-height:1.3!important;
    font-weight:800!important;
}

.avx-contact-note p{
    margin:0!important;
    color:var(--muted)!important;
    font-size:12px!important;
    line-height:1.55!important;
}

/* ============================================================
   FORM CARD — NAVY HEADER
   ============================================================ */

.avx-contact-card{
    width:100%!important;
    margin:0!important;
    padding:0!important;

    overflow:hidden!important;

    background:#fff!important;
    border:1px solid #E4DED2!important;

    box-shadow:0 18px 50px rgba(6,31,53,.09)!important;
}

.avx-card-heading{
    position:relative!important;

    margin:0!important;
    padding:30px 34px 27px!important;

    background:
        radial-gradient(
            circle at 90% 0%,
            rgba(199,154,59,.15),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            var(--navy),
            var(--navy2)
        )!important;

    color:#fff!important;
}

.avx-card-heading::after{
    content:"";
    position:absolute;
    left:34px;
    bottom:0;
    width:55px;
    height:3px;
    background:var(--gold);
}

.avx-card-kicker{
    display:block!important;
    margin:0 0 8px!important;

    color:var(--gold2)!important;

    font-size:10px!important;
    line-height:1.2!important;
    font-weight:800!important;
    letter-spacing:1.8px!important;
    text-transform:uppercase!important;
}

.avx-card-heading h2{
    margin:0 0 8px!important;
    padding:0!important;

    color:#fff!important;

    font-family:Georgia,"Times New Roman",serif!important;
    font-size:34px!important;
    line-height:1.04!important;
    font-weight:500!important;
    letter-spacing:-1px!important;
}

.avx-card-heading p{
    max-width:560px!important;
    margin:0!important;
    padding:0!important;

    color:rgba(255,255,255,.78)!important;
    font-size:13px!important;
    line-height:1.55!important;
}

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

.avx-contact-form{
    width:100%!important;
    margin:0!important;
    padding:30px 34px 34px!important;
}

.avx-form-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
}

.avx-field{
    min-width:0!important;
    margin:0!important;
    padding:0!important;
}

.avx-field label{
    display:block!important;
    margin:0 0 7px!important;

    color:var(--navy)!important;
    font-size:11px!important;
    line-height:1.3!important;
    font-weight:800!important;
}

.avx-field label span{
    color:var(--gold)!important;
}

.avx-field input,
.avx-field select,
.avx-field textarea{
    display:block!important;
    width:100%!important;

    margin:0!important;
    padding:11px 13px!important;

    border:1px solid #D9D4CA!important;
    border-radius:0!important;

    background:#fff!important;
    color:var(--text)!important;

    outline:none!important;
    box-shadow:none!important;

    font-family:inherit!important;
    font-size:13px!important;
    line-height:1.45!important;

    transition:border-color .2s ease,box-shadow .2s ease!important;
}

.avx-field input,
.avx-field select{
    height:44px!important;
}

.avx-field textarea{
    min-height:112px!important;
    resize:vertical!important;
}

.avx-field input::placeholder,
.avx-field textarea::placeholder{
    color:#949BA0!important;
}

.avx-field input:focus,
.avx-field select:focus,
.avx-field textarea:focus{
    border-color:var(--gold)!important;
    box-shadow:0 0 0 2px rgba(199,154,59,.10)!important;
}

.avx-message-field{
    margin-top:18px!important;
}

/* ============================================================
   RESUME BOX
   ============================================================ */

.avx-resume-box{
    position:relative!important;

    display:flex!important;
    align-items:center!important;
    gap:13px!important;

    margin-top:19px!important;
    padding:14px 15px!important;

    border:1px dashed #D4CBBE!important;
    background:var(--off)!important;
}

.avx-resume-box-primary{
    border-color:rgba(199,154,59,.65)!important;
    background:linear-gradient(135deg,rgba(199,154,59,.08),rgba(248,246,241,.9))!important;
}

.avx-resume-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    flex:0 0 39px!important;
    width:39px!important;
    height:39px!important;

    color:var(--gold)!important;
}

.avx-resume-icon svg{
    width:29px!important;
    height:29px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}

.avx-resume-copy{
    min-width:0!important;
    flex:1 1 auto!important;

    display:flex!important;
    flex-direction:column!important;
    gap:3px!important;
}

.avx-resume-copy strong{
    color:var(--navy)!important;
    font-size:12px!important;
    line-height:1.3!important;
    font-weight:800!important;
}

.avx-resume-copy span{
    color:var(--muted)!important;
    font-size:10.5px!important;
    line-height:1.45!important;
}

.avx-resume-copy small{
    color:#899095!important;
    font-size:9.5px!important;
    line-height:1.3!important;
}

.avx-file-button{
    position:relative!important;

    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;

    flex:0 0 auto!important;

    min-height:37px!important;
    padding:0 14px!important;

    border:1px solid var(--gold)!important;
    background:#fff!important;
    color:var(--navy)!important;

    cursor:pointer!important;

    font-size:10px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.7px!important;
    text-transform:uppercase!important;
}

.avx-file-button:hover{
    background:var(--gold)!important;
    color:#fff!important;
}

.avx-file-button input{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    pointer-events:none!important;
}

.avx-file-name{
    display:none!important;
    width:100%!important;
    color:var(--muted)!important;
    font-size:10px!important;
    line-height:1.4!important;
}

.avx-file-name.is-selected{
    display:block!important;
    color:#496744!important;
    font-weight:700!important;
}
.avx-resume-box:has(.avx-file-name.is-selected){
    border-color:#8FA889!important;
    background:#F7FAF5!important;
}


/* ============================================================
   FOOTER
   ============================================================ */

.avx-form-footer{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;

    margin-top:20px!important;
}

.avx-privacy-note{
    max-width:400px!important;
    margin:0!important;

    color:#858D92!important;
    font-size:9.5px!important;
    line-height:1.45!important;
}

.avx-submit-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;

    min-height:45px!important;
    padding:0 18px!important;

    border:1px solid var(--gold)!important;
    border-radius:0!important;

    background:var(--gold)!important;
    color:#fff!important;

    font-family:inherit!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.7px!important;
    text-transform:uppercase!important;

    cursor:pointer!important;

    transition:background .2s ease,transform .2s ease!important;
}

.avx-submit-button:hover{
    background:#B48932!important;
    transform:translateY(-1px)!important;
}

.avx-submit-button:disabled{
    opacity:.6!important;
    cursor:wait!important;
    transform:none!important;
}

.avx-submit-icon{
    display:flex!important;
}

.avx-submit-icon svg{
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}

/* ============================================================
   STATUS
   ============================================================ */

.avx-form-status{
    display:none;
    margin-top:15px!important;
    padding:11px 13px!important;
    font-size:11px!important;
    line-height:1.5!important;
}

.avx-form-status.is-success{
    display:block!important;
    border-left:3px solid #64855D!important;
    background:#F2F7F0!important;
    color:#3F573A!important;
}

.avx-form-status.is-error{
    display:block!important;
    border-left:3px solid #B85C4A!important;
    background:#FBF2F0!important;
    color:#713A30!important;
}

/* ============================================================
   HONEYPOT
   ============================================================ */

.avx-honeypot{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:0!important;
}

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

@media (max-width:1100px){

    .avx-contact-wrap{
        width:calc(100% - 70px)!important;
        max-width:none!important;
        gap:45px!important;
    }

    .avx-contact-intro h1{
        font-size:53px!important;
    }

    .avx-contact-card{
        padding:0!important;
    }

    .avx-card-heading,
    .avx-contact-form{
        padding-left:26px!important;
        padding-right:26px!important;
    }
}

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

@media (max-width:767px){

    .avx-contact-page{
        width:100vw!important;
        max-width:100vw!important;
        left:50%!important;
        margin-left:-50vw!important;
    }

    .avx-contact-wrap{
        display:block!important;
        width:calc(100% - 32px)!important;
        max-width:none!important;
        padding:45px 0 50px!important;
    }

    .avx-contact-intro{
        padding-top:0!important;
        margin-bottom:34px!important;
    }

    .avx-contact-intro h1{
        font-size:43px!important;
        letter-spacing:-1.7px!important;
    }

    .avx-lead{
        margin:20px 0 27px!important;
        font-size:14px!important;
        line-height:1.62!important;
    }

    .avx-contact-card{
        width:100%!important;
    }

    .avx-card-heading{
        padding:25px 20px 23px!important;
    }

    .avx-card-heading::after{
        left:20px;
    }

    .avx-card-heading h2{
        font-size:29px!important;
    }

    .avx-contact-form{
        padding:23px 20px 25px!important;
    }

    .avx-form-grid{
        grid-template-columns:1fr!important;
        gap:15px!important;
    }

    .avx-message-field{
        margin-top:15px!important;
    }

    .avx-resume-box{
        align-items:flex-start!important;
        flex-wrap:wrap!important;
    }

    .avx-resume-copy{
        flex:1 1 calc(100% - 53px)!important;
    }

    .avx-file-button{
        margin-left:52px!important;
    }

    .avx-file-name{
        margin-left:52px!important;
    }

    .avx-form-footer{
        align-items:stretch!important;
        flex-direction:column!important;
    }

    .avx-privacy-note{
        max-width:none!important;
    }

    .avx-submit-button{
        width:100%!important;
    }
}

/* ============================================================
   SMALL PHONES
   ============================================================ */

@media (max-width:420px){

    .avx-contact-wrap{
        width:calc(100% - 24px)!important;
    }

    .avx-contact-intro h1{
        font-size:38px!important;
    }

    .avx-card-heading,
    .avx-contact-form{
        padding-left:16px!important;
        padding-right:16px!important;
    }

    .avx-card-heading::after{
        left:16px;
    }

    .avx-resume-box{
        padding:12px!important;
    }

    .avx-file-button,
    .avx-file-name{
        margin-left:0!important;
    }
}
