/* -----------------------------*/
/* 	 	SITE MAIN STYLE START	*/
/* -----------------------------*/

@font-face {
	font-family: 'Chevin-Bold';
	src: url('../fonts/Chevin/Chevin-Bold.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/Chevin/Chevin-Bold.woff') format('woff'),
		 url('../fonts/Chevin/Chevin-Bold.ttf')  format('truetype'),
		 url('../fonts/Chevin/Chevin-Bold.svg#Chevin-Bold') format('svg');
	font-weight: normal;
	font-style: normal;
}


html, body {
	background-color: #f3f3f3;
}

h1,h2,h3,h4,h5,h6,ul,ol,li,body,div,section,a,p {
	color: #0f2347;
	font-family: 'Rubik', sans-serif;
}

#mobile {
	display: none;
}

@media screen and (max-width: 900px) {
	#mobile {
		display: block;
	}
}
@media screen and (max-width: 600px) {

}

/* -----------------------------*/
/* 		 SITE MAIN STYLE END	*/
/* -----------------------------*/


/* ----- HEADER START ----- */
.header-outer {
	height: 85px;
	padding: 2.5px 10px;
	background-color: #FFF;
	position:fixed;
	z-index:9999;
}

.header-inner {

}
.logo {
	float: left;
	max-width: 450px;
	cursor: pointer;
	height: 70px;
	padding-top:10px;
}

.logo a {
	cursor: pointer;
	font-size: 12pt;
	color: #015797;
}

.logo a span {
	display:inline-block;
	margin-top:10px;
}
.logo a span.mobile {
	display:none;
	margin-top:5px;
	font-size:13pt;
}

.logo object {
	max-width: 250px;
	pointer-events: none;
}

.logo img {
	height:70px;
	float:left;
}
/* ----- HEADER END ----- */

/* ----- MAIN MENU START ----- */
.main-menu-outer {
	float: right;
}
.main-menu-inner {
	float: left;
	width: 100%;
}
.main-menu {}
.m-item {
	float: left;
	width: auto;
	line-height: 80px;
	padding: 0px 15px;
	font-size: 12pt;
	text-transform: uppercase;
	position: relative;
	cursor: pointer;
}
.m-item.orange {
	color: #f36f32;
	font-weight: bold;
}
.m-item:last-child {
	padding-right: 0px;
}
.m-item:hover {}
.m-item a {
	color: inherit;
	font-size: inherit;
	line-height: inherit;
	text-decoration: inherit;
}
.m-icon {
	height: 20pt;
	margin: -7px 0px;
	width: 20pt;
}
.m-title {}

/* ----- EGYÉB LEGÖRDÜLŐ MENÜ START ----- */

