@import url("https://use.typekit.net/haj1nag.css");

/* =================================================================
/* SECTION Font changes
================================================================= */

.ua-home {
  --ua_font--heading: "canada-type-gibson", sans-serif;
}

.ua-home .ua_minerva h1,
.ua-home .ua_minerva h2,
.ua-home .ua_minerva h3,
.ua-home .ua_minerva h4,
.ua-home .ua_minerva h5,
.ua-home .ua_minerva h6 {
  letter-spacing: normal;
}

.ua-home .ua_minerva .ua_callout .ua_callout_title,
.ua-home .ua_minerva .ua_card .ua_card_title {
  font-weight: 600;
}

:root {
  --ua_font-size--hero: 4rem;
  --ua_line-height--hero: 3.5rem;
}

@media (min-width: 30rem) {
  :root {
    --ua_font-size--hero: 5rem;
    --ua_line-height--hero: 4.25rem;
  }
}

@media (min-width: 77rem) {
  :root {
    --ua_font-size--hero: 6rem;
    --ua_line-height--hero: 5.25rem;
  }
}

.ua-home .has-hero-font-size {
  font-size: var(--ua_font-size--hero, 5rem);
  line-height: var(--ua_line-height--hero);
  letter-spacing: normal;
}

.ua-home .ua_minerva .ua_site-footer h1,
.ua-home .ua_minerva .ua_site-footer h2,
.ua-home .ua_minerva .ua_site-footer h3,
.ua-home .ua_minerva .ua_site-footer h4,
.ua-home .ua_minerva .ua_site-footer h5,
.ua-home .ua_minerva .ua_site-footer h6 {
  font-family: var(--ua_font--body);
}

/* !SECTION Font changes */
/* =================================================================
/* SECTION Google Custom Search
================================================================= */

.ua_minerva .gsc-search-box tbody tr {
  border: none;
}

.ua_minerva table.gsc-search-box td.gsc-input {
  padding: 0;
}

.ua_minerva .gsc-search-box td {
  line-height: var(--ua_line-height--large, 2rem);
  padding: 0;
}

.ua_minerva .gsc-search-box .gsc-input-box {
  border-right: none;
  padding-left: 5px;
}

.ua_minerva .gsc-search-box button.gsc-search-button {
  border-radius: 0;
  border-width: 1px;
  cursor: pointer;
  line-height: var(--ua_line-height--large);
  padding: 0 16px;
}

.search .ua_minerva tr:hover {
  background-color: transparent;
}

.ua_minerva .gsc-control-searchbox-only {
  padding: 0 var(--ua_space--flow-half);
}

.ua_minerva .gsc-above-wrapper-area {
  border-bottom: none;
}

.ua_minerva .gsc-search-box .gsst_a {
  display: flex;
  text-decoration: none;
}

.gs-webResult.gs-result a.gs-title:link, .gs-webResult.gs-result a.gs-title:link b, .gs-imageResult a.gs-title:link, .gs-imageResult a.gs-title:link b, .gsc-cursor-page {
  font-size: var(--ua_font-size--normal);
}

.gs-webResult div.gs-visibleUrl-breadcrumb {
  font-style: italic;
}

.search .gsc-result-info-container {
  padding-left: 0;
}

.search .gsc-wrapper {
  margin: 0 auto;
  margin-top: var(--ua_space--flow);
  max-width: min((var(--ua_layout-width--content, 58rem)), 100%)
}

/* !SECTION Google Custom Search */
/* =================================================================
/* SECTION Link List Variant
================================================================= */

.ua-home .ua_minerva .is-style-home > .ua_link-list {
  border: none;
  background: transparent;
}

.ua-home .ua_minerva .is-style-home .ua_link-list li a {
  padding: var(--ua_space--flow-half) var(--ua_space--1);
  align-content: center;
  border: none;
  border-bottom: 1px solid var(--ua_color-text--default);
  color: var(--ua_color-text--default);
  background: transparent !important;
  margin-block-start: 0;
}

.ua-home .ua_minerva .is-style-home .ua_link-list a::after {
  content: '\f054';
  float: right;
  font-size: var(--ua_font-size--xsmall);
  font-family:var(--ua_font--icon);
}

