/* Regular site header above the photo pages (partials/site-nav.php). Self-contained: also loaded by the rules page. */
@font-face{font-family:"Plus Jakarta Sans";src:url("../fonts/PlusJakartaSans-Variable-Latin.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}

.site-nav{--site-nav-h:100px;position:relative;z-index:50;background:#000;color:#fff;font:500 16px/1.4 "Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.site-nav *,.site-nav *::before,.site-nav *::after{box-sizing:border-box}
.site-nav ul{list-style:none;margin:0;padding:0}
.site-nav a{color:#fff;text-decoration:none}
.site-nav a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1.5px}
.site-nav a:focus-visible,.site-nav-toggle:focus-visible{outline:3px solid #fff;outline-offset:3px;border-radius:4px}
.site-nav-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-nav-skip{position:absolute;left:12px;top:-80px;z-index:60;padding:10px 16px;background:#fff;color:#000!important;font-weight:700;border-radius:6px}
.site-nav-skip:focus{top:12px}

.site-nav-bar{position:relative;display:flex;align-items:center;justify-content:center;min-height:var(--site-nav-h);padding:14px 20px;max-width:1280px;margin:0 auto}
.site-nav-logo{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;line-height:0}
.site-nav-logo:hover{text-decoration:none}
.site-nav-logo img{display:block;width:72px;height:72px;border-radius:50%;object-fit:contain}
.site-nav-wordmark{display:inline-block;font-size:20px;font-weight:800;line-height:1.2;letter-spacing:-.01em;padding:8px}

/* Phone: white menu button at left, logo centred, full-height panel below the bar. */
.site-nav-menu{position:static}
.site-nav-toggle{position:absolute;left:20px;top:calc((var(--site-nav-h) - 48px) / 2);display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:#fff;cursor:pointer;list-style:none;border-radius:6px}
.site-nav-toggle::-webkit-details-marker{display:none}
.site-nav-toggle::marker{content:""}
.site-nav-icon{display:block;width:28px;height:28px}
.site-nav-icon--close,.site-nav-menu[open] .site-nav-icon--open{display:none}
.site-nav-menu[open] .site-nav-icon--close{display:block}
.site-nav-panel{position:absolute;left:0;right:0;top:100%;height:calc(100vh - var(--site-nav-h));height:calc(100dvh - var(--site-nav-h));overflow-y:auto;overscroll-behavior:contain;background:#1c1724;border-top:1px solid rgba(255,255,255,.16);padding:24px 20px 40px;z-index:55}
.site-nav-panel-list{display:grid;justify-items:center}
.site-nav-panel-list a{display:flex;align-items:center;justify-content:center;min-height:47px;padding:0 16px;font-size:19px;font-weight:500}

.site-nav-links{display:none}

@media (max-width:959px){
  html:has(.site-nav-menu[open]){overflow:hidden}
}
@media (min-width:960px){
  .site-nav{--site-nav-h:96px}
  .site-nav-bar{padding:8px 24px}
  .site-nav-menu{display:none}
  .site-nav-logo img{width:80px;height:80px}
  /* Links sit either side of the centred logo; the empty middle column is the logo's space. */
  .site-nav-links{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);align-items:center;padding:0 24px;pointer-events:none}
  .site-nav-list{display:flex;flex-wrap:wrap;gap:0 4px;pointer-events:auto}
  .site-nav-list--left{grid-column:1;justify-self:end;justify-content:flex-end}
  .site-nav-list--right{grid-column:3;justify-self:start}
  .site-nav-list a{display:inline-flex;align-items:center;min-height:44px;padding:0 9px;font-size:16px;font-weight:500;white-space:nowrap}
}
@media print{.site-nav{display:none}}

/* Rules documents with this site header use the same type and white canvas as the photo pages. */
body:has(>.site-nav){background:#fff;font-family:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
