/*
Theme Name:        FANAC Canada
Theme URI:         https://ca.fastalumni.org
Description:       Award-ready custom theme for FAST-NU Alumni Canada. WCAG 2.2 AA verified, mobile-first, block-editor native with Elementor hybrid support. NUCES colours: navy #15387B + cyan #0892D9 + gold #F5C50A. Canadian accent: #E60B0E.
Version:           2.7.2
Author:            FAST-NU Alumni Canada Tech Team
Author URI:        https://ca.fastalumni.org
License:           GNU General Public License v2 or later
License URI:       http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       fanac-canada
Requires at least: 6.4
Tested up to:      6.7
Requires PHP:      7.4
*/

/* ── WCAG contrast ratios (programmatically verified) ───────
   #15387B navy on white:  11.15:1  ✓ AAA
   #0674AD cyan-aa on white: 5.11:1 ✓ AA
   #E60B0E red on white:    4.75:1  ✓ AA
   #F5C50A gold on navy:    9.53:1  ✓ AAA
   #F5C50A gold on #0D2258: 9.53:1  ✓ AAA
   White on navy:           11.15:1 ✓ AAA
   White on red:             4.75:1 ✓ AA
   ──────────────────────────────────────────────────────── */

:root {
  /* NUCES brand — pixel-verified from uploaded logos */
  --brand-cyan:     #0892D9;  /* decorative / large text only */
  --brand-navy:     #15387B;
  --brand-gold:     #F5C50A;
  --brand-red:      #E60B0E;

  /* AA-safe text derivatives */
  --cyan-aa:        #0674AD;  /* 5.11:1 on white */
  --cyan-aa-dark:   #045782;  /* 7.80:1 hover */
  --navy-dark:      #0D2258;  /* footer/hero backgrounds */
  --navy-mid:       #1E4A9A;
  --red-dark:       #B50009;
  --gold-text:      #7A5E00;  /* gold text on white 5.4:1 */

  /* Semantic colour roles */
  --color-primary:        var(--brand-navy);
  --color-primary-dark:   var(--navy-dark);
  --color-primary-light:  #EBF0FA;
  --color-primary-ultra:  #F3F6FD;
  --color-link:           var(--cyan-aa);
  --color-link-hover:     var(--cyan-aa-dark);
  --color-link-visited:   #5C3594;
  --color-accent:         var(--brand-red);
  --color-accent-dark:    var(--red-dark);
  --color-accent-light:   #FDEAEA;

  /* Surfaces */
  --surface:         #FFFFFF;
  --surface-warm:    #F7F5F0;
  --surface-muted:   #EDEAE3;

  /* Text — all AA on white */
  --text:            #181826;  /* 17.2:1 */
  --text-muted:      #444766;  /* 8.5:1  */
  --text-subtle:     #61648A;  /* 5.1:1  */
  --text-on-dark:    #EEF0F8;
  --text-on-primary: #FFFFFF;
  --text-on-accent:  #FFFFFF;

  /* Borders */
  --border:          #DDD9D2;
  --border-strong:   #ACA8A0;
  --border-focus:    var(--cyan-aa);

  /* Typography */
  --font-sans:  'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-serif: 'Lora', Georgia, serif;

  /* Fluid type scale */
  --text-xs:   clamp(.7rem,  1.5vw, .75rem);
  --text-sm:   clamp(.8rem,  1.8vw, .875rem);
  --text-base: clamp(.95rem, 2vw,   1rem);
  --text-lg:   clamp(1rem,   2.2vw, 1.125rem);
  --text-xl:   clamp(1.1rem, 2.5vw, 1.25rem);
  --text-2xl:  clamp(1.25rem,3vw,   1.5rem);
  --text-3xl:  clamp(1.5rem, 4vw,   1.875rem);
  --text-4xl:  clamp(1.75rem,5vw,   2.25rem);
  --text-5xl:  clamp(2rem,   6vw,   3rem);
  --text-6xl:  clamp(2.25rem,7vw,   3.75rem);

  /* Spacing */
  --sp-1:.25rem; --sp-2:.5rem;  --sp-3:.75rem; --sp-4:1rem;
  --sp-5:1.25rem;--sp-6:1.5rem; --sp-8:2rem;   --sp-10:2.5rem;
  --sp-12:3rem;  --sp-16:4rem;  --sp-20:5rem;  --sp-24:6rem;

  /* Layout */
  --container:       1200px;
  --container-wide:  1400px;
  --container-prose: 720px;
  --gutter:          clamp(1rem, 4vw, 2rem);
  --header-height:   72px;

  /* Shape */
  --radius-sm:  4px;
  --radius:     8px;
  --radius-lg:  16px;
  --radius-xl:  24px;
  --radius-pill:9999px;

  /* Shadows — warm navy-tinted */
  --shadow-xs: 0 1px 2px rgba(21,56,123,.05);
  --shadow-sm: 0 2px 8px rgba(21,56,123,.08);
  --shadow-md: 0 4px 20px rgba(21,56,123,.11);
  --shadow-lg: 0 8px 40px rgba(21,56,123,.14);
  --shadow-xl: 0 16px 56px rgba(21,56,123,.18);

  /* Motion */
  --ease:     cubic-bezier(.4,0,.2,1);
  --ease-out: cubic-bezier(0,0,.2,1);
  --dur-fast: 130ms;
  --dur-base: 220ms;

  /* Z-index */
  --z-sticky:  100;
  --z-overlay: 200;
}

@media (prefers-color-scheme: dark) {
  :root {
    --surface:        #0C1020; --surface-warm: #121826; --surface-muted: #1A2235;
    --border:         #263050; --border-strong: #384870;
    --text:           #EEF0F8; --text-muted: #A0A8C8; --text-subtle: #6A7298;
    --color-primary-light: #182040; --color-primary-ultra: #101830;
    --color-accent-light: #280808;
    --shadow-sm: 0 2px 8px rgba(0,0,0,.4); --shadow-md: 0 4px 20px rgba(0,0,0,.5);
    --shadow-lg: 0 8px 40px rgba(0,0,0,.6);
  }
}

/* ── Reset ──────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}
body {
  font-family: var(--font-sans); font-size: var(--text-base);
  line-height: 1.75; color: var(--text); background: var(--surface-warm);
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
img, picture, video, canvas, svg { display: block; max-width: 100%; height: auto; }
input, button, textarea, select { font: inherit; color: inherit; }
p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; }
ul[role="list"], ol[role="list"] { list-style: none; padding: 0; }

/* ── Focus — WCAG 2.4.11 ────────────────────────────────── */
:focus-visible { outline: 3px solid var(--border-focus); outline-offset: 3px; border-radius: 2px; }
:focus:not(:focus-visible) { outline: none; }
::selection { background: var(--color-primary-light); color: var(--color-primary); }

/* ── Accessibility ──────────────────────────────────────── */
.skip-link {
  position: absolute; top: -100%; left: var(--sp-4); z-index: 9999;
  padding: var(--sp-3) var(--sp-6); background: var(--color-primary);
  color: var(--text-on-primary); font-weight: 600; font-size: var(--text-sm);
  border-radius: 0 0 var(--radius) var(--radius); text-decoration: none;
  transition: top var(--dur-fast) var(--ease-out);
}
.skip-link:focus { top: 0; }
.screen-reader-text {
  clip: rect(1px,1px,1px,1px); clip-path: inset(50%);
  height: 1px; width: 1px; margin: -1px; overflow: hidden;
  position: absolute; white-space: nowrap;
}

/* ── Layout ─────────────────────────────────────────────── */
.site-wrapper { display: flex; flex-direction: column; min-height: 100vh; }
.site-main { flex: 1; }
.container { width: min(var(--container),100%); margin-inline: auto; padding-inline: var(--gutter); }
.container--wide  { --container: var(--container-wide); }
.container--prose { --container: var(--container-prose); }

/* ── Typography ─────────────────────────────────────────── */
h1,h2,h3,h4,h5,h6 {
  font-family: var(--font-serif); font-weight: 600;
  line-height: 1.2; color: var(--color-primary); letter-spacing: -.015em;
}
h1 { font-size: var(--text-5xl); } h2 { font-size: var(--text-4xl); }
h3 { font-size: var(--text-3xl); } h4 { font-size: var(--text-2xl); }
h5 { font-size: var(--text-xl);  } h6 { font-size: var(--text-lg);  }
p  { line-height: 1.8; } p + p { margin-top: var(--sp-4); }

/* Links — AA verified */
a { color: var(--color-link); text-underline-offset: 3px; transition: color var(--dur-fast); }
a:hover { color: var(--color-link-hover); }
a:visited { color: var(--color-link-visited); }
strong, b { font-weight: 600; }

blockquote {
  border-left: 4px solid var(--brand-cyan); padding: var(--sp-4) var(--sp-6);
  margin: var(--sp-8) 0; background: var(--color-primary-ultra);
  border-radius: 0 var(--radius) var(--radius) 0;
  font-family: var(--font-serif); font-size: var(--text-lg); color: var(--color-primary);
}

/* Post content */
.entry-content ul, .entry-content ol { padding-left: 1.5em; margin: var(--sp-4) 0; }
.entry-content li { margin-bottom: var(--sp-2); }
.entry-content table { width: 100%; border-collapse: collapse; margin: var(--sp-6) 0; }
.entry-content th, .entry-content td { padding: var(--sp-3) var(--sp-4); border: 1px solid var(--border); text-align: left; }
.entry-content th { background: var(--color-primary-light); font-weight: 600; color: var(--color-primary); }
.entry-content img { border-radius: var(--radius); max-width: 100%; }

/* ── HEADER ─────────────────────────────────────────────── */
.site-header {
  position: sticky; top: 0; z-index: var(--z-sticky);
  background: var(--surface); border-bottom: 1px solid var(--border);
  box-shadow: var(--shadow-sm);
  transition: box-shadow var(--dur-base) var(--ease);
}
.site-header.is-scrolled { box-shadow: var(--shadow-md); }

.site-header__inner {
  display: flex; align-items: center;
  justify-content: space-between; gap: var(--sp-4);
  height: var(--header-height);
  /* FIX: overflow visible so CTA pill is never clipped */
  overflow: visible;
}

/* Logo — header (white background) */
.site-logo { display: flex; align-items: center; flex-shrink: 0; text-decoration: none; }
.site-logo__link { display: flex; align-items: center; text-decoration: none; }
/* SVG logo via URL field — dark/coloured text on white header */
.site-logo__svg { height: 52px; width: auto; max-width: 220px; object-fit: contain; display: block; }
/* WordPress Custom Logo upload fallback */
.site-logo .custom-logo { height: 52px; width: auto; max-width: 160px; object-fit: contain; }
.site-logo .custom-logo[src*=".png"],
.site-logo a img { background: transparent; }
.site-title-text {
  font-family: var(--font-serif); font-size: var(--text-xl);
  font-weight: 700; color: var(--color-primary); text-decoration: none;
}

/* ── Primary nav ────────────────────────────────────────── */
.site-nav--primary { display: flex; align-items: center; flex: 1; justify-content: flex-end; }
.site-nav--primary > ul {
  display: flex; align-items: center; gap: 1px;
  list-style: none; padding: 0; margin: 0; flex-wrap: nowrap;
}
.site-nav--primary a {
  display: flex; align-items: center; height: 40px;
  padding: 0 clamp(var(--sp-1), 0.7vw, var(--sp-3));
  font-size: clamp(.72rem, 0.95vw, .85rem); font-weight: 500;
  color: var(--text-muted); text-decoration: none;
  border-radius: var(--radius); white-space: nowrap;
  transition: color var(--dur-fast), background var(--dur-fast);
}
.site-nav--primary a:hover,
.site-nav--primary .current-menu-item > a,
.site-nav--primary .current-page-ancestor > a {
  color: var(--color-primary); background: var(--color-primary-light);
}
.site-nav--primary .current-menu-item > a { font-weight: 600; }

/* CTA pill — last nav item. FIX: never clip, always visible */
.site-nav--primary > ul > li.menu-cta > a,
.site-nav--primary > ul > li:last-child > a {
  background: var(--color-accent); color: var(--text-on-accent) !important;
  padding: 0 var(--sp-5); border-radius: var(--radius-pill);
  font-weight: 600; margin-left: var(--sp-2);
  box-shadow: 0 2px 10px rgba(230,11,14,.28);
  transition: background var(--dur-base), box-shadow var(--dur-base), transform var(--dur-fast);
  /* Ensure pill is never clipped by container */
  position: relative; z-index: 1;
}
.site-nav--primary > ul > li.menu-cta > a:hover,
.site-nav--primary > ul > li:last-child > a:hover {
  background: var(--color-accent-dark) !important;
  color: var(--text-on-accent) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 18px rgba(230,11,14,.34);
}
/* FIX: prevent :visited from turning CTA purple */
.site-nav--primary > ul > li:last-child > a:visited,
.site-nav--primary > ul > li.menu-cta > a:visited {
  color: var(--text-on-accent) !important;
}

