body { outline:0px solid red;
	font:normal 13px helvetica, arial, sans-serif;
	color:#2243A0;
	overflow:none;
	background-color:#204066;
}

a {
	text-decoration:none;
}

img{
	border:none;
}

* {
	padding:0;
	margin:0;
}

.clear {
	clear:both;
}

#headerwrap{ outline:0px solid green;
	height:35px;
}
/* Сайт в разработке */
#fixed{
	color:#888888;
	text-align:center;
	font:bold 10px Verdana;
	padding:10px;
}

/* Блок счётчиков */
#counters{
	margin:10px auto;
	text-align:center;
	color:#ffffff;
}

/* Вариации шрифтов */
.verybiggest 	{ 	text-align:left; 	font-size:160% }
.biggest 	{ 	text-align:left; 	font-size:140% }
.big 		{ 	text-align:left; 	font-size:120%; }
.small 		{ 	text-align:left; 	font-size:90% }
.smallest 	{ 	font-size:70% 		}
.verysmall	{	font-size:60% 		}
.centered 	{	text-align:center 	}
.boldered 	{	font-weight:bold; 	font-size:110% }
.bold 		{	font-weight:bold 	}
.italic 		{	font-style:italic 	}

/* Оболочка */
#wrapper { outline:0px solid red; 
	background:url(../images/wrapper.jpg) no-repeat;
	background-color:#FFFFFF;
	width:1000px;
	margin:0 auto;
	box-shadow: 0px 0px 35px #FFFFFF;
	padding:0px;
	border-bottom-right-radius:35px;
	border-bottom-left-radius:35px;
}

#wrapper_thin { outline:0px solid red; 
	background:url(../images/wrapper_thin.png) no-repeat;
	background-color:#FFFFFF;
	width:1000px;
	margin:0 auto;
	box-shadow: 0px 0px 35px #FFFFFF;
	padding:0px;
	border-bottom-right-radius:35px;
	border-bottom-left-radius:35px;
}

#logo{
	padding:0px 0px 0px 35px;
}
#mainwrap{ outline:0px solid red;
	height:145px;
}
#undermainwrap{ outline:0px solid red;
	height:40px;
	background-color:#204066;
}

#infosectionwrap{ outline:0px solid blue;
	color:#204066;
	padding:17px;
	text-align:center;
}

.hrsection{ outline:0px solid red;
	color:#204066;
	padding:0px;
	margin:0 auto;
	text-align:center;
	width:930px;
}


.sectionswrap{ outline:0px solid blue;
	padding:18px 35px;
}
.sectionImg {outline:0px solid blue;
	padding:0 0 15px 0;
	width: 300px;
	float: left;
}
.sectionImg img {
	width: 300px;
}
.section{ outline:0px solid blue;
	padding:0 15px;
	width: 600px;
	float: left;
}
.sectionSource {outline: 0px solid blue;
	padding:10px 0 0 0;
	font:bold italic 13px helvetica, arial, sans-serif;
	color:#407589;
	text-align: center;
}
.sectionSourceDomain {outline: 0px solid blue;
	padding:5px 0 0 0;
	font:bold 14px helvetica, arial, sans-serif;
	color:#C7C3B7;
	text-align: center;
	text-transform: uppercase;
}
.spanSource {
	font:bold italic 11px helvetica, arial, sans-serif;
	color:#AAAAAA;
	padding: 0 0 0 10px;

}
.header1 {
	font:bold 26px helvetica, arial, sans-serif;
	color:#2243A0;
	padding:0 0 10px 0;
}
.header2 {
	font:bold 20px helvetica, arial, sans-serif;
	color:#2243A0;
	padding:0 0 10px 0;
}

.usualText {
	font:15px helvetica, arial, sans-serif;
	color:#2243A0;
	padding:10px 0 15px;
	line-height:20px;
}


