html > body > main > header > details.webcam > summary
{

	position: relative;
	z-index: 1;
	
	display: inline-block;
	overflow: hidden;
	
	box-sizing: border-box;
	height: 56px;
	padding: 0 32px;
	margin: 0;
	
	font-size: 16px;
	font-weight: 700;
	line-height: 56px;
	white-space: nowrap;
	text-align: center;
	
	-webkit-appearance: none;
	
	   -moz-appearance: none;
	
	        appearance: none;
	
	color: white;
	background: #1b8b80;
	
	border: none;
	border-radius: 28px;
	box-shadow: 16px 0 20px rgba( 86, 63, 0, 0.08 );
}

	html > body > main > header > details.webcam > summary:not([disabled])
	{
		cursor: pointer;
	}

	html > body > main > header > details.webcam > summary:not([disabled]):focus::before, html > body > main > header > details.webcam > summary:not([disabled]):hover::before
			{
				-webkit-transform: translateY( 0 );
				        transform: translateY( 0 );
			}

	html > body > main > header > details.webcam > summary::before
	{
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;

		width: 100%;
		height: 100%;

		content: '';

		background: #072b31;

		border-radius: 28px;

		-webkit-transform: translateY( 100% );

		        transform: translateY( 100% );

		transition: -webkit-transform 0.25s;

		transition: transform 0.25s;

		transition: transform 0.25s, -webkit-transform 0.25s;
	}

/**
 * Сбросить всё оформление со стандартной кнопки
 */
html > body > main > header > h1, html > body > main > header.albums > h2, html > body > main > div.albums > article > h3
{
	margin: 0 0 24px;
	
	font-family: "Circe",sans-serif;
	font-size: 44px;
	font-weight: 400;
	line-height: 1.09;
}
html > body > main
{
	position: relative;
	z-index: 1;
	
	overflow: hidden;
	
	box-sizing: border-box;
	height: auto;
	min-height: 100vh;
	padding: 0 0 0 70px;
}
html > body > main > header > select, html > body > main > header.albums > select
{
	box-sizing: border-box;
	height: 40px;
	padding: 0 40px 0 15px;
	
	-webkit-appearance: none;
	
	   -moz-appearance: none;
	
	        appearance: none;
	
	color: inherit;
	background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='38' viewBox='0 0 32 38' stroke='%23d4d7d9'%3E%3Cg fill='none'%3E%3Cpath stroke-width='1' d='M0.5 0v38'/%3E%3Cpath stroke-width='1.5' d='M9.5 15.5l6.5 7l6.5 -7'/%3E%3C/g%3E%3C/svg%3E") right top no-repeat white;
	
	border: 1px solid #d4d7d9;
	border-radius: 3px;
}
html > body > main > header > select > option, html > body > main > header.albums > select > option
	{
		line-height: 1.5;
		
		color: inherit;
		background: white;
	}
html > body > main > header > select:focus, html > body > main > header.albums > select:focus
	{
		background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='38' viewBox='0 0 32 38' stroke='rgb(131, 139, 145)'%3E%3Cg fill='none'%3E%3Cpath stroke-width='1' d='M0.5 0v38'/%3E%3Cpath stroke-width='1.5' d='M9.5 15.5l6.5 7l6.5 -7'/%3E%3C/g%3E%3C/svg%3E");
		
		border-color: rgb(131, 139, 145);
		outline: none;
	}
/**
 * Сбросить оформление с details и скрыть контент
 */
html > body > main > div.albums > article > details
{
	
	font-size: 14px;
	
	color: #072b31;
}
html > body > main > div.albums > article > details > summary
	{
		display: block;
		
		-webkit-appearance: none;
		
		   -moz-appearance: none;
		
		        appearance: none;
	}
html > body > main > div.albums > article > details > summary::-webkit-details-marker
		{
			display: none;
		}
html > body > main > div.albums > article > details > summary ~ *
		{
			display: none;
		}
