
.announcement{background:var(--green);color:var(--bg);font-size:13px;letter-spacing:.03em}
.announcement .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.site-header{
  position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);
  backdrop-filter:blur(18px);border-bottom:1px solid var(--line)
}
.header-row{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.logo{width:190px}
.main-nav{display:flex;justify-content:center;gap:27px;font-size:15px}
.main-nav a{position:relative}
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:.25s}
.main-nav a:hover::after{right:0}
.header-actions{display:flex;align-items:center;gap:9px}
.counter{
  position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;
  background:var(--gold);color:#fff;font-size:11px;display:grid;place-items:center
}
.mobile-menu-toggle{display:none}
.mobile-menu{
  position:fixed;inset:0;z-index:80;background:var(--surface);padding:100px 26px 30px;display:none;
  animation:menu-in .28s ease
}
.mobile-menu.is-open{display:block}
.mobile-menu nav{display:grid;gap:20px;font-family:Georgia,serif;font-size:34px}
.mobile-menu .menu-close{position:absolute;right:22px;top:22px}
@keyframes menu-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.search-overlay{
  position:fixed;inset:0;z-index:90;background:rgba(20,29,23,.58);backdrop-filter:blur(8px);display:none;padding:11vh 16px 30px
}
.search-overlay.is-open{display:block}
.search-dialog{width:min(720px,100%);margin:auto;background:var(--surface);border-radius:28px;padding:24px;box-shadow:var(--shadow)}
.search-dialog-top{display:flex;justify-content:space-between;align-items:center}
.search-results{display:grid;gap:8px;margin-top:16px}
.search-result{
  display:grid;grid-template-columns:64px 1fr auto;gap:13px;align-items:center;padding:9px;border-radius:14px;transition:.2s
}
.search-result:hover{background:var(--surface-soft)}
.search-result img{width:64px;height:64px;object-fit:cover;border-radius:12px}
.site-footer{padding:66px 0 28px;border-top:1px solid var(--line);background:var(--surface)}
.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:34px}
.footer-title{font-family:Georgia,serif;font-size:20px;margin-bottom:14px}
.footer-links{display:grid;gap:9px;color:var(--muted);font-size:14px}
.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}
.mobile-bottom{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--surface);
  border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);padding:7px 5px calc(7px + env(safe-area-inset-bottom))
}
.mobile-bottom a{min-height:54px;display:grid;place-items:center;gap:2px;color:var(--muted);font-size:11px}
.mobile-bottom span{font-size:20px}
@media(max-width:1024px){
  .main-nav{display:none}
  .mobile-menu-toggle{display:grid}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .announcement .container{justify-content:center}
  .announcement span:not(:first-child){display:none}
  .header-row{min-height:68px;gap:10px}
  .logo{width:145px}
  .header-actions .hide-mobile{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-bottom{flex-direction:column}
  .mobile-bottom{display:grid}
}
@media(max-width:480px){
  .footer-grid{grid-template-columns:1fr}
}
