@font-face{font-family:'Literata';font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/literata-cyrillic-standard-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-weight:200 900;font-display:swap;src:url(fonts/literata-cyrillic-ext-standard-normal.woff2) format('woff2-variations');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Literata';font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/literata-latin-standard-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-weight:200 900;font-display:swap;src:url(fonts/literata-latin-ext-standard-normal.woff2) format('woff2-variations');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Literata';font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/literata-cyrillic-standard-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-weight:200 900;font-display:swap;src:url(fonts/literata-cyrillic-ext-standard-italic.woff2) format('woff2-variations');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Literata';font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/literata-latin-standard-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}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/cormorant-garamond-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-cyrillic-400-italic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/golos-text-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/golos-text-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/golos-text-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/cormorant-garamond-latin-700-normal.woff2) format('woff2');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:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format('woff2');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:'Golos Text';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/golos-text-latin-400-normal.woff2) format('woff2');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:'Golos Text';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/golos-text-latin-500-normal.woff2) format('woff2');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:'Golos Text';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/golos-text-latin-600-normal.woff2) format('woff2');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}

/* Аркадий Пасман, v6. Дизайн по варианту Gemini Pro (Argon), перенесён в генератор v5 */
:root{
  --bg-paper:#F6F1E7;   /* бумага */
  --bg-sheet:#FBF8F2;   /* лист поверх бумаги */
  --bg-margin:#ECE4D4;  /* поля, вставки */
  --ink:#1C1A17;
  --ink-secondary:#433D36;
  --ink-muted:#5E564C;  /* 6.4:1 на бумаге */
  --cinnabar:#B83322;   /* 5.3:1 на бумаге */
  --cinnabar-hover:#962617;
  --cobalt:#1B3B6F;     /* 9.8:1 на бумаге */
  --warm-yellow:#E6B44C;/* только фон плашек и выделение */
  --rule:rgba(28,26,23,.16);
  --rule-strong:#1C1A17;
  --font-display:'Cormorant Garamond',Georgia,serif;
  --font-poetry:'Literata',Georgia,serif;
  --font-sans:'Golos Text',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --max-w:1360px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;background:var(--bg-paper);color:var(--ink);-webkit-text-size-adjust:100%;scroll-padding-top:96px}
body{font-family:var(--font-sans);background:var(--bg-paper);color:var(--ink);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a,button,input,textarea{font:inherit;color:inherit}
a{color:var(--cobalt);text-underline-offset:3px}
a:hover{color:var(--cinnabar)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--cobalt);outline-offset:3px}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
::selection{background:var(--warm-yellow);color:var(--ink)}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}
.skip:focus{top:12px;color:#fff}
.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 24px}

/* ---------- шапка ---------- */
.site-header{border-bottom:1px solid var(--rule-strong);background:var(--bg-paper);position:sticky;top:0;z-index:50}
.nav-bar{display:flex;justify-content:space-between;align-items:center;padding-top:10px;padding-bottom:10px;gap:16px}
.brand-link{display:inline-flex;flex-direction:column;justify-content:center;min-height:44px;text-decoration:none;padding:4px 0}
.brand-name{font-family:var(--font-display);font-size:1.6rem;font-weight:700;line-height:1.05;letter-spacing:-.01em;color:var(--ink)}
.brand-sub{font-size:.75rem;color:var(--cinnabar);letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.brand-link:hover .brand-name{color:var(--cinnabar)}
.main-nav ul{display:flex;align-items:center;flex-wrap:wrap;gap:2px}
.nav-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;text-decoration:none;font-size:.9375rem;font-weight:500;color:var(--ink)}
.nav-link:hover{color:var(--cinnabar);background:rgba(184,51,34,.05)}
.nav-link[aria-current="page"]{color:var(--cinnabar);font-weight:600;box-shadow:inset 0 -2px 0 var(--cinnabar)}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;min-height:44px;min-width:44px;padding:9px 16px;border:1.5px solid var(--ink);font-weight:600;font-size:.9375rem;display:inline-flex;align-items:center}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--ink);color:#fff}
.menu nav{position:absolute;right:0;top:calc(100% + 10px);background:var(--bg-sheet);border:1px solid var(--rule-strong);box-shadow:8px 8px 0 var(--bg-margin);min-width:240px;padding:8px 0}
.menu .nav-link{display:flex;padding:10px 20px}

