/* Konsta ft. Sahar — тритмент. База — шаблон студии (qzlar/deck.css): лента слайдов, рамка, печать 1920×1080.
   Мир: янтарный день и синяя «день-за-ночь» ночь, кадр 2.39:1, зерно, жёсткое солнце. */
@font-face{font-family:A;src:url(../fonts/alumni-var-cyrillic.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:A;src:url(../fonts/alumni-var-latin.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:G;src:url(../fonts/geologica-var-cyrillic.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:G;src:url(../fonts/geologica-var-latin.woff2) format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:P;src:url(../fonts/ibm-plex-mono-500-cyrillic.woff2) format('woff2');font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:P;src:url(../fonts/ibm-plex-mono-500-latin.woff2) format('woff2');font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:#0a0806; --ink:#f1e7d6; --mute:rgba(241,231,214,.62); --line:rgba(241,231,214,.18);
  --amber:#e9a14b; --night:#7fa6d9; --accent:var(--amber);
  --pad:clamp(20px,4.4vw,88px);
  --fs:clamp(15px,1.15vw,22px);
  --ease:cubic-bezier(.2,.7,.1,1);
  --sh:min(100svh,100vw/2.39);              /* высота кадра 2.39:1 во весь экран */
  --bar:calc((100svh - var(--sh))/2);       /* высота чёрной шторки сверху/снизу */
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font:300 var(--fs)/1.5 G,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.deck{height:100svh;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:none;scrollbar-width:none}
.deck::-webkit-scrollbar{display:none}
.slide{position:relative;height:100svh;min-height:520px;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden;padding:calc(var(--pad)*1.5) var(--pad) calc(var(--pad)*1.4);display:grid;grid-template-columns:minmax(0,1fr);isolation:isolate;background:var(--bg)}
html.js:not(.print):not(.rm) [data-a]{opacity:0}
.night{--accent:var(--night);--bg:#04070d}
/* зерно плёнки поверх каждого слайда */
.slide::before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;opacity:.13;mix-blend-mode:overlay;background:url("../img/grain.png?v=1") 0 0/128px repeat}
svg.defs{position:absolute;width:0;height:0}
figure{position:relative;overflow:hidden;z-index:0}
figure img{width:100%;height:100%;object-fit:cover}
img.miss{visibility:hidden}

/* рамка слайда (JS): бренд, номер, голос раздела */
.chrome{position:absolute;inset:calc(var(--pad)*.5) var(--pad);pointer-events:none;z-index:5;display:grid;grid-template:auto 1fr auto/1fr auto;font:500 clamp(11px,.95vw,18px)/1 P;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);text-align:left;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.chrome>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chrome .num{grid-column:2;color:var(--ink)}
.chrome .num b{color:var(--accent);font-weight:500}
.chrome .sign{grid-row:3;grid-column:1/3;display:flex;justify-content:space-between;gap:2em}
.progress{position:fixed;left:0;bottom:0;height:2px;background:var(--amber);width:0;z-index:9;transition:width .5s var(--ease)}
.bar{position:fixed;top:calc(var(--pad)*.5 - 7px);left:50%;transform:translateX(-50%);z-index:10}
.lang{display:flex;border:1px solid var(--line);background:rgba(10,8,6,.55)}
.lang button{font:500 11px/1 P;letter-spacing:.16em;padding:6px 10px;color:var(--mute)}
.lang button[aria-pressed=true]{color:#0a0806;background:var(--amber)}

/* типографика */
.title,.huge,.h1,.h2,.roman,.name,.beat,.names{font-family:A;text-transform:uppercase;font-weight:700;line-height:.84;letter-spacing:-.005em}
.huge{font-size:clamp(56px,9.4vw,190px);font-weight:600}
.h1{font-size:clamp(48px,6.6vw,136px)}
.h2{font-size:clamp(38px,4.6vw,92px);font-weight:600}
.mono,.slug,figcaption{font:500 clamp(11px,.95vw,18px)/1.35 P;letter-spacing:.16em;text-transform:uppercase}
.k,.amb,.slug b{color:var(--accent)}
.mute,.paren{color:var(--mute)}
.paren{font-style:italic;max-width:34ch}
.action{font-size:clamp(18px,1.55vw,30px);line-height:1.38;max-width:34ch}
.action.big{font:600 clamp(30px,3.2vw,64px)/.95 A;text-transform:uppercase}
.beat{font-size:clamp(30px,3vw,60px);color:var(--accent)}
.tl{display:grid;gap:.35em}
.tg{display:inline-flex;align-items:center;gap:.6em;width:max-content;font:500 clamp(10px,.8vw,15px)/1 P;letter-spacing:.2em;text-transform:uppercase;font-style:normal;padding:.45em .8em;border:1px solid var(--accent);color:var(--accent)}
.tg.play{border-color:var(--line);color:var(--ink);background:rgba(241,231,214,.06)}
.tg::before{content:"";width:.5em;height:.5em;border-radius:50%;background:currentColor}
.tg.play::before{border-radius:0;transform:rotate(45deg);width:.42em;height:.42em}
.line{display:block;overflow:hidden;padding-bottom:.04em}
.line>span{display:inline-block}
.head{display:grid;gap:.7em;align-content:start}
.script{position:relative;z-index:2;display:grid;gap:.9em;align-content:start}
.txt{position:relative;z-index:2;display:grid;gap:1em;align-content:center}
.txt p{max-width:38ch}
blockquote p{font-size:clamp(17px,1.35vw,26px);line-height:1.4;max-width:30ch}
blockquote cite{display:block;margin-top:1em;font:500 clamp(11px,.95vw,18px)/1 P;letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:var(--accent)}
blockquote cite::before{content:"— "}
figcaption{color:var(--ink)}

/* 01 обложка: солнце, марево над горизонтом */
.cover{align-content:space-between;padding-top:calc(var(--pad)*1.5)}
.cover .bleed{position:absolute;inset:0;z-index:-1}
.cover .cam{position:absolute;inset:0}
.cover .cam img{position:absolute;inset:0;object-position:50% 55%}
.cover .bleed::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,6,.92),rgba(10,8,6,.25) 46%,transparent 70%),linear-gradient(to bottom,rgba(10,8,6,.55),transparent 22%)}
.cover .heat{clip-path:inset(62% 0 22% 0);filter:url(#heat);display:none}
.cover.on .heat{display:block}
.cover-low{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--pad);align-items:end}
.title{font-size:clamp(72px,12.5vw,250px);line-height:.8;font-weight:800}
.cover-meta{display:grid;gap:.9em;justify-items:end;text-align:right;padding-bottom:.6em}
.artists{font:700 clamp(28px,2.6vw,52px)/.9 A;text-transform:uppercase;letter-spacing:.02em}
.artists i{font-style:normal;color:var(--accent);font-weight:400}
.tr{color:var(--mute);font-style:italic}
.cover dl{display:flex;gap:2em;border-top:1px solid var(--line);padding-top:.9em}
.cover dt{font:500 clamp(11px,.95vw,18px)/1.3 P;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.cover dd{margin-top:.3em}

/* 02 идея */
.idea{grid-template-rows:auto 1fr auto;gap:calc(var(--pad)*.4)}
.idea .huge{align-self:center;font-size:clamp(56px,min(9.4vw,15svh),190px)}
.idea-foot{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--pad);align-items:end}
.strip{aspect-ratio:2.39;max-height:30svh}
.strip img{object-position:60% 50%}

/* 03 лист кадров */
.sheet{grid-template-rows:auto 1fr;gap:calc(var(--pad)*.6)}
.frames{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.4vw,28px);align-self:center}
.frames li{display:grid;gap:.55em;align-content:start}
.frames figure{aspect-ratio:4/5}
.frames .mono{color:var(--accent);margin-top:.4em}
.frames b{font:700 clamp(22px,1.9vw,38px)/.9 A;text-transform:uppercase}
.frames p{color:var(--mute);font-size:.9em;line-height:1.4}

/* 04 референсы */
.refs{grid-template-rows:auto 1fr;gap:calc(var(--pad)*.5)}
.board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:clamp(8px,.9vw,16px);min-height:0}
.board figure{min-height:0}
.board .r1{grid-column:1/8}.board .r2{grid-column:8/13}
.board .r3{grid-column:1/5}.board .r4{grid-column:5/10}.board .r5{grid-column:10/13}
.board figcaption,.ratios figcaption{position:absolute;left:0;bottom:0;right:0;padding:2.4em 1em .8em;background:linear-gradient(to top,rgba(10,8,6,.85),transparent)}

/* 05 / 14 раздел: римская цифра контуром, кадр в щели */
.part{align-content:end}
.part .slit{position:absolute;left:0;right:0;top:14%;height:46%}
.part .slit img{object-position:40% 50%}
.roman{position:absolute;right:var(--pad);bottom:calc(var(--pad)*.8);font-size:clamp(200px,48svh,560px);line-height:.75;color:rgba(233,161,75,.14);-webkit-text-stroke:2px var(--accent);z-index:1;font-weight:500}
.part-t{position:relative;z-index:2;display:grid;gap:.6em;max-width:60%}
.who{display:flex;gap:14px;align-items:center;color:var(--mute)}
.who::before{content:"";order:-1;width:48px;height:1px;background:var(--accent)}
.who i{font-style:normal}
.vfpart .vf.wide{position:absolute;inset:calc(var(--pad)*1.5) var(--pad) 42%}

/* сцены: кадр 2.39 с чёрными шторками, текст как в сценарии */
.scope{position:absolute;inset:0;margin:auto;width:100%;height:var(--sh)}
.scope::after{content:"";position:absolute;inset:0;background:linear-gradient(to top right,rgba(5,4,3,.82),rgba(5,4,3,.2) 50%,transparent 70%)}
.full .script,.air .script,.sahar .script,.storm .script{position:absolute;left:var(--pad);bottom:max(calc(var(--pad)*1.4),calc(var(--bar) + var(--pad)*.7));max-width:min(560px,44vw)}
.sahar .script{left:auto;right:var(--pad)}
.sahar .scope::after{background:linear-gradient(to top left,rgba(5,4,3,.82),rgba(5,4,3,.2) 50%,transparent 70%)}
.full .scope img{object-position:50% 50%}
.storm .scope img{object-position:35% 75%}
.air .scope img{object-position:35% 55%}
.sahar .scope img{object-position:40% 70%}
.name{font-size:clamp(64px,7.5vw,150px);color:var(--accent)}
.air .insert{position:absolute;top:calc(var(--bar) + var(--pad)*.6);right:var(--pad);width:24vw;aspect-ratio:3/2;outline:1px solid var(--accent);z-index:2}
.insert figcaption{position:absolute;left:0;top:0;padding:.5em .7em;background:var(--accent);color:#04070d}
.side{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--pad);align-items:center}
.side .scope{position:relative;inset:auto;margin:0 0 0 calc(var(--pad)*-1);width:calc(100% + var(--pad));height:auto;aspect-ratio:2.39}
.side .scope img{object-position:40% 50%}
.dream{--bg:#140c05;grid-template-columns:auto minmax(0,1fr);gap:var(--pad);align-items:center}
.frame43{height:70svh;aspect-ratio:4/3;outline:1px solid rgba(233,161,75,.55);outline-offset:10px}
.frame43 img{object-position:30% 50%;filter:sepia(.25) saturate(.9)}

/* 11 дроп: два лица одного человека */
.drop{align-content:end;justify-items:center;text-align:center}
.drop .half{position:absolute;top:0;bottom:0;width:58%;z-index:0}
.drop .half.a{left:0}.drop .half.b{right:0;-webkit-mask:linear-gradient(to right,transparent,#000 30%);mask:linear-gradient(to right,transparent,#000 30%)}
.drop .half.a img{object-position:40% 50%}.drop .half.b img{object-position:40% 70%}
.drop::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(10,8,6,.95),transparent 70%);pointer-events:none}
.names{position:absolute;left:var(--pad);right:var(--pad);top:calc(var(--pad)*1.3);display:flex;justify-content:space-between;font-size:clamp(80px,22svh,260px);z-index:2;color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.drop-t{position:relative;z-index:2;display:grid;gap:.8em;justify-items:center;max-width:52ch}
.drop-t blockquote p{max-width:none;color:var(--ink)}

/* 13 финал истории, 23 конец */
.end,.fin{align-content:end}
.end .top,.fin .bleed{position:absolute;inset:0;z-index:-1}
.end .top::after,.fin .bleed::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,6,.9),transparent 60%)}
.fin{gap:.8em}
.fin .title{font-size:clamp(96px,17vw,330px)}
.fin-t{max-width:44ch;color:var(--mute)}
.fin dl{display:flex;gap:2.4em;margin-top:1em;border-top:1px solid var(--line);padding-top:1em}
.fin dt{font:500 clamp(11px,.95vw,18px)/1.3 P;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}

