/* Shared roles override legacy per-module Divi fonts, including inline sizes. */
body {
    --katie-body: "Open Sans", Arial, sans-serif;
    --katie-heading: "Prata", Georgia, serif;
    --katie-copy-size: clamp(19px, 1.53vw, 22px);
    --katie-heading-size: clamp(26px, 2.23vw, 32px);
}
#main-content .et_pb_text,
#main-content .et_pb_promo,
#main-content .et_pb_contact_form {
    font-family: var(--katie-body) !important;
    font-size: var(--katie-copy-size) !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
}
#main-content .et_pb_bg_layout_light { color: #333333 !important; }
#main-content :is(.et_pb_text, .et_pb_promo) :is(p, li, span, a, strong, em) {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
}
#main-content :is(.et_pb_text, .et_pb_promo) :is(p, li, ul, ol) {
    font-family: var(--katie-body) !important;
    font-size: var(--katie-copy-size) !important;
    line-height: 1.65 !important;
    color: #333333 !important;
}
#main-content :is(.et_pb_text, .et_pb_promo) :is(h1, h2, h3, h4, h5, h6) {
    font-family: var(--katie-heading) !important;
    font-size: var(--katie-heading-size) !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    color: #222222 !important;
    padding-bottom: .55em;
}
#main-content :is(.et_pb_text, .et_pb_promo) :is(p, ul, ol) + :is(h1, h2, h3) {
    margin-top: 1em;
}
#main-content .et_pb_text h1.katie-page-title {
    font-size: clamp(36px, 3.4vw, 48px) !important;
}
#main-content .et_pb_text h1.katie-brand-title {
    font-size: clamp(38px, 4.2vw, 60px) !important;
}
#main-content .et_pb_with_border.et_pb_text h2,
#main-content :is(.et_pb_text, .et_pb_promo) blockquote,
#main-content :is(.et_pb_text, .et_pb_promo) blockquote p {
    font-family: var(--katie-heading) !important;
    font-size: clamp(24px, 2.1vw, 30px) !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
}
#main-content .et_pb_text a[href^="mailto:"] { overflow-wrap: anywhere; }
#main-content .et_pb_button,
#main-content .et_pb_contact_form :is(input, textarea, select) {
    font-family: var(--katie-body) !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
}
#main-header :is(a, li),
#top-header,
#main-footer {
    font-family: var(--katie-body) !important;
    font-size: 16px !important;
    letter-spacing: normal !important;
}
.et_slide_in_menu_container .et_mobile_menu li a {
    font-family: var(--katie-body) !important;
    font-size: clamp(22px, 2vw, 28px) !important;
    line-height: 1.5 !important;
    letter-spacing: normal !important;
}
