@font-face{font-family:"Manrope";src:url(fonts/Manrope-var-cyr-lat.woff2?v=202610201851) format("woff2");font-weight:500 800;font-style:normal;font-display:swap}
:root{
  --p-bg:#0A0A0B; --p-s1:#131315; --p-s2:#1C1C1F; --p-s3:#26262A;
  --p-t1:#F5F3EF; --p-t2:#BAB7B0; --p-t3:#94918A;
  --p-border:rgba(255,255,255,.08); --p-border-strong:#6B6963;
  --p-accent:#F4B54A; --p-accent-hover:#F8C873; --p-accent-soft:#22190B; --p-on-accent:#1A1104;
  --r-sm:10px; --r-md:14px; --r-lg:18px; --r-xl:22px; --r-full:999px;
  --f-display:"Manrope","Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",sans-serif;
  --tr-display:-0.025em; --tr-caps:.06em;
  --accent:var(--p-accent);
}
.skiplink{position:absolute;left:-9999px;top:8px;z-index:30;background:var(--p-s1);color:var(--p-t1);padding:8px 12px;border-radius:8px;font:500 14px var(--f-text)}
.skiplink:focus{left:8px}

.sitebar{position:fixed;top:0;left:0;right:0;z-index:20;padding-top:env(safe-area-inset-top);
  background:color-mix(in srgb,var(--p-bg) 82%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--p-border);transform:translateY(-100%);opacity:0;transition:transform .45s ease,opacity .45s ease;font-family:var(--f-text)}
body.in-site .sitebar,body.rm .sitebar,.sitebar:focus-within{transform:none;opacity:1}
.sitebar-in{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:20px;padding:0 20px;height:56px}
.logo{font:600 17px/1 var(--f-display);letter-spacing:var(--tr-display);color:var(--p-t1);text-decoration:none;margin-right:auto}
.logo::first-letter{color:var(--p-accent)}
.nav{display:flex;gap:22px}
.nav a{color:var(--p-t2);text-decoration:none;font:500 14px/1 var(--f-text);padding:8px 0;white-space:nowrap;transition:color .2s}
.nav a:hover,.nav a[aria-current]{color:var(--p-t1)}
.nav a[aria-current]{box-shadow:inset 0 -1px 0 var(--p-accent)}
.burger{display:none;width:40px;height:40px;border:0;background:none;padding:10px 8px;cursor:pointer;flex-direction:column;justify-content:center;gap:6px}
.burger span{display:block;height:1.5px;background:var(--p-t1);border-radius:2px;transition:transform .25s}
.burger[aria-expanded="true"] span:first-child{transform:translateY(3.75px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
@media (max-width:899.98px){
  .burger{display:flex}
  .nav{position:fixed;top:calc(56px + env(safe-area-inset-top));left:0;right:0;flex-direction:column;gap:0;padding:8px 20px 18px;
    background:var(--p-bg);border-bottom:1px solid var(--p-border);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .25s,transform .25s,visibility 0s .25s}
  .nav.open{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s}
  .nav a{padding:14px 0;font-size:16px;border-bottom:1px solid var(--p-border)}
  .nav a[aria-current]{box-shadow:none;color:var(--p-accent)}
}

#site{position:relative;z-index:3;background:var(--p-bg);color:var(--p-t1);font:400 16px/24px var(--f-text);-webkit-font-smoothing:antialiased;outline:none}
.site-fade{position:absolute;left:0;right:0;top:-38vh;height:38vh;pointer-events:none;background:linear-gradient(180deg,transparent,var(--p-bg))}
.blk{position:relative;padding:72px 0;overflow:hidden;border-top:1px solid var(--p-border)}
.blk:first-of-type{border-top:0;padding-top:96px}
.wrap{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:0 20px}
.scene-title{font:600 clamp(24px,6.4vw,34px)/1.18 var(--f-display);letter-spacing:var(--tr-display);color:var(--p-t1);margin:0 0 22px;max-width:16ch}
.kicker{font:600 12px/16px var(--f-text);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--p-t3);margin:0 0 10px}
.lead{font-size:17px;line-height:28px;color:var(--p-t2);max-width:62ch;margin:0 0 26px}
.card{background:var(--p-s1);border:1px solid var(--p-border);border-radius:var(--r-lg);padding:20px 20px 22px}
.card h3{font:600 18px/26px var(--f-display);letter-spacing:var(--tr-display);margin:0 0 8px;color:var(--p-t1)}
.card p{margin:0;color:var(--p-t2)}
.grid2,.grid3{display:grid;gap:14px}
@media (min-width:760px){.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}.blk{padding:104px 0}.wrap{padding:0 40px}}
.contacts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.contacts a{display:inline-block;color:var(--p-t1);text-decoration:none;font:500 17px/24px var(--f-text);padding:10px 0;border-bottom:1px solid var(--p-border);transition:color .2s}
.contacts a:hover,.contacts a:focus-visible{color:var(--p-accent);outline:none}
.foot{border-top:1px solid var(--p-border);padding:26px 20px calc(env(safe-area-inset-bottom) + 26px);text-align:center;color:var(--p-t3);font-size:13px;line-height:20px}
.foot p{margin:0}
.foot .credit{margin-top:8px;font-size:10px;letter-spacing:.12em;color:#4a4844}
.foot .credit a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:rgba(148,145,138,.35);transition:color .2s,text-decoration-color .2s}
.foot .credit a:hover,.foot .credit a:focus-visible{color:var(--p-accent);text-decoration-color:currentColor}

