/* Scoped additions; original typography, palette and major page sections remain. */
.lf-page,.lf-program,.lf-summer,.lf-videos{font-family:inherit;font-size:16px;line-height:1.6}
.lf-links,.lf-years,.lf-download,.lf-months{font-size:16px;line-height:1.6}
.lf-links a,.lf-event h3 a{color:#2f3192}
.lf-page{padding:25px 0 50px}
.lf-years,.lf-links,.lf-months{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0}
.lf-years a{border:1px solid #2f3192;color:#2f3192;padding:8px 14px;border-radius:3px;text-decoration:none}
.lf-years a.is-active,.lf-years a:hover{background:#2f3192;color:white}
.lf-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.lf-event{min-width:0;padding:20px;border-left:3px solid #2f3192;background:rgba(255,255,255,.65)}
.lf-event h3{font-size:20px;line-height:1.4;margin:6px 0 12px;overflow-wrap:anywhere}
.lf-event p{margin:8px 0;font-size:16px;line-height:1.6}
.lf-event-meta{font-size:15px;line-height:1.5;color:#4c4e59}
.lf-summer .lf-event-list{width:100%;flex-basis:100%}
.lf-summer.about-place__bg{display:block;padding:32px}
.lf-program h2{font-size:32px;line-height:1.25;color:#2f3192}
.lf-download{display:inline-block;padding:12px 18px;background:#2f3192;color:#fff!important;border-radius:3px}
.lf-calendar .calendar__content{display:block;min-height:200px}
.lf-calendar .calendar__dates-row{display:flex}
.lf-calendar .calendar__dates-col{flex:0 0 14.285714%;max-width:14.285714%;min-width:0;text-align:center}
.lf-calendar .calendar__dates-col a{display:block;color:inherit;text-decoration:none}
.lf-calendar .calendar__dates-col a:focus-visible,.lf-years a:focus-visible,.lf-event a:focus-visible{outline:3px solid #2f3192;outline-offset:3px}
.lf-calendar-month{font-size:20px;font-weight:700;text-align:center}
.lf-calendar .calendar__row{margin-bottom:0}
.lf-calendar{padding-bottom:45px}
.lf-page .lf-calendar{padding-top:45px;background:none}
.lf-page .lf-calendar:before,.lf-page .lf-calendar:after{display:none}
.lf-page .lf-calendar .container{width:100%;max-width:100%;padding:0}
.lf-page .gallery{padding-top:60px;padding-bottom:20px}
.lf-page .gallery .container{padding:0}
.lf-page .gallery__title{margin-bottom:35px}
.lf-page .gallery__title:after{display:none}
.lf-videos.carousel-section{padding-top:70px;padding-bottom:40px;color:white}
.lf-videos.carousel-section:before,.lf-videos.carousel-section:after{display:none}
.lf-videos.carousel-section h2,.lf-videos.carousel-section h3,.lf-videos.carousel-section a{color:white}
.lf-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0}
.lf-archive-card{padding:26px;background:#fff;border:1px solid #d4d9ca;color:#2f3192;display:flex;flex-direction:column;gap:10px;border-radius:4px}
.lf-archive-card strong{font-size:38px;line-height:1.2}
.lf-richtext{overflow-wrap:anywhere;line-height:1.7}
.lf-richtext img{max-width:100%;height:auto}
.lf-richtext table{display:block;max-width:100%;overflow-x:auto}
.lf-video-player{position:relative;width:100%;padding-top:56.25%;background:#171c31;border-radius:4px;overflow:hidden}
.lf-video-player iframe,.lf-video-player video{position:absolute;inset:0;width:100%;height:100%;border:0}
.lf-video-link{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff!important;padding:24px;text-align:center}
.lf-video{margin:25px 0 40px}.lf-video h3{font-size:22px;line-height:1.4;margin-top:18px}
.lf-rutube-icon{font-family:Arial,sans-serif;font-size:24px;font-weight:800}
.lf-news-links li{margin:12px 0}
.header__nav.lf-navigation{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px 18px;max-width:760px}
.lf-navigation .header__nav-link{margin:0;font-size:14px;white-space:normal}
@media(max-width:1199px){.header__nav.lf-navigation{max-width:600px;gap:8px 12px}.lf-navigation .header__nav-link{font-size:13px}}
@media(max-width:991px){.header__nav.lf-navigation{display:none!important}}
@media(max-width:767px){.lf-event-list,.lf-archive-grid{grid-template-columns:1fr}.lf-program h2{font-size:25px}.lf-event{padding:16px}.lf-years{gap:10px}.lf-calendar .calendar__content{min-height:0;margin-bottom:24px}.lf-page{padding:15px 0 30px}.lf-summer h3{font-size:26px}}
