@import url("https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&family=Nunito:wght@700;800;900;1000&display=swap");
:root{--shared-nav-navy:#071b50;--shared-nav-red:#d91d2b;--shared-nav-touch:cubic-bezier(.2,.75,.25,1)}
.topbar{position:relative;z-index:20;height:74px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;column-gap:clamp(20px,3vw,52px);padding:0 clamp(24px,4vw,62px);background-color:#fff;background-image:url('paper-texture.png?v=20260831-0537');background-size:612px 312px;background-repeat:repeat;color:var(--shared-nav-navy);box-shadow:none;border:0}
.topbar::after{content:none}.topbar .brand{justify-self:start;display:flex;align-items:center;gap:8px;color:var(--shared-nav-navy);text-decoration:none;white-space:nowrap}
/* Locked brand relationship: dog brandmark is slightly taller than the supplied wordmark. */
.topbar .brand>img:first-child{width:50px;height:50px;object-fit:contain;border-radius:0;display:block;flex:0 0 50px}
.topbar .brand .nsw-dog-wordmark-image{width:156px;height:auto;max-height:46px;object-fit:contain;display:block;border-radius:0}
.topbar .public-nav{justify-self:center;display:flex;align-items:center;gap:clamp(30px,3.4vw,58px);font:700 13px/1 'Nunito',Arial,sans-serif}
.topbar .nav-item{appearance:none;border:0;background:transparent;color:#111827;font:inherit;cursor:pointer;position:relative;min-width:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;white-space:nowrap;padding:0;transition:transform 180ms var(--shared-nav-touch),color 180ms ease}
.topbar .nav-icon{position:relative;width:23px;height:23px;display:block}.topbar .nav-item img{width:23px;height:23px;display:block;filter:none}.topbar .nav-icon-colour{position:absolute;inset:0;opacity:0}.topbar .nav-item:hover,.topbar .nav-item:focus-visible,.topbar .nav-item.is-open{transform:translateY(-2px);color:var(--shared-nav-red)}.topbar .nav-item:hover .nav-icon-colour,.topbar .nav-item:focus-visible .nav-icon-colour,.topbar .nav-item.is-open .nav-icon-colour{opacity:1}.topbar .nav-item:hover .nav-icon-bw,.topbar .nav-item:focus-visible .nav-icon-bw,.topbar .nav-item.is-open .nav-icon-bw{opacity:0}
.topbar .nav-actions{justify-self:end;display:flex;align-items:center;gap:12px}.topbar .nav-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;text-decoration:none;font:800 13px/1 'Nunito',Arial,sans-serif}.topbar .nav-action img{width:18px;height:18px;display:block}.topbar .signin{min-height:38px;padding:0 17px;border:1.8px solid var(--shared-nav-red);border-radius:24px;color:var(--shared-nav-red)!important;background:rgba(255,255,255,.60)}.topbar .signin img{filter:invert(19%) sepia(99%) saturate(4024%) hue-rotate(347deg) brightness(88%) contrast(92%)}.topbar .join.small{min-height:40px;padding:0 19px;border:0;border-radius:24px;background:linear-gradient(110deg,#c91526,#dc1f2d);color:#fff}.topbar .join.small img{width:19px;height:19px;filter:brightness(0) invert(1)}
.topbar .nav-info-panel{position:absolute;top:calc(100% + 10px);z-index:50;padding:22px;background:#fff;border-radius:16px;box-shadow:0 18px 45px rgba(7,27,80,.18);color:#26354c}.topbar .nav-info-panel[hidden]{display:none}.topbar .nav-info-copy{display:grid;grid-template-columns:74px 1fr;gap:18px;align-items:center}.topbar .nav-info-copy[hidden]{display:none}.topbar .nav-info-art{width:74px;height:74px;object-fit:contain}.topbar .nav-info-copy p{margin:0;font:700 14px/1.55 'Nunito',Arial,sans-serif}
@media(max-width:900px){.topbar{height:88px;grid-template-columns:1fr auto;padding-inline:20px}.topbar .public-nav{display:none}}
@media(max-width:600px){.topbar{height:82px;padding-inline:15px}.topbar .brand>img:first-child{width:44px;height:44px;flex-basis:44px}.topbar .brand .nsw-dog-wordmark-image{width:132px;max-height:40px}.topbar .join.small{display:none}.topbar .signin{min-height:40px;padding-inline:14px}}

/* 2026-09-04 final navigation lock.
   This block is authoritative so page-level styles cannot resize/reposition the shared bar. */
.site-global-nav.topbar{
  position:relative!important;z-index:20!important;height:74px!important;min-height:74px!important;
  display:grid!important;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr)!important;
  align-items:center!important;column-gap:clamp(20px,3vw,52px)!important;
  padding:0 clamp(24px,4vw,62px)!important;margin:0!important;
  background-color:#fff!important;background-image:url('paper-texture.png?v=20260831-0537')!important;
  background-size:612px 312px!important;background-repeat:repeat!important;
  border:0!important;box-shadow:none!important;color:var(--shared-nav-navy)!important;
}
.site-global-nav.topbar .brand{
  justify-self:start!important;display:flex!important;align-items:center!important;gap:8px!important;
  margin:0!important;padding:0!important;text-decoration:none!important;white-space:nowrap!important;
}
/* Visual lockup: red dog is deliberately just larger than the full two-line wordmark. */
.site-global-nav.topbar .brand>img:first-child{
  width:52px!important;height:52px!important;min-width:52px!important;max-width:52px!important;
  object-fit:contain!important;border-radius:0!important;display:block!important;flex:0 0 52px!important;
}
.site-global-nav.topbar .brand .nsw-dog-wordmark-image{
  width:150px!important;height:auto!important;max-width:150px!important;max-height:45px!important;
  object-fit:contain!important;border-radius:0!important;display:block!important;flex:0 0 auto!important;
}
.site-global-nav.topbar .public-nav{
  justify-self:center!important;display:flex!important;align-items:center!important;
  gap:clamp(30px,3.4vw,58px)!important;margin:0!important;padding:0!important;
  font:700 13px/1 'Nunito',Arial,sans-serif!important;
}
.site-global-nav.topbar .nav-actions{
  justify-self:end!important;display:flex!important;align-items:center!important;gap:12px!important;
  margin:0!important;padding:0!important;
}
@media(max-width:900px){
  .site-global-nav.topbar{height:88px!important;min-height:88px!important;grid-template-columns:1fr auto!important;padding-inline:20px!important}
  .site-global-nav.topbar .public-nav{display:none!important}
}
@media(max-width:600px){
  .site-global-nav.topbar{height:82px!important;min-height:82px!important;padding-inline:15px!important}
  .site-global-nav.topbar .brand>img:first-child{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;flex-basis:46px!important}
  .site-global-nav.topbar .brand .nsw-dog-wordmark-image{width:132px!important;max-width:132px!important;max-height:40px!important}
}

/* 2026-09-04 14:xx verified navigation geometry correction.
   Explicit grid placement is required because non-landing headers omit the
   centre navigation element; without this, account actions fall into column 2. */
.site-global-nav.topbar .brand{grid-column:1!important;grid-row:1!important}
.site-global-nav.topbar .public-nav{grid-column:2!important;grid-row:1!important}
.site-global-nav.topbar .nav-actions{grid-column:3!important;grid-row:1!important}
/* Brandmark is intentionally and visibly slightly taller than the complete
   two-line wordmark. These values are shared by every desktop header. */
.site-global-nav.topbar .brand>img:first-child{
  width:58px!important;height:58px!important;min-width:58px!important;max-width:58px!important;flex-basis:58px!important;
}
.site-global-nav.topbar .brand .nsw-dog-wordmark-image{
  width:150px!important;max-width:150px!important;max-height:45px!important;
}
@media(max-width:900px){
  .site-global-nav.topbar .brand{grid-column:1!important}
  .site-global-nav.topbar .nav-actions{grid-column:2!important}
}
@media(max-width:600px){
  .site-global-nav.topbar .brand>img:first-child{width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;flex-basis:50px!important}
  .site-global-nav.topbar .brand .nsw-dog-wordmark-image{width:132px!important;max-width:132px!important;max-height:40px!important}
}
