/* HSE Header: navy / purple / gold. Prefix: hse- */
.hse-header{
  --hse-navy:#0b1033; --hse-navy-2:#141a4a; --hse-purple:#5b2a9e; --hse-gold:#d9a93a; --hse-gold-soft:#f0cf7a;
  --hse-text:#f4f1ea; --hse-muted:#b9b6cf; --hse-h:64px; --hse-t:200ms;
  position:sticky; top:0; z-index:999; background:var(--hse-navy); color:var(--hse-text);
  border-bottom:1px solid rgba(217,169,58,.35); font-family:inherit; line-height:1.3;
}
.admin-bar .hse-header{top:32px}
@media (max-width:782px){.admin-bar .hse-header{top:46px}}
.hse-header *,.hse-header *::before,.hse-header *::after{box-sizing:border-box}
.hse-header ul{list-style:none;margin:0;padding:0}
.hse-header a{text-decoration:none;color:inherit}
.hse-header .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hse-header :focus-visible{outline:2px solid var(--hse-gold-soft);outline-offset:2px;border-radius:4px}

.hse-inner{position:relative;max-width:1320px;margin:0 auto;padding:0 20px;min-height:var(--hse-h);display:flex;align-items:center;gap:20px}
.hse-logo{flex:0 0 auto;display:flex;align-items:center}
.hse-logo img{display:block;height:auto}
.hse-logo-compact{display:none!important}

/* Desktop */
.hse-nav{flex:1 1 auto;min-width:0}
.hse-list{display:flex;align-items:center;gap:2px}
.hse-item{position:relative}
.hse-row{display:flex;align-items:center}
.hse-link,.hse-trigger-label{
  display:inline-flex;align-items:center;gap:6px;padding:10px 11px;border-radius:6px;font-size:14.5px;font-weight:500;
  color:var(--hse-text);background:transparent;border:0;cursor:pointer;font-family:inherit;
  transition:background-color var(--hse-t) ease,color var(--hse-t) ease;
}
.hse-trigger{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:36px;padding:0 4px 0 0;margin-left:-6px;background:transparent;border:0;color:var(--hse-muted);cursor:pointer;transition:color var(--hse-t) ease}
.hse-trigger-label{padding-right:11px;margin-left:0;color:var(--hse-text)}
.hse-chev{transition:transform var(--hse-t) ease}
.is-open>.hse-row .hse-chev{transform:rotate(180deg)}
.hse-link:hover,.hse-trigger-label:hover,.is-open>.hse-row .hse-link,.is-open>.hse-row .hse-trigger-label{background:rgba(255,255,255,.08);color:var(--hse-gold-soft)}
.hse-row:hover .hse-trigger,.is-open>.hse-row .hse-trigger{color:var(--hse-gold-soft)}
.hse-item.is-active>.hse-link,.hse-item.is-active>.hse-row .hse-link{color:var(--hse-gold-soft);box-shadow:inset 0 -2px 0 var(--hse-gold)}
.hse-item.is-featured>.hse-row .hse-link{font-weight:700;color:var(--hse-gold-soft);background:rgba(217,169,58,.12);box-shadow:inset 0 0 0 1px rgba(217,169,58,.4)}
.hse-item.is-featured>.hse-row .hse-link:hover,.hse-item.is-featured.is-open>.hse-row .hse-link{background:rgba(217,169,58,.22)}

.hse-sub{position:absolute;top:100%;left:0;min-width:260px;padding-top:8px;opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity var(--hse-t) ease,transform var(--hse-t) ease,visibility 0s linear var(--hse-t);z-index:2}
.is-open>.hse-sub{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.hse-sub-inner{background:var(--hse-navy-2);border:1px solid rgba(217,169,58,.3);border-top:2px solid var(--hse-gold);border-radius:0 0 10px 10px;padding:8px;box-shadow:0 14px 30px rgba(0,0,0,.35);max-height:calc(100vh - var(--hse-h) - 40px);overflow-y:auto}
.hse-sub-list a,.hse-mega-list a{display:block;padding:9px 12px;border-radius:6px;font-size:14px;color:var(--hse-text);transition:background-color var(--hse-t) ease,color var(--hse-t) ease}
.hse-sub-list a:hover,.hse-mega-list a:hover,.hse-sub-list a:focus-visible,.hse-mega-list a:focus-visible{background:rgba(217,169,58,.16);color:var(--hse-gold-soft)}
.hse-sub-list a.is-current,.hse-mega-list a.is-current{color:var(--hse-gold-soft);background:rgba(91,42,158,.45)}
.hse-more-list .hse-item{position:static}
.hse-more-list .hse-sub{position:static;opacity:1;visibility:visible;transform:none;padding:0 0 0 12px;min-width:0}
.hse-more-list .hse-sub-inner{background:transparent;border:0;box-shadow:none;padding:0;max-height:none}
.hse-more-list .hse-trigger{display:none}
.hse-more-list .hse-link{display:flex;width:100%;border-radius:6px;font-size:14px}
.hse-more-list .hse-row{display:block}
.hse-more-list .hse-sub-list a{font-size:13px;color:var(--hse-muted)}
.hse-sub-list{min-width:240px}
.hse-item.is-more>.hse-sub{left:auto;right:0}

/* Mega menu */
.hse-item.is-mega{position:static}
.hse-item.is-mega>.hse-sub{left:20px;right:20px;min-width:0}
.hse-mega{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px;padding:8px 10px}
.hse-mega-title{margin:4px 12px 6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--hse-gold);font-weight:700}
.hse-mega-list{columns:2;column-gap:8px}
.hse-mega-list li{break-inside:avoid}

