.landing-page .main-nav a { border-color: transparent; }
.landing-page .main-nav a:hover,
.landing-page .main-nav a.is-active { border-color: var(--cyan); }
.landing-page .inner-hero { min-height: 480px; }
.landing-page .inner-hero-image { background-image: var(--landing-hero, url("assets/hero-color-option-3-modern-avenue.png")); }
.landing-page .inner-hero-content { padding-top: 190px; padding-bottom: 58px; }
.landing-kicker { display: none; }
.landing-page .inner-hero h1 { max-width: 940px; font-size: 48px; }
.landing-page .inner-hero-content > p:last-child { max-width: 820px; font-size: 19px; }

.landing-section-nav { position: relative; z-index: 3; margin-top: -1px; border-bottom: 1px solid var(--line); background: #fff; }
.landing-section-nav-inner { width: min(1240px, calc(100% - 64px)); margin: 0 auto; padding: 20px 0; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: thin; }
.landing-section-nav a { flex: 0 0 auto; padding: 11px 15px; border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); background: #fff; font-size: 14px; font-weight: 700; text-decoration: none; transition: border-color .2s ease, color .2s ease, background .2s ease; }
.landing-section-nav a:hover { border-color: var(--cyan); color: var(--blue); }
.landing-section-nav a.is-active { border-color: var(--blue); color: #fff; background: var(--blue); }

.landing-main { padding: 82px 0 118px; background: #fff; }
.landing-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 78px; align-items: start; }
.landing-article { min-width: 0; }
.landing-lead { margin: 0 0 54px; padding: 34px 38px; border-left: 5px solid var(--cyan); border-radius: 0 var(--radius) var(--radius) 0; color: var(--ink); background: var(--paper); font-size: 21px; font-weight: 700; line-height: 1.55; }
.landing-lead > :first-child { margin-top: 0; }
.landing-lead > :last-child { margin-bottom: 0; }

.landing-richtext { color: #41536a; font-size: 18px; line-height: 1.74; }
.landing-richtext > :first-child { margin-top: 0; }
.landing-richtext p { margin: 0 0 24px; }
.landing-richtext h2 { position: relative; margin: 64px 0 24px; padding-top: 28px; border-top: 1px solid var(--line); color: var(--ink); font-size: 34px; line-height: 1.18; }
.landing-richtext h2::before { content: ""; position: absolute; top: -2px; left: 0; width: 72px; height: 3px; background: var(--cyan); }
.landing-richtext h3 { margin: 42px 0 18px; color: var(--ink); font-size: 25px; line-height: 1.25; }
.landing-richtext ul, .landing-richtext ol { margin: 24px 0 34px; padding: 0; display: grid; gap: 10px; list-style: none; }
.landing-richtext li { position: relative; padding: 17px 20px 17px 50px; border-radius: var(--radius); background: var(--paper); }
.landing-richtext li::before { content: ""; position: absolute; top: 24px; left: 22px; width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); }
.landing-richtext a { color: var(--blue); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.landing-richtext img { display: block; width: auto; max-width: 100%; height: auto !important; margin: 34px auto; border-radius: var(--radius); }
.landing-richtext table { width: 100%; margin: 30px 0; border-collapse: collapse; font-size: 16px; }
.landing-richtext th, .landing-richtext td { padding: 15px 17px; border: 1px solid var(--line); text-align: left; vertical-align: top; }
.landing-richtext th { color: var(--ink); background: var(--paper); }

.landing-richtext .activity-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.landing-richtext .activity-directory a { min-height: 170px; position: relative; padding: 26px 58px 26px 26px; align-items: flex-end; overflow: hidden; color: #fff; background: var(--blue); text-decoration: none; }
.landing-richtext .activity-directory a::after { content: "→"; position: absolute; right: 24px; bottom: 23px; color: var(--cyan); font-size: 23px; }
.landing-richtext .content-card-list { grid-template-columns: 1fr; }
.landing-richtext .content-card-list a { min-height: 112px; padding: 22px 24px; border: 1px solid var(--line); background: #fff; }
.landing-richtext .content-card-list a:hover { border-color: var(--cyan); }
.landing-richtext .partner-list { grid-template-columns: 1fr; }

.landing-sidebar { position: sticky; top: 28px; display: grid; gap: 18px; }
.landing-side-block { padding: 26px; border-radius: var(--radius); background: var(--paper); }
.landing-side-block h2 { margin: 0 0 18px; color: var(--ink); font-size: 21px; }
.landing-side-block p { margin: 0 0 12px; color: #506176; font-size: 15px; line-height: 1.55; }
.landing-side-block p:last-child { margin-bottom: 0; }
.landing-side-block a { color: var(--blue); font-weight: 700; }
.landing-contact { color: #fff; background: var(--blue-deep); }
.landing-contact h2, .landing-contact a { color: #fff; }
.landing-contact .landing-email { display: block; margin-top: 10px; color: #8ce7df; font-size: 14px; overflow-wrap: anywhere; }
.landing-contact p { margin-top: 18px; color: #c5d2df; }
.landing-cta { padding: 28px; border-radius: var(--radius); color: #fff; background: var(--blue); }
.landing-cta h2 { margin: 0 0 12px; font-size: 23px; }
.landing-cta p { margin: 0 0 20px; color: #dce8f3; font-size: 15px; }
.landing-cta a { display: inline-flex; align-items: center; gap: 12px; padding: 12px 15px; border-radius: var(--radius); color: var(--blue-deep); background: var(--cyan); font-size: 14px; font-weight: 800; text-decoration: none; }

.landing-rukovodstvo .landing-richtext > h3,
.landing-rukovodstvo .landing-richtext > p { margin: 0 0 16px; padding: 14px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.landing-rukovodstvo .landing-richtext img { display: block; width: min(100%, 800px); margin: 0; }
.landing-kontakty .landing-richtext { font-size: 20px; }

@media (max-width: 980px) {
  .landing-layout { grid-template-columns: 1fr; gap: 58px; }
  .landing-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .landing-page .inner-hero h1 { font-size: 42px; }
}

@media (max-width: 700px) {
  .landing-page .inner-hero { min-height: 450px; }
  .landing-page .inner-hero-image { background-color: var(--blue-deep); background-position: 70% top; background-size: auto 270px; background-repeat: no-repeat; }
  .landing-page .inner-hero-shade { background: linear-gradient(0deg, var(--blue-deep) 0%, var(--blue-deep) 43%, rgba(7,30,56,.9) 57%, rgba(7,30,56,.18) 76%, rgba(7,30,56,0) 92%); }
  .landing-page .inner-hero-content { padding-top: 275px; padding-bottom: 34px; }
  .landing-page .inner-hero h1 { font-size: 30px; }
  .landing-page .inner-hero-content > p:last-child { font-size: 14px; }
  .landing-kicker { margin-bottom: 9px; font-size: 11px; }
  .landing-section-nav-inner { width: calc(100% - 32px); padding: 14px 0; }
  .landing-section-nav a { padding: 10px 13px; font-size: 13px; }
  .landing-main { padding: 52px 0 78px; }
  .landing-layout { gap: 42px; }
  .landing-lead { margin-bottom: 42px; padding: 24px 22px; font-size: 18px; }
  .landing-richtext { font-size: 16px; line-height: 1.68; }
  .landing-richtext h2 { margin-top: 48px; padding-top: 23px; font-size: 28px; }
  .landing-richtext h3 { margin-top: 34px; font-size: 22px; }
  .landing-richtext li { padding: 15px 16px 15px 44px; }
  .landing-richtext li::before { top: 21px; left: 19px; }
  .landing-richtext .activity-directory { grid-template-columns: 1fr; }
  .landing-sidebar { grid-template-columns: 1fr; }
  .landing-side-block, .landing-cta { padding: 23px; }
  .landing-rukovodstvo .landing-richtext > h3,
  .landing-rukovodstvo .landing-richtext > p { padding: 8px; }
}

/* Page compositions inspired by Moscow city service layouts. */
.landing-page .inner-hero { min-height: 440px; }
.landing-page .inner-hero-content { padding-top: 170px; padding-bottom: 52px; }
.landing-page .inner-hero h1 { font-size: 50px; }
.landing-main { background: #f4f7fa; }
.landing-content-intro { max-width: 980px; margin: 0 0 34px; color: var(--ink); font-size: 22px; line-height: 1.58; }
.landing-content-intro > :last-child { margin-bottom: 0; }
.landing-content-section { min-width: 0; }
.landing-content-section h2 { margin-top: 0; padding-top: 0; border-top: 0; }
.landing-content-section h2::before { display: none; }

.landing-variant-editorial .landing-layout,
.landing-variant-timeline .landing-layout,
.landing-variant-showcase .landing-layout,
.landing-variant-people .landing-layout,
.landing-variant-directory .landing-layout,
.landing-variant-documents .landing-layout,
.landing-variant-faq .landing-layout,
.landing-variant-contact .landing-layout,
.landing-variant-partners .landing-layout,
.landing-variant-governance .landing-layout,
.landing-variant-activity-cards .landing-layout,
.landing-variant-activity-feed .landing-layout,
.landing-variant-activity-safety .landing-layout,
.landing-variant-activity-story .landing-layout,
.landing-variant-activity-community .landing-layout,
.landing-variant-document-library .landing-layout,
.landing-variant-current .landing-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }

.landing-variant-editorial .landing-sidebar,
.landing-variant-timeline .landing-sidebar,
.landing-variant-showcase .landing-sidebar,
.landing-variant-people .landing-sidebar,
.landing-variant-directory .landing-sidebar,
.landing-variant-documents .landing-sidebar,
.landing-variant-faq .landing-sidebar,
.landing-variant-contact .landing-sidebar,
.landing-variant-partners .landing-sidebar,
.landing-variant-governance .landing-sidebar,
.landing-variant-activity-cards .landing-sidebar,
.landing-variant-activity-feed .landing-sidebar,
.landing-variant-activity-safety .landing-sidebar,
.landing-variant-activity-story .landing-sidebar,
.landing-variant-activity-community .landing-sidebar,
.landing-variant-document-library .landing-sidebar,
.landing-variant-current .landing-sidebar { display: none; }

/* Editorial overview. */
.landing-variant-editorial .landing-richtext { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.landing-variant-editorial .landing-content-intro { grid-column: 1 / -1; margin-bottom: 26px; padding: 42px 46px; border-radius: var(--radius); background: #fff; }
.landing-variant-editorial .landing-content-section { min-height: 280px; padding: 38px 40px; border-radius: var(--radius); background: #fff; }
.landing-variant-editorial .landing-content-section:nth-of-type(3n + 1) { background: #eaf7f4; }
.landing-variant-editorial .landing-content-section:nth-of-type(4n + 2) { background: #edf3fb; }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) { color: #fff; background: var(--blue-deep); }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) h2,
.landing-variant-editorial .landing-content-section:nth-of-type(5n) a { color: #fff; }
.landing-variant-editorial .landing-content-section li { padding: 15px 0 15px 30px; border-top: 1px solid rgba(21, 69, 102, .16); border-radius: 0; background: transparent; }
.landing-variant-editorial .landing-content-section li::before { top: 23px; left: 4px; }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) li { color: #fff; border-color: rgba(255, 255, 255, .2); background: transparent; }
.landing-variant-editorial .landing-content-section:last-child { min-height: 0; grid-column: 1 / -1; }

/* Timeline. */
.landing-variant-timeline .landing-article { max-width: 1040px; }
.landing-variant-timeline .landing-richtext { position: relative; padding-left: 34px; }
.landing-variant-timeline .landing-richtext::before { content: ""; position: absolute; top: 10px; bottom: 0; left: 7px; width: 2px; background: #cdd8e4; }
.landing-variant-timeline .landing-richtext > p { position: relative; margin: 0 0 18px; padding: 26px 30px; border-radius: var(--radius); background: #fff; }
.landing-variant-timeline .landing-richtext > p::before { content: ""; position: absolute; top: 34px; left: -34px; width: 16px; height: 16px; border: 4px solid #f4f7fa; border-radius: 50%; background: var(--cyan); }
.landing-variant-timeline .landing-richtext > p:first-child { color: #fff; background: var(--blue); font-size: 22px; font-weight: 700; }

/* Structure and long thematic pages. */
.landing-variant-showcase .landing-richtext { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.landing-variant-showcase .landing-content-intro { grid-column: 1 / -1; }
.landing-variant-showcase .landing-content-section { padding: 36px 38px; border-radius: var(--radius); background: #fff; }
.landing-variant-showcase .landing-content-section:nth-of-type(3n) { background: #eaf7f4; }
.landing-variant-showcase .landing-content-section:nth-of-type(4n) { background: #edf3fb; }
.landing-variant-feature .landing-content-intro { padding: 32px 34px; border-left: 5px solid var(--cyan); border-radius: 0 var(--radius) var(--radius) 0; background: #fff; }
.landing-variant-feature .landing-content-section { margin-bottom: 22px; padding: 38px 40px; border-radius: var(--radius); background: #fff; }
.landing-variant-feature .landing-content-section:nth-of-type(even) { background: #eaf7f4; }
.landing-variant-feature .landing-content-section:nth-of-type(3n) { color: #fff; background: var(--blue); }
.landing-variant-feature .landing-content-section:nth-of-type(3n) h2,
.landing-variant-feature .landing-content-section:nth-of-type(3n) h3,
.landing-variant-feature .landing-content-section:nth-of-type(3n) a { color: #fff; }
.landing-variant-feature .landing-content-section:nth-of-type(3n) li { color: #fff; border: 1px solid rgba(255, 255, 255, .22); background: transparent; }

/* Activity directory with a stable hero and varied photo cards. */
.landing-variant-directory .landing-richtext .activity-directory { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.landing-variant-directory .activity-directory a { min-height: 280px; grid-column: span 6; padding: 32px 72px 32px 32px; isolation: isolate; background-position: center; background-size: cover; font-size: 24px; }
.landing-variant-directory .activity-directory a::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(4,24,44,.08), rgba(4,24,44,.88)); }
.landing-variant-directory .activity-directory a::after { content: "\2192"; }
.landing-variant-directory .activity-directory a:nth-child(1) { grid-column: span 7; background-image: url("assets/activity-organizational-illustration.webp"); }
.landing-variant-directory .activity-directory a:nth-child(2) { grid-column: span 5; background-image: url("assets/activity-legal-illustration.webp"); }
.landing-variant-directory .activity-directory a:nth-child(3) { grid-column: span 5; background-image: url("assets/activity-economic-illustration.webp"); }
.landing-variant-directory .activity-directory a:nth-child(4) { grid-column: span 7; background-image: url("assets/activity-labor-illustration.webp"); }
.landing-variant-directory .activity-directory a:nth-child(5) { background-image: url("assets/activity-finance-illustration.webp"); }
.landing-variant-directory .activity-directory a:nth-child(6) { background-image: url("assets/activity-social-illustration.webp"); }

/* Documents and questions. */
.landing-variant-documents .content-card-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.landing-variant-documents .content-card-list a { min-height: 190px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border: 0; border-radius: var(--radius); background: #fff; }
.landing-variant-documents .content-card-list a:first-child { grid-column: 1 / -1; min-height: 230px; color: #fff; background: var(--blue); }
.landing-variant-documents .content-card-list a:first-child span,
.landing-variant-documents .content-card-list a:first-child b { color: #fff; }
.landing-variant-documents .content-card-list b { color: var(--blue); }
.landing-variant-faq .content-card-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.landing-variant-faq .content-card-list a { min-height: 210px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border: 0; border-radius: var(--radius); background: #fff; }
.landing-variant-faq .content-card-list a:nth-child(4n + 2),
.landing-variant-faq .content-card-list a:nth-child(4n + 3) { background: #eaf7f4; }

/* Partners and contacts. */
.landing-variant-partners .partner-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.landing-variant-partners .partner-list a { min-height: 180px; padding: 28px; display: flex; align-items: flex-end; border: 0; border-radius: var(--radius); color: var(--ink); background: #fff; font-size: 18px; font-weight: 700; text-decoration: none; }
.landing-variant-partners .partner-list a:nth-child(3n + 2) { background: #eaf7f4; }
.landing-variant-partners .partner-list a:nth-child(4n) { background: #fff3e7; }
.landing-variant-contact .landing-article { padding: 52px 56px; border-radius: var(--radius); color: #fff; background: var(--blue-deep); }
.landing-variant-contact .landing-richtext,
.landing-variant-contact .landing-richtext h2,
.landing-variant-contact .landing-richtext a { color: #fff; }
.landing-variant-contact .landing-richtext h2 { margin-top: 0; padding-top: 0; border: 0; font-size: 42px; }
.landing-variant-contact .landing-richtext h2::before { display: none; }

/* Leadership keeps the original verified source cards but gives them a stronger rhythm. */
.landing-variant-people .landing-article { max-width: 1080px; }
.landing-variant-people .landing-lead { max-width: 860px; margin-bottom: 34px; background: #edf3fb; }
.landing-variant-people .landing-richtext { display: grid; gap: 16px; }
.landing-variant-people .landing-richtext > h3,
.landing-variant-people .landing-richtext > p { width: 100%; margin: 0; padding: 18px 22px; overflow: hidden; border: 0; border-left: 6px solid var(--cyan); background: #fff; box-shadow: 0 12px 32px rgba(9,37,65,.08); }
.landing-variant-people .landing-richtext > :nth-child(even) { border-left-color: var(--blue); }
.landing-variant-people .landing-richtext img { width: min(100%, 800px); margin: 0; border-radius: 0; }

/* Elected bodies. */
.governance-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.governance-grid a { min-height: 230px; grid-column: span 6; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border-radius: var(--radius); color: var(--ink); background: #fff; text-decoration: none; }
.governance-grid a:first-child { grid-column: span 7; color: #fff; background: var(--blue); }
.governance-grid a:nth-child(2) { grid-column: span 5; background: #dff3ef; }
.governance-grid a:last-child { grid-column: span 12; min-height: 170px; color: #fff; background: var(--blue-deep); }
.governance-grid a > span { color: var(--cyan-dark); font-size: 13px; font-weight: 800; text-transform: uppercase; }
.governance-grid a:first-child > span,
.governance-grid a:last-child > span { color: #8ce7df; }
.governance-grid strong { max-width: 480px; font-size: 27px; line-height: 1.2; }
.governance-grid b { color: inherit; font-size: 14px; }

/* Three distinct activity layouts. */
.landing-variant-activity-cards .content-card-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.landing-variant-activity-cards .content-card-list a { min-height: 230px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border: 0; border-radius: var(--radius); background: #fff; }
.landing-variant-activity-cards .content-card-list a:first-child { grid-column: 1 / -1; min-height: 270px; color: #fff; background: var(--blue); }
.landing-variant-activity-cards .content-card-list a:first-child { isolation: isolate; position: relative; overflow: hidden; background: url("assets/activity-organizational-hq.jpg") center / cover; }
.landing-variant-activity-cards .content-card-list a:first-child::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(5,31,57,.18), rgba(5,31,57,.92)); }
.landing-variant-activity-cards .content-card-list a:first-child span,
.landing-variant-activity-cards .content-card-list a:first-child b { color: #fff; }
.landing-variant-activity-cards .content-card-list a:nth-child(3) { background: #dff3ef; }

.landing-variant-activity-feed .content-card-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; counter-reset: feed; }
.landing-variant-activity-feed .content-card-list a { min-height: 180px; padding: 28px 30px; display: grid; align-content: space-between; border: 0; border-radius: var(--radius); background: #fff; counter-increment: feed; }
.landing-variant-activity-feed .content-card-list a::before { content: "Материал"; color: var(--cyan-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.landing-variant-activity-feed .content-card-list a:first-child { grid-column: 1 / -1; min-height: 260px; color: #fff; background: var(--blue-deep); }
.landing-variant-activity-feed .content-card-list a:first-child::before,
.landing-variant-activity-feed .content-card-list a:first-child span,
.landing-variant-activity-feed .content-card-list a:first-child b { color: #fff; }
.landing-variant-activity-feed .content-card-list a:nth-child(4n + 2) { background: #edf3fb; }

.landing-variant-activity-safety .content-card-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.landing-variant-activity-safety .content-card-list a { min-height: 310px; padding: 34px; display: flex; flex-direction: column; justify-content: flex-end; border: 0; border-radius: var(--radius); color: #fff; background: var(--blue); }
.landing-variant-activity-safety .content-card-list a:nth-child(2) { background: var(--blue-deep); }
.landing-variant-activity-safety .content-card-list a:first-child { isolation: isolate; position: relative; overflow: hidden; background: url("assets/activity-labor-hq.png") center / cover; }
.landing-variant-activity-safety .content-card-list a:first-child::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(5,31,57,.12), rgba(5,31,57,.9)); }
.landing-variant-activity-safety .content-card-list a span,
.landing-variant-activity-safety .content-card-list a b { color: #fff; }

/* Financial and social pages use source text in modular landing blocks. */
.activity-story-block { margin-bottom: 20px; padding: 42px 44px; border-radius: var(--radius); background: #fff; }
.activity-story-block.activity-story-primary { color: #fff; background: var(--blue); }
.activity-story-block h2 { margin: 0 0 20px; padding: 0; border: 0; color: var(--ink); }
.activity-story-block h2::before { display: none; }
.activity-story-block.activity-story-primary h2 { color: #fff; }
.activity-story-block p:last-child { margin-bottom: 0; }
.activity-story-block .inline-action { display: inline-flex; margin-top: 8px; font-weight: 800; }
.activity-story-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.activity-story-links a { min-height: 210px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border-radius: var(--radius); color: var(--ink); background: #dff3ef; text-decoration: none; }
.activity-story-links a:nth-child(2) { color: #fff; background: var(--blue-deep); }
.activity-story-links a > span { color: var(--cyan-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.activity-story-links a:nth-child(2) > span { color: #8ce7df; }
.activity-story-links strong { font-size: 26px; }

/* Document hub and category feeds. */
.document-hub { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.document-hub a { min-height: 240px; grid-column: span 4; padding: 28px; display: flex; flex-direction: column; border-radius: var(--radius); color: var(--ink); background: #fff; text-decoration: none; }
.document-hub a:nth-child(1),
.document-hub a:nth-child(2) { grid-column: span 6; }
.document-hub a:nth-child(1) { color: #fff; background: var(--blue); }
.document-hub a:nth-child(2) { background: #dff3ef; }
.document-hub a:nth-child(5) { color: #fff; background: var(--blue-deep); }
.document-hub strong { margin: 4px 0 16px; font-size: 24px; line-height: 1.2; }
.document-hub p { margin: 0 0 22px; color: #607186; font-size: 15px; line-height: 1.45; }
.document-hub a:nth-child(1) p,
.document-hub a:nth-child(5) p { color: #dce8f3; }
.document-hub b { margin-top: auto; color: inherit; font-size: 14px; }

.document-feed { display: grid; gap: 14px; }
.document-feed a { min-height: 145px; padding: 26px 28px; display: grid; grid-template-columns: 140px minmax(0, 1fr) auto; gap: 24px; align-items: center; border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); background: #fff; text-decoration: none; }
.document-feed a:hover { border-color: var(--cyan); }
.document-feed-meta { color: var(--cyan-dark); font-size: 13px; font-weight: 800; text-transform: uppercase; }
.document-feed strong { font-size: 19px; line-height: 1.35; }
.document-feed b { color: var(--blue); font-size: 14px; white-space: nowrap; }

.charter-document { display: grid; gap: 18px; }
.charter-document-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 28px; border-radius: var(--radius); color: #fff; background: var(--blue); }
.charter-document-head span { display: block; margin-bottom: 5px; color: #aeeae4; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.charter-document-head strong { display: block; max-width: 760px; font-size: 20px; line-height: 1.35; }
.charter-document-head a { flex: 0 0 auto; padding: 13px 18px; border-radius: 8px; color: var(--blue-deep); background: #fff; font-size: 14px; font-weight: 800; text-decoration: none; }
.charter-document-frame { display: block; width: 100%; height: min(82vh, 1040px); min-height: 720px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }

/* Current materials use a consistent media frame, regardless of source proportions. */
.landing-variant-current .listing-grid { align-items: start; }
.landing-variant-current .listing-grid > a img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }

/* Contacts. */
.contact-map { margin-top: 38px; overflow: hidden; border-radius: var(--radius); background: #fff; }
.contact-map iframe { display: block; width: 100%; height: 470px; border: 0; }

/* Site search. */
.landing-variant-search .landing-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
.landing-variant-search .landing-sidebar { display: none; }
.landing-variant-search .landing-article { width: 100%; max-width: 1020px; margin: 0 auto; }
.site-search-page { width: 100%; }
.site-search-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; margin-bottom: 25px; }
.site-search-form input { width: 100%; min-width: 0; height: 56px; padding: 0 18px; border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); background: #fff; font: inherit; font-size: 17px; outline: none; }
.site-search-form input:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(31,91,158,.12); }
.site-search-form button { min-width: 120px; height: 56px; padding: 0 24px; border: 0; border-radius: var(--radius); color: #fff; background: var(--blue); font: inherit; font-weight: 800; cursor: pointer; }
.search-status { margin: 0 0 24px; color: #53657a; font-size: 16px; }
.site-search-results { display: grid; gap: 14px; }
.site-search-result { min-height: 170px; padding: 28px 30px; display: block; border: 1px solid transparent; border-radius: var(--radius); color: #41536a; background: #fff; text-decoration: none; transition: border-color .2s ease, transform .2s ease; }
.site-search-result:hover { border-color: var(--cyan); transform: translateY(-2px); }
.site-search-result > span { display: block; margin-bottom: 9px; color: var(--cyan-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.landing-richtext .site-search-result h2 { margin: 0 0 11px; padding: 0; border: 0; color: var(--ink); font-size: 24px; line-height: 1.25; }
.landing-richtext .site-search-result h2::before { display: none; }
.site-search-result p { margin: 0 0 16px; color: #53657a; }
.site-search-result b { color: var(--blue); font-size: 14px; }
.site-search-result b i { color: var(--cyan-dark); font-style: normal; }

@media (max-width: 980px) {
  .landing-variant-editorial .landing-richtext,
  .landing-variant-showcase .landing-richtext,
  .landing-variant-documents .content-card-list,
  .landing-variant-faq .content-card-list { grid-template-columns: 1fr; }
  .landing-variant-documents .content-card-list a:first-child { grid-column: auto; }
  .landing-variant-partners .partner-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .document-hub a,
  .document-hub a:nth-child(1),
  .document-hub a:nth-child(2) { grid-column: span 6; }
  .governance-grid a,
  .governance-grid a:first-child,
  .governance-grid a:nth-child(2) { grid-column: span 6; }
  .governance-grid a:last-child { grid-column: span 12; }
}

@media (max-width: 700px) {
  .landing-page .inner-hero { min-height: 440px; }
  .landing-page .inner-hero-content { padding-top: 270px; }
  .landing-page .inner-hero h1 { font-size: 30px; }
  .landing-content-intro { font-size: 18px; }
  .landing-variant-editorial .landing-content-intro,
  .landing-variant-editorial .landing-content-section,
  .landing-variant-showcase .landing-content-section,
  .landing-variant-feature .landing-content-intro,
  .landing-variant-feature .landing-content-section { min-height: 0; padding: 25px 23px; }
  .landing-variant-timeline .landing-richtext { padding-left: 24px; }
  .landing-variant-timeline .landing-richtext > p { padding: 21px 20px; }
  .landing-variant-timeline .landing-richtext > p::before { left: -24px; }
  .landing-variant-directory .landing-richtext .activity-directory { grid-template-columns: 1fr; }
  .landing-variant-directory .activity-directory a,
  .landing-variant-directory .activity-directory a:nth-child(n) { min-height: 220px; grid-column: auto; padding: 25px 58px 25px 24px; font-size: 20px; }
  .landing-variant-partners .partner-list { grid-template-columns: 1fr; }
  .landing-variant-contact .landing-article { padding: 32px 25px; }
  .landing-variant-contact .landing-richtext h2 { font-size: 30px; }
  .landing-variant-contact .landing-richtext h2 { font-size: 27px; line-height: 1.15; }
  .landing-variant-people .landing-richtext > h3,
  .landing-variant-people .landing-richtext > p,
  .landing-variant-people .landing-richtext > :nth-child(even) { width: 100%; margin-left: 0; padding: 10px; }
  .governance-grid,
  .document-hub { grid-template-columns: 1fr; }
  .governance-grid a,
  .governance-grid a:first-child,
  .governance-grid a:nth-child(2),
  .governance-grid a:last-child,
  .document-hub a,
  .document-hub a:nth-child(n) { min-height: 190px; grid-column: auto; }
  .landing-variant-activity-cards .content-card-list,
  .landing-variant-activity-feed .content-card-list,
  .landing-variant-activity-safety .content-card-list,
  .activity-story-links { grid-template-columns: 1fr; }
  .landing-variant-activity-cards .content-card-list a:first-child,
  .landing-variant-activity-feed .content-card-list a:first-child { grid-column: auto; }
  .landing-variant-activity-safety .content-card-list a { min-height: 230px; }
  .activity-story-block { padding: 28px 24px; }
  .document-feed a { grid-template-columns: 1fr; gap: 12px; }
  .document-feed b { white-space: normal; }
  .charter-document-head { align-items: flex-start; flex-direction: column; padding: 20px; }
  .charter-document-head strong { font-size: 17px; }
  .charter-document-head a { width: 100%; text-align: center; }
  .charter-document-frame { height: 72vh; min-height: 520px; }
  .contact-map iframe { height: 360px; }
  .site-search-form { grid-template-columns: 1fr; }
  .site-search-form button { width: 100%; }
  .site-search-result { min-height: 0; padding: 23px 21px; }
  .landing-richtext .site-search-result h2 { font-size: 20px; }
}

/* Client revisions: smaller inner heroes and denser editorial pages. */
.landing-page .inner-hero { min-height: 320px; }
.landing-page .inner-hero-content { padding-top: 126px; padding-bottom: 36px; }
.landing-page .inner-hero h1 { font-size: 44px; }
.landing-page .inner-hero-content > p:last-child { margin-top: 12px; font-size: 16px; }
.landing-page .inner-hero-content > p:empty { display: none; }
.landing-kicker { margin-bottom: 9px; font-size: 11px; }
.breadcrumbs { margin-bottom: 23px; }
.landing-main { padding: 56px 0 86px; }
.landing-struktura .landing-main { padding-top: 30px; }
.landing-lead { margin-bottom: 36px; padding: 27px 31px; font-size: 18px; }
.landing-richtext { font-size: 16px; line-height: 1.58; }
.landing-richtext p { margin-bottom: 16px; }
.landing-richtext h2 { margin: 46px 0 18px; padding-top: 22px; font-size: 26px; }
.landing-richtext h3 { margin: 32px 0 14px; font-size: 22px; }
.landing-content-intro { font-size: 19px; }

/* The submenu size intentionally stays unchanged. */
.landing-variant-editorial .landing-content-intro { width: 100%; max-width: none; padding: 34px 38px; }
.landing-variant-editorial .landing-content-section { min-height: 235px; padding: 31px 33px; }
.landing-variant-editorial .landing-content-section h2 { font-size: 25px; line-height: 1.22; }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) { color: inherit; background: #fff; }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) h2,
.landing-variant-editorial .landing-content-section:nth-of-type(5n) a { color: var(--ink); }
.landing-variant-editorial .landing-content-section:nth-of-type(5n) li { color: inherit; border-color: rgba(21,69,102,.16); }
.landing-variant-editorial .landing-content-section:last-child { color: #fff; background: var(--blue); }
.landing-variant-editorial .landing-content-section:last-child h2,
.landing-variant-editorial .landing-content-section:last-child a { color: #fff; }
.landing-variant-editorial .landing-content-section:last-child li { color: #fff; border-color: rgba(255,255,255,.2); }

.landing-variant-timeline .landing-layout { grid-template-columns: minmax(0, 1fr) 310px; gap: 78px; }
.landing-variant-timeline .landing-article { max-width: none; }
.landing-variant-timeline .landing-sidebar { display: grid; }
.landing-variant-timeline .landing-richtext { padding-left: 0; display: grid; gap: 20px; font-size: 16px; line-height: 1.62; }
.landing-variant-timeline .landing-richtext::before,
.landing-variant-timeline .landing-richtext > p::before { display: none; }
.history-period { padding: 34px 38px; border-radius: var(--radius); background: #fff; }
.history-period:nth-child(3) { background: #eaf7f4; }
.history-period:nth-child(4) { background: #edf3fb; }
.history-period:nth-child(5) { background: #eaf7f4; }
.history-period h2 { margin: 0 0 20px; padding: 0; border: 0; color: var(--ink); font-size: 26px; line-height: 1.2; }
.history-period h2::before { display: none; }
.history-period p { margin: 0 0 16px; }
.history-period p:last-child { margin-bottom: 0; }
.history-period-intro { border-left: 5px solid var(--cyan); border-radius: 0 var(--radius) var(--radius) 0; font-size: 18px; }
.landing-istoriya .inner-hero { min-height: 285px; }
.landing-istoriya .inner-hero-content { padding-bottom: 25px; }

.landing-variant-showcase .landing-richtext { grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); gap: 16px; }
.landing-variant-showcase .landing-content-section { padding: 27px 29px; }
.landing-variant-showcase .landing-content-section:first-child { grid-column: 1 / -1; padding: 0 0 8px; background: transparent; }
.landing-variant-showcase .landing-content-section:first-child h2 { max-width: 1050px; font-size: 28px; line-height: 1.25; }
.landing-variant-showcase .landing-content-section:not(:first-child) h2 { font-size: 20px; line-height: 1.25; }
.landing-variant-showcase .landing-content-section p { margin: 0 0 7px; line-height: 1.42; }
.landing-variant-showcase .landing-content-section p:empty { display: none; }

.landing-deyatelnost .inner-hero h1 { display: none; }
.landing-deyatelnost .inner-hero-content > p:last-child { margin-top: 0; font-size: 20px; font-weight: 700; }
.landing-deyatelnost .inner-hero { min-height: 300px; }
.landing-variant-directory .activity-directory a { min-height: 240px; font-size: 21px; }

.landing-variant-people .landing-lead:empty { display: none; }
.landing-variant-people .landing-richtext { gap: 13px; }

.governance-grid a,
.governance-grid a:first-child,
.governance-grid a:nth-child(2),
.governance-grid a:last-child { min-height: 200px; grid-column: span 4; }
.governance-grid a:last-child { color: #fff; background: var(--blue-deep); }

.document-hub a { min-height: 210px; }
.document-hub a:nth-child(1) { grid-column: span 12; }
.document-hub a:nth-child(2),
.document-hub a:nth-child(3),
.document-hub a:nth-child(4) { grid-column: span 4; }
.document-hub a:nth-child(5),
.document-hub a:nth-child(6) { grid-column: span 6; }
.document-hub a:nth-child(2) { background: #fff; }
.document-hub a:nth-child(5) { color: var(--ink); background: #dff3ef; }
.document-hub a:nth-child(5) p { color: #607186; }
.document-hub a:nth-child(4) { color: #fff; background: var(--blue-deep); }
.document-hub a:nth-child(4) p { color: #dce8f3; }

.landing-variant-partners .partner-list,
.landing-variant-faq .content-card-list,
.landing-variant-documents .content-card-list,
.landing-variant-activity-cards .content-card-list,
.landing-variant-activity-feed .content-card-list,
.landing-variant-activity-safety .content-card-list,
.activity-story-links { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.landing-variant-partners .partner-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 980px) {
  .landing-variant-partners .partner-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .landing-variant-timeline .landing-layout { grid-template-columns: 1fr; gap: 0; }
  .landing-variant-timeline .landing-sidebar { display: none; }
}

@media (max-width: 700px) {
  .landing-page .inner-hero { min-height: 395px; }
  .landing-page .inner-hero-content { padding-top: 245px; padding-bottom: 28px; }
  .landing-page .inner-hero h1 { font-size: 27px; }
  .landing-main { padding: 42px 0 64px; }
  .landing-struktura .landing-main { padding-top: 24px; }
  .landing-variant-timeline .landing-richtext { padding-left: 0; font-size: 15px; }
  .history-period { padding: 24px 22px; }
  .history-period h2 { font-size: 22px; }
  .history-period-intro { font-size: 16px; }
  .landing-variant-editorial .landing-content-section h2 { font-size: 22px; }
  .landing-istoriya .inner-hero { min-height: 365px; }
  .landing-variant-showcase .landing-richtext { grid-template-columns: 1fr; }
  .landing-variant-partners .partner-list { grid-template-columns: 1fr; }
  .landing-variant-showcase .landing-content-section:first-child h2 { font-size: 22px; }
  .landing-deyatelnost .inner-hero { min-height: 365px; }
  .landing-deyatelnost .inner-hero-content { padding-top: 270px; }
  .governance-grid a,
  .governance-grid a:first-child,
  .governance-grid a:nth-child(2),
  .governance-grid a:last-child,
  .document-hub a:nth-child(n) { min-height: 175px; grid-column: auto; }
}