/* ---------- кнопки ---------- */
.btn-primary,.btn-secondary,.btn-quiet{display:inline-flex;align-items:center;justify-content:center;min-height:48px;font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer}
.btn-primary{padding:12px 24px;background:var(--cinnabar);color:#fff;border:1px solid var(--cinnabar);letter-spacing:.02em}
.btn-primary:hover{background:var(--cinnabar-hover);border-color:var(--cinnabar-hover);color:#fff}
.btn-secondary{padding:12px 22px;background:transparent;color:var(--cobalt);border:1.5px solid var(--cobalt)}
.btn-secondary:hover{background:var(--cobalt);color:#fff}
.btn-quiet{padding:10px 14px;color:var(--ink-secondary);text-decoration:underline;text-decoration-color:var(--cinnabar);text-underline-offset:5px;font-weight:500}
.btn-quiet:hover{color:var(--cinnabar)}
.more-link{display:inline-flex;align-items:center;min-height:44px;margin-top:20px;font-weight:600;color:var(--cobalt);text-decoration:underline;text-decoration-color:var(--cinnabar);text-underline-offset:5px}

/* ---------- первый экран ---------- */
.hero{padding:40px 0 56px;border-bottom:2px solid var(--rule-strong)}
.hero-grid{display:grid;grid-template-columns:7fr 5fr;grid-template-areas:"head photo" "body photo";grid-template-rows:auto 1fr;column-gap:56px;align-items:start}
.hero-head{grid-area:head;display:flex;flex-direction:column;gap:20px;padding-top:8px}
.hero-body{grid-area:body;display:flex;flex-direction:column;gap:24px;padding-top:24px}
.hero-portrait-col{grid-area:photo}
.role-formula{display:inline-flex;align-items:center;gap:10px;font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cobalt)}
.role-formula::before{content:"";display:inline-block;width:28px;height:2px;background:var(--cinnabar)}
.hero-title{font-family:var(--font-display);font-size:clamp(3rem,6.4vw,5.75rem);font-weight:700;line-height:.96;letter-spacing:-.02em;color:var(--ink)}
.hero-lead{font-family:var(--font-poetry);font-size:clamp(1.125rem,1.8vw,1.35rem);line-height:1.55;color:var(--ink-secondary);max-width:58ch}
.hero-stanza-sheet{background:var(--bg-sheet);border:1px solid var(--rule);border-left:4px solid var(--cinnabar);padding:20px 24px;max-width:560px}
.stanza-margin-note{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin-bottom:10px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.stanza-margin-note a{color:var(--ink-muted);display:inline-flex;align-items:center;min-height:44px;margin:-12px 0}
.stanza-margin-note a:hover{color:var(--cinnabar)}
.hero-stanza-text{font-family:var(--font-poetry);font-size:1.125rem;line-height:1.65}
.hero-stanza-text span{display:block}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.portrait-frame{background:var(--bg-sheet);padding:14px 14px 18px;border:1px solid var(--rule-strong);box-shadow:10px 10px 0 var(--bg-margin)}
.portrait-frame img{width:100%;aspect-ratio:900/1196;object-fit:cover;object-position:center top;background:#3D2B22}
.portrait-caption{margin-top:12px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.8125rem;color:var(--ink-secondary);border-top:1px solid var(--rule);padding-top:10px}
.caption-tag{font-weight:600;color:var(--ink)}

/* ---------- разделы ---------- */
.editorial-section{padding:64px 0;border-bottom:1px solid var(--rule-strong)}
.editorial-section.last{border-bottom:none}
.section-header-grid{display:grid;grid-template-columns:3fr 9fr;gap:32px;margin-bottom:40px;align-items:baseline}
.section-index{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--cinnabar)}
.section-title{font-family:var(--font-display);font-size:clamp(2.1rem,3.8vw,3.25rem);font-weight:700;line-height:1.06;color:var(--ink)}
h1.section-title{font-size:clamp(2.6rem,5vw,4.25rem)}
.section-subtitle{margin-top:12px;font-size:1.0625rem;color:var(--ink-secondary);max-width:62ch}
.section-subtitle a{color:var(--cobalt)}
.offset{margin-left:calc(25% + 8px)}

/* разворот одного стихотворения на главной */
.featured-spread{background:var(--bg-sheet);border:1px solid var(--rule-strong);padding:40px;margin-bottom:48px;display:grid;grid-template-columns:4fr 8fr;gap:36px}
.spread-meta{border-right:1px solid var(--rule);padding-right:24px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.spread-badge{display:inline-block;background:var(--warm-yellow);color:var(--ink);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;align-self:flex-start}
.spread-poem-title{font-family:var(--font-display);font-size:2.25rem;font-weight:700;line-height:1.1;margin-top:12px}
.spread-note{font-size:.9375rem;color:var(--ink-secondary);line-height:1.55}
.spread-columns{columns:2;column-gap:40px}
.spread-columns .poem-stanza{break-inside:auto}
.poem-stanzas{font-family:var(--font-poetry);font-size:1.125rem;line-height:1.75}
.poem-stanza{margin-bottom:1.35em}
.poem-stanza span{display:block}
.poem-date-mark{margin-top:16px;font-size:.875rem;color:var(--ink-muted)}

/* три стихотворения альманахом */
.full-poems-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:56px;padding-bottom:40px;border-bottom:1px solid var(--rule)}
.almanac-column{background:var(--bg-sheet);border:1px solid var(--rule);border-top:3px solid var(--cobalt);padding:28px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.almanac-column:nth-child(2){border-top-color:var(--cinnabar)}
.almanac-column:nth-child(3){border-top-color:var(--warm-yellow)}
.almanac-head{margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--rule)}
.almanac-head h3{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:1.15}
.almanac-head h3 a{color:var(--ink);text-decoration:none}
.almanac-head h3 a:hover{color:var(--cinnabar)}
.rubric{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--cobalt)}

/* оглавление */
.toc-container{display:grid;grid-template-columns:3fr 9fr;gap:32px;align-items:start}
.toc-sidebar{background:var(--bg-margin);padding:24px;border-left:3px solid var(--cobalt)}
.toc-sidebar-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;line-height:1.15;margin-bottom:10px}
.toc-sidebar-text{font-size:.9rem;color:var(--ink-secondary)}
.toc-sidebar-text+.toc-sidebar-text{margin-top:10px}
.toc-list{border-top:1px solid var(--rule-strong)}
.toc-item{border-bottom:1px solid var(--rule)}
.toc-item:hover{background:rgba(251,248,242,.85)}
.toc-row{display:grid;grid-template-columns:38px minmax(180px,4fr) minmax(200px,5fr) minmax(70px,1fr);gap:14px;align-items:baseline;padding:12px 10px;min-height:48px;text-decoration:none;color:var(--ink)}
.toc-row:hover{color:var(--ink)}
.toc-row:hover .toc-poem-name{color:var(--cinnabar)}
.toc-num{font-size:.8125rem;color:var(--ink-muted);font-variant-numeric:tabular-nums}
.toc-poem-name{font-family:var(--font-poetry);font-weight:600;font-size:1.05rem}
.toc-first-line{font-family:var(--font-poetry);font-style:italic;font-size:.95rem;color:var(--ink-secondary)}
.toc-year{font-size:.85rem;color:var(--ink-muted);font-variant-numeric:tabular-nums;text-align:right}
.filters{border:0;margin:28px 0 8px;display:flex;flex-wrap:wrap;gap:8px}
.filters legend{font-size:.875rem;color:var(--ink-muted);margin-bottom:12px;float:left;width:100%}
.chip{min-height:44px;padding:8px 16px;background:var(--bg-sheet);border:1px solid var(--rule-strong);font-family:var(--font-poetry);font-size:.95rem;cursor:pointer}
.chip:hover{border-color:var(--cinnabar);color:var(--cinnabar)}
.chip[aria-pressed="true"]{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.count{font-size:.875rem;color:var(--ink-muted);margin-top:12px}

/* досье «О нём» */
.dossier-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}
.dossier-block{background:var(--bg-sheet);border:1px solid var(--rule);padding:28px;display:flex;flex-direction:column;gap:12px}
.dossier-col-6{grid-column:span 6}
.dossier-col-4{grid-column:span 4}
.dossier-col-12{grid-column:span 12}
.dossier-heading{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:1.15;color:var(--ink)}
.dossier-text{font-size:1rem;color:var(--ink-secondary);line-height:1.65}
.dossier-text a{color:var(--cobalt)}
.songs-list{margin-top:6px;display:flex;flex-direction:column;gap:8px}
.songs-list li{padding-left:18px;position:relative;font-family:var(--font-poetry)}
.songs-list li::before{content:"·";position:absolute;left:4px;font-weight:700;color:var(--cinnabar)}
.chrono{border-top:2px solid var(--rule-strong)}
.chrono li{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:16px 0;border-bottom:1px solid var(--rule)}
.chrono .y{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--cinnabar);line-height:1.2}