html > body > main > div.albums > article > details > summary
	{
		opacity: 0;
		
		transition: opacity 0.3s;
	}
html > body > main > div.albums > article > details > summary:focus
		{
			opacity: 1;
			
			outline: none;
		}
html > body > main > div.albums > article > details > summary::after
		{
			display: inline-block;
			
			width: 40px;
			height: 40px;
			margin: -2px 0 0 0.5em;
			
			vertical-align: middle;
			
			content: "";
			
			background: url("images/arrow-small.svg") center center no-repeat #1b8b80;
			
			border-radius: 50%;
			box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
		}

html > body > main > div.albums > article:hover > details > summary
	{
		opacity: 1;
	}
%button_stroke:not([disabled]):hover, %button_stroke:not([disabled]):focus
	{
		color: #072b31;
	}
html > body > main > div.albums > article > h3
{
	font-size: 21px;
	font-weight: 700;
	line-height: 1.5;
}
html > body > main > header.albums > h2
{
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
}
html > body > main
{
	padding: 60px
		calc(6.25vw - 4px)
		60px
		calc(6.25vw + 66px);
}
@supports (display: grid)
	{
	}

@supports (display: grid)
	{
		
		@media (max-width: 1099px)
		{
		}
	}

html > body > main > div.albums
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

/* Псевдоэлементы заполнят пространство, если не хватает элементов для ряда */

html > body > main > div.albums::before, html > body > main > div.albums::after
	{
		display: block;
		
		width: calc(25vw - 18px);
		
		content: "";
	}

html > body > main > div.albums::before
	{
		-webkit-order: 1;
		    -ms-flex-order: 1;
		        order: 1;
	}

html > body > main > div.construction-progress
{
	position: relative;
	z-index: 2;
	
	padding: 25px 0 0;
	margin: 40px 0 0;
}

html > body > main > div.construction-progress > div.rail
{
	width: 100%;
	height: 6px;
	
	background: #e6e6e6;
	
	border-radius: 3px;
}

html > body > main > div.construction-progress > div.track
{
	position: absolute;
	top: 25px;
	left: 0;
	
	width: 0;
	height: 6px;
	
	background: #1b8b80;
	
	border-radius: 3px;
}

html > body > main > div.construction-progress > ul.marks
{
	position: absolute;
	top: 0;
	left: 0;
	
	width: 100%;
	height: 25px;
	padding: 0;
	margin: 0;
	
	font-size: 14px;
	
	list-style: none;
	
	color: #072b31;
}

html > body > main > div.construction-progress > ul.marks > li
	{
		position: absolute;
		
		display: block;
		
		height: 100%;
	}

html > body > main > div.construction-progress > ul.marks > li.start
		{
			left: 0;
		}

html > body > main > div.construction-progress > ul.marks > li.finish
		{
			right: 0;
		}

html > body > main > div.construction-progress > ul.marks > li.quarter, html > body > main > div.construction-progress > ul.marks > li.middle, html > body > main > div.construction-progress > ul.marks > li.three-quarter
		{
			-webkit-transform: translateX(-50%);
			        transform: translateX(-50%);
		}

html > body > main > div.construction-progress > ul.marks > li.quarter::after, html > body > main > div.construction-progress > ul.marks > li.middle::after, html > body > main > div.construction-progress > ul.marks > li.three-quarter::after
			{
				
				position: absolute;
				top: 100%;
				left: calc(50% - 1px);
				
				width: 2px;
				height: 6px;
				
				content: "";
				
				background: white;
			}

html > body > main > div.construction-progress > ul.marks > li.quarter
		{
			left: 25%;
		}

html > body > main > div.construction-progress > ul.marks > li.middle
		{
			left: 50%;
		}

html > body > main > div.construction-progress > ul.marks > li.three-quarter
		{
			left: 75%;
		}

html > body > main > header
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

