.contact-form div.wrap-three {
    display: flex;
    justify-content: flex-start;
}

@media (max-width: 880px) {
    .contact-form div.wrap-three {
        flex-wrap: wrap;
    }
}

.contact-form div.wrap-three > div.wrap-col {
    width: 100%;
    padding-right: 1rem;
}

.contact-form div.wrap-three > div.wrap-col:last-child {
    padding-right: 0;
}

@media (max-width: 880px) {
    .contact-form div.wrap-three > div.wrap-col {
        padding: 0;
    }
}

.contact-form div.wrap-three > div.wrap-col input {
    width: 100%;
    flex: 1;
    height: 47px;
    background: #FFFFFF;
    border: 1px solid #595959;
    margin: 4px 0 1rem 0;
    padding: 1rem;
}

.contact-form div.wrap-three > div.wrap-col select {
    width: 100%;
    flex: 1;
    height: 47px;
    background: #FFFFFF;
    border: 1px solid #595959;
    margin: 4px 0 1rem 0;
    padding: 0 1rem;
}

.contact-form section div label {
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    color: #000000;
}

 .contact-form section div label sup {
    width: 1ch;
    top: -0.25rem;
    padding-left: 0.125rem;
    color: #29588C;
    font-size: 14px;
}

.contact-form section textarea {
    padding: 1rem;
    width: 100%;
    min-height: 154px;
    margin: 4px 0 1.5rem 0;
}

.contact-form div button {
    cursor: pointer;
    background-color: #29588C;
    color: #FFFFFF;
    height: 47px;
    border: none;
    display: flex;
    align-items: center;
    padding: 1rem 0.5rem 1rem 1rem;
}

.contact-form form div button:hover {
    background-color: #000000;
}

.contact-form form div button img {
    height: 1.25rem;
    padding: 0 0.5rem;
}

.contact-form .EPiServerForms .Form__Element {
    margin: 0;
}

.contact-form .EPiServerForms .hide {
    display: none
}

.contact-form div.wrap-four {
    display: flex;
    justify-content: flex-start;
}

@media (max-width: 880px) {
    .contact-form div.wrap-four {
        flex-wrap: wrap;
    }
}

.contact-form div.wrap-four > div.wrap-col {
    width: 100%;
    padding-right: 1rem;
}

    .contact-form div.wrap-four > div.wrap-col:last-child {
        padding-right: 0;
    }

@media (max-width: 880px) {
    .contact-form div.wrap-four > div.wrap-col {
        padding: 0;
    }
}

.contact-form div.wrap-four > div.wrap-col input {
    width: 100%;
    flex: 1;
    height: 47px;
    background: #FFFFFF;
    border: 1px solid #595959;
    margin: 4px 0 1rem 0;
    padding: 1rem;
}

.contact-form div.wrap-four > div.wrap-col select {
    width: 100%;
    flex: 1;
    height: 47px;
    background: #FFFFFF;
    border: 1px solid #595959;
    margin: 4px 0 1rem 0;
    padding: 0 1rem;
}

/* Make the single step inside the wrapper act like your static form row */
.callout-banner__form-wrapper .EPiServerForms .Form__MainBody > section[data-f-type="step"] {
    display: flex;
    align-items: flex-end;
    gap: 32px;
    margin-top: 16px;
    flex-wrap: wrap;
}

@media (max-width: 824px) {
    .callout-banner__form-wrapper .EPiServerForms .Form__MainBody > section[data-f-type="step"] {
        flex-direction: column;
        align-items: flex-start;
        row-gap: 24px;
    }
}

/* Left column (checkbox) – assume it’s the first child div */
.callout-banner__form-wrapper .EPiServerForms section[data-f-type="step"] > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-width: 360px;
}

/* Right column (email + button) – assume it’s the second child div */
.callout-banner__form-wrapper .EPiServerForms section[data-f-type="step"] > div:nth-child(2) {
    display: flex;
    align-items: flex-end;
    gap: 24px;
    flex: 1 1 auto;
}

/* Checkbox row */
.callout-banner__form-wrapper .EPiServerForms input[type="checkbox"] {
    margin: 0 8px 0 0;
}

/* Email input */
.callout-banner__form-wrapper .EPiServerForms input[type="email"],
.callout-banner__form-wrapper .EPiServerForms input[type="text"] {
    background: #FFFFFF;
    border: 1px solid #595959;
    height: 47px;
    padding: 14px 16px;
    width: 312px;
    box-sizing: border-box;
}

/* Submit button */
.callout-banner__form-wrapper .EPiServerForms button[type="submit"] {
    display: inline-flex;
    align-items: center;
    border: none;
    gap: 16px;
    padding: 14px 16px;
    background-color: #29588C;
    color: #FFFFFF;
    height: 47px;
    font-size: 16px;
    cursor: pointer;
}

/* Remove border around checkbox group */
.callout-banner fieldset {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}
.callout-banner input[type="checkbox"] {
    outline: none !important;
    box-shadow: none !important;
}
.callout-banner .FormChoice legend.Form__Element__Caption {
    display: block; /* make sure it behaves like a block */
    margin-bottom: 10px;
}
.callout-banner .FormTextbox__Input {
    margin-top: 6px;
}
/* Checkbox legend: "Opt in to receive..." */
.callout-banner .FormChoice legend.Form__Element__Caption {
    font-size: 16px;
    line-height: 24px;
}

/* Checkbox label: "AAR CORP. News Alert" */
.callout-banner .FormChoice__Label {
    font-size: 16px;
    line-height: 24px;
}

/* Email label */
.callout-banner .FormTextbox label,
.callout-banner .Form__Element__Caption {
    font-size: 14px;
    line-height: 16.8px;
}

/* Email input text */
.callout-banner .FormTextbox__Input,
.callout-banner input[type="email"],
.callout-banner input[type="text"] {
    font-size: 14px;
    line-height: 16.1px;
}

/* Submit button */
.callout-banner button[type="submit"] {
    font-size: 16px;
    line-height: 19px;
}

.callout-banner .Form__Status__Message.Form__Success__Message {
  background-color: transparent !important;
  color: #ffffff !important; /* make text visible */
  opacity: 1 !important;
}
