/* Identical navigation, search and footer on the homepage and theme pages. */
/* Reserve one consistent viewport gutter on short and long pages alike. */
html {overflow-y:scroll;scrollbar-gutter:stable;}
html::-webkit-scrollbar,html>body::-webkit-scrollbar {width:8px;height:8px;}
html::-webkit-scrollbar-track,html>body::-webkit-scrollbar-track {background:transparent;}
html::-webkit-scrollbar-thumb,html>body::-webkit-scrollbar-thumb {background:#617848;border-radius:4px;}
html::-webkit-scrollbar-thumb:hover,html>body::-webkit-scrollbar-thumb:hover {background:#43572f;}
.qq-header, #l_header.qq-header { box-sizing:border-box;position:fixed;inset:0 0 auto;width:100%;max-width:none;height:76px;margin:0;padding:0 max(calc((100vw - 1250px)/2),34px);display:flex;align-items:center;gap:26px;z-index:100;opacity:1!important;visibility:visible;transform:none!important;border:0;border-radius:0;box-shadow:0 1px 0 #53663826;background:#fafbf8ee;backdrop-filter:blur(16px);color:#30372f;transition:background .2s; }
body:has(.hero):not(.scrolled) #l_header.qq-header { background:transparent;box-shadow:none;backdrop-filter:none; }
.qq-header a { color:inherit;text-decoration:none; }
.qq-header a:hover {color:#536638;text-decoration:underline;text-underline-offset:4px;}
.qq-header .qq-brand {display:flex;align-items:center;gap:10px;white-space:nowrap;font:500 19px/1.3 'Avenir Next','Trebuchet MS',sans-serif;letter-spacing:.005em;color:#3e4337;}
.qq-brand img {display:block;width:30px;height:30px;border-radius:50%;}
.qq-desktop-nav {display:flex;align-items:center;gap:27px;margin-left:auto;font:14px/1.5 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;}
.qq-desktop-nav a {white-space:nowrap;}
.qq-header a[aria-current=page] {color:#536638;text-decoration:underline;text-decoration-color:#53663866;text-underline-offset:7px;}
.qq-header button {font:inherit;color:inherit;cursor:pointer;background:none;border:0;}
.qq-search-open {display:grid;place-items:center;width:32px;height:38px;padding:0;flex-shrink:0;}
.qq-mobile-menu {display:none;}
/* Volantis styles every details/summary globally, including negative margins.
   Keep the shared navigation independent of those article disclosure styles. */
#l_header.qq-header {font:400 16px/1.5 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;}
#l_header .qq-mobile-menu {margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible;font:400 13px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;}
#l_header .qq-mobile-menu summary {margin:0;padding:8px 0 8px 5px;border:0;border-radius:0;box-shadow:none;background:transparent;font:inherit;letter-spacing:normal;}
#l_header .qq-mobile-menu summary::before,#l_header .qq-mobile-menu summary::after {content:none;display:none;}
.qq-header [hidden] {display:none!important;}
.qq-header :focus-visible,.qq-footer :focus-visible,.qq-search :focus-visible {outline:2px solid #536638;outline-offset:4px;}
.qq-footer {display:flex;gap:25px;align-items:center;margin:45px 0 0;padding:24px 0 48px;border-top:1px solid #53663826;color:#667060;font:11px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;}
.qq-footer a {color:inherit;text-decoration:none;}
.qq-footer a:hover {color:#536638;text-decoration:underline;text-underline-offset:4px;}
.qq-footer a:first-of-type {margin-left:auto;}
dialog.qq-search {box-sizing:border-box;position:fixed;inset:0;width:min(560px,calc(100% - 32px));max-height:80svh;margin:auto;padding:25px;color:#30372f;background:#fafbf8;border:1px solid #53663826;border-radius:12px;box-shadow:0 20px 80px #30372f30;font:15px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif;}
.qq-search::backdrop {background:#30372f55;backdrop-filter:blur(5px);}
.qq-search-heading {display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;}
.qq-search-heading h2 {margin:0;font-size:20px;font-weight:550;line-height:1.5;}
.qq-search-close {border:0;background:none;color:inherit;cursor:pointer;font-size:25px;padding:5px 10px;}
.qq-search input {box-sizing:border-box;width:100%;padding:11px 13px;border:1px solid #53663826;border-radius:5px;background:white;color:inherit;font:inherit;}
.qq-search-results {max-height:50svh;overflow:auto;margin-top:15px;}
.qq-search-results a {display:block;padding:14px 0;border-bottom:1px solid #53663826;color:#30372f;text-decoration:none;}
.qq-search-results a:hover {color:#536638;}
.qq-search-results span {display:block;font-size:11px;color:#667060;margin-top:3px;}
@media(max-width:1080px){#l_header.qq-header{padding:0 27px;gap:17px}.qq-desktop-nav{gap:20px;font-size:13px}}
@media(max-width:800px){#l_header.qq-header{height:65px;padding:0 22px;gap:14px}.qq-header .qq-brand{font-size:18px}.qq-brand img{width:27px;height:27px}.qq-desktop-nav{display:none}.qq-search-open{margin-left:auto}.qq-mobile-menu{display:block;position:relative;font:13px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}.qq-mobile-menu summary{list-style:none;cursor:pointer;padding:8px 0 8px 5px;display:flex;gap:8px;align-items:center}.qq-mobile-menu summary::-webkit-details-marker{display:none}.qq-mobile-menu summary span{font-size:17px}.qq-mobile-menu nav{position:absolute;right:0;top:48px;display:grid;width:176px;padding:8px;box-sizing:border-box;background:#fafbf8;border:1px solid #53663826;border-radius:8px;box-shadow:0 8px 25px #30372f1c}.qq-mobile-menu nav a{padding:8px 13px;border-radius:4px}.qq-mobile-menu nav a:hover{background:#e9eee2}.qq-footer{gap:15px;font-size:10px;padding-bottom:32px}}
@media(max-width:360px){#l_header.qq-header{padding:0 17px}}
@media(prefers-reduced-motion:reduce){.qq-header{transition:none}}
