.contact-section{
    padding:95px 0;
    background:linear-gradient(120deg,#0a1c34,#0b6268);
    color:#fff
}
.contact-grid{
    display:grid;
    grid-template-columns:minmax(0,.75fr) minmax(520px,1.25fr);
    align-items:start;
    gap:85px
}
.contact-copy{
    padding-top:25px
}
.contact-copy h2{
    max-width:560px;
    margin:17px 0;
    color:#fff;
    font-size:clamp(38px,4vw,54px);
    line-height:1.06;
    letter-spacing:-2.3px
}
.contact-copy>p{
    max-width:520px;
    color:rgba(255,255,255,.66);
    font-size:14px;
    line-height:1.75
}
.contact-copy ul{
    display:grid;
    gap:12px;
    margin:28px 0 0;
    padding:0;
    list-style:none;
    color:rgba(255,255,255,.75);
    font-size:12px
}
.contact-copy li{
    position:relative;
    padding-left:25px
}
.contact-copy li::before{
    position:absolute;
    left:0;
    color:#67ddd6;
    font-weight:900;
    content:"✓"
}
.contact-form-card{
    padding:34px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:24px;
    background:#fff;
    box-shadow:0 30px 80px rgba(1,15,29,.32);
    color:var(--text)
}
.contact-form{
    display:grid;
    gap:16px
}
.field-row{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px
}
.contact-form label{
    display:grid;
    gap:7px;
    color:var(--navy);
    font-size:10px;
    font-weight:750
}
.contact-form label small{
    color:var(--muted);
    font-weight:500
}
.contact-form input,.contact-form select,.contact-form textarea{
    width:100%;
    border:1px solid #d8e1eb;
    border-radius:10px;
    outline:0;
    background:#f8fafc;
    color:var(--text);
    font:inherit;
    font-size:12px;
    transition:border-color .2s ease,box-shadow .2s ease
}
.contact-form input,.contact-form select{
    height:48px;
    padding:0 13px
}
.contact-form textarea{
    min-height:120px;
    padding:13px;
    resize:vertical
}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(24,184,176,.13)
}
.privacy-check{
    display:flex!important;
    align-items:flex-start;
    grid-template-columns:none!important;
    gap:9px!important;
    color:var(--muted)!important;
    font-size:9px!important;
    font-weight:500!important;
    line-height:1.55
}
.privacy-check input{
    width:14px;
    height:14px;
    flex:0 0 auto;
    margin:1px 0 0;
    accent-color:var(--primary)
}
.privacy-check a{
    color:var(--primary-dark);
    font-weight:750;
    text-decoration:underline
}
.contact-form .button{
    width:100%;
    cursor:pointer
}
.form-note{
    color:var(--muted);
    font-size:8px;
    text-align:center
}
.honeypot{
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important
}
.form-message{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:18px;
    padding:13px 15px;
    border-radius:10px;
    font-size:10px;
    line-height:1.5
}
.form-message.success{
    background:#e6f7f1;
    color:#176348
}
.form-message.error{
    background:#fff0f0;
    color:#9e2d2d
}
 @media(max-width:950px){
    .contact-grid{
        grid-template-columns:1fr;
        gap:40px
    }
    .contact-copy{
        padding-top:0
    }
    .contact-form-card{
        width:min(680px,100%)
    }
}
 @media(max-width:600px){
    .contact-section{
        padding:72px 0
    }
    .contact-copy h2{
        font-size:38px;
        letter-spacing:-1.7px
    }
    .contact-form-card{
        padding:25px 18px
    }
    .field-row{
        grid-template-columns:1fr
    }
}
 .contact-promise{
    display:flex;
    max-width:480px;
    flex-direction:column;
    gap:5px;
    margin-top:35px;
    padding:18px 20px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:14px;
    background:rgba(255,255,255,.06)
}
.contact-promise span{
    color:#67ddd6;
    font-size:9px;
    font-weight:800;
    letter-spacing:.8px;
    text-transform:uppercase
}
.contact-promise strong{
    font-size:12px
}
.contact-form-heading{
    margin-bottom:25px;
    padding-bottom:22px;
    border-bottom:1px solid var(--line)
}
.contact-form-heading>span{
    color:var(--primary-dark);
    font-size:9px;
    font-weight:800;
    letter-spacing:.9px;
    text-transform:uppercase
}
.contact-form-heading h3{
    margin:8px 0 5px;
    color:var(--navy);
    font-size:22px;
    letter-spacing:-.5px
}
.contact-form-heading p{
    margin:0;
    color:var(--muted);
    font-size:11px
}
.form-message{
    align-items:flex-start;
    flex-direction:row;
    gap:12px
}
.form-message-icon{
    display:grid;
    width:28px;
    height:28px;
    flex:0 0 auto;
    place-items:center;
    border-radius:8px;
    background:rgba(255,255,255,.65);
    font-size:13px;
    font-weight:900
}
.form-message>div{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:3px
}
.form-message>div>strong{
    font-size:11px
}
.form-message>div>span{
    opacity:.82
}
.form-message>div>small{
    margin-top:4px;
    font-family:monospace;
    font-size:9px
}