/* Header Styles - LottoBestNZ */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:var(--space-4);top:var(--space-4);width:auto;height:auto;background:var(--color-primary);color:var(--color-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-base);box-shadow:var(--shadow-md)}

.site-header{position:sticky;top:0;z-index:var(--z-index-sticky);background:color-mix(in oklab, var(--color-bg-primary) 92%, transparent);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--color-gray-100)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:var(--space-4)}

/* Brand */
.brand-link{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-extrabold);letter-spacing:-0.01em}
.brand-text{font-size:1.25rem;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 4px 10px rgba(255,215,0,.35))}

/* Menu Toggle */
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-lg);border:2px solid var(--color-gray-200)}
.menu-toggle:hover{background:var(--color-gray-100)}
.menu-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}
.menu-toggle-box{position:relative;display:inline-block;width:22px;height:16px}
.menu-bar{position:absolute;left:0;width:100%;height:2px;background:var(--color-secondary);border-radius:2px;transition:transform var(--transition-base) var(--transition-ease),opacity var(--transition-fast) var(--transition-ease),top var(--transition-base) var(--transition-ease)}
.menu-bar:nth-child(1){top:0}
.menu-bar:nth-child(2){top:7px}
.menu-bar:nth-child(3){top:14px}
.menu-toggle.is-active .menu-bar:nth-child(1){top:7px;transform:rotate(45deg)}
.menu-toggle.is-active .menu-bar:nth-child(2){opacity:0}
.menu-toggle.is-active .menu-bar:nth-child(3){top:7px;transform:rotate(-45deg)}

/* Navigation */
.primary-nav{display:flex;align-items:center;gap:var(--space-6)}
.nav-list{display:flex;align-items:center;gap:var(--space-4)}
.nav-link{display:inline-block;padding:10px 6px;border-radius:var(--radius-sm);color:var(--color-secondary)}
.nav-link:hover{color:var(--color-primary-dark)}
.nav-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}
.nav-cta{display:none}

/* Mobile */
@media (max-width: 1024px){
  .nav-cta{display:block}
  .primary-nav{position:fixed;inset:auto 0 0 0;top:64px;flex-direction:column;align-items:stretch;gap:0;padding:var(--space-6) var(--space-4);background:var(--color-bg-primary);border-top:1px solid var(--color-gray-100);box-shadow:var(--shadow-lg);transform:translateY(8px);opacity:0;visibility:hidden;height:0;overflow:hidden;transition:opacity var(--transition-base) var(--transition-ease),transform var(--transition-base) var(--transition-ease),visibility var(--transition-base) var(--transition-ease),height var(--transition-base) var(--transition-ease)}
  .primary-nav.is-open{opacity:1;visibility:visible;transform:translateY(0);height:350px;overflow:visible;background: #fff;justify-content: center; flex-direction: column;align-items: center;}
  .nav-list{flex-direction:column;align-items:flex-start;gap:0;background:#fff;padding:20px;}
  .nav-item{width:100%}
  .nav-link{display:block;width:100%;padding:12px;border-radius:var(--radius-base)}
}

/* Desktop */
@media (min-width: 1025px){
  .menu-toggle{display:none}
}

/* Utility for body scroll lock when menu open */
.body-lock{overflow:hidden}