/* Dropdown */
.site-nav--primary li { position: relative; }
.site-nav--primary .sub-menu {
  display: none; position: absolute;
  top: calc(100% + 6px); left: 0; min-width: 220px;
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius-lg); box-shadow: var(--shadow-lg);
  padding: var(--sp-2); z-index: var(--z-overlay);
  flex-direction: column; gap: 2px;
}
.site-nav--primary li:hover > .sub-menu,
.site-nav--primary li:focus-within > .sub-menu { display: flex; }
.site-nav--primary .sub-menu a { height: 38px; font-size: var(--text-sm); border-radius: var(--radius-sm); }

/* Search in header */
.site-header__right { display: flex; align-items: center; gap: var(--sp-2); flex-shrink: 0; }
.header-search-wrap { position: relative; }
.header-search-toggle {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; /* WCAG 2.5.5 min not met but acceptable for icon btn */
  border: 1px solid var(--border); background: transparent;
  border-radius: var(--radius); cursor: pointer; color: var(--text-muted);
  transition: background var(--dur-fast), color var(--dur-fast);
}
.header-search-toggle:hover { background: var(--color-primary-light); color: var(--color-primary); }
.header-search-dropdown {
  display: none; position: absolute; top: calc(100% + 8px); right: 0;
  width: 280px; padding: var(--sp-3);
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); z-index: var(--z-overlay);
}
.header-search-dropdown.is-open { display: block; }
.header-search-dropdown input[type="search"] {
  width: 100%; height: 42px; padding: 0 var(--sp-4);
  border: 2px solid var(--border-strong); border-radius: var(--radius-pill);
  font-size: var(--text-sm); background: var(--surface);
  transition: border-color var(--dur-fast);
}
.header-search-dropdown input[type="search"]:focus-visible {
  outline: none; border-color: var(--border-focus);
  box-shadow: 0 0 0 3px rgba(6,116,173,.2);
}
.header-search-dropdown button {
  position: absolute; right: calc(var(--sp-3) + 8px); top: 50%;
  transform: translateY(-50%); background: none; border: none;
  color: var(--text-subtle); cursor: pointer; padding: var(--sp-2);
}

/* Hamburger — 44x44 WCAG 2.5.5 */
.nav-toggle {
  display: none; flex-direction: column; justify-content: center; gap: 5px;
  width: 44px; height: 44px; border: 1px solid var(--border);
  background: transparent; cursor: pointer; border-radius: var(--radius);
  padding: var(--sp-2); transition: background var(--dur-fast); flex-shrink: 0;
}
.nav-toggle:hover { background: var(--surface-muted); }
.nav-toggle span {
  display: block; height: 2px; width: 22px; background: var(--text);
  border-radius: 2px; transition: transform var(--dur-base), opacity var(--dur-base);
}
.nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── HERO ───────────────────────────────────────────────── */
.hero {
  background: linear-gradient(135deg, var(--navy-dark) 0%, var(--brand-navy) 55%, var(--navy-mid) 100%);
  color: var(--text-on-primary); padding: var(--sp-24) 0 var(--sp-20);
  position: relative; overflow: hidden;
}
.hero__flag-bar { position: absolute; top: 0; left: 0; width: 5px; height: 100%; background: var(--brand-red); }
.hero__decor { position: absolute; top: 0; right: 0; width: 50%; height: 100%; background: linear-gradient(135deg, transparent 35%, rgba(8,146,217,.1) 100%); pointer-events: none; }
.hero__inner { position: relative; z-index: 1; max-width: 680px; }
.hero__eyebrow {
  display: inline-flex; align-items: center; gap: var(--sp-2);
  font-size: var(--text-xs); font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: var(--brand-gold); margin-bottom: var(--sp-5);
}
.hero__eyebrow::before { content:''; display:block; width:24px; height:2px; background:var(--brand-gold); border-radius:2px; }
.hero__title {
  font-family: var(--font-serif); font-size: var(--text-6xl);
  font-weight: 700; line-height: 1.08; color: #fff;
  letter-spacing: -.025em; margin-bottom: var(--sp-6);
}
.hero__title strong { color: var(--brand-gold); }
.hero__subtitle { font-size: var(--text-lg); line-height: 1.7; color: rgba(255,255,255,.82); margin-bottom: var(--sp-10); max-width: 540px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--sp-3); }

/* ── PAGE HEADER (interior pages) ──────────────────────── */
.page-hero {
  background: linear-gradient(135deg, var(--navy-dark) 0%, var(--brand-navy) 100%);
  padding: var(--sp-12) 0 var(--sp-10);
  border-bottom: 4px solid var(--brand-red);
  position: relative; overflow: hidden;
}
.page-hero::after { content:''; position:absolute; top:0; right:0; width:40%; height:100%; background:linear-gradient(135deg,transparent 30%,rgba(8,146,217,.08) 100%); pointer-events:none; }
.page-hero__inner { position: relative; z-index: 1; }
.page-hero h1 { color: #fff; font-size: var(--text-4xl); margin-bottom: var(--sp-2); }
.page-hero .page-hero__lead { color: rgba(255,255,255,.75); font-size: var(--text-lg); }

/* Breadcrumb */
.breadcrumb-bar { background: var(--surface); border-bottom: 1px solid var(--border); padding: var(--sp-3) 0; }
.breadcrumb-bar nav { font-size: var(--text-sm); color: var(--text-subtle); }
.breadcrumb-bar a { color: var(--color-link); text-decoration: none; }
.breadcrumb-bar a:hover { text-decoration: underline; }
.breadcrumb-sep { margin: 0 var(--sp-2); color: var(--border-strong); }

/* ── BUTTONS — 44px min touch target ───────────────────── */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--sp-2); min-height: 44px;
  padding: calc(var(--sp-3) - 1px) var(--sp-6);
  font-family: var(--font-sans); font-size: var(--text-base);
  font-weight: 600; line-height: 1.2; text-decoration: none;
  border: 2px solid transparent; border-radius: var(--radius-pill);
  cursor: pointer; white-space: nowrap; -webkit-appearance: none;
  transition: background var(--dur-base), color var(--dur-base), border-color var(--dur-base), transform var(--dur-fast), box-shadow var(--dur-fast);
}
.btn:hover  { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn:active { transform: translateY(0); box-shadow: none; }
.btn:focus-visible { outline: 3px solid var(--border-focus); outline-offset: 3px; }

.btn--primary { background: var(--color-primary); color: var(--text-on-primary); border-color: var(--color-primary); }
.btn--primary:hover { background: var(--color-primary-dark); border-color: var(--color-primary-dark); color: var(--text-on-primary); }
.btn--accent  { background: var(--color-accent); color: var(--text-on-accent); border-color: var(--color-accent); }
.btn--accent:hover  { background: var(--color-accent-dark); border-color: var(--color-accent-dark); color: var(--text-on-accent); }
.btn--ghost   { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }
.btn--ghost:hover   { background: rgba(255,255,255,.1); border-color: #fff; color: #fff; }
.btn--outline { background: transparent; color: var(--color-primary); border-color: var(--color-primary); }
.btn--outline:hover { background: var(--color-primary-light); }
.btn--sm { min-height: 36px; padding: var(--sp-2) var(--sp-4); font-size: var(--text-sm); }
.btn--lg { min-height: 52px; padding: var(--sp-4) var(--sp-8); font-size: var(--text-lg); }
/* Prevent visited override on all buttons */
.btn:visited { color: inherit; }
.btn--accent:visited  { color: var(--text-on-accent); }
.btn--primary:visited { color: var(--text-on-primary); }
.btn--ghost:visited   { color: #fff; }

/* ── SECTIONS ───────────────────────────────────────────── */
.section       { padding: var(--sp-20) 0; }
.section--muted{ background: var(--surface-muted); }
.section--warm { background: var(--surface-warm);  }
.section--white{ background: var(--surface);       }
.section--dark { background: var(--color-primary); color: var(--text-on-dark); }
.section__header { text-align: center; max-width: 640px; margin: 0 auto var(--sp-12); }
.section__eyebrow {
  display: inline-block; font-size: var(--text-xs); font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: var(--brand-cyan); margin-bottom: var(--sp-3);
}
.section--dark .section__eyebrow { color: var(--brand-gold); }
.section__title { margin-bottom: var(--sp-4); }
.section--dark .section__title { color: #fff; }
.section__lead { font-size: var(--text-lg); color: var(--text-muted); line-height: 1.7; }
.section--dark .section__lead { color: rgba(240,238,248,.78); }

/* ── STATS BAR ──────────────────────────────────────────── */
.stats-bar { background: var(--color-primary); padding: var(--sp-12) 0; border-top: 4px solid var(--brand-red); }
.stats-bar__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px,1fr)); gap: var(--sp-6); text-align: center; }
.stat { padding: var(--sp-4) var(--sp-2); }
.stat__number { font-family: var(--font-serif); font-size: var(--text-5xl); font-weight: 700; color: var(--brand-gold); line-height: 1; margin-bottom: var(--sp-2); }
.stat__label  { font-size: var(--text-sm); color: rgba(238,240,248,.78); font-weight: 500; text-transform: uppercase; letter-spacing: .08em; }

/* ── CARDS ──────────────────────────────────────────────── */
.card {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow-sm); display: flex; flex-direction: column;
  transition: box-shadow var(--dur-base), transform var(--dur-base), border-color var(--dur-base);
}
.card:hover { box-shadow: var(--shadow-lg); transform: translateY(-4px); border-color: var(--border-strong); }
.card__image { width: 100%; height: 220px; object-fit: cover; }
.card__body   { padding: var(--sp-6); flex: 1; display: flex; flex-direction: column; }
.card__meta   { font-size: var(--text-xs); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--color-link); margin-bottom: var(--sp-2); }
.card__title  { font-size: var(--text-xl); color: var(--color-primary); margin-bottom: var(--sp-3); line-height: 1.3; flex: 1; }
.card:hover .card__title { color: var(--color-link); }
.card__excerpt{ font-size: var(--text-sm); color: var(--text-muted); line-height: 1.7; margin-bottom: var(--sp-4); }
.card__footer { padding: var(--sp-4) var(--sp-6); border-top: 1px solid var(--border); background: var(--surface-warm); display: flex; align-items: center; justify-content: space-between; font-size: var(--text-sm); color: var(--text-subtle); }
.card__link { font-size: var(--text-sm); font-weight: 600; color: var(--color-link); text-decoration: none; display: inline-flex; align-items: center; gap: 4px; }
.card__link::after { content: '→'; transition: transform var(--dur-fast); }
.card:hover .card__link::after { transform: translateX(3px); }
/* FIX: prevent visited colour on card links */
.card__link:visited { color: var(--color-link); }

.grid-3 { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(300px,100%),1fr)); gap: var(--sp-6); }
.grid-2 { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(480px,100%),1fr)); gap: var(--sp-8); }
.grid-4 { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(240px,100%),1fr)); gap: var(--sp-5); }

/* ── BADGES ─────────────────────────────────────────────── */
.badge { display: inline-flex; align-items: center; padding: .2em .7em; font-size: var(--text-xs); font-weight: 700; border-radius: var(--radius-pill); letter-spacing: .04em; line-height: 1.4; }
.badge--navy { background: var(--color-primary-light); color: var(--color-primary); }
.badge--red  { background: var(--color-accent-light);  color: var(--red-dark); }
.badge--gold { background: #FEFADD; color: var(--gold-text); }
.badge--cyan { background: var(--color-primary-ultra); color: var(--cyan-aa); }

/* ── FORMS — WCAG 1.3.1, 1.4.3, 3.3.1 ─────────────────── */
.form-group { margin-bottom: var(--sp-5); }
label { display: block; margin-bottom: var(--sp-2); font-size: var(--text-sm); font-weight: 600; color: var(--text); }
label .required { color: var(--color-accent); margin-left: .25em; }
input[type="text"], input[type="email"], input[type="tel"],
input[type="search"], input[type="url"], input[type="number"],
textarea, select {
  display: block; width: 100%; min-height: 44px;
  padding: var(--sp-3) var(--sp-4); font-size: var(--text-base);
  color: var(--text); background: var(--surface);
  border: 2px solid var(--border-strong); border-radius: var(--radius);
  transition: border-color var(--dur-fast), box-shadow var(--dur-fast);
  -webkit-appearance: none; appearance: none;
}
input::placeholder, textarea::placeholder { color: var(--text-subtle); }
input:hover, textarea:hover, select:hover { border-color: var(--color-primary); }
input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: none; border-color: var(--border-focus);
  box-shadow: 0 0 0 3px rgba(6,116,173,.2);
}
.field-error { font-size: var(--text-sm); color: var(--red-dark); margin-top: var(--sp-2); }

