/* ==========================================================
   BSYC – one font for the whole site (owner, 2026-10-15): the Avenir Next Pro family.
   Avenir Next Pro is a commercial font with no free web version, so it is named first and shows wherever the visitor
   has it or Avenir Next installed (Apple devices); elsewhere the page falls back to Figtree, a free face close to Avenir Next (owner's choice),
   loaded below. To show Avenir Next Pro to every visitor, add a licensed web font (Adobe Fonts kit or
   purchased files) and keep 'Avenir Next Pro' as its family name.
   This overrides the Elementor kit's --site-font, the theme's heading font (Noto Sans), the fonts set on the header
   menu and other Phlox widgets (Montserrat, Rufina, Poppins) and The Events Calendar's own font. Only text elements
   are listed, so icon fonts (auxin-front, Font Awesome, eicons, dashicons) keep their own. Loaded on every front-end
   page by includes/site.php.
   ========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700;800&display=swap');

html:root {
  --bsy-font: 'Avenir Next Pro', 'Avenir Next', 'Avenir', 'Figtree', system-ui, sans-serif;
  --site-font: var(--bsy-font);   /* html:root outranks the Elementor kit's :root */
  --tec-font-family-sans-serif: var(--bsy-font);
  --tec-font-family-base: var(--bsy-font);
}

body,
h1, h2, h3, h4, h5, h6,
.aux-h1, .aux-h2, .aux-h3, .aux-h4, .aux-h5, .aux-h6,
.aux-modern-heading-primary, .aux-modern-heading-secondary, .aux-modern-heading-description,
.aux-menu-item > .aux-item-content, .aux-menu-label,
.aux-button .aux-text,
.aux-copyright, .aux-copyright small,
.elementor-heading-title, .elementor-widget-text-editor,
.entry-title, .page-title {
  font-family: var(--bsy-font) !important;
}

/* Fade-in (site.php): hidden from the first paint, faded in when scrolled into view. Not for visitors who ask for
   reduced motion. */
html.bsy-js .bsy-fade { opacity: 0; transition: opacity .9s ease-in; }
html.bsy-js .bsy-fade.bsy-in { opacity: 1; }
@media (prefers-reduced-motion: reduce) { html.bsy-js .bsy-fade { opacity: 1; transition: none; } }

/* One gold: the site's #E3CC4F (owner, 2026-10-15). The Member's Articles carry their subheadings in an inline
   #ffcc00 (from the article design they were copied from); they are V3 Elementor posts, so the colour is overridden
   here rather than edited in each post. !important beats the inline style. */
[style*="#ffcc00" i], [style*="rgb(255, 204, 0)" i] { color: #E3CC4F !important; }

/* The footer (Elementor template 69, V4). Elementor does not print a template's own element styles on the pages, so
   the footer is styled here through its class names; !important beats the V4 grid's defaults (three equal columns,
   20px gaps, 10px padding). The Hours table is two narrow columns, centred. */
.bsy-footer { background: #131313; font-family: var(--bsy-font); padding: 0 !important; }
.bsy-footer-band { background: #131313; padding: 28px 24px 24px !important; }
.bsy-footer-wrap { max-width: 1180px; margin: 0 auto; padding: 0 !important; display: flex; flex-direction: column; align-items: center; text-align: center; }
.bsy-footer .bsy-rule { width: 100% !important; min-width: 0 !important; height: 2px !important; padding: 0 !important; margin: 0 0 10px !important; background: #E3CC4F !important; }
.bsy-footer .bsy-h2 { color: #FFFFFF; font-size: 24px !important; font-weight: 600; line-height: 1.2; margin: 0 0 10px !important; }
.bsy-hours {
  display: grid !important; grid-template-columns: auto auto !important; grid-template-rows: none !important;
  grid-auto-rows: auto; justify-content: center; column-gap: 20px !important; row-gap: 2px !important;
  width: auto !important; padding: 0 !important; margin: 0 auto; font-size: 15px; line-height: 1.5; text-align: left;
}
.bsy-hours-day { color: #FFFFFF; font-weight: 600; }
.bsy-hours-time { color: rgba(255, 255, 255, 0.7); }
.bsy-copyright-bar { background: #000000; padding: 10px 24px !important; box-shadow: inset 0 1px 0 #E3CC4F; text-align: center; }
.bsy-copyright { display: block; color: rgba(255, 255, 255, 0.7); font-size: 13px; }
