/*******************************
	Reset
*******************************/

* {
	margin: 0;
	padding: 0;
}

img {
	width: 100%;
	max-width: 100%;
}

@media (min-width: 1099px) {
	h1 {
		font-size: 4.5rem;
	}
}

/*******************************
	Body
*******************************/

body,
html {
	overflow-x: hidden;
	overflow-y: auto;
	position: relative;
	min-height: 100vh;
	font-family: 'Raleway', sans-serif;
}

html.is-fixed {
	overflow: hidden;
}

body.modal-open {
	padding-right: 0 !important;
}

/*******************************
	List style none
*******************************/

.list-style-none {
	list-style: none;
}

/*******************************
	Logo
*******************************/

.logo a {
	display: block;
	z-index: 10;
}

.logo a img {
	max-width: 100%;
}

/*******************************
	Container
*******************************/

.container {
	max-width: 1900px;
	padding: 0;
}

.container--short {
	max-width: 1200px;
	padding: 0 15px;
}

/*******************************
	Header
*******************************/

.header {
	z-index: 10;
	box-shadow: 0px 10px 20px -8px rgba(0,0,0,0.2);
}

.header .logo {
	z-index: 200;
}

.header .navbar-collapse {
	z-index: 50;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 70px 30px;
	text-align: center;
	display: block;
	transform: translateX(150%);
	transition: transform .6s;
	height: 100vh !important;
	background: rgba(255, 255, 255, 1);
	overflow-y: scroll;
}

.header .navbar {
	position: inherit;
}

@media (min-width: 767px) {

	.header.is-fixed {
		position: fixed !important;
		box-shadow: 0 0 5px 5px rgba(0, 0, 0, .2);
		border: none;
	}

	.header.is-fixed .logo {
		max-width: 200px;
	}
}

@media (min-width: 992px) {

	.header .navbar-collapse {
		position: relative;
		transform: none;
		padding: 0;
		height: unset !important;
		overflow: visible;
	}
}

/*******************************
	Nav-link
*******************************/

.navbar .navbar-nav .nav-link {
	color: #000;
	border: none;
	background: none;
	position: relative;
	padding-left: 0;
	padding-right: 0;
}

.header .nav-link:before {
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--bs-secondary);
	transform: scaleX(0);
	transition: transform .4s;
}

.navbar .navbar-nav .nav-link.btn-secondary {
	color: #fff;
    background-color: #303996;
    border-color: #303996;
    padding: 0.375rem 0.75rem;
}

.navbar .navbar-nav .nav-link.btn-secondary:hover:before {
	display: none;
}

.navbar .navbar-nav .nav-link.btn-secondary:hover {
	color: #fff;
	background-color: #293080;
	border-color: #262e78;
}

.navbar .navbar-nav .nav-link:hover {
	color: var(--bs-secondary);
}

.nav-item {
	padding: 0 5px;
}


@media (min-width: 992px) {
	.header .nav-link:hover:before {
		transform: scaleX(1);
	}

	.nav-link {
		font-size: .8rem;
	}
}

@media (min-width: 1049px) {
	.nav-item {
		padding: 0 6px;
	}

	.nav-link {
		font-size: .9rem;
	}
}

@media (min-width: 1099px) {
	.nav-item {
		padding: 0 8px;
	}
}


@media (min-width: 1199px) {
	.nav-item .btn {
		padding: 0.5rem 1rem;
		font-size: 1.25rem;
		border-radius: 0.3rem;
	}

	.nav-link {
		font-size: 1rem;
	}
}

@media (min-width: 1299px) {
	.nav-item {
		padding: 0 15px;
	}
}


/*******************************
	Mobile-nav
*******************************/

.mobile-nav {
	border: none;
	position: relative;
	z-index: 100;
	cursor: pointer;
	height: 20px;
	width: 25px;
}

.mobile-nav:focus {
	border: none;
	box-shadow: none;
}

.mobile-nav span {
	background-image: none !important;
}

.mobile-nav small {
	display: block;
	height: 3px;
	width: 30px;
	left: 0;
	background-color: #555;
	border: none;
	position: absolute;
	transition: top .2s .25s, opacity .2s .25s, transform .2s 0s;
}

.mobile-nav small:nth-child(1) {
	top: 0;
}

.mobile-nav small:nth-child(2) {
	top: 8px;
}

.mobile-nav small:nth-child(3) {
	top: 17px;
}

.mobile-nav[aria-expanded="true"] small {
	transition: background .2s, top .2s, opacity .2s, transform .2s .25s;
	background: #000;
}

.mobile-nav[aria-expanded="true"] small:nth-child(3),
.mobile-nav[aria-expanded="true"] small:nth-child(1) {
	top: 9px;
}

.mobile-nav[aria-expanded="true"] small:nth-child(2) {
	opacity: 0;
}

.mobile-nav[aria-expanded="true"] small:nth-child(1) {
	transform: rotate(45deg);
}

.mobile-nav[aria-expanded="true"] small:nth-child(3) {
	transform: rotate(-45deg);
}