.peek{position:absolute;z-index:0;top:40px;width:var(--fw);height:auto;pointer-events:none;opacity:0;
  transition:opacity 1.2s ease,transform 1.2s cubic-bezier(.2,.7,.2,1);will-change:transform,opacity;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%),linear-gradient(180deg,#000 75%,transparent);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0,#000 30%),linear-gradient(180deg,#000 75%,transparent);mask-composite:intersect}
.peek-r{right:0;transform:translate3d(70%,var(--py,0px),0) rotate(var(--pr,0deg))}
.peek-l{left:0;transform:translate3d(-70%,var(--py,0px),0) scaleX(-1) rotate(var(--pr,0deg))}
.peek.on{opacity:.55}
.peek-r.on{transform:translate3d(28%,var(--py,0px),0) rotate(var(--pr,0deg))}
.peek-l.on{transform:translate3d(-28%,var(--py,0px),0) scaleX(-1) rotate(var(--pr,0deg))}
.peek.still{-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 46%,#000 58%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 46%,#000 58%,transparent 100%);-webkit-mask-composite:source-over;mask-composite:add}
.peek-r.still{right:calc(var(--fx) * -1);transform:translate3d(14%,var(--py,0px),0) rotate(var(--pr,0deg))}
.peek-l.still{left:calc(var(--fx) * -1);transform:translate3d(-14%,var(--py,0px),0) rotate(var(--pr,0deg))}
.peek.still.on{opacity:.8;transform:translate3d(0,var(--py,0px),0) rotate(var(--pr,0deg))}
.has-fig{--fw:110px;--fv:calc(var(--fw) * .72);--fx:0px}
.has-fig.fig-still{--fw:150px;--fv:calc(var(--fw) * .88);--fx:calc(var(--fw) * .12)}
@media (max-width:759.98px){
  .has-fig,.blk.has-fig:first-of-type{padding-top:206px}
  .peek{top:14px;height:200px;object-fit:cover;object-position:50% 0}
  .peek.still{object-position:50% 20%}
  .peek.on{opacity:.5}.peek.still.on{opacity:.75}
  .scene-title{max-width:13ch}
}
@media (min-width:760px){
  .has-fig{--fw:clamp(130px,17vw,190px)}
  .has-fig.fig-still{--fw:clamp(190px,21vw,280px)}
  .has-fig{min-height:calc(var(--fw) * 1.5 + 80px)}
  .has-fig.fig-still{min-height:calc(var(--fw) * 1.5 + 80px)}
  .has-fig:not(.fig-still){min-height:calc(var(--fw) * 2.2 + 80px)}
  .fig-l .wrap{padding-left:max(40px,calc(var(--fv) + 48px - max(0px,(100vw - 1120px) / 2)))}
  .fig-r .wrap{padding-right:max(40px,calc(var(--fv) + 48px - max(0px,(100vw - 1120px) / 2)))}
  #contacts .wrap{display:flex;justify-content:center}
  #contacts .cbox{width:min(100%,440px)}
}

body.in-site #skip,body.in-site #hint,body.in-site #progress,body.in-site .sound-toggle{opacity:0!important;visibility:hidden!important;pointer-events:none}
body.past-story #stage,body.past-story #text{visibility:hidden}

@media (prefers-reduced-motion:reduce){
  .peek,.sitebar,.nav{transition:none!important}
  .peek.on{transform:translate3d(28%,0,0)}.peek-l.on{transform:translate3d(-28%,0,0) scaleX(-1)}.peek.still.on{transform:none}
}

body.rm #skip{top:calc(env(safe-area-inset-top) + 64px)}
body.rm .sound-toggle{top:calc(env(safe-area-inset-top) + 64px)}