/* венки */
.sonnets-layout{display:grid;grid-template-columns:4fr 8fr;gap:36px;align-items:start}
.sonnets-note-box{background:var(--bg-margin);padding:28px;border-top:3px solid var(--cinnabar)}
.sonnets-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule-strong);border-left:1px solid var(--rule-strong)}
.sonnet-entry{border-right:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);background:var(--bg-sheet)}
.sonnet-entry a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:22px 24px;min-height:72px;text-decoration:none;color:var(--ink)}
.sonnet-entry a:hover .sonnet-title{color:var(--cinnabar)}
.sonnet-title{font-family:var(--font-display);font-size:1.55rem;font-weight:700;line-height:1.15}
.sonnet-tag{font-size:.75rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}

/* программка пьес */
.playbill-sheet{background:var(--bg-sheet);border:2px solid var(--rule-strong);padding:36px}
.playbill-header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid var(--rule-strong);padding-bottom:20px;margin-bottom:8px;gap:16px;flex-wrap:wrap}
.playbill-heading{font-family:var(--font-display);font-size:1.9rem;font-weight:700;line-height:1.1;margin-top:4px}
.playbill-row{border-bottom:1px solid var(--rule)}
.playbill-row:last-child{border-bottom:none}
.playbill-row a{display:grid;grid-template-columns:48px 5fr 5fr auto;gap:20px;align-items:baseline;padding:20px 8px;text-decoration:none;color:var(--ink)}
.playbill-row a:hover .play-title{color:var(--cinnabar)}
.play-num{font-family:var(--font-display);font-size:1.45rem;font-style:italic;color:var(--cinnabar)}
.play-title{font-family:var(--font-display);font-size:1.8rem;font-weight:700;line-height:1.15}
.play-genre{font-family:var(--font-poetry);font-style:italic;font-size:1.05rem;color:var(--ink-secondary)}
.play-note{font-size:.8125rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}

