
.contact-overview .section-inner{
    padding-top:95px;
    padding-bottom:92px
}
.contact-heading{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);
    gap:7vw;
    align-items:end
}
.contact-heading h2,
.contact-quote-copy h2{
    margin:0;
    font-size:clamp(2.6rem,4vw,4.8rem);
    line-height:1.02;
    letter-spacing:-.03em
}
.contact-heading-copy{
    color:#586473;
    font-size:1.08rem;
    line-height:1.65
}
.contact-heading-copy p{margin:0}
.contact-info-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px;
    margin-top:60px;
    border-top:1px solid #dfe5ea;
    border-bottom:1px solid #dfe5ea
}
.contact-info-item{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:16px;
    padding:28px 24px 30px 0;
    border-right:1px solid #dfe5ea
}
.contact-info-item:last-child{border-right:0}
.contact-info-item>i{
    color:var(--blue);
    font-size:1.25rem;
    padding-top:4px;
    padding-left: 15px;
}
.contact-info-item h3{
    margin:0 0 10px;
    font-size:1.05rem
}
.contact-info-copy{
    color:#5d6875;
    font-size:.98rem;
    line-height:1.55
}
.contact-info-copy p{margin:0}
.contact-info-copy a{
    color:var(--ink);
    text-decoration:none
}
.contact-info-copy a:hover{color:var(--blue)}

.contact-quote{
    background:var(--soft)
}
.contact-quote .section-inner{
    padding-top:100px;
    padding-bottom:110px
}
.contact-quote-grid{
    display:grid;
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
    gap:7vw;
    align-items:start
}
.contact-quote-copy{
    position:sticky;
    top:120px
}
.contact-quote-lead{
    margin:24px 0 22px;
    max-width:560px;
    font-size:1.12rem;
    line-height:1.55;
    color:#384657
}
.contact-quote-copy .rich-copy{
    max-width:560px;
    color:#5b6674;
    font-size:1rem;
    line-height:1.7
}
.contact-quote-copy .rich-copy br{display:none}
.contact-quote-copy .rich-copy p{margin:0 0 18px}

.contact-form-card{
    background:#fff;
    padding:42px;
    box-shadow:0 18px 55px rgba(15,35,55,.08)
}
.contact-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px
}
.contact-form-new label{
    display:block
}
.contact-form-new label>span{
    display:block;
    margin-bottom:9px;
    color:var(--ink);
    font-size:.84rem;
    font-weight:700;
    letter-spacing:.02em
}
.contact-form-new input,
.contact-form-new textarea,
.contact-form-new select{
    width:100%;
    border:1px solid #d8e0e6;
    background:#fff;
    color:var(--ink);
    min-height:52px;
    padding:13px 14px;
    font:inherit;
    font-size:1rem;
    outline:none;
    transition:border-color .2s ease,box-shadow .2s ease
}
.contact-form-new textarea{
    min-height:180px;
    resize:vertical
}
.contact-form-new input:focus,
.contact-form-new textarea:focus,
.contact-form-new select:focus{
    border-color:var(--blue);
    box-shadow:0 0 0 3px rgba(18,176,243,.10)
}
.contact-form-full{
    margin-top:22px
}
.contact-privacy{
    display:flex!important;
    align-items:flex-start;
    gap:10px;
    margin-top:20px
}
.contact-privacy input{
    width:18px;
    min-height:18px;
    margin-top:2px;
    padding:0
}
.contact-privacy span{
    margin:0!important;
    font-weight:400!important;
    color:#65717d!important;
    line-height:1.5
}
.contact-privacy a{color:var(--blue)}
.contact-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    min-height:50px;
    margin-top:26px;
    padding:0 24px;
    border:0;
    background:var(--blue);
    color:#fff;
    font-family:Anta,Inter,sans-serif;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
    cursor:pointer;
    transition:transform .2s ease,filter .2s ease
}
.contact-submit:hover{
    transform:translateY(-2px);
    filter:brightness(.96)
}
.contact-form-message{
    margin-bottom:24px;
    padding:16px 18px;
    border-left:3px solid var(--blue);
    background:var(--soft);
    color:var(--ink)
}
.contact-form-new .hp{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important
}

@media(max-width:1100px){
    .contact-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .contact-info-item:nth-child(2){border-right:0}
    .contact-info-item:nth-child(-n+2){border-bottom:1px solid #dfe5ea}
}
@media(max-width:780px){
    .contact-overview .section-inner,
    .contact-quote .section-inner{
        padding-top:70px;
        padding-bottom:72px
    }
    .contact-heading,
    .contact-quote-grid{
        grid-template-columns:1fr;
        gap:34px
    }
    .contact-info-grid{
        grid-template-columns:1fr;
        margin-top:45px
    }
    .contact-info-item,
    .contact-info-item:nth-child(2){
        border-right:0;
        border-bottom:1px solid #dfe5ea
    }
    .contact-info-item:last-child{border-bottom:0}
    .contact-quote-copy{position:static}
    .contact-form-card{padding:26px 20px}
    .contact-form-grid{grid-template-columns:1fr}
}