html > body > main > header > details.webcam
{
	-webkit-align-self: flex-start;
	    -ms-flex-item-align: start;
	        align-self: flex-start;
	
	margin-top: -5px;
	margin-left: auto;
}

html > body > main > header > details.webcam > summary
	{
		
		display: block;
	}

html > body > main > header > details.webcam > summary::-webkit-details-marker
		{
			display: none;
		}

html > body > main > header > details.webcam > summary ~ *
		{
			display: none;
		}

html > body > main > header > details.webcam > summary > svg
		{
			position: relative;
			top: 1px;
			
			margin-right: 15px;
			
			stroke: white;
		}

html > body > main > header > h1
{
	
	margin-right: 40px;
	margin-bottom: 0;
}

html > body > main > header > select
{
	
	width: 230px;
	margin-right: 40px;
}

html > body > main > header.albums
{
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	
	margin: 40px 0;
}

html > body > main > header.albums > h2
{
	
	display: inline;
	
	margin: 0 30px 0 0;
	
	vertical-align: middle;
}

html > body > main > header.albums > select
{
	
	width: 160px;
}

html > body > main > div.albums > article
{
	position: relative;
	
	display: -webkit-flex;
	
	display: -ms-flexbox;
	
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-align-items: baseline;
	    -ms-flex-align: baseline;
	        align-items: baseline;
	
	width: calc(25vw - 18px);
	margin: 0 0 80px;
	
	cursor: pointer;
}

html > body > main > div.albums > article:not(.current-stage), html > body > main > div.albums > article:not(.current-year)
	{
		display: none;
	}

html > body > main > div.albums > article > details
{
	
	position: absolute;
	bottom: -7px;
	right: 0;
}

html > body > main > div.albums > article > details > summary
	{
		background: white;
	}

html > body > main > div.albums > article > div.image
{
	position: relative;
	
	-webkit-order: -1;
	
	    -ms-flex-order: -1;
	
	        order: -1;
	
	width: 100%;
	margin: 0 0 15px;
	
	transition: opacity 0.3s;
}

html > body > main > div.albums > article > div.image::before
	{
		display: block;
		
		width: 100%;
		padding-top: 75%;
		
		content: "";
	}

html > body > main > div.albums > article > div.image > img
	{
		position: absolute;
		top: 0;
		left: 0;
		
		display: block;
		
		width: 100%;
		height: 100%;
		
		object-fit: cover;
	}

html > body > main > div.albums > article > h3
{
	
	margin: 0;
}

html > body > main > div.albums > article > p.count
{
	
	min-height: 13px;
	padding-left: 24px;
	margin: 0 0 0 auto;
	
	font-size: 14px;
	
	transition: opacity 0.3s;
	
	color: rgba(7, 43, 49, 0.8);
	background: url("images/icon-picture.svg") left 1px no-repeat;
	
	/*@media (width < $screen-notebook)
	{
		> span.units
		{
			display: none;
		}
	}*/
}

html > body > main > div.construction-progress > ul.points
{
	position: absolute;
	top: 25px;
	left: 0;
	
	width: 100%;
	height: 6px;
	padding: 0;
	margin: 0;
	
	list-style: none;
}

html > body > main > div.albums > article:hover > div.image
{
	opacity: 0.3;
}

html > body > main > div.albums > article:hover > p.count
{
	opacity: 0;
}

html > body > main > div.construction-progress > ul.points > li
{
	
	position: absolute;
	top: -1px;
	
	display: block;
	
	width: 8px;
	height: 8px;
	
	cursor: help;
	
	background: white;
	
	border-radius: 50%;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.3);
}

html > body > main > div.construction-progress > ul.points > li::before
	{
		
		position: absolute;
		top: -10px;
		right: -10px;
		bottom: -10px;
		left: -10px;
		
		content: "";
	}

html > body > main > div.construction-progress > ul.points > li:hover > div.content
{
	visibility: visible;
	
	opacity: 1;
	
	transition: opacity 0.3s;
}

