.header { position: fixed; top: 0; left: 0; right: 0; background-color: var(--white); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); z-index: 1000; } .header-content { display: flex; justify-content: space-between; align-items: center; height: 70px; } .logo { display: flex; align-items: center; } .logo-img { height: 40px; width: auto; } .nav { display: flex; gap: 32px; } .nav-link { font-size: 1rem; font-weight: 500; color: var(--gray-600); padding: 8px 0; position: relative; transition: color 0.3s ease; } .nav-link:hover, .nav-link.active { color: var(--primary); } .nav-link::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: var(--primary); transition: width 0.3s ease; } .nav-link:hover::after, .nav-link.active::after { width: 100%; } .menu-toggle { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 5px; } .menu-toggle span { width: 24px; height: 2px; background-color: var(--gray-700); transition: all 0.3s ease; } .menu-toggle.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); } .menu-toggle.active span:nth-child(2) { opacity: 0; } .menu-toggle.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); } @media (max-width: 768px) { .header-content { height: 60px; padding: 0 12px; } .logo { flex: 1; max-width: calc(100% - 60px); } .logo-img { height: 36px; max-width: 100%; object-fit: contain; } .menu-toggle { display: flex; flex-shrink: 0; } .nav { position: fixed; top: 70px; left: 0; right: 0; background-color: var(--white); flex-direction: column; padding: 20px; gap: 0; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); transform: translateY(-100%); opacity: 0; visibility: hidden; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease; } .nav-open { transform: translateY(0); opacity: 1; visibility: visible; } .nav-link { padding: 15px 0; border-bottom: 1px solid var(--gray-200); } .nav-link::after { display: none; } }