.svcms-contactform-wrap{
    width:100%;
    margin:24px 0;
}

.svcms-contactform{
    background:#f8f8f8;
    border:1px solid #e0e0e0;
    border-radius:14px;
    padding:24px;
}

.svcms-contactform__grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
}

.svcms-contactform__field{
    display:flex;
    flex-direction:column;
    gap:8px;
}

.svcms-contactform__field--full{
    grid-column:1 / -1;
}

.svcms-contactform__field label{
    font-size:0.98rem;
    color:#7a7a7a;
    margin:0;
}

.svcms-contactform__field input,
.svcms-contactform__field textarea{
    width:100%;
    border:1px solid #d7d7d7;
    border-radius:10px;
    background:#fff;
    color:#222;
    font-size:1.08rem;
    line-height:1.45;
    padding:14px 16px;
    box-sizing:border-box;
}

.svcms-contactform__field textarea{
    resize:vertical;
    min-height:180px;
}

.svcms-contactform__field input:focus,
.svcms-contactform__field textarea:focus{
    outline:none;
    border-color:#689327;
    box-shadow:0 0 0 3px rgba(104,147,39,0.12);
}

.svcms-contactform__actions{
    margin-top:18px;
    display:flex;
    justify-content:flex-start;
}

.svcms-contactform__submit{
    border:0;
    border-radius:999px;
    background:#689327;
    color:#fff;
    font-size:1.02rem;
    line-height:1;
    padding:14px 22px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
    transition:transform .15s ease, opacity .15s ease, background .15s ease;
}

.svcms-contactform__submit:hover{
    transform:translateY(-1px);
    background:#5e8523;
}

.svcms-contactform__submit:disabled{
    opacity:.65;
    cursor:default;
    transform:none;
}

.svcms-contactform__status{
    margin-top:16px;
    font-size:0.98rem;
}

.svcms-contactform__status.is-error{
    color:#9b1c1c;
}

.svcms-contactform__status.is-success{
    color:#2b6d2f;
    font-weight:500;
}

.svcms-contactform.is-sent input,
.svcms-contactform.is-sent textarea{
    background:#f1f1f1;
    color:#777;
    border-color:#dddddd;
}

.svcms-contactform.is-sent .svcms-contactform__submit{
    display:none;
}

.svcms-contactform__hp{
    position:absolute !important;
    left:-9999px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}

@media (max-width: 767.98px){
    .svcms-contactform{
        padding:18px;
    }

    .svcms-contactform__grid{
        grid-template-columns:1fr;
    }

    .svcms-contactform__field--full{
        grid-column:auto;
    }

    .svcms-contactform__field input,
    .svcms-contactform__field textarea{
        font-size:1rem;
        padding:13px 14px;
    }

    .svcms-contactform__submit{
        width:100%;
        justify-content:center;
    }
}