html > body > main > div.construction-progress > ul.points > li > div.content
{
	
	position: absolute;
	top: calc(100% + 15px);
	left: -40px;
	
	visibility: hidden;
	
	width: 250px;
	padding: 10px 0;
	
	cursor: default;
	
	opacity: 0;
	background: white;
	
	border-radius: 3px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	
	transition: opacity 0.3s,
		visibility 0s 0.3s;
}

@supports ((-webkit-filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.2))) or (filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.2))))
	{

html > body > main > div.construction-progress > ul.points > li > div.content
{
		-webkit-filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.2));
		        filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.2));
		
		box-shadow: none
}
	}

html > body > main > div.construction-progress > ul.points > li > div.content::before
	{
		
		position: absolute;
		top: -15px;
		left: 34px;
		
		width: 0;
		height: 5px;
		
		content: "";
		
		border-width: 0 10px 10px;
		border-color: rgba(255, 255, 255, 0) rgba(255, 255, 255, 0) white;
		border-style: solid;
	}

html > body > main > div.construction-progress > ul.points > li > div.content > p
{
	padding: 0 20px;
	margin: 0 0 1em;
	
	font-weight: 700;
}

html > body > main > div.construction-progress > ul.points > li > div.content > time
{
	display: block;
	
	padding: 0 20px 10px;
	margin: 0 0 20px;
	
	font-size: 14px;
	vertical-align: middle;
	
	border-bottom: 1px solid #e6e6e6;
}

html > body > main > div.construction-progress > ul.points > li > div.content > time > svg
	{
		margin-right: 0.5em;
		
		vertical-align: bottom;
		
		fill: currentColor;
	}

html > body > main > div.construction-progress > ul.points > li > div.content > ul.completed
{
	padding: 0 20px;
	margin: 0;
	
	font-size: 14px;
	line-height: 1.5;
	
	color: rgba(7, 43, 49, 0.8);
}

html > body > main > div.construction-progress > ul.points > li > div.content > ul.completed > li
	{
		display: block;
		
		margin: 0 0 0.8em;
	}

@media (min-width: 700px) and (max-width: 1099px)
	{
	}

@media (min-width: 1100px) and (max-width: 1399px)
	{
	}

@media (max-width: 1399px)
	{html > body > main > header > details.webcam > summary
{
		padding: 0 27px
}
html > body > main > header > h1, html > body > main > header.albums > h2, html > body > main > div.albums > article > h3
{
		font-size: 36px
}
html > body > main > div.albums > article > h3
{
		font-size: 18px
}
html > body > main > header.albums > h2
{
		font-size: 24px
}
	}

@media (max-width: 1099px)
	{
html > body > main
{
		min-height: 0;
		padding-left: 0
}
html > body > main
{
		padding-left: calc(6.25vw - 4px)
}
			html > body > main > div.construction-progress > ul.marks > li.quarter, html > body > main > div.construction-progress > ul.marks > li.middle, html > body > main > div.construction-progress > ul.marks > li.three-quarter
			{
				display: none;
			}

html > body > main > header > details.webcam
{
		margin-left: 0
}

html > body > main > div.albums > article
{
		width: calc(50% - 8px)
}

html > body > main > div.construction-progress > ul.points
{
		display: none
}
	}

@media (max-width: 699px)
	{

html > body > main > header > details.webcam
{
		width: 100%;
		margin-top: 20px;
		margin-bottom: 20px
}

html > body > main > header > select
{
		width: 200px;
		padding-right: 40px;
		padding-left: 7px;
		
		font-size: 14px
}

html > body > main > header.albums > h2
{
		margin-right: auto
}

html > body > main > header.albums > select
{
		width: 135px;
		padding-right: 40px;
		padding-left: 7px;
		
		font-size: 14px
}

html > body > main > div.albums > article
{
		width: 100%
}
	}