/* Search */
.hse-search{position:relative;flex:0 0 auto;margin-left:auto}
.hse-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--hse-text);cursor:pointer;transition:background-color var(--hse-t) ease,color var(--hse-t) ease}
.hse-search-toggle:hover,.hse-search.is-open .hse-search-toggle{background:rgba(255,255,255,.1);color:var(--hse-gold-soft)}
.hse-search-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(380px,92vw);display:flex;gap:6px;padding:10px;background:var(--hse-navy-2);border:1px solid rgba(217,169,58,.3);border-radius:10px;box-shadow:0 14px 30px rgba(0,0,0,.35);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity var(--hse-t) ease,transform var(--hse-t) ease,visibility 0s linear var(--hse-t)}
.hse-search.is-open .hse-search-panel{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.hse-search-panel input{flex:1;min-width:0;padding:9px 12px;border-radius:6px;border:1px solid rgba(255,255,255,.25);background:#fff;color:#111;font-size:16px}
.hse-search-panel button{padding:9px 14px;border:0;border-radius:6px;background:var(--hse-gold);color:var(--hse-navy);font-weight:700;cursor:pointer}
.hse-burger{display:none}

/* Tablet and mobile */
@media (max-width:1100px){
  .hse-header{--hse-h:58px}
  .hse-inner{padding:0 14px;min-height:var(--hse-h);gap:10px}
  .hse-logo-wide{display:none!important}
  .hse-logo-compact{display:block!important}
  .hse-search{order:2;margin-left:auto}
  .hse-burger{order:3;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;background:transparent;border:1px solid rgba(255,255,255,.25);color:var(--hse-text);cursor:pointer}
  .hse-burger-bars{display:block;width:20px;height:14px;position:relative}
  .hse-burger-bars i{position:absolute;left:0;width:100%;height:2px;background:currentColor;border-radius:2px;transition:transform var(--hse-t) ease,opacity var(--hse-t) ease,top var(--hse-t) ease}
  .hse-burger-bars i:nth-child(1){top:0}.hse-burger-bars i:nth-child(2){top:6px}.hse-burger-bars i:nth-child(3){top:12px}
  .is-nav-open .hse-burger-bars i:nth-child(1){top:6px;transform:rotate(45deg)}
  .is-nav-open .hse-burger-bars i:nth-child(2){opacity:0}
  .is-nav-open .hse-burger-bars i:nth-child(3){top:6px;transform:rotate(-45deg)}

  .hse-nav{position:fixed;left:0;right:0;top:var(--hse-h);bottom:0;z-index:998;overflow-y:auto;overscroll-behavior:contain;background:var(--hse-navy);padding:10px 14px 40px;
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--hse-t) ease,transform var(--hse-t) ease,visibility 0s linear var(--hse-t)}
  .admin-bar .hse-nav{top:calc(var(--hse-h) + 46px)}
  .is-nav-open .hse-nav{opacity:1;visibility:visible;transform:none;transition-delay:0s}
  .hse-list{display:block}
  .hse-item{border-bottom:1px solid rgba(255,255,255,.08)}
  .hse-row{justify-content:space-between}
  .hse-link,.hse-trigger-label{flex:1;padding:14px 8px;font-size:16px;min-height:48px;border-radius:0}
  .hse-trigger{min-width:48px;min-height:48px;margin:0;padding:0;border-left:1px solid rgba(255,255,255,.08);border-radius:0}
  .hse-trigger-label{justify-content:space-between;padding-right:16px}

  /* Accordion */
  .hse-sub,.hse-item.is-mega>.hse-sub,.hse-item.is-more>.hse-sub{position:static;left:auto;right:auto;padding:0;min-width:0;opacity:1;visibility:visible;transform:none;display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--hse-t) ease}
  .hse-sub-inner{overflow:hidden;min-height:0;background:rgba(255,255,255,.04);border:0;border-radius:0;box-shadow:none;padding:0 8px;max-height:none;visibility:hidden;transition:visibility 0s linear var(--hse-t)}
  .is-open>.hse-sub{grid-template-rows:1fr}
  .is-open>.hse-sub>.hse-sub-inner{visibility:visible;padding:6px 8px 10px;transition-delay:0s}
  .hse-sub-list a,.hse-mega-list a{padding:12px 10px;min-height:44px;font-size:15px}
  .hse-mega{grid-template-columns:1fr;gap:6px;padding:0}
  .hse-mega-list{columns:1}
  .hse-item.is-mega>.hse-sub{left:auto;right:auto}
  .hse-item.is-featured>.hse-row .hse-link{box-shadow:none;background:rgba(217,169,58,.14);border-radius:6px}
  .hse-more-list .hse-link{padding:12px 10px;min-height:44px;font-size:15px}
  .hse-more-list .hse-item{border-bottom:0}
  .hse-search-panel{position:fixed;left:12px;right:12px;width:auto;top:calc(var(--hse-h) + 8px)}
  body.hse-nav-locked{overflow:hidden}
}
@media (max-width:1100px) and (max-height:480px){ .hse-nav{padding-bottom:80px} }

