html > body > main > div.sections > section.request > details > 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 > div.sections > section.request > details > summary:not([disabled])
	{
		cursor: pointer;
	}

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

	html > body > main > div.sections > section.request > details > 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 > div.content > h1, html > body > main > div.sections > section > h2
{
	margin: 0 0 24px;
	
	font-family: "Circe",sans-serif;
	font-size: 44px;
	font-weight: 400;
	line-height: 1.09;
}
html > body > main > div.content > p
{
	margin: 0 0 24px;
	
	line-height: 1.5;
}
html > body > main
{
	position: relative;
	z-index: 1;
	
	overflow: hidden;
	
	box-sizing: border-box;
	height: auto;
	min-height: 100vh;
	padding: 0 0 0 70px;
}
/**
 * Сбросить оформление с details и скрыть контент
 */
html > body > main > div.sections > section:not(.request) > details
{
	
	font-size: 14px;
	
	color: #072b31;
}
html > body > main > div.sections > section:not(.request) > details > summary
	{
		display: block;
		
		-webkit-appearance: none;
		
		   -moz-appearance: none;
		
		        appearance: none;
	}
html > body > main > div.sections > section:not(.request) > details > summary::-webkit-details-marker
		{
			display: none;
		}
html > body > main > div.sections > section:not(.request) > details > summary ~ *
		{
			display: none;
		}
html > body > main > div.sections > section:not(.request) > details > summary
	{
		opacity: 0;
		
		transition: opacity 0.3s;
	}
html > body > main > div.sections > section:not(.request) > details > summary:focus
		{
			opacity: 1;
			
			outline: none;
		}
html > body > main > div.sections > section:not(.request) > 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.sections > section:not(.request):hover > details > summary
	{
		opacity: 1;
	}
html > body > main > div.sections > section.request > details > summary
{
	
	line-height: 50px;
	
	color: white;
	background: transparent;
	
	border: 1px solid white;
	box-shadow: inset 0 0 0 1px white;
}
html > body > main > div.sections > section.request > details > summary:not([disabled]):hover, html > body > main > div.sections > section.request > details > summary:not([disabled]):focus
	{
		color: #072b31;
	}
html > body > main > div.sections > section.request > details > summary::before
	{
		background: white;
	}
html > body > main > div.sections > section > h2
{
	font-size: 21px;
	font-weight: 700;
	line-height: 1.5;
}
html > body > main > div.content
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	
	box-sizing: border-box;
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	width: calc(31.25vw - 22px);
	padding: 50px calc(3.13vw - 2px) 100px calc(6.25vw - 4px);
	
	color: white;
	background: url("images/bg-circles.svg") right bottom no-repeat #072b31;
	background-size: cover;
}
html > body > main > div.sections > section
{
	position: relative;
	
	display: -webkit-flex;
	
	display: -ms-flexbox;
	
	display: flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-justify-content: space-between;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	
	box-sizing: border-box;
	width: 50%;
	padding: 40px calc(3.13vw - 2px) 40px calc(3.13vw - 2px);
	
	cursor: pointer;
	
	border-right: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	
	transition: box-shadow 0.3s;
}
@supports (display: grid)
	{
html > body > main > div.sections > section
{
		width: 100%
}
	}

html > body > main > div.sections
{
	position: fixed;
	top: 0;
	right: 0;
	
	display: -webkit-flex;
	
	display: -ms-flexbox;
	
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	-webkit-align-content: stretch;
	    -ms-flex-line-pack: stretch;
	        align-content: stretch;
	
	width: calc(68.75vw - 48px);
	height: 100vh;
	padding: 0;
	/* Для скрытия крайних рамок */
	margin: 0 -1px -1px 0;
	
	list-style: none;
	
	background: white;
	
	box-shadow: -2px 0 6px rgba(0, 0, 0, 0.2);
}

@supports (display: grid)
	{

html > body > main > div.sections
{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-auto-rows: 1fr
}
		
		@media (max-width: 1099px)
		{

html > body > main > div.sections
{
			grid-template-columns: 1fr
}
		}
	}
