:root {
	--header-height: 5rem;
	/*===== Colors =====*/
	--first-color: #3E0E12;
	--first-color-dark: #0b4762;
	--text-color: #524748;
	--first-color-light: #7B6F71;
	--first-color-lighten: #FBF9F9;
	--premium-color: #78b249;
	--scroll-bar-color: #d5fdb4;
	--scroll-thumb-color: #78b249;
	/*===== Font and typography =====*/
	--body-font: 'Roboto', sans-serif;
	--biggest-font-size: 2rem;
	--h1-font-size: 1.5rem;
	--h2-font-size: 1.25rem;
	--h3-font-size: 1.125rem;
	--normal-font-size: .938rem;
	--small-font-size: .813rem;
	--smaller-font-size: .75rem;
	/*===== Font weight =====*/
	--font-medium: 500;
	--font-semi-bold: 600;
	--font-bold: 700;
	/*===== Margenes =====*/
	--mb-1: .5rem;
	--mb-2: 1rem;
	--mb-3: 1.5rem;
	--mb-4: 2rem;
	--mb-5: 2.5rem;
	--mb-6: 3rem;
	/*===== z index =====*/
	--z-normal: 1;
	--z-tooltip: 10;
	--z-fixed: 100;
}

@media screen and (min-width: 768px) {
	:root {
		--biggest-font-size: 3.5rem;
		--h1-font-size: 2.25rem;
		--h2-font-size: 1.5rem;
		--h3-font-size: 1.25rem;
		--normal-font-size: 1rem;
		--small-font-size: .875rem;
		--smaller-font-size: .813rem;
	}
}

/*===== BASE =====*/

.g-recaptcha {
	margin: auto;
	margin-top: var(--mb-2);
	margin-bottom: var(--mb-2);
}

*, ::before, ::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

h1, h2, h3, ul, p {
	margin: 0;
}

h2, h3 {
	font-weight: var(--font-semi-bold);
}

ul {
	padding: 0;
	list-style: none;
}

a {
	text-decoration: none;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

/*===== CLASS CSS =====*/

.section {
	padding: 4rem 0 2rem;
}

.section-title, .section-subtitle {
	text-align: center;
}
.text-center{
	text-align: center;
}
.section-title {
	font-size: var(--h1-font-size);
	color: var(--premium-color);
	margin-bottom: var(--mb-3);
}

.section-title span {
	font-weight: var(--font-bold);
	color: var(--first-color-dark);
}

.section-subtitle {
	display: block;
	font-size: var(--smaller-font-size);
	font-weight: var(--font-semi-bold);
	color: var(--first-color-light);
	text-transform: uppercase;
}

/*===== LAYOUT =====*/

.bd-container {
	max-width: 1600px;
	width: calc(100% - 2rem);
	margin-left: var(--mb-2);
	margin-right: var(--mb-2);
}

.bd-grid {
	display: grid;
	gap: 1.5rem;
}

.l-header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: var(--z-fixed);
	transition: .3s;
}

@media screen and (max-width: 768px) {
	.l-header {
		background-color: #79aa51;
	}
}
.form__inputs {
    max-width: 100%;
    margin: 0 auto;
}

/*BUTTONS*/

.button {
	display: inline-block;
	background-color: var(--first-color);
	color: var(--first-color-lighten);
	padding: 1rem 2rem;
	border-radius: 3rem;
	transition: .3s;
	border: none;
	cursor: pointer;
}

.button:hover {
	background-color: var(--first-color-dark);
	box-shadow: 0px 4px 6px rgba(255, 255, 255, 0.3);
}

.button-light {
	background-color: var(--first-color-dark);
}

.button-green-alt {
	background-color: var(--premium-color);
}

.button-white {
	background-color: var(--first-color-lighten);
	color: var(--premium-color);
	font-weight: var(--font-bold);
}

.button-white:hover {
	background-color: var(--first-color-lighten);
	box-shadow: 0 4px 6px rgba(255, 255, 255, 0.3);
}

.button-link {
	background: none;
	color: var(--first-color);
	padding: 0;
}

.button-link:hover {
	background: none;
}

/*===== HOME =====*/

.home {
	overflow: hidden;
}

.home__container {
	position: relative;
	height: 100%;
	grid-template-rows: repeat(2, max-content);
	align-content: center;
	row-gap: 4rem;
}

.home__data {
	border-left: 4px solid var(--first-color-lighten);
	color: var(--first-color-lighten);
	padding-left: 1.5rem;
	z-index: var(--z-tooltip);
}

.home__name {
	font-size: var(--biggest-font-size);
	color: var(--first-color-lighten);
}

.home__name span {
	color: var(--first-color-dark);
}

.home__profession {
	display: block;
	font-weight: var(--font-bold);
}

.home__profession {
	font-size: .938rem;
	margin-bottom: var(--mb-3);
}

.home__img {
	height: 340px;
	width: 100%;
	position: relative;
	background-position-y: -8rem !important;
}

/*===== CONTACT =====*/

.contact__container {
	row-gap: 3rem;
}

.contact__content .pf-contactform-shortcode,
.contact__content {
	width:100%;
}

.contact__social ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: .5rem;
}