/* Полоска с годами */
#menubar {
	height:100%;
	padding:0 35px;
}
#menubar ul {
	list-style:none;
	display:flex;
	justify-content:center;
	align-items:flex-end;
	gap:4px;
	height:100%;
}
#menubar a {
	display:block;
	padding:9px 16px 8px;
	font:bold 20px helvetica, arial, sans-serif;
	color:#C9D6E8;
	border-radius:6px 6px 0 0;
	transition:background-color .15s, color .15s;
}
#menubar a:hover {
	color:#FFFFFF;
	background-color:rgba(255,255,255,0.12);
}
#menubar li.active a {
	color:#204066;
	background-color:#FFFFFF;
}

.newssectionswrap{ outline:0px solid blue;
	color:#204066;
	padding:10px;
	text-align:center;
	margin:0px auto;

}
.newssectionswrap ul{ 
	list-style:none;
}
.newssectionswrap li { 
	display:inline;
	padding:0 10px;

}
.newssectionswrap img { 
	height:30px;
	padding:8px 0 0 0;
}

.emptysectionswrap{ outline:0px solid red;
	color:#204066;
	padding:15px;
	text-align:center;
}

.sectionImg p img.flagImg {
	height: 35px;
	width: 45px;
	float: left;
}

/* Заголовок страницы года — ссылка на титульную страницу событий */
.headerlink {
	position:relative;
	display:inline-block;
	color:inherit;
	transition:color .2s ease;
}
.headerlink:hover {
	color:#1E5BFF;
}
.headerlink::after {
	content:attr(data-hint);
	position:absolute;
	left:0;
	top:100%;
	z-index:5;
	margin-top:4px;
	padding:5px 12px;
	border-radius:14px;
	background:linear-gradient(120deg, #1E5BFF, #22D3EE);
	box-shadow:0 0 12px rgba(34,211,238,0.55);
	color:#FFFFFF;
	font:bold 13px helvetica, arial, sans-serif;
	white-space:nowrap;
	pointer-events:none;
	opacity:0;
	transform:translateY(-4px);
	transition:opacity .2s ease, transform .2s ease;
}
.headerlink:hover::after {
	opacity:1;
	transform:translateY(0);
}

/* Страница года: мероприятия по датам */
.eventsgrid {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	padding:10px 0;
}
.eventcard {
	width:296px;
	text-align:center;
}
/* Плитка мероприятия: подъём при наведении, «вдавливание» при нажатии */
.eventtile {
	position:relative;
	display:block;
	color:inherit;
	padding-bottom:10px;
	border-radius:8px;
	cursor:pointer;
	transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.eventtile:hover {
	transform:translateY(-4px);
	background-color:#F2F6FC;
	box-shadow:0 8px 20px rgba(32,64,102,0.25);
}
.eventtile:active {
	transform:translateY(0) scale(0.97);
	box-shadow:0 2px 6px rgba(32,64,102,0.3);
	transition-duration:.06s;
}
.eventcover {
	position:relative;
	overflow:hidden;
	border-radius:8px 8px 0 0;
	background-color:#EEEEEE;
}
.eventcover img {
	display:block;
	width:296px;
	height:200px;
	object-fit:cover;
	transition:transform .3s ease, filter .3s ease;
}
/* Мероприятие без фото: логотип клуба вместо обложки */
.eventcover.nophoto {
	height:200px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:linear-gradient(160deg, #EEF3F9 0%, #CFDCEB 100%);
}
.eventcover.nophoto img {
	width:210px;
	height:auto;
	object-fit:contain;
	opacity:.8;
}
.eventtile:hover .eventcover img {
	transform:scale(1.05);
	filter:brightness(1.1);
}
/* Начало описания — выезжает снизу на обложке, но только при наведении на текст под картинкой
   (.eventtext); сама плашка — сосед .eventtext, поэтому работает `~`, а не :has() */
.eventexcerpt {
	position:absolute;
	top:0; left:0; right:0;
	height:200px; /* высота обложки */
	overflow:hidden;
	border-radius:8px 8px 0 0;
	pointer-events:none;
}
.eventexcerpt span {
	position:absolute;
	left:0; right:0; bottom:0;
	display:block;
	padding:10px 12px;
	background-color:rgba(20,40,66,0.88);
	color:#FFFFFF;
	font:13px/18px helvetica, arial, sans-serif;
	text-align:left;
	transform:translateY(100%);
	opacity:0;
	transition:transform .25s ease, opacity .25s ease;
}
.eventtext:hover ~ .eventexcerpt span {
	transform:translateY(0);
	opacity:1;
}
.eventdate {
	font:bold 18px helvetica, arial, sans-serif;
	color:#2243A0;
	padding:8px 8px 2px;
}
.eventtitle {
	font:15px helvetica, arial, sans-serif;
	color:#204066;
	padding:0 10px 4px;
	line-height:19px;
}
.eventcount {
	font:13px helvetica, arial, sans-serif;
	color:#888888;
}

/* Страница мероприятия */
.backlink {
	display:flex;
	align-items:center;
	padding:0 0 12px;
}
.backlink a {
	font:bold 14px helvetica, arial, sans-serif;
	color:#407589;
}
.backlink a:hover {
	color:#2243A0;
	text-decoration:underline;
}
/* Стрелки к предыдущему/следующему мероприятию года */
.eventnav {
	margin-left:auto;
	white-space:nowrap;
}
.backlink .eventnav a,
.eventnav .disabled {
	display:inline-block;
	width:32px;
	height:32px;
	margin-left:6px;
	border-radius:50%;
	background:#407589;
	font:bold 24px/29px helvetica, arial, sans-serif;
	text-align:center;
	vertical-align:middle;
	color:#ffffff;
	text-decoration:none;
	box-shadow:0 1px 3px rgba(0, 0, 0, 0.25);
	transition:background-color 0.15s, transform 0.15s, box-shadow 0.15s;
}
.backlink .eventnav a:hover,
.backlink .eventnav a:focus-visible {
	background:#2243A0;
	color:#ffffff;
	text-decoration:none;
	transform:scale(1.12);
	box-shadow:0 3px 8px rgba(34, 67, 160, 0.45);
}
.eventnav .disabled {
	background:#e4e4e4;
	color:#bbbbbb;
	box-shadow:none;
	cursor:default;
}
.eventmeta {
	font:15px helvetica, arial, sans-serif;
	color:#888888;
	padding:0 0 15px;
}
.eventdescription {
	max-width:920px;
	padding:0 0 20px;
}
.eventdescription p {
	font:15px/1.6 helvetica, arial, sans-serif;
	color:#333333;
	padding:0 0 10px;
	/* Красная строка и выравнивание по ширине; переносы слов — чтобы не было «дыр» между словами */
	text-indent:1.5em;
	text-align:justify;
	-webkit-hyphens:auto;
	hyphens:auto;
}
.eventdescription a {
	color:#1E5BFF;
	text-decoration:underline;
}
.eventdescription a:hover {
	color:#2243A0;
}
/* Выделение маркером в цветах сайта */
.eventdescription mark {
	padding:0 3px;
	border-radius:3px;
	background-color:#CFF4FB;
	color:inherit;
}
.eventdescription ul,
.eventdescription ol {
	margin:0 0 10px 22px;
	font:15px/1.6 helvetica, arial, sans-serif;
	color:#333333;
}
.eventdescription li {
	padding:0 0 4px;
}
.nophotos {
	padding:40px 20px;
	text-align:center;
	border-radius:8px;
	background:linear-gradient(160deg, #EEF3F9 0%, #CFDCEB 100%);
}
.nophotos img {
	width:260px;
	opacity:.8;
}
.nophotos p {
	font:17px helvetica, arial, sans-serif;
	color:#204066;
	padding:15px 0 0;
}
.photogrid {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	gap:12px;
}
.photogrid a {
	display:block;
	overflow:hidden;
	border-radius:6px;
	background-color:#EEEEEE;
	transition:transform .18s ease, box-shadow .18s ease;
}
.photogrid img {
	display:block;
	width:223px;
	height:167px;
	object-fit:cover;
	transition:transform .3s ease, filter .3s ease;
}
/* Короткая подпись под превью: не больше четырёх строк */
.photogrid li {
	width:223px;
}
.photocaption {
	padding:5px 2px 0;
	font:12px/16px helvetica, arial, sans-serif;
	color:#555555;
	display:-webkit-box;
	-webkit-line-clamp:4;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
.photogrid a:hover {
	transform:translateY(-3px);
	box-shadow:0 6px 16px rgba(32,64,102,0.3);
}
.photogrid a:hover img {
	transform:scale(1.05);
	filter:brightness(1.1);
}
.photogrid a:active {
	transform:translateY(0) scale(0.96);
	transition-duration:.06s;
}

/* Просмотр фото поверх страницы */
.lightbox {
	display:none;
	position:fixed;
	top:0; right:0; bottom:0; left:0;
	z-index:1000;
	background-color:rgba(10,20,35,0.92);
	align-items:center;
	justify-content:center;
}
.lightbox.open {
	display:flex;
}
/* Фото и подпись под ним: фото ужимается, чтобы подпись всегда помещалась */
.lb-figure {
	display:flex;
	flex-direction:column;
	align-items:center;
	max-width:calc(100% - 140px);
	max-height:calc(100% - 80px);
}
.lb-img {
	flex:0 1 auto;
	min-height:0;
	max-width:100%;
	object-fit:contain;
	box-shadow:0 10px 40px rgba(0,0,0,0.6);
}
.lb-caption {
	flex:none;
	max-width:900px;
	max-height:30vh;
	overflow-y:auto;
	padding:12px 10px 0;
	color:#E6EDF6;
	font:16px/1.5 helvetica, arial, sans-serif;
	text-align:center;
}
.lightbox button {
	position:absolute;
	border:none;
	background:none;
	color:#FFFFFF;
	cursor:pointer;
	opacity:.7;
	font-family:helvetica, arial, sans-serif;
	transition:opacity .15s;
}
.lightbox button:hover {
	opacity:1;
}
.lb-close {
	top:10px;
	right:20px;
	font-size:44px;
}
.lb-prev, .lb-next {
	top:50%;
	margin-top:-50px;
	height:100px;
	width:60px;
	font-size:70px;
}
.lb-prev { left:10px; }
.lb-next { right:10px; }
.lb-counter {
	position:absolute;
	bottom:15px;
	left:0; right:0;
	text-align:center;
	color:#C9D6E8;
	font:14px helvetica, arial, sans-serif;
}

/* ===== Титульный блок страницы событий (концепция B: фото в неоновой рамке) ===== */
.evhero {
	--evhero-neon-1:#1E5BFF;   /* насыщенный синий */
	--evhero-neon-2:#22D3EE;   /* бирюзовый неон */
	--evhero-neon-3:#5B8CFF;   /* светло-синий */
	--evhero-ink:#204066;
	padding:4px 0 10px;
}

/* Заголовок */
.evhero-title {
	font:bold 34px/1.15 helvetica, arial, sans-serif;
	color:#2243A0;
	text-align:center;
	letter-spacing:-0.3px;
	padding:0 0 22px;
}
/* Заголовок и картинка ведут к ленте с годами внизу */
.evhero-jump {
	color:inherit;
	cursor:pointer;
}
.evhero-title .evhero-jump {
	position:relative;
	display:inline-block;
	transition:color .2s ease, text-shadow .2s ease;
}
.evhero-title .evhero-jump:hover {
	color:var(--evhero-neon-1);
	text-shadow:0 0 12px rgba(34,211,238,0.45);
}
/* Подсказка «Выберите год» при наведении на заголовок */
.evhero-title .evhero-jump::after {
	content:attr(data-hint);
	position:absolute;
	left:50%;
	top:100%;
	z-index:5;
	margin-top:6px;
	padding:5px 12px;
	border-radius:14px;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2));
	box-shadow:0 0 12px rgba(34,211,238,0.55);
	color:#FFFFFF;
	font:bold 13px helvetica, arial, sans-serif;
	letter-spacing:0;
	white-space:nowrap;
	text-shadow:none;
	pointer-events:none;
	opacity:0;
	transform:translate(-50%, -4px);
	transition:opacity .2s ease, transform .2s ease;
}
.evhero-title .evhero-jump:hover::after {
	opacity:1;
	transform:translate(-50%, 0);
}

/* Рамка с картинкой */
.evhero-frame {
	position:relative;
	max-width:640px;
	margin:0 auto 26px;
	transition:transform .35s ease;
}
/* Мягкое свечение позади рамки */
.evhero-glow {
	position:absolute;
	top:8px; right:8px; bottom:8px; left:8px;
	border-radius:20px;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2), var(--evhero-neon-3), var(--evhero-neon-1));
	background-size:300% 300%;
	filter:blur(22px);
	opacity:.55;
	transition:opacity .35s ease, filter .35s ease;
	animation:evhero-flow 10s linear infinite;
}
/* Градиентная обводка */
.evhero-border {
	display:block;
	position:relative;
	padding:4px;
	border-radius:18px;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2), var(--evhero-neon-3), var(--evhero-neon-1));
	background-size:300% 300%;
	box-shadow:0 0 0 1px rgba(255,255,255,0.6) inset, 0 10px 30px rgba(32,64,102,0.25);
	animation:evhero-flow 10s linear infinite;
}
.evhero-frame:hover {
	transform:translateY(-3px);
}
.evhero-frame:hover .evhero-glow {
	opacity:.9;
	filter:blur(28px);
}

