:root{
	--feher: #fff;
	--fekete: #000;

	--sotet: #363636;
	--vilagos: #f8f8f8;
	--kozepes:  #848484;

	--piros_1: #ba5241;
	--piros_2: #451007;
	
	--zold_1: #b6e3d7;
	--zold_2: #41ae9b;
	--zold_3: #277d6e;

	--kek_1: #95bcce;
	--kek_2: #5a88a7;


	--barna_1: #e8d0b8;
	--barna_2: #dca36b;

	--sarga_1: #ee954d;


	--semmi: rgba(0, 0, 0, 0.0);

}

@font-face{
	src: url(fonts/Poppins-Regular.ttf);
	font-family: Poppins-regular;
}

@font-face{
	src: url(fonts/Poppins-Light.ttf);
	font-family: Poppins-light;
}
@font-face{
	src: url(fonts/Poppins-ExtraLight.ttf);
	font-family: Poppins-extralight;
}

@font-face{
	src: url(fonts/Poppins-Thin.ttf);
	font-family: Poppins-thin;
}

@font-face{
	src: url(fonts/Poppins-Medium.ttf);
	font-family: Poppins-medium;
}

@font-face{
	src: url(fonts/Poppins-Bold.ttf);
	font-family: Poppins-bold;
}


::-webkit-scrollbar {
  width: 14px;
}

/* Track */
::-webkit-scrollbar-track {
  background-color: var(--kozepes);
  border-radius: 8px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background-color: var(--kek_1);
  border-radius: 14px;
  transition: 0.2s;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background-color: var(--kek_2);

}



html{
	scroll-behavior: smooth;
}

*{
	padding: 0;
	margin: 0;
	font-family: Poppins-regular;
}

body{
	background-color: var(--sotet);
	max-width: 100vw;
	overflow-x: hidden;
}

p, a, h1, h2, h3, h4, h5{
	margin-block-start: 0;
	margin-block-end: 0;
	color: var(--vilagos);
}

h1, h2, h3, h4, h5{
	font-weight: 100;
}

a{
	text-decoration: none;
}


@keyframes shapeHide{
  to {
    stroke-dashoffset: 1000;
  }
}

@keyframes shapeDraw{
  to {
    stroke-dashoffset: 0;
  }
}

.stroke-basic{
	fill: rgba(0, 0, 0, 0.0);
	stroke-width: 2;
}

.shape-base{
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
}

.shape-base.active{
	animation: shapeDraw 0.5s linear forwards;
}



main{
	position: relative;
}

main > *{
	position: absolute;
}

#bio-0{
	top: 10vh;
	left: 4vh;
	font-size: 10vh;
	font-family: Poppins-extralight;
}

#bio-1{
	top: 24vh;
	left: 4vh;
	font-size: 4vh;
	font-family: Poppins-extralight;
}

#nev-alahuz{
	top: 27vh;
	width: 30vh;
	left: 4vh;
}

#nev-alahuz *{
	stroke: var(--kek_1);
	stroke-width: 2;
	fill: rgba(0, 0, 0, 0.0);
	stroke-dasharray: 500;
	stroke-dashoffset: 500;
	transition: 0.8s;
}

#nev-alahuz.active *{
	stroke-dashoffset: 0;
}

#bio-wrapper{
	top: 32vh;
	max-height: 56vh;
	overflow: auto;
	transition: 0.6s;
	transition-delay: 0.6s;
}

.res-wide #bio-wrapper{
	left: -30vw;
	width: 30vw;
}

#bio-wrapper.active{
	left: 4vw;
}

#bio-wrapper p{
	font-size: 18px;
	font-family: Poppins-regular;
	text-align: justify;
	line-height: 30px;
}

#bio-2 a{
	color: var(--barna_1);
}

#bio-2 a:hover{
	color: var(--zold_1);
}