/* A dropdown trigger gomb pontosan úgy néz ki, mint egy normál menülink */
.m-item--dropdown > button {
	background: none;
	border: none;
	cursor: pointer;
	font-family: 'Rubik', sans-serif;
	font-size: 12pt;
	text-transform: uppercase;
	color: #0f2347;
	line-height: 80px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

/* Nyíl ikon – tiszta CSS */
.m-item--dropdown > button .dropdown-arrow {
	display: inline-block;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 6px solid #0f2347;
	transition: transform 0.2s ease;
	flex-shrink: 0;
	margin-top: 2px;
}

/* Nyitott állapot: nyíl megfordul */
.m-item--dropdown[data-open="true"] > button .dropdown-arrow {
	transform: rotate(180deg);
}

/* Fókusz körvonal – billentyűzetes navigációhoz */
.m-item--dropdown > button:focus-visible,
.m-item a:focus-visible {
	outline: 3px solid #f36f32;
	outline-offset: 2px;
	border-radius: 3px;
}

/* Legördülő panel */
.dropdown-panel {
	position: absolute;
    top: calc(100% - 21px);
    right: 10px;
    min-width: 117px;
    background: #FFF;
    border: 1px solid #DDD;
    border-top: 3px solid #015797;
    border-radius: 0 0 6px 6px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    list-style: none;
    padding: 6px 0;
    z-index: 10000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

/* Nyitott állapot */
.m-item--dropdown[data-open="true"] .dropdown-panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.dropdown-panel li {
	width: 100%;
	text-align: center;
}

.dropdown-panel a {
	display: block;
	padding: 10px 18px;
	font-size: 11pt;
	color: #0f2347;
	text-transform: uppercase;
	line-height: 1.4;
	transition: background 0.12s ease, color 0.12s ease;
}
.dropdown-panel a:hover {
	background: #015797;
	color: #FFF;
}
.dropdown-panel a:focus-visible {
	outline: 3px solid #f36f32;
	outline-offset: -3px;
	background: #015797;
	color: #FFF;
}

/* ----- EGYÉB LEGÖRDÜLŐ MENÜ END ----- */

/* ----- MAIN MENU END ----- */

/* ----- CONTENT START ----- */
.content-outer {

}

.content-inner {

}

.parallax {
	padding:50px;
	background-image: url("../img/tree2_tr.png");
	background-attachment: fixed;
    background-position: center 175px;
    background-repeat: no-repeat;
    background-size: 50% auto;
    height:900px;
}

.tree-bw {
	background-image: url("../img/tree_bw.png");
	height:auto;
}

.main-title {
	font-weight: 300;
	font-size: 52pt;
	float: left;
	width: 100%;
	padding: 50px 0px 0px 0px;
	text-align: center;
}

.sub-title {
	font-weight: 500;
	font-size: 15pt;
	float: left;
	width: 100%;
	text-align: center;
}

.main-title b {
	font-weight: 900;
}

.bdata_center {
	text-align:center;
	margin-top: 40px;
	float: none;
	display: inline-block;
	width: 100%;
}

.bdata_align {
	text-align:left;
	max-width:700px;
	width:100%;
	display:inline-block;
}

.bdata_align.detailed {
	max-width:900px;
	width:100%;
}

.bdata {	
	text-align:left;
	width:100%;
	border:#CACACA 5px solid;
	border-radius:10px;
}

.bdata THEAD TD {
	background:#01599A;
	color:white;
	font-weight:bold;
	padding:10px;
}

.bdata TBODY TD {
	padding:10px;
	border-bottom:#d0d0d0 1px solid;
}

.bdata TD.buttons {
	padding:0px 10px 10px 0px;
	text-align:right;
}

.bdata TD button {
	cursor:pointer;
	background:#01599A;
	color:white;
	border:#01599A 1px solid;
	border-radius:5px;
	font-size:11pt;
	margin-left:5px;
}

.bdata TD  button.reset {
	background:#808080;
	color:#f0f0f0;
	border:#808080 1px solid;
}

.bdata THEAD INPUT {
	width:100%;
}

.bdata THEAD.search TD {
	background:#73899A;
}
.bdata THEAD TD.last INPUT {
	width:50%;
}

.bdata TD:nth-child(1) {
	width:30%;
}

.bdata TD:nth-child(2) {
	width:50%;
}
.bdata TD:nth-child(3) {
	width:30%;
}
.pager {
	clear:both;
	float:right;
}

.pager ul {
	margin-top:10px;
	text-align:center;
}
.pager ul li {
	float:left;
	display:block;
	width:auto;
	margin-right:3px;
}

.pager ul li a {
	padding:5px;
	border:#c0c0c0 1px solid;
}
.pager ul li a:hover {
	background-color:#01599A;
	color:white;
}

.banner {
	width: 100%;
	display: table;
	margin: 0 auto;
	padding-top: 44%;
	position: relative;
}

.banner a {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	cursor: pointer;
}

.to-qnaire {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 10px 20px;
	text-transform: uppercase;
	font-size: 18pt;
	color: #FFF;
	font-family: 'Rubik', sans-serif;
	background-color: #f36f32;
	transition: background-color 0.15s ease-in-out;
	text-align: center;
	cursor: pointer;
}
.banner a:hover .to-qnaire,
.to-qnaire:hover {
	background-color: #f15620;
}

.qnaire-about {
	padding: 30px 10px;
}

.qnaire-about h3 {
	text-align: center;
	float: left;
	width: 100%;
	font-size: 18pt;
	font-weight: 300;
	padding: 10px 0px 0px;
}
.qnaire-about p {
	float: left;
	width: 100%;
	text-align: justify;
	font-size: 14pt;
	font-weight: 300;
	padding-top: 40px;
}
.qnaire-about ul {
	float: left;
	width: 100%;
	padding-top: 30px;
	padding-left: 10px;
}
.qnaire-about li {
	float: left;
	width: 100%;
	font-size: 12pt;
	font-weight: 500;
}

.qnaire-about li:not(:last-child) {
	padding-bottom: 10px;
}
.qnaire-about li:before {
	content: "•";
    padding-right: 10px;
    color: #f36f32;
}
/* ----- CONTENT END ----- */

/* ----- CONTACT START ----- */
.contact-outer {
	border-top: 2px solid #000;
	background-color: #0f2347;
}
.contact-inner {

}
.contact-top {}
.contact-title {
	display: table;
	margin: 70px auto 20px;
	font-size: 18pt;
	color: #FFF;
	font-weight: 400;
}
.contact-title object {
	height: 24pt;
    margin: -7px 0px;
}

.contact-title span {
	transform: rotate(90deg);
	font-family: 'Chevin-Bold';
	text-align: center;
	width: 100%;
	float: left;
	padding: 25px 0px;
	font-size: 34pt;
	pointer-events: none;
}

.contact-bottom {
	max-height: 0px;
	overflow: hidden;
	transition: max-height 0.5s ease-in-out,
				height 0.5s ease-in-out;
}
.contact-bottom.open {
	max-height: 2000px;
}

.contact-bottom .contact-title {
	font-size: 16pt;
	text-align: center;
	margin: 0 auto;
}
.contact-bottom .contact-title small {
	float: left;
	width: 100%;
	font-size: 11pt;
}
.contact-bottom .contact-title small:first-of-type {
	padding-top: 15px;
}
.contact-member {
	border-top: 2px solid rgba(255, 255, 255, 0.1);
	border-bottom: 2px solid rgba(255, 255, 255, 0.1);
	padding: 30px 0px;
	margin: 30px auto;
	display: table;
	width: 100%;
}
.contact-form {
	margin-bottom: 30px;
}

.contact-form object {
	margin: 0 auto 20px;
	height: 50pt;
	display: table;
}

.contact-form .form-item {
	float: left;
	width: 100%;
	padding-bottom: 20px;
	color: #FFF;
}

.contact-form label {
	float: left;
	width: 100%;
	font-size: 11pt;
}

.contact-form input,
.contact-form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	float: left;
	min-height: 35px;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form textarea {
	background-color: #FFF;
	outline: none;
	border: none;
	width: 100%;
	padding: 10px;
}

.contact-form textarea {
	resize: vertical;
	min-height: 150px;
}
.button  {
	display:inline-block;
	width:auto;
	margin: 10px auto;
	padding: 10px 20px;
	background-color: #f36f32;
	color: #FFF;
	text-transform: uppercase;
}
.contact-form button {
	display: table;
	margin: 10px auto;
	padding: 10px 20px;
	background-color: #f36f32;
	color: #FFF;
	text-transform: uppercase;
	outline: none;
	float: none;
	border: none;
	font-size: 14pt;
	font-family: 'Rubik', sans-serif;
	cursor: pointer;
	transition: background-color 0.15s ease-in-out;
}
.contact-form input[type="submit"]:hover {
	background-color: #f15620;
}
/* ----- CONTACT END ----- */


/* ----- MAIN FORM START ----- */
.main-form {}

.main-form .item {

}

.main-form .qn-number {
	padding-top: 15px;
	margin-top: 15px;
	position: relative;
	float: left;
	width: 100%;
	border-top: 1px solid #DDD;
	margin-bottom: 20px;
}
.main-form .qn-number:before,
.main-form .qn-number:after {
	content: ' ';
	width: 30px;
	height: 30px;
	background-color: #f3f3f3;
	position: absolute;
	top: -15px;
}

.main-form .qn-number:before { left: calc(50% - 30px); transform: translateX(-50%); }
.main-form .qn-number:after  { right: calc(50% - 30px); transform: translateX(50%); }

.main-form .qn-number span {
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	height: 30px;
	width: 30px;
	color: #FFF;
	background-color: #f36f32;
	text-align: center;
	line-height: 30px;
	font-weight: 800;
	font-size: 12pt;
}
.main-form label b,
.main-form label {
	font-size: 12pt;
	font-weight: 400;
	line-height: 14pt;
	text-align: center;
	float: left;
	margin-bottom: 15px;
	cursor: pointer;
}

.main-form label:not(.small) b,
.main-form label:not(.small) {
	font-size: 14pt;
	line-height: 18pt;
	width: 100%;
}

.main-form label:not(.small) {
	width: 100%;
}

.main-form label:not(.small) ~ select,
.main-form label:not(.small) ~ input,
.main-form label:not(.small) ~ textarea {
	width: 100%;
}

.main-form label.small {
	float: left;
	width: 30%;
	line-height: 30px;
}

.main-form label.small ~ select,
.main-form label.small ~ input,
.main-form label.small ~ textarea {
	float: right;
	width: 70%;
}

.main-form input,
.main-form select,
.main-form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	float: left;
	min-height: 35px;
}

.main-form select,
.main-form input[type="text"],
.main-form input[type="number"],
.main-form textarea {
	background-color: #FFF;
	outline: none;
	border: none;
	width: 100%;
	padding: 10px;
	border: 1px solid #DDD;
	box-shadow: 0px 10px 10px -13px rgba(0, 0, 0, 0.5);
}

.main-form textarea {
	resize: vertical;
	min-height: 150px;
}

.main-form input[type="submit"] {
	display: table;
	margin: 10px auto;
	padding: 10px 20px;
	background-color: #f36f32;
	color: #FFF;
	text-transform: uppercase;
	outline: none;
	float: none;
	border: none;
	font-size: 14pt;
}

.main-form .item textarea {
    min-height: 100px;
}

.main-form .item {
	float: left;
	width: 100%;
	margin-bottom: 15px;
	padding-bottom: 10px;
}

.main-form .item input.error,
.main-form .item textarea.error,
.main-form .item select.error {
	border-color: #f00;
	clear: none;
}

.main-form .item.buttons {
	display: table;
	margin: 50px auto;
	float: none;
	width: auto;
}

.main-form .item.buttons button {
	margin-top: 30px;
	padding: 10px 20px;
	background-color: #f36f32;
	color: #FFF;
	text-transform: uppercase;
	outline: none;
	border: none;
	font-size: 14pt;
	font-family: 'Rubik', sans-serif;
	transition: background-color 0.15s ease-in-out;
	cursor: pointer;
}
.main-form .item.buttons button:hover {
	background-color: #f15620;
}
.main-form .item.buttons button.cancel {
	margin-right: 20px;
}
/* ----- MAIN FORM END ----- */


/* ----- FOOTER START ----- */
.footer-outer {
	min-height: 90px;
	padding: 20px 0px;
	background-color: #040d1e;
}

.footer-inner {

}

.footer-outer object {
	height: 50px;
	float: left;
}

.footer-outer p {
	line-height: 50px;
	font-size: 11pt;
	color: #FFF;
	float: left;
	padding-left: 20px;
}
/* ----- FOOTER END ----- */



/* ---- MEDIA QUERIES START ---- */
.mobileBtn {
	display: none;
}

@media screen and (max-width: 1600px) {
	.parallax {
		background-position: center 200px;
		height:800px;
	}
}

@media screen and (max-width: 1400px) {
	.parallax {
		height:750px;
	}
}

@media screen and (max-width: 1200px) {
	.main-title {
		font-size:48pt;
	}
	.parallax {
		height:650px;
	}
}

@media screen and (max-width: 900px) {
	.main-title {
		font-size:30pt;
	}
	.sub-title {
		font-size:13pt;
	}
	.logo a span {
		font-size:10pt;
	}
	.parallax {
		background-position: center 180px;
		background-size:55% auto;
		height:550px;
	}
}
@media screen and (max-width: 850px) {
	.main-title {
		font-size:30pt;
	}
	
	.parallax {
		background-position: center 150px;
		background-size:70% auto;
		height:500px;
	}
	.mobileBtn {
		display: inline-block;
		height: 50px;
		width: 50px;
		font-size: 24px;
		color: #0f2347;
		float: right;
		line-height: 80px;
	}

	.main-menu-inner {
		position: relative;
	}
	.main-menu {
		position: absolute;
		width: 200px;
		right: -11px;
		top: 80px;
		background-color: #FFF;
		box-shadow: 0px 10px 10px -13px rgba(0, 0, 0, 0.5);
		border: 1px solid #DDD;
		border-top: 0px;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		max-height: calc(100vh - 85px);
		transition: top 0.15s ease-in-out,
					opacity 0.15s ease-in-out,
					visibility 0.15s ease-in-out;
					overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		transition: opacity 0.15s ease-in-out,
					visibility 0.15s ease-in-out;
		z-index: 9998;
	}
	.main-menu.open {
		top: 80px;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
		z-index: 10;
	}
	.m-item {
		width: 100%;
		text-align: center;
		padding: 0px;
	}


	/* Mobilon a panel nem abszolút – a lista alatt csúszik ki */
	.dropdown-panel {
		position: static;
		border: none;
		border-top: 1px solid #eee;
		border-radius: 0;
		box-shadow: none;
		background: #f7fafd;
		padding: 0;
		min-width: 0;
		opacity: 1;
		visibility: visible;
		transform: none;
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.25s ease;
	}
	.m-item--dropdown[data-open="true"] .dropdown-panel {
		max-height: 400px;
	}
	.dropdown-panel a {
		padding: 13px 32px;
		font-size: 10.5pt;
		border-bottom: 1px solid #eee;
		text-align: center;
	}
	.dropdown-panel li:last-child a {
		border-bottom: none;
	}

}
@media screen and (max-width: 480px) {
	.main-title {
		font-size: 26pt;
	}
	.logo a span {
		display:none;
	}
	.logo a span.mobile {
		display:inline-block;
	}
	.footer-outer object {
		display: table;
		float: none;
		margin: 0 auto;
	}
	.parallax {
		background-position: center 180px;
		background-size:80% auto;
		height:480px;
		padding:50px 5px 0px 5px;
	}
}
@media screen and (max-width: 360px) {

}
/* ---- MEDIA QUERIES END ---- */