/* Visitor presence: two lines, no map and no geographical labels. Scope all changes here. */
.visitor-slot{min-width:0;align-self:center;position:relative;isolation:isolate;color:var(--muted,#80776e)}
.visitor-presence{position:relative;text-align:center;max-width:340px;margin:auto;padding:38px 20px 40px;border-top:1px solid color-mix(in srgb,currentColor 13%,transparent);border-bottom:1px solid color-mix(in srgb,currentColor 9%,transparent);animation:visitor-enter .95s ease both}
.visitor-presence::before{content:"";position:absolute;inset:18% 10%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,rgba(192,160,120,.075) 0%,transparent 72%)}
.visitor-presence::after{content:"◇";display:block;margin-top:20px;font-size:10px;line-height:1;letter-spacing:0;color:var(--muted,#80776e);opacity:.35;animation:visitor-glimmer 8s ease-in-out infinite}
.visitor-overline{font-size:clamp(14px,1.16vw,16px);font-weight:400;letter-spacing:.115em;line-height:1.85;opacity:.84;margin:0 0 13px}
.visitor-count{font-family:SimSun,"Songti SC","Noto Serif CJK SC",serif;font-size:clamp(16px,1.35vw,18px);line-height:1.85;letter-spacing:.04em;margin:0;min-height:38px;font-variant-numeric:tabular-nums;color:var(--muted,#80776e)}
.visitor-number{display:inline-block;font-family:inherit;font-weight:600;font-size:clamp(24px,2.4vw,30px);line-height:1.25;letter-spacing:-.035em;margin-inline:2px 5px;vertical-align:-.08em;color:var(--text,#35312e);font-variant-numeric:tabular-nums}
.visitor-count-updated .visitor-number{animation:visitor-number-arrive .6s cubic-bezier(.22,1,.36,1)}
@keyframes visitor-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes visitor-number-arrive{0%{opacity:.5;transform:translateY(4px)}65%{opacity:1;transform:translateY(-1px)}100%{opacity:1;transform:none}}
@keyframes visitor-glimmer{0%,100%{opacity:.25}50%{opacity:.5}}
@media(min-width:1050px){.hero:has(.visitor-slot){grid-template-columns:minmax(0,1.04fr) minmax(230px,.83fr) minmax(0,1fr);column-gap:22px}}
@media(max-width:1049px){.hero:has(.visitor-slot){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero .visitor-slot{grid-column:1/-1;grid-row:2;max-width:420px;width:100%;justify-self:center}.visitor-presence{padding:23px 18px 22px}}
@media(max-width:680px){.hero:has(.visitor-slot){display:flex;flex-direction:column}.hero .visitor-slot{order:1;max-width:340px}.hero:has(.visitor-slot) .hero-art{order:2}.visitor-presence{padding:20px 12px 19px}.visitor-overline{font-size:14px}.visitor-count{font-size:16px}.visitor-number{font-size:26px}}
@media(prefers-reduced-motion:reduce){.visitor-presence,.visitor-presence::after,.visitor-count-updated .visitor-number{animation:none}}
