/* InterestForm Component Styles */

.com-interestform {
    max-width: 680px;
    margin: 0 auto;
    padding: 1.5rem 0;
}

.interestform-description {
    margin-bottom: 1.5rem;
    color: #555;
}

.interestform-field {
    margin-bottom: 1.25rem;
}

.interestform-field .form-label {
    font-weight: 600;
    margin-bottom: .4rem;
}

.interestform-field .form-label .required {
    color: #dc3545;
    margin-left: 2px;
}

.interestform-submit {
    min-width: 140px;
    padding: .6rem 1.6rem;
    font-size: 1rem;
    transition: opacity .2s;
}

.interestform-submit:disabled {
    opacity: .65;
    cursor: not-allowed;
}

.interestform-radio-group .form-check,
.interestform-checkbox-group .form-check {
    margin-bottom: .35rem;
}

/* Show the error message under a radio group (Bootstrap only does this for direct input siblings) */
.interestform-radio-group.is-invalid ~ .invalid-feedback {
    display: block;
}

/* Comfortable touch targets */
.interestform .form-control,
.interestform .form-select {
    min-height: 2.75rem;
}
.interestform .form-check {
    padding-top: .2rem;
    padding-bottom: .2rem;
}
.interestform .form-check-input {
    width: 1.25em;
    height: 1.25em;
    margin-top: .15em;
}
.interestform .form-check-label {
    padding-left: .25rem;
}
.interestform select.form-select {
    white-space: normal;
}

@media (max-width: 575.98px) {
    .com-interestform {
        padding: .75rem 0;
    }
    /* 16px+ stops iOS Safari zooming into the field on focus */
    .interestform .form-control,
    .interestform .form-select {
        font-size: 16px;
    }
    .interestform-submit {
        width: 100%;
        padding: .8rem 1rem;
    }
}

/* Hide honeypot from screen readers and visual display */
.hp-field {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}