/* Карусель фото внутри неоновой рамки */
.evcar {
	position:relative;
	overflow:hidden;
	aspect-ratio:1280 / 868;
	border-radius:14px;
	background-color:#0B1E45; /* пока фото грузится — тёмно-синий, в тон коллажу */
}
.evcar-slides,
.evcar-slide,
.evcar-bg {
	position:absolute;
	top:0; right:0; bottom:0; left:0;
}
/* Слайды накладываются друг на друга и сменяются плавным проявлением */
.evcar-slide {
	display:block;
	opacity:0;
	visibility:hidden;
	cursor:pointer; /* клик — следующее фото */
	transition:opacity .7s ease, visibility 0s linear .7s;
}
.evcar-slide.active {
	opacity:1;
	visibility:visible;
	transition:opacity .7s ease, visibility 0s;
}
/* Фото целиком, без обрезки; поля по бокам — размытая копия того же фото */
.evcar-bg {
	background-size:cover;
	background-position:center;
	filter:blur(18px) brightness(.6);
	transform:scale(1.15);
}
.evcar-slide img {
	position:relative;
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
	transition:filter .35s ease;
}
.evhero-frame:hover .evcar-slide img {
	filter:brightness(1.06) saturate(1.08);
}

/* Полоски прогресса сверху: прошедшие заполнены, текущая заполняется за 5 секунд */
.evcar-progress {
	position:absolute;
	top:10px; left:12px; right:12px;
	z-index:3;
	display:flex;
	gap:3px;
}
.evcar-seg {
	flex:1;
	height:4px;
	padding:0;
	border:none;
	border-radius:2px;
	background-color:rgba(255,255,255,0.35);
	box-shadow:0 1px 3px rgba(0,0,0,0.35);
	overflow:hidden;
	cursor:pointer;
}
.evcar-seg span {
	display:block;
	height:100%;
	width:0;
	background:linear-gradient(90deg, #FFFFFF, var(--evhero-neon-2));
	box-shadow:0 0 6px rgba(34,211,238,0.8);
}
.evcar-seg.done span {
	width:100%;
}
.evcar-seg.current span {
	animation:evcar-fill 5s linear forwards;
}
/* Пауза: мышь над каруселью или открыт просмотр фото */
.evcar.paused .evcar-seg.current span {
	animation-play-state:paused;
}
@keyframes evcar-fill {
	from { width:0; }
	to   { width:100%; }
}

/* Стрелки слева и справа */
.evcar-prev,
.evcar-next {
	position:absolute;
	top:50%;
	z-index:3;
	width:50px;
	height:50px;
	margin-top:-25px;
	padding:0 0 5px;
	border:2px solid rgba(255,255,255,0.9);
	border-radius:50%;
	background-color:rgba(8,22,40,0.75);
	color:#FFFFFF;
	font:bold 40px/40px helvetica, arial, sans-serif;
	text-shadow:0 1px 3px rgba(0,0,0,0.6);
	box-shadow:0 2px 10px rgba(0,0,0,0.5), 0 0 10px rgba(34,211,238,0.45);
	cursor:pointer;
	transition:background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.evcar-prev { left:12px; }
.evcar-next { right:12px; }
.evcar-prev:hover,
.evcar-next:hover,
.evcar-prev:focus-visible,
.evcar-next:focus-visible {
	outline:none;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2));
	box-shadow:0 2px 10px rgba(0,0,0,0.5), 0 0 18px rgba(34,211,238,0.9);
	transform:scale(1.08);
}
.evcar-prev:active,
.evcar-next:active {
	transform:scale(0.95);
	transition-duration:.06s;
}
/* Один слайд — листать нечего */
.evcar.single .evcar-prev,
.evcar.single .evcar-next,
.evcar.single .evcar-progress {
	display:none;
}

