/*------------------------------------*\
    #BASIC STYLES
\*------------------------------------*/

/* box model */
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body {
	height: 100%;
    background: #fff;
	font: 400 14px/20px "Gotham Pro", sans-serif;
}
body.scroll-locked {
	left: 0;
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
}

.page {

}

p {
	font: 400 14px/20px "Gotham Pro", sans-serif;	
	color: #000;
	margin-bottom: 1em;
}

a {
	color: #153181;
	text-decoration: underline;
}
a:hover,
a:focus {
	text-decoration: none;
}

/* topline */
.topline-fixed {
	overflow: hidden;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 801;
	background: #001166;
}
.topline {
	position: fixed;
	top: 0;
	width: 100%;
	height: 59px;
	padding-top: 59px;
	background: #001166;
	overflow: hidden;
	-webkit-transition: all 0.1s ease-in-out;  /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
            transition: all 0.1s ease-in-out;
	z-index: 800;
}
.menu-btn {
	float: left;
	padding-left: 20px;
	height: 59px;
	font: 900 18px/59px "Gotham Pro", sans-serif;
	color: #fff;
	text-transform: uppercase;
	overflow: hidden;	
}
.menu-btn__icon {
	display: inline-block;
	margin-right: 12px;
	height: 59px;
	width: 27px;
	background: url('../images/menu-btn.png') left center no-repeat;
	vertical-align: top;
}
.menu-btn.open .menu-btn__icon {
	background: url('../images/menu-btn.png') right center no-repeat;
}
.menu-btn__text {
	display: inline-block;
}

/* menu */
.mobile-menu {
	background: #001166;
}
.nav-menu__link {
	display: block;
	padding: 15px 20px 18px;
	font: 400 16px/24px "Gotham Pro", sans-serif;
	color: #fff;
	border-bottom: 1px solid #28418d;
	text-decoration: none;
}
.nav-menu__item:first-child .nav-menu__link {
	border-top: 1px solid #28418d;
}
.nav-menu__link_active {
	background: #02195b;
}
a.nav-menu__link:hover,
a.nav-menu__link:focus {
	background: #153181;
	-webkit-transition: background 0.08s ease-in-out;
            transition: background 0.08s ease-in-out;
}
.left-bar,
.right-bar {
	display: none;
}

/* docs */
.docs {
	margin-top: 3px;
}
.docs__link {
	display: block;
	padding: 15px 20px;
	margin-bottom: 3px;
	font: 400 15px/20px "Gotham Pro", sans-serif;
	color: #fff;
	text-decoration: none;
}
.docs__link small {
	font: 300 13px/20px "Gotham Pro", sans-serif;
	color: #ccddff;
}
.docs__link:hover,
.docs__link:focus {
	text-decoration: underline;
}
.page-header {
	margin-top: 59px;
	padding: 20px;
	text-align: center;
	background: #0f276c;
	font: 300 14px/18px "Gotham Pro", sans-serif;
	position: relative;
}
.page-header p {
	color: #ffffff;
	margin-bottom: 0;
}

.logo {
	display: inline-block;
	padding: 15px;
}
.logo img {
	max-width: 182px;
}