@media (prefers-reduced-motion:reduce){
  .hse-header *,.hse-header *::before,.hse-header *::after{transition-duration:0.01ms!important;transition-delay:0s!important;animation:none!important}
  .hse-sub{transform:none}
}

/* Version 2: larger, bolder, more colourful */
.hse-header{
  --hse-h:88px; --hse-t:220ms;
  background:linear-gradient(95deg,#0b1033 0%,#1d0f5a 45%,#4a1c94 100%);
  border-bottom:0;
  box-shadow:0 6px 24px rgba(11,16,51,.45);
}
.hse-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#d9a93a,#f6dc8c 40%,#a96bff 75%,#d9a93a)}
.hse-inner{max-width:1600px;padding:0 32px;gap:26px}
.hse-logo img.hse-logo-wide{height:60px;width:auto}
.hse-list{gap:6px}
.hse-link,.hse-trigger-label{padding:13px 15px;font-size:16.5px;font-weight:600;border-radius:999px;letter-spacing:.2px}
.hse-trigger{min-height:44px;min-width:28px}
.hse-link:hover,.hse-trigger-label:hover,.is-open>.hse-row .hse-link,.is-open>.hse-row .hse-trigger-label{background:rgba(255,255,255,.16);color:#ffe9a8}
.hse-item.is-active>.hse-link,.hse-item.is-active>.hse-row .hse-link{box-shadow:inset 0 -3px 0 #f6dc8c;border-radius:6px 6px 0 0}
.hse-item.is-featured>.hse-row .hse-link{background:linear-gradient(135deg,#f6dc8c,#d9a93a);color:#0b1033;font-weight:800;box-shadow:0 3px 12px rgba(217,169,58,.45)}
.hse-item.is-featured>.hse-row .hse-link:hover,.hse-item.is-featured.is-open>.hse-row .hse-link{background:linear-gradient(135deg,#ffeaa6,#e6b84a);color:#0b1033}
.hse-sub-inner{background:linear-gradient(180deg,#1d1160,#14184a);border:1px solid rgba(246,220,140,.45);border-top:3px solid #d9a93a;border-radius:0 0 14px 14px}
.hse-sub-list a,.hse-mega-list a{font-size:15.5px;padding:11px 14px}
.hse-sub-list a:hover,.hse-mega-list a:hover{background:rgba(246,220,140,.2);color:#ffe9a8}
.hse-mega-title{font-size:13px;color:#f6dc8c}

/* Search and menu buttons: always white on the navy bar */
.hse-header .hse-search-toggle,.hse-header .hse-search-toggle:hover,.hse-header .hse-search-toggle:focus,.hse-header .hse-search.is-open .hse-search-toggle{
  color:#fff!important;border:2px solid #fff!important;background:rgba(255,255,255,.14)!important;width:46px;height:46px}
.hse-header .hse-search-toggle svg{stroke:#fff;width:20px;height:20px}
.hse-header .hse-search-toggle svg *{stroke:#fff!important}
.hse-header .hse-burger,.hse-header .hse-burger:hover,.hse-header .hse-burger:focus{color:#fff!important;border:2px solid #fff!important;background:rgba(255,255,255,.14)!important}
.hse-header .hse-burger-bars i{background:#fff!important}

@media (max-width:1100px){
  .hse-header{--hse-h:72px}
  .hse-inner{padding:0 16px}
  .hse-logo img.hse-logo-compact{width:50px;height:50px}
  .hse-nav{background:linear-gradient(180deg,#14184a,#2a1272)}
  .hse-link,.hse-trigger-label{border-radius:0;font-size:17px}
  .hse-item.is-featured>.hse-row .hse-link{border-radius:10px}
  .hse-header .hse-search-toggle,.hse-header .hse-burger{width:48px;height:48px}
}
@media (min-width:1101px) and (max-width:1300px){
  .hse-link,.hse-trigger-label{padding:12px 10px;font-size:15px}
  .hse-logo img.hse-logo-wide{height:52px}
}

/* Version 3: icons and mobile logo wordmark */
.hse-header .hse-search-toggle,.hse-header .hse-burger{
  -webkit-appearance:none;appearance:none;display:inline-flex!important;align-items:center;justify-content:center;
  padding:0!important;margin:0;line-height:1;min-width:46px;min-height:46px;border-radius:50%!important;cursor:pointer;
  color:#fff!important;background:rgba(255,255,255,.16)!important;border:2px solid #fff!important;box-shadow:none;text-indent:0;font-size:0}
.hse-header .hse-ico{display:block!important;width:24px!important;height:24px!important;max-width:none;overflow:visible;flex:none;opacity:1!important;visibility:visible!important}
.hse-header .hse-ico,.hse-header .hse-ico *{fill:none!important;stroke:#fff!important}
.hse-header .hse-ico-close{display:none!important}
.hse-header.is-nav-open .hse-ico-open{display:none!important}
.hse-header.is-nav-open .hse-ico-close{display:block!important}
.hse-header .hse-burger{display:none!important}
.hse-wordmark{display:none}

@media (max-width:1100px){
  .hse-header .hse-burger{display:inline-flex!important;width:48px;height:48px;border-radius:12px!important}
  .hse-header .hse-search-toggle{width:48px;height:48px}
  .hse-inner{gap:8px;padding:0 12px}
  .hse-logo{flex:1 1 auto;min-width:0;gap:9px}
  .hse-logo img.hse-logo-wide{display:none!important}
  .hse-logo img.hse-logo-compact{display:block!important;flex:none;width:46px;height:46px}
  .hse-wordmark{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.05;font-family:Georgia,'Times New Roman',serif;text-transform:uppercase}
  .hse-wordmark b{display:block;color:#fff;font-weight:800;font-size:clamp(15px,4.6vw,20px);letter-spacing:.06em;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.4)}
  .hse-wordmark i{display:block;font-style:normal;color:#f6dc8c;font-weight:700;font-size:clamp(11px,3.4vw,14px);letter-spacing:.2em;white-space:nowrap;margin-top:3px}
  .hse-search{margin-left:0}
}
@media (max-width:340px){ .hse-inner{padding:0 8px;gap:6px} .hse-logo img.hse-logo-compact{width:38px;height:38px} .hse-header .hse-burger,.hse-header .hse-search-toggle{width:42px;height:42px;min-width:42px;min-height:42px} }

/* Version 4: keep desktop labels on one line */
.hse-link,.hse-trigger-label{white-space:nowrap}
@media (min-width:1101px) and (max-width:1560px){
  .hse-inner{padding:0 20px;gap:14px}
  .hse-logo img.hse-logo-wide{height:50px}
  .hse-link,.hse-trigger-label{padding:11px 9px;font-size:14.5px}
  .hse-list{gap:2px}
  .hse-trigger{margin-left:-4px;min-width:22px}
}
@media (min-width:1101px) and (max-width:1250px){
  .hse-logo img.hse-logo-wide{height:44px}
  .hse-link,.hse-trigger-label{padding:10px 7px;font-size:13.5px}
}

/* Site Logo set in WordPress: the text wordmark is hidden, the logo image stands alone */
.hse-logo.has-custom-logo .hse-wordmark{display:none!important}
.hse-logo.has-custom-logo img{max-height:56px;width:auto;height:auto}
.hse-logo.has-custom-logo img.hse-logo-compact{max-height:46px}