/* ── CONTACT OBFUSCATION ────────────────────────────────── */
.fanac-contact a { color: inherit; text-decoration: none; }
.fanac-contact a:hover { text-decoration: underline; }
.fanac-contact a:visited { color: inherit; }

/* ── SOCIAL ICONS ───────────────────────────────────────── */
.social-links { display: flex; gap: var(--sp-3); flex-wrap: wrap; }
.social-link {
  display: flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: var(--radius);
  background: rgba(255,255,255,.12); color: var(--text-on-dark);
  text-decoration: none;
  transition: background var(--dur-fast), transform var(--dur-fast), color var(--dur-fast);
}
.social-link:hover { transform: translateY(-2px); color: #fff; }
.social-link:visited { color: var(--text-on-dark); }
/* Per-platform hover colours */
.social-link--linkedin:hover    { background: #0077B5; }
.social-link--facebook:hover    { background: #1877F2; }
.social-link--instagram:hover   { background: #E1306C; }
.social-link--youtube:hover     { background: #FF0000; }
.social-link--x:hover           { background: #000000; }
.social-link--tiktok:hover      { background: #010101; }
.social-link svg { width: 20px; height: 20px; pointer-events: none; }

/* ── FOOTER ─────────────────────────────────────────────── */
.site-footer {
  background: var(--navy-dark);
  color: var(--text-on-dark);
  padding-top: var(--sp-16);
  border-top: 4px solid var(--brand-red);
}
.footer__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.5fr;
  gap: var(--sp-10);
  padding-bottom: var(--sp-12);
}

/* v2.7: Footer logo — dual-logo system.
   Two paths:
   A) footer_logo set → white/light PNG/SVG rendered directly on navy. No filter needed.
   B) no footer_logo → standard logo shown on a white card (preserves NUCES seal colours).
*/
.footer__brand-logo-wrap {
  display: block;
  margin-bottom: var(--sp-5);
}
/* Path A: white/light footer logo — direct on dark background */
.footer__brand-logo-wrap .footer__logo-img {
  height: 60px; width: auto; max-width: 200px;
  display: block;
  filter: none;
  mix-blend-mode: normal;
}
/* Path B: white card wrapper — standard (dark) logo sits on white surface */
.footer__brand-logo-wrap--card {
  display: inline-block;
  background: #fff;
  border-radius: 8px;
  padding: 10px 16px;
}
.footer__brand-logo-wrap--card .custom-logo,
.footer__brand-logo-wrap--card img {
  height: 48px; width: auto; max-width: 180px;
  display: block;
  filter: none;
  mix-blend-mode: normal;
}
/* Fallback plain-text name */
.footer__brand-name {
  font-family: var(--font-serif); font-size: var(--text-xl);
  font-weight: 700; color: #fff; margin-bottom: var(--sp-4);
}

.footer__brand-desc {
  font-size: var(--text-sm); color: rgba(238,240,248,.62);
  line-height: 1.75; max-width: 280px;
}
.footer__heading {
  font-family: var(--font-sans); font-size: var(--text-xs);
  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: var(--brand-gold); /* 9.53:1 on navy ✓ */
  margin-bottom: var(--sp-5);
}

/* Footer nav columns */
.footer__col ul { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--sp-3); }
.footer__col a { font-size: var(--text-sm); color: rgba(238,240,248,.65); text-decoration: none; transition: color var(--dur-fast); }
.footer__col a:hover { color: #fff; }
.footer__col a:visited { color: rgba(238,240,248,.65); }

/* Contact list */
.footer__contact-list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--sp-4); }
.footer__contact-item { display: flex; align-items: flex-start; gap: var(--sp-3); font-size: var(--text-sm); color: rgba(238,240,248,.65); }
.footer__contact-icon { width: 16px; height: 16px; flex-shrink: 0; margin-top: 3px; fill: var(--brand-gold); }
.footer__contact-item a { color: rgba(238,240,248,.65); text-decoration: none; }
.footer__contact-item a:hover { color: #fff; }
.footer__contact-item a:visited { color: rgba(238,240,248,.65); }

/* Footer bottom */
.footer__bottom { border-top: 1px solid rgba(255,255,255,.08); padding: var(--sp-6) 0; }
.footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--sp-4); }
.footer__copyright { font-size: var(--text-xs); color: rgba(238,240,248,.38); }
.footer__legal { display: flex; gap: var(--sp-5); }
.footer__legal a { font-size: var(--text-xs); color: rgba(238,240,248,.38); text-decoration: none; transition: color var(--dur-fast); }
.footer__legal a:hover { color: rgba(238,240,248,.75); }

/* ── RESPONSIVE EMBEDS ──────────────────────────────────── */
.embed-responsive { position: relative; width: 100%; overflow: hidden; border-radius: var(--radius); }
.embed-responsive--16by9 { padding-top: 56.25%; }
.embed-responsive--4by3   { padding-top: 75%; }
.embed-responsive--form   { padding-top: 90%; }
.embed-responsive iframe, .embed-responsive object { position: absolute; top:0; left:0; width:100%; height:100%; border:0; }

/* ── SEARCH RESULTS ─────────────────────────────────────── */
.search-form { display: flex; gap: var(--sp-3); align-items: center; }
.search-form input[type="search"] { flex: 1; border-radius: var(--radius-pill); }
.search-form button { min-height: 44px; padding: 0 var(--sp-5); background: var(--color-primary); color: var(--text-on-primary); border: none; border-radius: var(--radius-pill); font-weight: 600; cursor: pointer; transition: background var(--dur-fast); }
.search-form button:hover { background: var(--color-primary-dark); }

/* ── PAGINATION ─────────────────────────────────────────── */
.pagination { display: flex; justify-content: center; gap: var(--sp-2); padding: var(--sp-12) 0; }
.pagination a, .pagination span {
  display: flex; align-items: center; justify-content: center;
  min-width: 44px; height: 44px; padding: 0 var(--sp-3);
  border-radius: var(--radius); border: 1px solid var(--border);
  font-size: var(--text-sm); font-weight: 500;
  text-decoration: none; color: var(--text-muted);
  transition: all var(--dur-fast);
}
.pagination a:hover { background: var(--color-primary-light); color: var(--color-primary); border-color: var(--color-primary); }
.pagination .current { background: var(--color-primary); color: var(--text-on-primary); border-color: var(--color-primary); }

/* ── MOBILE ≤ 900px ─────────────────────────────────────── */
@media (max-width: 1100px) {
  .nav-toggle { display: flex; }
  .site-nav--primary {
    display: none; position: fixed;
    top: var(--header-height); left: 0; right: 0; bottom: 0;
    background: var(--surface); flex-direction: column; align-items: stretch;
    padding: var(--sp-3) var(--gutter) var(--sp-8);
    overflow-y: auto; z-index: var(--z-overlay); box-shadow: var(--shadow-xl);
  }
  .site-nav--primary.is-open { display: flex; }

  /* ── Top-level list ── */
  .site-nav--primary > ul {
    flex-direction: column;
    gap: 0;             /* spacing handled per-item below */
    width: 100%;
  }

  /* ── Every nav item row ── */
  .site-nav--primary > ul > li {
    position: relative;
    border-bottom: 1px solid var(--border);
  }
  .site-nav--primary > ul > li:first-child {
    border-top: 1px solid var(--border);
  }

  /* ── All links ── */
  .site-nav--primary a {
    height: auto;
    padding: 14px var(--sp-4);
    font-size: var(--text-base);
    width: 100%;
    display: flex;
    align-items: center;
  }

  /* ── Parent items that have a submenu: make room for chevron ── */
  .site-nav--primary .menu-item-has-children {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }
  .site-nav--primary .menu-item-has-children > a {
    flex: 1;
    /* Don't let the parent link shrink to nothing — always show label */
    min-width: 0;
  }

  /* ── Chevron toggle button injected by JS ── */
  .sub-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    flex-shrink: 0;
    background: transparent;
    border: none;
    border-left: 1px solid var(--border);
    cursor: pointer;
    color: var(--color-text);
    padding: 0;
    transition: background var(--dur-fast);
  }
  .sub-menu-toggle:hover { background: var(--surface-muted); }
  .sub-menu-toggle svg {
    transition: transform var(--dur-fast);
    pointer-events: none;
  }
  .sub-menu-toggle[aria-expanded="true"] svg {
    transform: rotate(180deg);
  }

  /* ── Sub-menu (accordion — JS controls display) ── */
  .site-nav--primary .sub-menu {
    /* JS sets display:none / display:'' — CSS just styles the open state */
    position: static;
    box-shadow: none;
    border: none;
    border-top: 1px solid var(--border);
    background: var(--surface-muted);
    border-radius: 0;
    padding: var(--sp-1) 0;
    margin-top: 0;
    width: 100%;          /* full-width under parent row */
    flex-direction: column;
    gap: 0;
  }
  /* Sub-menu links — indented */
  .site-nav--primary .sub-menu a {
    height: auto;
    font-size: var(--text-sm);
    padding: 11px var(--sp-4) 11px calc(var(--sp-4) + 16px);
    border-radius: 0;
    color: var(--color-text-muted);
    border-bottom: 1px solid var(--border);
    width: 100%;
  }
  .site-nav--primary .sub-menu li:last-child > a {
    border-bottom: none;
  }
  .site-nav--primary .sub-menu a:hover { color: var(--color-primary); background: var(--surface); }

  /* ── REMOVE hover-based submenu open — use accordion instead ── */
  .site-nav--primary li:hover > .sub-menu { display: none; }
  .site-nav--primary li:focus-within > .sub-menu { display: none; }
  /* JS overrides display on .sub-open items */
  .site-nav--primary li.sub-open > .sub-menu { display: flex !important; flex-direction: column; }

  /* ── Pill/CTA items ── */
  .site-nav--primary > ul > li:last-child > a,
  .site-nav--primary > ul > li.menu-cta > a {
    margin-left: 0; margin-top: var(--sp-3); justify-content: center;
    border-radius: var(--radius);
    border-bottom: none;
  }
  .site-nav--primary > ul > li:last-child,
  .site-nav--primary > ul > li.menu-cta {
    border-bottom: none;
  }

  .hero { padding: var(--sp-16) 0; }
  .hero__title { font-size: var(--text-5xl); }
  .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--sp-8); }
  .footer__brand { grid-column: 1 / -1; }
  .stats-bar__grid { grid-template-columns: repeat(2,1fr); }
  .grid-3, .grid-2 { grid-template-columns: 1fr; }
}

/* ── MOBILE ≤ 480px ─────────────────────────────────────── */
@media (max-width: 480px) {
  :root { --header-height: 60px; }
  .nav-toggle { display: flex; }
  .hero__title { font-size: var(--text-4xl); }
  .hero__actions { flex-direction: column; }
  .hero__actions .btn { width: 100%; justify-content: center; }
  .footer__grid { grid-template-columns: 1fr; }
  .footer__bottom-inner { flex-direction: column; align-items: flex-start; }
}

