#site-header{position:sticky;top:0;z-index:1000;background:var(--c-bg);border-bottom:1px solid var(--c-border);box-shadow:0 2px 4px rgb(0 0 0 / .05);transition:all .3s ease}.header-container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;max-width:1200px;margin:0 auto;padding:.5rem 1.5rem;gap:1rem}.main-nav{flex:1 1 auto;text-align:center}.main-nav ul{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:2.2rem;list-style:none;margin:0;padding:0}.main-nav a{font-size:2.1rem;font-weight:400;color:var(--c-text);text-decoration:none;transition:color .2s ease}.main-nav a:hover,.main-nav a:focus-visible{color:var(--c-primary)}.header-icons{display:flex;align-items:center;gap:1.2rem}.header-icons button{font-size:2.4rem;width:2.2rem;height:2.2rem;background:none;border:2px solid var(--c-primary);border-radius:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--c-primary);transition:background .2s ease,color .2s ease}.header-icons button:hover,.header-icons button:focus-visible{background:var(--c-primary);color:#fff}.search-bar{display:none;border-top:1px solid var(--c-border);padding:1rem 2rem;background:var(--c-bg);transition:all .3s ease}.search-bar.active{display:block;animation:fadeIn .3s ease forwards}@keyframes fadeIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.search-bar.active{animation:none}}@media (max-width:1024px){.header-container{position:relative;flex-wrap:nowrap;align-items:center;justify-content:center;padding:.8rem 1.5rem}.menu-toggle{position:absolute;left:50%;transform:translateX(-50%);z-index:1001;width:3rem;height:3rem;font-size:2.2rem;border:2px solid var(--c-primary);border-radius:.4rem;background:none;color:var(--c-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease}.menu-toggle:hover,.menu-toggle:focus-visible{background:var(--c-primary);color:#fff}.search-toggle{width:2.6rem;height:2.6rem;font-size:2rem;border:2px solid var(--c-primary);border-radius:.4rem;background:none;color:var(--c-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease}.search-toggle:hover,.search-toggle:focus-visible{background:var(--c-primary);color:#fff}#primary-menu.main-nav{position:relative;width:100%}#primary-menu.main-nav>ul{position:absolute;top:100%;left:0;width:100%;background:var(--c-bg);border-top:1px solid var(--c-border);box-shadow:0 4px 10px rgb(0 0 0 / .05);flex-direction:column;align-items:flex-start;padding:1.5rem 2rem;gap:1.2rem;z-index:9999;max-height:0;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transition:max-height 0.4s ease,opacity 0.3s ease,visibility 0.3s ease}#primary-menu.main-nav.active>ul{max-height:500px;opacity:1;visibility:visible;pointer-events:auto}#primary-menu.main-nav a{font-size:1.8rem;width:100%}#primary-menu.main-nav ul{flex-wrap:nowrap;width:100%}#primary-menu.main-nav ul li{width:100%}#primary-menu.main-nav ul li ul.sub-menu{width:100%;padding-left:1.5rem}#primary-menu.main-nav ul li ul.sub-menu li{width:100%}}@media (max-width:600px){.header-container{flex-direction:row;justify-content:center;padding:.6rem 1rem}.menu-toggle{width:2.4rem;height:2.4rem;font-size:2rem}.search-toggle{width:2.2rem;height:2.2rem;font-size:1.8rem}#primary-menu.main-nav>ul{padding:1.2rem}}body.scrolled #site-header{box-shadow:0 2px 8px rgb(0 0 0 / .1);padding:.4rem 0}.main-nav ul li{position:relative}.main-nav ul li ul{display:none;position:absolute;top:100%;left:0;background:var(--c-bg);border:1px solid var(--c-border);border-radius:.375rem;padding:.8rem 0;min-width:180px;box-shadow:0 4px 8px rgb(0 0 0 / .08);z-index:999}.main-nav ul li ul li a{display:block;font-size:1.5rem;font-weight:500;padding:.8rem 1.6rem;color:var(--c-text);white-space:nowrap}.main-nav ul li ul li a:hover,.main-nav ul li ul li a:focus-visible{background:var(--c-light-bg);color:var(--c-primary)}.main-nav ul li:hover>ul,.main-nav ul li:focus-within>ul{display:block}@media (max-width:1024px){.main-nav ul li ul{position:static;display:none;border:none;box-shadow:none;background:#fff0;padding:0}.main-nav ul li.active>ul,.main-nav ul li:focus-within>ul{display:block}.main-nav ul li ul li a{padding-left:2.5rem;font-size:1.7rem}}a:focus-visible,button:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}