/* встречи */
.events-timeline{border-top:2px solid var(--rule-strong)}
.event-program{display:grid;grid-template-columns:260px 1fr;gap:32px;padding:32px 0;border-bottom:1px solid var(--rule);align-items:start}
.event-date-col{display:flex;flex-direction:column;gap:6px}
.event-date{font-family:var(--font-display);font-size:1.65rem;font-weight:700;color:var(--cinnabar);line-height:1.1}
.event-headline{font-family:var(--font-display);font-size:1.7rem;font-weight:700;line-height:1.15;margin-bottom:14px}
.event-details{display:flex;flex-direction:column;gap:8px}
.event-details li{position:relative;padding-left:18px;font-size:.98rem;color:var(--ink-secondary)}
.event-details li::before{content:"·";position:absolute;left:4px;font-weight:700;color:var(--cobalt)}
.event-src{margin-top:14px;font-size:.85rem;color:var(--ink-muted)}

/* книга памяти */
.memory-layout{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
.memory-status-box{background:var(--bg-margin);padding:28px;border-left:4px solid var(--warm-yellow)}
.memory-form{background:var(--bg-sheet);border:1px solid var(--rule-strong);padding:32px;display:flex;flex-direction:column;gap:8px}
.memory-form label{font-size:.9rem;font-weight:600;margin-top:12px}
.memory-form label:first-child{margin-top:0}
.memory-form .hint{display:block;font-weight:400;color:var(--ink-muted);font-size:.85rem}
.memory-form input,.memory-form textarea,.search-box input{width:100%;padding:12px 14px;background:var(--bg-paper);border:1px solid var(--rule-strong);color:var(--ink);font-size:1rem;min-height:48px}
.memory-form textarea{min-height:170px;resize:vertical;line-height:1.55}
.memory-form .btn-primary{margin-top:16px;align-self:flex-start;border:0}
.form-honest-note{font-size:.85rem;color:var(--ink-muted);line-height:1.5;margin-top:8px}

/* поиск */
.search-box{display:flex;gap:10px;max-width:640px;margin-top:24px}
.search-box .btn-primary{border:0}
.results{margin-top:24px;border-top:1px solid var(--rule-strong);max-width:820px}
.results li{padding:16px 0;border-bottom:1px solid var(--rule)}
.results .k{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}
.results a{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--ink);text-decoration:none}
.results a:hover{color:var(--cinnabar)}
.results p{font-family:var(--font-poetry);color:var(--ink-secondary);margin-top:4px}
mark{background:var(--warm-yellow);color:var(--ink);padding:0 2px}

