/* Header & Navigation */
.site-header { position:fixed; top:0; left:0; right:0; z-index:1000; background:var(--color-white); box-shadow:var(--shadow-sm); transition:background var(--ease), box-shadow var(--ease); }
.site-header--transparent { background:transparent; box-shadow:none; }
.site-header--transparent.scrolled { background:var(--color-white); box-shadow:var(--shadow-sm); }
.header-inner { display:flex; align-items:center; justify-content:space-between; height:var(--header-h); max-width:var(--max-w-wide); margin:0 auto; padding:0 var(--sp-xl); }
.header-logo img { height:40px; width:auto; }
.main-nav { display:flex; align-items:center; gap:var(--sp-xs); }
.main-nav__list { display:flex; align-items:center; }
.main-nav__item { position:relative; }
.main-nav__link { display:block; padding:.5rem 1rem; font-size:var(--text-sm); font-weight:600; color:var(--color-navy); white-space:nowrap; transition:color var(--ease-fast); }
.main-nav__link:hover, .main-nav__link.active { color:var(--color-gold); }

/* Dropdown */
.main-nav__item:hover .submenu { opacity:1; visibility:visible; transform:translateY(0); }
.submenu { position:absolute; top:100%; left:0; min-width:200px; background:var(--color-white); box-shadow:var(--shadow-lg); border-radius:var(--radius); padding:var(--sp-sm) 0; opacity:0; visibility:hidden; transform:translateY(-8px); transition:all var(--ease); z-index:100; }
.submenu__link { display:block; padding:.5rem 1.25rem; font-size:var(--text-sm); color:var(--color-text); transition:background var(--ease-fast), color var(--ease-fast); }
.submenu__link:hover { background:var(--color-off-white); color:var(--color-gold); }

/* Apartment Search */
.apt-search-wrapper { position:relative; }
.apt-search-btn { display:inline-flex; align-items:center; gap:var(--sp-sm); padding:.5rem 1.25rem; background:var(--color-gold); color:var(--color-navy); font-size:var(--text-sm); font-weight:700; border-radius:var(--radius); cursor:pointer; transition:background var(--ease-fast); }
.apt-search-btn:hover { background:var(--color-gold-hover); }
.apt-search-btn__arrow { font-size:.6rem; transition:transform var(--ease-fast); }
.apt-search-btn.open .apt-search-btn__arrow { transform:rotate(180deg); }
.apt-dropdown { position:absolute; top:calc(100% + 8px); right:0; min-width:220px; background:var(--color-white); box-shadow:var(--shadow-lg); border-radius:var(--radius); padding:var(--sp-sm) 0; opacity:0; visibility:hidden; transform:translateY(-8px); transition:all var(--ease); z-index:100; }
.apt-dropdown.open { opacity:1; visibility:visible; transform:translateY(0); }
.apt-dropdown__link { display:block; padding:.5rem 1.25rem; font-size:var(--text-sm); color:var(--color-text); transition:background var(--ease-fast); }
.apt-dropdown__link:hover { background:var(--color-off-white); color:var(--color-gold); }

/* Mobile toggle */
.menu-toggle { display:none; flex-direction:column; gap:5px; padding:8px; cursor:pointer; }
.menu-toggle__bar { width:24px; height:2px; background:var(--color-navy); transition:all var(--ease-fast); border-radius:2px; }
.menu-toggle.open .menu-toggle__bar:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.menu-toggle.open .menu-toggle__bar:nth-child(2) { opacity:0; }
.menu-toggle.open .menu-toggle__bar:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

@media (max-width:1024px) {
  .menu-toggle { display:flex; }
  .main-nav__list { position:fixed; top:var(--header-h); left:0; right:0; bottom:0; flex-direction:column; background:var(--color-white); padding:var(--sp-xl); transform:translateX(100%); transition:transform var(--ease); overflow-y:auto; }
  .main-nav__list.open { transform:translateX(0); }
  .main-nav__link { padding:.75rem 0; font-size:var(--text-lg); }
  .submenu { position:static; box-shadow:none; opacity:1; visibility:visible; transform:none; padding-left:var(--sp-lg); display:none; }
  .main-nav__item.open .submenu { display:block; }
}