/* text */
.text {
	padding: 20px;
}
.text h1 {
	text-transform: uppercase;
	font: 900 30px/30px "Gotham Pro", sans-serif;	
	color: #153181;
	margin-bottom: 21px;
}
.text h2 {
	text-transform: uppercase;
	font: 900 24px/24px "Gotham Pro", sans-serif;	
	color: #000;
	margin-top: 20px;
	margin-bottom: 12px;
}
.text h3 {
	font: 700 21px/20px "Gotham Pro", sans-serif;	
	color: #153181;
	margin-top: 26px;
	margin-bottom: 17px;
}
.text h4 {
	font: 700 18px/18px "Gotham Pro", sans-serif;	
	color: #000;
	margin-top: 26px;
	margin-bottom: 17px;
}
.text ul,
.text ol {
	margin: -4px 0 1em 30px;
}
.text li {
	position: relative;
	margin-bottom: 10px;
}
.text ul li:before {
	content: '—';
	position: absolute;
	left: -16px;
}
.text ol {
	list-style-type: decimal; 
}
.text table {
	border: 1px solid #cfd4e2;
	margin-bottom: 1em;
}
.text table th,
.text table td {
	border: 1px solid #cfd4e2;
	padding: 10px 12px;
}
.text table.committee,
.text table.committee th,
.text table.committee td {
	border: none;
	position: relative;
	padding: 0;
}
.text table.committee th,
.text table.committee tr:not(:last-of-type) td {
	padding-bottom: 20px;
}
.text table.committee td:nth-child(1) {
	min-width: 165px;
	padding-right: 25px;
}
.text table.committee td:nth-child(2):before {
	content: '—';
	position: absolute;
	left: -16px;
}


/*------------------------------------*\
    #INDEX
\*------------------------------------*/

.document-box,
.date-box,
.information-box {
	padding: 20px;
	border-top: 1px solid #cfd4e2;
	min-height: 120px;
}


/* document-box */
.document-box {
	display: flex;
	padding-left: 85px;
	background: url('../images/document-box__link.png') 20px center no-repeat;
}
.document-box__inner {
	margin: auto 0;
}
.document-box__link {
	font: 400 22px/26px "Gotham Pro", sans-serif;
	color: #28418d;
	text-decoration: none;
	border-bottom: 1px solid #28418d;
	margin-right: 5px;
}
.document-box__link:hover,
.document-box__link:focus {
	border-bottom: none;
}
.document-box__link__extension {
	font: 300 18px/26px "Gotham Pro", sans-serif;
	color: #666666;
}


/* date-box */
.date-box {
	display: flex;
	padding-left: 85px;
	background: url('../images/date-box.png') 20px center no-repeat;
	font: 300 18px/26px "Gotham Pro", sans-serif;
	color: #28418d;
}
.date-box__inner {
	margin: auto 0;
}
.date-box__day {
	font-size: 30px;
	font-weight: 700;
}
.date-box__month {
	font-size: 22px;
	font-weight: 500;
}
.date-box__year {
	font-size: 22px;
	font-weight: 400;
}

.location,
.about,
.rstu {
	padding: 20px;
}

/* information-box */
.information-box__title {
	text-transform: uppercase;
	font: 900 24px/24px "Gotham Pro", sans-serif;	
	color: #153181;
	margin-bottom: 12px;
}
.information-box__subtitle {
	padding-bottom: 15px;
	margin: 11px 0 15px;
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	color: #153181;
	border-bottom: 1px solid #cfd4e2;
}
.information-box__attention {
	padding-top: 15px;
	margin-top: 16px;
	border-top: 1px solid #cfd4e2;
	font: 500 17px/23px "Gotham Pro", sans-serif;
	color: #E3000F;
}
.information-box a {
	display: inline-block;
	margin-bottom: 6px;
}

/* location */
.location {
	color: #fff;
	background: url('../images/location-bg.jpg') 0 center no-repeat;
	background-size: cover;
	position: relative;
	padding-bottom: 35px;
}
.location__title {
	font-size: 16px;
	margin-bottom: 14px;
	margin-top: 4px;
}
.location__city {
	margin-bottom: 8px;
	font-size: 36px;
	line-height: 1;
	font-weight: 900;
	text-transform: uppercase;
}
.location__place {
	margin-bottom: 16px;
	font-size: 18px;
	font-weight: 900;
	text-transform: uppercase;
}
.location__place-address {
	font-size: 16px;
	line-height: 22px;
	color: #fff;
}
.location__info-link {
	display: block;
	max-width: 165px;
	color: #fff;
}

h2 {
	text-transform: uppercase;
	font: 900 36px/36px "Gotham Pro", sans-serif;	
	color: #153181;
	margin-bottom: 15px;
}