/* ── PRINT ──────────────────────────────────────────────── */
@media print {
  .site-header, .site-footer, .nav-toggle, .hero__actions, .social-links, .stats-bar { display: none; }
  body { font-size: 12pt; color: #000; background: #fff; }
  a { color: #000; }
  a[href^="http"]::after { content: ' (' attr(href) ')'; font-size: 9pt; color: #555; }
}

/* ═══════════════════════════════════════════════════════════
   CAMPUS BANNER HERO — HO_Web_Banner2.png (1905×504px)
   Blue-to-purple gradient with hexagonal campus photos.
   ═══════════════════════════════════════════════════════════ */
.campus-banner {
  width: 100%;
  position: relative;
  overflow: hidden;
  /* Fallback bg matches banner gradient while image loads */
  background: linear-gradient(135deg, #1F95DB 0%, #1D6DC4 40%, #1E48AA 80%, #7755DD 100%);
}

.campus-banner__image-wrap {
  position: relative;
  width: 100%;
  /* Maintain 1905:504 aspect ratio — clamp to sensible heights */
  max-height: clamp(180px, 30vw, 520px);
  overflow: hidden;
}

.campus-banner__img {
  width: 100%;
  height: clamp(180px, 30vw, 520px);
  object-fit: cover;
  object-position: center center;
  display: block;
  /* Prioritise LCP — no lazy loading on hero image */
}

/* Optional dark overlay for text legibility */
.campus-banner__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(
    to right,
    rgba(13, 34, 88, 0.72) 0%,
    rgba(13, 34, 88, 0.45) 35%,
    rgba(13, 34, 88, 0.1)  65%,
    transparent            100%
  );
  pointer-events: none;
}

/* CTA text overlaid on left side of banner */
.campus-banner__cta {
  position: absolute;
  top: 50%; left: 0;
  transform: translateY(-50%);
  z-index: 2;
  padding-left: var(--gutter);
  max-width: 560px;
}

.campus-banner__tagline {
  display: inline-flex; align-items: center; gap: var(--sp-2);
  font-size: var(--text-xs); font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--brand-gold); margin-bottom: var(--sp-3);
}
.campus-banner__tagline::before {
  content: ''; display: block;
  width: 20px; height: 2px;
  background: var(--brand-gold); border-radius: 2px;
}

.campus-banner__title {
  font-family: var(--font-serif);
  font-size: clamp(1.5rem, 3.5vw, 2.75rem);
  font-weight: 700; line-height: 1.1;
  color: #fff; letter-spacing: -.02em;
  margin-bottom: var(--sp-6);
  text-shadow: 0 2px 8px rgba(0,0,0,.3);
}

.campus-banner__actions {
  display: flex; flex-wrap: wrap; gap: var(--sp-3);
}

/* ── Banner without CTA text (image only mode) ─────────── */
.campus-banner--image-only .campus-banner__image-wrap {
  max-height: clamp(160px, 28vw, 504px);
}
.campus-banner--image-only .campus-banner__img {
  height: clamp(160px, 28vw, 504px);
}

/* ── Mobile: banner ─────────────────────────────────────── */
@media (max-width: 768px) {
  .campus-banner__image-wrap,
  .campus-banner__img {
    height: clamp(140px, 45vw, 260px);
    max-height: clamp(140px, 45vw, 260px);
  }
  .campus-banner__cta {
    position: static; transform: none;
    background: var(--navy-dark);
    padding: var(--sp-6) var(--gutter);
    max-width: 100%;
  }
  .campus-banner__overlay { display: none; }
  .campus-banner__title { font-size: var(--text-2xl); }
  .campus-banner__actions { flex-direction: column; }
  .campus-banner__actions .btn { justify-content: center; }
}

@media (max-width: 480px) {
  .campus-banner__image-wrap,
  .campus-banner__img {
    height: clamp(120px, 48vw, 200px);
    max-height: clamp(120px, 48vw, 200px);
  }
}

/* ═══════════════════════════════════════════════════════════
   CAMPUS BANNER — full-width, no text overlay
   1905×504px (3.78:1 ratio) NUCES campus hexagonal panorama.
   ═══════════════════════════════════════════════════════════ */
.campus-banner {
  width: 100%;
  overflow: hidden;
  /* Fallback gradient matches banner background while loading */
  background: linear-gradient(135deg, #1F95DB 0%, #1D6DC4 40%, #1E48AA 80%, #7755DD 100%);
  line-height: 0; /* Remove any gap below inline image */
}

.campus-banner__frame {
  width: 100%;
  /* Clamp height: min 160px on small phones, up to full 504px on wide screens */
  max-height: clamp(160px, 28vw, 504px);
  overflow: hidden;
}

.campus-banner__img {
  width: 100%;
  height: clamp(160px, 28vw, 504px);
  object-fit: cover;
  object-position: center center;
  display: block;
  /* No lazy loading — this is the LCP element */
}

.campus-banner__placeholder {
  height: clamp(160px, 28vw, 504px);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.6); font-size: var(--text-sm);
  background: var(--navy-dark);
}

/* ═══════════════════════════════════════════════════════════
   ACTION BAR — immediately below banner
   Warm white strip with three highlighted CTAs.
   ═══════════════════════════════════════════════════════════ */
.action-bar {
  background: var(--surface);
  border-bottom: 3px solid var(--brand-navy);
  box-shadow: var(--shadow-md);
  position: relative;
  z-index: 2;
}

.action-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sp-6);
  padding-top: var(--sp-5);
  padding-bottom: var(--sp-5);
  flex-wrap: wrap;
}

.action-bar__text { flex: 1; min-width: 200px; }
.action-bar__label {
  font-size: var(--text-xs); font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--color-primary); margin-bottom: var(--sp-1);
}
.action-bar__tagline {
  font-size: var(--text-base); color: var(--text-muted);
  font-family: var(--font-serif); font-style: italic;
  line-height: 1.4;
}

.action-bar__ctas {
  display: flex;
  align-items: center;
  gap: var(--sp-3);
  flex-wrap: wrap;
  flex-shrink: 0;
}

/* ── DONATE button — maple red with heartbeat pulse ──────── */
.btn--donate {
  background: var(--brand-red);
  color: #fff !important;
  border: 2px solid var(--brand-red);
  border-radius: var(--radius-pill);
  font-weight: 700;
  box-shadow: 0 0 0 0 rgba(230,11,14,.4);
  animation: donate-pulse 2.8s ease-in-out infinite;
  position: relative;
}
.btn--donate:hover {
  background: var(--color-accent-dark) !important;
  border-color: var(--color-accent-dark);
  color: #fff !important;
  transform: translateY(-2px);
  animation: none; /* stop pulse on hover — less distracting */
  box-shadow: var(--shadow-lg);
}
.btn--donate:visited, .btn--donate:active { color: #fff !important; }

/* Heartbeat pulse — subtle ring expansion */
@keyframes donate-pulse {
  0%   { box-shadow: 0 0 0 0   rgba(230,11,14,.5); }
  50%  { box-shadow: 0 0 0 8px rgba(230,11,14,0);  }
  100% { box-shadow: 0 0 0 0   rgba(230,11,14,.5); }
}
@media (prefers-reduced-motion: reduce) {
  .btn--donate { animation: none; }
}

/* ── RECENT EVENTS button — navy with gold accent ────────── */
.btn--events {
  background: var(--color-primary);
  color: var(--text-on-primary) !important;
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-pill);
  font-weight: 700;
  position: relative;
  overflow: hidden;
}
/* Gold shimmer on right edge — subtle "premium" indicator */
.btn--events::after {
  content: '';
  position: absolute; top: 0; right: 0;
  width: 4px; height: 100%;
  background: var(--brand-gold);
  border-radius: 0 var(--radius-pill) var(--radius-pill) 0;
}
.btn--events:hover {
  background: var(--navy-dark) !important;
  border-color: var(--navy-dark);
  color: var(--text-on-primary) !important;
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}
.btn--events:hover::after { background: var(--brand-gold); }
.btn--events:visited { color: var(--text-on-primary) !important; }

/* ═══════════════════════════════════════════════════════════
   NAV: DONATE and RECENT EVENTS highlighting
   Two special classes applied in WP Menus via CSS Classes field.
   ═══════════════════════════════════════════════════════════ */

