/* T02–T04: approved illustration, editorial rows and native linked materials. */
.information-body { overflow-wrap: anywhere; }
.information-page { padding-bottom: 56px; }
.information-hero { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); align-items: center; gap: 40px; background: var(--paper); border-block: 1px solid var(--line); padding: 40px; }
.information-hero h1 { overflow-wrap: anywhere; }
.information-hero .intro { margin-top: 24px; font-size: 19px; }
.information-art { width: 100%; max-height: 260px; object-fit: contain; mix-blend-mode: darken; }
.information-directions { padding-block: 56px; }
.information-directions > h2 { margin-bottom: 32px; }
.information-content { padding-block: 32px; }
.information-direction-content { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); gap: 64px; }
.information-content .information-body { width: 100%; max-width: 870px; margin: 0; padding: 0; }
.information-aside { min-width: 0; align-self: start; border-top: 2px solid var(--accent); margin-top: 26px; }
.information-aside h2 { font-size: 28px; margin-top: 20px; }
.information-aside nav { display: grid; margin-top: 16px; }
.information-aside a { padding: 18px 0; border-bottom: 1px solid var(--line); }
.information-materials { max-width: 870px; padding-block: 24px 48px; }
.information-materials > h2 { margin-bottom: 28px; }
.information-materials > p { padding-block: 16px; }
.information-document-group ul { margin: 0; padding: 0 24px 24px; }
.information-document-group li { padding-block: 10px; overflow-wrap: anywhere; }
.information-document-group a { display: block; padding-block: 6px; }
.information-invitation { margin-top: 24px; }
.information-page .direction-row > * { min-width: 0; overflow-wrap: anywhere; }
.reading-applied .information-hero .intro,
.reading-applied .information-page .direction-row p,
.reading-applied .information-page .direction-row .go,
.reading-applied .information-document-group,
.reading-applied .information-document-group summary { font-size: calc(18px * var(--reading-scale, 1)); }
.reading-applied .information-aside h2 { font-size: calc(28px * var(--reading-scale, 1)); }
.reading-applied[data-reading-scale="200"] .information-hero,
.reading-applied[data-reading-scale="200"] .information-direction-content { grid-template-columns: 1fr; }
.reading-applied[data-reading-theme="black"] .information-art { mix-blend-mode: screen; }
@media (max-width: 1099px) {
  .information-hero { gap: 24px; padding: 28px; }
  .information-direction-content { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 760px) {
  .information-hero { grid-template-columns: 1fr; padding: 24px 20px; }
  .information-art { width: min(100%, 280px); max-height: 170px; justify-self: center; }
  .information-hero h1 { font-size: 38px; letter-spacing: -1px; }
  .information-directions { padding-block: 36px; }
}
/* Keep the previously accepted centred article column on non-direction pages. */
.information-content:not(.information-direction-content) { padding-block: 0; }
.information-content:not(.information-direction-content) .information-body { margin: 0 auto 40px; }
.hide-images .information-hero { grid-template-columns: 1fr; }
/* Compact portrait card of St Philaret on «О гимназии» and «Святитель Филарет». */
.information-body .portrait-card { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 28px; align-items: center; margin: 28px 0 36px; padding: 22px; background: var(--paper); border-left: 3px solid var(--accent); }
.information-body .news-gallery:has(> .portrait-card) { display: block; margin: 28px 0 36px; }
.information-body .news-gallery .portrait-card { margin: 0; }
.information-body .portrait-card img { display: block; width: 200px; height: auto; }
.information-body .portrait-card a { display: block; }
.information-body .portrait-card figcaption { margin: 0; font: 24px/1.25 Georgia, serif; color: var(--ink); overflow-wrap: normal; }
.information-body .portrait-card figcaption small { display: block; margin-top: 10px; font: 14px/1.5 Arial, sans-serif; color: var(--muted); }
.hide-images .information-body .portrait-card { grid-template-columns: 1fr; }
@media (max-width: 600px) {
  .information-body .portrait-card { grid-template-columns: 112px minmax(0, 1fr); gap: 16px; padding: 16px; }
  .information-body .portrait-card img { width: 112px; }
  .information-body .portrait-card figcaption { font-size: 19px; }
}