.ua-home .ua_minerva .is-style-home .ua_link-list a:hover,
.ua-home .ua_minerva .is-style-home .ua_link-list a:focus {
  color: inherit;
  background: var(--ua_color-background--element) !important;
  border-bottom: 1px solid var(--ua_color-text--default);
}

.ua_minerva .is-style-prominent .is-style-home .ua_link-list a:hover,
.ua_minerva .is-style-porminent .is-style-home .ua_link-list a:focus,
.ua_minerva .has-black-background-color ~ .wp-block-cover__inner-container .is-style-home .ua_link-list a:focus,
.ua_minerva .has-black-background-color ~ .wp-block-cover__inner-container .is-style-home .ua_link-list a:hover {
  color: var(--ua_color-background--surface);
  background: var(--ua_color-text--default) !important;
}

/* !SECTION Link List Variant */
/* =================================================================
/* SECTION Brand Bar
================================================================= */

/* Additional styles for the brand bar */
.ua_minerva .ua_brand-bar {
  border-bottom: 1px solid var(--ua_color-background--chip, #dfe2e5);
}

/* ==============================
/* SECTION Homepage brand bar edits
============================== */

/* Remove background on homepage */
.home .ua_minerva .ua_brand-bar {
  position: fixed;
  background: transparent;
  border-bottom: none;
  z-index: 1000;
  width: 100%;
}

/* Apply background styles on scroll */
.home .ua_minerva .ua_brand-bar.active--scroll {
  background: var(--ua_color-accent--primary, #9e1b32);
  border-bottom: 1px solid var(--ua_color-background--chip, #dfe2e5);
  top: 0;
}

/* Fix for admin bar overlap when logged in */
.home.logged-in .ua_minerva .ua_brand-bar.active--scroll {
  top: 32px;
}

@media (max-width: 782px) {
  .home.logged-in .ua_minerva .ua_brand-bar.active--scroll {
    top: 46px;
    /* Adjusted for admin bar height */
  }
}

@media (max-width: 600px) {
  .home.logged-in .ua_minerva .ua_brand-bar.active--scroll {
    top: 0;
    /* Adjusted for admin bar height */
  }
}

.home .ua_minerva .ua_brand-bar:not(.active--scroll) .ua_brand-bar_logo:hover,
.home .ua_minerva .ua_brand-bar:not(.active--scroll) .ua_brand-bar_logo:focus {
  background: transparent;
}

/* !SECTION Homepage brand bar edits */
/* ==============================
/* SECTION Logo + SearchBar adjustments
============================== */

.ua_brand-bar:has(.ua_brand-bar_search-button[aria-expanded="false"]) .ua_brand-bar_logo {
  flex-shrink: 10;
}

.ua_brand-bar:has(.ua_brand-bar_search-button[aria-expanded="true"]) .ua_brand-bar_logo {
  display: none;
}

@media (min-width: 30rem) {
  .ua_brand-bar:has(.ua_brand-bar_search-button[aria-expanded="true"]) .ua_brand-bar_logo {
    display: flex;
  }
}

@media (min-width: 58rem) {
  .ua_minerva .ua_brand-bar:has(.ua_brand-bar_search-button[aria-expanded="true"]) .ua_brand-bar_logo,
  .ua_minerva .ua_brand-bar:has(.ua_brand-bar_search-button[aria-expanded="false"]) .ua_brand-bar_logo {
    flex-shrink: 0;
  }
}

/* !SECTION Logo + SearchBar adjustments */
/* ==============================
/* SECTION Button Group
============================== */

.ua_minerva .ua_brand-bar_links {
  display: flex;
  border-bottom-left-radius: var(--ua_border-radius--medium);
  border-bottom-right-radius: var(--ua_border-radius--medium);
  overflow: hidden;
}

.ua_brand-bar_links:has(.ua_brand-bar_search-button[aria-expanded="true"]) {
  width: 100%;
  justify-content: end;
}

.ua_minerva .ua_brand-bar_menu_header button,
.ua_minerva .ua_brand-bar_links button {
  padding: var(--ua_space--2);
  border: none;
  border-radius: 0;
}

.ua_minerva .ua_brand-bar_links > *:not(:first-child) {
  border-left: 1px solid;
  border-image: linear-gradient(to bottom, var(--ua_color-accent--primary, #9e1b32) 30%, var(--ua_color-text--inverse, #ffffff) 30%, var(--ua_color-text--inverse, #ffffff) 70%, var(--ua_color-accent--primary, #9e1b32) 70%) 3;
}

.ua_minerva .ua_brand-bar_links button:hover,
.ua_minerva .ua_brand-bar_links button:focus,
.ua_minerva .ua_brand-bar_links button:focus-visible {
  outline-offset: -0.25rem;
  text-decoration: none;
}

.ua_minerva .ua_brand-bar_links input {
  border-radius: var(--ua_border-radius--full);
  margin-right: var(--ua_space--flow-half, 1rem);
  color: var(--ua_color-background--surface, #ffffff);
  background-color: var(--ua_color-text--link-hover, #821E2E);
}

.ua_minerva .ua_brand-bar_links input:focus-visible {
  outline: 2px solid white;
}

@media (min-width: 30rem) {
  .ua_brand-bar_links:has(.ua_brand-bar_search-button[aria-expanded="true"]) {
    width: auto;
    justify-content: end;
  }

  .ua_minerva .ua_brand-bar_links button {
    padding-inline: var(--ua_space--flow, 2rem);
    padding-block: var(--ua_space--flow-half, 1rem);
  }
}

/* !SECTION Button Group */
/* ==============================
/* SECTION Search Bar
============================== */

.ua_minerva .ua_brand-bar_search {
  display: flex;
}

.ua_minerva .ua_brand-bar_search-form[aria-hidden="true"],
.ua_minerva .ua_brand-bar_search-button[aria-expanded="false"] .fa-xmark,
.ua_minerva .ua_brand-bar_search-button[aria-expanded="true"] .fa-magnifying-glass {
  display: none;
}

.ua_minerva .ua_brand-bar_search-form[aria-hidden="false"] {
  display: flex;
  align-items: center;
  background: var(--ua_color-accent--primary, #9e1b32);
  margin-inline-start: calc(var(--ua_space--1) * -1);
  width: 100%;
}

@media (min-width: 30rem) {
  .ua_brand-bar_search-form[aria-hidden="false"] {
    width: auto;
  }
}

/* !SECTION Search Bar */
/* !SECTION Brand Bar */
/* =================================================================
/* SECTION Brand Bar Menu
================================================================= */

/* Possible fix for page scrolling behind the dialog but it scrolls
 * the page back to the top when the menu is opened. */
/* body:has(.ua_brand-bar dialog[open]) {
  position: fixed;
  width: 100%;
} */

.ua_minerva .ua_brand-bar dialog::backdrop {
  backdrop-filter: blur(5px);
}

.ua_minerva .ua_brand-bar dialog[open] {
  overflow: hidden;
  position: fixed;
  height: 100dvh;
  width: 100vw;
  max-height: 100dvh;
  max-width: 100vw;
  background: transparent;
  border: 0;
}

.ua_minerva .ua_brand-bar_menu {
  overflow: auto;
  height: 100vh;
  width: 100%;
  background: var(--ua_color-background--surface);
}

@media (min-width: 58rem) {
  .ua_minerva .ua_brand-bar dialog[open] {
    display: grid;
    grid-template-rows: auto 1fr;
    grid-template-columns: 1fr 2fr;
    grid-template-areas: 'left right';
    overflow-x: hidden;
    grid-column-gap: var(--ua_space--16, 8rem);
  }

  .ua_minerva .ua_brand-bar_menu {
    grid-area: right;
    box-shadow: -5px 0px 5px 1px rgba(0, 0, 0, 0.1);
  }
}

@media (min-width: 77rem) {
  .ua_minerva .ua_brand-bar dialog[open] {
    grid-template-columns: 2fr 1fr;
  }
}

/* Menu content areas */

.ua_minerva .ua_brand-bar_menu_header {
  width: 100%;
  margin: auto;
  display: flex;
  justify-content: space-between;
  margin-block-end: var(--ua_space--flow-double);
}

.ua_minerva .ua_brand-bar_menu_header:has(button:only-child) {
  justify-content: end;
}

.ua_minerva .ua_brand-bar_menu_header button {
  background: transparent;
  border: 0;
  text-decoration: none;
  text-transform: uppercase;
  word-spacing: 1em;
  color: var(--ua_color-text--default);
  border-bottom-left-radius: var(--ua_border-radius--small);
}

.ua_minerva .ua_brand-bar_menu_header button:hover,
.ua_minerva .ua_brand-bar_menu_header button:focus {
  background-color: var(--ua_color-background--element);
  color: var(--ua_color-text--default);
  text-decoration: none;
}

.ua_minerva .ua_brand-bar_menu_body {
  max-width: 30rem;
  padding-inline: var(--ua_space--gutter);
  margin: auto;
}

/* SECTION: Primary Navigation */

.ua_minerva .ua_brand-bar_menu_primary-nav li:not(:first-child) {
  margin-block-start: var(--ua_space--2);
}

.ua_minerva .ua_brand-bar_menu_primary-nav li a {
  display: block;
  font-family: "proxima-nova-wide", var(--ua_font--heading) !important;
  font-weight: 900;
  font-size: var(--ua_font-size--large);
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0.025em;
}

.ua_minerva .ua_brand-bar_menu_primary-nav li a:hover,
.ua_minerva .ua_brand-bar_menu_primary-nav li a:focus-visible {
  color: var(--ua_color-text--default, #ffffff);
  text-decoration: underline;
  text-decoration-thickness: 0.1em;
}

/* !SECTION: Primary Navigation */
/* SECTION: Menu Content Area */

.ua_minerva .ua_brand-bar_menu_body_content {
  margin-block-start: var(--ua_space--flow-double);
  margin-block-end: var(--ua_space--16);
}

.ua_minerva .ua_brand-bar_menu_body_search-form {
  display: flex;
  background: var(--ua_color-background--element);
  border-radius: var(--ua_border-radius--medium);
  margin-block: var(--ua_space--flow-double);
  align-items: center;
}

/* Restore focus ring to parent */
.ua_minerva .ua_brand-bar_menu_body_search-form:has(input:focus) {
  outline: medium auto currentColor;
  outline: medium auto invert;
  outline: 5px auto -webkit-focus-ring-color;
}

.ua_minerva .ua_brand-bar_menu_body_search-form .fa-solid,
.ua_minerva .ua_brand-bar_menu_body_search-form input {
  padding: var(--ua_space--2);
}

.ua_minerva .ua_brand-bar_menu_body_search-form input {
  background: transparent;
  color: var(--ua_color-text--default);
  border: 0;
  padding-inline-start: 0;
}

/* Remove focus ring from input, moved to parent above */
.ua_minerva .ua_brand-bar_menu_body_search-form input:focus-visible {
  outline: none;
}

/* !SECTION: Menu Content Area */
/* SECTION: Animations */

@media (prefers-reduced-motion: no-preference) {
  .ua_minerva .ua_brand-bar dialog[open] .ua_brand-bar_menu {
    opacity: 0;
  }

  .ua_brand-bar_menu--opening[open] .ua_brand-bar_menu {
    opacity: 1 !important;
    animation: ua_menu-slide-in 0.2s ease-out forwards;
  }

  .ua_brand-bar_menu--closing .ua_brand-bar_menu {
    opacity: 1 !important;
    animation: ua_menu-slide-out 0.2s ease-in forwards;
  }
}

@keyframes ua_menu-slide-in {
  0% {
    transform: translate(100%, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@keyframes ua_menu-slide-out {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(100%, 0);
  }
}

/* !SECTION Animations */
/* !SECTION Brand Bar Menu */
/* =================================================================
/* SECTION Weather widget
================================================================= */

.ua_minerva .ua_weather-widget {
  display: flex;
  justify-content: end;
  color: var(--ua_color-text--subtle);
}

.ua_minerva .ua_weather-widget[data-hydrated="false"] {
  display: none;
}

.ua_minerva .ua_weather-widget .fa {
  font-size: var(--ua_font-size--large);
  margin-inline-end: var(--ua_space--1);
  line-height: 1;
  align-content: center;
  margin-inline-end: var(--ua_space--flow-half);
}

.ua_minerva .ua_weather-widget_temp {
  font-size: var(--ua_font-size--medium);
  line-height: 1;
  font-weight: bold;
}

.ua_minerva .ua_weather-widget_text span {
  display: block;
}

/* !SECTION Weather widget */