html > body > main > div.content
{
	color: #072b31;
	background-color: white;
}

html > body > main > div.sections > section.request:hover
{
	z-index: 1;
	
	box-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}

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

html > body > main ~ footer
	{
		display: none;
	}

html > body > main > div.content
{
	
	-webkit-justify-content: flex-start;
	
	    -ms-flex-pack: start;
	
	        justify-content: flex-start;
}

html > body > main > div.sections > section
{
	
	z-index: 1;
}

html > body > main > div.sections > section > h2
{
	
	max-width: 11em;
	margin-bottom: 0;
}

html > body > main > div.sections > section.request
{
	background: url("images/bg-circles.svg") right bottom no-repeat #072b31;
}

html > body > main > div.sections > section.request:not(:nth-child(2n))
	{
		width: 200%;
	}

html > body > main > div.sections > section.request > details
{
	
	-webkit-align-self: flex-start;
	
	    -ms-flex-item-align: start;
	
	        align-self: flex-start;
}

html > body > main > div.sections > section.request > details > summary
	{
		display: block;
		
		-webkit-appearance: none;
		
		   -moz-appearance: none;
		
		        appearance: none;
	}

html > body > main > div.sections > section.request > details > summary::-webkit-details-marker
		{
			display: none;
		}

html > body > main > div.sections > section.request > details > summary ~ *
		{
			display: none;
		}

html > body > main > div.sections > section.request > h2
{
	color: white;
}

html > body > main > div.sections > section:hover
{
	
}

html > body > main > div.sections > section:not(.request) > details
{
	
	position: absolute;
	right: calc(3.13vw - 2px);
	bottom: 40px;
}

html > body > main > div.sections > section:not(.request) > details > summary
	{
		font-weight: 700;
		
		color: white;
	}

html > body > main > div.sections > section:not(.request) > figure.cover
{
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	
	width: 100%;
	height: 100%;
	margin: 0;

	background: #1b8b80;
}

html > body > main > div.sections > section:not(.request) > figure.cover > img
	{
		display: block;
		
		width: 100%;
		height: 100%;
		
		object-fit: cover;
		
		transition: opacity 0.3s;
	}

html > body > main > div.sections > section:not(.request) > h2
{
	color: white;
}

html > body > main > div.sections > section:not(.request):hover > figure.cover > img
	{
		opacity: 0.75;
	}

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

@media (min-width: 1100px) and (max-width: 1399px)
	{
html > body > main > div.content > p
{
		font-size: 14px
}
html > body > main > div.content
{
		padding-left: calc(3.13vw - 2px)
}
	}

@media (max-width: 1399px)
	{html > body > main > div.sections > section.request > details > summary
{
		padding: 0 27px
}
html > body > main > div.content > h1, html > body > main > div.sections > section > h2
{
		font-size: 36px
}
html > body > main > div.sections > section > h2
{
		font-size: 18px
}
	}

@media (max-width: 1099px)
	{
html > body > main
{
		min-height: 0;
		padding-left: 0
}
html > body > main > div.content
{
		width: 100%;
		padding-right: calc(6.25vw - 4px)
}
html > body > main > div.sections > section
{
		height: 250px;
		padding-left: 20px;
		padding-right: 20px
}

html > body > main > div.sections
{
		position: static;
		
		width: 100%;
		height: auto;
		
		box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.2)
}

html > body > main
{
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column
}

html > body > main > div.content
{
		padding-bottom: 40px
}

html > body > main > div.sections > section:not(.request) > details
{
		right: 20px
}
		
		html > body > main > div.sections > section:not(.request) > details > summary
{
			opacity: 1;
	}
	}

@media (max-width: 699px)
	{
html > body > main > div.content
{
		padding-right: 5vw;
		padding-left: 5vw
}
html > body > main > div.sections > section
{
		width: 100%
}
	}