.contact__box {
	background-color: #FFF;
	border-radius: .5rem;
	padding: 1.5rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.contact__box ul li {
	list-style: none;
	color: var(--first-color);
	display: flex;
	align-items: center;
	column-gap: .6rem;
}

.contact__icon, .contact__title {
	color: var(--first-color);
}

#contact h1{
	color: var(--first-color);
}
.contact__title {
	font-size: var(--normal-font-size);
	margin: var(--mb-1) 0;
	line-height: 1.7;
}

.contact__title a {
	color: var(--premium-color);
}

.cards__box:hover {
	box-shadow: 0 6px 8px rgba(120, 178, 73, .4);
}

.contact__form {
	margin-top: var(--mb-4);
}

.form__inputs.input__count {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	column-gap: 1rem;
	color: var(--premium-color);
}

.form__inputs.input__count input {
	width: 20%;
}

.contact__input {
	width: 100%;
	padding: 1rem;
	outline: none;
	border: none;
	border: 1px solid var(--premium-color);
	font-size: var(--normal-font-size);
	margin-bottom: var(--mb-2);
	border-radius: .5rem;
}

.contact__input::placeholder {
	color: var(--premium-color);
	font-family: var(--body-font);
	font-weight: var(--font-medium);
}

.checkbox__container {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 15px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: max-content;
	margin: auto;
	margin-bottom: var(--mb-2);
}

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

.checkbox__container a {
	color: var(--premium-color);
	text-decoration: underline;
}

span[for="adatkezeles"] {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: .2rem;
}

.checkbox__container:hover input~span[for="adatkezeles"] {
	background-color: #ccc;
}

.checkbox__container input:checked~span[for="adatkezeles"] {
	background-color: var(--premium-color);
}

span[for="adatkezeles"]:after {
	content: "";
	position: absolute;
	display: none;
}

.checkbox__container input:checked~span[for="adatkezeles"]:after {
	display: block;
}

.checkbox__container span[for="adatkezeles"]:after {
	left: 10px;
	top: 6px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contact__button{
	margin-top: var(--mb-2);
}









.contactform__title {
	font-size: 1.4rem;
    padding-top: 1rem;
}
.checkbox_group {
	display: grid;
    grid-template-columns: repeat(1, 1fr);
    justify-content: center;
    align-items: center;
    gap: .75rem;
	text-align: initial;
	padding-left: 2rem;
}
.checkbox_list_item_label {
	font-size: 1rem;
	cursor: pointer;
	position: relative;
	display: flex;
    align-items: center;
	gap: .5rem;
}
.checkbox_list_item_label input {
	position: absolute;
	opacity: 0;
}
span[for="moduls"] {
	position: absolute;
	top: -2px;
    left: -35px;
	height: 25px;
	width: 25px;
	background-color: #eee;
	border-radius: .2rem;
}
.checkbox_list_item_label:hover input~span[for="moduls"] {
	background-color: #ccc;
}
.checkbox_list_item_label input:checked~span[for="moduls"] {
	background-color: #78b249;
}
span[for="moduls"]::after {
	content: "";
	position: absolute;
	display: none;
}
.checkbox_list_item_label input:checked~span[for="moduls"]:after {
	display: block;
}
.checkbox_list_item_label span[for="moduls"]::after {
	left: 10px;
    top: 7px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*========== SCROLL BAR ==========*/

::-webkit-scrollbar {
	width: .60rem;
	background-color: var(--scroll-bar-color);
	border-radius: .5rem;
}

::-webkit-scrollbar-thumb {
	background-color: var(--scroll-thumb-color);
	border-radius: .5rem;
}

::-webkit-scrollbar-thumb:hover {
	background-color: var(--text-color);
}

/*===== MEDIA QUERIES =====*/
@media screen and (max-width: 320px) {
	.home__data {
		margin-bottom: 0px;
		margin-top: 50px;
	}
	.contact__input {
		width: 90%;
	}
	.checkbox__container {
		padding-left: 45px;
		font-size: 14px;
	}
	span[for="adatkezeles"] {
		left: 15px;
		height: 20px;
		width: 20px;
	}
	.checkbox__container span[for="adatkezeles"]::after {
		left: 8px;
		top: 5px;
	}
}

@media screen and (min-width: 501px) {
    .checkbox_group {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (min-width: 561px) {
	.checkbox_group {
		grid-template-columns: repeat(3, 1fr);
	}
	.form__inputs.input__count {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		column-gap: 1rem;
		color: var(--premium-color);
	}
	
	.form__inputs.input__count input {
		width: 10%;
	}
}

@media screen and (min-width: 769px) {
	body {
		margin: 0;
	}
	.section {
		padding-top: 6rem;
	}
	.section-title {
		margin-bottom: var(--mb-5);
	}
	.contact__inputs {
		display: grid;
		column-gap: 1.5rem;
	}
	.contact__content{
		width:75%;
		margin:0 auto;
	}
	.contact__content .pf-contactform-shortcode{
		width:80%;
	}

}

@media screen and (min-width: 1024px) {
	.bd-container {
		margin-left: auto;
		margin-right: auto;
	}
	.home__img {
		height: 500px;
		background-position-y: 0rem !important;
	}
}