/* Страницы пьес. Шрифты и токены — как на главной */
@font-face{font-family:"Sofia Sans XC";font-style:normal;font-display:swap;font-weight:1 1000;
  src:url(../fonts/sofia-sans-extra-condensed-cyrillic-wght-normal.woff2) format("woff2-variations");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Sofia Sans XC";font-style:normal;font-display:swap;font-weight:1 1000;
  src:url(../fonts/sofia-sans-extra-condensed-latin-wght-normal.woff2) format("woff2-variations");
  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:"Literata";font-style:normal;font-display:swap;font-weight:200 900;
  src:url(../fonts/literata-cyrillic-opsz-normal.woff2) format("woff2-variations");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Literata";font-style:normal;font-display:swap;font-weight:200 900;
  src:url(../fonts/literata-latin-opsz-normal.woff2) format("woff2-variations");
  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:"Literata";font-style:italic;font-display:swap;font-weight:200 900;
  src:url(../fonts/literata-cyrillic-opsz-italic.woff2) format("woff2-variations");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Literata";font-style:italic;font-display:swap;font-weight:200 900;
  src:url(../fonts/literata-latin-opsz-italic.woff2) format("woff2-variations");
  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{
  --paper:#ffffff; --ink:#000000; --graphite:#4b4945; --rule:#d4d2cc; --shade:#f1f0ec; --marker:#ffe84a;
  --display:"Sofia Sans XC","Arial Narrow",sans-serif; --text:"Literata",Georgia,serif;
  --wrap:1240px; --gutter:clamp(20px,4vw,48px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--text);
  font-size:clamp(17px,.6vw + 13px,19px);line-height:1.6;font-optical-sizing:auto;hyphens:auto}
img{display:block;max-width:100%;height:auto}
p{margin:0 0 1em}
a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{background:var(--marker);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;background:var(--marker)}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.skip{position:absolute;left:-9999px;top:0}
.skip:focus{left:var(--gutter);top:8px;padding:6px 12px;z-index:10}

/* Шапка */
.masthead{border-bottom:1px solid var(--ink)}
.masthead .wrap{display:flex;gap:24px;align-items:baseline;justify-content:space-between;padding-top:14px;padding-bottom:12px;flex-wrap:wrap}
.masthead .home{font-family:var(--display);font-weight:800;font-size:1.35rem;text-decoration:none;line-height:1}
.masthead nav ul{display:flex;flex-wrap:wrap;gap:4px 22px;list-style:none;margin:0;padding:0}
.masthead nav a{font-family:var(--display);font-weight:600;font-size:1.25rem;text-decoration:none;line-height:1}
.masthead nav a:hover{text-decoration:underline}

/* Титул пьесы */
.play-head{padding-top:clamp(28px,5vw,64px);padding-bottom:clamp(32px,5vw,56px);
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 clamp(28px,5vw,72px);align-items:start}
.play-head h1{grid-column:1/-1;font-family:var(--display);font-weight:900;text-transform:uppercase;
  font-size:clamp(52px,8.6vw,124px);line-height:.86;margin:0 0 .14em -.03em;text-wrap:balance;hyphens:manual}
.play-head .genre{grid-column:1/-1;font-style:italic;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.3;margin:0 0 clamp(28px,4vw,48px)}
.plate{margin:0;border:1px solid var(--ink);grid-row:span 2}
.facts{padding-top:2px}
.facts .who{font-family:var(--display);font-weight:700;font-size:1.3rem;line-height:1.2;margin:0 0 18px}
.rights{margin:0;padding:14px 16px 14px 18px;border-left:6px solid var(--marker);background:var(--shade);font-size:.95rem;line-height:1.5}
.rights a{font-weight:600}
.about{grid-column:1/-1;max-width:66ch;margin-top:clamp(28px,4vw,44px)}
.about-h{font-family:var(--text);font-weight:600;font-size:1rem;margin:0 0 8px}
.about p{margin:0}

/* Чтение */
.reader{border-top:1px solid var(--ink);padding-top:clamp(28px,4vw,48px);
  display:grid;grid-template-columns:15rem minmax(0,40rem);gap:clamp(32px,5vw,80px);justify-content:start}
.scenes{position:sticky;top:20px;align-self:start;max-height:calc(100vh - 40px);overflow:auto;padding-right:6px}
.scenes-h{font-family:var(--text);font-weight:600;font-size:1rem;margin:0 0 10px}
.scenes ol,.scenes-m ol{list-style:none;margin:0;padding:0;font-size:.88rem;line-height:1.35}
.scenes li,.scenes-m li{margin:0 0 7px}
.scenes a,.scenes-m a{text-decoration:none}
.scenes a:hover,.scenes-m a:hover{text-decoration:underline}
.n-sec a{font-weight:600}
.n-act{margin-top:14px!important;font-family:var(--display);font-weight:800;font-size:1.05rem;letter-spacing:.02em}
.scenes-m{display:none}

.script{max-width:40rem}
.script h2{font-family:var(--display);font-weight:800;font-size:1.9rem;line-height:1;margin:0 0 16px;scroll-margin-top:16px}
.script h2:not(:first-child){margin-top:2.2em}
.script h2.act{font-weight:900;text-transform:uppercase;font-size:clamp(2.2rem,4vw,3rem);padding-top:28px;border-top:1px solid var(--ink);margin-top:2.4em}
.script h3{font-family:var(--display);font-weight:800;font-size:1.6rem;line-height:1.05;margin:2.4em 0 .9em;scroll-margin-top:16px}
.script h2.act + h3{margin-top:1em}
.cast-list{list-style:none;margin:0 0 1em;padding:0}
.cast-list li{margin:0 0 .55em}
.script b{font-family:var(--display);font-weight:800;font-size:1.08em;letter-spacing:.02em}
.script b i{font-family:var(--text);font-weight:400;font-size:.93em;letter-spacing:0}
.script p{margin:0 0 .6em}
.script .line{margin-bottom:.55em}
.script .line > i,.script .note i{color:var(--graphite)}
.script .remark{font-style:normal;margin:.9em 0 .9em 1.6em;color:var(--graphite)}
.script .remark i{font-style:italic}
.script .screen{border:1px solid var(--ink);padding:14px 18px;margin:1.1em auto;max-width:30em;text-align:center;line-height:1.45}
.script .sfx{text-align:center;font-family:var(--display);font-weight:800;letter-spacing:.2em;margin:1em 0}
.script .center{text-align:center;margin:1.6em 0}
.script .center b{letter-spacing:.12em;font-size:1.3em}
.script .sign-off{text-align:right;color:var(--graphite)}
.script .eq{margin:1.2em auto;max-width:300px}

/* Постановка */
.staging{border-top:1px solid var(--ink);margin-top:clamp(48px,6vw,88px);padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(28px,4vw,48px)}
.staging h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(2.4rem,5vw,4rem);line-height:.9;margin:0 0 20px}
.staging p{max-width:44rem}
.staging .js-mail a{font-family:var(--display);font-weight:800;font-size:1.35em}

