.c-image-text {
    figcaption {
        margin-top: 1rem;
    }

    img {
        width: 100%;
    }

    @screen md {
        display: flex;
        align-items: flex-start;

        img {
            width: 248px;
        }

        figcaption {
            flex: 1 1 auto;
            margin: 0 0 0 1rem;
            margin-top: 0;
        }
    }

    a {
        color: theme('colors.primary.400');

        &:hover,
        &:focus {
            color: theme('colors.primary.600');
        }
    }

    ul {
        list-style: disc;
    }

    ol {
        list-style: auto;
    }

    ul,
    ol {
        margin-top: .75em;
        padding-left: 1em;
    }

    p {
        display: block;
        margin: 0;
    }

    .c-button {
        color: #fff;
        margin-top: 1rem;

        &:hover,
        &:focus {
            color: #fff;
        }
    }
}

.c-image-text--image-small {
    @screen md {
        img {
            width: 278px;
        }
    }
}

.c-image-text--image-medium {
    @screen md {
        img {
            width: 368px;
        }
    }
}

.c-image-text--image-large {
    @screen md {
        img {
            width: 448px;
        }
    }
}

.c-image-text__image-wrapper {
    position: relative;
    flex: 1 0 auto;
    float: none;
    overflow: hidden;
    margin: 0 0 1rem;

    @screen md {
        position: relative;
        flex: 1 0 auto;
        float: left;
        overflow: hidden;
    }

    @screen lg {
        position: relative;
        flex: 1 0 auto;
        float: left;
        overflow: hidden;
    }
}

.c-image-text__enlarge-wrapper {
    display: block;
}

.c-image-text__title {
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: .75rem;

    .text-white & {
        color: #fff;
    }
}

.c-image-text--inverted {
    flex-direction: column;

    @screen md {
        flex-direction: row-reverse;

        figcaption {
            margin: 0 0 0 1rem;
        }

        // stylelint-disable
        .c-image-text__image-wrapper {
            float: right !important;
            margin: 0 0 0 1rem !important;
        }
        // stylelint-enable
    }
}

.c-image-text--wrapped {
    display: flex;
    flex-direction: column;
    overflow: hidden;

    img {
        float: left;
    }

    figcaption {
        margin: 0;
    }

    p {
        text-align: justify;
    }

    @screen md {
        display: block;

        .c-image-text__image-wrapper {
            float: left;
            margin: 0 1rem 0 0;
        }
    }
}

.c-image-text__title--primary {
    color: theme('colors.primary.500');
}

.c-image-text__title--secondary {
    color: theme('colors.secondary.500');
}

.c-image-text__title--black {
    color: #333;
}
