/* Reusable CTA lead modal */
.vt-cta-modal__dialog {
    max-width: calc(100% - 1rem);
}

@media (min-width: 768px) {
    .vt-cta-modal__dialog {
        max-width: 520px;
    }
}

@media (min-width: 992px) {
    .vt-cta-modal__dialog {
        max-width: 600px;
    }
}

.vt-cta-modal__dialog .modal-header {
    padding: 1rem 0.75rem;
}

.vt-cta-modal__dialog .modal-body {
    padding: 0.65rem 0.75rem 0.75rem;
}

.vt-cta-modal__form .form-label {
    font-size: 0.8rem;
    margin-bottom: 0.2rem;
}

.vt-cta-modal__form .form-control-sm,
.vt-cta-modal__form .vt-cta-modal__submit {
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
    font-size: 0.875rem;
    line-height: 1.5;
    min-height: calc(1.5em + 0.7rem + 2px);
}

.vt-cta-modal__form .invalid-feedback[data-error-for] {
    font-size: 0.72rem;
}

@media (max-width: 575.98px) {
    .vt-cta-modal__form .form-control-sm,
    .vt-cta-modal__form .vt-cta-modal__submit {
        font-size: 16px;
        min-height: calc(1.5em + 0.7rem + 2px);
    }
}

/* Pricing page: keep legacy class hooks working when modal uses vt-cta-modal */
.pricing-quote-modal__dialog {
    max-width: calc(100% - 1rem);
}

@media (min-width: 768px) {
    .pricing-quote-modal__dialog {
        max-width: 520px;
    }
}

@media (min-width: 992px) {
    .pricing-quote-modal__dialog {
        max-width: 600px;
    }
}
