/* =====================================================================
   ULTIMATECH — BRAND COLOR GUARD v1.1 | 2026-11-02
   Purpose: keep brand colors stable when Helix rebuilds its CSS.
   Source: supplied default.css and approved palette.
   Scope: Helix chrome only; intentionally NO SPPB section/button overrides.
   Append at END of existing override.css. Do NOT replace existing rules.
   ===================================================================== */

:root {
    --ut-brand-navy: #002F5F;
    --ut-brand-header: #F3F6FA;
    --ut-brand-body-text: #252525;
    --ut-brand-white: #FFFFFF;
    --ut-brand-footer-link: #DCDCDC;
}

/* Helix page canvas and regular text; individual SPPB sections retain CSS. */
body.site.helix-ultimate {
    background-color: var(--ut-brand-white);
    color: var(--ut-brand-body-text);
}

/* Top contact bar: protect both background and contrasting text. */
#sp-top-bar {
    background-color: var(--ut-brand-navy) !important;
    color: var(--ut-brand-white) !important;
}
#sp-top-bar a,
#sp-top-bar .sp-contact-info,
#sp-top-bar .sp-contact-info a,
#sp-top-bar .sp-contact-info i {
    color: var(--ut-brand-white) !important;
}

/* Header and standard desktop navigation. */
#sp-header {
    background-color: var(--ut-brand-header) !important;
}
#sp-header .sp-megamenu-parent > li > a,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a {
    color: var(--ut-brand-body-text);
}
#sp-header .sp-megamenu-parent > li:hover > a,
#sp-header .sp-megamenu-parent > li.active > a,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
    color: var(--ut-brand-navy);
}
#sp-header .sp-megamenu-parent .sp-dropdown-inner {
    background-color: var(--ut-brand-white);
}

/* Mobile navigation only; do not change menu layout or its breakpoints. */
#offcanvas-toggler .burger-icon > span {
    background-color: var(--ut-brand-navy);
}
.offcanvas-menu {
    background-color: var(--ut-brand-white);
    color: var(--ut-brand-body-text);
}
.offcanvas-menu .offcanvas-inner ul.menu > li > a,
.offcanvas-menu .offcanvas-inner ul.menu > li > span {
    color: var(--ut-brand-body-text);
}
.offcanvas-menu .offcanvas-inner ul.menu > li > a:hover,
.offcanvas-menu .offcanvas-inner ul.menu > li > a:focus,
.offcanvas-menu .offcanvas-inner ul.menu > li > a:active {
    color: var(--ut-brand-navy);
}

/* Helix page title, where present. Does not modify SPPB sections. */
.sp-page-title {
    background-color: var(--ut-brand-navy);
}

/* Footer: prevent fallback to Helix #171717. */
#sp-footer,
#sp-bottom {
    background-color: var(--ut-brand-navy) !important;
    color: var(--ut-brand-white) !important;
}
#sp-footer a,
#sp-bottom a {
    color: var(--ut-brand-footer-link) !important;
}
#sp-footer a:hover,
#sp-footer a:focus,
#sp-footer a:active,
#sp-bottom a:hover,
#sp-bottom a:focus,
#sp-bottom a:active {
    color: var(--ut-brand-white) !important;
}

/* END ULTIMATECH — BRAND COLOR GUARD v1.1 */