/* about */
.about {
	background: url('../images/about-bg.jpg') 0 center no-repeat;
	background-size: cover;
}
.about__subtitle {
	margin-top: -5px;
	margin-bottom: 21px;
	font-size: 18px;
	font-weight: 900;
	text-transform: uppercase;
	color: #153181;
}
.about p,
.rstu p {
	font-size: 16px;
	line-height: 22px;
	margin: 0;
}
.rstu img {
	display: none;
}

/* news */
.news {
	padding: 20px;
	overflow: hidden;
}
.news__header {
}
.news__title {
	display: inline-block;
	margin-right: 25px;
}
.news__all {
	display: inline-block;
	vertical-align: top;
	margin-top: 7px;
}
.news-item {
	margin-bottom: 20px;
}
.news-item__date {
	display: block;
	font-size: 13px;
	color: #666666;
}
.news-item__link {
	text-decoration: none;
	font-size: 16px;
	line-height: 24px;
}

/* sponsors */
.sponsors {
	padding: 20px;
	text-align: center;
	overflow: hidden;
	border-top: 1px solid #cfd4e2;

}
.information-box h3,
.sponsors h3 {
	color: #153181;
	margin-top: -15px;
	margin-bottom: 9px;
	text-align: left;
}
.sponsors__link {
	display: inline-block;
	text-align: center;
	margin: 25px 30px;
	vertical-align: middle;
	text-decoration: none;
}
.sponsors img {
	max-width: 200px;
	max-height: 140px;
	vertical-align: middle;
}
.sponsors_general img {
	width: 100%;
	max-width: 270px;
}
.sponsors img.sponsor_1520 {
	width: 100%;
	max-width: 170px;
}
.sponsors-slider {
	width: 100%;
	height: 160px;
	padding: 0;
}
.sponsors-slider__list { 
	margin: 0;
	padding: 0;
	height: 100%;
	list-style: none;
}
.sponsors-slider__list li {
	float: left;
	margin: 0 5px 0 0;
	padding: 0;
	width: 320px;
	height: 100%;
}
.sponsors_general {
		padding: 0;
		position: relative;
	}
.sponsors_general h3 {
	position: absolute;
	left: 20px;
	top: 20px;
	line-height: 20px;
}
.sponsors__item {
	padding: 0 20px;
	display: block;
	height: 200px;
	line-height: 200px;
	position: relative;
}


/*------------------------------------*\
    #FOOTER
\*------------------------------------*/

.content-footer {
	margin-top: 50px;
	padding: 20px;
	border-top: 1px solid #cfd4e2;
	font-size: 13px;
	color: #666;
}
.content-footer__item:first-child {
	margin-bottom: 5px;
}


/*------------------------------------*\
    #MEDIAQUERIES
\*------------------------------------*/

@media only screen and (min-width: 520px) {
	
	.nav-menu,
	.docs {
		width: 50%;
		float: left;
	}
	
	.logo {
		position: absolute;
		left: 5px; 
		top: 50%;
		margin-top: -70px;
	}
	
	.page-header p {
		margin-bottom: 10px;
		margin-left: 50%;
		text-align: left;		
	}
	.page-header p:last-child {
		margin-bottom: 0;	
	}

	.location__address {
		max-width: 230px;
		position: absolute;
		right: 20px;
		top: 30px;
		text-align: right;
	}
	.sponsors__item {
		width: 50%;
		float: left;
	}
	.sponsors__item:first-of-type {
		border-right: 1px solid #cfd4e2;
	}
	.news-item {
		float: left;
		width: 46%;
	}
	.news-item:nth-child(2) {
		margin-right: 4%;
	}
	.news-item:nth-child(3) {
		margin-left: 4%;
	}
	.news__header {
		margin-bottom: 10px;
	}
	.news__all {
		height: 28px;
		margin-top: 4px;
		padding: 3px 10px 5px 16px;
		background: #153181;
		color: #fff;
		text-decoration: none;
		position: relative;
	}
	.news__all:after {
		content: '';
		display: block;
		position: absolute;
		right: -26px;
		top: 0;
		border: 14px solid transparent;
		border-left: 12px solid #153181;
	}
	.news__all:hover,
	.news__all:focus {
		background: #28418d;
		-webkit-transition: background 0.08s ease-in-out;
	            transition: background 0.08s ease-in-out;
	}
	.news__all:hover:after,
	.news__all:focus:after {
		border-left: 12px solid #28418d;
		-webkit-transition: border-color 0.08s ease-in-out;
	            transition: border-color 0.08s ease-in-out;
	}

}


