/**
 * Accessible site header: sticky bar (default) or fixed overlay over hero (data-header-overlay),
 * mega menu, mobile drawer, dark mode.
 *
 * Sage / Bud: in resources/styles/app.css add:
 *   @import "site-header.css";
 *
 * Or enqueue via inc/site-header-assets.php (see functions.php note in that file).
 */

:root {
   --header-dropdown-gradient: linear-gradient(136deg, var(--color-dark-purple) 0%, var(--color-twilight) 80%, var(--color-purple) 100%);
   --header-border-color: rgba(249, 247, 246, 0.1);
   --header-shadow: 0 1px 0 rgba(15, 23, 42, 0.06);
   --header-z-bar: 1000;
   --header-z-panel: 1001;
   --header-focus-ring: 0 0 0 2px #fff, 0 0 0 4px var(--color-yellow);
 }
.main > .gb-container.is-first-block {
  padding-top: 4rem;
}
.main > section.section:first-child {
  padding-top: 5rem;
}
.main > .section.is-first-block {
  padding-top: 6rem;
}
.flex.single-blog {
    padding-top: 5.25rem;
}
article.video header, .glossary-item-hero-section {
  padding-top: 7.25rem;
}
.page-template-template-flexible .main > section.section:first-child {
  padding-top: 8rem;
}

@media only screen and (min-width: 560px) {

.main > .gb-container.is-first-block{
  padding-top: 5rem;
}

.main > section.section:first-child, .flex.single-blog {
  padding-top: 6rem;
}
.event-banner-active .main > section.section:first-child {
  padding-top: 7rem;
}
.event-banner-active .main > .gb-container.is-first-block {
  padding-top: 7.5rem;
}
.page-template-template-flexible .main > section.section:first-child {padding-top:8rem;}
.main > .section.is-first-block {padding-top:9rem;}

.event-banner-active .main > .section.is-first-block, .event-banner-active.page-template-template-flexible .main > section.section:first-child {
  padding-top: 10rem;
}
.event-banner-active .flex.single-blog, .event-banner-active article.video header, .event-banner-active .glossary-item-hero-section {
    padding-top: 12rem;
}
}
@media only screen and (min-width: 1024.1px) {
.event-banner-active .flex.single-blog {
    padding-top: 9.25rem;
}
}
 .site-header {
   position: sticky;
   top: 0;
   z-index: var(--header-z-bar);
   padding-top: 0.5rem;
   padding-bottom: 0.5rem;
   background: transparent;
   border-bottom: none;
   box-shadow: none;
 }

 /* Float over first section; JS toggles .is-past-hero after scroll >= event banner height (or one viewport if no banner) */
 [data-site-header][data-header-overlay] {
 /*  --header-top-offset: 0px;*/
   position: fixed;
   left: 0;
   right: 0;
  /* top: calc(var(--header-top-offset) + 2.25rem);*/
  top: 0;
   width: 100%;
   z-index: var(--header-z-bar);
   padding-top: 0.5rem;
   padding-bottom: 0.5rem;
   background: transparent;
   border-bottom: none;
   box-shadow: none;
   transition:
     background-color 0.2s ease,
     box-shadow 0.2s ease,
     border-color 0.2s ease;
 }

/* [data-site-header][data-header-overlay].is-past-hero {
   background: rgba(255, 255, 255, 0.97);
   box-shadow: var(--header-shadow);
   border-bottom: 1px solid var(--header-border-color);
 }

 [data-site-header][data-header-overlay].bg-dark-purple.is-past-hero {
   background: var(--color-twilight);
   background: rgba(63, 60, 74, 0.75);
   border-bottom-color: rgba(248, 250, 252, 0.08);
   box-shadow: 0 4px 24px rgba(15, 23, 42, 0.35);
 }*/

 @media (prefers-reduced-motion: reduce) {
   [data-site-header][data-header-overlay] {
     transition: none;
   }
 }
 
/* event-banner START */
.event-banner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.event-banner__content {display: none }
@media only screen and (min-width: 560px) {
.event-banner__content {
display: flex;
gap: 1em;
justify-content: center;
font-size: var(--fs-text-s);
font-size: var(--clamp-text-s);
font-family: 'OverpassMono',monospace;
text-transform: uppercase;
text-align: center;
line-height: 1;
padding-top: 1rem;
padding-bottom: 1rem;
max-height: 24rem;
opacity: 1;
overflow: hidden;
transition:
  max-height 0.35s ease,
  opacity 0.25s ease,
  padding 0.25s ease;
}
}

