@import "animate.css";
@import "fonts.css";

@purple: #8f1c76;
@yellow: #f7a622;

body {
	margin: 0;
	padding: 0;
	background: #f2f5f7;
	font-family: 'open_sansregular';
	color: #484848;
}

::selection {
	background: @purple;
	color: #fff;
}

::-moz-selection {
	background: @purple;
	color: #fff;
}

.mt0 {
	margin-top: 0 !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mt50 {
	margin-top: 50px !important;
}

a {
	font: inherit;
	color: inherit;
	transition: .3s all;

	&:hover {
		color: @yellow;
	}
}

.text-center {
	text-align: center !important;
}

h1,
h2,
h3,
h4,
h5 {
	font-family: 'gilroyextrabold';
	color: @purple;

	&.title {
		color: #000;
		font-size: 28px;
	}

	small {
		color: @purple;
		font-size: 15px;
		display: block;

		&.max-width {
			max-width: 350px;
			margin: 0 auto;
		}
	}
}

.clear {
	clear: both;
}

.wrapper {
	width: 94%;
	max-width: 1170px;
	margin: 0 auto;
	position: relative;
}

.links {
	width: 100%;
	float: left;

	a {
		color: @purple;
		margin-right: 50px;
		transition: .3s all;

		&:hover {
			color: @yellow;
		}
	}
}

.link {
	color: @purple;
}

/* HEADER */

.logo {
	width: 244px;
	height: 119px;
	display: block;
	float: left;
	background: url('assets/logo.png') no-repeat center center;
	background-size: contain;
	margin-top: 20px;
	position: relative;

	&::after {
		content: attr(data-slogan);
		font-family: 'desyrelregular';
		position: absolute;
		font-size: 22px;
		bottom: -28px;
		left: 0;
		width: 100%;
		text-align: center;
		color: @purple;
	}
}

header {
	width: 675px;
	float: right;
	background: @purple;
	border-radius: 20px;
	margin-top: 70px;
	position: relative;
	box-sizing: border-box;
	padding: 20px;
}

.fast-contact {
	width: 480px;
	position: absolute;
	font-size: 14px;
	color: @purple;
	top: -68px;
	right: 0;

	p {
		width: 70%;
		float: left;
		text-align: left;
	}

	a.phone {
		width: 30%;
		float: right;
		text-align: right;
		font-family: 'gilroyextrabold';
		text-decoration: none;
		font-size: 22px;
		line-height: 66px;
		position: relative;
		background: url('assets/phone.svg') no-repeat left center;
	}
}

.navbar {
	list-style: none;
	padding: 0;
	margin: 0;
	position: relative;
	z-index: 10;

	a {
		text-decoration: none;
		color: #fff;
		padding: 5px 20px;
		font-family: 'open_sanssemibold';
		font-size: 18px;
		display: block;
	}

	li {
		display: inline-block;
		position: relative;
		border-radius: 15px;
		transition: .3s background-color;

		&.dropdown {
			background: url('assets/arrow.svg') no-repeat right 6px center;
			background-size: 8px;
		}

		&.active,
		&:hover {
			background-color: @yellow;
		}

		&.active.open {
			border-bottom-left-radius: 0;
			border-bottom-right-radius: 0;
		}

		ul {
			display: none;
			position: absolute;
			width: 270px;
			background: @yellow;
			text-align: right;
			box-sizing: border-box;
			padding: 15px;
			right: 0;
			margin-top: 0px;
			border-radius: 20px;
			border-top-right-radius: 0;

			li {
				width: 100%;
				padding: 0;

				a {
					line-height: 40px;
					padding: 0;
					padding-right: 5px;
					border-radius: 6px;

					&:hover {
						text-decoration: underline;
						background-color: lighten(@yellow, 10%);
						transition: .6s background-color;
					}
				}
			}
		}

		&.dropdown.open {
			ul {
				display: block;
			}
		}
	}
}

/* END HEADER */

/* BANNER */

.banner {
	width: 100%;
	float: left;
	margin: 50px 0;

	lottie-player {
		width: 450px;
		float: left;
	}

	.box {
		width: calc(100% - 500px);
		float: right;
		margin-top: 100px;
	}

	h1 {
		margin-bottom: 0;
	}

	p {
		margin-top: 10px;
	}
}

.type-box {
	text-align: center;
	padding-left: 0;
	margin-bottom: -130px;

	li {
		width: 200px;
		height: 200px;
		list-style: none;
		display: inline-block;
		background: @purple;
		margin: 0 30px;
		border-radius: 35px;
		position: relative;
		transition: .3s background-color;
		background-position: top 35px center;
		background-repeat: no-repeat;

		&:first-child {
			margin-left: 0;
		}

		&:last-child {
			margin-right: 0;
		}

		&:hover {
			background-color: @yellow;
		}

		&.wifi {
			background-image: url('assets/wifi.svg');
		}

		&.tv {
			background-image: url('assets/tv.svg');
			animation-delay: .3s;
		}

		&.mobile {
			background-image: url('assets/mobile.svg');
			animation-delay: .6s;
		}

		&.technical {
			background-image: url('assets/cogwheel.svg');
			animation-delay: .9s;
		}

		a {
			text-decoration: none;
			color: #fff;
			display: block;
			box-sizing: border-box;
			padding: 130px 45px 20px;
		}
	}
}

/* END BANNER */

/* START MAIN */

.main {
	width: 100%;
	float: left;
	background: #fff;
	padding: 50px 0;
	border-top: 1px solid #E1E1E1;
	border-bottom: 1px solid #E1E1E1;

	h1 {
		margin-top: 0 !important;
	}
}

.no-bg {
	width: 100%;
	float: left;
	padding: 50px 0;

	h1 {
		margin-top: 0 !important;
	}
}

.link-button {
	display: inline-block;
	padding: 10px 20px;
	background: #e7e7e7;
	border: 1px solid #dbdbdb;
	margin: 0 5px 10px;
	color: #7a7a7a;
	border-radius: 10px;
	text-decoration: none;

	&:hover {
		border-color: @purple;
		background: @purple;
		color: #fff;
	}
}

.homepage {
	.main {
		padding-top: 150px;
	}
}

.pages {
	.main {
		padding-top: 50px;
		margin-top: 50px;

		ul {
			li {
				margin-bottom: 10px;
			}
		}
	}
}

a.huge {
	color: @purple;
	text-decoration: none;
	font-size: 28px;
	font-family: 'gilroyextrabold';
}

.icon {
	width: 60px;
	height: 70px;
	display: block;
	float: left;
	margin-right: 15px;
	background-size: contain !important;

	&--news {
		background: url('assets/news.svg') no-repeat left center;
	}

	&--globe {
		background: url('assets/globe.svg') no-repeat left center;
	}

	&--person {
		background: url('assets/person.svg') no-repeat left center;
	}

	&--cloud {
		background: url('assets/cloud.svg') no-repeat left center;
	}

	&--email {
		background: url('assets/email.svg') no-repeat left center;
	}

	&--infolinka {
		background: url('assets/infolinka.svg') no-repeat left center;
	}

	&--merak {
		background: url('assets/merak.svg') no-repeat left center;
	}

	&--ticket {
		background: url('assets/ticket.png') no-repeat left center;
	}


	&.inline-block {
		display: inline-block;
		float: none;
		margin-right: 0;
	}
}

.col-item {
	width: 30%;
	display: inline-block;
	margin-bottom: 25px;
	vertical-align: top;
	position: relative;

	a {
		color: @purple;

		&:hover {
			color: @yellow;
		}
	}

	&:nth-child(3n-1) {
		margin-left: 4.5%;
		margin-right: 4.5%;
	}

	h2 {
		float: left;
		margin-top: 10px;

		small {
			display: block;
			font-family: 'open_sansregular';
			font-size: 14px;
		}
	}

	.top {
		width: 100%;
		float: left;
	}

	&:hover {
		&::before {
			opacity: 1;
		}
	}
}


A.col-item {
	&::before {
		width: 100%;
		height: 100%;
		background: rgba(248, 166, 35, 0.20);
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		transform: scale(1.2);
		border-radius: 20px;
		opacity: 0;
		transition: .3s all;
		pointer-events: none;
	}
}

A.col-item div.col-item {
	width: 100% !important;
}

.col-middle {
	margin-left: 4.5%;
	margin-right: 4.5%;
}

.col-left {
	width: 50%;
	box-sizing: border-box;
	padding-right: 10px;
	float: left;
	margin-bottom: 10px;
}

.col-right {
	width: 50%;
	box-sizing: border-box;
	padding-left: 10px;
	float: right;
	margin-bottom: 10px;
}

/* END MAIN */

/* START FOOTER */

footer {
	width: 100%;
	padding-top: 100px;
	float: left;

	.city-bg {
		margin-top: 100px;
		min-height: 407px;
		background: url('assets/city.svg');
		background-position: center center;
	}

	.footer-links {
		width: 100%;
		min-height: 100px;
		background: @yellow;
		padding-bottom: 20px;

		p {
			color: @purple;
			margin-bottom: 0;
			margin-top: 40px;
			font-size: 13px;
		}

		ul {
			margin: 0;
			padding: 0;
			list-style: none;
			padding-top: 40px;

			li {
				display: inline-block;
				margin: 0 20px;

				a {
					color: @purple;

					&:hover {
						color: #fff;
					}
				}
			}
		}
	}

	.form {
		max-width: 740px;
		float: right;
		padding-bottom: 150px;
		padding-right: 50px;
	}

	.image {
		width: 260px;
		height: 300px;
		background: url('assets/image-footer.jpg') no-repeat center center;
		background-size: cover;
		border-radius: 15px;
		float: right;
		margin-right: 25px;
	}
}

/* END FOOTER */

/* START FORM */

.form {
	&.contact {
		width: 360px;
		float: right;
	}

	input,
	textarea {
		width: 100%;
		background: #fff;
		border-radius: 6px;
		height: 35px;
		line-height: 35px;
		border: 1px solid rgba(0, 0, 0, 0.15);
		box-sizing: border-box;
		outline: none !important;
		padding: 0 10px;
		appearance: none;
		-webkit-appearance: none;
		transition: .3s all;
		box-shadow: 0 3px 20px rgba(0, 0, 0, 0.04);

		&:focus {
			color: #495057;
			background-color: #fff;
			border-color: @yellow;
			outline: 0;
			box-shadow: 0 0 0 0.2rem rgba(248, 166, 35, 0.23);
		}

		&.small-input {
			width: 70px;
		}
	}

	textarea {
		height: 80px;
	}

	label {
		width: 100%;
		display: block;
		font-family: 'gilroyextrabold';
		color: #000;
	}
}

.button {
	background: @purple;
	color: #fff;
	display: inline-block;
	border-radius: 7px;
	padding: 15px 25px;
	border: 0;
	cursor: pointer;
	font-family: 'gilroyextrabold';
	font-size: 16px;
	transition: .3s background;
	text-decoration: none;

	&:hover {
		background: @yellow;
		color: #fff;
	}
}

/* END FORM */

/* START TARIFY */

.tarifs {
	width: 100%;
	float: left;
	margin-top: 50px;

	.tarif {
		width: 100%;
		height: 90px;
		background: #fff;
		border: 1px solid #E1E1E1;
		border-radius: 10px;
		margin-bottom: 50px;
		box-sizing: border-box;
		padding-top: 25px;

		&.active {
			height: 300px;
		}

		&:last-child {
			margin-bottom: 0;
		}

		.col {
			width: 16.6%;
			float: left;
			text-align: center;
			box-sizing: border-box;
			font-family: 'open_sanssemibold';

			&:first-child {
				font-size: 26px;
				color: @yellow;
				text-align: left;
				padding-left: 15px;
			}

			&:nth-child(5) {
				color: @purple;
			}

			small {
				display: block;
				font-family: 'open_sansregular';
			}

			.button {
				padding: 9px 25px;
			}
		}

		.hidden {
			width: 100%;
			float: left;
			display: none;
			position: relative;
			box-sizing: border-box;
			padding: 40px 15px 20px;
			padding-left: 220px;
			font-family: 'open_sanssemibold';
			color: #000;
			line-height: 30px;

			strong {
				width: 350px;
				display: inline-block;
				color: #000;
			}

			small {
				font-size: inherit;
				color: #7f7f7f;
			}

			&:before {
				width: 97%;
				height: 1px;
				background: #E1E1E1;
				float: left;
				margin-left: 1.5%;
				content: '';
				margin-top: 20px;
				position: absolute;
				left: 0;
				top: 0;
			}

			&.active {
				display: block;
			}
		}
	}
}

.tarif-table {
	width: 100%;

	.t-table {
		width: 33%;
		float: left;
		box-sizing: border-box;
		padding: 0 15px;

		h2 {
			margin-bottom: 0;
		}

		&:first-child {
			padding-left: 0;
		}

		&:last-child {
			padding-right: 0;
		}

		.tr {
			width: 100%;
			float: left;
			border-bottom: 1px solid #E1E1E1;
			padding: 10px 0;

			&:last-child {
				border-bottom: 0;
			}
		}
	}
}

/* END TARIFY */

/* START MAP */

.map {
	width: 600px;
	height: 450px;
	background: red;
	border-radius: 15px;
	float: left;
}

/* END MAP */

/* START ARTICLE */

article {
	width: 100%;

	.created {
		color: @purple;
		font-family: 'gilroyextrabold';
		font-size: 14px;
	}

	p {
		margin-top: 5px;
		padding-bottom: 15px;
		border-bottom: 1px solid #E1E1E1;
	}

	&:last-child {
		p {
			border-bottom: 0;
		}
	}
}

.msg {
	text-decoration: none !important;
	position: relative;

	.t {
		position: relative;
		display: block;
		z-index: 1;
	}

	.t::before {
		content: '';
		position: absolute;
		left: -1.5%;
		width: 103%;
		height: 104%;
		top: -2%;
		background: @yellow;
		border-radius: 15px;
		z-index: -1;
		opacity: 0;
		transition: .3s all;
	}

	em {
		font-style: normal;
		font-size: 18px;
		color: @purple;
	}

	&:hover {
		color: #484848;

		.t::before {
			opacity: .4;
		}
	}
}

.predstaveni {
	position: absolute;
	bottom: 5px;
	background: rgba(143, 29, 119, 0.50);
	border-bottom-left-radius: 25px;
	border-top-right-radius: 25px;
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
	padding: 10px 25px;
	-webkit-backdrop-filter: blur(10px);
	-moz-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);

	em {
		font-style: normal;
		font-family: 'gilroyextrabold';
		font-size: 19px;
	}
}

.obsah {
	p {
		em {
			font-family: 'gilroyextrabold';
			font-style: normal;
		}
	}
}

.hovergray {
	margin-bottom: 5px;

	img {
		border-radius: 25px;
	}
}

.hovergray:nth-child(even) {
	padding-left: 5px;
}

.hovergray:nth-child(odd) {
	padding-right: 5px;
}

/* END ARTICLE */