/* видоискатель оператора: уголки, крест, запись */
.vf{position:relative}
.vf .c{position:absolute;inset:6%;z-index:2;pointer-events:none;--k:rgba(241,231,214,.85);background:
  linear-gradient(var(--k),var(--k)) 0 0/28px 1.5px no-repeat,linear-gradient(var(--k),var(--k)) 0 0/1.5px 28px no-repeat,
  linear-gradient(var(--k),var(--k)) 100% 0/28px 1.5px no-repeat,linear-gradient(var(--k),var(--k)) 100% 0/1.5px 28px no-repeat,
  linear-gradient(var(--k),var(--k)) 0 100%/28px 1.5px no-repeat,linear-gradient(var(--k),var(--k)) 0 100%/1.5px 28px no-repeat,
  linear-gradient(var(--k),var(--k)) 100% 100%/28px 1.5px no-repeat,linear-gradient(var(--k),var(--k)) 100% 100%/1.5px 28px no-repeat,
  linear-gradient(var(--k),var(--k)) 50% 50%/22px 1px no-repeat,linear-gradient(var(--k),var(--k)) 50% 50%/1px 22px no-repeat}
.vf .read{position:absolute;left:6%;bottom:calc(6% + 14px);z-index:2;margin-left:14px;color:var(--ink);background:rgba(10,8,6,.6);padding:.3em .6em}
.vf .read::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#e2483a;margin-right:.7em;vertical-align:1px}
.cam{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:var(--pad);align-items:center}
.cam .vf{aspect-ratio:3/2}
.cam.world .vf img{object-position:60% 50%}
.cam.tele .vf{aspect-ratio:2.39}
.cam .spec{color:var(--accent)}
.nest img{object-position:35% 75%}
.nest .fl{position:absolute;z-index:2;border:1px solid rgba(241,231,214,.7);padding:.5em .7em;color:var(--ink);font-size:clamp(10px,.8vw,16px)}
.nest .f1{inset:7% 5%}
.nest .f2{left:15%;top:30%;width:50%;height:62%}
.nest .f3{left:26%;top:58%;width:20%;height:32%;border-color:var(--accent);color:var(--accent)}
.light .lw{display:grid}
.cam.light{grid-template-rows:minmax(0,1fr)}
.light .l1,.light .l2{grid-area:1/1}
.light .l1{width:82%;aspect-ratio:2.4;align-self:start}
.light .l2{width:52%;aspect-ratio:3/2;justify-self:end;align-self:end;box-shadow:0 30px 70px rgba(0,0,0,.6);outline:1px solid var(--line)}
.color{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"txt txt" "day nite" "dc nc";gap:calc(var(--pad)*.4) var(--pad);align-items:stretch}
.color .txt{grid-area:txt;grid-template-columns:minmax(0,1fr);gap:.6em}
.color .day{grid-area:day}.color .nite{grid-area:nite}
.color .day img{object-position:50% 55%}.color .nite img{object-position:35% 55%}
.color .day-c{grid-area:dc}.color .nite-c{grid-area:nc}
.chips{display:flex;align-items:center;gap:.5em;flex-wrap:wrap}
.chips b{font:500 clamp(11px,.95vw,18px)/1 P;letter-spacing:.16em;text-transform:uppercase;margin-right:1em}
.chips i{width:3.2em;height:1.6em;background:var(--c)}
.format{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:calc(var(--pad)*.6)}
.format .txt{grid-template-columns:minmax(0,1fr);gap:.6em}
.ratios{display:flex;gap:clamp(12px,1.4vw,28px);align-items:center;min-height:0}
.ratios .r239{flex:2.39 1 0;aspect-ratio:2.39}
.ratios .r43{flex:1.333 1 0;aspect-ratio:4/3}
.ratios .r43 img{object-position:30% 50%}
.layers{position:relative;aspect-ratio:3/2}
.layers .ly{position:absolute}
.layers .back{left:0;top:0;width:78%;aspect-ratio:3/2}
.layers .front{right:0;bottom:0;width:62%;aspect-ratio:3/2;box-shadow:0 30px 80px rgba(0,0,0,.7);outline:1px solid var(--line)}
.layers .front img{object-position:40% 50%}
.layers span{position:absolute;left:0;top:0;padding:.5em .7em;background:rgba(10,8,6,.85);font-size:clamp(10px,.8vw,16px)}
.layers .front span{background:var(--accent);color:#0a0806}
.color .txt p,.format .txt p{max-width:62ch}
.pct{font-family:G;font-weight:600;font-size:.82em}
.cam.rev{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr)}
.cam.rev .txt{order:-1}
.cam.light.rev .l1,.cam.light.rev .l2{grid-area:1/2}
.cam.light.rev .txt{grid-area:1/1}
.cam.light.rev .l1{justify-self:end}
.cam.light.rev .l2{justify-self:start}
.suit .vf img{object-position:40% 50%}

