/* Shared portal accent. Loaded after module styles; photographs and advert creatives are independent. */
:root,html[data-theme=dark]{--lime:var(--omega-main,#d4f447);--accent:var(--omega-accent-light,#495d0d)}
html[data-theme=dark]{--accent:var(--omega-accent-dark,#d4f447)}
.omega-home .omega-surface-light,.omega-header-light :is(.site-header,.topbar),.omega-footer-light .omega-footer{
 --lime:var(--omega-main,#d4f447);--accent:var(--omega-accent-light,#495d0d)
}
.omega-home .omega-surface-dark,.omega-header-dark :is(.site-header,.topbar),.omega-footer-dark .omega-footer{
 --lime:var(--omega-main,#d4f447);--accent:var(--omega-accent-dark,#d4f447)
}
html[data-theme=dark] :is(.site-header,.topbar,.omega-footer){--accent:var(--omega-accent-dark,#d4f447)}
.omega-home :is(.omega-surface-light,.omega-surface-dark) .eyebrow,
.omega-home :is(.omega-surface-light,.omega-surface-dark) .eyebrow a{color:var(--accent)}
/* Text over a photograph needs the bright text accent regardless of the surrounding surface. */
.omega-home .omega-layout-A1 .eyebrow,.omega-home .omega-layout-A1 .eyebrow a{color:var(--omega-accent-dark,#d4f447)}
.news-slider .story-hero:not(:has(.wp-block-post-featured-image)):before{color:var(--omega-accent-dark,#d4f447)}
.omega-home .news-slider .eyebrow,.omega-home .news-slider .eyebrow a{color:var(--omega-home-slider-category-text,var(--omega-slider-category-text,var(--omega-on-main,#111d31)))}
.brand-mark,.button,.search-form button,.tip-box,.portal-search button,.skip-link,.omega-news-label{
 background:var(--omega-main,#d4f447);color:var(--omega-on-main,#111d31)
}
.tip-box .eyebrow,.story-hero .eyebrow{color:var(--omega-on-main,#111d31)}
.search-form button:hover,.button:hover,.omega-policy-nav a:is(:hover,:focus-visible){background:var(--omega-main,#d4f447);color:var(--omega-on-main,#111d31)}
.site-header :is(.icon-button:hover,.icon-button:focus-visible),.omega-footer .omega-footer-tile:is(:hover,:focus-visible),.omega-privacy-buttons button:hover{
 background:var(--omega-main,#d4f447);border-color:var(--omega-main,#d4f447);color:var(--omega-on-main,#111d31)!important
}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,.omega-back-top:focus-visible,.omega-gallery-trigger:focus-visible{outline-color:var(--accent)}
.omega-lightbox :focus-visible{outline-color:var(--omega-accent-dark,#d4f447)}
/* Calendar controls and date badges share the portal palette, including AJAX-rendered past events. */
.tribe-common,html[data-theme=dark] .tribe-common,#tribe-events-pg-template,html[data-theme=dark] #tribe-events-pg-template{
 --tec-color-link-accent:var(--accent);--tec-color-link-accent-hover:var(--accent);
 --tec-color-accent-primary:var(--omega-main);--tec-color-accent-primary-hover:var(--omega-main);
 --tec-color-button-primary:var(--omega-main);--tec-color-button-primary-hover:var(--omega-main);--tec-color-button-primary-active:var(--omega-main);
 --tec-color-text-events-bar-submit-button:var(--omega-on-main);--tec-color-text-events-bar-submit-button-hover:var(--omega-on-main);--tec-color-text-events-bar-submit-button-active:var(--omega-on-main);
 --tec-color-background-events-bar-submit-button:var(--omega-main);--tec-color-background-events-bar-submit-button-hover:var(--omega-main);--tec-color-background-events-bar-submit-button-active:var(--omega-main)
}
.omega-event-date,.omega-event-list-builder :is(.tribe-events-calendar-list__event-date-tag-datetime,.tribe-events-calendar-latest-past__event-date-tag-datetime){color:var(--omega-on-main,#111d31)}
.omega-event-list-builder .tribe-events :is(.tribe-events-calendar-list__event-date-tag-datetime,.tribe-events-calendar-latest-past__event-date-tag-datetime) *,
html[data-theme=dark] .tribe-events .datepicker td :is(.active,:hover){color:var(--omega-on-main,#111d31)}
@media(max-width:767px){
 .tribe-events :is(.tribe-events-calendar-list__event-date-tag-datetime,.tribe-events-calendar-list__event-date-tag-weekday,.tribe-events-calendar-list__event-date-tag-daynum){color:var(--omega-on-main,#111d31)}
}

/* NEWS uses its own saved colors; empty PA fields fall back to the portal palette. */
.omega-news-label{background:var(--omega-news-badge-bg,var(--omega-main,#d4f447))!important;color:var(--omega-news-badge-text,var(--omega-on-main,#111d31))!important}
.omega-home .omega-surface-light,.omega-home .omega-surface-dark{--lime:var(--omega-main,#d4f447)}

/* Keep title interaction underlines on one user-selected color across modules. */
.omega-neighbour:is(:focus-visible,:active) .omega-neighbour-title,
.omega-neighbour:is(.omega-touch-shift,:focus-visible,:active) .omega-neighbour-title,
.omega-editorial-link.omega-editorial-interacting h3{ text-decoration-color:var(--omega-interaction-underline,var(--lime,#d4f447))!important }
@media(hover:hover){.omega-neighbour:hover .omega-neighbour-title{text-decoration-color:var(--omega-interaction-underline,var(--lime,#d4f447))!important}}
.omega-event h3 span,.omega-popular-title-text{background-image:linear-gradient(var(--omega-interaction-underline,var(--lime,#d4f447)),var(--omega-interaction-underline,var(--lime,#d4f447)))}

/* Menu text can be set for each reader theme; the PHP variables keep both values valid. */
.site-header{--omega-menu-copy:var(--omega-menu-text-light,var(--ink,#111d31))}
body.omega-header-dark .site-header,html[data-theme=dark] .site-header{--omega-menu-copy:var(--omega-menu-text-dark,var(--omega-menu-text-light,var(--ink,#f3f6fa)))}
.site-header{--omega-menu-active-bg:var(--omega-menu-active-bg-light,var(--omega-main,#d4f447));--omega-menu-active-copy:var(--omega-menu-active-text-light,var(--omega-on-main,#111d31))}
body.omega-header-dark .site-header,html[data-theme=dark] .site-header{--omega-menu-active-bg:var(--omega-menu-active-bg-dark,var(--omega-main,#d4f447));--omega-menu-active-copy:var(--omega-menu-active-text-dark,var(--omega-on-main,#111d31))}
.site-header .omega-menu :is(.primary-nav a,.more-nav summary,.more-nav nav a){color:var(--omega-menu-copy)!important}

/* Tile-menu hover uses the main color; the active tile has independent light/dark colors. */
.site-header .omega-menu:not(.omega-menu--classic) .primary-nav a:is(:hover,:focus-visible){
 background:var(--omega-main,#d4f447)!important;border-color:var(--omega-main,#d4f447)!important;color:var(--omega-on-main,#111d31)!important
}
.site-header .omega-menu:not(.omega-menu--classic) .primary-nav a[aria-current="page"],
.site-header .omega-menu:not(.omega-menu--classic) .primary-nav .current-menu-item>a{
 background:var(--omega-menu-active-bg,var(--omega-main,#d4f447))!important;border-color:var(--omega-menu-active-bg,var(--omega-main,#d4f447))!important;color:var(--omega-menu-active-copy,var(--omega-on-main,#111d31))!important
}
.site-header .omega-menu:not(.omega-menu--classic) .primary-nav a[aria-current="page"],
.site-header .omega-menu:not(.omega-menu--classic) .primary-nav .current-menu-item>a{box-shadow:0 3px 10px #111d3115}

/* The classic menu keeps its clear surface; active text and underline follow the selected palette. */
.site-header .omega-menu--classic .primary-nav a:is(:hover,:focus-visible),
.site-header .omega-menu--classic .primary-nav a[aria-current="page"],
.site-header .omega-menu--classic .primary-nav .current-menu-item>a{border-bottom-color:var(--omega-interaction-underline,var(--omega-main,#d4f447))!important}
.site-header .omega-menu--classic .primary-nav a[aria-current="page"],
.site-header .omega-menu--classic .primary-nav .current-menu-item>a{color:var(--omega-menu-active-copy,var(--omega-menu-copy))!important}
.site-header .omega-menu :is(a,button,summary):focus-visible{outline-color:var(--omega-main,#d4f447)!important}