/* ---------- страница произведения ---------- */
.reader-wrapper{padding-top:40px;padding-bottom:80px}
.reader-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px;padding-bottom:16px;border-bottom:1px solid var(--rule);gap:16px;flex-wrap:wrap}
.back-link{display:inline-flex;align-items:center;min-height:44px;gap:8px;text-decoration:none;font-weight:600;color:var(--cobalt);font-size:.95rem}
.reader-sheet{max-width:760px;margin:0 auto;background:var(--bg-sheet);border:1px solid var(--rule-strong);padding:56px 64px;box-shadow:12px 12px 0 var(--bg-margin)}
.reader-sheet.wide{max-width:900px}
.reader-meta{font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;color:var(--cinnabar);font-weight:600;margin-bottom:12px}
.reader-title{font-family:var(--font-display);font-size:clamp(2.4rem,4.5vw,3.5rem);font-weight:700;line-height:1.06;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--rule)}
.reader-body{font-family:var(--font-poetry);font-size:clamp(1.1875rem,2.2vw,1.375rem);line-height:1.8;max-width:40ch}
.reader-body .poem-stanza{margin-bottom:1.5em}
.epi{font-style:italic;font-size:.9em;color:var(--ink-secondary);margin:0 0 2em auto;max-width:28ch;text-align:right}
.reader-date{margin-top:32px;padding-top:16px;border-top:1px solid var(--rule);font-family:var(--font-poetry);font-style:italic;color:var(--ink-secondary)}
.sonnet{margin-bottom:2.2em}
.sonnet-no{font-family:var(--font-display);font-style:italic;font-size:1.3rem;color:var(--cinnabar);margin-bottom:.4em}
.play{font-family:var(--font-poetry);font-size:1.0625rem;line-height:1.7;max-width:62ch}
.play .sc{font-family:var(--font-display);font-weight:700;font-size:1.5rem;margin:1.6em 0 .6em}
.play .dir{font-style:italic;color:var(--ink-secondary);margin:.6em 0}
.play .sp{font-family:var(--font-sans);font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;margin-top:1em}
.fragment-note{font-size:.9rem;color:var(--ink-secondary);background:var(--bg-margin);border-left:3px solid var(--warm-yellow);padding:14px 18px;margin-bottom:32px}
.reader-tools{max-width:760px;margin:28px auto 0;display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.share-btn{min-height:44px;padding:8px 18px;background:transparent;border:1.5px solid var(--cobalt);color:var(--cobalt);font-weight:600;cursor:pointer}
.share-btn:hover{background:var(--cobalt);color:#fff}
.reader-tools output{font-size:.9rem;color:var(--ink-muted)}
.reader-neighbors{max-width:760px;margin:32px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.neighbor-box{background:var(--bg-sheet);border:1px solid var(--rule);padding:20px;text-decoration:none;display:flex;flex-direction:column;gap:6px;color:var(--ink)}
.neighbor-box:hover{border-color:var(--cinnabar);color:var(--ink)}
.neighbor-box.next{text-align:right}
.neighbor-dir{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}
.neighbor-name{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.15}
.neighbor-line{font-family:var(--font-poetry);font-style:italic;font-size:.9rem;color:var(--ink-secondary)}
.reader-themes{max-width:760px;margin:28px auto 0;padding-top:20px;border-top:1px solid var(--rule)}
.reader-themes .links{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.reader-themes .links a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;background:var(--bg-sheet);border:1px solid var(--rule-strong);font-family:var(--font-poetry);font-size:.95rem;text-decoration:none;color:var(--ink)}
.reader-themes .links a:hover{background:var(--cobalt);border-color:var(--cobalt);color:#fff}


/* тексты по изданию 2021 года */
.poem-stanza.it{font-style:italic;color:var(--ink-secondary)}
.dedication{font-style:italic;color:var(--ink-secondary);margin:0 0 1.2em;font-family:var(--font-poetry)}
.sonnet .em{font-style:italic}
.sonnet.magistral .sonnet-no{color:var(--cobalt)}
.notes{margin-top:24px;padding-top:12px;border-top:1px solid var(--rule);font-size:.875rem;color:var(--ink-muted);font-style:italic}
.reader-source{margin-top:28px;font-size:.8125rem;color:var(--ink-muted);line-height:1.5}
.cast{margin:.4em 0 1.6em;padding-left:0}
.cast li{padding:3px 0 3px 18px;position:relative}
.cast li::before{content:"·";position:absolute;left:4px;color:var(--cinnabar);font-weight:700}
.play .ln{margin:.55em 0}
.play .who{font-family:var(--font-sans);font-weight:600;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.play .how{font-style:italic;color:var(--ink-secondary)}
.play .sep{font-family:var(--font-sans);font-weight:600}

.self-quote{margin:0 0 48px;padding:28px 32px;background:var(--bg-sheet);border:1px solid var(--rule);border-left:4px solid var(--cinnabar);max-width:860px}
.self-quote blockquote p{font-family:var(--font-poetry);font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55;font-style:italic}
.self-quote figcaption{margin-top:12px;font-size:.875rem;color:var(--ink-muted)}

/* всё собрание: разделы, проза, песни */
.part-no{font-family:var(--font-display);font-style:italic;font-size:1.4rem;color:var(--cinnabar);margin:1.6em 0 .4em}
.reader-subtitle{font-family:var(--font-poetry);font-style:italic;color:var(--ink-secondary);margin:-20px 0 28px}
.authors{font-family:var(--font-sans);font-weight:600;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-secondary);margin-bottom:24px}
.audio-box{background:var(--bg-margin);border-left:3px solid var(--cobalt);padding:14px 16px;margin:0 0 32px;display:flex;flex-direction:column;gap:10px}
.audio-box audio,.song audio{width:100%;max-width:520px;height:44px}
.audio-note{font-size:.8125rem;color:var(--ink-muted)}
.preface{background:var(--bg-sheet);border:1px solid var(--rule);border-left:4px solid var(--cinnabar);padding:24px 28px;margin:8px 0 32px;font-family:var(--font-poetry);font-style:italic;line-height:1.65;color:var(--ink-secondary)}
.preface p{margin-top:10px}
.preface summary{cursor:pointer;min-height:44px;display:inline-flex;align-items:center;font-family:var(--font-sans);font-style:normal;font-weight:600;color:var(--cobalt);margin-top:6px}
.poem-groups{margin-top:24px}
.toc-group{margin-bottom:44px}
.group-title{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:1.15;margin-bottom:12px;display:flex;align-items:baseline;gap:12px}
.group-count{font-family:var(--font-sans);font-size:.8125rem;font-weight:600;color:var(--ink-muted)}
.section-note{background:var(--bg-margin);border-left:3px solid var(--warm-yellow);padding:14px 18px;margin-bottom:16px;font-size:.9rem;font-style:italic;color:var(--ink-secondary)}
.section-note .sign{font-style:normal;font-weight:600;margin-top:6px}
.prose-list{border-top:2px solid var(--rule-strong)}
.prose-list li{border-bottom:1px solid var(--rule)}
.prose-list a{display:grid;grid-template-columns:5fr 6fr;gap:20px;align-items:baseline;padding:18px 8px;text-decoration:none;color:var(--ink)}
.prose-list a:hover .play-title{color:var(--cinnabar)}
.chapters{background:var(--bg-margin);padding:16px 20px;margin-bottom:32px}
.chapters ol{columns:2;column-gap:28px;margin-top:8px}
.chapters a{display:inline-flex;min-height:36px;align-items:center;font-size:.9rem}
.prose-text{font-family:var(--font-poetry);font-size:1.0625rem;line-height:1.75;max-width:66ch}
.prose-text p{text-indent:1.5em;margin:0}
.prose-text .chapter{font-family:var(--font-display);font-size:1.6rem;font-weight:700;margin:2em 0 .8em;text-indent:0}
.prose-text .epi{margin:1em 0 1.5em auto}
.songs{border-top:2px solid var(--rule-strong)}
.song{padding:16px 0;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:10px}
.song-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.song-title{font-family:var(--font-display);font-size:1.45rem;font-weight:700;line-height:1.15}
.song-dur{font-size:.85rem;color:var(--ink-muted);font-variant-numeric:tabular-nums}
.song-text{display:inline-flex;align-items:center;min-height:44px;font-weight:600;margin-left:auto}
.sonnet-intro{margin-top:48px;background:var(--bg-sheet);border:1px solid var(--rule);padding:28px;max-width:640px}
.sonnet-intro .poem-stanza{font-family:var(--font-poetry);font-size:1.1rem;line-height:1.75;margin-top:16px}
.sonnet-intro .poem-stanza span{display:block}
@media (max-width:640px){
  .prose-list a{grid-template-columns:1fr;gap:4px}
  .chapters ol{columns:1}
  .song-text{margin-left:0}
}

.shelf{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:24px;max-width:860px}
.book{text-decoration:none;color:var(--ink)}
.book img{width:100%;height:auto;border:1px solid var(--rule);box-shadow:6px 6px 0 var(--bg-margin);background:#fff}
.book figcaption{margin-top:10px;font-family:var(--font-display);font-size:1.2rem;font-weight:700}
.book:hover figcaption{color:var(--cinnabar)}
.shelf-block{display:grid;grid-template-columns:3fr 9fr;gap:32px;margin-top:56px;padding-top:40px;border-top:1px solid var(--rule)}
.index-cover{display:block;margin-top:20px;max-width:140px}
.index-cover img{width:100%;height:auto;border:1px solid var(--rule);box-shadow:6px 6px 0 var(--bg-margin);background:#fff}
@media (max-width:1024px){
  .shelf-block{grid-template-columns:1fr;gap:12px}
  .index-cover{display:none}
}
@media (max-width:640px){
  .shelf{grid-template-columns:repeat(2,1fr);gap:16px}
}

/* ---------- подвал ---------- */
.site-footer{border-top:2px solid var(--rule-strong);padding:36px 0 40px;background:var(--bg-margin);font-size:.9rem;color:var(--ink-secondary)}
.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px 40px}
.footer-inner strong{color:var(--ink)}
.footer-nav ul{display:flex;flex-wrap:wrap;gap:4px 18px}
.footer-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink-secondary)}

/* ---------- адаптив ---------- */
@media (max-width:1240px){
  .main-nav{display:none}
  .menu{display:block}
}
@media (max-width:1024px){
  .site-header{position:static}
  html{scroll-padding-top:0}
  .hero-grid{grid-template-columns:1fr;grid-template-areas:"head" "photo" "body";grid-template-rows:auto;column-gap:0}
  .hero-portrait-col{margin-top:28px;max-width:440px}
  .section-header-grid,.featured-spread,.toc-container,.sonnets-layout,.memory-layout{grid-template-columns:1fr}
  .section-header-grid{gap:12px}
  .offset{margin-left:0}
  .spread-meta{border-right:none;border-bottom:1px solid var(--rule);padding-right:0;padding-bottom:20px}
  .full-poems-trio{grid-template-columns:1fr}
  .dossier-col-6,.dossier-col-4{grid-column:span 12}
  .toc-row{grid-template-columns:32px 1fr auto}
  .toc-first-line{grid-column:2/-1;grid-row:2}
  .playbill-row a{grid-template-columns:36px 1fr;gap:6px 14px}
  .play-genre,.play-note{grid-column:2/-1}
  .event-program{grid-template-columns:1fr;gap:12px}
  .chrono li{grid-template-columns:1fr;gap:4px}
}
@media (max-width:640px){
  .container{padding:0 16px}
  .nav-bar{padding-top:8px;padding-bottom:8px}
  .brand-name{font-size:1.4rem}
  .hero{padding:24px 0 40px}
  .hero-head{gap:14px}
  .hero-portrait-col{max-width:none}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions a{width:100%}
  .editorial-section{padding:44px 0}
  .spread-columns{columns:1}
  .featured-spread{padding:24px 18px}
  .sonnets-list{grid-template-columns:1fr}
  .reader-wrapper{padding-top:24px;padding-bottom:56px}
  .reader-sheet{padding:28px 20px;box-shadow:none}
  .reader-neighbors{grid-template-columns:1fr}
  .neighbor-box.next{text-align:left}
  .playbill-sheet{padding:22px 16px}
  .play-title{font-size:1.55rem}
  .memory-form{padding:22px 16px}
  .search-box{flex-direction:column}
}
.memory-closed{max-width:720px}
/* фотоальбом */
.album-chapters{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 48px}
.album-chapters .chip{display:inline-flex;align-items:center;text-decoration:none;color:var(--ink)}
.album-group{margin-bottom:56px;scroll-margin-top:24px}
.album-note{font-size:.9375rem;color:var(--ink-secondary);max-width:62ch;margin:-4px 0 18px}
.album-grid{display:flex;flex-wrap:wrap;gap:10px}
.album-grid::after{content:'';flex-grow:999}
.album-grid .ph{margin:0;min-width:0;flex-grow:var(--r);flex-basis:calc(var(--r)*210px)}
.album-grid .ph a{display:block;background:var(--bg-margin);outline-offset:2px}
.album-grid .ph img{display:block;width:100%;height:auto;object-fit:cover;transition:opacity .2s}
.album-grid .ph a:hover img{opacity:.88}
.lightbox{border:0;padding:0;margin:0;width:100vw;height:100vh;max-width:none;max-height:none;background:#141210;color:#F6F1E7}
.lightbox::backdrop{background:rgba(20,18,16,.96)}
.lightbox[open]{display:flex;align-items:center;justify-content:center}
.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:calc(100vw - 140px)}
.lightbox img{display:block;max-width:100%;max-height:calc(100vh - 110px);width:auto;height:auto;object-fit:contain}
.lightbox figcaption{font-size:.9375rem;text-align:center;line-height:1.45;max-width:70ch}
.lightbox .lb-cap{font-family:var(--font-poetry)}
.lightbox .lb-meta{display:block;font-size:.8125rem;color:#BDB3A3;margin-top:2px}
.lb-btn{position:absolute;min-width:48px;min-height:48px;border:0;background:transparent;color:#F6F1E7;font-size:2.4rem;line-height:1;cursor:pointer;font-family:var(--font-sans)}
.lb-btn:hover{color:var(--warm-yellow)}
.lb-btn:focus-visible{outline:3px solid var(--warm-yellow);outline-offset:-3px}
.lb-prev{left:12px;top:50%;transform:translateY(-50%)}
.lb-next{right:12px;top:50%;transform:translateY(-50%)}
.lb-close{right:12px;top:12px;font-size:2rem}
@media (max-width:640px){
  .album-grid{gap:6px}
  .album-grid .ph{flex-basis:calc(var(--r)*110px)}
  .album-chapters{margin-bottom:32px}
  .lightbox figure{max-width:100vw}
  .lightbox img{max-height:calc(100vh - 140px)}
  .lightbox figcaption{padding:0 16px}
  .lb-prev,.lb-next{top:auto;bottom:8px;transform:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
@media print{
  .site-header,.site-footer,.reader-tools,.reader-neighbors,.reader-themes,.reader-topbar{display:none}
  .reader-sheet{border:0;box-shadow:none;padding:0}
}