@keyframes evhero-flow {
	0%   { background-position:0% 50%; }
	100% { background-position:300% 50%; }
}

/* Лента-таймлайн с годами */
.evhero-years {
	position:relative;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:10px 6px;
	padding:0 0 18px;
}
/* Линия времени через центр пилюль */
.evhero-years::before {
	content:"";
	position:absolute;
	left:10px; right:10px;
	top:17px;
	height:2px;
	border-radius:1px;
	background:linear-gradient(90deg, var(--evhero-neon-1), var(--evhero-neon-2), var(--evhero-neon-1));
	opacity:.45;
}
.evhero-years li {
	position:relative;
}
.evhero-years a {
	position:relative;
	display:flex;
	align-items:center;
	gap:7px;
	height:36px;
	padding:0 15px 0 12px;
	border-radius:18px;
	border:2px solid #C9D6E8;
	background-color:#FFFFFF;
	font:bold 16px helvetica, arial, sans-serif;
	color:var(--evhero-ink);
	transition:color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.evhero-dot {
	width:8px;
	height:8px;
	border-radius:50%;
	background:linear-gradient(135deg, var(--evhero-neon-1), var(--evhero-neon-2));
	transition:background .2s ease, box-shadow .2s ease;
}
.evhero-years a:hover,
.evhero-years a:focus-visible {
	color:#FFFFFF;
	border-color:transparent;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2));
	box-shadow:0 0 14px rgba(34,211,238,0.55), 0 4px 10px rgba(32,64,102,0.25);
	transform:translateY(-2px);
	outline:none;
}
.evhero-years a:hover .evhero-dot,
.evhero-years a:focus-visible .evhero-dot {
	background:#FFFFFF;
	box-shadow:0 0 6px #FFFFFF;
}
.evhero-years a:active {
	transform:translateY(0) scale(0.96);
	transition-duration:.06s;
}

/* Лента с годами внизу страницы года */
.evyears-bottom {
	clear:both;
	padding-top:28px;
}
/* Текущий год — залит неоновым градиентом */
.evhero-years a.current {
	color:#FFFFFF;
	border-color:transparent;
	background:linear-gradient(120deg, var(--evhero-neon-1), var(--evhero-neon-2));
	box-shadow:0 0 14px rgba(34,211,238,0.55), 0 4px 10px rgba(32,64,102,0.25);
}
.evhero-years a.current .evhero-dot {
	background:#FFFFFF;
	box-shadow:0 0 6px #FFFFFF;
}

/* Без анимаций для тех, кто их отключил */
@media (prefers-reduced-motion: reduce) {
	.evhero-glow,
	.evhero-border {
		animation:none;
		background-position:0% 50%;
	}
	.evhero-frame,
	.evhero-glow,
	.evcar-slide,
	.evcar-slide.active,
	.evcar-slide img,
	.evhero-years a,
	.evhero-dot {
		transition:none;
	}
	.evhero-frame:hover,
	.evhero-years a:hover,
	.evhero-years a:focus-visible,
	.evhero-years a:active {
		transform:none;
	}
}