/* Соседние пьесы */
.pager{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid var(--ink);padding-top:22px;padding-bottom:clamp(40px,6vw,72px)}
.pg{display:block;text-decoration:none;font-family:var(--display);font-weight:800;font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.05}
.pg span{display:block;font-family:var(--text);font-weight:400;font-size:.95rem;color:var(--graphite);margin-bottom:6px}
.pg.next{text-align:right;grid-column:2}
.pg:hover{background:none;text-decoration:underline}

.foot{border-top:1px solid var(--ink);padding:20px 0 28px;color:var(--graphite);font-size:.9rem}
.foot p{margin:0}

@media (max-width:1000px){
  .reader{grid-template-columns:minmax(0,1fr)}
  .scenes{display:none}
  .scenes-m{display:block;border:1px solid var(--ink);padding:0 16px;margin-bottom:8px}
  .scenes-m summary{cursor:pointer;padding:12px 0;font-family:var(--display);font-weight:800;font-size:1.3rem}
  .scenes-m ol{padding-bottom:12px}
}
@media (max-width:760px){
  .play-head{grid-template-columns:1fr}
  .plate{grid-row:auto;margin-bottom:22px}
  .script .remark{margin-left:.8em}
  .pager{grid-template-columns:1fr}
  .pg.next{grid-column:1;text-align:left}
}
@media print{
  .masthead nav,.scenes,.scenes-m,.pager,.skip{display:none}
  .reader{display:block}
}
