
/* ===== Shared site header (scoped: .xh-header) ===== */
.xh-header{--xh-red:#88181a;--xh-ink:#0d1024;position:relative;z-index:1000;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;margin:0;padding:1.5vw 6.2vw;background:transparent;font-family:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;color:var(--xh-ink);line-height:normal;-webkit-font-smoothing:antialiased}
.xh-header *{box-sizing:border-box;margin:0}
.xh-header a{color:inherit;text-decoration:none}
.xh-header a:focus-visible{outline:2px solid var(--xh-red);outline-offset:4px}
.xh-header .xh-logo{display:flex;flex-direction:column;align-items:flex-end;gap:.35vw;width:auto;height:auto}
.xh-header .xh-logo img{display:block;width:auto;max-width:none;height:clamp(30px,2.7vw,52px)}
.xh-header .xh-logo small{font-size:clamp(8px,.48vw,10px);letter-spacing:.32em;color:#444;font-weight:500}
.xh-header .xh-nav{display:flex;gap:3.2vw;margin-left:-4vw;padding:0;background:none;border:0;box-shadow:none;position:static}
.xh-header .xh-nav a{position:relative;padding:.7em 0;font-size:clamp(13.6px,.92vw,16px);font-weight:500}
.xh-header .xh-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--xh-red);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.xh-header .xh-nav a:hover::after,.xh-header .xh-nav a.on::after{transform:scaleX(1)}
.xh-header .xh-nav a.on{color:var(--xh-red)}
.xh-header .xh-r{display:flex;align-items:center;gap:2.6vw}
.xh-header .xh-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:.8em;padding:1.05em 1.9em;border-radius:12px;font-weight:700;font-size:clamp(11.5px,.88vw,15.2px);letter-spacing:.09em;text-transform:uppercase;color:#fff;background:linear-gradient(180deg,#88181a,#88181a);box-shadow:0 10px 28px rgba(136,24,26,.38),inset 0 1px 0 rgba(255,255,255,.35);transition:transform .25s,box-shadow .25s}
.xh-header .xh-btn:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(136,24,26,.5),inset 0 1px 0 rgba(255,255,255,.35)}
.xh-header .xh-btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:xhShine 4.5s 2.2s infinite}
.xh-header .xh-btn svg{width:1.3em;height:1.3em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.xh-header .xh-btn:hover svg{transform:translateX(5px)}
.xh-header .xh-menu-btn{display:none}
@keyframes xhShine{0%{left:-60%}30%,100%{left:170%}}
@keyframes xhMenuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .xh-header{padding:4vw 6vw}
  .xh-header .xh-logo img{height:32px}
  .xh-header .xh-logo small{font-size:8px}
  .xh-header .xh-r{gap:16px}
  .xh-header .xh-btn{display:none}
  .xh-header .xh-menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;padding:0;border:1px solid rgba(136,24,26,.18);border-radius:12px;background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;-webkit-tap-highlight-color:transparent}
  .xh-header .xh-menu-btn:focus-visible{outline:2px solid var(--xh-red);outline-offset:3px}
  .xh-header .xh-menu-btn span{display:block;width:20px;height:2px;border-radius:2px;background:var(--xh-ink);transition:transform .3s,opacity .25s}
  .xh-header .xh-menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .xh-header .xh-menu-btn.open span:nth-child(2){opacity:0}
  .xh-header .xh-menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .xh-header .xh-nav{display:none;position:absolute;top:100%;left:6vw;right:6vw;margin:10px 0 0;padding:6px 18px;flex-direction:column;gap:0;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(136,24,26,.14);border-radius:16px;box-shadow:0 18px 40px rgba(13,16,36,.18)}
  .xh-header .xh-nav.open{display:flex;animation:xhMenuIn .25s ease both}
  .xh-header .xh-nav a{padding:14px 2px;font-size:15.2px;border-bottom:1px solid rgba(13,16,36,.07)}
  .xh-header .xh-nav a:last-child{border-bottom:0}
  .xh-header .xh-nav a::after{display:none}
}
