*{box-sizing:border-box}html,body{margin:0;background:#080c10;color:#edf2ee;font-family:Arial,Helvetica,sans-serif}body{--accent:#e32239;--muted:#97868c}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:7px}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.exhibition{height:100svh;min-height:760px;position:relative;overflow:hidden;padding:32px 4.1vw 24px;isolation:isolate}.ambient{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 50% 50%,#15303a55,transparent 61%),linear-gradient(120deg,#080b0e,#0c1116 60%,#080c10)}.ambient:after{content:"";position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.25' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.topline{position:relative;display:flex;align-items:center;justify-content:space-between;z-index:3}.home{display:flex;align-items:center;gap:23px}.brand{font-weight:600;font-size:32px;letter-spacing:-2px}.brand-dot{color:var(--accent)}.home-label{font-size:11px;color:#aab5b9}.home svg{width:24px;height:16px;transform:rotate(-45deg);color:#c7d3d6}.edition,.eyebrow{font:10px/1.6 'Courier New',monospace;letter-spacing:.12em}.edition{display:flex;align-items:center;gap:12px;color:#b4bfc3}.edition i{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #e3223980}.edition>span{color:#657278}.intro{position:relative;display:flex;justify-content:space-between;align-items:flex-end;margin-top:37px;pointer-events:none;z-index:2}.eyebrow{color:var(--accent);margin:0 0 14px}h1{font-size:clamp(46px,5.3vw,84px);font-weight:500;line-height:.88;letter-spacing:-.067em;margin:0}h1>span{color:#7d8b91}.manifesto{font-size:12px;line-height:1.7;font-weight:400;margin:0 0 3px;color:#a9b4b8;max-width:230px}.manifesto span{display:inline-block;color:#edf2ee;margin-top:9px}.stage{position:absolute;inset:230px 0 202px;touch-action:pan-y;cursor:grab}.stage.dragging{cursor:grabbing}.stage canvas{width:100%;height:100%;display:block;position:relative;z-index:1;opacity:0;transition:opacity .6s}.webgl-ready .stage canvas{opacity:1}.fallback-art{position:absolute;inset:10% 25% 14%;transform:perspective(900px) rotateY(-7deg);border:1px solid #8cafbb65;background:#111a22;box-shadow:0 0 75px #789ab01a;transition:opacity .5s}.fallback-art img{width:100%;height:100%;object-fit:cover}.webgl-ready .fallback-art{opacity:0;pointer-events:none}.stage-cross{position:absolute;top:48%;width:14px;height:14px;color:#73848c66}.stage-cross:before,.stage-cross:after{content:"";position:absolute;background:currentColor}.stage-cross:before{height:1px;width:14px;top:7px}.stage-cross:after{width:1px;height:14px;left:7px}.cross-left{left:4.1vw}.cross-right{right:4.1vw}.stage-caption{position:absolute;bottom:1%;left:50%;transform:translateX(-50%);font:9px monospace;letter-spacing:.19em;color:#76878f}.stage-caption b{font-weight:400;color:#d8e6e8}.project-info{position:absolute;left:4.1vw;right:4.1vw;bottom:113px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:3}.project-copy{min-height:91px}.project-info .eyebrow{margin-bottom:10px;font-size:9px}.project-info h2{font-size:clamp(30px,3.1vw,49px);letter-spacing:-.06em;font-weight:500;line-height:1.05;margin:0 0 10px}.project-info h2 span{color:#7d8b91}.description{font-size:12px;line-height:1.6;color:#9aa9af;margin:0;max-width:510px}.enter{display:flex;align-items:center;gap:34px;font-size:13px}.enter-icon{width:60px;height:60px;border-radius:50%;border:1px solid #74848b55;display:grid;place-items:center;transition:background .25s,transform .3s,color .25s}.enter svg{width:30px;height:22px}.enter:hover .enter-icon{background:var(--accent);color:#10180b;transform:rotate(-35deg)}.controls{position:absolute;left:4.1vw;right:4.1vw;bottom:25px;display:flex;justify-content:space-between;align-items:center;gap:30px;z-index:3;border-top:1px solid #82949d30;padding-top:18px}.work-picker{display:flex;gap:38px}.work-picker button{background:none;border:0;display:flex;align-items:center;gap:12px;padding:9px 0;cursor:pointer;font-size:10px;letter-spacing:.04em;color:#7d8b91;position:relative;white-space:nowrap;transition:color .3s}.work-picker .index{font:9px monospace;color:#6c7b81}.work-picker button[aria-pressed=true]{color:#f4f8f5}.work-picker button:after{content:"";height:1px;position:absolute;top:-19px;left:0;right:0;background:var(--accent);transform:scaleX(0);transition:transform .4s}.work-picker button[aria-pressed=true]:after{transform:scaleX(1)}.pick-dot{width:4px;height:4px;background:var(--accent);border-radius:50%;opacity:0}.work-picker button[aria-pressed=true] .pick-dot{opacity:1}.navigation{display:flex;align-items:center;gap:10px}.hint{font:10px monospace;color:#7d8b91;margin-right:16px}.step{border:1px solid #82949d40;width:35px;height:35px;border-radius:50%;background:transparent;display:grid;place-items:center;cursor:pointer;transition:background .25s}.step:hover{background:#ffffff12}.step svg{width:18px;height:15px}.previous svg{transform:rotate(180deg)}.no-script{position:absolute;top:48%;width:90%;text-align:center;background:#080c10;padding:30px;z-index:9}.no-script a{color:var(--accent)}
@media(min-width:1600px){.stage{inset:245px 0 210px}.intro{margin-top:46px}}
@media(max-height:800px) and (min-width:761px){.exhibition{min-height:660px;padding-top:22px}.intro{margin-top:20px}h1{font-size:60px}.stage{top:195px;bottom:190px}.project-info{bottom:104px}.project-info h2{font-size:32px}.controls{bottom:18px}.project-copy{min-height:82px}}
@media(max-width:1000px){.hint{display:none}.work-picker{gap:24px}.subname{display:none}.manifesto{font-size:11px}.stage{inset:225px -12% 210px}}
@media(max-width:760px){.exhibition{min-height:680px;height:100svh;padding:20px 23px}.home-label,.home svg,.edition>span{display:none}.brand{font-size:29px}.edition{font-size:8px;letter-spacing:.07em}.intro{margin-top:28px;display:block}h1{font-size:clamp(45px,10.7vw,72px)}.intro .eyebrow{font-size:8px;margin-bottom:12px}.manifesto{display:none}.stage{inset:197px -35% 240px}.stage-caption{bottom:0;font-size:8px}.stage-cross{display:none}.project-info{left:23px;right:23px;bottom:131px;align-items:flex-end;gap:12px}.project-info h2{font-size:29px}.project-info .eyebrow{font-size:8px}.description{font-size:10px;max-width:235px}.enter{gap:0}.enter>span:first-child{display:none}.enter-icon{width:47px;height:47px}.enter:before{content:'Войти';position:absolute;font-size:9px;bottom:-17px;right:11px;color:#b7c5c9}.enter svg{width:25px}.controls{left:23px;right:23px;bottom:23px;display:block;padding-top:14px}.work-picker{justify-content:space-between;gap:14px}.work-picker button{gap:7px;font-size:9px}.work-picker button:after{top:-15px}.navigation{display:none}.fallback-art{inset:10% 26% 10%}.project-copy{min-height:98px}.pick-dot{width:3px;height:3px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto;transition:none}}

/* The navigation stays spatial when a device cannot create a WebGL context. */
.fallback-art{inset:0;border:0;background:none;box-shadow:none;transform:none;perspective:1000px;transform-style:preserve-3d;pointer-events:auto}
.fallback-card{position:absolute;left:50%;top:47%;border:1px solid #9fb8bd77;background:#14222b;box-shadow:0 0 0 5px #080d1280,0 0 0 6px #738b9640,0 25px 60px #0005;will-change:transform;backface-visibility:hidden;cursor:pointer}
.fallback-card:before,.fallback-card:after{content:'';position:absolute;inset:-12px;border:1px solid #c92b474d;clip-path:polygon(0 0,8% 0,8% 1px,1px 1px,1px 12%,0 12%);pointer-events:none}.fallback-card:after{transform:rotate(180deg)}
.fallback-card img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.stage canvas{pointer-events:none}.webgl-ready .stage canvas{pointer-events:auto}.webgl-ready .fallback-art{visibility:hidden}
.no-webgl .stage:after{content:'';position:absolute;left:12%;right:12%;top:55%;height:26%;border:1px solid #748f9540;border-radius:50%;transform:rotate(-7deg);pointer-events:none;z-index:-1}

@media(max-width:760px){.work-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.work-picker button{font-size:9px;gap:0;justify-content:center;white-space:normal;text-align:center;line-height:1.25}.work-picker .index,.work-picker .pick-dot{display:none}}



/* REDFISH CINEMATIC SPACE — AUTHORITATIVE STYLES */
.redfish-cosmos {
  background: #020408;
}

.redfish-cosmos .ambient {
  overflow: hidden;
  background:
    radial-gradient(ellipse 64% 66% at 76% 42%,
      #4d172845, transparent 76%),
    radial-gradient(ellipse 55% 72% at 15% 80%,
      #542b3426, transparent 77%),
    radial-gradient(ellipse 70% 85% at 50% 55%,
      #27101a40, transparent 85%),
    linear-gradient(145deg,
      #010307, #09121d 52%, #020308);
}

.redfish-cosmos .ambient::before {
  content: "";
  position: absolute;
  inset: -18%;
  pointer-events: none;
  background:
    radial-gradient(ellipse 32% 63% at 73% 44%,
      #7995a329, transparent 78%),
    radial-gradient(ellipse 37% 55% at 22% 75%,
      #8d4c521a, transparent 82%),
    conic-gradient(from 205deg at 62% 43%,
      transparent 0deg,
      #7795a511 10deg,
      transparent 21deg 360deg);
  filter: blur(36px);
  transform: scale(1.08);
  opacity: .9;
  animation: cosmic-breathe 65s ease-in-out infinite alternate;
}

.redfish-cosmos .ambient::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(105deg,
      transparent 24%,
      #879ba50c 37%,
      transparent 49%),
    radial-gradient(ellipse 58% 85% at 76% 32%,
      transparent 56%,
      #708f9b13 57%,
      transparent 59%),
    linear-gradient(0deg,
      #01030780, transparent 28%,
      transparent 78%, #01030755);
  opacity: .4;
  animation: cosmic-haze 90s ease-in-out infinite alternate;
}

@keyframes cosmic-breathe {
  to {
    transform: translate3d(2%, -1%, 0) scale(1.15);
    opacity: .68;
  }
}

@keyframes cosmic-haze {
  to {
    transform: translate3d(-1%, 1%, 0);
    opacity: .24;
  }
}

/* DIRECT CHANNEL — cinematic interface */
.redfish-cosmos .developer-contact {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 22px;
  min-height:50px;
  padding:5px 12px 5px 19px;
  white-space: nowrap;
  color: #f2f6f8;
  background: transparent;
  border: 1px solid #8e3248;
  clip-path:none;
  border-radius:2px;
  box-shadow: inset 0 1px #ffffff16, 0 14px 40px #0007;
  transition:
    background .3s,
    border-color .3s,
    box-shadow .3s;
}

.redfish-cosmos .contact-copy {
  display: grid;
  gap:4px;
}

.redfish-cosmos .contact-kicker {
  font: 8px/1.1 monospace;
  color: #bba1a7;
  letter-spacing: .22em;
}

.redfish-cosmos .contact-title {
  font: 600 12px/1.1 Arial, sans-serif;
  letter-spacing: .025em;
}

.redfish-cosmos .contact-arrow {
  display: grid;
  place-items: center;
  width:34px;
  height:34px;
  border-left: 1px solid #8e3248;
  color: #8e3248;
  font: 20px/1 Arial, sans-serif;
  transition: transform .3s;
}

.redfish-cosmos .developer-contact:hover {
  background: transparent;
  border-color: #a83a52;
  box-shadow: inset 0 1px #ffffff16, 0 14px 40px #0007;
}

.redfish-cosmos .developer-contact:hover .contact-arrow {
  transform: translate(3px, -3px);
}

@media (max-width: 760px) {
  .redfish-cosmos .topline {
    flex-wrap: wrap;
    row-gap: 10px;
  }

  .redfish-cosmos .developer-contact {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    order: 3;
    margin: 0 auto;
    min-height: 47px;
    padding: 7px 11px 7px 15px;
    gap: 12px;
  }

  .redfish-cosmos .contact-kicker {
    font-size: 7px;
  }

  .redfish-cosmos .contact-title {
    font-size: 10px;
  }

  .redfish-cosmos .contact-arrow {
    width: 29px;
    height: 29px;
  }

  .redfish-cosmos .edition {
    margin-left: auto;
  }

  .redfish-cosmos .intro {
    margin-top: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .redfish-cosmos .ambient::before,
  .redfish-cosmos .ambient::after {
    animation: none;
  }
}

/* Shared gallery header and equalized project baseline. */
.redfish-cosmos .home{gap:0}
.redfish-cosmos .home .brand{display:inline-flex;align-items:baseline;width:auto;min-width:0;gap:0;font-family:'Space Grotesk',sans-serif;font-size:35px;font-weight:700;letter-spacing:-.08em;line-height:1;}
.redfish-cosmos .home .lab-wordmark{position:relative;top:0;margin-left:21px;color:#9d878e;font:600 10px/1 Arial,sans-serif;letter-spacing:.27em;text-shadow:none;animation:none;font-family:'Space Grotesk',sans-serif;font-size:10px;font-weight:600;}
.redfish-cosmos .home .brand:before,.redfish-cosmos .home .brand:after{content:none}
.redfish-cosmos .home .brand .reality-bolt{left:-26px;top:-18px}
.redfish-cosmos .home .reality-tag{left:0;top:49px}
.redfish-cosmos .project-info{min-height:100px;align-items:flex-end}
.redfish-cosmos .project-info .project-copy{min-height:0}
.redfish-cosmos .project-info .enter{flex-shrink:0;align-self:flex-end;margin-bottom:18px}
.redfish-cosmos .fallback-card img{width:100%;height:100%;object-fit:cover}
@media(max-width:760px){
  .redfish-cosmos .home .brand{font-size:29px}
  .redfish-cosmos .home .lab-wordmark{font-size:8px;margin-left:13px;letter-spacing:.12em}
  .redfish-cosmos .home .brand .reality-bolt{width:115px}
  .redfish-cosmos .project-info{min-height:104px}
  .redfish-cosmos .project-info .enter{margin-bottom:18px}
}

/* RedFish visual skin for the shared BFD feedback form. */
.redfish-cosmos #modal-order.bf-feedback{background:#090d13;color:#e8e9eb;border:1px solid #8e3248;box-shadow:0 38px 130px #000c}
.redfish-cosmos #modal-order::backdrop{background:#020408df;backdrop-filter:blur(10px)}
.redfish-cosmos #modal-order.bf-feedback h2{color:#f0f0f1}
.redfish-cosmos #modal-order.bf-feedback h2 em,.redfish-cosmos #modal-order.bf-feedback .bf-eyebrow,.redfish-cosmos #modal-order.bf-feedback .bf-star{color:#e32239}
.redfish-cosmos #modal-order.bf-feedback .bf-intro p,.redfish-cosmos #modal-order.bf-feedback .bf-intro>small,.redfish-cosmos #modal-order.bf-feedback .bf-field>span,.redfish-cosmos #modal-order.bf-feedback .bf-policy label{color:#aeb6c0}
.redfish-cosmos #modal-order.bf-feedback .bf-field :is(input,select,textarea){background:#111923;color:#f3f5f7;border:1px solid #36404a;border-radius:0}
.redfish-cosmos #modal-order.bf-feedback .bf-field :is(input,select,textarea):focus{border-color:#c53649}
.redfish-cosmos #modal-order.bf-feedback .bf-field :is(input,textarea)::placeholder{color:#7d8995}
.redfish-cosmos #modal-order.bf-feedback .bf-close{background:#121a22;color:#f0f0f1;border-color:#8e3248}
.redfish-cosmos #modal-order.bf-feedback .bf-close:hover{background:#2b151d}
.redfish-cosmos #modal-order.bf-feedback .bf-file-label{color:#e1e5e8}
.redfish-cosmos #modal-order.bf-feedback .bf-policy a{color:#f1bdc4}
.redfish-cosmos #modal-order.bf-feedback .bf-file-selected{border-color:#5b3741}
.redfish-cosmos #modal-order.bf-feedback .bf-submit,.redfish-cosmos #modal-order.bf-feedback .bf-done{background:#ba1d34;border-color:#ba1d34;color:white}
.redfish-cosmos #modal-order.bf-feedback .bf-submit:hover,.redfish-cosmos #modal-order.bf-feedback .bf-done:hover{background:#8f1b2d;border-color:#c53649}
.redfish-cosmos #modal-order.bf-feedback .bf-success{color:#f1f3f4}