#enkep-nyil{
	width: 30vw;
	top: 13vh;
	left: 36vh;
	transform: rotate(6deg);
}

#enkep-nyil *{
	fill: rgba(0, 0, 0, 0.0);
	stroke: var(--kek_1);
	stroke-width: 2;
	stroke-dasharray: 500;
	stroke-dashoffset: 500;
	transition: 0.8s;
}

#enkep-nyil.active *{
	stroke-dashoffset: 0;
}

#enkep-nyil-03{
	transition-delay: 0.3s;
}

#enkep-nyil-01{
	transition-delay: 0.6s;
}

#enkep-nyil-02{
	transition-delay: 0.8s;
}

#img-en-wrapper{
	right: 0;
	width: 50vw;
	height: 90vh;
	display: flex;
	justify-content: center;
	align-items: center;
}

#img-en-wrapper div{
	width: 0vw;
	height: 0vw;
	border-radius: 40vw;
	overflow: hidden;
	transition: 0.4s;
}

#img-en-wrapper div.active{
	width: 30vw;
	height: 30vw;
}

#img-en-wrapper img{
	width: 30vw;
	margin-top: -15vw;
	margin-left: -15vw;
	transition: 0.4s;
}

#img-en-wrapper div.active img{
	margin-top: 0vw;
	margin-left: 0vw;
}

#lenyil-1{
	width: 30vw;
	height: 3vw;
	display: flex;
	justify-content: center;
	align-items: center;
	left: 4vw;
	top: 90vh;
	transition: 0.2s;
	opacity: 0.0;
	transition-delay: 0.6s;
}

#lenyil-1.active{
	opacity: 1.0;
}

#lenyil-1.active div{
	border-bottom: 1px solid var(--kozepes);
	border-right: 1px solid var(--kozepes);
	transform: rotate(45deg);
	width: 3vw;
	height: 3vw;
	animation: lenyil_Anim 3s linear infinite;
}

@keyframes lenyil_Anim {
	0%{
		transform: rotate(45deg) scale(1.0);
		margin-top: 0px;
		border-bottom: 1px solid var(--kozepes);
		border-right: 1px solid var(--kozepes);
	}
	40%{
		transform: rotate(45deg) scale(1.05);
		margin-top: 10px;
		border-bottom: 1px solid var(--sarga_1);
		border-right: 1px solid var(--sarga_1);
	}
	60%{
		transform: rotate(45deg) scale(1.05);
		margin-top: 10px;
		border-bottom: 1px solid var(--sarga_1);
		border-right: 1px solid var(--sarga_1);
	}
	100%{
		transform: rotate(45deg) scale(1.0);
		margin-top: 0px;
		border-bottom: 1px solid var(--kozepes);
		border-right: 1px solid var(--kozepes);
	}
}

#lenyil-1:hover div{
	cursor: pointer;
	border-bottom: 1px solid var(--zold_1);
	border-right: 1px solid var(--zold_1);
}

#kep{
	top: 100vh;
	height: 100vh;
}

#kep-side{
	position: absolute;
	left: 4vw;
	width: 30vw;
	top: 4vh;
}

#kep-side p{
	font-size: 18px;
	text-align: center;
}

#kep-szoveg-1{
	font-family: Poppins-extralight;
	font-size: 3vh;
	text-align: center;
}

.kep-button{
	width: 90%;
	margin-left: 5%;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	height: 8vh;
}

.kep-button.show{
	pointer-events: none;
}

.kep-button p{
	color: var(--barna_1);
	transition: 0.2s;
}

.kepbutton-alahuz{
	fill: rgba(0, 0, 0, 0.0);
	stroke: var(--kek_1);
	stroke-width: 2;
	width: 160px;
	stroke-dasharray: 1000;
	stroke-dashoffset: 1000;
	transition: 0.6s;
	margin-top: -10px;
}

.kep-button.show .kepbutton-alahuz{
	stroke-dashoffset: 0;
}

