/* Shared public header. Private administration does not load this stylesheet. */
.site-header.public-header{height:auto;background:#080d0f;border-bottom:1px solid #354043;position:relative;z-index:30}
.site-header.public-header .header-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 24px;align-items:center;width:min(1340px,calc(100% - 40px));height:auto;min-height:0;margin:auto}
.site-header.public-header .site-brand{position:static;display:block;grid-column:1;grid-row:1;width:352px;max-width:100%;padding:8px 0;min-height:0;line-height:0}
.site-header.public-header .public-header-logo{display:block;width:100%;height:auto;aspect-ratio:640/159;object-fit:contain}
.site-header.public-header .public-header-utility{grid-column:2;grid-row:1;min-width:0;max-width:100%}
.site-header.public-header .header-location{display:flex;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:8px;border:1px solid #354043;border-radius:6px;background:#111b1e;color:#f6f3ed;text-align:left;font:700 .86rem/1.35 Arial,sans-serif;cursor:pointer}
.site-header.public-header .header-location svg{flex:0 0 22px;color:#ff9b59}
.site-header.public-header .header-location [data-home-location]{max-width:230px;overflow-wrap:anywhere}
.site-header.public-header .header-location-action{display:block;margin-left:10px;color:#ffad7f;font-size:.75rem;white-space:nowrap}
.site-header.public-header .header-location::after{content:none}
.site-header.public-header .primary-nav{grid-column:1/-1;grid-row:2;display:block;position:static;justify-self:stretch;padding:0;background:transparent;border:0;border-top:2px solid var(--tb-public-accent,#ff6a1f);box-shadow:none}
.site-header.public-header .primary-nav>ul{display:flex;align-items:center;justify-content:flex-start;gap:28px;padding:0;margin:0;list-style:none}
.site-header.public-header .primary-nav a,.site-header.public-header .events-nav-toggle{min-height:44px;padding:12px 0 10px;font:700 .84rem/1.35 Arial,sans-serif;white-space:nowrap;text-decoration:none;color:#eeeae4;border-bottom:2px solid transparent}
.site-header.public-header .primary-nav a:hover,.site-header.public-header .primary-nav .active,.site-header.public-header .events-nav-toggle:hover{color:#ff9b59;border-bottom-color:#cf4b00}
/* Reserve the existing border box; underline only the current label on every width. */
.site-header.public-header .primary-nav [data-nav].active{border-bottom-color:transparent;text-decoration-line:underline;text-decoration-color:var(--tb-public-accent,#ff6a1f);text-decoration-thickness:2px;text-underline-offset:6px}
.site-header.public-header .primary-nav .events-submenu [aria-current]{text-decoration:underline 2px var(--tb-public-accent,#ff6a1f);text-underline-offset:6px}
.site-header.public-header .nav-events{position:relative}
.site-header.public-header .events-nav-toggle{display:flex;align-items:center;gap:10px;background:transparent;border-top:0;border-left:0;border-right:0;cursor:pointer}
.site-header.public-header .primary-nav .events-submenu{display:block;position:absolute;top:100%;left:0;min-width:260px;padding:6px;background:#080d0f;border:1px solid #354043;border-bottom:2px solid #cf4b00}
.site-header.public-header .primary-nav .events-submenu[hidden]{display:none}
.site-header.public-header .primary-nav .events-submenu a{padding:12px;border:0;white-space:normal}
.site-header.public-header .nav-toggle{display:none}
.site-header.public-header :is(a,button):focus-visible{outline:3px solid #ffad7f;outline-offset:3px}
@media(max-width:980px){
 .site-header.public-header .header-inner{grid-template-columns:minmax(0,1fr) 44px;width:calc(100% - 24px);gap:0 8px}
 .site-header.public-header .site-brand{width:260px;max-width:calc(100vw - 76px);padding:8px 0}
 .site-header.public-header .nav-toggle{position:static;grid-column:2;grid-row:1;display:block;justify-self:end;width:44px;height:44px;padding:10px;background:transparent;border:1px solid #536064;border-radius:5px;color:#fff;cursor:pointer}
 .site-header.public-header .nav-toggle>span:not(.sr-only){display:block;width:22px;height:2px;background:currentColor;margin:4px 0}
 .site-header.public-header .public-header-utility{grid-column:1/-1;grid-row:2;width:100%;border-top:2px solid var(--tb-public-accent,#ff6a1f)}
 .site-header.public-header .header-location{width:100%;max-width:none;min-height:44px;padding:6px 0;border:0;border-radius:0;background:transparent;font-size:.79rem}
 .site-header.public-header .header-location [data-home-location]{max-width:none}
 .site-header.public-header .header-location-action{margin-left:auto;font-size:.72rem}
 .site-header.public-header .primary-nav{display:none;position:absolute;top:100%;left:-12px;right:-12px;z-index:31;padding:8px 12px 12px;background:#080d0f;border-top:0;border-bottom:2px solid #cf4b00}
 .site-header.public-header .primary-nav.open{display:block}
 .site-header.public-header .primary-nav>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;align-items:start}
 .site-header.public-header .primary-nav a,.site-header.public-header .events-nav-toggle{padding:12px;min-height:48px;white-space:normal}
 .site-header.public-header .nav-events{grid-column:1/-1;display:block}
 .site-header.public-header .events-nav-heading{display:block}
 .site-header.public-header .events-nav-toggle{width:100%;justify-content:space-between}
 .site-header.public-header .primary-nav .events-submenu{position:static;min-width:0;padding:0 0 0 12px;border:0}
 .site-header.public-header .primary-nav .events-submenu a{min-height:48px}
}

/* Phone submenu separation; tablet/desktop disclosure presentation is unchanged. */
@media (max-width: 600px) {
  .site-header.public-header .primary-nav .events-submenu {
    margin: 4px 0 8px;
    padding: 6px 8px;
    border-inline-start: 3px solid var(--tb-public-accent, var(--orange2, #ff6a20));
    background: rgba(255, 106, 32, .10);
  }

  .site-header.public-header .primary-nav .events-submenu li + li {
    margin-top: 2px;
  }
}
