/* Text roles follow the nearest actual Elementor surface; authored content stays intact. */
body.ka-brand-site.ka-unified-colors{
 --ka-reading-heading:var(--ka-heading,#0E244B);--ka-reading-body:var(--ka-body,#526176);
}
body.ka-brand-site.ka-unified-colors .ka-tone-light{
 --ka-reading-heading:var(--ka-heading,#0E244B);--ka-reading-body:var(--ka-body,#526176);
}
body.ka-brand-site.ka-unified-colors .ka-tone-dark{
 --ka-reading-heading:var(--ka-dark-heading,#FFFFFF);--ka-reading-body:var(--ka-dark-body,#EEF5FF);
}
body.ka-brand-site.ka-unified-colors .ka-text-heading .elementor-heading-title,
body.ka-brand-site.ka-unified-colors .ka-text-heading .elementor-heading-title>a{color:var(--ka-reading-heading)!important}
body.ka-brand-site.ka-unified-colors .ka-text-description .elementor-heading-title,
body.ka-brand-site.ka-unified-colors .ka-text-description .elementor-heading-title>a,
body.ka-brand-site.ka-unified-colors .ka-text-description .elementor-widget-container,
body.ka-brand-site.ka-unified-colors .ka-text-description .elementor-widget-container p{color:var(--ka-reading-body)!important}
body.ka-brand-site.ka-unified-colors .ka-text-description .elementor-widget-container :is(h1,h2,h3,h4,h5,h6){color:var(--ka-reading-heading)!important}
body.ka-brand-site.ka-unified-colors .ka-tone-dark :is(a,button,input,select,textarea):focus-visible{outline-color:var(--ka-dark-body)}
body.ka-brand-site.ka-unified-colors .ka-role-card:is(.ka-is-touched,:focus-visible){
 --ka-reading-heading:var(--ka-hover-text,#fff);--ka-reading-body:var(--ka-hover-text,#fff);
}
@media(hover:hover) and (pointer:fine){body.ka-brand-site.ka-unified-colors .ka-role-card:hover{
 --ka-reading-heading:var(--ka-hover-text,#fff);--ka-reading-body:var(--ka-hover-text,#fff);
}}
body.ka-brand-site.ka-unified-colors .ka-readable-button .elementor-button{color:var(--ka-action-text)!important}
body.ka-brand-site.ka-unified-colors .ka-readable-button .elementor-button:is(:hover,:focus-visible){color:var(--ka-action-hover-text)!important}
body.ka-brand-site.ka-unified-colors .ka-readable-button .elementor-button :is(.elementor-button-content-wrapper,.elementor-button-text,.elementor-button-icon){color:inherit!important}
body.ka-brand-site.ka-unified-colors .ka-readable-button .elementor-button svg{fill:currentColor}
body.ka-brand-site.ka-unified-colors .kap-site :is(h1,h2,h3,h4){color:var(--ka-heading)}
body.ka-brand-site.ka-unified-colors .kap-site :is(.kap-hero p,.kap-brief,.kap-card-meta,.kap-empty,.kap-meta dt,.kap-breadcrumbs){color:var(--ka-body)}
body.ka-brand-site.ka-unified-colors .kap-site .kap-breadcrumbs a:hover{color:var(--ka-secondary)}
/* The orange stays as the accent; navy keeps small controls legible on it. */
body.ka-brand-site.ka-unified-colors .kap-site .kap-play-icon,
body.ka-brand-site.ka-unified-colors .kap-lightbox button:hover{color:var(--ka-primary)}
body.ka-brand-site.ka-unified-colors .ka-skill h3{color:var(--ka-heading)}
/* Hidden means absent from the whole section, including its heading and spacing. */
body.ka-contact-hidden:not(.elementor-editor-active) .ka-contact-section{display:none!important}
.elementor-editor-active .ka-field-disabled{opacity:.55;outline:1px dashed currentColor}
