.page-id-1482 .featured-image.page-header-image {
    max-height: clamp(180px, 25vw, 360px);
}

.page-id-1482 .featured-image.page-header-image img {
    display: block;
    width: 100%;
    height: clamp(180px, 25vw, 360px);
    object-fit: cover;
    object-position: center 52%;
}

.page-id-1482 .vxs-contact-section {
    width: 100%;
    max-width: 1240px;
    box-sizing: border-box;
    margin: clamp(2rem, 5vw, 4rem) auto;
}

.page-id-1482 .vxs-contact-grid {
    padding: clamp(1rem, 2.5vw, 1.5rem);
    justify-items: stretch;
}

.page-id-1482 .vxs-contact-formwrap {
    width: 100%;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}

/* WPForms sizes "medium" fields at 60% of the form; inside this 720px column they should fill it. */
.page-id-1482 .vxs-contact-formwrap .wpforms-field input.wpforms-field-medium,
.page-id-1482 .vxs-contact-formwrap .wpforms-field select.wpforms-field-medium,
.page-id-1482 .vxs-contact-formwrap .wpforms-field textarea.wpforms-field-medium,
.page-id-1482 .vxs-contact-formwrap .wpforms-field .wpforms-field-row.wpforms-field-medium {
    max-width: 100%;
}

.page-id-1482 .vxs-contact-formwrap .wpforms-container-full,
.page-id-1482 .vxs-contact-formwrap .wpforms-container-full form {
    width: 100%;
    max-width: none;
}

.page-id-1482 .vxs-form-title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    line-height: 1.2;
}

.page-id-1482 .vxs-form-sub {
    font-size: 1rem;
    line-height: 1.6;
}

.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 input[type="text"],
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 input[type="email"],
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 input[type="tel"],
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 input[type="url"],
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 textarea,
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 select {
    font-size: 1rem;
}

.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 select option {
    background: #171a2a;
    color: #fff;
}

.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 button[type="submit"] {
    background: linear-gradient(135deg, #667eea, #764ba2) !important;
    box-shadow: 0 8px 20px rgba(102, 126, 234, 0.24) !important;
    font-family: var(--font-display, Syne, sans-serif);
    font-size: 0.9rem;
    letter-spacing: normal;
    text-transform: none;
}

.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 button[type="submit"]:hover,
.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 button[type="submit"]:focus-visible {
    background: linear-gradient(135deg, #788ff4, #8961ba) !important;
    box-shadow: 0 12px 26px rgba(102, 126, 234, 0.34) !important;
}

.page-id-1482 .vxs-contact-section div.wpforms-container-full #wpforms-1479 button[type="submit"]:focus-visible {
    outline: 2px solid #c1b8ff;
    outline-offset: 3px;
}

.page-id-1482 .vxs-recaptcha-note a {
    color: #9b8cff;
    font-weight: 700;
    text-decoration-thickness: 1.5px;
    text-underline-offset: 0.16em;
}

@media (max-width: 640px) {
    .page-id-1482 .featured-image.page-header-image,
    .page-id-1482 .featured-image.page-header-image img {
        height: 120px;
        max-height: 120px;
    }

    .page-id-1482 .vxs-contact-section {
        margin-block: 1.25rem 2rem;
    }

    .page-id-1482 .vxs-form-sub {
        font-size: 1rem;
    }
}

@media (max-width: 640px) {
    .page-id-1482 .vxs-contact-section { padding-left: 0; padding-right: 0; }
    .page-id-1482 .vxs-contact-grid { padding: 8px; }
    .page-id-1482 .vxs-contact-formwrap { padding-left: 12px; padding-right: 12px; }
}