@media only screen and (min-width: 780px) {
	.left-bar {
		display: block;
		float: left;
		width: 33.33333%;
		background: #0f276c;
		min-height: 100vh;
	}

	.topline {
		display: none;
	}

	.page-header {
		margin-top: 0;
	}
	.page-header_mobile {
		display: none;
	}
	.logo {
		position: relative;
		padding: 15px 0;
		left: auto; 
		top: auto;
		margin-top: 0;
	}
	.logo img {
		max-width: 100%;
	}
	.page-header p {
		margin-bottom: 0;
		margin-left: 0;
		text-align: center;
		line-height: 18px;
	}
	.nav-menu, .docs {
		width: 100%;
		float: none;
	}
	.content {
		overflow: hidden;
		min-height: 100vh;
	}
	.nav-menu__link {
		font: 400 14px/24px "Gotham Pro", sans-serif;
	}

}

@media only screen and (min-width: 1020px) {
	.left-bar {
		width: 25%;
	}
	.left-bar .docs {
		display: none;
	}
	.nav-menu__link {
		font: 400 16px/20px "Gotham Pro", sans-serif;
		padding: 18px 20px 21px;	
	}
	.content {
		margin-left: 25%;	
		margin-right: 25%;	
	}
	.text {
		padding: 1.875%;
	}
	.right-bar {
		min-height: 100vh;
		display: block;
		float: right;
		width: 25%;
		background: url('../images/right-bar-bg.jpg') no-repeat center center;
		/* background-size: cover; */
		-webkit-box-shadow:inset 10px 0 12px -12px #000;
		box-shadow: inset 10px 0 12px -12px #000;
	}
	.docs__link {
		padding: 15px 20px;
		margin-bottom: 30px;
		font: 400 18px/24px "Gotham Pro", sans-serif;
		color: #153181;
	}
	.docs__link small {
		font: 300 14px/24px "Gotham Pro", sans-serif;
		color: #010101;
	}
}

@media only screen and 
(min-width: 640px) and (max-width: 780px),
(min-width: 960px) and (max-width: 1020px),
(min-width: 1280px) {
	.document-box,
	.date-box,
	.information-box,
	.location,
	.about,
	.rstu {
		width: 50%;
		overflow: hidden;
	}
	.document-box,
	.information-box,
	.about {
		float: left;
	}
	.document-box {
		border-right: 1px solid #cfd4e2;
	}
	.information-box,
	.location,
	.about,
	.rstu {
		min-height: 310px;
	}
	.location__address {
		max-width: none;
		position: static;
		right: auto;
		top: auto;
		text-align: left;
	}
	.location__info-link {
		max-width: none;
	}
	.content-footer__item:first-child {
		float: left;
	}
	.content-footer__item+.content-footer__item {
		text-align: right;
	}
}
@media only screen and 
(min-width: 700px) and (max-width: 780px),
(min-width: 1400px) {
	.rstu img {
		display: block;
		float: right;
		margin: 0 0 15px 20px;
	}	
}
@media only screen and (max-width: 1020px) {
	.content {
		min-height: 180vh;
	}
}
@media only screen and (min-width: 1280px) {
	.content {
		/* min-height: 1200px; */
	}
}