@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300,400&display=swap');

.sora {
  font-family: "Sora", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

body {
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
	margin: 0;
	padding: 0;
	font-family: Sora, sans-serif;
	font-size: 16px;
	color: #fff;
	background: #000;
	background-size: 100% auto;
}

a { transition: all 1s; transition: all 0.5s; text-decoration: none; color: #000; }
	a:hover, a:active { color: #666666; text-decoration: none; }
p:empty { display: none; }
b, strong { font-weight: 600; }
img { max-width: 100%; height: auto; }
h1,h2,h3,h4,h5 { font-family: 'Sora', sans-serif; margin: 0 0 20px; }
	h1 { text-transform: uppercase; font-size: 3em; line-height: 1.2em; font-weight: 500; }
	h2 { margin-top: 0; text-transform: uppercase; font-size: 2.2em; line-height: 1.2em; font-weight: 500; }
	h3 { font-size: 1.17em; font-weight: 500; margin: 2em 0 1em; }
blockquote { font-size: 18px; }

.post { margin: 30px 0; }
	.post .imgcont { aspect-ratio: 16/9; overflow: hidden; display: flex; align-items: center; }
		.post .imgcont img { width: 100%; height: auto; }
	.post h2 { margin: 20px 0 10px; }
	.post small { font-weight: bold; color: #C6CCD5; text-transform: uppercase; font-size: 12px; display: table; margin: 0 0 20px; }
	a.rmore { text-transform: uppercase; font-weight: bold !important; font-size: 15px; margin: 10px 0 10px; display: block; }

	.featured-image-wrap img { display: block; width: 100%; margin: 0 0 30px; }

/* pagination */
.sp { text-align: center; padding: 45px 0 15px; }
	.sp .prev, .sp .next { display: none !important; }
	.sp span, .sp a.page-numbers { color: #0056A3; border: 1px solid; padding: 6px 12px; margin: 0 8px; text-decoration: none; display: inline-block; }
		.sp a.page-numbers:hover { color: #fff; background: #0056A3; }
		.sp a.page-numbers:after { display: none; }
	.sp span { color: #ccc; }

/* NAVIGATION */

.show-menu { width: 42px; height: 42px; cursor: pointer; z-index: 99999; margin-left: 20px; float: right; position: relative; top: 30px; }
	.show-menu .menu-icon__cheeckbox {
		display: block; width: 100%;height: 100%; position: relative; cursor: pointer; z-index: 2; -webkit-touch-callout: none; position: absolute; opacity: 0;
	}
	.show-menu div { margin: auto; position: absolute; top: 0; right: 0; left: 0; bottom: 0; width: 54px; height: 42px; }
	.show-menu span { position: absolute; display: block; width: 100%; height: 4px; background-color: #000; transition: all 0.2s; top: 12px; right: 0; }
		.show-menu span:first-of-type { top: 0; }
		.show-menu span:last-of-type { top: 24px; }
	.show-menu .menu-icon__cheeckbox:checked + div span { opacity: 0; }
	.show-menu .menu-icon__cheeckbox:checked + div span:first-of-type { transform: rotate(45deg); top: 6px; opacity: 1; background-color: #fff; }
	.show-menu .menu-icon__cheeckbox:checked + div span:last-of-type { transform: rotate(-45deg); top: 6px; opacity: 1; background-color: #fff; }
	.show-menu.active:hover span:first-of-type, .show-menu.active:hover span:last-of-type,
	.show-menu:hover span { background-color: #fff; }
  .show-menu a, .show-menu b {
	position: absolute; color: #000; background: #fff; width: 15px; height: 15px; border-radius: 15px; line-height: 15px;
	font-size: 8px; text-align: center; top: 28px; left: 5px; box-shadow: 0 0 10px rgba(0,0,0,0.5); text-decoration: none; z-index: 99999;
  }
  body.showmenu header .logo { opacity: 0; }

#navigation ul { float: right; display: flex; gap: 20px; margin: 30px 0 0; }
	#navigation li { list-style: none; padding: 0 0 5px; }
		#navigation li a {
			font-size: 16px; font-weight: bold; transition: all 0.5s; color: #fff; border-bottom: 1px solid transparent; position: relative; padding: 5px;
		}
		#navigation li a:after { content: ''; height: 1px; width: 0; background: transparent; position: absolute; transition: all 0.5s; left: 0; bottom: 0; }
		#navigation li:hover a:after { width: 100%; background: #ef0952; }

/* HEADER */

header { position: absolute; width: 100%; z-index: 1001; }
	header .logo img { max-width: 90px; max-height: 60px; margin-top: 10px; }

.flex { display: flex; flex-direction: row; justify-content: space-between; }

/* SLIDESHOW */

.video_content { position: relative; line-height: 0; margin: 0 0 100px; }
	.video_content:before { content: ''; background: rgba(0,0,0,0.6); top: 0; left: 0; width: 100%; height: 100%; position: absolute; }
.vcontent { position: absolute; display: flex; justify-content: center; align-items: center; flex-direction: column; left: 50%; transform: translate(-50%, 0); z-index: 990; }
	.vcontent img { max-width: 90vw; max-height: 100vh; z-index: 998; }
	.vcontent h2 { font-size: 30px; font-weight: bold; font-style: italic; letter-spacing: -1px; color: #fff; margin: -100px 0 0; }
	.vcontent a {
		background: #ef0952; display: flex; padding: 20px 30px; color: #fff; border-radius: 40px; font-size: 21px; font-weight: bold;
		letter-spacing: -1px; z-index: 999; margin: -120px 0 0 0; transition: all 0.5s; position: relative;
	}
	.vcontent h2 + a { margin: 30px 0 0; }
	.vcontent a:hover { background: #333; }

.hidden { display: none !important; }
.trailer {
	position: fixed; width: 100vw; height: 100vh; background: rgba(0, 0, 0, 0.9); z-index: 1000; top: 0; left: 0; display: flex;
	justify-content: center; align-items: center;
}
.trailer .videoWrapper { height: 90vh; aspect-ratio: 16 / 9; }
	.trailer .videoWrapper iframe { width: 100%; height: 100%; }
.close { color: #fff; position: absolute; top: 30px; right: 30px; font-size: 72px; font-weight: 300; transform: rotate(45deg); }

/* PAGE */

.intro_content { position: relative; padding: 150px 0 60px; overflow: hidden; }
	.intro_content h2 {
		color: #000; position: absolute; top: -120px; left: -120px; z-index: 0; text-transform: capitalize; 
    	letter-spacing: -50px; font-size: 480px;font-weight: bold; text-shadow: -1px 0px 0px #333, 0px -1px 0px #333;
    }
	.intro_content .row { z-index: 1; position: relative; }
	.intro_content .col-3 { padding-right: 60px; }
	.intro_content .col-5 { padding-right: 60px; font-size: 16px; }
		.intro_content .col-5 h4 { color: #ef0952; font-weight: bold; margin: 0 0 30px; font-size: 21px; }
	.intro_content .col-5 + .col-4 { padding-right: 0px; text-align: right; columns: 2; }
		.intro_content .col-5 + .col-4 p { color: #aaa; font-size: 16px; }
		.intro_content .col-5 + .col-4 p strong { color: #595959; font-size: 14px; }

.greybg { padding: 60px 0; }
.darkbg { padding: 60px 0; background: #151515; }
	.darkbg .card-inner { border-bottom: 1px solid #555; text-transform: uppercase; font-size: 24px; display: flex; justify-content: flex-start; gap: 50px; }
	.darkbg .card-inner h5 b { color: #ef0952; display: inline-block; width: 120px; }
	.darkbg .card-inner div { color: #aaa; font-size: 18px; text-transform: none; }
.greybg h3 { font-size: 48px; letter-spacing: -4px; margin: 30px 0 60px; }
	.greybg h3 b { color: #ef0952; }

.v3 { display: flex; flex-wrap: wrap; gap: 20px; }
	.v3 .card-inner { width: calc(50% - 20px); }
		.v3 .card-inner iframe { width: 100%; aspect-ratio: 16 / 9; margin: 0 0 30px; }
		.v3 .card-inner h4 { font-weight: bold; font-size: 21px; }
		.v3 .card-inner p { font-size: 16px; color: #595959; }

.pinkbg { background: #570720; padding: 30px 0 60px; }
.pinkbg .container a { background: #ef0952;
    display: table; border-radius: 30px;  padding: 10px 20px; color: #fff; font-size: 16px; font-weight: bold; letter-spacing: -1px;
    position: relative; width: auto; margin: 30px 0 0;
}

/* CONTACT, PRIVACY POLICY & IMPRESSUM */

.contactpage { background: #000; }
.contactpage .small { font-size: 14px; color: #595959; }
.contactpage .fullinput { clear: both; margin: 0 0 50px; }
	.contactpage .fullinput p { display: flex; flex-wrap: wrap; align-items: center; }
.contactpage .halfinput { width: 50%; float: left; }
	.wpcf7 label { width: 300px; display: inline-block; }
	.wpcf7 br { display: none; }
	.wpcf7 input {
		min-width: 150px; background: transparent; border: none; border-bottom: 1px solid #595959; margin-right: 10px; color: #fff;
		font-size: 15px; padding: 5px; outline: none;
	}
	.wpcf7 input[type=submit] {
		background: #ef0952; display: table; padding: 10px 20px; color: #fff; border-radius: 30px; font-size: 16px; font-weight: 400;
		letter-spacing: -1px; z-index: 999; transition: all 0.5s; position: relative; width: auto; margin: 30px 0 0;
	}
	.wpcf7 input[type=submit]:hover { background: #595959; }
	.wpcf7 form .wpcf7-response-output { border: none; float: right; padding: 0 2em 2em 0; margin: -4em 0 0; }
	.wpcf7-not-valid-tip { font-size: 14px; font-weight: 600; }

/* FOOTER */

.grecaptcha-badge { display: none; }
.abovefooter { background: url(../img/leaves.jpg); background-position: center center; background-size: cover; padding: 60px 0; }
	.abovefooter .flex { max-width: 300px; margin: 0 auto; }
	.abovefooter img { height: 48px; }
footer { color: #595959; background: #000; padding: 60px 0; }
	footer img { height: 60px; }
	footer .foottext { font-size: 14px; }
		footer .foottext a { color: #595959; text-decoration: none; margin-left: 15px; }
			footer .foottext a:hover { color: #aaa; border-bottom: 1px solid #595959; }
	footer .flex { align-items: center; }
	footer .flex > div { display: flex; }
		footer .flex > div li { list-style: none; }
		footer .flex > div a { text-decoration: none; font-weight: 400; color: #595959; font-size: 14px; }
		footer .flex > div a:hover { text-decoration: none; }
	footer .flex ul { display: flex; gap: 15px; }
		footer .flex ul li a:hover { color: #aaa; border-bottom: 1px solid #595959; }

.outer-nav { z-index: 99998; position: fixed; top: 0; right: -100%; height: 100vh; width: 90vw; transition: all 0.5s; padding-top: 180px; z-index: 1000; }
	.outer-nav > .container { z-index: 2; position: relative; }
	.outer-nav:after { content: ''; background: #ef0952; width: 100%; height: 100%; top: 0; right: 0; position: absolute; z-index: 1; } 
.outer-nav li { list-style: none; margin: 0 0 5px; }
	.outer-nav li a {
		color: #fff; text-transform: normal; font-weight: normal; font-size: 27px; font-weight: 400; letter-spacing: -1px; padding: 0 0 20px; display: inline-block;
	}
body.showmenu .outer-nav { top: 0; right: 0; }

#navigation li.lang-en a, #navigation li.lang-hu a {
	overflow: hidden;  background-size: contain !important; background-position: center center; line-height: 200px; display: inline-block; height: 23px;
}
#navigation li.lang-en a { background: url(../img/lang_gb.svg) no-repeat; margin-left: 30px; }
#navigation li.lang-hu a { background: url(../img/lang_hu.svg) no-repeat; }

/******************** RESPONSIVE ********************/

/* sm - tablet (mobile first) */ @media (min-width: 640px) {}
/* md - tablet landscape or really small desktop screen */ @media (min-width: 768px) {}
/* lg - smaller desktop screen */ @media (min-width: 1024px) {}
/* xl - normal/big desktop screen */ @media (min-width: 1280px) {}
/* 2xl - huge screen or tv */ @media (min-width: 1536px) {}

/* Desktop only */
@media (min-width: 1024px) {

	.desktophide { display: none !important; }

}

/* Tablet or small screen */
@media (min-width: 641px) and (max-width: 1023px) {

	.desktophide { display: none !important; }

}

/* Mobile only */
@media (max-width: 640px) {

	body { font-size: 16px; line-height: 24px; }
	.mobilehide { display: none !important; }
	.col-3, .col-4, .col-5, .col-6, .col-8 { width: 100%; }
	section { padding: 30px !important; }

	header .col-3, header .col-9 { width: 50%; }
		.show-menu { top: 15px; right: 15px; transform: scale(0.65); }
		.show-menu span { background-color: #fff; }
	
	.video_content { height: 85vh; padding: 0 !important; display: flex; justify-content: center; overflow: hidden; }
    .vcontent { bottom: 30px; }
    	.vcontent img { max-width: 135vw; }
    	.vcontent h2 { margin: -30px 0 0; max-width: 50vw; font-size: 24px; text-align: center; }
    	.vcontent a { margin: -30px 0 0; }
    .video_content video { height: 100%; width: auto; }
    .trailer .videoWrapper { display: flex; align-items: center; width: 100%; height: auto; }
    	.trailer .videoWrapper video { width: 100% !important; height: auto; }

	.intro_content h2 { left: -40px; letter-spacing: -25px; font-size: 180px; }
	.intro_content .col-3, .intro_content .col-5 { padding-right: 0px; }
	.intro_content .col-5 h4 { margin: 30px 0 30px; }
	.intro_content .col-5 + .col-4 { text-align: center; columns: 1; border-top: 1px solid #595959; padding-top: 30px; margin-top: 30px; }

	.v3 .card-inner { width: 100%; }

	.greybg { padding: 30px; }
	.greybg h3 { font-size: 36px; letter-spacing: -3px; margin: 30px 0 60px; text-align: center; }

	.darkbg .card-inner { margin: 0 0 30px; }
		.darkbg .card-inner h5 { text-align: center; display: flex; flex-wrap: wrap; text-transform: capitalize; justify-content: center; gap: 5px; }

	.contactpage .fullinput { text-align: center; }
	.wpcf7-form-control-wrap { margin: 20px auto 10px; max-width: 90vw; overflow: hidden; }
	.wpcf7 input { text-align: center; max-width: 75vw !important; }
	.wpcf7 input[type=submit] { margin: 30px auto 0; }

	footer {}
		footer ul { padding: 0; }
		footer .nav { display: none; }
		footer .flex { flex-direction: column; gap: 30px; }
		footer .flex > div { flex-direction: column; text-align: center; gap: 30px 0; align-items: center; }
		footer .social-icon { margin-left: 0; }
	h1 { font-size: 72px; }
	h2 { font-size: 36px; }

}


