/* The brand has its own column; navigation groups always stay in normal flow. */
.site-header{border-bottom:1px solid #dce8f3}
.site-header .head{display:grid;grid-template-columns:390px minmax(0,1fr);align-items:center;gap:24px;min-height:0;padding:12px 24px}
.site-header .brand{display:flex;align-items:center;gap:14px;min-width:0;max-width:100%;justify-self:start}
.site-header .brand img{width:144px;height:101px;max-width:none;object-fit:contain;flex-shrink:0}
.site-header .brand-copy{display:grid;gap:7px;min-width:0}
.site-header .wordmark{display:block;font-size:32px;line-height:1.1;letter-spacing:-1.4px;white-space:nowrap}
.site-header .brand-tagline{display:block;color:#547089;font-size:13px;line-height:1.4;font-weight:650;letter-spacing:.1px}
.site-header .nav{position:static;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;width:100%;min-width:0;padding:0;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}
.site-header .nav a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:0;padding:9px 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:#3d5a77;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none;white-space:normal;box-shadow:none}
.site-header .nav a:hover,.site-header .nav a.active{background:#eef5fc;color:#1051a5}
.site-header .nav-primary{display:flex;justify-content:flex-end;align-items:stretch;flex-wrap:wrap;gap:9px;min-width:0}
.site-header .nav .nav-primary a{min-height:46px;padding:10px 19px;border-color:#b8d3eb;background:#f1f8ff;color:#1851a0;font-size:16px;font-weight:800}
.site-header .nav .nav-primary a:first-child{background:#145bce;border-color:#145bce;color:#fff}
.site-header .nav .nav-primary #favourites-nav{background:#fff2e5;border-color:#efc49f;color:#8a4308}
.site-header .nav .nav-primary a:hover,.site-header .nav .nav-primary a.active{background:#e0efff;color:#164d9b;border-color:#76a8df}
.site-header .nav .nav-primary a:first-child:hover,.site-header .nav .nav-primary a:first-child.active{background:#104aa9;color:#fff;border-color:#104aa9}
.site-header .nav .nav-primary #favourites-nav:hover,.site-header .nav .nav-primary #favourites-nav.active{background:#ffe2c4;color:#773701;border-color:#da9f69}
.site-header .nav .nav-primary #account-nav{min-width:104px;min-height:48px;font-size:16px;font-weight:800;color:#fff;background:#08777d;border-color:#08777d;box-shadow:0 3px 9px #08777d1a}
.site-header .nav .nav-primary #account-nav:hover,.site-header .nav .nav-primary #account-nav.active{color:#fff;background:#065e64;border-color:#065e64}
.site-header .nav .banner-signout{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 13px;border:1px solid #9dbfc2;border-radius:10px;background:#f4faf9;color:#165b60;font-family:inherit;font-size:14px;font-weight:750;line-height:1.35;cursor:pointer}
.site-header .nav .banner-signout:hover{background:#e5f3f0;border-color:#508e90}
.site-header .nav .banner-signout:disabled{opacity:.65;cursor:wait}
.banner-session-status{margin:2px 0 0;text-align:right;color:#235f53;font-size:12px;line-height:1.5}
.banner-session-status.error{color:#8e4438}
.site-header .nav-secondary{display:grid;gap:0;min-width:0}
.site-header .nav-guides{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:1px 3px;border-top:1px solid #e5edf5;padding-top:4px;min-width:0}
.site-header .nav .nav-guides a{min-height:38px;padding:8px 9px;font-size:12px;font-weight:650}
.site-header .nav-utility{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px;min-width:0}
.site-header .nav .nav-utility a{min-height:32px;padding:5px 10px;font-size:12px;color:#52667b;text-decoration:underline;text-underline-offset:3px}
.site-header .menu-toggle{display:none}
html{scroll-padding-top:calc(var(--site-header-height,160px) + 12px)}
#search-focus,.search-results-panel,.rankings,.search-section{scroll-margin-top:12px}
.aside{top:calc(var(--site-header-height,160px) + 16px)}
@media (max-width:1150px){
  .site-header .head{grid-template-columns:360px minmax(0,1fr);gap:18px}
  .site-header .brand{gap:11px}.site-header .brand img{width:132px;height:93px}.site-header .wordmark{font-size:30px}
  .site-header .nav .nav-primary a{padding:10px 15px;font-size:15px}.site-header .nav .nav-guides a{padding:8px 7px;font-size:12px}
}
@media (max-width:1050px){
  .site-header .head{grid-template-columns:minmax(0,1fr) 44px;column-gap:16px;row-gap:8px;padding:10px 24px}
  .site-header .brand{grid-column:1;grid-row:1;gap:12px}.site-header .brand img{width:112px;height:79px}.site-header .wordmark{font-size:30px}
  .site-header .menu-toggle{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:0;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:23px;color:#254f7d;background:#f0f6fd;border:1px solid #c5d8e9;border-radius:11px}
  .site-header .menu-toggle[aria-expanded="true"]{background:#e0efff;border-color:#7ba7d2}
  .site-header .nav{grid-column:1/-1;grid-row:2;gap:0;position:static;display:grid;overflow:visible;width:100%}
  .site-header .nav-primary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .site-header .nav-primary.has-member-session{grid-template-columns:repeat(5,minmax(0,1fr))}
  .site-header .nav .nav-primary a{min-height:46px;padding:10px 12px;font-size:15px}
  .site-header .nav .nav-primary #account-nav{min-width:0;padding:10px 8px;font-size:15px}
  .site-header .nav-secondary{display:none;margin-top:9px;padding-top:3px;border-top:1px solid #dce7f1}
  .site-header .nav.open .nav-secondary{display:grid}
  .site-header .nav-guides{justify-content:flex-start;border:0;padding-top:0;gap:3px}
  .site-header .nav .nav-guides a{font-size:13px;min-height:44px;padding:10px}
  .site-header .nav-utility{border-top:1px solid #e5edf5;padding-top:5px;margin-top:4px}
  .site-header .nav .nav-utility a{min-height:44px;font-size:13px;padding:9px 12px}
}
@media (max-width:650px){
  .site-header .head{padding:9px 16px;column-gap:10px;row-gap:7px}
  .site-header .brand{gap:10px}.site-header .brand img{width:92px;height:65px}.site-header .wordmark{font-size:25px;letter-spacing:-1.1px}.site-header .brand-copy{gap:5px}.site-header .brand-tagline{font-size:10px}
  .site-header .nav-primary{gap:6px}.site-header .nav .nav-primary a{padding:9px 6px;font-size:14px;line-height:1.25}
  .site-header .nav .nav-primary #account-nav{font-size:14px;padding:9px 6px}
  .site-header .nav .nav-primary.has-member-session a,.site-header .nav .nav-primary.has-member-session #account-nav,.site-header .nav .banner-signout{font-size:12px;padding:9px 4px;min-width:0;min-height:48px}
  .site-header .nav-primary.has-member-session #favourite-count{display:none}
}
@media (max-width:360px){
  .site-header .brand{gap:7px}.site-header .brand img{width:80px;height:57px}.site-header .wordmark{font-size:22px;letter-spacing:-1.1px}.site-header .brand-tagline{font-size:9px}
  .site-header .nav .nav-primary a{font-size:13px;padding:9px 4px}
  .site-header .nav .nav-primary #account-nav{font-size:13px;padding:9px 4px}
  .site-header .nav .nav-primary.has-member-session a,.site-header .nav .nav-primary.has-member-session #account-nav{font-size:12px}
}
@media print{.site-header{display:none!important}html{scroll-padding-top:0}}
