.site-header { background: #ffffff; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05); position: sticky; top: 0; z-index: 1000; padding: 15px 0; } .container { max-width: 1200px; margin: 0 auto; padding: 0 15px; } .header-inner { display: flex; justify-content: space-between; align-items: center; } .site-branding { display: flex; align-items: center; gap: 10px; } .site-logo { max-height: 40px; width: auto; object-fit: contain; } .site-title { font-size: 24px; font-weight: 700; color: #1a1a1a; text-decoration: none; font-family: 'Ubuntu', sans-serif; transition: color 0.3s ease; margin: 0; } .site-title:hover { color: #4a5568; } .main-navigation { display: flex; align-items: center; gap: 15px; } .nav-menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 25px; } .nav-menu li { position: relative; } .nav-menu > li > a { text-decoration: none; color: #4a5568; font-weight: 500; font-size: 15px; font-family: 'Ubuntu', sans-serif; transition: color 0.3s ease; padding: 8px 0; display: block; } .nav-menu > li > a:hover { color: #1a1a1a; } .nav-menu .menu-item-has-children > a:after { content: '\f107'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 10px; margin-left: 6px; display: inline-block; transition: transform 0.3s ease; } .nav-menu .menu-item-has-children:hover > a:after { transform: rotate(180deg); } .nav-menu .sub-menu { display: none; position: absolute; top: 100%; left: 0; background: #ffffff; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); list-style: none; padding: 10px 0; min-width: 200px; z-index: 1000; border-radius: 6px; border-top: 2px solid #4a5568; } .nav-menu li:hover > .sub-menu { display: block; } .nav-menu .sub-menu li { margin: 0; } .nav-menu .sub-menu a { color: #4a5568; font-weight: 400; font-size: 14px; padding: 8px 15px; display: block; transition: background 0.3s ease, color 0.3s ease; } .nav-menu .sub-menu a:hover { background: #f5f5f5; color: #1a1a1a; } .menu-toggle { display: none; background: none; border: none; font-size: 22px; color: #1a1a1a; cursor: pointer; padding: 5px; transition: color 0.3s ease; position: relative; z-index: 1001; } .menu-toggle.active i.fa-bars { display: none; } .menu-toggle.active:before { content: '\f00d'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 22px; } .dark-mode-container { position: relative; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background: rgba(255, 255, 255, 0.8); border-radius: 50%; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } .dark-mode-toggle { background: none; border: none; font-size: 22px; color: #1a1a1a; cursor: pointer; padding: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; transition: color 0.3s ease; } .dark-mode-toggle:hover { color: #4a5568; } .dark-mode-toggle.active { transform: rotate(360deg); transition: transform 0.5s ease, color 0.3s ease; } .dark-mode-toggle.active i.fa-moon { display: none; } .dark-mode-toggle.active:before { content: '\f185'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 22px; } @media (max-width: 768px) { .menu-toggle { display: block; position: fixed; top: 15px; right: 50px; } .dark-mode-container { position: fixed; top: 15px; right: 15px; z-index: 1001; } .nav-menu { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background: #ffffff; flex-direction: column; justify-content: center; align-items: center; gap: 20px; padding: 20px 0; z-index: 999; transition: transform 0.3s ease; transform: translateX(-100%); } .nav-menu.active { display: flex; transform: translateX(0); } .nav-menu > li > a { font-size: 20px; padding: 10px; color: #1a1a1a; } .nav-menu .menu-item-has-children > a:after { content: '\f107'; font-family: 'Font Awesome 6 Free'; font-weight: 900; font-size: 14px; margin-left: 8px; } .nav-menu .menu-item-has-children.active > a:after { transform: rotate(180deg); } .nav-menu .sub-menu { position: static; box-shadow: none; background: #f5f5f5; padding: 5px 0; width: 100%; display: none; border-radius: 0; border-top: none; } .nav-menu li:hover > .sub-menu { display: none; } .nav-menu li.active > .sub-menu { display: block; } .nav-menu .sub-menu a { font-size: 16px; padding: 8px 15px; text-align: center; } .header-inner { flex-direction: row; align-items: center; } .site-logo { max-height: 35px; } .site-title { font-size: 20px; } } @media (max-width: 480px) { .site-logo { max-height: 30px; } .site-title { font-size: 18px; } .menu-toggle { font-size: 20px; } .menu-toggle.active:before { font-size: 20px; } .dark-mode-container { width: 32px; height: 32px; } .dark-mode-toggle { font-size: 20px; } .dark-mode-toggle.active:before { font-size: 20px; } .nav-menu > li > a { font-size: 18px; } .nav-menu .sub-menu a { font-size: 14px; } }