/* Индивидуальные афиши восьми спектаклей в дизайн-системе «Кинематографическая сказка». */
.cinematic-interior[data-program="zhar-ptitsa"]{--program-stage:url("programs/assets/zhar-ptitsa/background-desktop.webp");--program-stage-mobile:url("programs/assets/zhar-ptitsa/background-mobile.webp");--program-accent:#e9ab82}
.cinematic-interior[data-program="korol-puzyrey"]{--program-stage:url("programs/assets/korol-puzyrey/background-desktop.webp");--program-stage-mobile:url("programs/assets/korol-puzyrey/background-mobile.webp");--program-accent:#ecc28c}
.cinematic-interior[data-program="rusalochka"]{--program-stage:url("programs/assets/rusalochka/background-desktop.webp");--program-stage-mobile:url("programs/assets/rusalochka/background-mobile.webp");--program-accent:#b7d8d1}
.cinematic-interior[data-program="elza"]{--program-stage:url("programs/assets/elza/background-desktop.webp");--program-stage-mobile:url("programs/assets/elza/background-mobile.webp");--program-accent:#cedcec}
.cinematic-interior[data-program="feya"]{--program-stage:url("programs/assets/feya/background-desktop.webp");--program-stage-mobile:url("programs/assets/feya/background-mobile.webp");--program-accent:#eec4bd}
.cinematic-interior[data-program="elfy"]{--program-stage:url("programs/assets/elfy/background-desktop.webp");--program-stage-mobile:url("programs/assets/elfy/background-mobile.webp");--program-accent:#f0c797}
.cinematic-interior[data-program="snezhinka"]{--program-stage:url("programs/assets/snezhinka/background-desktop.webp");--program-stage-mobile:url("programs/assets/snezhinka/background-mobile.webp");--program-accent:#d6e1ed}
.cinematic-interior[data-program="zvezdochka"]{--program-stage:url("programs/assets/zvezdochka/background-desktop.webp");--program-stage-mobile:url("programs/assets/zvezdochka/background-mobile.webp");--program-accent:#eed0ad}

.cinematic-interior[data-program] .program-hero{min-height:660px;padding:clamp(124px,11vw,160px) 0 clamp(76px,7vw,105px);background:#251720;border-bottom:1px solid rgba(232,189,131,.44)}
.cinematic-interior[data-program] .program-hero::before{inset:0;background-image:linear-gradient(90deg,rgba(27,13,22,.84) 0%,rgba(33,16,27,.67) 42%,rgba(24,13,22,.29) 100%),var(--program-stage);background-size:cover;background-position:center;filter:none;transform:none;opacity:1}
.cinematic-interior[data-program] .program-hero::after{content:"";position:absolute;inset:auto 0 0;height:95px;background:linear-gradient(0deg,rgba(30,15,26,.74),transparent);pointer-events:none}
.cinematic-interior[data-program] .program-hero > .container{position:relative;z-index:1}
.cinematic-interior[data-program] .program-hero .breadcrumbs{margin-bottom:clamp(38px,4.2vw,62px);color:#d9cbc9}
.cinematic-interior[data-program] .program-hero .breadcrumbs a{color:#eecab3}
.cinematic-interior[data-program] .program-hero .hero__grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);column-gap:clamp(42px,6vw,92px);row-gap:18px;align-items:center}
.cinematic-interior[data-program] .program-hero .hero__title{max-width:620px;font-size:clamp(63px,6.3vw,104px);line-height:.96;letter-spacing:-.055em;text-shadow:0 5px 36px rgba(10,2,9,.37)}
.cinematic-interior[data-program] .program-hero .hero__title em{max-width:600px;color:var(--program-accent);-webkit-text-fill-color:var(--program-accent);font-size:.42em;line-height:1.15;letter-spacing:-.02em;text-shadow:none}
.cinematic-interior[data-program] .program-hero .hero__lead{max-width:550px;margin:14px 0 10px;color:#f1e5e0;font-size:clamp(16px,1.25vw,18px);line-height:1.65;text-shadow:0 3px 20px rgba(10,2,9,.45)}
.cinematic-interior[data-program] .program-hero .hero__cta{justify-self:start;align-self:start;margin-top:12px}
.cinematic-interior[data-program] .program-hero .hero__microtext{color:#efcfb0;font-size:12px;letter-spacing:.09em}
.cinematic-interior[data-program] .program-hero .hero__video::before{inset:-15px;border-radius:30px;background:linear-gradient(135deg,rgba(255,239,205,.19),rgba(255,239,205,0) 54%);border:1px solid rgba(255,231,190,.28)}

/* Видео не загружается до нажатия: вместо пустого iframe виден настоящий кадр артистов. */
.cinematic-interior .program-film{position:relative;display:block;width:100%;min-height:340px;aspect-ratio:5/4;overflow:hidden;padding:0;border:1px solid rgba(255,225,177,.65);border-radius:23px;background:#291721;color:#f6e1c0;cursor:pointer;box-shadow:0 34px 75px rgba(9,3,11,.48);isolation:isolate;touch-action:manipulation;transition:box-shadow .28s,border-color .28s,transform .28s}
.cinematic-interior .program-film::before{content:"";position:absolute;z-index:2;inset:12px;border:1px solid rgba(255,231,191,.56);border-radius:13px;pointer-events:none}
.cinematic-interior .program-film::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(25,10,21,.7),transparent 42%),linear-gradient(90deg,rgba(31,15,28,.16),transparent 42%);pointer-events:none}
.cinematic-interior .program-film__poster{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.93) contrast(1.04);transition:transform .5s cubic-bezier(.22,1,.36,1)}
.cinematic-interior[data-program="korol-puzyrey"] .program-film__poster{object-position:center 16%}
.cinematic-interior[data-program="rusalochka"] .program-film__poster{object-position:center 22%}
.cinematic-interior .program-film__play{position:absolute;z-index:3;top:50%;left:50%;display:grid;place-items:center;width:88px;height:88px;border:1px solid rgba(255,239,205,.82);border-radius:50%;background:linear-gradient(135deg,#fff0cb,#dca670 70%,#b77a50);color:#2b1724;box-shadow:0 0 0 13px rgba(251,227,184,.12),0 16px 36px rgba(25,10,21,.38);transform:translate(-50%,-50%);transition:box-shadow .28s,background .28s}
.cinematic-interior .program-film__play svg{margin-left:3px}
.cinematic-interior .program-film__caption{position:absolute;z-index:3;left:32px;bottom:28px;padding:9px 15px;border:1px solid rgba(255,231,191,.5);border-radius:999px;background:rgba(37,20,31,.57);font:600 12px/1.2 var(--font-body);letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.cinematic-interior .program-film:hover{transform:translateY(-3px);border-color:#f8e0b8;box-shadow:0 39px 82px rgba(9,3,11,.56)}
.cinematic-interior .program-film:hover .program-film__poster{transform:scale(1.035)}
.cinematic-interior .program-film:hover .program-film__play{box-shadow:0 0 0 18px rgba(251,227,184,.18),0 16px 36px rgba(25,10,21,.38)}
.cinematic-interior .program-film:focus-visible,.cinematic-interior .program-photo-slider__item:focus-visible{outline:3px solid #f8d8a6;outline-offset:5px}

/* Состав спектакля становится частью сценографии, а заявка — отдельным билетом. */
.cinematic-interior[data-program] .program-body{padding:clamp(66px,7vw,96px) 0 clamp(92px,9vw,130px);background:linear-gradient(180deg,#fbf7f1,#f4ebe2)}
.cinematic-interior[data-program] .program-body > .container{max-width:1280px}
.cinematic-interior[data-program] .program-body .program-hero__text{max-width:none;margin-bottom:clamp(78px,8vw,118px)}
.cinematic-interior[data-program] .program-included{position:relative;display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,74px);align-items:start;overflow:hidden;margin:0;padding:clamp(36px,4.4vw,58px);border:1px solid rgba(229,183,125,.52);border-radius:26px;background-image:linear-gradient(90deg,rgba(36,19,31,.91),rgba(39,20,32,.78)),var(--program-stage);background-size:cover;background-position:center;color:#f9eee7;box-shadow:0 30px 66px rgba(46,27,37,.18)}
.cinematic-interior[data-program] .program-included::before{content:"";position:absolute;top:24px;right:24px;bottom:24px;left:24px;border:1px solid rgba(236,193,136,.23);border-radius:15px;pointer-events:none}
.cinematic-interior[data-program] .program-included h2{position:relative;max-width:390px;margin:0;color:#f9eee7;font:400 clamp(43px,4.5vw,63px)/1.03 var(--font-display);letter-spacing:-.04em}
.cinematic-interior[data-program] .program-included h2::before{content:"";display:block;width:66px;height:1px;margin-bottom:28px;background:#e8bd83}
.cinematic-interior[data-program] .program-included ul{position:relative;display:grid;grid-template-columns:1fr;gap:0;margin:0;color:#f0e2da;font-size:16px;line-height:1.5}
.cinematic-interior[data-program] .program-included li{padding:14px 0 14px 28px;border-bottom:1px solid rgba(239,210,169,.25);color:#f0e2da}
.cinematic-interior[data-program] .program-included li:first-child{padding-top:0}
.cinematic-interior[data-program] .program-included li:last-child{border:0}
.cinematic-interior[data-program] .program-included li::before{content:"✦";left:0;top:16px;color:#e8bd83}
.cinematic-interior[data-program] .program-included li:first-child::before{top:2px}
.cinematic-interior[data-program] .article-cta{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(24px,4vw,70px);width:100%;margin:20px 0 0;padding:clamp(27px,3.2vw,42px);border:1px solid #dfb47b;border-radius:22px;background:radial-gradient(circle at 96% 0%,rgba(251,218,164,.16),transparent 40%),linear-gradient(130deg,#392132,#251720);box-shadow:0 21px 48px rgba(33,15,27,.2)}
.cinematic-interior[data-program] .article-cta::before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;border:1px solid rgba(236,193,136,.18);border-radius:13px;pointer-events:none}
.cinematic-interior[data-program] .article-cta__title{position:relative;max-width:680px;margin:0!important;background:none!important;color:#f9eee7!important;-webkit-text-fill-color:#f9eee7!important;font-size:clamp(27px,2.65vw,39px);line-height:1.12}
.cinematic-interior[data-program] .article-cta .btn--primary{border-color:#ecc494;background:linear-gradient(110deg,#f6d5a5,#ddaa78 58%,#f6d5a5);color:#251720}

/* Фотоистория: крупный первый кадр и серия меньших живых моментов. */
.cinematic-interior[data-program] .program-section-title{margin-bottom:28px;color:#291923;font-size:clamp(40px,4.7vw,66px)}
.cinematic-interior[data-program] .program-section-title::before{content:"";display:block;width:65px;height:1px;margin:0 0 22px;background:#b77e59}
.cinematic-interior[data-program] .program-photo-slider{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(145px,16vw,230px);gap:14px;overflow:visible;margin:0 0 clamp(72px,8vw,112px);padding:0;scroll-snap-type:none}
.cinematic-interior[data-program] .program-photo-slider__item{position:relative;display:block;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;flex-basis:auto;aspect-ratio:auto;margin:0;padding:0;border:1px solid rgba(127,81,74,.34);border-radius:16px;background:#2e1c29;box-shadow:0 13px 30px rgba(46,27,37,.12);cursor:zoom-in;touch-action:manipulation;transition:box-shadow .24s,border-color .24s}
.cinematic-interior[data-program] .program-photo-slider__item:first-child{grid-column:span 2;grid-row:span 2;flex-basis:auto;aspect-ratio:auto;border-color:rgba(179,117,76,.58)}
.cinematic-interior[data-program] .program-photo-slider__item::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(35,19,31,.2),transparent 55%);pointer-events:none}
.cinematic-interior[data-program] .program-photo-slider__item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:saturate(.86) contrast(1.06) sepia(.035);transition:transform .45s,filter .3s}
.cinematic-interior[data-program] .program-photo-slider__item:hover{border-color:#e0ad70;box-shadow:0 18px 37px rgba(46,27,37,.18)}
.cinematic-interior[data-program] .program-photo-slider__item:hover img{transform:scale(1.045);filter:saturate(.96) contrast(1.05)}
.cinematic-interior[data-program="elfy"] .program-photo-slider__item:first-child img,.cinematic-interior[data-program="zvezdochka"] .program-photo-slider__item:first-child img{object-position:center 22%}
.cinematic-interior[data-program] .program-photo-slider + .slider-swipe-hint{display:none}
.cinematic-interior[data-program] .programs-more-slider{gap:17px;margin-bottom:15px;padding:4px 0 18px}
.cinematic-interior[data-program] .programs-more-slider .program-card{flex-basis:clamp(290px,24vw,340px);border:1px solid rgba(224,173,112,.38);box-shadow:0 16px 38px rgba(43,21,34,.16)}
.cinematic-interior[data-program] .programs-more-slider .program-card:hover{border-color:#d7a36e}

/* Просмотр исходного кадра без обрезки, с управлением клавиатурой и касанием. */
.program-photo-viewer{position:fixed;z-index:12000;inset:0;display:none;align-items:center;justify-content:center;padding:clamp(16px,4vw,42px);background:rgba(15,7,14,.9);backdrop-filter:blur(13px)}
.program-photo-viewer.is-open{display:flex}
.program-photo-viewer__panel{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:12px;width:min(100%,1280px);height:min(100%,850px)}
.program-photo-viewer__image{display:block;width:100%;height:100%;min-height:0;object-fit:contain;border:1px solid rgba(232,189,131,.48);border-radius:14px;background:#271720;box-shadow:0 25px 65px rgba(0,0,0,.3)}
.program-photo-viewer__control{display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(232,189,131,.65);border-radius:50%;background:rgba(40,22,34,.88);color:#f3d3a2;cursor:pointer;touch-action:manipulation}
.program-photo-viewer__control:hover{background:#5b3748}
.program-photo-viewer__control:focus-visible{outline:3px solid #f6d5a5;outline-offset:3px}
.program-photo-viewer__close{position:absolute;z-index:1;top:10px;right:66px}
.program-photo-viewer__count{position:absolute;z-index:1;bottom:12px;left:68px;padding:7px 12px;border:1px solid rgba(232,189,131,.4);border-radius:999px;background:rgba(30,15,27,.72);color:#f7dfbd;font:600 12px/1 var(--font-body);letter-spacing:.07em}

@media(max-width:1050px){
  .cinematic-interior[data-program] .program-hero{min-height:0;padding-bottom:77px}
  .cinematic-interior[data-program] .program-hero::before{background-image:linear-gradient(90deg,rgba(25,12,23,.84),rgba(25,12,23,.66)),var(--program-stage)}
  .cinematic-interior[data-program] .program-hero .hero__grid{display:flex;flex-direction:column;align-items:stretch;gap:20px}
  .cinematic-interior[data-program] .program-hero .hero__item--title{order:1}
  .cinematic-interior[data-program] .program-hero .hero__item--lead{order:2;margin:0}
  .cinematic-interior[data-program] .program-hero .hero__item--video{order:3;width:min(100%,720px);margin:17px auto 0}
  .cinematic-interior[data-program] .program-hero .hero__item--cta{order:4;margin:7px 0 0}
}
@media(max-width:767px){
  .cinematic-interior[data-program] .program-hero{padding:111px 0 61px}
  .cinematic-interior[data-program] .program-hero::before{background-image:linear-gradient(180deg,rgba(25,12,23,.86),rgba(26,13,23,.78)),var(--program-stage-mobile);background-position:center 38%}
  .cinematic-interior[data-program] .program-hero .breadcrumbs{margin-bottom:33px}
  .cinematic-interior[data-program] .program-hero .hero__title{font-size:clamp(54px,10vw,78px)}
  .cinematic-interior .program-film{min-height:0;aspect-ratio:4/3}
  .cinematic-interior[data-program] .program-included{grid-template-columns:1fr;gap:21px;padding:32px 25px}
  .cinematic-interior[data-program] .program-included h2{max-width:none;font-size:clamp(39px,8vw,56px)}
  .cinematic-interior[data-program] .program-included h2::before{margin-bottom:17px}
  .cinematic-interior[data-program] .article-cta{display:flex;flex-direction:column;align-items:stretch;gap:20px;width:100%;margin:14px 0 0;padding:29px 24px}
  .cinematic-interior[data-program] .article-cta .btn{width:100%}
  .cinematic-interior[data-program] .program-photo-slider{display:flex;gap:13px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;grid-auto-rows:auto;margin-bottom:12px;padding:2px 2px 16px}
  .cinematic-interior[data-program] .program-photo-slider__item,.cinematic-interior[data-program] .program-photo-slider__item:first-child{flex:0 0 min(72vw,360px);height:auto;aspect-ratio:4/5;grid-column:auto;grid-row:auto;scroll-snap-align:center}
  .cinematic-interior[data-program] .program-photo-slider__item:first-child{flex-basis:min(82vw,400px)}
  .cinematic-interior[data-program] .program-photo-slider + .slider-swipe-hint{display:block;margin-bottom:68px}
  .program-photo-viewer__panel{grid-template-columns:40px minmax(0,1fr) 40px;gap:6px;height:min(82vh,780px)}
  .program-photo-viewer__control{width:40px;height:40px}
  .program-photo-viewer__close{top:-52px;right:0}
  .program-photo-viewer__count{bottom:-41px;left:46px}
}
@media(max-width:560px){
  .cinematic-interior[data-program] .program-hero .hero__title{font-size:clamp(49px,11vw,65px)}
  .cinematic-interior[data-program] .program-hero .hero__title em{font-size:.47em}
  .cinematic-interior[data-program] .program-hero .hero__lead{font-size:16px}
  .cinematic-interior .program-film__play{width:70px;height:70px}
  .cinematic-interior .program-film__caption{left:22px;bottom:20px}
  .cinematic-interior[data-program] .program-included{padding:28px 19px}
  .cinematic-interior[data-program] .program-included::before{inset:12px}
  .cinematic-interior[data-program] .program-included h2{font-size:39px}
  .cinematic-interior[data-program] .program-included ul{font-size:15px}
  .cinematic-interior[data-program] .article-cta__title{font-size:29px}
  .cinematic-interior[data-program] .program-section-title{font-size:39px}
}
@media(prefers-reduced-motion:reduce){
  .cinematic-interior .program-film,.cinematic-interior .program-film__poster,.cinematic-interior .program-film__play,.cinematic-interior .program-photo-slider__item,.cinematic-interior .program-photo-slider__item img{transition:none}
}