.kep-button:hover{
	cursor: pointer;
}

.kep-button:hover .kepbutton-alahuz{
	stroke-dashoffset: 0;
	stroke: var(--zold_1);
	stroke-width: 4;
}

.kep-button:hover p{
	margin-bottom: 6px;
	margin-top: -6px;
}

#gal-ilyen-button{
	display: inline;
	color: var(--barna_1);
	width: unset;
	margin-left: 0;
}

#gal-ilyen-button:hover{
	color: var(--zold_1);
}

#gal-ilyen-button.show{
	color: var(--kek_1);
	pointer-events: unset;
}

#kep-wrapper{
	position: absolute;
	top: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 58vw;
	left: 38vw;
	max-height: 94vh;
	overflow: auto;
}

#kep-wrapper div{
	display: flex;
	flex-flow: column;
	align-items: center;
	width: 100%;
}

#kep-wrapper img{
	width: calc(100% - 4px);
	transform: scale(0.0);
	border-radius: 100%;
	animation: kep_apir 0.2s linear 1 forwards;
	border: 1px solid rgba(0, 0, 0, 0.0);
	border-radius: 6px;
	overflow: hidden;
	transition: 0.2s;
}

@keyframes kep_apir {
	0%{
		transform: scale(0.0);
	}
	100%{
		transform: scale(1.0);
	}
}

#kep-wrapper img:hover{
	cursor: pointer;
	margin: 6px 0;
	border: 1px solid var(--zold_1);
	
}

#gal-showbox{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.2);
	backdrop-filter: blur(10px);
	display: none;
	z-index: 999;
}

#gal-showbox.active{
	display: flex;
	justify-content: center;
	align-items: center;
}

#gal-show-close{
	position: fixed;
	top: 4px;
	right: 12px;
	width: 40px;
	height: 40px;
	border-radius: 40px;
	border: 1px solid var(--piros_1);
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.15s;
	background-color: var(--sotet);
}

#gal-show-close p{
	font-size: 30px;
	font-family: Poppins-light;
	margin-top: -4px;
	transition: 0.15s;
	color: var(--piros_1);
}

#gal-show-close:hover{
	cursor: pointer;
	background-color: var(--piros_1);
}

#gal-show-close:hover p{
	color: var(--vilagos);
}

#gal-show-img{
	width: 98%;
	max-height: 98%;
	object-fit: contain;
}

#txt{
	top: 200vh;
	height: 100vh;
}

#txt-txt-1{
	text-align: center;
	font-size: 30px;
	font-family: Poppins-thin;
	margin-left: -100vw;
	margin-right: 100vw;
	margin-top: 24px;
	transition: 0.6s;
}

#txt-txt-1.active{
	margin-left: 0vw;
	margin-right: 0vw;
}

#txt-txt-1 a{
	color: var(--barna_1);
}

#txt-txt-1 a:hover{
	color: var(--kek_1);
}

#txt-txt-2{
	margin-left: -100vw;
	margin-right: 100vw;
	transition: 0.6s;
	transition-delay: 0.4s;
	margin-top: 24px;
	margin-bottom: 12px;
	font-size: 20px;
	font-family: Poppins-thin;
	text-align: center;
}

#txt-txt-2.active{
	margin-left: 0vw;
	margin-right: 0vw;
}

#lilalo-tile-holder{
	display: flex;
	width: 80vw;
	margin-left: 10vw;
	justify-content: space-evenly;
	align-items: center;
}

#lilalo-tile-holder > a{
	height: 30vh;
	display: flex;
	align-items: center;
	flex-flow: column;
	border: 1px solid var(--barna_1);
	width: 420px;
	background-color: var(--kozepes);
	border-radius: 16px;
	overflow: hidden;
	opacity: 0.0;
	transform: scale(0.0);
}

#lilalo-tile-holder > a:hover{
	border: 1px solid var(--zold_2);
	transform: scale(1.05) !important;
}