.site-header.is-past-hero .event-banner__content {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .event-banner__content {
    transition: none;
  }
}
.event-banner__content > span {
  display: inline-flex;
  vertical-align: middle;
}

.event-banner__promo {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  margin-right: 55px;
}

.event-banner__promo-icon {
  flex: 0 0 auto;
  aspect-ratio: 1;
  width: 24px;
}

.event-banner__promo-text {
  color: var(--color-yellow);
}

.event-banner__arrow {
  aspect-ratio: 1;
  width: 24px;
  margin-inline: 24px;
}

.event-banner__link-wrap {
  gap: 24px;
}

.event-banner__link {
  position: relative;
}

.event-banner__link::after {
  content: '';
  width: 0;
  height: 1px;
  background: currentColor;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: 0.3s ease-out;
}

.event-banner__link:hover::after {
  width: 100%;
}
/* event-banner END */

 .site-header__inner {
   position: relative;
   z-index: 1;
   display: flex;
   align-items: center;
   gap: 1rem;
   margin-inline: auto;
   padding: .5rem 1.5rem;
   min-height: 3.5rem;
   background: rgba(63, 60, 74, 0.75);
   border: 1px solid rgba(249, 247, 246, 0.1);
   border-radius: 9999px;
   color: #f8fafc;
   --header-fg: #f8fafc;
   --header-muted: #94a3b8;
   --header-border: rgba(248, 250, 252, 0.2);
   --header-focus-ring: 0 0 0 2px rgba(30, 30, 38, 0.95), 0 0 0 4px var(--color-yellow);
 }
 
 /* Dropdown / mega surfaces match pill (light-on-dark) */
 .site-header__inner .site-header__dropdown,
 .site-header__inner .site-header__mega {
   --header-fg: #f8fafc;
   --header-muted: #94a3b8;
   --header-border: rgba(248, 250, 252, 0.2);
   --header-focus-ring: 0 0 0 2px #1e1e26, 0 0 0 4px var(--color-yellow);
   color: #f8fafc;
 }
 
 
 .site-header__brand {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   flex-shrink: 0;
   text-decoration: none;
   color: inherit;
   font-weight: 700;
   letter-spacing: -0.02em;
 }
 
 .site-header__brand:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
   border-radius: 0.25rem;
 }
 
 .site-header__logo {
   display: block;
   height: 2rem;
   width: auto;
 }
 
 /* WordPress custom logo outputs .custom-logo-link + img */
 .site-header__brand--wp .custom-logo-link {
   display: inline-flex;
   align-items: center;
   color: inherit;
   text-decoration: none;
 }
 
 .site-header__brand--wp .custom-logo-link:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
   border-radius: 0.25rem;
 }
 
 .site-header__brand--wp img,
 .site-header__brand--wp .custom-logo {
   display: block;
   height: 2rem;
   width: auto;
 }
 
 .site-header__nav {
   display: none;
   flex: 1;
   justify-content: flex-start;
 }
 .flex.header-right-container {
    display: none;
}
.header-right-container a.btn.btn-outline {
    background-color: transparent;
}
.header-right-container a.btn.btn-outline:hover {
    background-color: var(--color-yellow);
    color: var(--color-dark-purple);
}
 @media (min-width: 1024.1px) {
   .site-header__nav {
     display: block;
   }
 }
 @media only screen and (min-width:1220px){
.flex.header-right-container {
    display: flex;
}
.header-right-container a.btn:first-of-type, .header-right-container .search-wrap.flex {display:none;}
 }
 @media only screen and (min-width:1024.1px) and (max-width:1296px){
#partners.site-header__item
{
    display: none;
}
    }
