:root {
    --article-title-size-floor: 1.75rem;
    --article-title-size-fluid: calc(0.8rem + 1.54vw);
    --article-title-size-ceiling: 4.5rem;
    --article-title-leading: 1.1;

    --article-text-inset-start: clamp(1.5rem, 4vw, 70px);
    --article-text-inset-end: clamp(1rem, 1.5vw, 25px);

    --article-divider-length: 42px;
    --article-reading-measure: 42rem;

    --article-text-order: 2;
}

@media (min-width: 981px) {

    .article-hero.et_pb_section .et_pb_post_title .et_pb_title_container h1.entry-title {
        font-size: clamp(
            var(--article-title-size-floor),
            var(--article-title-size-fluid),
            var(--article-title-size-ceiling)
        ) !important;
        line-height: var(--article-title-leading);
        width: 100%;
        max-width: 100%;
        transform: none;
        hyphens: none;
        -webkit-hyphens: none;
        word-break: normal;
        overflow-wrap: break-word;
    }

    .article-hero.et_pb_section .et_pb_post_title.et_pb_module,
    .article-hero.et_pb_section .et_pb_column_single .et_pb_text.et_pb_module,
    .article-hero.et_pb_section .et_pb_column_single .et_pb_divider.et_pb_module {
        padding-left: var(--article-text-inset-start) !important;
        padding-right: var(--article-text-inset-end) !important;
    }

    .article-hero.et_pb_section .et_pb_column_single .et_pb_divider.et_pb_module::before {
        left: var(--article-text-inset-start) !important;
        right: auto !important;
        width: var(--article-divider-length) !important;
    }

    .article-hero .et_pb_specialty_column {
        display: flex;
        flex-direction: column;
    }

    .article-hero .et_pb_specialty_column .et_pb_row_inner,
    .article-hero .et_pb_specialty_column .et_pb_column_inner {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
    }

    .article-hero .et_pb_specialty_column .et_pb_image,
    .article-hero .et_pb_specialty_column .et_pb_image_wrap {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        width: 100%;
    }

    .article-hero .et_pb_specialty_column .et_pb_image img {
        flex: 1 1 auto;
        width: 100%;
        object-fit: cover;
    }
}

.article-hero .et_pb_column_single .et_pb_text.et_pb_module:empty {
    display: none;
}

.article-hero > .et_pb_row:not(:has(.et_pb_specialty_column img)) > .et_pb_specialty_column {
    display: none;
}

.article-hero > .et_pb_row:not(:has(.et_pb_specialty_column img)) > .et_pb_column_single {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
    margin-right: 0 !important;
}

.article-hero > .et_pb_row:not(:has(.et_pb_specialty_column img)) .et_pb_column_single .et_pb_text.et_pb_module {
    max-width: var(--article-reading-measure);
}

.specialty-fullwidth > .et_pb_row {
    width: 100%;
    max-width: 100%;
}

.article-hero .et_pb_column_single {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
}

@media (max-width: 980px) {

    .article-hero > .et_pb_row {
        display: flex !important;
        flex-direction: column !important;
    }

    .article-hero > .et_pb_row > .et_pb_column_single {
        order: var(--article-text-order);
        display: block;
        width: 100% !important;
        margin: 0 !important;
        float: none !important;
    }

    .article-hero .et_pb_row_inner {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }

    .article-hero .et_pb_image {
        margin: 0;
    }
}
