/* Readable type and a tighter rhythm across the retained Flask site. */
:root { --section-space:clamp(36px,4vw,60px); }
body { font-size:18px; line-height:1.6; }
.container,.anniversary-panel,.anniversary-hero .hero-content { width:min(1360px,92%); }
h2,.contest-section h2,.mission-copy h2,.closing-copy h2,.anniversary-compact h2,.section-heading h2 { font-size:clamp(36px,4vw,60px); line-height:1.12; margin-bottom:22px; }
.eyebrow { font-size:12px; letter-spacing:.13em; }
.nav-links { font-size:16px; gap:24px; }
.identity { font-size:13px; }
.project-label { font-size:12px; }
.top { min-height:76px; }
.nav { min-height:60px; }
.contest-section,.anniversary-compact,.mission-visual,.nominations-visual,.projects,.stages,.closing.closing-visual { min-height:0; padding-top:var(--section-space); padding-bottom:var(--section-space); }
.contest-section::before,.anniversary-compact::before,.projects::before,.closing.closing-visual::before { inset:10px 14px; }
.anniversary-topline { margin-bottom:24px; padding-bottom:16px; }
.anniversary-main-row,.mission-editorial,.mission-grid,.closing-composition { gap:32px; }
.mission-editorial { margin-top:24px; align-items:start; }
.anniversary-intro-copy,.mission-copy p,.closing-copy p,.nomination-heading>p,.contest-section p,.contest-section li,.intro>div p { font-size:19px; line-height:1.65; max-width:none; }
.mission-copy .large-copy,.large-copy { font-size:23px!important; line-height:1.5!important; }
.anniversary-case p,.anniversary-pillars p,.organizer-strip p,.nomination-caption p,.timeline-grid p,.feature p,.real-project p,.contest-card p,.contest-card li,.document-item p,.regulation-text details p { font-size:18px; line-height:1.6; }
.anniversary-case figcaption,.case-slide figcaption { min-height:0; padding:22px; }
.anniversary-case h3,.anniversary-pillars h3,.contest-card h3,.nomination-caption h3,.project-title,.feature h3 { font-size:clamp(28px,2.5vw,36px); line-height:1.18; }
.anniversary-case img { height:250px; }
.anniversary-pillars { margin-top:24px; padding-top:22px; gap:24px; }
.anniversary-pillars h3 { margin:10px 0; }
.mission-photo,.closing-photo { margin:0; }
.mission-photo img { height:440px; }
.mission-copy h2 { margin-bottom:18px; }
.mission-copy p,.closing-copy p { margin:0 0 18px; }
.mission-topics { margin:20px 0; }
.mission-topics span { font-size:16px; padding:10px 0; }
.mission-visual .organizer-strip,.organizer-strip { margin-top:24px; padding-top:22px; gap:32px; }
.organizer-strip span,.case-kicker,.timeline-grid article>span { font-size:12px; letter-spacing:.1em; }
.nomination-heading { gap:28px; }
.nomination-heading>p { max-width:440px; }
.nomination-gallery,.nomination-grid { margin-top:26px; gap:20px; }
.nomination-caption { padding:22px; }
.nomination-caption h3 { margin-bottom:14px; }
.nomination-caption p { margin-bottom:18px; }
.nomination-image,.nomination-01 .nomination-image,.nomination-02 .nomination-image { height:260px; }
.nomination-details,.nomination-place,.text-link,.real-project>.text-link,.closing-copy .text-link { font-size:15px; }
.nomination-note { font-size:15px!important; line-height:1.6; margin-top:20px; }
.nomination-credit,.case-credit { font-size:12px; line-height:1.5; }
.timeline-grid { gap:24px; margin:26px 0; }
.timeline-grid article { padding-top:20px; }
.timeline-grid h3 { font-size:32px; margin:14px 0; }
.intro { padding:36px 0; gap:24px; }
.feature { padding-left:22px; }
.line-icon { margin-bottom:12px; }
.section-heading { margin-bottom:24px; }
.project-grid { gap:24px; }
.project-card img { height:260px; }
.project-title { margin-top:16px; }
.project-card small { font-size:15px; }
.closing-photo img { height:360px; }
.button,.anniversary-hero .button { font-size:16px; min-height:50px; padding:14px 22px; letter-spacing:.015em; }
.document-hero { padding:40px 0; }
.document-hero h1 { font-size:clamp(48px,5.4vw,78px); margin-bottom:20px; }
.document-hero p { font-size:21px; max-width:950px; margin-bottom:0; }
.contest-card,.demo-panel { padding:24px; }
.document-list,.faq { padding:32px 0; }
.document-item { padding:24px 0; gap:24px; }
.document-item h2 { font-size:36px; }
.regulation-text summary { font-size:23px; }
.application-demo { padding:40px 0; }
.demo-grid { gap:24px; margin:24px 0 32px; align-items:start; }
.demo-intro,.demo-explanation p { font-size:19px; color:var(--muted); }
.demo-panel label,.demo-panel input,.demo-panel select,#demo-status,.demo-results table { font-size:17px; }
.demo-panel input,.demo-panel select { margin-bottom:18px; }
footer { padding:32px 0 20px; }
.footer-row { gap:28px; }
.footer-row p,.footer-row>div:nth-child(2) { font-size:16px; }
.photo-credit { margin-top:22px; font-size:12px; line-height:1.6; }
/* Keep hero metadata in normal flow so enlarged copy cannot collide. */
.anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 138px); }
.anniversary-hero.photo-hero.refined-hero .hero-content { padding:42px 0 30px; }
.refined-hero .hero-editorial-panel { width:min(690px,100%); padding:30px 34px; }
.refined-hero .hero-editorial-panel h1 { font-size:clamp(58px,6vw,88px); margin-bottom:20px; }
.anniversary-hero.photo-hero.refined-hero .eyebrow { font-size:12px; margin-bottom:20px; }
.anniversary-hero.photo-hero.refined-hero .hero-subtitle { font-size:20px; line-height:1.6; max-width:580px; margin-bottom:18px; }
.anniversary-hero.photo-hero.refined-hero .hero-dedication { font-size:16px; line-height:1.6; margin-bottom:20px; }
.anniversary-hero.refined-hero .button { font-size:16px; padding:14px 20px; }
.anniversary-hero.photo-hero.refined-hero .hero-status,.anniversary-hero.photo-hero.refined-hero .hero-footnote { position:relative; left:auto; right:auto; bottom:auto; width:min(1360px,92%); max-width:none; margin:0 auto 18px; font-size:12px; line-height:1.6; flex-wrap:wrap; gap:12px 24px; }
@media(max-width:1050px) { .nav-links { gap:14px; font-size:14px; } .nav-links .nav-cta { margin-left:0; } .nomination-caption h3 { font-size:29px; } }
@media(max-width:800px) { .anniversary-main-row,.mission-editorial,.mission-grid,.closing-composition,.demo-grid { grid-template-columns:1fr; gap:24px; } .nomination-heading>p { max-width:none; margin-top:18px; } .mission-photo img,.closing-photo img { height:320px; } }
@media(max-width:720px) { :root { --section-space:32px; } body { font-size:17px; } .container,.anniversary-panel,.anniversary-hero .hero-content { width:90%; } .nav-links { font-size:17px; } .contest-section p,.contest-section li,.mission-copy p,.closing-copy p,.anniversary-intro-copy { font-size:18px; } .anniversary-pillars,.organizer-strip,.timeline-grid { gap:20px; } .feature { padding:18px 0 0; } .refined-hero .hero-editorial-panel { padding:24px; } .refined-hero .hero-editorial-panel h1 { font-size:clamp(46px,9vw,64px); } .anniversary-hero.photo-hero.refined-hero .hero-content { padding:32px 0 24px; } .anniversary-hero.photo-hero.refined-hero .hero-subtitle { font-size:18px; } .anniversary-hero.photo-hero.refined-hero .hero-dedication { font-size:15px; } .anniversary-hero.photo-hero.refined-hero .eyebrow { font-size:11px; } .anniversary-hero.photo-hero.refined-hero .hero-status,.anniversary-hero.photo-hero.refined-hero .hero-footnote { width:90%; font-size:11px; gap:8px 14px; } .button,.anniversary-hero.refined-hero .button { font-size:15px; padding:13px 17px; } .buttons { flex-wrap:wrap; gap:12px; } .document-item { flex-wrap:wrap; } }
@media(max-width:380px) { .refined-hero .hero-editorial-panel { padding:22px 18px; } .refined-hero .hero-editorial-panel h1 { font-size:43px; } }
/* Sections from the approved site brief. */
.institution-strip { display:flex; gap:22px; align-items:center; font-size:13px; color:var(--paper); line-height:1.35; }
.institution-strip span+span { border-left:1px solid var(--rule); padding-left:20px; }
.top { flex-wrap:wrap; gap:20px; padding-block:14px; }
.top .tricolor { display:none; }
.nav { flex-wrap:wrap; padding-block:10px; gap:12px; }
.nav-links { flex-wrap:wrap; gap:10px 20px; }
.nav-links a { padding-block:8px; }
.refined-hero .hero-editorial-panel { width:min(780px,100%); }
.refined-hero .hero-editorial-panel h1 { font-size:clamp(48px,5.3vw,78px); }
.brief-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:26px; }
.brief-stats.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.brief-stats article { border-top:1px solid var(--gold); padding:22px 0 0; }
.brief-stats b { display:block; font:32px/1.2 Arial,Helvetica,sans-serif; color:var(--gold); }
.brief-stats.three b { font-size:clamp(56px,6vw,88px); }
.brief-stats p { margin:12px 0 0; }
.panorama-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:24px 0; }
.panorama-strip figure { margin:0; }
.panorama-strip img { width:100%; height:270px; object-fit:cover; }
.panorama-strip figcaption { font-size:15px; padding:12px 0; color:var(--gold); }
.partner-grid,.award-slots { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:26px 0; }
.award-slots>div { padding:24px; background:linear-gradient(135deg,#315e4e,#143e32); border:1px solid var(--rule); }
.award-slots h3 { font-size:34px; margin:20px 0 14px; }
.award-slots span { font-size:12px; color:var(--gold); }
.format-tags { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.format-tags span { padding:12px 16px; border:1px solid var(--rule); font-size:16px; }
.book-layout { display:grid; grid-template-columns:1fr 1.15fr; gap:40px; align-items:center; }
.book-scene { perspective:1000px; padding:24px 0; }
.album { display:grid; grid-template-columns:1fr 1fr; color:#183b30; transform:rotateX(7deg); box-shadow:0 20px 32px #00170c66; transition:transform .5s; }
.album:hover { transform:rotateX(0); }
.album-page { min-height:350px; padding:22px; background:#e8dfc8; }
.album-page>span { font-size:10px; letter-spacing:.1em; }
.album-left { transform-origin:right; animation:book-open 1.3s ease-out; background:linear-gradient(90deg,#eee7d6 85%,#c5bba2); }
.album-left img { width:100%; height:160px; object-fit:cover; margin:22px 0; }
.album-page h3 { font-size:32px; line-height:1.15; color:#183b30; }
.album-right { background:linear-gradient(90deg,#c5bba2,#eee7d6 12%); display:flex; flex-direction:column; justify-content:space-between; }
.album-right h3 { font-size:40px; margin:24px 0; }
.album-right p { font-size:15px; color:#315244; }
@keyframes book-open { from { transform:rotateY(55deg); } to { transform:rotateY(0); } }
.contact-mail { font-size:clamp(18px,2vw,27px); color:var(--gold); overflow-wrap:anywhere; }
.social-pending { display:flex; flex-wrap:wrap; gap:18px; margin-top:24px; font-size:14px; color:var(--muted); }
.map-layout { display:grid; grid-template-columns:1.6fr 1fr; gap:24px; align-items:start; }
.russia-map { background:radial-gradient(ellipse,#295443,#123c32); border:1px solid var(--rule); padding:10px; }
.russia-map svg { width:100%; display:block; }
.map-pin { cursor:pointer; }
.map-pin:hover circle:last-child,.map-pin:focus circle:last-child { fill:#fff; stroke:#fff; stroke-width:3px; }
.map-city-buttons { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.map-city-buttons button { background:transparent; border:1px solid var(--rule); padding:12px; color:var(--paper); cursor:pointer; }
.map-city-buttons button[aria-pressed=true] { background:var(--gold); color:#123c32; }
.map-project-panel { padding:22px; border:1px solid var(--rule); min-width:0; }
.map-project h3 { font-size:32px; }
.comparison { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:20px; }
.comparison figure { margin:0; }
.comparison img { width:100%; height:170px; object-fit:cover; }
.comparison figcaption { padding-top:10px; font-size:16px; }
.before-pending { min-height:170px; padding:16px; background:#ffffff07; border:1px dashed var(--rule); }
.before-pending p { font-size:15px; margin-top:16px; }
@media(max-width:900px) { .book-layout,.map-layout { grid-template-columns:1fr; } .institution-strip { gap:12px; font-size:11px; } .institution-strip span+span { padding-left:12px; } }
@media(max-width:720px) { .brief-stats,.brief-stats.three,.partner-grid,.award-slots,.panorama-strip { grid-template-columns:1fr; gap:18px; } .institution-strip { width:100%; justify-content:space-between; } .top .project-label { display:none; } .nav-links { gap:0; } .album-page { min-height:280px; padding:14px; } .album-page h3 { font-size:25px; } .album-right h3 { font-size:29px; } .album-left img { height:130px; } .panorama-strip img { height:240px; } }
@media(prefers-reduced-motion:reduce) { .album,.album-left { animation:none; transition:none; transform:none; } }
/* Full-width composition: small consistent gutters and denser visual groups. */
:root { --page-gutter:clamp(18px,2.4vw,48px); --section-space:clamp(36px,3.6vw,64px); }
.container,.anniversary-panel,.anniversary-hero .hero-content { width:calc(100% - var(--page-gutter)*2); max-width:1800px; }
.top { gap:clamp(16px,2vw,36px); }
.institution-strip { flex:1; justify-content:center; gap:clamp(18px,3vw,52px); }
.institution-strip span { font-size:clamp(12px,.95vw,17px); }
.nav { flex-wrap:nowrap; }
.nav-links { gap:clamp(16px,2vw,34px); font-size:17px; }
.contest-section::before,.anniversary-compact::before,.projects::before,.closing.closing-visual::before { display:none; }
.contest-section,.anniversary-compact,.projects,.closing.closing-visual { border-top:1px solid var(--rule); }
/* The cover uses the whole image; typography sits directly on the photograph. */
.anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 145px); display:flex; flex-direction:column; justify-content:center; }
.anniversary-hero.photo-hero.refined-hero .hero-shade { background:linear-gradient(90deg,#06271ef2 0%,#092e24cd 34%,#092e244d 63%,transparent 88%),linear-gradient(0deg,#123c32,transparent 36%); }
.anniversary-hero.photo-hero.refined-hero .hero-content { padding:64px 0 36px; }
.refined-hero .hero-editorial-panel { width:min(950px,66%); padding:0; background:none; border:0; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; }
.refined-hero .hero-editorial-panel h1 { font-size:clamp(60px,6.6vw,116px); line-height:1.02; max-width:100%; }
.refined-hero .hero-editorial-panel h1 span { font-size:.84em; }
.anniversary-hero.photo-hero.refined-hero .hero-subtitle { font-size:clamp(20px,1.7vw,28px); max-width:760px; }
.anniversary-hero.photo-hero.refined-hero .hero-dedication { font-size:18px; }
.anniversary-hero.photo-hero.refined-hero .hero-status,.anniversary-hero.photo-hero.refined-hero .hero-footnote { width:calc(100% - var(--page-gutter)*2); max-width:1800px; font-size:13px; }
.digital-story .container { display:grid; grid-template-columns:1.65fr 1fr; gap:0 48px; align-items:start; }
.digital-story .eyebrow { grid-column:1/-1; }
.digital-story .large-copy { font-size:clamp(24px,2.2vw,34px)!important; line-height:1.45!important; margin-bottom:0; }
.digital-story .brief-stats { margin:0; gap:22px; }
.digital-story .brief-stats b { font-size:28px; }
.digital-story .brief-stats p { font-size:16px; }
.anniversary-main-row { grid-template-columns:1fr 1.1fr; gap:40px; align-items:center; }
.anniversary-compact h2 { font-size:clamp(42px,4.2vw,72px); max-width:none; }
.anniversary-intro-copy { font-size:21px; max-width:750px; }
.anniversary-case img { height:clamp(260px,24vw,410px); }
.anniversary-case figcaption { padding:24px; }
.anniversary-pillars { gap:0; margin-top:28px; padding-top:0; border:1px solid var(--rule); }
.anniversary-pillars article { padding:24px; }
.anniversary-pillars article+article { border-left:1px solid var(--rule); }
.anniversary-pillars p { margin-bottom:0; }
.mission-editorial { grid-template-columns:1.12fr 1fr; gap:38px; align-items:center; }
.mission-photo img { height:clamp(410px,35vw,620px); }
.mission-copy h2,.closing-copy h2 { font-size:clamp(42px,4vw,68px); }
.mission-copy p { max-width:none; font-size:21px; }
.organizer-strip { grid-template-columns:1fr 1fr; gap:40px; }
.nomination-heading { display:grid; grid-template-columns:1.4fr 1fr; align-items:end; }
.nomination-heading>p { max-width:none; font-size:21px; }
.nomination-gallery { grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px; }
.nomination-photo-card { min-width:0; }
.nomination-01,.nomination-02 { grid-column:span 3; }
.nomination-image,.nomination-01 .nomination-image,.nomination-02 .nomination-image { height:clamp(240px,21vw,360px); }
.nomination-caption { padding:26px; }
.nomination-caption h3 { font-size:clamp(29px,2.5vw,42px); }
.nomination-caption p { font-size:20px; }
.timeline-grid { border-bottom:1px solid var(--rule); padding-bottom:24px; gap:28px; }
.timeline-grid h3 { font-size:clamp(30px,2.7vw,44px); }
.timeline-grid p { font-size:20px; }
.intro { grid-template-columns:1.25fr 1fr 1fr 1fr; }
.intro h2 { font-size:40px; }
.project-grid { gap:24px; }
.project-card img { height:clamp(260px,24vw,410px); }
.project-title { font-size:38px; }
.real-project p { font-size:20px; }
.panorama-strip { gap:20px; }
.panorama-strip img { height:clamp(250px,24vw,410px); }
.panorama-strip figcaption { font-size:18px; }
.brief-stats.three { gap:0; border:1px solid var(--rule); }
.brief-stats.three article { padding:28px; border-top:0; }
.brief-stats.three article+article { border-left:1px solid var(--rule); }
.brief-stats.three b { font-size:clamp(64px,7vw,116px); }
.partner-grid { gap:20px; }
.partner-grid .contest-card { padding:30px; }
.partner-grid .contest-card p { font-size:20px; }
.partner-grid .contest-card h3 { font-size:36px; }
.award-slots>div { min-height:230px; padding:30px; }
.book-layout { grid-template-columns:1fr 1.15fr; gap:48px; }
.album-page { min-height:420px; padding:30px; }
.album-left img { height:210px; }
.album-right h3 { font-size:clamp(36px,3.5vw,58px); }
.book-layout>div>p:not(.eyebrow) { font-size:21px; }
.map-layout { grid-template-columns:1.8fr 1fr; gap:24px; }
.russia-map { padding:20px; }
.map-project-panel { padding:26px; height:100%; }
.comparison img,.before-pending { min-height:190px; height:190px; }
.closing-composition { grid-template-columns:1fr 1.15fr; gap:40px; }
.closing-photo img { height:460px; }
.closing-copy p { max-width:none; font-size:21px; }
.footer-row { grid-template-columns:1fr 1fr 1fr; }
/* Interior pages use balanced columns instead of narrow centered text. */
.document-hero .container { max-width:1800px; }
.document-hero h1 { font-size:clamp(54px,5.5vw,90px); }
.document-hero p { max-width:1100px; }
.document-list .container,.regulation-text { max-width:none; }
.regulation-text { width:100%; }
.regulation-text details p { max-width:1200px; }
.demo-grid { grid-template-columns:1.25fr 1fr; gap:24px; }
.demo-explanation p { font-size:21px; }
@media(min-width:1600px) { .nomination-gallery { grid-template-columns:repeat(10,minmax(0,1fr)); } .nomination-photo-card,.nomination-01,.nomination-02 { grid-column:span 2; } .nomination-image,.nomination-01 .nomination-image,.nomination-02 .nomination-image { height:250px; } .nomination-caption { padding:22px; } .nomination-caption h3 { font-size:30px; } .nomination-caption p { font-size:18px; } }
@media(max-width:1200px) { .nav { flex-wrap:wrap; } .nav-links { font-size:16px; gap:18px; } .digital-story .container { grid-template-columns:1.4fr 1fr; gap:0 28px; } .digital-story .brief-stats { grid-template-columns:1fr; } .intro { grid-template-columns:1fr 1fr; } .refined-hero .hero-editorial-panel { width:75%; } .institution-strip { justify-content:flex-start; } }
@media(max-width:800px) { .digital-story .container,.mission-editorial,.anniversary-main-row,.closing-composition,.book-layout,.map-layout,.demo-grid { grid-template-columns:1fr; gap:24px; } .digital-story .brief-stats { grid-template-columns:1fr 1fr; } .nomination-heading { display:block; } .nomination-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } .nomination-photo-card,.nomination-01,.nomination-02 { grid-column:span 1; } .nomination-05 { grid-column:span 2; } .refined-hero .hero-editorial-panel { width:90%; } .anniversary-hero.photo-hero.refined-hero .hero-content { padding-top:40px; } .refined-hero .hero-editorial-panel h1 { font-size:clamp(52px,8vw,76px); } .mission-photo img,.closing-photo img { height:380px; } .album-page { min-height:350px; padding:22px; } .album-left img { height:170px; } }
@media(max-width:720px) { :root { --page-gutter:18px; } .digital-story .brief-stats,.brief-stats.three,.intro,.organizer-strip { grid-template-columns:1fr; } .institution-strip { gap:12px; justify-content:space-between; } .institution-strip span { font-size:11px; } .anniversary-pillars article+article,.brief-stats.three article+article { border-left:0; border-top:1px solid var(--rule); } .anniversary-pillars { gap:0; } .anniversary-pillars article,.brief-stats.three article { padding:22px; } .nav-links { gap:0; } .refined-hero .hero-editorial-panel { width:100%; } .refined-hero .hero-editorial-panel h1 { font-size:clamp(46px,10.7vw,68px); } .anniversary-hero.photo-hero.refined-hero .hero-subtitle { font-size:20px; } .anniversary-hero.photo-hero.refined-hero .hero-dedication { font-size:16px; } .anniversary-hero.photo-hero.refined-hero .hero-shade { background:linear-gradient(90deg,#082b22e0,#092e2480),linear-gradient(0deg,#123c32,transparent); } .nomination-gallery { grid-template-columns:1fr; } .nomination-photo-card,.nomination-05 { grid-column:span 1; } .nomination-image,.nomination-01 .nomination-image,.nomination-02 .nomination-image { height:280px; } .mission-copy p,.nomination-caption p,.timeline-grid p,.real-project p,.partner-grid .contest-card p,.closing-copy p,.demo-explanation p { font-size:18px; } .mission-photo img,.closing-photo img { height:300px; } .album-page { min-height:290px; padding:15px; } .album-left img { height:130px; } .album-right h3 { font-size:30px; } .album-page h3 { font-size:26px; } .footer-row { grid-template-columns:1fr; } }

.refined-hero .hero-editorial-panel h1 .contest-kind { font:16px/1.5 Arial,sans-serif; text-transform:uppercase; letter-spacing:.13em; margin:0 0 18px; color:var(--gold); }
.refined-hero .hero-editorial-panel h1 { font-size:clamp(52px,6.5vw,108px); }
.regulation-table-wrap { overflow-x:auto; margin:24px 0; }
.regulation-table { width:100%; border-collapse:collapse; font-size:16px; }
.regulation-table td { border:1px solid var(--rule); padding:14px; vertical-align:top; white-space:pre-line; min-width:130px; }
@media(max-width:720px) { .refined-hero .hero-editorial-panel h1 { font-size:clamp(40px,9.3vw,62px); } .refined-hero .hero-editorial-panel h1 .contest-kind { font-size:12px; } }

/* Full official title: readable hierarchy without truncation. */
.refined-hero .hero-editorial-panel { width:min(1120px,83%); }
.refined-hero .hero-editorial-panel h1 { font-size:clamp(36px,3.7vw,64px); line-height:1.13; }
.refined-hero .hero-editorial-panel h1 .contest-kind { font-size:clamp(14px,1.25vw,21px); line-height:1.5; max-width:900px; }
@media(max-width:720px) { .refined-hero .hero-editorial-panel { width:100%; } .refined-hero .hero-editorial-panel h1 { font-size:clamp(31px,7vw,44px); } .refined-hero .hero-editorial-panel h1 .contest-kind { font-size:12px; } }
/* Documents: one continuous regulation, without panels or collapsed sections. */
.regulation-page { padding:40px 0 56px; background:var(--emerald); color:var(--paper); }
.regulation-page h1 { font-size:clamp(30px,3vw,48px); line-height:1.25; max-width:1500px; margin-bottom:24px; }
.regulation-page h1 span { color:var(--gold); }
.regulation-continuous { margin-top:34px; }
.regulation-continuous h2 { font:600 clamp(22px,2vw,30px)/1.4 Arial,sans-serif; letter-spacing:0; text-wrap:wrap; margin:30px 0 16px; }
.regulation-continuous p { font-size:19px; line-height:1.7; white-space:pre-line; margin:0 0 14px; text-wrap:pretty; }
@media(max-width:720px) { .regulation-page { padding:28px 0 36px; } .regulation-page h1 { font-size:29px; } .regulation-continuous p { font-size:17px; } }

.regulation-page .regulation-text details { border-bottom:1px solid var(--rule); padding:0; }
.regulation-page .regulation-text summary { cursor:pointer; padding:20px 0; font-size:23px; line-height:1.4; color:var(--gold); }
.regulation-page .regulation-text details[open] { padding-bottom:16px; }
.regulation-page .regulation-text details p { font-size:19px; line-height:1.7; max-width:none; }
@media(max-width:720px) { .regulation-page .regulation-text summary { font-size:20px; } .regulation-page .regulation-text details p { font-size:17px; } }
/* Shared footer: quiet architectural hierarchy, generous contact type. */
.site-footer { position:relative; padding:0; background:#092d24; color:#f1f1e7; border-top:1px solid #cfb98566; }
.site-footer::before { content:''; display:block; height:4px; background:linear-gradient(90deg,#cfb985 0%,#cfb985 28%,#365c48 72%); }
.footer-main { display:grid; grid-template-columns:1.3fr .8fr 1fr; gap:clamp(28px,5vw,92px); padding:54px 0 42px; align-items:start; }
.footer-kicker { color:var(--gold); font-size:12px; line-height:1.5; letter-spacing:.17em; margin:0 0 20px; }
.footer-name { display:inline-block; font:400 clamp(40px,3.7vw,64px)/1.04 Arial,Helvetica,sans-serif; letter-spacing:-.035em; }
.footer-name span { color:#d9c89f; }
.footer-description { font-size:16px; line-height:1.65; color:#b8ccc0; max-width:410px; margin:22px 0 0; }
.footer-main h2 { font:600 13px/1.5 Arial,sans-serif; text-transform:uppercase; letter-spacing:.15em; color:var(--gold); margin:0 0 24px; }
.footer-navigation { display:flex; flex-direction:column; gap:0; }
.footer-navigation>a { display:flex; justify-content:space-between; gap:18px; font-size:17px; padding:11px 0; border-bottom:1px solid #cfb98526; }
.footer-navigation>a span { color:#cfb98599; }
.footer-contacts { min-width:0; }
.footer-phone { display:block; width:fit-content; font:400 clamp(22px,2vw,34px)/1.4 Arial,sans-serif; letter-spacing:-.035em; white-space:nowrap; margin-bottom:10px; }
.footer-email-label { color:#b8ccc0; margin:24px 0 8px; font-size:14px; }
.footer-email { display:flex; align-items:center; justify-content:space-between; gap:18px; width:fit-content; max-width:100%; font-size:clamp(18px,1.55vw,25px); padding-bottom:8px; border-bottom:1px solid #cfb98566; overflow-wrap:anywhere; }
.footer-email span { color:var(--gold); }
.footer-bottom { display:flex; justify-content:space-between; gap:16px 30px; flex-wrap:wrap; border-top:1px solid #cfb98540; padding:22px 0; font-size:13px; color:#c0d0c5; }
.footer-bottom p { margin:0; }
.footer-bottom>a { color:var(--gold); margin-left:auto; }
.footer-attribution { border-top:1px solid #cfb98518; padding:15px 0 22px; font-size:11px; line-height:1.6; color:#9ab3a4; }
.footer-attribution a { text-decoration:underline; text-underline-offset:3px; }
.site-footer a { transition:color .18s; }
.site-footer a:hover { color:#eadab3; }
@media(max-width:1000px) { .footer-main { grid-template-columns:1.1fr 1fr; gap:32px; } .footer-brand { grid-column:1/-1; display:grid; grid-template-columns:1.2fr 1fr; gap:0 30px; } .footer-kicker { grid-column:1/-1; } .footer-description { margin:0; align-self:center; } }
@media(max-width:600px) { .footer-main { grid-template-columns:1fr; padding:34px 0 28px; gap:30px; } .footer-brand { display:block; grid-column:auto; } .footer-description { margin-top:18px; max-width:none; } .footer-name { font-size:46px; } .footer-main h2 { margin-bottom:16px; } .footer-phone { font-size:28px; } .footer-email { font-size:21px; } .footer-bottom { display:grid; grid-template-columns:1fr; gap:12px; font-size:12px; } .footer-bottom>a { margin-left:0; } }
/* A single shared header: identity, partner signs, navigation. */
.unified-header { position:relative; z-index:50; background:#103a2f; color:var(--paper); border-bottom:1px solid #cfb98566; }
.unified-header-row { display:flex; align-items:center; gap:clamp(22px,3vw,54px); min-height:110px; padding-block:18px; }
.header-brand { flex-shrink:0; font:400 clamp(30px,2.5vw,44px)/.98 Arial,Helvetica,sans-serif; letter-spacing:-.035em; }
.header-brand>span { display:block; color:var(--gold); font-size:.71em; margin-top:8px; letter-spacing:-.02em; }
.header-partners { display:flex; align-items:center; gap:clamp(18px,2.6vw,44px); padding-left:clamp(22px,3vw,54px); border-left:1px solid var(--rule); flex:1; }
.partner-sign { display:flex; align-items:center; gap:10px; color:#e2e8dc; font:13px/1.35 Arial,sans-serif; }
.partner-symbol { width:38px; height:42px; display:flex; align-items:center; justify-content:center; border-top:2px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--gold); font:24px/1 Arial,Helvetica,sans-serif; letter-spacing:-.06em; flex-shrink:0; }
.partner-symbol-lines { border-top:4px double var(--gold); }
.header-menu { margin-left:auto; position:relative; flex-shrink:0; }
.header-menu summary { list-style:none; display:flex; align-items:center; gap:24px; cursor:pointer; padding:15px 20px; border:1px solid var(--rule); font:16px/1.3 Arial,sans-serif; }
.header-menu summary::-webkit-details-marker { display:none; }
.header-menu summary:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.header-menu-icon { display:flex; flex-direction:column; gap:6px; width:23px; }
.header-menu-icon i { display:block; width:23px; height:1px; background:var(--gold); transition:transform .2s; }
.header-menu[open] .header-menu-icon i:first-child { transform:translateY(3.5px) rotate(45deg); }
.header-menu[open] .header-menu-icon i:last-child { transform:translateY(-3.5px) rotate(-45deg); }
.header-menu[open] summary { background:#214b3d; border-color:var(--gold); }
.header-dropdown { position:absolute; right:0; top:calc(100% + 15px); width:320px; padding:12px 22px; background:#103a2f; border:1px solid var(--gold); box-shadow:0 20px 45px #001a1566; }
.header-dropdown>a { display:flex; justify-content:space-between; gap:18px; padding:14px 0; border-bottom:1px solid var(--rule); font-size:17px; }
.header-dropdown>a:last-child { border-bottom:0; }
.header-dropdown>a span { color:var(--gold); }
.header-dropdown>a:hover { color:var(--gold); }
.header-dropdown .header-dropdown-cta { color:var(--gold); font-weight:600; }
.anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 110px); }
@media(max-width:1000px) { .unified-header-row { gap:22px; } .header-partners { gap:18px; padding-left:22px; } .partner-sign { font-size:11px; gap:8px; } .partner-symbol { width:28px; height:34px; font-size:20px; } .header-menu summary { gap:14px; padding:13px; } }
@media(max-width:720px) { .unified-header-row { gap:14px; min-height:90px; padding-block:14px; } .header-brand { font-size:28px; } .header-partners { gap:10px; padding-left:12px; } .partner-sign>span:last-child { display:none; } .partner-symbol { width:25px; height:30px; font-size:18px; } .header-menu summary { font-size:0; padding:13px 10px; gap:0; } .header-menu summary .header-menu-icon { font-size:16px; } .header-dropdown { width:min(320px,calc(100vw - 36px)); } .anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 90px); } }
@media(max-width:380px) { .unified-header-row { gap:10px; } .header-brand { font-size:24px; } .header-partners { gap:7px; padding-left:9px; } .partner-symbol { width:22px; } }

.official-partner { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.official-minstroy { background:#fff; padding:8px 12px; }
.official-minstroy img { width:145px; height:58px; object-fit:contain; }
.official-varmsu img { width:62px; height:62px; object-fit:contain; }
.official-varmsu span { font:600 15px Arial,sans-serif; letter-spacing:.06em; }
.institute-wordmark { font:14px/1.4 Arial,sans-serif; color:var(--paper); }
@media(max-width:1000px) { .official-minstroy img { width:112px; height:45px; } .official-varmsu img { width:48px; height:48px; } .official-varmsu span { display:none; } .institute-wordmark { font-size:12px; } }
@media(max-width:720px) { .header-partners { gap:10px; } .official-minstroy { padding:4px; } .official-minstroy img { width:64px; height:32px; } .official-varmsu img { width:34px; height:34px; } .institute-wordmark { max-width:70px; font-size:9px; line-height:1.25; } .header-brand { font-size:24px; } }
@media(max-width:390px) { .unified-header-row { gap:8px; } .header-partners { gap:7px; padding-left:8px; } .institute-wordmark { font-size:8px; max-width:57px; } .official-minstroy img { width:52px; } .official-varmsu img { width:28px; } .header-brand { font-size:21px; } }

.official-institute { background:#fff; padding:4px 8px; }
.official-institute img { width:104px; height:72px; object-fit:contain; }
@media(max-width:1000px) { .official-institute img { width:90px; height:62px; } }
@media(max-width:720px) { .official-institute { padding:3px; } .official-institute img { width:47px; height:36px; } }
@media(max-width:390px) { .official-institute img { width:38px; height:30px; } }
/* Transparent partner marks, without backing plates. */
.official-minstroy,.official-institute { background:transparent; padding:0; }
.official-minstroy img { filter:brightness(0) invert(1); }
/* Equal partner slots, common height, preserved logo proportions. */
.header-partners { gap:clamp(20px,3vw,48px); }
.header-partners .official-partner { width:160px; height:80px; padding:0; background:transparent; display:flex; align-items:center; justify-content:center; }
.header-partners .official-partner img { display:block; width:100%; height:100%; object-fit:contain; filter:none; }
.header-partners .official-varmsu img { width:80px; height:80px; }
.header-partners .official-varmsu>span { display:none; }
@media(max-width:1000px) { .header-partners { gap:20px; } .header-partners .official-partner { width:120px; height:66px; } .header-partners .official-varmsu img { width:66px; height:66px; } }
@media(max-width:720px) { .header-partners { gap:8px; padding-left:10px; } .header-partners .official-partner { width:55px; height:40px; } .header-partners .official-varmsu img { width:40px; height:40px; } .header-brand { font-size:23px; } }
@media(max-width:390px) { .header-partners { gap:6px; padding-left:7px; } .header-partners .official-partner { width:44px; height:34px; } .header-partners .official-varmsu img { width:34px; height:34px; } .header-brand { font-size:20px; } }
/* Institute lockup: existing emblem with an accessible white side label. */
.header-partners .official-institute { width:235px; height:80px; gap:12px; justify-content:flex-start; }
.institute-emblem { display:block; flex:0 0 70px; width:70px; height:70px; background-image:url('../images/partner-institute.55a55bea44d5.webp'); background-repeat:no-repeat; background-position:center top; background-size:auto 92px; }
.institute-side-label { display:block; color:#fff; font:500 14px/1.4 Arial,sans-serif; white-space:nowrap; }
@media(max-width:1000px) { .header-partners .official-institute { width:195px; height:66px; gap:9px; } .institute-emblem { flex-basis:58px; width:58px; height:58px; background-size:auto 76px; } .institute-side-label { font-size:12px; } }
@media(max-width:720px) { .header-partners .official-institute { width:105px; height:40px; gap:5px; } .institute-emblem { flex-basis:34px; width:34px; height:34px; background-size:auto 45px; } .institute-side-label { font-size:7px; white-space:normal; line-height:1.3; } .header-partners .official-partner:not(.official-institute) { width:42px; } .header-brand { font-size:21px; } }
@media(max-width:390px) { .header-partners .official-institute { width:87px; gap:4px; } .institute-emblem { flex-basis:28px; width:28px; height:28px; background-size:auto 37px; } .institute-side-label { font-size:6px; } .header-partners .official-partner:not(.official-institute) { width:34px; } .header-brand { font-size:18px; } .unified-header-row { gap:6px; } }

/* Institute caption beneath the emblem; compact unified header. */
.header-partners .official-institute { width:160px; height:94px; flex-direction:column; justify-content:center; gap:5px; }
.header-partners .official-institute .institute-emblem { flex:0 0 62px; width:62px; height:62px; background-size:auto 82px; }
.institute-side-label { font-size:11px; line-height:1.25; text-align:center; white-space:nowrap; color:#fff; }
.header-menu summary { font-size:16px; }
@media(max-width:1000px) { .header-partners .official-institute { width:125px; height:80px; } .header-partners .official-institute .institute-emblem { flex-basis:50px; width:50px; height:50px; background-size:auto 66px; } .institute-side-label { font-size:9px; } }
@media(max-width:720px) { .header-partners .official-institute { width:74px; height:57px; gap:3px; } .header-partners .official-institute .institute-emblem { flex-basis:36px; width:36px; height:36px; background-size:auto 48px; } .institute-side-label { font-size:6px; } .header-menu summary { font-size:12px; gap:8px; padding:12px 9px; } .header-menu-icon,.header-menu-icon i { width:17px; } .header-partners { gap:7px; } }
@media(max-width:390px) { .header-partners .official-institute { width:58px; height:49px; } .header-partners .official-institute .institute-emblem { flex-basis:30px; width:30px; height:30px; background-size:auto 40px; } .institute-side-label { font-size:5px; } .header-menu summary { font-size:11px; padding:10px 7px; gap:6px; } .header-brand { font-size:17px; } .header-partners { gap:5px; padding-left:5px; } }
/* Liquid glass: translucent evergreen surface with restrained specular light. */
.unified-header { position:sticky; top:0; z-index:100; isolation:isolate; background:rgba(12,48,38,.68); border-bottom:1px solid rgba(238,248,238,.24); box-shadow:0 8px 32px rgba(0,20,14,.14),inset 0 1px 0 rgba(255,255,255,.22); backdrop-filter:blur(24px) saturate(155%); -webkit-backdrop-filter:blur(24px) saturate(155%); }
.unified-header::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(115deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 32%,transparent 55%,rgba(211,233,218,.08)); }
.unified-header::after { content:''; position:absolute; left:var(--page-gutter); right:var(--page-gutter); bottom:0; height:1px; pointer-events:none; background:linear-gradient(90deg,transparent,rgba(255,255,255,.45) 30%,rgba(207,185,133,.3) 70%,transparent); }
.unified-header-row { position:relative; }
.header-brand,.header-partners { text-shadow:0 1px 10px rgba(0,22,15,.2); }
.header-menu summary { border-radius:12px; border:1px solid rgba(240,247,233,.3); background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.025)); box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 3px 12px rgba(0,20,14,.08); transition:background .2s,border-color .2s; }
.header-menu summary:hover,.header-menu[open] summary { border-color:rgba(241,231,201,.65); background:rgba(255,255,255,.14); }
.header-dropdown { background:rgba(12,45,35,.9); backdrop-filter:blur(28px) saturate(150%); -webkit-backdrop-filter:blur(28px) saturate(150%); border:1px solid rgba(235,244,229,.28); border-radius:18px; box-shadow:0 20px 55px rgba(0,18,12,.35),inset 0 1px 0 rgba(255,255,255,.18); overflow:hidden; }
.header-dropdown>a { border-bottom-color:rgba(255,255,255,.12); }
.header-dropdown>a:hover { background:rgba(255,255,255,.045); }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .unified-header { background:rgba(12,48,38,.97); } .header-dropdown { background:#103a2f; } }
@media(prefers-reduced-transparency:reduce) { .unified-header,.header-dropdown { background:#103a2f; backdrop-filter:none; -webkit-backdrop-filter:none; } }

/* Compact glass header and framed second-section composition. */
.unified-header-row { min-height:78px; padding-block:9px; }
.header-brand { font-size:30px; }
.header-partners .official-partner { height:58px; width:140px; }
.header-partners .official-varmsu img { width:58px; height:58px; }
.header-partners .official-institute { height:60px; width:140px; gap:3px; }
.header-partners .official-institute .institute-emblem { flex-basis:40px; width:40px; height:40px; background-size:auto 53px; }
.institute-side-label { font-size:8px; }
.header-menu summary { padding:11px 16px; }
.anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 78px); }
.digital-story .container { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(30px,5vw,90px); align-items:center; }
.story-framed { position:relative; padding:clamp(28px,3.5vw,58px); border:1px solid #cfb98588; background:linear-gradient(145deg,#ffffff08,#ffffff02); box-shadow:inset 0 0 0 7px #123c32,inset 0 0 0 8px #cfb98530; aspect-ratio:1; display:flex; flex-direction:column; justify-content:center; }
.digital-story .story-framed .large-copy { font:400 clamp(23px,2.2vw,34px)/1.5 Arial,Helvetica,sans-serif!important; margin:0; }
.digital-story .story-framed .eyebrow { margin-bottom:24px; }
.contest-figures h2 { font-size:clamp(36px,4vw,62px); }
.digital-story .contest-figures .brief-stats { display:grid; grid-template-columns:1fr; gap:22px; margin-top:28px; }
.digital-story .contest-figures .brief-stats b { font:400 clamp(27px,2.7vw,40px)/1.2 Arial,Helvetica,sans-serif; }
.digital-story .contest-figures .brief-stats p { font-size:17px; color:var(--muted); }
@media(max-width:1000px) { .header-partners .official-partner { width:110px; height:52px; } .header-partners .official-varmsu img { width:50px; height:50px; } .header-partners .official-institute { width:110px; height:56px; } .digital-story .story-framed .large-copy { font-size:24px!important; } }
@media(max-width:720px) { .unified-header-row { min-height:68px; padding-block:7px; gap:9px; } .header-brand { font-size:22px; } .header-partners .official-partner { width:42px; height:36px; } .header-partners .official-varmsu img { width:34px; height:34px; } .header-partners .official-institute { width:64px; height:48px; } .header-partners .official-institute .institute-emblem { flex-basis:30px; width:30px; height:30px; background-size:auto 40px; } .institute-side-label { font-size:5px; } .header-menu summary { padding:10px 8px; font-size:12px; } .digital-story .container { grid-template-columns:1fr; gap:28px; } .story-framed { padding:28px; aspect-ratio:auto; min-height:360px; } .digital-story .story-framed .large-copy { font-size:25px!important; } .anniversary-hero.photo-hero.refined-hero { min-height:calc(100svh - 68px); } }
@media(max-width:390px) { .header-brand { font-size:18px; } .unified-header-row { gap:6px; } .header-partners .official-partner:not(.official-institute) { width:32px; } .header-partners .official-institute { width:56px; } .header-menu summary { padding:9px 6px; font-size:11px; } }

.figures-period { color:var(--gold); font-size:16px; margin:0 0 16px; }
.digital-story .contest-figures .brief-stats { margin-top:18px; gap:16px; }
.digital-story .contest-figures .brief-stats article { padding-top:16px; }
.digital-story .contest-figures .brief-stats b { font:400 clamp(42px,4.5vw,76px)/1.05 Arial,Helvetica,sans-serif; letter-spacing:-.03em; }
.digital-story .contest-figures .brief-stats b span { font-size:.52em; letter-spacing:0; }
.digital-story .contest-figures .brief-stats p { margin-top:8px; font-size:18px; }
@media(max-width:720px) { .digital-story .contest-figures .brief-stats b { font-size:54px; } }

/* Slightly more compact second section, with the supplied text verbatim. */
.digital-story { padding-top:32px; padding-bottom:32px; }
.digital-story .container { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); }
.story-framed { aspect-ratio:auto; min-height:0; padding:clamp(26px,3vw,44px); }
.digital-story .story-framed .large-copy { font-size:clamp(21px,1.85vw,29px)!important; line-height:1.48!important; }
.digital-story .story-framed .eyebrow { margin-bottom:18px; }
.contest-figures h2 { font-size:clamp(32px,3.2vw,48px); margin-bottom:14px; }
.digital-story .contest-figures .brief-stats { gap:12px; margin-top:12px; }
.digital-story .contest-figures .brief-stats article { padding-top:12px; }
.digital-story .contest-figures .brief-stats b { font-size:clamp(38px,3.7vw,60px); }
.digital-story .contest-figures .brief-stats p { font-size:17px; margin-top:6px; }
@media(max-width:720px) { .digital-story .container { grid-template-columns:1fr; gap:24px; } .digital-story { padding:26px 0; } .story-framed { padding:25px; } .digital-story .story-framed .large-copy { font-size:22px!important; } .digital-story .contest-figures .brief-stats b { font-size:46px; } }

/* Equal project windows alongside the original editorial text. */
.digital-story.story-projects>.container:first-child { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); gap:clamp(26px,4vw,64px); align-items:center; }
.story-text .eyebrow { margin-bottom:20px; }
.digital-story.story-projects .story-text .large-copy { font:400 clamp(23px,2vw,32px)/1.5 Arial,Helvetica,sans-serif!important; margin:0; }
.story-project-windows { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:stretch; }
.story-project-card { position:relative; display:block; min-width:0; width:100%; aspect-ratio:3/4; padding:0; overflow:hidden; border:1px solid rgba(207,185,133,.5); border-radius:3px; background:#0b3026; cursor:pointer; color:#fff; text-align:left; box-shadow:0 10px 24px #001b1422; }
.story-project-card>img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.story-project-card::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(4,24,17,.94),rgba(4,24,17,.16) 58%,transparent); pointer-events:none; }
.story-project-card:hover>img { transform:scale(1.045); }
.story-project-caption { position:absolute; inset:auto 18px 20px; z-index:1; display:flex; flex-direction:column; gap:10px; padding-right:16px; }
.story-project-caption>span { font:11px/1.4 Arial,sans-serif; color:#e5d0a0; text-transform:uppercase; letter-spacing:.08em; }
.story-project-caption strong { font:400 clamp(23px,1.8vw,30px)/1.15 Arial,Helvetica,sans-serif; }
.story-project-caption i { position:absolute; right:0; top:0; font:20px Arial,sans-serif; color:#e5d0a0; }
.digital-story.story-projects .story-number-strip { display:grid; grid-template-columns:.65fr 1fr 1fr 1.1fr; gap:24px; align-items:center; margin-top:30px; padding-top:24px; border-top:1px solid var(--rule); }
.story-period { font-size:15px; color:var(--gold); }
.story-number-strip>div { padding-left:24px; border-left:1px solid var(--rule); }
.story-number-strip b { display:block; font:400 clamp(28px,2.7vw,44px)/1.15 Arial,Helvetica,sans-serif; color:var(--gold); }
.story-number-strip>div>span { display:block; font-size:14px; margin-top:7px; color:var(--muted); }
@media(max-width:1050px) { .digital-story.story-projects>.container:first-child { grid-template-columns:1fr; gap:24px; } .story-project-card { aspect-ratio:4/3; } .digital-story.story-projects .story-text .large-copy { font-size:26px!important; } }
@media(max-width:720px) { .story-project-windows { gap:10px; } .story-project-card { aspect-ratio:3/5; } .story-project-caption { inset:auto 10px 14px; gap:8px; padding:0; } .story-project-caption>span { font-size:9px; letter-spacing:0; } .story-project-caption strong { font-size:19px; overflow-wrap:anywhere; } .story-project-caption i { display:none; } .digital-story.story-projects .story-text .large-copy { font-size:23px!important; } .digital-story.story-projects .story-number-strip { grid-template-columns:1fr; gap:16px; margin-top:24px; padding-top:20px; } .story-number-strip>div { padding:0; border:0; } .story-number-strip b { font-size:34px; } }
@media(prefers-reduced-motion:reduce) { .story-project-card>img { transition:none; } .story-project-card:hover>img { transform:none; } }
/* Period caption above the three statistics, on their shared left edge. */
.digital-story.story-projects .story-number-strip { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 28px; }
.story-number-strip>.story-period { grid-column:1/-1; display:flex; align-items:center; gap:14px; font-size:12px; letter-spacing:.13em; text-transform:uppercase; }
.story-number-strip>.story-period::after { content:''; width:52px; height:1px; background:var(--gold); opacity:.6; }
.story-number-strip>div { padding-left:24px; }
.story-number-strip>div:nth-child(2) { padding-left:0; border-left:0; }
@media(max-width:720px) { .digital-story.story-projects .story-number-strip { grid-template-columns:1fr; gap:16px; } .story-number-strip>div { padding-left:0; } }

.catalog-tools { display:grid; grid-template-columns:1.5fr 1fr .6fr auto; gap:14px; margin:24px 0; align-items:center; }
.catalog-tools input,.catalog-tools select { min-width:0; width:100%; padding:14px; border:1px solid var(--rule); background:#194438; color:var(--paper); font:16px Arial,sans-serif; }
.catalog-tools input::placeholder { color:var(--muted); }
.catalog-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:22px 0; }
.catalog-card { min-width:0; display:flex; flex-direction:column; gap:13px; padding:0 0 20px; color:var(--paper); background:#173f34; border:1px solid var(--rule); text-align:left; cursor:pointer; }
.catalog-card>img { width:100%; height:210px; object-fit:cover; }
.catalog-card>span,.catalog-card>strong,.catalog-card>small { margin-inline:18px; }
.catalog-card>strong { font:400 26px/1.25 Arial,Helvetica,sans-serif; }
.catalog-card>small { font-size:12px; color:var(--muted); margin-top:auto; }
.catalog-card:hover { border-color:var(--gold); }
.catalog-selected-img { width:100%; max-height:240px; object-fit:contain; margin-bottom:20px; }
.catalog-city-list { display:flex; flex-direction:column; gap:10px; margin-top:20px; }
.catalog-city-list button { color:var(--paper); background:transparent; border:1px solid var(--rule); padding:10px; text-align:left; cursor:pointer; font-size:15px; }
#catalog-count { margin-top:26px; }
@media(max-width:1000px) { .catalog-tools { grid-template-columns:1fr 1fr; } .catalog-results { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .catalog-tools,.catalog-results { grid-template-columns:1fr; } }

/* Flat geographic projection, region boundaries, selected project glow. */
.russia-map { padding:12px; perspective:none; transform:none; }
.russia-map svg { transform:none!important; width:100%; height:auto; overflow:visible; }
.map-region { fill:#2b5947; stroke:#adc3ab; stroke-width:.65; vector-effect:non-scaling-stroke; transition:fill .2s; cursor:pointer; }
.map-region:hover,.map-region.is-active { fill:#517556; stroke:#ead7a1; stroke-width:1.4; }
.map-region-label { fill:#e2e9dc; font:7px Arial,sans-serif; paint-order:stroke; stroke:#163a2c; stroke-width:2px; pointer-events:none; opacity:0; }
.show-region-labels .map-region-label { opacity:1; }
.region-map-toolbar { display:flex; justify-content:space-between; gap:16px; align-items:center; min-height:48px; padding:10px 0; font-size:14px; color:var(--gold); }
.region-map-toolbar label { display:flex; gap:8px; align-items:center; color:var(--paper); font-size:12px; white-space:nowrap; }
.map-pin .pin-halo { fill:#e9cd7c22; stroke:#ead6a0; stroke-width:1; opacity:0; pointer-events:none; }
.map-pin .pin-core { transition:fill .2s,stroke-width .2s; }
.map-pin:hover .pin-core,.map-pin:focus .pin-core { fill:#fff5cc; }
.map-pin.is-selected .pin-core { fill:#fff6cf; stroke:#fff2b4; stroke-width:2; filter:drop-shadow(0 0 5px #ffe095); }
.map-pin.is-selected .pin-halo { opacity:1; filter:drop-shadow(0 0 6px #e8c465); animation:pin-glow 1.9s ease-in-out infinite; }
@keyframes pin-glow { 0%,100% { opacity:.5; } 50% { opacity:1; } }
@media(prefers-reduced-motion:reduce) { .map-pin.is-selected .pin-halo { animation:none; opacity:1; } }
@media(max-width:720px) { .region-map-toolbar { align-items:flex-start; flex-direction:column; gap:10px; } }

/* Wide map canvas with zoom and pan. */
#project-map .map-layout { grid-template-columns:minmax(0,1fr) 300px; gap:20px; }
#project-map .map-layout>div:first-child { min-width:0; }
#project-map .russia-map { padding:0; overflow:hidden; }
#project-map .russia-map svg { display:block; width:100%; aspect-ratio:1080/470; height:auto; cursor:grab; touch-action:none; overflow:hidden; user-select:none; }
#project-map .russia-map svg.is-dragging { cursor:grabbing; }
.map-zoom-controls { display:flex; align-items:center; gap:8px; margin:0 0 12px; }
.map-zoom-controls button { padding:9px 15px; min-height:42px; background:#244d3e; color:var(--paper); border:1px solid var(--rule); cursor:pointer; font-size:16px; }
.map-zoom-controls button:hover { border-color:var(--gold); }
.map-zoom-controls button:disabled { opacity:.4; cursor:default; }
.map-zoom-controls output { margin-left:auto; font-size:13px; color:var(--gold); }
#project-map .map-project-panel { padding:20px; }
#project-map .map-project-panel h3 { font-size:26px; }
#project-map .map-project-panel p { font-size:16px; }
@media(max-width:1050px) { #project-map .map-layout { grid-template-columns:1fr; } #project-map .map-project-panel { height:auto; } #project-map .catalog-selected-img { max-height:280px; } }
@media(max-width:600px) { #project-map .russia-map svg { aspect-ratio:4/3; } .map-zoom-controls button { padding:9px 12px; } }

/* Compact map panel with progressively revealed settlement labels. */
#project-map .map-layout { grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr); gap:28px; align-items:start; }
#project-map .russia-map svg { aspect-ratio:1.35; height:auto; }
#project-map .russia-map { width:100%; max-width:none; }
.map-settlement-label { display:none; fill:#fff4d2; font:var(--map-label-size,9px) Arial,sans-serif; paint-order:stroke; stroke:#092e22; stroke-width:2px; stroke-linejoin:round; pointer-events:none; }
.show-settlements .map-settlement-label { display:block; }
.show-settlements .map-region-label { opacity:.65; }
.show-settlements .map-pin .pin-core { r:var(--map-pin-size,3); }
.map-pin.is-selected .map-settlement-label { display:block; fill:#fff; font-weight:700; }
@media(max-width:1050px) { #project-map .map-layout { grid-template-columns:1fr; } #project-map .russia-map svg { aspect-ratio:1.4; } }
@media(max-width:600px) { #project-map .russia-map svg { aspect-ratio:1.15; } }

.base-settlement-label { fill:#d9e6d9; font-family:Arial,sans-serif; paint-order:stroke; stroke:#113c2e; stroke-linejoin:round; pointer-events:none; }
#base-settlement-labels { pointer-events:none; }
/* Project names remain on selection; settlement names use collision-aware labels. */
.show-settlements .map-settlement-label { display:none; }
.map-pin.is-selected .map-settlement-label { display:block; }
/* Compact map/card composition: 60% of the preceding desktop footprint. */
#project-map .map-layout { width:60%; min-width:700px; grid-template-columns:minmax(0,1.55fr) minmax(220px,1fr); gap:18px; margin:0 auto; }
#project-map .russia-map svg { aspect-ratio:1.35; }
#project-map .map-project-panel { padding:14px; }
#project-map .catalog-selected-img { max-height:135px; margin-bottom:12px; }
#project-map .map-project-panel h3 { font-size:21px; line-height:1.2; margin-bottom:12px; }
#project-map .map-project-panel p { font-size:13px; line-height:1.5; }
#project-map .map-project-panel .eyebrow { font-size:10px; }
#project-map .map-project-panel .text-link { font-size:13px; }
.region-map-toolbar { font-size:12px; gap:10px; }
.region-map-toolbar label { font-size:10px; }
.map-zoom-controls button { min-height:34px; padding:6px 10px; font-size:14px; }
#project-map .map-layout .note { font-size:11px; line-height:1.5; }
.map-cluster { cursor:pointer; }
.map-cluster circle { fill:#d3b977; stroke:#fff0bf; stroke-width:1; filter:drop-shadow(0 2px 3px #001c1466); }
.map-cluster:hover circle,.map-cluster:focus circle { fill:#f0dab0; stroke:#fff; }
.map-cluster text { fill:#163e30; font:bold 11px Arial,sans-serif; text-anchor:middle; dominant-baseline:central; pointer-events:none; }
@media(max-width:1100px) { #project-map .map-layout { width:75%; min-width:0; grid-template-columns:1.4fr 1fr; } }
@media(max-width:760px) { #project-map .map-layout { width:100%; grid-template-columns:1fr; max-width:540px; } #project-map .map-project-panel { display:block; } #project-map .catalog-selected-img { max-height:120px; } }

/* No settlement labels on the map; project names stay in the side card. */
.map-settlement-label,.show-settlements .map-settlement-label,.map-pin.is-selected .map-settlement-label,.base-settlement-label,#base-settlement-labels { display:none!important; }

/* Restored original three-project map section. */
#project-map .map-layout { width:100%; min-width:0; max-width:none; margin:0; grid-template-columns:1.6fr 1fr; gap:24px; align-items:start; }
#project-map .russia-map { padding:10px; overflow:visible; }
#project-map .russia-map svg { width:100%; height:auto; aspect-ratio:auto; overflow:visible; cursor:default; touch-action:auto; user-select:auto; }
#project-map .map-project-panel { padding:22px; height:auto; }
#project-map .map-project-panel h3 { font-size:32px; }
#project-map .map-project-panel p { font-size:18px; }
#project-map .map-project-panel .eyebrow { font-size:12px; }
#project-map .map-project-panel .text-link { font-size:15px; }
#project-map .map-layout .note { font-size:14px; line-height:1.6; }
#project-map .comparison img,#project-map .before-pending { height:170px; min-height:170px; }
@media(max-width:900px) { #project-map .map-layout { grid-template-columns:1fr; } }

/* A balanced atlas in a single architectural frame. */
#project-map .catalog-tools { padding:18px; border:1px solid var(--rule); background:#ffffff05; gap:12px; margin:24px 0 20px; }
#project-map .catalog-tools input,#project-map .catalog-tools select { border-radius:4px; }
#project-map .map-layout { width:100%; min-width:0; max-width:none; margin:0; grid-template-columns:minmax(0,2fr) minmax(260px,.9fr); gap:0; border:1px solid var(--rule); align-items:stretch; background:#10382d; }
#project-map .map-layout>div:first-child { padding:20px; min-width:0; }
#project-map .russia-map { padding:0; border:0; overflow:hidden; background:radial-gradient(ellipse,#285440,#10382d 75%); }
#project-map .russia-map svg { aspect-ratio:1.9; width:100%; height:auto; overflow:hidden; cursor:grab; touch-action:none; user-select:none; }
#project-map .russia-map svg.is-dragging { cursor:grabbing; }
#project-map .map-project-panel { padding:24px; border:0; border-left:1px solid var(--rule); height:auto; background:linear-gradient(145deg,#214b3b,#173e31); min-width:0; }
#project-map .catalog-selected-img { height:180px; max-height:180px; width:100%; object-fit:cover; margin-bottom:20px; }
#project-map .map-project-panel h3 { font:400 clamp(25px,2.4vw,36px)/1.2 Arial,Helvetica,sans-serif; margin-bottom:16px; }
#project-map .map-project-panel p { font-size:16px; line-height:1.5; }
#project-map .map-project-panel .eyebrow { font-size:11px; }
#project-map .map-project-panel .text-link { font-size:14px; }
#project-map .map-layout .note { font-size:12px; line-height:1.6; }
#project-map .catalog-city-list { max-height:145px; overflow-y:auto; }
#project-map .catalog-results { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
#project-map .catalog-card { background:#173f32; border-color:#cfb98544; }
#project-map .catalog-card>img { height:190px; }
#project-map .catalog-card>strong { font-size:25px; }
#project-map .map-settlement-label { display:none!important; }
@media(min-width:1500px) { #project-map .catalog-results { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:1000px) { #project-map .map-layout { grid-template-columns:1.5fr 1fr; } #project-map .russia-map svg { aspect-ratio:1.4; } #project-map .catalog-results { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:720px) { #project-map .map-layout { grid-template-columns:1fr; } #project-map .map-project-panel { border-left:0; border-top:1px solid var(--rule); } #project-map .catalog-tools,#project-map .catalog-results { grid-template-columns:1fr; } }
/* Slightly shorter atlas while preserving readable controls and cards. */
#project-map { padding-top:32px; padding-bottom:32px; }
#project-map>.container>h2 { margin-bottom:14px; }
#project-map .catalog-tools { padding:14px; margin:18px 0 16px; }
#project-map .map-layout>div:first-child { padding:16px; }
#project-map .russia-map svg { aspect-ratio:2.25; }
#project-map .region-map-toolbar { min-height:32px; padding-bottom:10px; }
#project-map .map-project-panel { padding:20px; }
#project-map .catalog-selected-img { height:150px; max-height:150px; margin-bottom:15px; }
#project-map .map-project-panel h3 { font-size:clamp(24px,2vw,31px); margin-bottom:12px; }
#project-map .map-project-panel p { margin-bottom:12px; }
#project-map #catalog-count { margin-top:22px; }
#project-map .catalog-results { margin-top:16px; }
#project-map .catalog-card>img { height:165px; }
@media(max-width:1000px) { #project-map .russia-map svg { aspect-ratio:1.65; } }
@media(max-width:720px) { #project-map { padding:26px 0; } #project-map .russia-map svg { aspect-ratio:1.6; } }

.atlas-catalog-link { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin:24px 0; }
.atlas-catalog-link>span { font-size:14px; color:var(--muted); }
.project-catalog-page h1 { font-size:clamp(42px,5vw,76px); line-height:1.1; margin-bottom:20px; }
.project-catalog-page h1 em { color:var(--gold); }
.project-catalog-page .catalog-tools { padding:18px; border:1px solid var(--rule); }
.project-catalog-page .catalog-card { text-decoration:none; }
.project-catalog-page .note { margin-top:26px; }

.contest-dynamics { background:linear-gradient(145deg,#194638,#10382e); }
.dynamics-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; }
.dynamics-heading>p { max-width:350px; font-size:19px; color:var(--muted); }
.dynamics-years { display:grid; grid-template-columns:repeat(10,minmax(0,1fr)); border:1px solid var(--rule); margin:22px 0; }
.dynamics-year { background:transparent; color:var(--paper); border:0; border-right:1px solid var(--rule); padding:16px 10px; font-size:17px; cursor:pointer; }
.dynamics-year:last-child { border-right:0; }
.dynamics-year[aria-pressed=true] { background:var(--gold); color:#123c32; }
.dynamics-year:hover { background:#cfb98522; }
.dynamics-year[aria-pressed=true]:hover { background:var(--gold); }
.dynamics-panel { display:grid; grid-template-columns:.65fr 2.5fr; gap:20px 40px; padding:30px; border:1px solid var(--rule); background:#ffffff04; }
.dynamics-year-title>span { display:block; font-size:11px; color:var(--gold); letter-spacing:.12em; }
.dynamics-year-title>b { display:block; font:400 clamp(45px,5vw,76px)/1.2 Arial,Helvetica,sans-serif; margin-top:10px; }
.dynamics-values { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:center; }
.dynamics-values>div { border-left:1px solid var(--rule); padding-left:24px; }
.dynamics-values b { display:block; color:var(--gold); font:400 clamp(30px,3vw,51px)/1.15 Arial,Helvetica,sans-serif; }
.dynamics-values span { display:block; font-size:15px; color:var(--muted); margin-top:10px; }
#dynamics-description { grid-column:1/-1; border-top:1px solid var(--rule); padding-top:20px; margin:0; font-size:18px; }
.dynamics-data-note { font-size:13px!important; color:var(--muted)!important; line-height:1.6; margin:18px 0; }
.dynamics-data-note a { text-decoration:underline; }
.dynamics-table-details summary { cursor:pointer; color:var(--gold); font-size:18px; padding:12px 0; }
.dynamics-table-details th { text-align:left; padding:14px; border:1px solid var(--rule); font-size:15px; }
@media(max-width:900px) { .dynamics-years { grid-template-columns:repeat(5,minmax(0,1fr)); } .dynamics-year:nth-child(-n+5) { border-bottom:1px solid var(--rule); } .dynamics-panel { grid-template-columns:1fr; gap:20px; padding:24px; } .dynamics-year-title { display:flex; align-items:center; justify-content:space-between; } .dynamics-year-title>b { margin:0; } .dynamics-values>div:first-child { padding-left:0; border-left:0; } }
@media(max-width:600px) { .dynamics-heading { display:block; } .dynamics-values { grid-template-columns:1fr; gap:18px; } .dynamics-values>div { border-left:0; border-top:1px solid var(--rule); padding:16px 0 0; } .dynamics-values b { font-size:40px; } .dynamics-year { padding:13px 6px; font-size:15px; } }

.dynamics-years { grid-template-columns:repeat(9,minmax(0,1fr)); }
#dynamics-funding { font-size:clamp(26px,2.5vw,42px); text-wrap:balance; }
@media(max-width:900px) { .dynamics-years { grid-template-columns:repeat(5,minmax(0,1fr)); } }

.map-comparison-stack { display:grid; grid-template-columns:1fr; gap:16px; margin:20px 0; }
.map-comparison-photo { margin:0; border:1px solid var(--rule); background:#10372c; }
.map-comparison-photo figcaption { padding:9px 12px; font-size:12px; text-transform:uppercase; letter-spacing:.13em; color:var(--gold); border-bottom:1px solid var(--rule); }
.map-comparison-photo img { width:100%; height:155px; object-fit:cover; }
.map-photo-missing { min-height:110px; display:flex; align-items:center; padding:20px; color:var(--muted); font-size:14px; line-height:1.5; }
@media(max-width:720px) { .map-comparison-photo img { height:200px; } }

/* Native catalogue images: no forced crop or enlargement beyond source width. */
.map-comparison-photo img { display:block; width:100%; height:auto; max-height:280px; object-fit:contain; margin:0 auto; }
.map-original-link { display:block; background:#0c3026; cursor:zoom-in; }
.map-original-link:hover { background:#153e30; }

.event-scale-layout { display:grid; grid-template-columns:.85fr 1.7fr; gap:32px; align-items:stretch; }
.event-scale-numbers { display:grid; grid-template-columns:1fr 1fr; gap:22px; padding:24px; border:1px solid var(--rule); }
.event-scale-numbers b { display:block; font:400 clamp(42px,4vw,68px)/1 Arial,Helvetica,sans-serif; color:var(--gold); }
.event-scale-numbers span { display:block; margin-top:12px; font-size:16px; line-height:1.5; color:var(--muted); }
.event-scale figure { margin:0; min-width:0; }
.event-scale figure img { width:100%; height:350px; object-fit:cover; }
.event-scale figcaption,.event-panorama-photo figcaption,.event-source-note { font-size:12px!important; color:var(--muted)!important; line-height:1.6; margin:12px 0 20px; }
.event-panorama-photo { margin:24px 0; }
.event-panorama-photo img { width:100%; max-height:480px; object-fit:cover; border:1px solid var(--rule); }
.event-panorama-features { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin:20px 0 24px; }
.event-panorama-features span { border-top:1px solid var(--gold); padding-top:16px; font-size:18px; }
.event-mosaic { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:26px; }
.event-mosaic>article { padding:24px; background:#ffffff06; border:1px solid var(--rule); min-width:0; }
.event-mosaic>img { width:100%; height:100%; min-height:260px; object-fit:cover; }
.event-mosaic h3 { font-size:28px; margin-bottom:16px; }
.event-mosaic p,.event-mosaic li { font-size:17px; line-height:1.55; }
.event-mosaic ul { padding-left:20px; }
.event-mosaic p:last-child { margin-bottom:0; }
.event-gold-tile { background:#cfb985!important; color:#153b2f!important; }
.event-gold-tile p,.event-gold-tile h3 { color:#153b2f!important; }
.event-recognition-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:26px; }
.event-recognition-grid>article { padding:24px; background:#ffffff06; border:1px solid var(--rule); }
.event-recognition-grid h3 { font-size:32px; }
.event-recognition-grid p { font-size:18px; }
.event-recognition-grid>img { width:100%; height:100%; min-height:290px; object-fit:cover; }
@media(max-width:1050px) { .event-scale-layout { grid-template-columns:1fr; } .event-mosaic,.event-recognition-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .event-panorama-features { grid-template-columns:1fr 1fr; } }
@media(max-width:600px) { .event-mosaic,.event-recognition-grid { grid-template-columns:1fr; } .event-scale-numbers { padding:20px; gap:22px; } .event-scale-numbers span { font-size:14px; } .event-scale figure img { height:250px; } .event-panorama-features { grid-template-columns:1fr; } .event-mosaic>img,.event-recognition-grid>img { height:280px; min-height:0; } }

.event-scale figure img { width:100%; height:380px; object-fit:cover; object-position:center 57%; border:1px solid var(--rule); }
@media(max-width:600px) { .event-scale figure img { height:260px; } }

.event-scale figure img { width:100%; height:auto; object-fit:contain; object-position:center; background:#fff; }
/* Compact event scale, without a white image backing. */
.event-scale { padding-top:30px; padding-bottom:30px; }
.event-scale h2 { font-size:clamp(32px,3.4vw,48px); margin-bottom:20px; }
.event-scale-layout { grid-template-columns:1fr 1.65fr; gap:22px; align-items:stretch; }
.event-scale-numbers { padding:20px; gap:16px 22px; }
.event-scale-numbers b { font-size:clamp(36px,3.4vw,54px); }
.event-scale-numbers span { font-size:14px; line-height:1.4; margin-top:8px; }
.event-scale figure img { height:275px; width:100%; object-fit:cover; background:transparent; }
.event-scale figcaption { font-size:11px; margin:8px 0 0; }
@media(max-width:900px) { .event-scale-layout { grid-template-columns:1fr; } .event-scale figure img { height:260px; } }
@media(max-width:600px) { .event-scale { padding:26px 0; } .event-scale figure img { height:210px; } .event-scale-numbers { padding:18px; } }

/* Generated event visuals */
.event-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.event-mosaic>img{width:100%;height:360px;object-fit:cover}.event-recognition-grid{grid-template-columns:1fr 1.15fr 1fr}.event-recognition-grid>img{width:100%;height:420px;object-fit:cover}@media(max-width:700px){.event-mosaic,.event-recognition-grid{grid-template-columns:1fr}.event-mosaic>img,.event-recognition-grid>img{height:320px}}