@media (max-width: 992px)  {
	.mobile-nav[aria-expanded="true"] + .navbar-collapse {
		transform: translateX(0);
	}
}

/*******************************
	Banner
*******************************/

.banner img {
	min-height: 300px;
	object-fit: cover;
	object-position: center;
}

.banner .banner__content {
	transform: translate(-50%, -50%);
}

.banner img {
	filter: brightness(0.5);
}

.banner .banner__content p {
	font-size: 17px;
	letter-spacing: 0.005em;
}

@media (min-width: 550px) {
	.banner .banner__content p {
		font-size: 20px;
	}
}

@media (min-width: 767px) {
	.banner img {
		margin: 0;
	}
}

@media (min-width: 1099px) {
	.banner .banner__content p {
		font-size: 25px;
	}
}

/*******************************
	Btn-play
*******************************/

.btn-play {
	cursor: pointer;
}

.btn-play span {
	border: 3px solid var(--bs-secondary);
	border-radius: 50%;
	height: 60px;
	width: 60px;
	background: #fff;
}

.btn-play span:after {
	content: '';
	position: absolute;
	top: -3px;
	left: -2px;
	border-radius: 50%;
	border: 3px solid #00ffff00;
	border-left: 3px solid var(--bs-primary);
	height: 60px;
	width: 60px;
}

.btn-play span:before {
	content: '';
	position: absolute;
	border: none;
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-left: 15px solid var(--bs-primary);
	top: 19px;
	left: 22px;
}

.btn-play em {
	margin-left: -40px;
}

@media (min-width: 992px) {
	.btn-play span {
		border: 4px solid var(--bs-secondary);
		height: 80px;
		width: 80px;
	}

	.btn-play span:before {
		border-top: 13px solid transparent;
		border-bottom: 13px solid transparent;
		border-left: 20px solid var(--bs-primary);
		top: 24px;
		left: 30px;
	}

	.btn-play span:after {
		top: -4px;
		left: -4px;
		border: 4px solid #00ffff00;
		border-left: 4px solid var(--bs-primary);
		height: 80px;
		width: 80px;
	}
}

/*******************************
	Accordion
*******************************/

.accordion-button:not(.collapsed) {
	color: #fff;
	box-shadow: 0 0 0 0.25rem rgb(47 58 150 / 46%);
	background: var(--bs-secondary);
}

.accordion-button:not(.collapsed):after {
	background-image: url('/assets/images/svg/down.svg')
}

/*******************************
	Checkbox
*******************************/

.checkbox-label {
	display: block;
	position: relative;
	padding-left: 35px;
	cursor: pointer;
	font-size: 17px;
	user-select: none;
	margin: 0;
}

.checkbox-label a {
	color: var(--bs-gray);
}

.checkbox-label a:hover {
	color: var(--bs-primary);
}

.checkbox {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.checkmark {
	position: absolute;
	top: 3px;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: #D3D3D3;
	transition: background .4s;
}

.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

.checkbox-label .checkbox:checked ~ .checkmark:after {
	display: block;
}

.checkbox-label .checkmark:after {
	left: 7px;
	top: 5px;
	width: 6px;
	height: 10px;
	border: solid var(--bs-secondary);
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
}

/*******************************
	Footer
*******************************/

.footer .logo {
	max-width: 200px;
}

.footer ul li {
	list-style: none;
}

.footer ul a {
	transition: color .4s;
}

.footer a:hover {
	color: var(--bs-primary) !important;
}

.footer .socials {
	font-size: 36px;
}

.footer .socials li,
.footer .copyright a {
	transition: opacity .4s, color .4s;
}

.footer .socials li:hover {
	opacity: .6;
}

.footer .copyright span {
	display: block;
	font-size: 0;
}

@media (min-width: 992px) {
	.footer .copyright span {
		display: inline-block;
		font-size: 20px;
	}
}

/*******************************
	Еrror
*******************************/

.error {
	font-size: 5.5rem;
}

@media (min-width: 767px) {
	.error {
		font-size: 10.5rem;
	}
}

/*******************************
	Fotorama
*******************************/

.fotorama .fotorama__nav.fotorama__nav--dots {
	display: none;
}

.fotorama__arr {
	opacity: 1 !important;
	transform: none !important;
	height: 50px;
	width: 50px;
}

.fotorama__arr.fotorama__arr--prev {
	background: url('/assets/images/temp/left.png');
	background-size: cover;
	background-position: center;
	background-color: #fff;
	left: 0;
}

.fotorama__arr.fotorama__arr--next {
	background: url('/assets/images/temp/right.png');
	background-size: cover;
	background-position: center;
	background-color: #fff;
	right: 0;
}

/*******************************
	Modal
*******************************/

.modal {
	overflow: hidden !important;
}

.modal-dialog {
	margin: 100px auto;
	max-width: 900px;
	padding: 0 10px;
}

/*******************************
	Section
*******************************/

.section {
	background-size: cover;
	background-position: center;
}

/*******************************
	Tail
*******************************/

.tail img {
	max-width: 70px;
}

@media (min-width: 992px) {
	.tail img {
		max-width: 110px;
	}
}