/* телефон и узкие окна: одна мысль на экран, всё стопкой */
@media (max-aspect-ratio:1/1){
  :root{--sh:calc(100vw/1.6)}
  .slide{padding:calc(var(--pad)*2.6) var(--pad) calc(var(--pad)*2.2);align-content:center;gap:calc(var(--pad)*.9)}
  .chrome>span:first-child{max-width:45vw}
  .bar{top:calc(var(--pad)*1.2);left:auto;right:var(--pad);transform:none}
  .huge,.idea .huge{font-size:clamp(44px,12.5vw,70px)}
  .h1{font-size:clamp(40px,11vw,60px)}
  .h2{font-size:clamp(32px,9vw,48px)}
  .action{font-size:clamp(16px,4.4vw,19px)}
  .title{font-size:clamp(56px,17.5vw,96px)}
  .cover{align-content:space-between}
  .cover-low{grid-template-columns:minmax(0,1fr);gap:1.4em}
  .cover-meta{justify-items:start;text-align:left}
  .cover dl{gap:1.4em}
  .cover .cam img{object-position:58% 55%}
  .idea{grid-template-rows:auto auto auto;align-content:center}
  .idea-foot{grid-template-columns:minmax(0,1fr);gap:1.2em}
  .sheet,.refs{grid-template-rows:auto auto}
  .frames{grid-template-columns:minmax(0,1fr);gap:10px}
  .frames li{grid-template-columns:34% minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:12px;row-gap:2px}
  .frames figure{grid-row:1/4;aspect-ratio:3/2}
  .frames .mono{margin:0}
  .frames b{font-size:22px}
  .frames p{font-size:13px;line-height:1.3}
  .board{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:20svh}
  .board .r1{grid-column:1/3}.board .r2,.board .r3,.board .r4,.board .r5{grid-column:auto}
  .part .slit{top:22%;height:34%}
  .roman{font-size:min(48vw,32svh);bottom:auto;top:calc(var(--pad)*2.6)}
  .part-t{max-width:none}
  .vfpart .vf.wide{inset:22% 0 auto;height:34%}
  .scope,.side .scope{position:relative;inset:auto;margin:0 calc(var(--pad)*-1);width:calc(100% + var(--pad)*2);height:auto;aspect-ratio:1.6}
  .full .script,.air .script,.sahar .script,.storm .script{position:relative;left:auto;right:auto;bottom:auto;max-width:none}
  .scope::after,.sahar .scope::after{background:linear-gradient(to top,rgba(5,4,3,.5),transparent 40%)}
  .side,.dream,.cam{grid-template-columns:minmax(0,1fr);align-content:center}
  .air .insert{position:relative;top:auto;right:auto;width:46%;justify-self:end;margin-top:-18%;order:0}
  .air .script{order:1}
  .name{font-size:clamp(56px,16vw,90px)}
  .frame43{height:auto;width:100%;max-height:38svh}
  .drop{align-content:end}
  .drop .half{width:100%;height:50%;bottom:auto}
  .drop .half.b{top:auto;bottom:0;height:62%;-webkit-mask:linear-gradient(to bottom,transparent,#000 30%);mask:linear-gradient(to bottom,transparent,#000 30%)}
  .names{flex-direction:column;justify-content:start;font-size:clamp(64px,20vw,110px);top:calc(var(--pad)*2.6);height:52%;justify-content:space-between}
  .names span:last-child{align-self:end}
  .cam .vf,.cam.tele .vf{max-height:38svh;width:100%}
  .cam.tele .vf{aspect-ratio:1.6}
  .cam.light{grid-template-rows:auto auto}
  .light .lw{height:auto}
  .light .l1{width:86%}
  .light .l2{width:56%;margin-top:28%}
  .color{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-template-areas:"txt" "day" "dc" "nite" "nc";gap:.8em;align-content:center}
  .color .txt,.format .txt{grid-template-columns:minmax(0,1fr)}
  .color figure{aspect-ratio:2.1}
  .format{grid-template-rows:auto auto;align-content:center}
  .ratios{flex-direction:column;align-items:stretch}
  .ratios .r239,.ratios .r43{flex:none}
  .ratios .r43{width:62%;align-self:end}
  .layers{aspect-ratio:4/3}
  .fin .title{font-size:clamp(80px,26vw,140px)}
  .fin dl{flex-wrap:wrap;gap:1em 2em}
  .vfpart .vf .read{display:none}
  .part .slit{top:16%;height:44%}
  .part-t{padding:1.2em var(--pad) 0;margin:0 calc(var(--pad)*-1);background:linear-gradient(to top,rgba(10,8,6,.9) 60%,transparent)}
  .full .scope,.storm .scope{aspect-ratio:auto;height:50svh}
  .cam.crane .vf,.cam.suit .vf{aspect-ratio:4/5;max-height:50svh}
  .cam.rev{grid-template-columns:minmax(0,1fr)}
  .cam.rev .txt{order:-1}
  .cam.light.rev .l1,.cam.light.rev .l2{grid-area:2/1}
  .cam.light.rev .txt{grid-area:1/1}
}
@media (max-aspect-ratio:1/1) and (max-height:700px){
  .slide{padding-top:calc(var(--pad)*2.3);padding-bottom:calc(var(--pad)*2);gap:calc(var(--pad)*.6)}
  .frames p{display:none}
}
@media (prefers-reduced-motion:reduce){.progress{transition:none}.cover .heat{display:none!important}}
@media (hover:none){.cover .heat{display:none!important}}
html.rm .cover .heat,html.print .cover .heat,html.export .cover .heat{display:none!important}

/* печать / PDF: слайд = страница 1920×1080 */
@page{size:1920px 1080px;margin:0}
html.print .deck{height:auto;overflow:visible;scroll-snap-type:none}
html.print .slide{width:1920px;height:1080px;break-after:page;page-break-after:always}
html.print .slide:last-child{break-after:auto;page-break-after:auto}
html.print .progress,html.print .bar,html.export .bar{display:none}
html.export .deck{scroll-snap-type:none;scroll-behavior:auto}