/*#lilalo-tile-holder > a > div{
	height: 50%;
}*/


#lilalo-tile-holder * {
	color: var(--vilagos);
}

#lilalo-tile-holder h4{
	text-align: center;
}

#lilalo-tile-holder p{
	text-align: justify;
	width: 100%;
	padding: 0 4px;
	box-sizing: border-box;
}

#lilalo-tile-holder .noimg{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
	height: 100%;
}



@keyframes lilapostApear{
	0%{
		opacity: 0.0;
		transform: scale(1.0);
	}
	90%{
		opacity: 1.0;
		transform: scale(1.05);
	}
	100%{
		opacity: 1.0;
		transform: scale(1.0);
	}
}

#lilapost-0{
	animation: lilapostApear 0.2s linear 1 forwards;
	animation-delay: 1.2s;
}

#lilapost-1{
	animation: lilapostApear 0.2s linear 1 forwards;
	animation-delay: 1.6s;
}

#lilapost-2{
	animation: lilapostApear 0.2s linear 1 forwards;
	animation-delay: 2.0s;
}


#lila-desc{
	transition: 0.4s;
	transition-delay: 2.4s;
	opacity: 0.0;
	margin-top: 24px;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	width: 100vw;
}

#lila-leiras{
	max-width: 1200px;
	text-align: justify;
	margin-bottom: 24px;
}

#lila-desc.active{
	opacity: 1.0;
}

#lila-ref-inner{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

#lila-ref-wrapper{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	max-width: 98%;
	width: 1200px;
}

#lila-ref-wrapper a{
	border: 1px solid var(--barna_1);
	width: 80%;
	margin-left: 10%;
	border-radius: 12px;
	overflow: hidden;
	display: block;
	transition: 0.2s;
}

#lila-ref-wrapper a:hover{
	border: 1px solid var(--zold_2);
	transform: scale(1.05);
}

#lila-ref-wrapper h4{
	text-align: center;
	margin-top:  12px;
}

#qlt-logo-holder{
	overflow: hidden;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

#qlt-logo{
	height: 100%;
}

#qlt-logo *{
	fill: rgba(0, 0, 0, 0.0);
	stroke: var(--feher);
	stroke-width: 4;
}

#csn-ref{
	background-image: url("../assts/csn_front.jpg");
	background-size: cover;
	height: 200px;
	display: flex !important;
	justify-content: center;
	align-items: center;
}

#csn-ref p{
	font-size: 24px;
}

/*kontakt*/

#kontakt{
	top: 300vh;
	height: 100vh;
	left: 100vw;
	width: 100vw;
	transition: 0.6s;
	overflow: hidden;
}

#kontakt.active{
	left: 0vw;
}

#kontakt h3{
	text-align: center;
	font-size: 30px;
	font-family: Poppins-thin;
	
}

#kontakt h4{
	text-align: center;
	font-size: 24px;
	font-family: Poppins-thin;
	
}

#kontakt-det{
	margin-top: 100vh;
	transition: 0.6s;
	transition-delay: 0.8s;
}

#kontakt-det.active{
	margin-top: 36px;
}

#kontakt-ico-wrapper{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

#kontakt-ico-wrapper a{
	display: block;
	width: 80px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 4px;
	
}

#kontakt-ico-wrapper svg{
	width: 40px;
	transition: 0.2s;
}

#kontakt-ico-wrapper a:hover svg{
	width: 60px;
}

.kontakt-ico-teli{
	fill: var(--vilagos);
}

#kontakt-ico-wrapper a:hover .kontakt-ico-teli{
	fill: var(--zold_2);
}

.kontakt-ico-vonal{
	fill: rgba(0, 0, 0, 0.0);
	stroke: var(--vilagos);
	stroke-width: 8;
}

#kontakt-ico-wrapper a:hover .kontakt-ico-vonal{
	stroke: var(--zold_2);
}