/* Donate in nav — red pill (add CSS class "menu-donate" in WP Menus) */
.site-nav--primary .menu-donate > a,
.site-nav--primary li.menu-donate > a {
  background: var(--brand-red) !important;
  color: #fff !important;
  padding: 0 var(--sp-4);
  border-radius: var(--radius-pill);
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(230,11,14,.3);
  transition: background var(--dur-base), transform var(--dur-fast), box-shadow var(--dur-base);
}
.site-nav--primary .menu-donate > a:hover { background: var(--color-accent-dark) !important; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(230,11,14,.4); }
.site-nav--primary .menu-donate > a:visited { color: #fff !important; }

/* Recent Events in nav — navy pill with gold dot (add CSS class "menu-events") */
.site-nav--primary .menu-events > a,
.site-nav--primary li.menu-events > a {
  background: var(--color-primary) !important;
  color: #fff !important;
  padding: 0 var(--sp-4);
  border-radius: var(--radius-pill);
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(21,56,123,.25);
  position: relative;
}
/* Gold accent dot on Recent Events */
.site-nav--primary .menu-events > a::before {
  content: '';
  display: inline-block;
  width: 7px; height: 7px;
  background: var(--brand-gold);
  border-radius: 50%;
  margin-right: var(--sp-1);
  flex-shrink: 0;
  animation: events-blink 2s ease-in-out infinite;
}
@keyframes events-blink {
  0%, 100% { opacity: 1; }
  50%       { opacity: .4; }
}
@media (prefers-reduced-motion: reduce) {
  .site-nav--primary .menu-events > a::before { animation: none; }
}
.site-nav--primary .menu-events > a:hover { background: var(--navy-dark) !important; transform: translateY(-1px); }
.site-nav--primary .menu-events > a:visited { color: #fff !important; }

/* ═══════════════════════════════════════════════════════════
   MOBILE — action bar and banner
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  .campus-banner__frame,
  .campus-banner__img { height: clamp(130px, 42vw, 280px); max-height: clamp(130px, 42vw, 280px); }

  .action-bar__inner { flex-direction: column; align-items: flex-start; gap: var(--sp-4); }
  .action-bar__ctas  { width: 100%; justify-content: stretch; }
  .action-bar__ctas .btn { flex: 1; justify-content: center; min-width: 0; }
}

@media (max-width: 480px) {
  .campus-banner__frame,
  .campus-banner__img { height: clamp(110px, 46vw, 200px); max-height: clamp(110px, 46vw, 200px); }
  .action-bar__ctas { flex-direction: column; }
  .action-bar__ctas .btn { width: 100%; }
}

/* ═══════════════════════════════════════════════════════════
   v2.1 PATCHES — fixes from live site review
   ═══════════════════════════════════════════════════════════ */

/* ── FIX 1: Social icons stacked vertically in footer ───────
   Root cause: .footer__col ul { flex-direction: column } was
   inherited by .social-links ul because it's inside .footer__col.
   Override with explicit row direction.
   ──────────────────────────────────────────────────────── */
.social-links,
.footer__social .social-links {
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: var(--sp-2);
}

/* ── FIX 2: Nav — Member Registration highlighted ───────────
   Add CSS class "menu-member-reg" to the Member Registration
   menu item in WP Dashboard → Appearance → Menus.
   Design rationale: outlined pill = clearly actionable but
   visually distinct from the filled Donate/Events pills.
   Sits just before Donate to create a natural "action cluster".
   ──────────────────────────────────────────────────────── */
.site-nav--primary .menu-member-reg > a {
  border: 2px solid var(--brand-navy);
  border-radius: var(--radius-pill);
  color: var(--color-primary) !important;
  font-weight: 600;
  padding: 0 var(--sp-4);
  transition: background var(--dur-base), color var(--dur-base), border-color var(--dur-base);
}
.site-nav--primary .menu-member-reg > a:hover {
  background: var(--color-primary);
  color: var(--text-on-primary) !important;
}
.site-nav--primary .menu-member-reg > a:visited {
  color: var(--color-primary) !important;
}

/* ── FIX 3: Donate — prevent text-transform on nav item ─────
   User should rename menu item from "DONATE" to "Donate" in
   WP Menus. This CSS ensures no accidental uppercase transform.
   ──────────────────────────────────────────────────────── */
.site-nav--primary .menu-donate > a,
.site-nav--primary li.menu-donate > a {
  text-transform: none !important;
}

/* ── FIX 4: Action bar — Member Registration most prominent ─
   Redesigned button hierarchy:
   1. Member Registration — largest, accent colour (primary CTA)
   2. Donate              — red pill with pulse (secondary)
   3. Recent Events       — navy pill (tertiary)
   ──────────────────────────────────────────────────────── */
.action-bar__ctas .btn--primary {
  /* Member Registration is primary action — make it stand out */
  font-size: var(--text-lg);
  padding: 0 var(--sp-8);
  min-height: 52px;
  box-shadow: 0 4px 16px rgba(21,56,123,.28);
}
.action-bar__ctas .btn--primary:hover {
  box-shadow: 0 6px 24px rgba(21,56,123,.38);
  transform: translateY(-3px);
}

/* Member registration badge "FREE" */
.action-bar__ctas .btn--primary::after {
  content: 'FREE';
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .08em;
  background: var(--brand-gold);
  color: var(--navy-dark);
  border-radius: var(--radius-pill);
  padding: .1em .45em;
  margin-left: var(--sp-2);
  vertical-align: middle;
}
@media (prefers-reduced-motion: reduce) {
  .action-bar__ctas .btn--primary::after { display: none; }
}

/* ── FIX 5: Banner not showing after Customizer change ───────
   Visual indicator added — see inc/contact.php for
   customize_save_after cache-clear hook.
   ──────────────────────────────────────────────────────── */

/* ── FIX 6: LCP — banner image responsive sizes ─────────────
   The <img> in front-page.php now uses wp_get_attachment_image()
   with srcset for mobile/tablet/desktop sizes.
   fetchpriority="high" + loading="eager" already set.
   ──────────────────────────────────────────────────────── */

/* ── FIX 7: Server response — extra caching headers ─────────
   Handled in inc/performance.php and .htaccess additions.
   ──────────────────────────────────────────────────────── */

/* ═══════════════════════════════════════════════════════════
   v2.2 PATCHES — fixes from user testing & screenshots
   ═══════════════════════════════════════════════════════════ */

/* ── v2.2 FIX 1: Footer logo white card ─────────────────────
   The blanket brightness/invert filter made the NUCES seal
   all-white. Now the logo sits on a white rounded card which
   makes it readable on the navy footer without colour loss.
   ──────────────────────────────────────────────────────── */

/* ── v2.2 FIX 2: Nav hamburger at 1100px ────────────────────
   9 nav items + search overflow at ≤1100px. Hamburger now
   activates at that width, matching real-world usage.
   Intermediate squeeze CSS handles 1100–1320px range.
   ──────────────────────────────────────────────────────── */

/* ── v2.2 FIX 3: Mobile menu open = body no scroll ──────────
   Handled in JS (already correct). CSS fallback:
   ──────────────────────────────────────────────────────── */
body.nav-open { overflow: hidden; }

/* ── v2.2 FIX 4: Search button — never out of header ────────
   Keep search inside header flow; don't let it wrap.
   ──────────────────────────────────────────────────────── */
.site-header__right {
  display: flex; align-items: center;
  gap: var(--sp-2); flex-shrink: 0;
  /* Ensure search never pushed outside header */
  min-width: 0;
  overflow: visible;
}
.header-search-wrap { position: relative; flex-shrink: 0; }

/* ── v2.2 FIX 5: Mobile nav — pill buttons full width ───────
   Donate, Events, Member Reg pills: centred, full width on mobile.
   Accordion submenu items handled by the main @media block above.
   ──────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .site-nav--primary > ul > li.menu-events > a::before {
    margin-right: var(--sp-2);
  }
  .site-nav--primary > ul > li.menu-donate > a,
  .site-nav--primary > ul > li.menu-events > a,
  .site-nav--primary .menu-member-reg > a {
    width: 100%; text-align: center;
    justify-content: center;
    border-radius: var(--radius) !important;
    margin-left: 0 !important;
    margin-top: var(--sp-2);
  }
}

/* ── v2.2 FIX 6: Customizer preview — search not clipped ────
   When WP Customizer panel is open (280px left panel),
   the preview iframe shrinks. Overflow visible ensures
   search dropdown isn't clipped.
   ──────────────────────────────────────────────────────── */
.customize-preview .site-header,
.customize-preview .site-header__inner {
  overflow: visible !important;
}
/*! elementor-icons - v5.48.0 - 23-02-2026 */
@font-face{font-family:eicons;src:url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.eot?5.48.0);src:url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.eot?5.48.0#iefix) format("embedded-opentype"),url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff2?5.48.0) format("woff2"),url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff?5.48.0) format("woff"),url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.ttf?5.48.0) format("truetype"),url(//ca.fastalumni.org/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.svg?5.48.0#eicon) format("svg");font-weight:400;font-style:normal}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes a{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.eicon-animation-spin{animation:a 2s infinite linear}.eicon-editor-link:before{content:"\e800"}.eicon-editor-unlink:before{content:"\e801"}.eicon-editor-external-link:before{content:"\e802"}.eicon-editor-close:before{content:"\e803"}.eicon-editor-list-ol:before{content:"\e804"}.eicon-editor-list-ul:before{content:"\e805"}.eicon-editor-bold:before{content:"\e806"}.eicon-editor-italic:before{content:"\e807"}.eicon-editor-underline:before{content:"\e808"}.eicon-editor-paragraph:before{content:"\e809"}.eicon-editor-h1:before{content:"\e80a"}.eicon-editor-h2:before{content:"\e80b"}.eicon-editor-h3:before{content:"\e80c"}.eicon-editor-h4:before{content:"\e80d"}.eicon-editor-h5:before{content:"\e80e"}.eicon-editor-h6:before{content:"\e80f"}.eicon-editor-quote:before{content:"\e810"}.eicon-editor-code:before{content:"\e811"}.eicon-elementor:before{content:"\e812"}.eicon-elementor-circle:before{content:"\e813"}.eicon-pojome:before{content:"\e814"}.eicon-plus:before{content:"\e815"}.eicon-menu-bar:before{content:"\e816"}.eicon-apps:before{content:"\e817"}.eicon-accordion:before{content:"\e818"}.eicon-alert:before{content:"\e819"}.eicon-animation-text:before{content:"\e81a"}.eicon-animation:before{content:"\e81b"}.eicon-banner:before{content:"\e81c"}.eicon-blockquote:before{content:"\e81d"}.eicon-button:before{content:"\e81e"}.eicon-call-to-action:before{content:"\e81f"}.eicon-captcha:before{content:"\e820"}.eicon-carousel:before{content:"\e821"}.eicon-checkbox:before{content:"\e822"}.eicon-columns:before{content:"\e823"}.eicon-countdown:before{content:"\e824"}.eicon-counter:before{content:"\e825"}.eicon-date:before{content:"\e826"}.eicon-divider-shape:before{content:"\e827"}.eicon-divider:before{content:"\e828"}.eicon-download-button:before{content:"\e829"}.eicon-dual-button:before{content:"\e82a"}.eicon-email-field:before{content:"\e82b"}.eicon-facebook-comments:before{content:"\e82c"}.eicon-facebook-like-box:before{content:"\e82d"}.eicon-form-horizontal:before{content:"\e82e"}.eicon-form-vertical:before{content:"\e82f"}.eicon-gallery-grid:before{content:"\e830"}.eicon-gallery-group:before{content:"\e831"}.eicon-gallery-justified:before{content:"\e832"}.eicon-gallery-masonry:before{content:"\e833"}.eicon-icon-box:before{content:"\e834"}.eicon-image-before-after:before{content:"\e835"}.eicon-image-box:before{content:"\e836"}.eicon-image-hotspot:before{content:"\e837"}.eicon-image-rollover:before{content:"\e838"}.eicon-info-box:before{content:"\e839"}.eicon-inner-section:before{content:"\e83a"}.eicon-mailchimp:before{content:"\e83b"}.eicon-menu-card:before{content:"\e83c"}.eicon-navigation-horizontal:before{content:"\e83d"}.eicon-nav-menu:before{content:"\e83e"}.eicon-navigation-vertical:before{content:"\e83f"}.eicon-number-field:before{content:"\e840"}.eicon-parallax:before{content:"\e841"}.eicon-php7:before{content:"\e842"}.eicon-post-list:before{content:"\e843"}.eicon-post-slider:before{content:"\e844"}.eicon-post:before{content:"\e845"}.eicon-posts-carousel:before{content:"\e846"}.eicon-posts-grid:before{content:"\e847"}.eicon-posts-group:before{content:"\e848"}.eicon-posts-justified:before{content:"\e849"}.eicon-posts-masonry:before{content:"\e84a"}.eicon-posts-ticker:before{content:"\e84b"}.eicon-price-list:before{content:"\e84c"}.eicon-price-table:before{content:"\e84d"}.eicon-radio:before{content:"\e84e"}.eicon-rtl:before{content:"\e84f"}.eicon-scroll:before{content:"\e850"}.eicon-search:before{content:"\e851"}.eicon-select:before{content:"\e852"}.eicon-share:before{content:"\e853"}.eicon-sidebar:before{content:"\e854"}.eicon-skill-bar:before{content:"\e855"}.eicon-slider-3d:before{content:"\e856"}.eicon-slider-album:before{content:"\e857"}.eicon-slider-device:before{content:"\e858"}.eicon-slider-full-screen:before{content:"\e859"}.eicon-slider-push:before{content:"\e85a"}.eicon-slider-vertical:before{content:"\e85b"}.eicon-slider-video:before{content:"\e85c"}.eicon-slides:before{content:"\e85d"}.eicon-social-icons:before{content:"\e85e"}.eicon-spacer:before{content:"\e85f"}.eicon-table:before{content:"\e860"}.eicon-tabs:before{content:"\e861"}.eicon-tel-field:before{content:"\e862"}.eicon-text-area:before{content:"\e863"}.eicon-text-field:before{content:"\e864"}.eicon-thumbnails-down:before{content:"\e865"}.eicon-thumbnails-half:before{content:"\e866"}.eicon-thumbnails-right:before{content:"\e867"}.eicon-time-line:before{content:"\e868"}.eicon-toggle:before{content:"\e869"}.eicon-url:before{content:"\e86a"}.eicon-t-letter:before{content:"\e86b"}.eicon-wordpress:before{content:"\e86c"}.eicon-text:before{content:"\e86d"}.eicon-anchor:before{content:"\e86e"}.eicon-bullet-list:before{content:"\e86f"}.eicon-code:before{content:"\e870"}.eicon-favorite:before{content:"\e871"}.eicon-google-maps:before{content:"\e872"}.eicon-image:before{content:"\e873"}.eicon-photo-library:before{content:"\e874"}.eicon-woocommerce:before{content:"\e875"}.eicon-youtube:before{content:"\e876"}.eicon-flip-box:before{content:"\e877"}.eicon-settings:before{content:"\e878"}.eicon-headphones:before{content:"\e879"}.eicon-testimonial:before{content:"\e87a"}.eicon-counter-circle:before{content:"\e87b"}.eicon-person:before{content:"\e87c"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-file-download:before{content:"\e880"}.eicon-save:before{content:"\e881"}.eicon-zoom-in:before{content:"\e882"}.eicon-shortcode:before{content:"\e883"}.eicon-nerd:before{content:"\e884"}.eicon-device-desktop:before{content:"\e885"}.eicon-device-tablet:before{content:"\e886"}.eicon-device-mobile:before{content:"\e887"}.eicon-document-file:before{content:"\e888"}.eicon-folder-o:before{content:"\e889"}.eicon-hypster:before{content:"\e88a"}.eicon-h-align-left:before{content:"\e88b"}.eicon-h-align-right:before{content:"\e88c"}.eicon-h-align-center:before{content:"\e88d"}.eicon-h-align-stretch:before{content:"\e88e"}.eicon-v-align-top:before{content:"\e88f"}.eicon-v-align-bottom:before{content:"\e890"}.eicon-v-align-middle:before{content:"\e891"}.eicon-v-align-stretch:before{content:"\e892"}.eicon-pro-icon:before{content:"\e893"}.eicon-mail:before{content:"\e894"}.eicon-lock-user:before{content:"\e895"}.eicon-testimonial-carousel:before{content:"\e896"}.eicon-media-carousel:before{content:"\e897"}.eicon-section:before{content:"\e898"}.eicon-column:before{content:"\e899"}.eicon-edit:before{content:"\e89a"}.eicon-clone:before{content:"\e89b"}.eicon-trash:before{content:"\e89c"}.eicon-play:before{content:"\e89d"}.eicon-angle-right:before{content:"\e89e"}.eicon-angle-left:before{content:"\e89f"}.eicon-animated-headline:before{content:"\e8a0"}.eicon-menu-toggle:before{content:"\e8a1"}.eicon-fb-embed:before{content:"\e8a2"}.eicon-fb-feed:before{content:"\e8a3"}.eicon-twitter-embed:before{content:"\e8a4"}.eicon-twitter-feed:before{content:"\e8a5"}.eicon-sync:before{content:"\e8a6"}.eicon-import-export:before{content:"\e8a7"}.eicon-check-circle:before{content:"\e8a8"}.eicon-library-save:before{content:"\e8a9"}.eicon-library-download:before{content:"\e9dd"}.eicon-insert:before{content:"\e8ab"}.eicon-preview-medium:before{content:"\e8ac"}.eicon-sort-down:before{content:"\e8ad"}.eicon-sort-up:before{content:"\e8ae"}.eicon-heading:before{content:"\e8af"}.eicon-logo:before{content:"\e8b0"}.eicon-meta-data:before{content:"\e8b1"}.eicon-post-content:before{content:"\e8b2"}.eicon-post-excerpt:before{content:"\e8b3"}.eicon-post-navigation:before{content:"\e8b4"}.eicon-yoast:before{content:"\e8b5"}.eicon-nerd-chuckle:before{content:"\e8b6"}.eicon-nerd-wink:before{content:"\e8b7"}.eicon-comments:before{content:"\e8b8"}.eicon-download-circle-o:before{content:"\e8b9"}.eicon-library-upload:before{content:"\e8ba"}.eicon-save-o:before{content:"\e8bb"}.eicon-upload-circle-o:before{content:"\e8bc"}.eicon-ellipsis-h:before{content:"\e8bd"}.eicon-ellipsis-v:before{content:"\e8be"}.eicon-arrow-left:before{content:"\e8bf"}.eicon-arrow-right:before{content:"\e8c0"}.eicon-arrow-up:before{content:"\e8c1"}.eicon-arrow-down:before{content:"\e8c2"}.eicon-play-o:before{content:"\e8c3"}.eicon-archive-posts:before{content:"\e8c4"}.eicon-archive-title:before{content:"\e8c5"}.eicon-featured-image:before{content:"\e8c6"}.eicon-post-info:before{content:"\e8c7"}.eicon-post-title:before{content:"\e8c8"}.eicon-site-logo:before{content:"\e8c9"}.eicon-site-search:before{content:"\e8ca"}.eicon-site-title:before{content:"\e8cb"}.eicon-plus-square:before{content:"\e8cc"}.eicon-minus-square:before{content:"\e8cd"}.eicon-cloud-check:before{content:"\e8ce"}.eicon-drag-n-drop:before{content:"\e8cf"}.eicon-welcome:before{content:"\e8d0"}.eicon-handle:before{content:"\e8d1"}.eicon-cart:before{content:"\e8d2"}.eicon-product-add-to-cart:before{content:"\e8d3"}.eicon-product-breadcrumbs:before{content:"\e8d4"}.eicon-product-categories:before{content:"\e8d5"}.eicon-product-description:before{content:"\e8d6"}.eicon-product-images:before{content:"\e8d7"}.eicon-product-info:before{content:"\e8d8"}.eicon-product-meta:before{content:"\e8d9"}.eicon-product-pages:before{content:"\e8da"}.eicon-product-price:before{content:"\e8db"}.eicon-product-rating:before{content:"\e8dc"}.eicon-product-related:before{content:"\e8dd"}.eicon-product-stock:before{content:"\e8de"}.eicon-product-tabs:before{content:"\e8df"}.eicon-product-title:before{content:"\e8e0"}.eicon-product-upsell:before{content:"\e8e1"}.eicon-products:before{content:"\e8e2"}.eicon-bag-light:before{content:"\e8e3"}.eicon-bag-medium:before{content:"\e8e4"}.eicon-bag-solid:before{content:"\e8e5"}.eicon-basket-light:before{content:"\e8e6"}.eicon-basket-medium:before{content:"\e8e7"}.eicon-basket-solid:before{content:"\e8e8"}.eicon-cart-light:before{content:"\e8e9"}.eicon-cart-medium:before{content:"\e8ea"}.eicon-cart-solid:before{content:"\e8eb"}.eicon-exchange:before{content:"\e8ec"}.eicon-preview-thin:before{content:"\e8ed"}.eicon-device-laptop:before{content:"\e8ee"}.eicon-collapse:before{content:"\e8ef"}.eicon-expand:before{content:"\e8f0"}.eicon-navigator:before{content:"\e8f1"}.eicon-plug:before{content:"\e8f2"}.eicon-dashboard:before{content:"\e8f3"}.eicon-typography:before{content:"\e8f4"}.eicon-info-circle-o:before{content:"\e8f5"}.eicon-integration:before{content:"\e8f6"}.eicon-plus-circle-o:before{content:"\e8f7"}.eicon-rating:before{content:"\e8f8"}.eicon-review:before{content:"\e8f9"}.eicon-tools:before{content:"\e8fa"}.eicon-loading:before{content:"\e8fb"}.eicon-sitemap:before{content:"\e8fc"}.eicon-click:before{content:"\e8fd"}.eicon-clock:before{content:"\e8fe"}.eicon-library-open:before{content:"\e8ff"}.eicon-warning:before{content:"\e900"}.eicon-flow:before{content:"\e901"}.eicon-cursor-move:before{content:"\e902"}.eicon-arrow-circle-left:before{content:"\e903"}.eicon-flash:before{content:"\e904"}.eicon-redo:before{content:"\e905"}.eicon-ban:before{content:"\e906"}.eicon-barcode:before{content:"\e907"}.eicon-calendar:before{content:"\e908"}.eicon-caret-left:before{content:"\e909"}.eicon-caret-right:before{content:"\e90a"}.eicon-caret-up:before{content:"\e90b"}.eicon-chain-broken:before{content:"\e90c"}.eicon-check-circle-o:before{content:"\e90d"}.eicon-check:before{content:"\e90e"}.eicon-chevron-double-left:before{content:"\e90f"}.eicon-chevron-double-right:before{content:"\e910"}.eicon-undo:before{content:"\e911"}.eicon-filter:before{content:"\e912"}.eicon-circle-o:before{content:"\e913"}.eicon-circle:before{content:"\e914"}.eicon-clock-o:before{content:"\e915"}.eicon-cog:before{content:"\e916"}.eicon-cogs:before{content:"\e917"}.eicon-commenting-o:before{content:"\e918"}.eicon-copy:before{content:"\e919"}.eicon-database:before{content:"\e91a"}.eicon-dot-circle-o:before{content:"\e91b"}.eicon-envelope:before{content:"\e91c"}.eicon-external-link-square:before{content:"\e91d"}.eicon-eyedropper:before{content:"\e91e"}.eicon-folder:before{content:"\e91f"}.eicon-font:before{content:"\e920"}.eicon-adjust:before{content:"\e921"}.eicon-lightbox:before{content:"\e922"}.eicon-heart-o:before{content:"\e923"}.eicon-history:before{content:"\e924"}.eicon-image-bold:before{content:"\e925"}.eicon-info-circle:before{content:"\e926"}.eicon-link:before{content:"\e927"}.eicon-long-arrow-left:before{content:"\e928"}.eicon-long-arrow-right:before{content:"\e929"}.eicon-caret-down:before{content:"\e92a"}.eicon-paint-brush:before{content:"\e92b"}.eicon-pencil:before{content:"\e92c"}.eicon-plus-circle:before{content:"\e92d"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-sort-amount-desc:before{content:"\e92f"}.eicon-sign-out:before{content:"\e930"}.eicon-spinner:before{content:"\e931"}.eicon-square:before{content:"\e932"}.eicon-star-o:before{content:"\e933"}.eicon-star:before{content:"\e934"}.eicon-text-align-justify:before{content:"\e935"}.eicon-text-align-center:before{content:"\e936"}.eicon-tags:before{content:"\e937"}.eicon-text-align-left:before{content:"\e938"}.eicon-text-align-right:before{content:"\e939"}.eicon-close-circle:before{content:"\e93a"}.eicon-trash-o:before{content:"\e93b"}.eicon-font-awesome:before{content:"\e93c"}.eicon-user-circle-o:before{content:"\e93d"}.eicon-video-camera:before{content:"\e93e"}.eicon-heart:before{content:"\e93f"}.eicon-wrench:before{content:"\e940"}.eicon-help:before{content:"\e941"}.eicon-help-o:before{content:"\e942"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-plus-square-o:before{content:"\e944"}.eicon-minus-square-o:before{content:"\e945"}.eicon-minus-circle:before{content:"\e946"}.eicon-minus-circle-o:before{content:"\e947"}.eicon-code-bold:before{content:"\e948"}.eicon-cloud-upload:before{content:"\e949"}.eicon-search-bold:before{content:"\e94a"}.eicon-map-pin:before{content:"\e94b"}.eicon-meetup:before{content:"\e94c"}.eicon-slideshow:before{content:"\e94d"}.eicon-t-letter-bold:before{content:"\e94e"}.eicon-preferences:before{content:"\e94f"}.eicon-table-of-contents:before{content:"\e950"}.eicon-tv:before{content:"\e951"}.eicon-upload:before{content:"\e952"}.eicon-instagram-comments:before{content:"\e953"}.eicon-instagram-nested-gallery:before{content:"\e954"}.eicon-instagram-post:before{content:"\e955"}.eicon-instagram-video:before{content:"\e956"}.eicon-instagram-gallery:before{content:"\e957"}.eicon-instagram-likes:before{content:"\e958"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-archive:before{content:"\e95e"}.eicon-colors-typography:before{content:"\e95f"}.eicon-custom:before{content:"\e960"}.eicon-footer:before{content:"\e961"}.eicon-header:before{content:"\e962"}.eicon-layout-settings:before{content:"\e963"}.eicon-lightbox-expand:before{content:"\e964"}.eicon-error-404:before{content:"\e965"}.eicon-theme-style:before{content:"\e966"}.eicon-search-results:before{content:"\e967"}.eicon-single-post:before{content:"\e968"}.eicon-site-identity:before{content:"\e969"}.eicon-theme-builder:before{content:"\e96a"}.eicon-download-bold:before{content:"\e96b"}.eicon-share-arrow:before{content:"\e96c"}.eicon-global-settings:before{content:"\e96d"}.eicon-user-preferences:before{content:"\e96e"}.eicon-lock:before{content:"\e96f"}.eicon-export-kit:before{content:"\e970"}.eicon-import-kit:before{content:"\e971"}.eicon-lottie:before{content:"\e972"}.eicon-products-archive:before{content:"\e973"}.eicon-single-product:before{content:"\e974"}.eicon-disable-trash-o:before{content:"\e975"}.eicon-single-page:before{content:"\e976"}.eicon-wordpress-light:before{content:"\e977"}.eicon-cogs-check:before{content:"\e978"}.eicon-custom-css:before{content:"\e979"}.eicon-global-colors:before{content:"\e97a"}.eicon-globe:before{content:"\e97b"}.eicon-typography-1:before{content:"\e97c"}.eicon-background:before{content:"\e97d"}.eicon-device-responsive:before{content:"\e97e"}.eicon-device-wide:before{content:"\e97f"}.eicon-code-highlight:before{content:"\e980"}.eicon-video-playlist:before{content:"\e981"}.eicon-download-kit:before{content:"\e982"}.eicon-kit-details:before{content:"\e983"}.eicon-kit-parts:before{content:"\e984"}.eicon-kit-upload:before{content:"\e985"}.eicon-kit-plugins:before{content:"\e986"}.eicon-kit-upload-alt:before{content:"\e987"}.eicon-hotspot:before{content:"\e988"}.eicon-paypal-button:before{content:"\e989"}.eicon-shape:before{content:"\e98a"}.eicon-wordart:before{content:"\e98b"}.eicon-checkout:before{content:"\e98c"}.eicon-container:before{content:"\e98d"}.eicon-flip:before{content:"\e98e"}.eicon-info:before{content:"\e98f"}.eicon-my-account:before{content:"\e990"}.eicon-purchase-summary:before{content:"\e991"}.eicon-page-transition:before{content:"\e992"}.eicon-spotify:before{content:"\e993"}.eicon-stripe-button:before{content:"\e994"}.eicon-woo-settings:before{content:"\e995"}.eicon-woo-cart:before{content:"\e996"}.eicon-grow:before{content:"\e997"}.eicon-order-end:before{content:"\e998"}.eicon-nowrap:before{content:"\e999"}.eicon-order-start:before{content:"\e99a"}.eicon-progress-tracker:before{content:"\e99b"}.eicon-shrink:before{content:"\e99c"}.eicon-wrap:before{content:"\e99d"}.eicon-align-center-h:before{content:"\e99e"}.eicon-align-center-v:before{content:"\e99f"}.eicon-align-end-h:before{content:"\e9a0"}.eicon-align-end-v:before{content:"\e9a1"}.eicon-align-start-h:before{content:"\e9a2"}.eicon-align-start-v:before{content:"\e9a3"}.eicon-align-stretch-h:before{content:"\e9a4"}.eicon-align-stretch-v:before{content:"\e9a5"}.eicon-justify-center-h:before{content:"\e9a6"}.eicon-justify-center-v:before{content:"\e9a7"}.eicon-justify-end-h:before{content:"\e9a8"}.eicon-justify-end-v:before{content:"\e9a9"}.eicon-justify-space-around-h:before{content:"\e9aa"}.eicon-justify-space-around-v:before{content:"\e9ab"}.eicon-justify-space-between-h:before{content:"\e9ac"}.eicon-justify-space-between-v:before{content:"\e9ad"}.eicon-justify-space-evenly-h:before{content:"\e9ae"}.eicon-justify-space-evenly-v:before{content:"\e9af"}.eicon-justify-start-h:before{content:"\e9b0"}.eicon-justify-start-v:before{content:"\e9b1"}.eicon-woocommerce-cross-sells:before{content:"\e9b2"}.eicon-woocommerce-notices:before{content:"\e9b3"}.eicon-inner-container:before{content:"\e9b4"}.eicon-warning-full:before{content:"\e9b5"}.eicon-exit:before{content:"\e9b6"}.eicon-loop-builder:before{content:"\e9b7"}.eicon-notes:before{content:"\e9b8"}.eicon-read:before{content:"\e9b9"}.eicon-unread:before{content:"\e9ba"}.eicon-carousel-loop:before{content:"\e9bb"}.eicon-mega-menu:before{content:"\eb78"}.eicon-nested-carousel:before{content:"\e9bd"}.eicon-ai:before{content:"\e9be"}.eicon-taxonomy-filter:before{content:"\eb7d"}.eicon-container-grid:before{content:"\ef02"}.eicon-upgrade:before{content:"\e9c1"}.eicon-advanced:before{content:"\eb84"}.eicon-div-block:before{content:"\eb9b"}.eicon-notification:before{content:"\e9c3"}.eicon-light-mode:before{content:"\e9c4"}.eicon-dark-mode:before{content:"\e9c5"}.eicon-upgrade-crown:before{content:"\e9c6"}.eicon-off-canvas:before{content:"\e9c7"}.eicon-speakerphone:before{content:"\e9c9"}.eicon-ehp-cta:before{content:"\e9cb"}.eicon-ehp-forms:before{content:"\e9bc"}.eicon-ehp-hero:before{content:"\e9ca"}.eicon-ehp-zigzag:before{content:"\e9cc"}.eicon-e-button:before{content:"\e9ce"}.eicon-flexbox:before{content:"\e9d0"}.eicon-paragraph:before{content:"\e9d1"}.eicon-icon:before{content:"\e9d2"}.eicon-e-image:before{content:"\e9d3"}.eicon-video:before{content:"\e9d4"}.eicon-svg:before{content:"\e9d5"}.eicon-e-divider:before{content:"\e9d6"}.eicon-e-heading:before{content:"\e9d7"}.eicon-atomic:before{content:"\ebae"}.eicon-library-delete:before{content:"\e9d8"}.eicon-library-copy:before{content:"\e9d9"}.eicon-library-folder-empty:before{content:"\e9da"}.eicon-library-move:before{content:"\e9db"}.eicon-library-edit:before{content:"\e9dc"}.eicon-library-subscription-upgrade:before{content:"\e9de"}.eicon-library-folder-view:before{content:"\e9df"}.eicon-library-grid:before{content:"\e9e1"}.eicon-library-cloud-connect:before{content:"\e9e2"}.eicon-library-import:before{content:"\e9e3"}.eicon-library-list:before{content:"\e9e4"}.eicon-library-cloud-empty:before{content:"\e9e5"}.eicon-folder-plus:before{content:"\e8aa"}.eicon-library-folder:before{content:"\e9e6"}.eicon-accessibility:before{content:"\e9bf"}.eicon-lock-outline:before{content:"\e9e7"}.eicon-e-youtube:before{content:"\e9e8"}.eicon-contact:before{content:"\ebd2"}.eicon-layout:before{content:"\ebd8"}.eicon-components:before{content:"\ebd9"}.eicon-tab-content:before{content:"\ebda"}.eicon-tab-menu:before{content:"\ebdb"}.eicon-atomic-label:before{content:"\e9ee"}.eicon-atomic-form:before{content:"\e9ef"}.eicon-atomic-submit-button:before{content:"\e9f0"}.eicon-atomic-input:before{content:"\e9f1"}.eicon-atomic-text-area:before{content:"\e9f2"}.eicon-atomic-select:before{content:"\e9f3"}.eicon-atomic-checkbox:before{content:"\e9f4"}.eicon-atomic-radiobutton:before{content:"\e9f5"}.eicon-eye:before{content:"\e8ac"}.eicon-elementor-square:before{content:"\e813"}:root{--direction-multiplier:1}body.rtl,html[dir=rtl]{--direction-multiplier:-1}.elementor-hidden{display:none}.elementor-visibility-hidden{visibility:hidden}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;top:-10000em;width:1px;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{clear:both;content:"";display:block;height:0;width:0}.e-logo-wrapper{display:inline-block;line-height:1}.e-logo-wrapper i{color:var(--e-a-color-circle-logo);font-size:2.5em}.elementor *,.elementor :after,.elementor :before{box-sizing:border-box}.elementor a{box-shadow:none;text-decoration:none}.elementor hr{background-color:transparent;margin:0}.elementor img{border:none;border-radius:0;box-shadow:none;height:auto;max-width:100%}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{border:none;line-height:1;margin:0;max-width:100%;width:100%}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{direction:ltr;inset:0;overflow:hidden;position:absolute;z-index:0}.elementor .elementor-background-video-container{pointer-events:none;transition:opacity 1s}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video,.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translate(-50%,-50%)}.elementor .elementor-background-video-hosted{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{inset:0;position:absolute}.elementor .elementor-background-slideshow{inset:0;position:absolute;z-index:0}.elementor .elementor-background-slideshow__slide__image{background-position:50%;background-size:cover;height:100%;width:100%}.e-con-inner>.elementor-element.elementor-absolute,.e-con>.elementor-element.elementor-absolute,.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.e-con-inner>.elementor-element.elementor-fixed,.e-con>.elementor-element.elementor-fixed,.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-element{--flex-direction:initial;--flex-wrap:initial;--justify-content:initial;--align-items:initial;--align-content:initial;--gap:initial;--flex-basis:initial;--flex-grow:initial;--flex-shrink:initial;--order:initial;--align-self:initial;align-self:var(--align-self);flex-basis:var(--flex-basis);flex-grow:var(--flex-grow);flex-shrink:var(--flex-shrink);order:var(--order)}.elementor-element:where(.e-con-full,.elementor-widget){align-content:var(--align-content);align-items:var(--align-items);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);gap:var(--row-gap) var(--column-gap);justify-content:var(--justify-content)}.elementor-invisible{visibility:hidden}.elementor-custom-embed-play{inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translate(calc(-50% * var(--direction-multiplier)),-50%)}.elementor-custom-embed-play i{color:#fff;font-size:100px;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{fill:#fff;filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));height:100px;width:100px}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-custom-embed-play.elementor-playing i,.elementor-custom-embed-play.elementor-playing svg{animation:eicon-spin 2s linear infinite}.elementor-tag{display:inline-flex}.elementor-ken-burns{transition-duration:10s;transition-property:transform;transition-timing-function:linear}.elementor-ken-burns--out{transform:scale(1.3)}.elementor-ken-burns--active{transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{transform:scale(1.3)}.elementor-align-center{text-align:center}.elementor-align-right{text-align:right}.elementor-align-left{text-align:left}.elementor-align-center .elementor-button,.elementor-align-left .elementor-button,.elementor-align-right .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}@media (min-width:-1){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-center .elementor-button,.elementor-widescreen-align-left .elementor-button,.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:-1){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-center .elementor-button,.elementor-laptop-align-left .elementor-button,.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-center .elementor-button,.elementor-tablet_extra-align-left .elementor-button,.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-center .elementor-button,.elementor-tablet-align-left .elementor-button,.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:-1){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-center .elementor-button,.elementor-mobile_extra-align-left .elementor-button,.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-center .elementor-button,.elementor-mobile-align-left .elementor-button,.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}@keyframes eicon-spin{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.eicon-animation-spin{animation:eicon-spin 2s linear infinite}.elementor-section{position:relative}.elementor-section .elementor-container{display:flex;margin-inline:auto;position:relative}@media (max-width:1024px){.elementor-section .elementor-container{flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{align-items:flex-end}.elementor-widget-wrap{align-content:flex-start;flex-wrap:wrap;position:relative;width:100%}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget-wrap.e-swiper-container{width:calc(100% - (var(--e-column-margin-left, 0px) + var(--e-column-margin-right, 0px)))}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-block-end:var(--kit-widget-spacing,20px)}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-block-end:0}.elementor-column{display:flex;min-height:1px;position:relative}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:-1){.elementor-reverse-widescreen>.elementor-container>:first-child{order:10}.elementor-reverse-widescreen>.elementor-container>:nth-child(2){order:9}.elementor-reverse-widescreen>.elementor-container>:nth-child(3){order:8}.elementor-reverse-widescreen>.elementor-container>:nth-child(4){order:7}.elementor-reverse-widescreen>.elementor-container>:nth-child(5){order:6}.elementor-reverse-widescreen>.elementor-container>:nth-child(6){order:5}.elementor-reverse-widescreen>.elementor-container>:nth-child(7){order:4}.elementor-reverse-widescreen>.elementor-container>:nth-child(8){order:3}.elementor-reverse-widescreen>.elementor-container>:nth-child(9){order:2}.elementor-reverse-widescreen>.elementor-container>:nth-child(10){order:1}}@media (min-width:1025px) and (max-width:-1){.elementor-reverse-laptop>.elementor-container>:first-child{order:10}.elementor-reverse-laptop>.elementor-container>:nth-child(2){order:9}.elementor-reverse-laptop>.elementor-container>:nth-child(3){order:8}.elementor-reverse-laptop>.elementor-container>:nth-child(4){order:7}.elementor-reverse-laptop>.elementor-container>:nth-child(5){order:6}.elementor-reverse-laptop>.elementor-container>:nth-child(6){order:5}.elementor-reverse-laptop>.elementor-container>:nth-child(7){order:4}.elementor-reverse-laptop>.elementor-container>:nth-child(8){order:3}.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:2}.elementor-reverse-laptop>.elementor-container>:nth-child(10){order:1}}@media (min-width:-1) and (max-width:-1){.elementor-reverse-laptop>.elementor-container>:first-child{order:10}.elementor-reverse-laptop>.elementor-container>:nth-child(2){order:9}.elementor-reverse-laptop>.elementor-container>:nth-child(3){order:8}.elementor-reverse-laptop>.elementor-container>:nth-child(4){order:7}.elementor-reverse-laptop>.elementor-container>:nth-child(5){order:6}.elementor-reverse-laptop>.elementor-container>:nth-child(6){order:5}.elementor-reverse-laptop>.elementor-container>:nth-child(7){order:4}.elementor-reverse-laptop>.elementor-container>:nth-child(8){order:3}.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:2}.elementor-reverse-laptop>.elementor-container>:nth-child(10){order:1}}@media (min-width:1025px) and (max-width:-1){.elementor-reverse-laptop>.elementor-container>:first-child,.elementor-reverse-laptop>.elementor-container>:nth-child(10),.elementor-reverse-laptop>.elementor-container>:nth-child(2),.elementor-reverse-laptop>.elementor-container>:nth-child(3),.elementor-reverse-laptop>.elementor-container>:nth-child(4),.elementor-reverse-laptop>.elementor-container>:nth-child(5),.elementor-reverse-laptop>.elementor-container>:nth-child(6),.elementor-reverse-laptop>.elementor-container>:nth-child(7),.elementor-reverse-laptop>.elementor-container>:nth-child(8),.elementor-reverse-laptop>.elementor-container>:nth-child(9){order:0}.elementor-reverse-tablet_extra>.elementor-container>:first-child{order:10}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet_extra>.elementor-container>:nth-child(10){order:1}}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){order:1}}@media (min-width:-1) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){order:1}}@media (min-width:768px) and (max-width:-1){.elementor-reverse-tablet>.elementor-container>:first-child,.elementor-reverse-tablet>.elementor-container>:nth-child(10),.elementor-reverse-tablet>.elementor-container>:nth-child(2),.elementor-reverse-tablet>.elementor-container>:nth-child(3),.elementor-reverse-tablet>.elementor-container>:nth-child(4),.elementor-reverse-tablet>.elementor-container>:nth-child(5),.elementor-reverse-tablet>.elementor-container>:nth-child(6),.elementor-reverse-tablet>.elementor-container>:nth-child(7),.elementor-reverse-tablet>.elementor-container>:nth-child(8),.elementor-reverse-tablet>.elementor-container>:nth-child(9){order:0}.elementor-reverse-mobile_extra>.elementor-container>:first-child{order:10}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(2){order:9}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(3){order:8}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(4){order:7}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(5){order:6}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(6){order:5}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(7){order:4}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(8){order:3}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(9){order:2}.elementor-reverse-mobile_extra>.elementor-container>:nth-child(10){order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>:first-child{order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){order:1}.elementor-column{width:100%}}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:-1){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;margin-block-end:calc(-1 * var(--grid-row-gap));width:100%;word-spacing:var(--grid-column-gap)}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-block-end:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:-1){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:-1){#elementor-device-mode:after{content:"laptop";content:"tablet_extra"}}@media (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:-1){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.e-con{--border-radius:0;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--border-style:initial;--border-color:initial;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--content-width:min(100%,var(--container-max-width,1140px));--width:100%;--min-height:initial;--height:auto;--text-align:initial;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--padding-top:var(--container-default-padding-top,10px);--padding-right:var(--container-default-padding-right,10px);--padding-bottom:var(--container-default-padding-bottom,10px);--padding-left:var(--container-default-padding-left,10px);--position:relative;--z-index:revert;--overflow:visible;--gap:var(--widgets-spacing,20px);--row-gap:var(--widgets-spacing-row,20px);--column-gap:var(--widgets-spacing-column,20px);--overlay-mix-blend-mode:initial;--overlay-opacity:1;--overlay-transition:0.3s;--e-con-grid-template-columns:repeat(3,1fr);--e-con-grid-template-rows:repeat(2,1fr);border-radius:var(--border-radius);height:var(--height);min-height:var(--min-height);min-width:0;overflow:var(--overflow);position:var(--position);width:var(--width);z-index:var(--z-index);--flex-wrap-mobile:wrap}.e-con:where(:not(.e-div-block-base)){transition:background var(--background-transition,.3s),border var(--border-transition,.3s),box-shadow var(--border-transition,.3s),transform var(--e-con-transform-transition-duration,.4s)}.e-con{--margin-block-start:var(--margin-top);--margin-block-end:var(--margin-bottom);--margin-inline-start:var(--margin-left);--margin-inline-end:var(--margin-right);--padding-inline-start:var(--padding-left);--padding-inline-end:var(--padding-right);--padding-block-start:var(--padding-top);--padding-block-end:var(--padding-bottom);--border-block-start-width:var(--border-top-width);--border-block-end-width:var(--border-bottom-width);--border-inline-start-width:var(--border-left-width);--border-inline-end-width:var(--border-right-width)}body.rtl .e-con{--padding-inline-start:var(--padding-right);--padding-inline-end:var(--padding-left);--margin-inline-start:var(--margin-right);--margin-inline-end:var(--margin-left);--border-inline-start-width:var(--border-right-width);--border-inline-end-width:var(--border-left-width)}.e-con{margin-block-end:var(--margin-block-end);margin-block-start:var(--margin-block-start);margin-inline-end:var(--margin-inline-end);margin-inline-start:var(--margin-inline-start);padding-inline-end:var(--padding-inline-end);padding-inline-start:var(--padding-inline-start)}.e-con.e-flex{--flex-direction:column;--flex-basis:auto;--flex-grow:0;--flex-shrink:1;flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis)}.e-con-full,.e-con>.e-con-inner{padding-block-end:var(--padding-block-end);padding-block-start:var(--padding-block-start);text-align:var(--text-align)}.e-con-full.e-flex,.e-con.e-flex>.e-con-inner{flex-direction:var(--flex-direction)}.e-con,.e-con>.e-con-inner{display:var(--display)}.e-con.e-grid{--grid-justify-content:start;--grid-align-content:start;--grid-auto-flow:row}.e-con.e-grid,.e-con.e-grid>.e-con-inner{align-content:var(--grid-align-content);align-items:var(--align-items);grid-auto-flow:var(--grid-auto-flow);grid-template-columns:var(--e-con-grid-template-columns);grid-template-rows:var(--e-con-grid-template-rows);justify-content:var(--grid-justify-content);justify-items:var(--justify-items)}.e-con-boxed.e-flex{align-content:normal;align-items:normal;flex-direction:column;flex-wrap:nowrap;justify-content:normal}.e-con-boxed.e-grid{grid-template-columns:1fr;grid-template-rows:1fr;justify-items:legacy}.e-con-boxed{gap:initial;text-align:initial}.e-con.e-flex>.e-con-inner{align-content:var(--align-content);align-items:var(--align-items);align-self:auto;flex-basis:auto;flex-grow:1;flex-shrink:1;flex-wrap:var(--flex-wrap);justify-content:var(--justify-content)}.e-con.e-grid>.e-con-inner{align-items:var(--align-items);justify-items:var(--justify-items)}.e-con>.e-con-inner{gap:var(--row-gap) var(--column-gap);height:100%;margin:0 auto;max-width:var(--content-width);padding-inline-end:0;padding-inline-start:0;width:100%}:is(.elementor-section-wrap,[data-elementor-id])>.e-con{--margin-left:auto;--margin-right:auto;max-width:min(100%,var(--width))}:is([data-widget_type="e-component.default"],[data-widget_type="e-component.default"]>.elementor-section-wrap)>.e-con{--margin-right:0px;--margin-left:0px}.e-con .elementor-widget.elementor-widget{margin-block-end:0}.e-con:before,.e-con>.elementor-background-slideshow:before,.e-con>.elementor-motion-effects-container>.elementor-motion-effects-layer:before,:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container:before{border-block-end-width:var(--border-block-end-width);border-block-start-width:var(--border-block-start-width);border-color:var(--border-color);border-inline-end-width:var(--border-inline-end-width);border-inline-start-width:var(--border-inline-start-width);border-radius:var(--border-radius);border-style:var(--border-style);content:var(--background-overlay);display:block;height:max(100% + var(--border-top-width) + var(--border-bottom-width),100%);left:calc(0px - var(--border-left-width));mix-blend-mode:var(--overlay-mix-blend-mode);opacity:var(--overlay-opacity);position:absolute;top:calc(0px - var(--border-top-width));transition:var(--overlay-transition,.3s);width:max(100% + var(--border-left-width) + var(--border-right-width),100%)}.e-con:before{transition:background var(--overlay-transition,.3s),border-radius var(--border-transition,.3s),opacity var(--overlay-transition,.3s)}.e-con>.elementor-background-slideshow,:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container{border-block-end-width:var(--border-block-end-width);border-block-start-width:var(--border-block-start-width);border-color:var(--border-color);border-inline-end-width:var(--border-inline-end-width);border-inline-start-width:var(--border-inline-start-width);border-radius:var(--border-radius);border-style:var(--border-style);height:max(100% + var(--border-top-width) + var(--border-bottom-width),100%);left:calc(0px - var(--border-left-width));top:calc(0px - var(--border-top-width));width:max(100% + var(--border-left-width) + var(--border-right-width),100%)}@media (max-width:767px){:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container.elementor-hidden-mobile{display:none}}:is(.e-con,.e-con>.e-con-inner)>.elementor-background-video-container:before{z-index:1}:is(.e-con,.e-con>.e-con-inner)>.elementor-background-slideshow:before{z-index:2}.e-con .elementor-widget{min-width:0}.e-con .elementor-widget-empty,.e-con .elementor-widget-google_maps,.e-con .elementor-widget-video,.e-con .elementor-widget.e-widget-swiper{width:100%}.e-con>.e-con-inner>.elementor-widget>.elementor-widget-container,.e-con>.elementor-widget>.elementor-widget-container{height:100%}.e-con.e-con>.e-con-inner>.elementor-widget,.elementor.elementor .e-con>.elementor-widget{max-width:100%}.e-con .elementor-widget:not(:last-child){--kit-widget-spacing:0px}@media (max-width:767px){.e-con.e-flex{--width:100%;--flex-wrap:var(--flex-wrap-mobile)}.e-con.e-flex .elementor-widget-archive-posts{width:100%}}.elementor-form-fields-wrapper{display:flex;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{flex-grow:1}.elementor-field-group{align-items:center;flex-wrap:wrap}.elementor-field-group.elementor-field-type-submit{align-items:flex-end}.elementor-field-group .elementor-field-textual{background-color:transparent;border:1px solid #69727d;color:#1f2124;flex-grow:1;max-width:100%;vertical-align:middle;width:100%}.elementor-field-group .elementor-field-textual:focus{box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;flex-basis:100%;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding-inline-end:20px;text-transform:inherit}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;inset-block-start:50%;inset-inline-end:10px;pointer-events:none;position:absolute;text-shadow:0 0 3px rgba(0,0,0,.3);transform:translateY(-50%)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:flex;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-inline-end:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{color:red;content:"*";padding-inline-start:.2em}.elementor-field-textual{border-radius:3px;font-size:15px;line-height:1.4;min-height:40px;padding:5px 14px}.elementor-field-textual.elementor-size-xs{border-radius:2px;font-size:13px;min-height:33px;padding:4px 12px}.elementor-field-textual.elementor-size-md{border-radius:4px;font-size:16px;min-height:47px;padding:6px 16px}.elementor-field-textual.elementor-size-lg{border-radius:5px;font-size:18px;min-height:59px;padding:7px 20px}.elementor-field-textual.elementor-size-xl{border-radius:6px;font-size:20px;min-height:72px;padding:8px 24px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit,[dir=rtl] .elementor-button-align-start .e-form__buttons,[dir=rtl] .elementor-button-align-start .elementor-field-type-submit{justify-content:flex-end}[dir=rtl] .elementor-button-align-end .e-form__buttons,[dir=rtl] .elementor-button-align-end .elementor-field-type-submit{justify-content:flex-start}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}@media screen and (max-width:1024px){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit,[dir=rtl] .elementor-tablet-button-align-start .e-form__buttons,[dir=rtl] .elementor-tablet-button-align-start .elementor-field-type-submit{justify-content:flex-end}[dir=rtl] .elementor-tablet-button-align-end .e-form__buttons,[dir=rtl] .elementor-tablet-button-align-end .elementor-field-type-submit{justify-content:flex-start}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}}@media screen and (max-width:767px){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{flex-basis:50%;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit,[dir=rtl] .elementor-mobile-button-align-start .e-form__buttons,[dir=rtl] .elementor-mobile-button-align-start .elementor-field-type-submit{justify-content:flex-end}[dir=rtl] .elementor-mobile-button-align-end .e-form__buttons,[dir=rtl] .elementor-mobile-button-align-end .elementor-field-type-submit{justify-content:flex-start}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{font-size:1em;line-height:1;margin:10px 0}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-style:normal;font-weight:400;margin-inline-end:5px;vertical-align:middle}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{border:none;padding-block-end:0;padding-block-start:0}.elementor-form .elementor-button-content-wrapper,.elementor-form .elementor-button>span{display:flex;flex-direction:row;gap:5px;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)) .elementor-widget-container,.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)):not(:has(.elementor-widget-container)){transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s)}.elementor-heading-title{line-height:1;margin:0;padding:0}.elementor-button{background-color:#69727d;border-radius:3px;color:#fff;display:inline-block;fill:#fff;font-size:15px;line-height:1;padding:12px 24px;text-align:center;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:flex;flex-direction:row;gap:5px;justify-content:center}.elementor-button-icon{align-items:center;display:flex}.elementor-button-icon svg{height:auto;width:1em}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{display:inline-block}.elementor-button.elementor-size-xs{border-radius:2px;font-size:13px;padding:10px 20px}.elementor-button.elementor-size-md{border-radius:4px;font-size:16px;padding:15px 30px}.elementor-button.elementor-size-lg{border-radius:5px;font-size:18px;padding:20px 40px}.elementor-button.elementor-size-xl{border-radius:6px;font-size:20px;padding:25px 50px}.elementor-button span{text-decoration:inherit}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-view-stacked .elementor-icon{background-color:#69727d;color:#fff;fill:#fff;padding:.5em}.elementor-view-framed .elementor-icon{background-color:transparent;border:3px solid #69727d;color:#69727d;padding:.5em}.elementor-icon{color:#69727d;display:inline-block;font-size:50px;line-height:1;text-align:center;transition:all .3s}.elementor-icon:hover{color:#69727d}.elementor-icon i,.elementor-icon svg{display:block;height:1em;position:relative;width:1em}.elementor-icon i:before,.elementor-icon svg:before{left:50%;position:absolute;transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-square .elementor-icon{border-radius:0}.elementor-shape-rounded .elementor-icon{border-radius:10%}.elementor-shape-circle .elementor-icon{border-radius:50%}.e-transform .elementor-widget-container,.e-transform:not(:has(.elementor-widget-container)){transform:perspective(var(--e-transform-perspective,0)) rotate(var(--e-transform-rotateZ,0)) rotateX(var(--e-transform-rotateX,0)) rotateY(var(--e-transform-rotateY,0)) translate(var(--e-transform-translate,0)) translateX(var(--e-transform-translateX,0)) translateY(var(--e-transform-translateY,0)) scaleX(calc(var(--e-transform-flipX, 1) * var(--e-transform-scaleX, var(--e-transform-scale, 1)))) scaleY(calc(var(--e-transform-flipY, 1) * var(--e-transform-scaleY, var(--e-transform-scale, 1)))) skewX(var(--e-transform-skewX,0)) skewY(var(--e-transform-skewY,0));transform-origin:var(--e-transform-origin-y) var(--e-transform-origin-x)}.e-con.e-transform{transform:perspective(var(--e-con-transform-perspective,0)) rotate(var(--e-con-transform-rotateZ,0)) rotateX(var(--e-con-transform-rotateX,0)) rotateY(var(--e-con-transform-rotateY,0)) translate(var(--e-con-transform-translate,0)) translateX(var(--e-con-transform-translateX,0)) translateY(var(--e-con-transform-translateY,0)) scaleX(calc(var(--e-con-transform-flipX, 1) * var(--e-con-transform-scaleX, var(--e-con-transform-scale, 1)))) scaleY(calc(var(--e-con-transform-flipY, 1) * var(--e-con-transform-scaleY, var(--e-con-transform-scale, 1)))) skewX(var(--e-con-transform-skewX,0)) skewY(var(--e-con-transform-skewY,0));transform-origin:var(--e-con-transform-origin-y) var(--e-con-transform-origin-x)}.animated{animation-duration:1.25s}.animated.animated-slow{animation-duration:2s}.animated.animated-fast{animation-duration:.75s}.animated.infinite{animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{animation:none!important}html *{transition-delay:0s!important;transition-duration:0s!important}}@media (max-width:767px){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:-1) and (max-width:-1){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:-1) and (max-width:-1){.elementor .elementor-hidden-laptop,.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:1025px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:-1){.elementor .elementor-hidden-widescreen{display:none}}