/* header.css – Portfolio-Fotograf */
.header { position: fixed; top: 0; left: 0; right: 0; z-index: var(--z-header); height: var(--header-height); display: flex; align-items: center; transition: background var(--transition-slow), box-shadow var(--transition-slow); }
.header.is-scrolled { background: rgba(13,13,13,0.95); backdrop-filter: blur(10px); box-shadow: 0 1px 0 var(--color-border); }
.header__inner { display: flex; align-items: center; gap: var(--space-8); width: 100%; }
.header__logo { display: flex; flex-direction: column; line-height: 1.15; }
.header__logo-name { font-family: var(--font-display); font-size: var(--font-size-xl); font-weight: var(--font-weight-bold); color: var(--color-text); letter-spacing: 0.01em; }
.header__logo-tagline { font-family: var(--font-display); font-size: var(--font-size-sm); font-style: italic; color: var(--color-gold); letter-spacing: 0.04em; }
.nav { margin-left: auto; }
.nav__list { display: flex; gap: var(--space-8); }
.nav__link { font-size: var(--font-size-sm); font-weight: var(--font-weight-semi); color: rgba(245,245,245,0.75); position: relative; padding-bottom: 3px; transition: color var(--transition-fast); }
.nav__link::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; background: var(--color-gold); transition: width var(--transition-base); }
.nav__link:hover, .nav__link.is-active, .nav__link:focus-visible { color: var(--color-text); }
.nav__link:hover::after, .nav__link.is-active::after, .nav__link:focus-visible::after { width: 100%; }
.nav__link:focus-visible { outline: none; }
.header__logo:focus-visible { outline: 2px solid var(--color-gold); outline-offset: 4px; border-radius: 2px; }
.header__cta { margin-left: var(--space-4); }

/* Mobile menu button */
.mobile-menu-btn { display: none; flex-direction: column; gap: 5px; width: 28px; padding: var(--space-1); margin-left: auto; }
.mobile-menu-btn span { display: block; height: 2px; background: var(--color-text); border-radius: 2px; transition: transform var(--transition-base), opacity var(--transition-base); }
.mobile-menu-btn[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mobile-menu-btn[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.mobile-menu-btn[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile menu panel */
.mobile-menu { position: fixed; top: var(--header-height); left: 0; right: 0; background: rgba(13,13,13,0.98); backdrop-filter: blur(12px); max-height: 0; overflow: hidden; transition: max-height var(--transition-slow); z-index: calc(var(--z-header) - 1); }
.mobile-menu[aria-hidden="false"] { max-height: 400px; }
.mobile-menu__list { display: flex; flex-direction: column; padding: var(--space-6) var(--container-padding); gap: var(--space-1); }
.mobile-menu__link { font-family: var(--font-display); font-size: var(--font-size-2xl); font-style: italic; color: var(--color-text); padding-block: var(--space-3); display: block; transition: color var(--transition-fast); }
.mobile-menu__link:hover { color: var(--color-gold); }

@media (max-width: 768px) { .nav, .header__cta { display: none; } .mobile-menu-btn { display: flex; } }
