.form-content {
    padding: 5rem 2rem 0;

    @media (max-width: 767px) {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    & .form-content__inner {
        max-width: var(--container-max-width);
        margin: 0 auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 2rem;

        @media (min-width: 768px) {
            grid-template-columns: 1fr 1fr;
            gap: 4rem;
            align-items: start;
        }
    }

    /* Title — spans both columns
       ====================================================================== */

    & .form-content__title {
        grid-column: 1 / -1;
        font-family: 'Work Sans', sans-serif;
        font-size: clamp(1.75rem, 3vw, 2.25rem);
        font-weight: 700;
        color: var(--color-dark_green);
        margin: 0;
        line-height: 1.2;
        text-align: center;

        &.form-content__title--left   { text-align: left; }
        &.form-content__title--center { text-align: center; }
    }

    /* Form column
       ====================================================================== */

    & .form-content__form {
        & p:first-child { margin-top: 0; }
        & p:last-child  { margin-bottom: 0; }
    }

    /* Content column — white card wraps info/hours
       ====================================================================== */

    & .form-content__content {
        display: flex;
        flex-direction: column;
        gap: 2rem;
        background-color: var(--color-white);
        border-radius: 25px;
        padding: 3rem;

        @media (max-width: 767px) {
            padding: 1rem;
        }
    }

    & .form-content__info {
        font-size: 1rem;
        line-height: 1.75;
        color: var(--color-copy);

        & h1, & h2, & h3, & h4, & h5, & h6 {
            text-align: center;
        }

        & p:first-child { margin-top: 0; }
        & p:last-child  { margin-bottom: 0; }

        & a {
            color: var(--color-dark_green);
            text-decoration: underline;

            &:hover {
                color: var(--color-maroon);
            }
        }

        & strong {
            color: #14452D;
        }
    }

    /* Phone / fax icon pseudo-elements
       ====================================================================== */

    & .number,
    & .fax {
        display: flex;
        align-items: center;
        gap: 0.6rem;
        color: #14452D;

        &::before {
            content: '';
            display: block;
            flex-shrink: 0;
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center;
        }
    }

    & .number::before {
        width: 20px;
        height: 19px;
        background-image: url('../../assets/images/phone.svg');
    }

    & .number + br {
        display: none;
    }

    & .fax::before {
        width: 21px;
        height: 18px;
        background-image: url('../../assets/images/fax.svg');
    }

    & .number::before {
        width: 20px;
        height: 19px;
        background-image: url('../../assets/images/phone.svg');
    }

    & .number + br {
        display: none;
    }

    & .fax::before {
        width: 21px;
        height: 18px;
        background-image: url('../../assets/images/fax.svg');
    }

    /* Hours block — tan bg within the white card
       ====================================================================== */

    & .form-content__hours {
        background-color: var(--color-tan);
        border-radius: 12px;
        padding: 1.5rem;
        font-size: 1rem;
        line-height: 1.75;
        color: var(--color-copy);

        & h1, & h2, & h3, & h4, & h5, & h6 {
            text-align: center;
        }

        & p:first-child { margin-top: 0; }
        & p:last-child  { margin-bottom: 0; }

        & strong {
            color: var(--color-dark_green);
        }
    }
}