@media only screen and (min-width:1477px) {
  .header-right-container .search-wrap.flex, .header-right-container a.btn:first-of-type {display: flex;}
}
 
 .site-header__list {
   display: flex;
   align-items: center;
   justify-content: flex-start;
   gap: 0.25rem;
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 .site-header__item {
   position: relative;
 }
 
 .site-header__link,
 .site-header__trigger {
   display: inline-flex;
   align-items: center;
   gap: 0.35rem;
   padding: 0.5rem 0.75rem;
   border-radius: 0.375rem;
   font-size: 0.9375rem;
   font-weight: 500;
   color: inherit;
   text-decoration: none;
   background: transparent;
   border: 0;
   cursor: pointer;
   font-family: inherit;
 }
 
 .site-header__link:hover,
 .site-header__trigger:hover {
   background: color-mix(in srgb, var(--color-dark-purple) 6%, transparent);
 }
 
 .site-header__link:focus-visible,
 .site-header__trigger:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
 }
 
 .site-header__chevron {
   width: 0.65rem;
   height: 0.65rem;
   color: var(--color-yellow);
   border-right: 2px solid currentColor;
   border-bottom: 2px solid currentColor;
   transform: rotate(45deg) translateY(-1px);
   transition: transform 0.15s ease;
 }
 
 .site-header__trigger[aria-expanded="true"] .site-header__chevron {
   transform: rotate(225deg) translateY(-2px);
 }
 
 .site-header__dropdown {
   position: absolute;
   left: 0;
   top: calc(100% + 0.25rem);
   min-width: 12rem;
   padding: 0.5rem;
   background: var(--header-dropdown-gradient);
   border: 1px solid var(--header-border-color);
   border-radius: 0.5rem;
   box-shadow: 0 10px 30px rgba(15, 23, 42, 0.12);
   opacity: 0;
   visibility: hidden;
   transform: translateY(4px);
   transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;
 }
 
 
 .site-header__item.is-open > .site-header__dropdown {
   opacity: 1;
   visibility: visible;
   transform: translateY(0);
 }
 
 .site-header__sublist {
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 
 .site-header__sublink:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
 }
 
 /* Mega menu: shrink-wrapped width, anchored under trigger (.site-header__item) */
 .site-header__mega {
   position: absolute;
   left: 0;
   right: auto;
   top: calc(100% + 0.5rem);
   width: fit-content;
   max-width: min(960px, 100vw - 2rem);
   margin-left: 0;
   margin-right: 0;
   padding-left: 1.25rem;
   padding-right: 1.25rem;
   box-sizing: border-box;
   background: var(--header-dropdown-gradient);
   border: 1px solid var(--header-border-color);
   border-radius: 0.75rem;
   box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14);
   opacity: 0;
   visibility: hidden;
   transform: translateY(4px);
   transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;
   z-index: 2;
   overflow-x: auto;
 }
 
 @media (max-width: 1023px) {
   .site-header__item--mega > .site-header__mega {
     display: none !important;
   }
 }
 
 
 .site-header__mega.is-open,
 .site-header__mega.is-hover {
   opacity: 1;
   visibility: visible;
   transform: translateY(0);
 }
 
 /* Fine-pointer desktop: dropdown hover only; mega hover uses JS (.is-hover) */
 @media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
   .site-header__item--dropdown:not(.site-header__item--hover-dismissed):hover > .site-header__dropdown {
     opacity: 1;
     visibility: visible;
     transform: translateY(0);
   }
 }
 
 .site-header__mega-grid {
   display: grid;
   grid-auto-flow: column;
   grid-auto-columns: minmax(180px, max-content);
   gap: 1.25rem;
   align-items: start;
   width: max-content;
   max-width: 100%;
   min-width: 0;
 }
 .site-header__mega-col:not(:first-child){
   padding-left: 1.25rem;
 }
 
 .site-header__mega-links {
   list-style: none;
   margin: 0;
   padding: 0;
   padding-left: 30px;
 }
 
 .site-header__mega-links a {
   display: block;
   padding: 0.35rem 0;
   padding-left: 10px;
   color: inherit;
   text-decoration: none;
   font-size: 0.9rem;
 }
 
 .site-header__mega-links a:hover {
   color: var(--color-yellow);
   background: color-mix(in srgb, var(--color-dark-purple) 6%, transparent);
 }
 
 .site-header__mega-links a:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
   border-radius: 0.25rem;
 }
 
 .site-header__menu-toggle {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 2.75rem;
   height: 2.75rem;
   margin-left: auto;
   border-radius: 0.375rem;
   border: 1px solid var(--header-border-color);
   background: transparent;
   color: var(--color-yellow);
   cursor: pointer;
 }
 
 @media (min-width: 1024px) {
   .site-header__menu-toggle {
     display: none;
   }
 }
 
 .site-header__menu-toggle:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
 }
 
 .site-header__menu-icon {
   position: relative;
   width: 1.25rem;
   height: 1rem;
 }
 
 .site-header__menu-icon span {
   position: absolute;
   left: 0;
   right: 0;
   height: 2px;
   background: currentColor;
   border-radius: 1px;
   transition: transform 0.2s ease, opacity 0.2s ease, top 0.2s ease;
 }
 
 .site-header__menu-icon span:nth-child(1) {
   top: 0;
 }
 
 .site-header__menu-icon span:nth-child(2) {
   top: 7px;
 }
 
 .site-header__menu-icon span:nth-child(3) {
   top: 14px;
 }
 
 .site-header__menu-toggle[aria-expanded="true"] .site-header__menu-icon span:nth-child(1) {
   top: 7px;
   transform: rotate(45deg);
 }
 
 .site-header__menu-toggle[aria-expanded="true"] .site-header__menu-icon span:nth-child(2) {
   opacity: 0;
 }
 
 .site-header__menu-toggle[aria-expanded="true"] .site-header__menu-icon span:nth-child(3) {
   top: 7px;
   transform: rotate(-45deg);
 }
 
 /* Mobile panel */
 .site-header__backdrop {
   position: fixed;
   inset: 0;
   background: rgba(15, 23, 42, 0.45);
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
   transition: opacity 0.2s ease, visibility 0.2s;
   z-index: calc(var(--header-z-panel) - 1);
 }
 
 .site-header__backdrop.is-visible {
   opacity: 1;
   visibility: visible;
   pointer-events: auto;
 }
 
 .site-header__drawer {
   position: fixed;
   top: 0;
   right: 0;
   width: min(100%, 22rem);
   height: 100%;
   max-height: 100dvh;
   background: var(--header-dropdown-gradient);
   color: #f8fafc;
   --header-fg: #f8fafc;
   --header-muted: #94a3b8;
   --header-border: rgba(248, 250, 252, 0.2);
   --header-focus-ring: 0 0 0 2px #1e1e26, 0 0 0 4px var(--color-yellow);
   border-left: 1px solid var(--header-border-color);  
   z-index: var(--header-z-panel);
   transform: translateX(100%);
   visibility: hidden;
   transition: transform 0.25s ease, visibility 0.25s;
   display: flex;
   flex-direction: column;
   overflow: hidden;
 }
 
 .site-header__drawer.is-open {
   transform: translateX(0);
   visibility: visible;
 }
 
 .site-header__drawer-header {
   display: flex;
   align-items: center;
   justify-content: right;
   padding: 0.75rem 1rem;
   border-bottom: 1px solid var(--header-border-color);
 }
 
 .site-header__drawer-title {
   margin: 0;
   font-size: 1rem;
   font-weight: 600;
 }
 
 .site-header__drawer-close {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 2.5rem;
   height: 2.5rem;
   border-radius: 0.375rem;
   border: 1px solid var(--header-border-color);
   background: transparent;
   color: var(--color-yellow);
   cursor: pointer;
   font-size: 1.25rem;
   line-height: 1;
 }
 
 .site-header__drawer-close:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
 }
 
 .site-header__drawer-body {
   flex: 1;
   overflow-y: auto;
   padding: 0.5rem 0 1rem;
 }
 
 .site-header__mobile-list {
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 .site-header__mobile-item {
   border-bottom: 1px solid var(--header-border-color);
 }
 
 .site-header__mobile-link {
   display: block;
   padding: 0.85rem 1.25rem;
   color: inherit;
   text-decoration: none;
   font-weight: 500;
 }
 
 .site-header__mobile-link:focus-visible {
   outline: none;
   box-shadow: inset var(--header-focus-ring);
 }
 
 .site-header__mobile-trigger {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding: 0.85rem 1.25rem;
   border: 0;
   background: transparent;
   color: inherit;
   font: inherit;
   font-weight: 500;
   text-align: left;
   cursor: pointer;
 }
 
 .site-header__mobile-trigger:focus-visible {
   outline: none;
   box-shadow: inset var(--header-focus-ring);
 }
 
 .site-header__mobile-panel {
   display: none;
   padding: 0 1rem 1rem 1.5rem;
 }
 
 .site-header__mobile-item.is-open .site-header__mobile-panel {
   display: block;
 }
 
 .site-header__mobile-sub {
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 .site-header__mobile-sub a {
   display: block;
   padding: 0.5rem 0;
   color: var(--color-lightest-purple);
   text-decoration: none;
   font-size: 0.9rem;
 }
 
 .site-header__mobile-sub a:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
   border-radius: 0.25rem;
 }
 
 /* Mobile drawer: Solutions trigger + nested mega column accordions (chevrons on the right) */
 .site-header__drawer .site-header__trigger {
   display: flex;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding: 0.85rem 1.25rem;
   border: 0;
   border-radius: 0;
   font: inherit;
   font-weight: 500;
   font-size: 1rem;
   text-align: left;
   cursor: pointer;
 }
 
 .site-header__drawer .site-header__trigger:focus-visible {
   outline: none;
   box-shadow: inset var(--header-focus-ring);
 }
 
 .site-header__mobile-mega-col-list {
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 .site-header__mobile-mega-cols.site-header__mobile-panel {
   padding-top: 0;
 }
 
 .site-header__mobile-item--mega-col {
   border-bottom: 1px solid var(--header-border-color);
 }
 
 .site-header__mobile-item--mega-col:last-child {
   border-bottom: none;
 }
 
 .site-header__mobile-mega-accordion {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 0.5rem;
   width: 100%;
   padding: 0.65rem 1.25rem 0.65rem 1.5rem;
   border: 0;
   background: transparent;
   color: inherit;
   font: inherit;
   font-weight: 500;
   text-align: left;
   cursor: pointer;
 }
 
 .site-header__mobile-mega-accordion:focus-visible {
   outline: none;
   box-shadow: inset var(--header-focus-ring);
 }
 
 .site-header__mobile-item--mega-col .site-header__mega-col-title {
   margin: 0;
   flex: 1;
   min-width: 0;
   font-size: 0.75rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.06em;
   color: var(--color-lightest-purple);
 }
 
 .site-header__mobile-mega-accordion .site-header__chevron {
   flex-shrink: 0;
 }
 
 .site-header__mobile-mega-accordion[aria-expanded="true"] .site-header__chevron {
   transform: rotate(225deg) translateY(-2px);
 }
 
 .site-header__mobile-mega-panel {
   display: none;
   padding: 0 1rem 0.75rem 1.5rem;
 }
 
 .site-header__mobile-item--mega-col.is-open .site-header__mobile-mega-panel {
   display: block;
 }
 
 .site-header__drawer .site-header__mega-links a {
   display: block;
   padding: 0.5rem 0;
   color: var(--color-lightest-purple);
   text-decoration: none;
   font-size: 0.9rem;
 }
 
 .site-header__drawer .site-header__mega-links a:hover {
   color: var(--color-yellow);
 }
 
 .site-header__drawer .site-header__mega-links a:focus-visible {
   outline: none;
   box-shadow: var(--header-focus-ring);
   border-radius: 0.25rem;
 }

 .site-header__drawer .site-header__mega-links a.menu-with-subtext .menu-text {
   display: block;
   font-size: 0.8rem;
   font-weight: 400;
   opacity: 0.9;
   margin-top: 0.2rem;
 }
 
 body.site-header--scroll-lock {
   overflow: hidden;
 }
 
 .sr-only {
   position: absolute;
   width: 1px;
   height: 1px;
   padding: 0;
   margin: -1px;
   overflow: hidden;
   clip: rect(0, 0, 0, 0);
   white-space: nowrap;
   border: 0;
 }
 
 
 
 .menu-featured-img {
     min-width: 200px;
 }
 .menu-feature-block {
     border: 1px solid transparent;
     border-top-right-radius: 1rem;
     border-bottom-right-radius: 1rem;
     /*background-color: #F9F7F6;
     background: linear-gradient(129deg,rgba(249, 247, 246,1) 0%, rgba(176, 176, 176, 1) 100%);
     background: url(./resources/images/nav-resource-bg.png) center center no-repeat;*/
     background-size: contain;
     max-width: 280px;
     padding-bottom: 1.25rem;
     padding-left: 1.25rem;
     border-left-color: var(--color-yellow);
 }
 
 .menu-feature-block a {
     color: var(--color-white);
 }
 
 
 .menu-feature-block .entry-title {
     font-size: 1.1em;
 }
 span.menu-text {
     display: table;
     font-size: .9rem;
     font-weight: 200;}