.skip-link{position:fixed;z-index:2000;left:12px;top:10px;padding:12px 15px;background:#ffd59b;color:#141412;font-weight:700;text-decoration:none;transform:translateY(-150%);transition:transform .16s ease}
.skip-link:focus{transform:none}
.app-shell{overflow-x:clip}
a[data-screen-link]{text-decoration:none}
.hero-secondary{display:block}
.other-ways>a{min-height:58px;border:0;border-top:1px solid var(--color-border);background:transparent;padding:12px 0 4px;color:var(--paper);display:grid;gap:4px;text-align:left;cursor:pointer;text-decoration:none}
.other-ways>a span{font-weight:700;font-size:13px}.other-ways>a small{color:var(--color-text-muted);font-size:12px}
.nav-item{text-decoration:none}
button,a,input,summary{touch-action:manipulation;-webkit-tap-highlight-color:rgba(211,129,37,.18)}
a:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}
h1,h2,h3{text-wrap:balance;scroll-margin-top:106px}
p,small{overflow-wrap:anywhere;text-wrap:pretty}
dialog{overscroll-behavior:contain}
@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}
.route-filters{-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 26px),transparent 100%)}
.story-hero-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;margin-top:22px;padding:0 16px;border:1px solid rgba(255,255,255,.55);border-radius:2px;background:rgba(7,11,13,.62);color:#fff;font-weight:700;cursor:pointer;backdrop-filter:blur(10px)}
.story-hero-cta span{color:var(--color-action)}
.passport-index-note{display:block;max-width:250px;margin-top:10px;color:#aeb9bb;font-size:12px;line-height:1.45}
#screen-passport .badge:not(.is-earned){opacity:1;background:#101719;border-color:#263236}
#screen-passport .badge:not(.is-earned)>span,#screen-passport .badge:not(.is-earned) small{color:#aeb8ba}
#screen-passport .badge:after,.passport-stats span,.light-stage-strip span{font-size:11px!important}
.district-labels text{font-size:11px!important}
@media(max-height:740px){.story-hero{min-height:500px}.story-hero-copy{padding-top:56px;padding-bottom:72px}.story-hero-copy h1{font-size:3.7rem}}
/* Управляемые из локального редактора содержательные блоки */
.managed-page{width:min(100% - 32px,1080px);margin:48px auto 0;display:grid;gap:18px}.managed-page.has-divider{padding-top:32px;border-top:1px solid rgba(255,255,255,.16)}.managed-page--compact{margin-top:24px}.managed-block{position:relative;overflow:hidden;padding:clamp(22px,5vw,42px);border:1px solid rgba(255,255,255,.15);background:#0b1519;color:#f5f1e8}.managed-block--light{background:#eee9dd;color:#10191d}.managed-block--orange{background:linear-gradient(135deg,#b85c0d,#e39438);color:#101010}.managed-block__title{margin:8px 0 14px;font-size:clamp(28px,7vw,56px);line-height:.98}.managed-block__text,.managed-block__quote{max-width:780px;margin:0;white-space:pre-line;font-size:clamp(16px,3.6vw,21px);line-height:1.5}.managed-block__quote{border-left:3px solid currentColor;padding-left:20px}.managed-block__quote cite{display:block;margin-top:18px;font-size:13px;font-style:normal;opacity:.72}.managed-block>img,.managed-block>video{display:block;width:100%;max-height:68vh;margin-top:22px;object-fit:cover}.managed-block>audio{width:100%;margin-top:22px}.managed-block__caption{display:block;margin-top:10px;opacity:.72}.managed-block__button{display:inline-flex;margin-top:24px;text-decoration:none}.managed-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:22px}.managed-gallery img{width:100%;height:240px;object-fit:cover}.managed-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:22px 0 0}.managed-stats div{padding:18px;border:1px solid currentColor}.managed-stats dt{font-size:30px;font-weight:800}.managed-stats dd{margin:6px 0 0;opacity:.76}.stop-thumb{width:54px;height:54px;object-fit:cover}.stop-name small{display:block;color:var(--muted);font:11px var(--font-data);margin-top:3px}@media(max-width:560px){.managed-page{width:calc(100% - 22px);margin-top:30px}.managed-block{padding:22px 18px}.managed-gallery{grid-template-columns:1fr 1fr}.managed-gallery img{height:170px}.stop-thumb{width:44px;height:44px}}
.managed-legal-note{width:min(100% - 32px,1080px);margin:26px auto;color:var(--muted);font-size:12px;line-height:1.5}.badge span img{display:block;width:44px;height:44px;object-fit:contain;margin:auto}
